4a3bc397df1e4f4d12d724f17435db04c05353cb.svn-base 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. package xin.glue.ui.H.H02;
  2. import java.math.BigDecimal;
  3. //import xin.glue.ui.common.component.PosSiteConfig;
  4. import xin.glue.ui.common.component.PosSiteLog;
  5. import com.posdata.glue.biz.activity.PosActivity;
  6. import com.posdata.glue.biz.constants.PosBizControlConstants;
  7. import com.posdata.glue.context.PosContext;
  8. import com.posdata.glue.dao.vo.PosParameter;
  9. import com.posdata.glue.dao.vo.PosRow;
  10. import com.posdata.glue.dao.vo.PosRowSet;
  11. /*
  12. * author:TangLiang 唐亮
  13. * date:2008-11-12
  14. * 由于需要把母钢卷的编号一分为二,并且改变母钢卷和子钢卷的信息,
  15. * 所以自己写一个类已便于操作
  16. * desc:SPM实绩登录与查询
  17. */
  18. public class SaveCoilNo extends PosActivity{
  19. public String runActivity(PosContext context)
  20. {
  21. // 从页面获取参数数据,供更新页面使用
  22. String[] status2 = (String[]) context.get("rowStuts2");
  23. String[] status4 = (String[]) context.get("rowStuts4");
  24. //钢卷号
  25. String[] coilNo = (String[])context.get("COIL_NO");
  26. //批次号
  27. String[] OLD_SAMPL_NO = (String[])context.get("OLD_SAMPL_NO");
  28. //钢卷分割号1
  29. String CUT_NO1 = "1";
  30. //钢卷分割号2
  31. String CUT_NO2 = "2";
  32. // 钢卷厚度
  33. String[] coilThk = (String[])context.get("COIL_THK");
  34. // 钢卷宽度
  35. String[] coilWth = (String[])context.get("COIL_WTH");
  36. // 钢卷外径
  37. String[] coilOutDia= (String[])context.get("COIL_OUTDIA");
  38. // 钢卷重量
  39. String[] actWgt= (String[])context.get("ACT_WGT");
  40. // 取样採取有无
  41. String[] samplPickYn= (String[])context.get("SAMPL_PICK_YN");
  42. // 瑕疵代码1
  43. String[] crkCd1= (String[])context.get("CRK_CD1");
  44. // 瑕疵代码2
  45. String[] crkCd2= (String[])context.get("CRK_CD2");
  46. // 瑕疵代码3
  47. String[] crkCd3= (String[])context.get("CRK_CD3");
  48. // 瑕疵代码4
  49. String[] crkCd4= (String[])context.get("CRK_CD4");
  50. // 余材区分
  51. String[] ordFl= (String[])context.get("ORD_FL");
  52. // 班次
  53. String[] SPM_SHIFT= (String[])context.get("SPM_SHIFT");
  54. // 组次
  55. String[] SPM_GROUP= (String[])context.get("SPM_GROUP");
  56. // 作业人
  57. String[] SPM_EMP_ID= (String[])context.get("SPM_EMP_ID");
  58. //子钢卷的堆放地址
  59. String[] CUR_LOAD_LOC= (String[])context.get("CUR_LOAD_LOC");
  60. //循环获得的发送接点里信息的行数,一行一行插入
  61. for(int i=0;i<status2.length;i++){
  62. if(status2[i].equals("u")){
  63. //先插入新生成的钢卷信息,再改变原来的母钢卷状态
  64. PosParameter param0 = new PosParameter();
  65. //这里钢卷号的最后一位是用来标识分卷的。0为母卷、1、2为分开的子卷
  66. param0.setValueParamter(0, coilNo[0].substring(0, coilNo[0].length()-1)+CUT_NO1);
  67. param0.setValueParamter(1, coilThk[0]);
  68. param0.setValueParamter(2, coilWth[0]);
  69. param0.setValueParamter(3, coilOutDia[0]);
  70. param0.setValueParamter(4, actWgt[0]);
  71. param0.setValueParamter(5, samplPickYn[0]);
  72. param0.setValueParamter(6, crkCd1[0]);
  73. param0.setValueParamter(7, crkCd2[0]);
  74. param0.setValueParamter(8, crkCd3[0]);
  75. param0.setValueParamter(9, crkCd4[0]);
  76. param0.setValueParamter(10, ordFl[0]);
  77. param0.setValueParamter(11, SPM_SHIFT[0]);
  78. param0.setValueParamter(12, SPM_GROUP[0]);
  79. param0.setValueParamter(13, SPM_EMP_ID[0]);
  80. param0.setValueParamter(14, CUR_LOAD_LOC[i]);
  81. param0.setValueParamter(15, OLD_SAMPL_NO[0].substring(0, OLD_SAMPL_NO[0].length()-1)+CUT_NO1);
  82. getDao("mesdao").insert("UIH020080_01.insert", param0);
  83. // 打印日志
  84. // if (PosSiteConfig.writeLog)
  85. // PosSiteLog.writeLog(context, getDao("mesdao"),"UIH020080_01.insert", param0.getValueParameters());
  86. }else if(status2[i].equals("i")){
  87. //插入分卷的第二条信息
  88. PosParameter param1 = new PosParameter();
  89. // 这里钢卷号的最后一位是用来标识分卷的。0为母卷、1、2为分开的子卷
  90. param1.setValueParamter(0, coilNo[0].substring(0, coilNo[0].length()-1)+CUT_NO2);
  91. param1.setValueParamter(1, coilThk[0]);
  92. param1.setValueParamter(2, coilWth[0]);
  93. param1.setValueParamter(3, coilOutDia[0]);
  94. param1.setValueParamter(4, actWgt[0]);
  95. param1.setValueParamter(5, samplPickYn[0]);
  96. param1.setValueParamter(6, crkCd1[0]);
  97. param1.setValueParamter(7, crkCd2[0]);
  98. param1.setValueParamter(8, crkCd3[0]);
  99. param1.setValueParamter(9, crkCd4[0]);
  100. param1.setValueParamter(10, ordFl[0]);
  101. param1.setValueParamter(11, SPM_SHIFT[0]);
  102. param1.setValueParamter(12, SPM_GROUP[0]);
  103. param1.setValueParamter(13, SPM_EMP_ID[0]);
  104. param1.setValueParamter(14, CUR_LOAD_LOC[i]);
  105. param1.setValueParamter(15, OLD_SAMPL_NO[0].substring(0, OLD_SAMPL_NO[0].length()-1)+CUT_NO2);
  106. getDao("mesdao").insert("UIH020080_01.insert", param1);
  107. // 打印日志
  108. // if (PosSiteConfig.writeLog)
  109. // PosSiteLog.writeLog(context, getDao("mesdao"),"UIH020080_01.insert", param1.getValueParameters());
  110. }else{
  111. //这里的钢卷号位数为13,分卷后位数为14。不能写入数据库
  112. //已经解决
  113. logger.logInfo(" 平整分卷出现异常情况,UIH020080! ");
  114. }
  115. }
  116. //更新母卷信息
  117. PosParameter param2 = new PosParameter();
  118. param2.setWhereClauseParameter(0, coilThk[0]);
  119. param2.setWhereClauseParameter(1, coilWth[0]);
  120. param2.setWhereClauseParameter(2, coilOutDia[0]);
  121. param2.setWhereClauseParameter(3, actWgt[0]);
  122. param2.setWhereClauseParameter(4, samplPickYn[0]);
  123. param2.setWhereClauseParameter(5, crkCd1[0]);
  124. param2.setWhereClauseParameter(6, crkCd2[0]);
  125. param2.setWhereClauseParameter(7, crkCd3[0]);
  126. param2.setWhereClauseParameter(8, crkCd4[0]);
  127. param2.setWhereClauseParameter(9, ordFl[0]);
  128. param2.setWhereClauseParameter(10, SPM_SHIFT[0]);
  129. param2.setWhereClauseParameter(11, SPM_GROUP[0]);
  130. param2.setWhereClauseParameter(12, SPM_EMP_ID[0]);
  131. //母卷的话就使用自身的钢卷号就可以了。
  132. param2.setWhereClauseParameter(13, coilNo[0]);
  133. param2.setWhereClauseParameter(14, OLD_SAMPL_NO[0]);
  134. getDao("mesdao").update("UIH020080_01.update", param2);
  135. // 打印日志
  136. // if (PosSiteConfig.writeLog)
  137. // PosSiteLog.writeLog(context, getDao("mesdao"),"UIH020080_01.update", param2.getWhereClauseParamters());
  138. //
  139. return PosBizControlConstants.SUCCESS;
  140. }
  141. }