fc248795872b5f3ba13d62c90539c77a260b4ef7.svn-base 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. package xin.glue.ui.J.J01;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. import com.posdata.glue.biz.activity.PosActivity;
  5. import com.posdata.glue.biz.constants.PosBizControlConstants;
  6. import com.posdata.glue.context.PosContext;
  7. import com.posdata.glue.dao.vo.PosParameter;
  8. import com.posdata.glue.dao.vo.PosRowSet;
  9. public class FJHModifyCoilProgStatusOfCoils extends PosActivity {
  10. public String runActivity(PosContext context) {
  11. //UPDATE TBH02_COIL_COMM
  12. String[] pCoilStat = (String[]) context.get("COIL_STAT" ); //SET COIL_STAT = :1
  13. String[] pCurProgCd = (String[]) context.get("CUR_PROG_CD" ); // , CUR_PROG_CD = :2
  14. // , CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
  15. String[] pCurProgCdPgm = (String[]) context.get("CUR_PROG_CD_PGM" ); // , CUR_PROG_CD_PGM = :3
  16. String[] pBefProgCd = (String[]) context.get("BEF_PROG_CD" ); // , BEF_PROG_CD = :4
  17. String[] pBefProgCdDtime = (String[]) context.get("BEF_PROG_CD_DTIME" ); // , BEF_PROG_CD_DTIME = :5
  18. String[] pBefProgCdPgm = (String[]) context.get("BEF_PROG_CD_PGM" ); // , BEF_PROG_CD_PGM = :6
  19. // , TRNF_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')
  20. // , SHIP_INVNO = :8
  21. String[] pCoilNo = (String[]) context.get("COIL_NO" ); //WHERE COIL_NO = :9
  22. //车辆号加入,保存的时候更新公共表和运输表。因为页面显示的车辆号来源于运输表,所以同时更新公共表和运输表才能保证车厢号的统一。
  23. String[] TRANS_CAR_NO = (String[]) context.get("TRANS_CAR_NO" );
  24. //运输指示号
  25. String[] pDlivDirNo = (String[]) context.get("DLIV_DIRNO" );
  26. //重量
  27. String[] COIL_WGT = (String[]) context.get("COIL_WGT" );
  28. String[] OLD_SAMPL_NO = (String[]) context.get("OLD_SAMPL_NO" );
  29. // //钢种牌号
  30. // String[] SPEC_STL_GRD = (String[]) context.get("SPEC_STL_GRD" );
  31. // //钢卷实际规格厚度
  32. // String[] COIL_THK = (String[]) context.get("COIL_THK" );
  33. // // 登录人
  34. // String[] REG_ID = (String[]) context.get("REG_ID");
  35. //出库班组信息
  36. String[] ENTRY_SHIFT = (String[]) context.get("ENTRY_SHIFT" );
  37. String[] ENTRY_GROUP = (String[]) context.get("ENTRY_GROUP" );
  38. String[] ENTRY_REG = (String[]) context.get("ENTRY_REG" );
  39. String[] ENTRY_DTIME = (String[]) context.get("ENTRY_DTIME" );
  40. String[] pShipProgCd = (String[]) context.get("SHIP_PROG_CD" ); //SET SHIP_PROG_CD = :1
  41. //草支垫重量
  42. String[] CZD = (String[]) context.get("CZD");
  43. int iCnt = 0;
  44. if( pCoilNo != null ) {
  45. iCnt = pCoilNo.length;
  46. }
  47. //这里必须根据运输指示号的个数来生成发货清单号
  48. // int invCnt = 0;
  49. // if( pDlivDirNo != null){
  50. // invCnt = pDlivDirNo.length;
  51. // }
  52. PosParameter param = null;
  53. PosParameter param1 = null;
  54. PosParameter param2 = null;
  55. String trnftime ;
  56. Date d = new Date();
  57. SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
  58. trnftime = sdf.format(d);
  59. for( int i = 0; i < iCnt; i++ ) {
  60. param = new PosParameter();
  61. param.setValueParamter( 0, pCoilStat[i] );
  62. param.setValueParamter( 1, pCurProgCd[i] );
  63. param.setValueParamter( 2, pCurProgCdPgm[i] );
  64. param.setValueParamter( 3, pBefProgCd[i] );
  65. param.setValueParamter( 4, pBefProgCdDtime[i] );
  66. param.setValueParamter( 5, pBefProgCdPgm[i] );
  67. param.setValueParamter( 6, TRANS_CAR_NO[i] );
  68. param.setValueParamter( 7, ENTRY_SHIFT[0] );
  69. param.setValueParamter( 8, ENTRY_GROUP[0] );
  70. param.setValueParamter( 9, ENTRY_REG[0] );
  71. param.setValueParamter( 10, ENTRY_DTIME[0] );
  72. param.setValueParamter( 11, COIL_WGT[i] );
  73. // param.setValueParamter( 12, trnftime );
  74. param.setValueParamter( 12, pCoilNo[i] );
  75. getDao("mesdao").update("UIJ010061.ModifyCoilProgStatusOfCoils.Save", param);
  76. param2 = new PosParameter();
  77. param2.setValueParamter( 0, trnftime );
  78. param2.setValueParamter( 1, pDlivDirNo[i] );
  79. getDao("mesdao").update("UIJ010061.UpdateTime.Save", param2);
  80. // param1 = new PosParameter();
  81. //
  82. // param1.setValueParamter( 0, pShipProgCd[i] );
  83. // param1.setValueParamter( 1, TRANS_CAR_NO[i] );
  84. // param1.setValueParamter( 2, COIL_WGT[i] );
  85. // param1.setValueParamter( 3, CZD[0] );
  86. // param1.setValueParamter( 4, pCoilNo[i] );
  87. // getDao("mesdao").update("UIJ010061.ModifyShipProgStatusOfCoils.Save", param1);
  88. PosParameter paramck = new PosParameter();
  89. paramck.setWhereClauseParameter( 0, OLD_SAMPL_NO[i] );
  90. PosRowSet rowsck = getDao("mesdao").find("UIJ010061.Checkstatus.Select", paramck);
  91. if(rowsck.hasNext()){
  92. return PosBizControlConstants.FAILURE;
  93. }
  94. PosParameter paramTT = new PosParameter();
  95. paramTT.setValueParamter( 0, "08" );
  96. paramTT.setValueParamter( 1, TRANS_CAR_NO[i] );
  97. paramTT.setValueParamter( 2, COIL_WGT[i] );
  98. paramTT.setValueParamter( 3, CZD[0] );
  99. paramTT.setValueParamter( 4, pCoilNo[i] );
  100. getDao("mesdao").update("UIJ010061.CLEARDLIVNO.Save", paramTT);
  101. PosParameter param11 = new PosParameter();
  102. param11.setWhereClauseParameter( 0, OLD_SAMPL_NO[i] );
  103. PosRowSet rows11 = getDao("mesdao").find("UIJ010061.Checkbj.Select", param11);
  104. PosParameter paramYS = new PosParameter();
  105. if(rows11.hasNext()){
  106. //更新已移送的数据
  107. paramYS = new PosParameter();
  108. paramYS.setWhereClauseParameter(0, OLD_SAMPL_NO[i]);
  109. paramYS.setWhereClauseParameter(1, OLD_SAMPL_NO[i]);
  110. int updtCnt = getDao("mesdao").update("UIK010010_02.insert", paramYS);
  111. }
  112. else
  113. {
  114. //移送板加
  115. PosParameter paramy = new PosParameter();
  116. paramy.setWhereClauseParameter(0, OLD_SAMPL_NO[i]);
  117. this.getDao("mesdao").update("UIH052400_04.update", paramy); //清除垛位
  118. //写入板加数据
  119. paramYS = new PosParameter();
  120. paramYS.setWhereClauseParameter(0, ENTRY_REG[0]);
  121. paramYS.setWhereClauseParameter(1, OLD_SAMPL_NO[i]);
  122. int updtCnt = getDao("mesdao").update("UIK010010_01.insert", paramYS);
  123. }
  124. }
  125. return PosBizControlConstants.SUCCESS;
  126. }
  127. }