fb508928ab378a9d474bf5530d5558919fed90a5.svn-base 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. package xin.glue.nui.G.G02;
  2. import java.math.BigDecimal;
  3. import java.text.DateFormat;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Date;
  6. import xin.glue.ui.common.PosDateFormat;
  7. import com.posdata.glue.biz.activity.PosActivity;
  8. import com.posdata.glue.biz.constants.PosBizControlConstants;
  9. import com.posdata.glue.context.PosContext;
  10. import com.posdata.glue.dao.vo.PosParameter;
  11. import com.posdata.glue.dao.vo.PosRow;
  12. import com.posdata.glue.dao.vo.PosRowSet;
  13. import com.posdata.glue.msg.PosMessage;
  14. /**
  15. *
  16. * @auth: wangxiaoyan
  17. * @date: 2008-12-25
  18. * @desc: KR实绩录入
  19. */
  20. public class XinSaveKRResult extends PosActivity
  21. {
  22. public XinSaveKRResult()
  23. {
  24. }
  25. public String runActivity(PosContext context)
  26. {
  27. PosMessage message = context.getMessage();
  28. String RsvDate = (String)message.get("RSV_DATE");
  29. String KrChrgeNo = (String)message.get("KR_CHARGE_NO");
  30. String ocrDtime = (String)message.get("OCR_DTIME");
  31. String krNo = (String)message.get("KR_NO");
  32. String ldNo = (String)message.get("LD_NO");
  33. String ldArrivDtime = (String)message.get("LD_ARRIV_DTIME");
  34. String staDtime = (String)message.get("STA_DTIME");
  35. String endDtime = (String)message.get("END_DTIME");
  36. String ldDepDtime = (String)message.get("LD_DEP_DTIME");
  37. BigDecimal ironRecvWgt = (BigDecimal)message.get("IRON_RECV_WGT");
  38. BigDecimal treatAftSWgt = (BigDecimal)message.get("TREAT_AFT_S_WGT");
  39. BigDecimal treatAftPWgt = (BigDecimal)message.get("TREAT_AFT_P_WGT");
  40. BigDecimal treatAftCWgt = (BigDecimal)message.get("TREAT_AFT_C_WGT");
  41. BigDecimal treatAftMnWgt = (BigDecimal)message.get("TREAT_AFT_MN_WGT");
  42. BigDecimal treatAftSiWgt = (BigDecimal)message.get("TREAT_AFT_SI_WGT");
  43. BigDecimal treatAftTiWgt = (BigDecimal)message.get("TREAT_AFT_TI_WGT");
  44. BigDecimal endTemp = (BigDecimal)message.get("END_TEMP");
  45. String befSlagRemoveYn = (String)message.get("BEF_SLAG_REMOVE_YN");
  46. String aftSlagRemoveYn = (String)message.get("AFT_SLAG_REMOVE_YN");
  47. BigDecimal mgoCalWgt = (BigDecimal)message.get("MGO_CAL_WGT");
  48. BigDecimal caoCalWgt = (BigDecimal)message.get("CAO_CAL_WGT");
  49. BigDecimal mgoWkerInputWgt = (BigDecimal)message.get("MGO_WKER_INPUT_WGT");
  50. BigDecimal caoWkerInputWgt = (BigDecimal)message.get("CAO_WKER_INPUT_WGT");
  51. BigDecimal mixTreatHour = (BigDecimal)message.get("MIX_TREAT_HOUR");
  52. String mixStaDtime = (String)message.get("MIX_STA_DTIME");
  53. String mixEndDtime = (String)message.get("MIX_END_DTIME");
  54. String befSlagRemoveStaDtime = (String)message.get("BEF_SLAG_REMOVE_STA_DTIME");
  55. String befSlagRemoveEndDtime = (String)message.get("BEF_SLAG_REMOVE_END_DTIME");
  56. BigDecimal befSlagRemoveHour = (BigDecimal)message.get("BEF_SLAG_REMOVE_HOUR");
  57. BigDecimal befSlagRemoveWgt = (BigDecimal)message.get("BEF_SLAG_REMOVE_WGT");
  58. String aftSlagRemoveStadtime = (String)message.get("AFT_SLAG_REMOVE_STA_DTIME");
  59. String aftSlagRemoveEndDtime = (String)message.get("AFT_SLAG_REMOVE_END_DTIME");
  60. BigDecimal aftSlagRemoveHour = (BigDecimal)message.get("AFT_SLAG_REMOVE_HOUR");
  61. BigDecimal aftSlagRemoveWgt = (BigDecimal)message.get("AFT_SLAG_REMOVE_WGT");
  62. String sShift = null;
  63. if ( RsvDate.equals("") || RsvDate == null ) {
  64. DateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss");
  65. RsvDate = formatter.format(new Date());
  66. }
  67. sShift = PosDateFormat.getShift(RsvDate);
  68. // 获取工作组
  69. PosParameter paramA = new PosParameter();
  70. paramA.setWhereClauseParameter(0, RsvDate.substring(0,6));
  71. paramA.setWhereClauseParameter(1, RsvDate.substring(6,8));
  72. paramA.setWhereClauseParameter(2, sShift);
  73. paramA.setWhereClauseParameter(3, "S");
  74. PosRowSet groupVO = this.getDao("mesdao").find("NIG020210_SHIFT.select", paramA);
  75. String sGroup = null;
  76. if (groupVO.hasNext()){
  77. PosRow groupROW = groupVO.next();
  78. sGroup = (String)groupROW.getAttribute("GR_GROUP_CD");
  79. }
  80. PosParameter parm0 = new PosParameter();
  81. PosParameter parm1 = new PosParameter();
  82. parm0.setWhereClauseParameter(0, KrChrgeNo);
  83. PosRowSet rowset0 = getDao("mesdao").find("NIG020100_01.select", parm0);
  84. if(rowset0.hasNext())
  85. {
  86. parm1.setValueParamter(0, ocrDtime);
  87. parm1.setValueParamter(1, krNo);
  88. parm1.setValueParamter(2, ldNo);
  89. parm1.setValueParamter(3, ldArrivDtime);
  90. parm1.setValueParamter(4, staDtime);
  91. parm1.setValueParamter(5, endDtime);
  92. parm1.setValueParamter(6, ldDepDtime);
  93. parm1.setValueParamter(7, ironRecvWgt);
  94. parm1.setValueParamter(8, treatAftSWgt);
  95. parm1.setValueParamter(9, treatAftPWgt);
  96. parm1.setValueParamter(10, treatAftCWgt);
  97. parm1.setValueParamter(11, treatAftMnWgt);
  98. parm1.setValueParamter(12, treatAftSiWgt);
  99. parm1.setValueParamter(13, treatAftTiWgt);
  100. parm1.setValueParamter(14, endTemp);
  101. parm1.setValueParamter(15, befSlagRemoveYn);
  102. parm1.setValueParamter(16, aftSlagRemoveYn);
  103. parm1.setValueParamter(17, mgoCalWgt);
  104. parm1.setValueParamter(18, caoCalWgt);
  105. parm1.setValueParamter(19, mgoWkerInputWgt);
  106. parm1.setValueParamter(20, caoWkerInputWgt);
  107. parm1.setValueParamter(21, mixTreatHour);
  108. parm1.setValueParamter(22, mixStaDtime);
  109. parm1.setValueParamter(23, mixEndDtime);
  110. parm1.setValueParamter(24, befSlagRemoveStaDtime);
  111. parm1.setValueParamter(25, befSlagRemoveEndDtime);
  112. parm1.setValueParamter(26, befSlagRemoveHour);
  113. parm1.setValueParamter(27, befSlagRemoveWgt);
  114. parm1.setValueParamter(28, aftSlagRemoveStadtime);
  115. parm1.setValueParamter(29, aftSlagRemoveEndDtime);
  116. parm1.setValueParamter(30, aftSlagRemoveHour);
  117. parm1.setValueParamter(31, aftSlagRemoveWgt);
  118. parm1.setValueParamter(32, RsvDate.substring(0,8));
  119. parm1.setValueParamter(33, sShift);
  120. parm1.setValueParamter(34, sGroup);
  121. parm1.setValueParamter(35, KrChrgeNo);
  122. getDao("mesdao").update("NIG020100_01.update", parm1);
  123. } else
  124. {
  125. parm1.setValueParamter(0, KrChrgeNo);
  126. parm1.setValueParamter(1, ocrDtime);
  127. parm1.setValueParamter(2, krNo);
  128. parm1.setValueParamter(3, ldNo);
  129. parm1.setValueParamter(4, ldArrivDtime);
  130. parm1.setValueParamter(5, staDtime);
  131. parm1.setValueParamter(6, endDtime);
  132. parm1.setValueParamter(7, ldDepDtime);
  133. parm1.setValueParamter(8, ironRecvWgt);
  134. parm1.setValueParamter(9, treatAftSWgt);
  135. parm1.setValueParamter(10, treatAftPWgt);
  136. parm1.setValueParamter(11, treatAftCWgt);
  137. parm1.setValueParamter(12, treatAftMnWgt);
  138. parm1.setValueParamter(13, treatAftSiWgt);
  139. parm1.setValueParamter(14, treatAftTiWgt);
  140. parm1.setValueParamter(15, endTemp);
  141. parm1.setValueParamter(16, befSlagRemoveYn);
  142. parm1.setValueParamter(17, aftSlagRemoveYn);
  143. parm1.setValueParamter(18, mgoCalWgt);
  144. parm1.setValueParamter(19, caoCalWgt);
  145. parm1.setValueParamter(20, mgoWkerInputWgt);
  146. parm1.setValueParamter(21, caoWkerInputWgt);
  147. parm1.setValueParamter(22, mixTreatHour);
  148. parm1.setValueParamter(23, mixStaDtime);
  149. parm1.setValueParamter(24, mixEndDtime);
  150. parm1.setValueParamter(25, befSlagRemoveStaDtime);
  151. parm1.setValueParamter(26, befSlagRemoveEndDtime);
  152. parm1.setValueParamter(27, befSlagRemoveHour);
  153. parm1.setValueParamter(28, befSlagRemoveWgt);
  154. parm1.setValueParamter(29, aftSlagRemoveStadtime);
  155. parm1.setValueParamter(30, aftSlagRemoveEndDtime);
  156. parm1.setValueParamter(31, aftSlagRemoveHour);
  157. parm1.setValueParamter(32, aftSlagRemoveWgt);
  158. parm1.setValueParamter(33, RsvDate.substring(0,8));
  159. parm1.setValueParamter(34, sShift);
  160. parm1.setValueParamter(35, sGroup);
  161. parm1.setValueParamter(36, "1");
  162. getDao("mesdao").insert("NIG020100_01.insert", parm1);
  163. }
  164. // 下面代码更新工序 EVENT 的KR实绩 ,用来实时跟踪
  165. PosParameter parm2 = new PosParameter();
  166. parm2.setValueParamter(0, "K02");
  167. parm2.setValueParamter(1, ironRecvWgt);
  168. parm2.setValueParamter(2, endTemp);
  169. parm2.setValueParamter(3, endDtime);
  170. parm2.setValueParamter(4, KrChrgeNo);
  171. parm2.setValueParamter(5, krNo);
  172. this.getDao("mesdao").update("NIG020100_TRACK.update", parm2);
  173. return PosBizControlConstants.SUCCESS;
  174. }
  175. }