6b9cafdd22f9d752a16d2457b2890565df54c99d.svn-base 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. package xin.glue.nui.G.G02;
  2. import java.math.BigDecimal;
  3. import com.posdata.glue.biz.activity.PosActivity;
  4. import com.posdata.glue.biz.constants.PosBizControlConstants;
  5. import com.posdata.glue.context.PosContext;
  6. import com.posdata.glue.dao.vo.PosParameter;
  7. import com.posdata.glue.dao.vo.PosRow;
  8. import com.posdata.glue.dao.vo.PosRowSet;
  9. import com.posdata.glue.msg.PosMessage;
  10. public class XinCreateSlab extends PosActivity
  11. {
  12. public String runActivity(PosContext context)
  13. {
  14. //if(true)return PosBizControlConstants.SUCCESS;
  15. try{
  16. PosMessage message = context.getMessage();
  17. //从电文中获取的数据项
  18. String chargeNo = (String)message.get("CHARGE_NO"); //炉次号
  19. String planChargeNo = (String)message.get("PLAN_CHARGE_NO"); //计划炉次号
  20. //通过电文中接收的炉次号查询板坯参数表 TBF01_SPEC_CHARGE 取得一个炉次的板坯的数据项 ,修改炼钢公共表 更新板坯公共表,和板坯详细公共表
  21. String sql = "select * from tbg02_charge_comm where CHARGE_NO = ?";
  22. PosParameter param = new PosParameter();
  23. param.setWhereClauseParameter(0, chargeNo);
  24. PosRowSet rowset = this.getDao("mesdao").findByQueryStatement(sql,param);
  25. if(rowset.hasNext()){
  26. PosRow row = rowset.next();
  27. String ROW_CHARGE_STAT = (String)row.getAttribute("CHARGE_STAT");
  28. if (ROW_CHARGE_STAT != null && ROW_CHARGE_STAT.equals("3")){
  29. context.put("MESSAGES", "炉次已经结束,不能操作");
  30. return PosBizControlConstants.SUCCESS;
  31. }
  32. }
  33. param = new PosParameter();
  34. param.setWhereClauseParameter(0, planChargeNo);
  35. PosRowSet SlabSpecVo = getDao("mesdao").find("NIG020200_SPEC_SLAB.select", param);
  36. while(SlabSpecVo.hasNext()) {
  37. PosRow SlabSpecROW = SlabSpecVo.next();
  38. Number sSlabEdtSeq= (Number)SlabSpecROW.getAttribute("SLAB_EDT_SEQ");
  39. String sPlanSlabNo= (String)SlabSpecROW.getAttribute("SLAB_MANA_NO");
  40. String sStlGrd = (String)SlabSpecROW.getAttribute("STL_GRD");
  41. Number sSlabThk = (Number)SlabSpecROW.getAttribute("SLAB_THK");
  42. Number sSlabWth = (Number)SlabSpecROW.getAttribute("SLAB_WTH");
  43. Number sSlabLen = (Number)SlabSpecROW.getAttribute("SLAB_LEN");
  44. Number sSlabWgt = (Number)SlabSpecROW.getAttribute("SLAB_WGT");
  45. String sProdNmCd = (String)SlabSpecROW.getAttribute("PRODNM_CD");
  46. String sOrdFl = (String)SlabSpecROW.getAttribute("ORD_FL");
  47. String sOrdNo = (String)SlabSpecROW.getAttribute("ORD_NO");
  48. String sOrdSeq = (String)SlabSpecROW.getAttribute("ORD_SEQ");
  49. String sHcrClf = (String)SlabSpecROW.getAttribute("HCR_CLF");
  50. String sSpecAbbsym= (String)SlabSpecROW.getAttribute("SPEC_ABBSYM");
  51. Number ORD_THK = (Number)SlabSpecROW.getAttribute("ORD_THK");
  52. Number ORD_WTH = (Number)SlabSpecROW.getAttribute("ORD_WTH");
  53. Number ORD_LEN = (Number)SlabSpecROW.getAttribute("ORD_LEN");
  54. Number ORD_WGT = (Number)SlabSpecROW.getAttribute("ORD_WGT");
  55. Number COIL_INDIA = (Number)SlabSpecROW.getAttribute("COIL_INDIA");
  56. Number COIL_OUTDIA= (Number)SlabSpecROW.getAttribute("COIL_OUTDIA");
  57. String SLAB_RT = (String)SlabSpecROW.getAttribute("SLAB_RT");
  58. String CAST_MANA_NO = (String)SlabSpecROW.getAttribute("CAST_MANA_NO");
  59. String sSlabSeq = sPlanSlabNo.substring(10,13);
  60. String sSlabNo = chargeNo+sSlabSeq;
  61. logger.logDebug("XinCreateSlab sSlabSeq:"+sSlabSeq );
  62. logger.logDebug("XinCreateSlab sSlabNo:"+sSlabNo );
  63. PosParameter param1 = new PosParameter();
  64. param1.setWhereClauseParameter(0, sSlabNo);
  65. PosRowSet CreatSlabVo = getDao("mesdao").find("NIG020200_CREATE_SLAB.select", param1);
  66. if (!CreatSlabVo.hasNext() ) {
  67. PosParameter param2 = new PosParameter();
  68. param2.setValueParamter(0, sSlabNo );
  69. param2.setValueParamter(1, sPlanSlabNo );
  70. param2.setValueParamter(2, sStlGrd );
  71. param2.setValueParamter(3, sSlabThk );
  72. param2.setValueParamter(4, sSlabWth );
  73. param2.setValueParamter(5, sSlabLen );
  74. param2.setValueParamter(6, sSlabWgt );
  75. param2.setValueParamter(7, sProdNmCd );
  76. param2.setValueParamter(8, sOrdFl );
  77. param2.setValueParamter(9, sOrdNo );
  78. param2.setValueParamter(10, sOrdSeq );
  79. param2.setValueParamter(11, sHcrClf );
  80. param2.setValueParamter(12, sSpecAbbsym );
  81. param2.setValueParamter(13, sOrdFl );
  82. param2.setValueParamter(14, sOrdNo );
  83. param2.setValueParamter(15, sOrdSeq );
  84. param2.setValueParamter(16, ORD_THK );
  85. param2.setValueParamter(17, ORD_WTH );
  86. param2.setValueParamter(18, ORD_LEN );
  87. param2.setValueParamter(19, COIL_INDIA );
  88. param2.setValueParamter(20, COIL_OUTDIA );
  89. param2.setValueParamter(21, ORD_WGT );
  90. param2.setValueParamter(22, SLAB_RT );
  91. param2.setValueParamter(23, CAST_MANA_NO );
  92. getDao("mesdao").insert("NIG020200_CREATE_SLAB.insert",param2);
  93. PosParameter param3 = new PosParameter();
  94. param3.setWhereClauseParameter(0, sSlabEdtSeq);
  95. PosRowSet CreatSlabDVo = getDao("mesdao").find("NIG020200_SPEC_SLAB_D.select", param3);
  96. while( CreatSlabDVo.hasNext()) {
  97. PosRow CreatSlabDROW = CreatSlabDVo.next();
  98. String S_SLAB_CUT_SEQ = (String)CreatSlabDROW.getAttribute("SLAB_CUT_SEQ");
  99. Number S_SLAB_THK = (Number)CreatSlabDROW.getAttribute("SLAB_THK");
  100. Number S_SLAB_WTH = (Number)CreatSlabDROW.getAttribute("SLAB_WTH");
  101. Number S_SLAB_LEN = (Number)CreatSlabDROW.getAttribute("SLAB_LEN");
  102. // Number S_SLAB_WGT = (Number)CreatSlabDROW.getAttribute("SLAB_WGT");
  103. Number S_ORD_THK = (Number)CreatSlabDROW.getAttribute("ORD_THK");
  104. Number S_ORD_WTH = (Number)CreatSlabDROW.getAttribute("ORD_WTH");
  105. Number S_ORD_LEN = (Number)CreatSlabDROW.getAttribute("ORD_LEN");
  106. Number S_ORD_WGT = (Number)CreatSlabDROW.getAttribute("ORD_WGT");
  107. Number S_COIL_INDIA = (Number)CreatSlabDROW.getAttribute("COIL_INDIA");
  108. Number S_COIL_OUTDIA = (Number)CreatSlabDROW.getAttribute("COIL_OUTDIA");
  109. String S_ORD_NO = (String)CreatSlabDROW.getAttribute("ORD_NO");
  110. String S_ORD_SEQ = (String)CreatSlabDROW.getAttribute("ORD_SEQ");
  111. String S_ORD_FL = (String)CreatSlabDROW.getAttribute("ORD_FL");
  112. PosParameter param5 = new PosParameter();
  113. param5.setWhereClauseParameter(0, sSlabNo);
  114. PosRowSet SalbDVo = getDao("mesdao").find("NIG020200_CREATE_SLAB_D.select", param5);
  115. if (!SalbDVo.hasNext()) {
  116. PosParameter param4 = new PosParameter();
  117. param4.setValueParamter(0, sSlabNo );
  118. param4.setValueParamter(1, S_SLAB_CUT_SEQ );
  119. param4.setValueParamter(2, S_SLAB_THK );
  120. param4.setValueParamter(3, S_SLAB_WTH );
  121. param4.setValueParamter(4, S_SLAB_LEN );
  122. param4.setValueParamter(5, S_ORD_THK );
  123. param4.setValueParamter(6, S_ORD_WTH );
  124. param4.setValueParamter(7, S_ORD_LEN );
  125. param4.setValueParamter(8, S_ORD_WGT );
  126. param4.setValueParamter(9, S_COIL_INDIA );
  127. param4.setValueParamter(10, S_COIL_OUTDIA );
  128. param4.setValueParamter(11, S_ORD_NO );
  129. param4.setValueParamter(12, S_ORD_SEQ );
  130. param4.setValueParamter(13, S_ORD_FL );
  131. getDao("mesdao").insert("NIG020200_CREATE_SLAB_D.insert",param4);
  132. }
  133. }
  134. }
  135. }
  136. }catch(Exception ex){
  137. logger.logDebug("NUI SAVE BOFRESULT-------->" + ex);
  138. logger.logError("NUI SAVE BOFRESULT-------->" + ex);
  139. }
  140. return PosBizControlConstants.SUCCESS;
  141. }
  142. }