49c3c739307119fe8a6b2a94af8ab04ffda55c36.svn-base 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. package xin.glue.ui.G.G04;
  2. import java.math.BigDecimal;
  3. import java.sql.CallableStatement;
  4. import java.sql.SQLException;
  5. import com.posdata.glue.biz.activity.PosActivity;
  6. import com.posdata.glue.biz.constants.PosBizControlConstants;
  7. import com.posdata.glue.biz.control.PosBizControlIF;
  8. import com.posdata.glue.biz.control.PosBizProvider;
  9. import com.posdata.glue.component.PosConstants;
  10. import com.posdata.glue.context.PosContext;
  11. import com.posdata.glue.dao.vo.PosParameter;
  12. import com.posdata.glue.dao.vo.PosRow;
  13. import com.posdata.glue.dao.vo.PosRowSet;
  14. import com.posdata.glue.msg.PosMESMessageImpl;
  15. import com.posdata.glue.msg.PosMessage;
  16. /**
  17. * @auth: wangxiaoyan
  18. * @date: 2009-2-17
  19. * @desc: 板坯全废钢实绩
  20. */
  21. public class XinSaveAllScrapSlab extends PosActivity {
  22. public String runActivity(PosContext context) {
  23. String[] scrapWgt = (String[])context.get("SCRAP_WGT");
  24. String[] slabNo = (String[])context.get("SLAB_NO");
  25. String matrlEndCauseCd = "2"; // scrap
  26. PosParameter param1 = new PosParameter();
  27. param1.setWhereClauseParameter(0, slabNo[0]);
  28. //select from tbg02_slab_comm
  29. PosRowSet slabComVo = getDao("mesdao").find("UIG040070_04.select", param1);
  30. String OrdNo = null;
  31. String OrdSeq = null;
  32. String OrdFl = null;
  33. String CurProgCd = null;
  34. String BefProgCd = null;
  35. String BefOrdNo = null;
  36. String BefOrdSeq = null;
  37. String NonOrdResCd = null;
  38. if (slabComVo.hasNext()) {
  39. PosRow slabComROW = slabComVo.next();
  40. OrdNo = (String)slabComROW.getAttribute("ORD_NO");
  41. OrdSeq = (String)slabComROW.getAttribute("ORD_SEQ");
  42. CurProgCd = (String)slabComROW.getAttribute("CUR_PROG_CD");
  43. OrdFl = (String)slabComROW.getAttribute("ORD_FL");
  44. }
  45. BefOrdNo = OrdNo;
  46. BefOrdSeq = OrdSeq;
  47. OrdNo = null;
  48. OrdSeq = null;
  49. OrdFl = "2";
  50. NonOrdResCd = "2C"; //余材原因:板坯不良
  51. if(slabNo.length > 0){
  52. //增加降级历史记录 20101227 wxy
  53. CallableStatement cstm = null;
  54. PosParameter param = new PosParameter();
  55. try{
  56. cstm = this.getDao("mesdao").getCallableStatement("ORD_HIS_INSERT.call");
  57. cstm.setString(1, "B");
  58. cstm.setString(2, "S");
  59. cstm.setString(3, "");
  60. cstm.setString(4, "UIG040070");
  61. cstm.setString(5, "");
  62. cstm.setString(6, "");
  63. cstm.setString(7, "");
  64. cstm.setString(8, slabNo[0]);
  65. cstm.setString(9, "TM");
  66. cstm.setString(10, "");
  67. cstm.setString(11, "");
  68. cstm.setString(12, "");
  69. cstm.setString(13, "");
  70. cstm.execute();
  71. }catch(Exception ex){
  72. logger.logError(ex.getMessage(), ex);
  73. }finally{
  74. if (cstm != null)
  75. {
  76. try
  77. {
  78. cstm.close();
  79. }
  80. catch (SQLException e)
  81. {
  82. logger.logWarn(e.getMessage(), e);
  83. }
  84. }
  85. }
  86. //end 增加降级历史记录
  87. param = new PosParameter();
  88. param.setWhereClauseParameter(0, scrapWgt[0]);
  89. param.setWhereClauseParameter(1, OrdFl);
  90. param.setWhereClauseParameter(2, OrdNo);
  91. param.setWhereClauseParameter(3, OrdSeq);
  92. param.setWhereClauseParameter(4, BefOrdNo);
  93. param.setWhereClauseParameter(5, BefOrdSeq);
  94. param.setWhereClauseParameter(6, NonOrdResCd);
  95. param.setWhereClauseParameter(7, matrlEndCauseCd);
  96. param.setWhereClauseParameter(8, slabNo[0]);
  97. this.getDao("mesdao").update("UIG040070_ALL_SCRAP_COMM.update", param);
  98. param = new PosParameter();
  99. param.setWhereClauseParameter(0, slabNo[0]);
  100. getDao("mesdao").update("UIG040070_ALL_SCRAP_YARD_ADDR.update", param);
  101. if (OrdFl!= null && OrdFl.equals("1") ) {
  102. BigDecimal SlabWgt = new BigDecimal(scrapWgt[0]);
  103. SendProg_NIE012070(slabNo[0],OrdNo,OrdSeq,BefOrdNo,BefOrdSeq,CurProgCd,BefProgCd,"TM",SlabWgt);
  104. SendProg_NIE012080();
  105. }
  106. }
  107. return PosBizControlConstants.SUCCESS;
  108. }
  109. public PosContext SendProg_NIE012070(String MatNo,String sOrdNo,String sOrdSeq,String sBefOrdNo,String sBefOrdSeq,String sProgCd,String BefProcCd,String sKind,BigDecimal nwgt )
  110. {
  111. PosContext context = new PosContext();
  112. PosMessage message = new PosMESMessageImpl();
  113. String TcId = "NIE012070";
  114. message.setTCID(TcId);
  115. message.setObject("MSG_ID",TcId);
  116. message.setObject("BEF_ORD_NO",sBefOrdNo);
  117. message.setObject("BEF_ORD_SEQ",sBefOrdSeq);
  118. message.setObject("ORD_NO",sOrdNo);
  119. message.setObject("ORD_SEQ",sOrdSeq);
  120. message.setObject("BEF_PROG_CD",BefProcCd);
  121. message.setObject("PROG_CD",sProgCd);
  122. message.setObject("MAT_TYPE",sKind);
  123. message.setObject("MAT_NO",MatNo);
  124. message.setObject("WGT", nwgt );
  125. message.setObject("PGMID","UIG040070");
  126. message.setObject("REG_ID","UIG040070");
  127. message.setTCID(TcId);
  128. context.setMessage(message);
  129. // this.processComponent(PosConstants.CREATE_MESSAGE, context);
  130. // String transactionCode = context.getMessage().getTC();
  131. String SERVICE_POSTFIX = "-service";
  132. context.put(PosBizControlConstants.SERVICE_NAME, TcId + SERVICE_POSTFIX);
  133. // context.setMessage(message);
  134. PosBizControlIF controller = PosBizProvider.getController();
  135. controller.doSubController(context,false);
  136. return null;
  137. }
  138. public void SendProg_NIE012080()
  139. {
  140. PosContext context = new PosContext();
  141. PosMessage message = new PosMESMessageImpl();
  142. String TcId = "NIE012080";
  143. message.setTCID(TcId);
  144. message.setObject("MSG_ID",TcId);
  145. message.setObject("AA",null);
  146. context.setMessage(message);
  147. this.processComponent(PosConstants.CREATE_MESSAGE, context);
  148. String transactionCode = context.getMessage().getTC();
  149. message.setTCID(TcId);
  150. String serviceName = "NIE012080";
  151. String SERVICE_POSTFIX = "-service";
  152. context.put(PosBizControlConstants.SERVICE_NAME, serviceName + SERVICE_POSTFIX);
  153. context.setMessage(message);
  154. PosBizControlIF controller = PosBizProvider.getController();
  155. controller.doSubController(context,false);
  156. }
  157. }