178b7822e619fbb28e67f8ed8f097d52b3accc5e.svn-base 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. package xin.glue.ui.H.H05;
  2. import xin.glue.ui.common.PosGridSave;
  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.PosRowSet;
  10. /*
  11. * 钢卷仓库CRANE 命令执行
  12. * @author TangLiang 唐亮
  13. * @data 2008.10.28
  14. */
  15. public class saveFTCoilNo extends PosActivity{
  16. public String runActivity(PosContext context)
  17. {
  18. // 从页面获取数据供插入和更新使用
  19. // 原存放位置
  20. String[] FROM_ADDR = (String[]) context.get("FROM_ADDR");
  21. // 到存放位置
  22. String[] TO_ADDR = (String[]) context.get("TO_ADDR");
  23. // 批次号,发送接口的时候存在问题
  24. String[] COIL_NO = (String[]) context.get("OLD_SAMPL_NO");
  25. // 行车编号
  26. String[] CR_NO = (String[]) context.get("CR_NO");
  27. //行车命令编号字段
  28. String[] ORD_SEQ = (String[]) context.get("ORD_SEQ");
  29. //下车行车命令标志
  30. String[] CMD_CLF = (String[]) context.get("CMD_CLF");
  31. // 登录人
  32. String[] REG_ID = (String[])context.get("REG_ID");
  33. if(CMD_CLF[0].equals("T")){
  34. //下车行车命令
  35. //更新原放置位置表
  36. PosParameter param1 = new PosParameter();
  37. param1.setWhereClauseParameter(0, FROM_ADDR[0]);
  38. getDao("mesdao").update("UIH050030_FROM.update", param1);
  39. //更新命令制订表中的信息
  40. PosParameter param3 = new PosParameter();
  41. param3.setWhereClauseParameter(0, REG_ID[0]);
  42. param3.setWhereClauseParameter(1, ORD_SEQ[0]);
  43. getDao("mesdao").update("UIH050030_cr_cmd.update", param3);
  44. //需要改变钢卷库内位置状态,把锁定的来源位置释放出来
  45. PosParameter param4 = new PosParameter();
  46. param4.setWhereClauseParameter(0, FROM_ADDR[0]);
  47. getDao("mesdao").update("UIH050030_RESERV_FL.update", param4);
  48. //更新钢卷公共表的SHIP_PROG_CD状态,从05-06
  49. PosParameter param8 = new PosParameter();
  50. param8.setWhereClauseParameter(0, TO_ADDR[0]);
  51. param8.setWhereClauseParameter(1, COIL_NO[0]);
  52. getDao("mesdao").update("UIH050030_CUR_PROG_CD", param8);
  53. }else{
  54. //在这里如果存在有锁定步进梁的情况,还需要进行相应的接锁操作
  55. //首先判断是从步进梁拿下来,还是放上步进梁
  56. String FromPos = FROM_ADDR[0].substring(0,2);
  57. String ToPos = TO_ADDR[0].substring(0,2);
  58. String TC_ID = null;
  59. if (FromPos != null && (FromPos.substring(0,1).equals("B") || FromPos.equals("C0")) ) {
  60. //更新原放置位置表
  61. PosParameter param1 = new PosParameter();
  62. //为来源位置补00
  63. param1.setWhereClauseParameter(0, FROM_ADDR[0]+"00");
  64. getDao("mesdao").update("UIH050030_FROM.update", param1);
  65. //更新到放置位置表
  66. PosParameter param2 = new PosParameter();
  67. param2.setWhereClauseParameter(0, COIL_NO[0]);
  68. param2.setWhereClauseParameter(1, CR_NO[0]);
  69. param2.setWhereClauseParameter(2, TO_ADDR[0]);
  70. getDao("mesdao").update("UIH050030_TO.update", param2);
  71. //更新命令制订表中的信息
  72. PosParameter param3 = new PosParameter();
  73. param3.setWhereClauseParameter(0, REG_ID[0]);
  74. param3.setWhereClauseParameter(1, ORD_SEQ[0]);
  75. getDao("mesdao").update("UIH050030_cr_cmd.update", param3);
  76. //需要改变钢卷库内位置状态,把锁定的来源位置释放出来
  77. PosParameter param4 = new PosParameter();
  78. param4.setWhereClauseParameter(0, FROM_ADDR[0]+"00");
  79. getDao("mesdao").update("UIH050030_RESERV_FL.update", param4);
  80. //需要改变钢卷库内位置状态,把锁定的去向位置释放出来
  81. PosParameter param5 = new PosParameter();
  82. param5.setWhereClauseParameter(0, TO_ADDR[0]);
  83. getDao("mesdao").update("UIH050030_RESERV_FL.update", param5);
  84. //从步进梁上拿下来入库
  85. TC_ID = "HML010";
  86. PosParameter param6 = new PosParameter();
  87. param6.setValueParamter(0,TC_ID);
  88. param6.setValueParamter(1,COIL_NO[0]);
  89. param6.setValueParamter(2,FROM_ADDR[0].substring(0,3));
  90. param6.setValueParamter(3,TO_ADDR[0]);
  91. getDao("mesdao").insert("UIH050030_TAKEOUT_SEND.insert", param6);
  92. //更新钢卷公共表中的现在存放位置
  93. PosParameter param7 = new PosParameter();
  94. param7.setWhereClauseParameter(0,TO_ADDR[0]);
  95. param7.setWhereClauseParameter(1,COIL_NO[0]);
  96. //这里使用UIH050050的,为的是加入入库时间
  97. getDao("mesdao").update("UIH050050_COIL_COMM", param7);
  98. } else if (ToPos != null && (ToPos.substring(0,1).equals("B") || ToPos.equals("C0")) ){
  99. //更新原放置位置表
  100. PosParameter param1 = new PosParameter();
  101. param1.setWhereClauseParameter(0, FROM_ADDR[0]);
  102. getDao("mesdao").update("UIH050030_FROM.update", param1);
  103. //更新到放置位置表
  104. PosParameter param2 = new PosParameter();
  105. param2.setWhereClauseParameter(0, COIL_NO[0]);
  106. param2.setWhereClauseParameter(1, CR_NO[0]);
  107. param2.setWhereClauseParameter(2, TO_ADDR[0]+"00");
  108. getDao("mesdao").update("UIH050030_TO.update", param2);
  109. //更新命令制订表中的信息
  110. PosParameter param3 = new PosParameter();
  111. param3.setWhereClauseParameter(0, REG_ID[0]);
  112. param3.setWhereClauseParameter(1, ORD_SEQ[0]);
  113. getDao("mesdao").update("UIH050030_cr_cmd.update", param3);
  114. //需要改变钢卷库内位置状态,把锁定的来源位置释放出来
  115. PosParameter param4 = new PosParameter();
  116. param4.setWhereClauseParameter(0, FROM_ADDR[0]);
  117. getDao("mesdao").update("UIH050030_RESERV_FL.update", param4);
  118. //需要改变钢卷库内位置状态,把锁定的去向位置释放出来
  119. PosParameter param5 = new PosParameter();
  120. param5.setWhereClauseParameter(0, TO_ADDR[0]+"00");
  121. getDao("mesdao").update("UIH050030_RESERV_FL.update", param5);
  122. //从库内放上步进梁
  123. TC_ID = "HML020";
  124. PosParameter param6 = new PosParameter();
  125. param6.setValueParamter(0,TC_ID);
  126. //这里发送解锁用的是批次号,需要与L2协商到底是使用哪个 TL
  127. param6.setValueParamter(1,COIL_NO[0]);
  128. param6.setValueParamter(2,TO_ADDR[0].substring(0,3));
  129. param6.setValueParamter(3,FROM_ADDR[0]);
  130. getDao("mesdao").insert("UIH050030_TAKEIN_SEND.insert", param6);
  131. //更新钢卷公共表中的现在存放位置
  132. PosParameter param7 = new PosParameter();
  133. param7.setWhereClauseParameter(0,TO_ADDR[0]);
  134. param7.setWhereClauseParameter(1,COIL_NO[0]);
  135. getDao("mesdao").update("UIH050030_COIL_COMM", param7);
  136. }else{
  137. //这里就是库内移动的
  138. //更新原放置位置表
  139. PosParameter param1 = new PosParameter();
  140. param1.setWhereClauseParameter(0, FROM_ADDR[0]);
  141. getDao("mesdao").update("UIH050030_FROM.update", param1);
  142. //更新到放置位置表
  143. PosParameter param2 = new PosParameter();
  144. param2.setWhereClauseParameter(0, COIL_NO[0]);
  145. param2.setWhereClauseParameter(1, CR_NO[0]);
  146. param2.setWhereClauseParameter(2, TO_ADDR[0]);
  147. getDao("mesdao").update("UIH050030_TO.update", param2);
  148. //更新命令制订表中的信息
  149. PosParameter param3 = new PosParameter();
  150. param3.setWhereClauseParameter(0, REG_ID[0]);
  151. param3.setWhereClauseParameter(1, ORD_SEQ[0]);
  152. getDao("mesdao").update("UIH050030_cr_cmd.update", param3);
  153. //需要改变钢卷库内位置状态,把锁定的来源位置释放出来
  154. PosParameter param4 = new PosParameter();
  155. param4.setWhereClauseParameter(0, FROM_ADDR[0]);
  156. getDao("mesdao").update("UIH050030_RESERV_FL.update", param4);
  157. //需要改变钢卷库内位置状态,把锁定的去向位置释放出来
  158. PosParameter param5 = new PosParameter();
  159. param5.setWhereClauseParameter(0, TO_ADDR[0]);
  160. getDao("mesdao").update("UIH050030_RESERV_FL.update", param5);
  161. //更新钢卷公共表中的现在存放位置
  162. PosParameter param7 = new PosParameter();
  163. param7.setWhereClauseParameter(0,TO_ADDR[0]);
  164. param7.setWhereClauseParameter(1,COIL_NO[0]);
  165. getDao("mesdao").update("UIH050030_COIL_COMM", param7);
  166. }
  167. }
  168. return PosBizControlConstants.SUCCESS;
  169. }
  170. }