dc9c968eeb045a2d915de4cca2febff5e2408857.svn-base 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package xin.glue.ui.H.H05;
  2. import com.posdata.glue.biz.activity.PosActivity;
  3. import com.posdata.glue.biz.constants.PosBizControlConstants;
  4. import com.posdata.glue.context.PosContext;
  5. import com.posdata.glue.dao.vo.PosParameter;
  6. import com.posdata.glue.dao.vo.PosRow;
  7. import com.posdata.glue.dao.vo.PosRowSet;
  8. public class EstYardMove extends PosActivity{
  9. public String runActivity(PosContext context){
  10. // 从页面获取数据供插入和更新使用
  11. String[] rowStatus = (String[]) context.get("rowStatus");
  12. //步进梁
  13. String[] WK_BEAM = (String[]) context.get("WK_BEAM");
  14. //钢卷号
  15. String[] OLD_SAMPL_NO = (String[]) context.get("OLD_SAMPL_NO");
  16. //生产钢卷号
  17. String[] COIL_NO = (String[]) context.get("COIL_NO");
  18. //钢卷外径
  19. String[] COIL_OUTDIA = (String[]) context.get("COIL_OUTDIA");
  20. //钢卷重量
  21. String[] COIL_WGT = (String[]) context.get("COIL_WGT");
  22. //钢号
  23. String[] STL_GRD = (String[]) context.get("STL_GRD");
  24. //来源位置
  25. String[] FROM_ADDR = (String[]) context.get("FROM_ADDR");
  26. //到放置位置
  27. String[] TO_ADDR = (String[]) context.get("TO_ADDR");
  28. //行车编号
  29. String[] CR_NO = (String[]) context.get("CR_NO");
  30. //钢卷外径
  31. String[] CHK = (String[]) context.get("CHK");
  32. //序号
  33. String[] ORD_SEQ = (String[]) context.get("ORD_SEQ");
  34. //登录用户名
  35. String[] REG_ID = (String[]) context.get("REG_ID");
  36. //行车命令制定序号
  37. Number SEQ = null;
  38. if(rowStatus != null){
  39. for(int i=0;i<rowStatus.length;i++){
  40. if(CHK[i].equals("Y")){
  41. //这里因为行车系统没有上的原因,手动将数据进入数据库
  42. PosParameter param0 = new PosParameter();
  43. //通过来源位置和去向位置找到相对应的行车命令是哪一条
  44. param0.setWhereClauseParameter(0, FROM_ADDR[i]);
  45. param0.setWhereClauseParameter(1, TO_ADDR[i]);
  46. PosRowSet rows = getDao("mesdao").find("UIH050050_CRANE_ORDER.select", param0);
  47. if(rows.hasNext()){
  48. PosRow row = rows.next();
  49. SEQ = (Number) row.getAttribute("ORD_SEQ");
  50. }
  51. //是否需要发送解锁命令
  52. if(SEQ != null){
  53. //得到相应的命令序号后,更新命令,并且把来源位置的钢卷放入去向位置
  54. PosParameter param1 = new PosParameter();
  55. param1.setWhereClauseParameter(0, SEQ);
  56. getDao("mesdao").update("UIH050050_CRANE_ORDER.update", param1);
  57. PosParameter param2 = new PosParameter();
  58. param2.setWhereClauseParameter(0, REG_ID[0]);
  59. param2.setWhereClauseParameter(1, FROM_ADDR[i]);
  60. getDao("mesdao").update("UIH050050_CRANE_ORDER.update_F", param2);
  61. PosParameter param3 = new PosParameter();
  62. //真实钢卷号
  63. param3.setWhereClauseParameter(0, REG_ID[0]);
  64. param3.setWhereClauseParameter(1, OLD_SAMPL_NO[i]);
  65. param3.setWhereClauseParameter(2, TO_ADDR[i]);
  66. getDao("mesdao").update("UIH050050_CRANE_ORDER.update_T", param3);
  67. //这里还需要把去向位置的数据放入到钢卷公共表的位置字段
  68. PosParameter param4 = new PosParameter();
  69. param4.setWhereClauseParameter(0,TO_ADDR[i]);
  70. param4.setWhereClauseParameter(1,OLD_SAMPL_NO[i]);
  71. //这里使用行车命令执行的SQL
  72. getDao("mesdao").update("UIH050050_COIL_COMM", param4);
  73. }
  74. }
  75. }
  76. }
  77. return PosBizControlConstants.SUCCESS;
  78. }
  79. }