package xin.glue.ui.J.J01; import java.text.SimpleDateFormat; import java.util.Date; import com.posdata.glue.biz.activity.PosActivity; import com.posdata.glue.biz.constants.PosBizControlConstants; import com.posdata.glue.context.PosContext; import com.posdata.glue.dao.vo.PosParameter; import com.posdata.glue.dao.vo.PosRowSet; public class FJHModifyCoilProgStatusOfCoils extends PosActivity { public String runActivity(PosContext context) { //UPDATE TBH02_COIL_COMM String[] pCoilStat = (String[]) context.get("COIL_STAT" ); //SET COIL_STAT = :1 String[] pCurProgCd = (String[]) context.get("CUR_PROG_CD" ); // , CUR_PROG_CD = :2 // , CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS') String[] pCurProgCdPgm = (String[]) context.get("CUR_PROG_CD_PGM" ); // , CUR_PROG_CD_PGM = :3 String[] pBefProgCd = (String[]) context.get("BEF_PROG_CD" ); // , BEF_PROG_CD = :4 String[] pBefProgCdDtime = (String[]) context.get("BEF_PROG_CD_DTIME" ); // , BEF_PROG_CD_DTIME = :5 String[] pBefProgCdPgm = (String[]) context.get("BEF_PROG_CD_PGM" ); // , BEF_PROG_CD_PGM = :6 // , TRNF_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS') // , SHIP_INVNO = :8 String[] pCoilNo = (String[]) context.get("COIL_NO" ); //WHERE COIL_NO = :9 //车辆号加入,保存的时候更新公共表和运输表。因为页面显示的车辆号来源于运输表,所以同时更新公共表和运输表才能保证车厢号的统一。 String[] TRANS_CAR_NO = (String[]) context.get("TRANS_CAR_NO" ); //运输指示号 String[] pDlivDirNo = (String[]) context.get("DLIV_DIRNO" ); //重量 String[] COIL_WGT = (String[]) context.get("COIL_WGT" ); String[] OLD_SAMPL_NO = (String[]) context.get("OLD_SAMPL_NO" ); // //钢种牌号 // String[] SPEC_STL_GRD = (String[]) context.get("SPEC_STL_GRD" ); // //钢卷实际规格厚度 // String[] COIL_THK = (String[]) context.get("COIL_THK" ); // // 登录人 // String[] REG_ID = (String[]) context.get("REG_ID"); //出库班组信息 String[] ENTRY_SHIFT = (String[]) context.get("ENTRY_SHIFT" ); String[] ENTRY_GROUP = (String[]) context.get("ENTRY_GROUP" ); String[] ENTRY_REG = (String[]) context.get("ENTRY_REG" ); String[] ENTRY_DTIME = (String[]) context.get("ENTRY_DTIME" ); String[] pShipProgCd = (String[]) context.get("SHIP_PROG_CD" ); //SET SHIP_PROG_CD = :1 //草支垫重量 String[] CZD = (String[]) context.get("CZD"); int iCnt = 0; if( pCoilNo != null ) { iCnt = pCoilNo.length; } //这里必须根据运输指示号的个数来生成发货清单号 // int invCnt = 0; // if( pDlivDirNo != null){ // invCnt = pDlivDirNo.length; // } PosParameter param = null; PosParameter param1 = null; PosParameter param2 = null; String trnftime ; Date d = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); trnftime = sdf.format(d); for( int i = 0; i < iCnt; i++ ) { param = new PosParameter(); param.setValueParamter( 0, pCoilStat[i] ); param.setValueParamter( 1, pCurProgCd[i] ); param.setValueParamter( 2, pCurProgCdPgm[i] ); param.setValueParamter( 3, pBefProgCd[i] ); param.setValueParamter( 4, pBefProgCdDtime[i] ); param.setValueParamter( 5, pBefProgCdPgm[i] ); param.setValueParamter( 6, TRANS_CAR_NO[i] ); param.setValueParamter( 7, ENTRY_SHIFT[0] ); param.setValueParamter( 8, ENTRY_GROUP[0] ); param.setValueParamter( 9, ENTRY_REG[0] ); param.setValueParamter( 10, ENTRY_DTIME[0] ); param.setValueParamter( 11, COIL_WGT[i] ); // param.setValueParamter( 12, trnftime ); param.setValueParamter( 12, pCoilNo[i] ); getDao("mesdao").update("UIJ010061.ModifyCoilProgStatusOfCoils.Save", param); param2 = new PosParameter(); param2.setValueParamter( 0, trnftime ); param2.setValueParamter( 1, pDlivDirNo[i] ); getDao("mesdao").update("UIJ010061.UpdateTime.Save", param2); // param1 = new PosParameter(); // // param1.setValueParamter( 0, pShipProgCd[i] ); // param1.setValueParamter( 1, TRANS_CAR_NO[i] ); // param1.setValueParamter( 2, COIL_WGT[i] ); // param1.setValueParamter( 3, CZD[0] ); // param1.setValueParamter( 4, pCoilNo[i] ); // getDao("mesdao").update("UIJ010061.ModifyShipProgStatusOfCoils.Save", param1); PosParameter paramck = new PosParameter(); paramck.setWhereClauseParameter( 0, OLD_SAMPL_NO[i] ); PosRowSet rowsck = getDao("mesdao").find("UIJ010061.Checkstatus.Select", paramck); if(rowsck.hasNext()){ return PosBizControlConstants.FAILURE; } PosParameter paramTT = new PosParameter(); paramTT.setValueParamter( 0, "08" ); paramTT.setValueParamter( 1, TRANS_CAR_NO[i] ); paramTT.setValueParamter( 2, COIL_WGT[i] ); paramTT.setValueParamter( 3, CZD[0] ); paramTT.setValueParamter( 4, pCoilNo[i] ); getDao("mesdao").update("UIJ010061.CLEARDLIVNO.Save", paramTT); PosParameter param11 = new PosParameter(); param11.setWhereClauseParameter( 0, OLD_SAMPL_NO[i] ); PosRowSet rows11 = getDao("mesdao").find("UIJ010061.Checkbj.Select", param11); PosParameter paramYS = new PosParameter(); if(rows11.hasNext()){ //更新已移送的数据 paramYS = new PosParameter(); paramYS.setWhereClauseParameter(0, OLD_SAMPL_NO[i]); paramYS.setWhereClauseParameter(1, OLD_SAMPL_NO[i]); int updtCnt = getDao("mesdao").update("UIK010010_02.insert", paramYS); } else { //移送板加 PosParameter paramy = new PosParameter(); paramy.setWhereClauseParameter(0, OLD_SAMPL_NO[i]); this.getDao("mesdao").update("UIH052400_04.update", paramy); //清除垛位 //写入板加数据 paramYS = new PosParameter(); paramYS.setWhereClauseParameter(0, ENTRY_REG[0]); paramYS.setWhereClauseParameter(1, OLD_SAMPL_NO[i]); int updtCnt = getDao("mesdao").update("UIK010010_01.insert", paramYS); } } return PosBizControlConstants.SUCCESS; } }