028d72e80995e31f308a12766ddecacb806fce87.svn-base 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package xin.glue.ui.J.J01;
  2. import xin.glue.ui.common.component.PosSiteLog;
  3. import com.posdata.glue.biz.activity.PosActivity;
  4. import com.posdata.glue.biz.constants.PosBizControlConstants;
  5. import com.posdata.glue.biz.control.PosBizControlIF;
  6. import com.posdata.glue.biz.control.PosBizProvider;
  7. import com.posdata.glue.component.PosConstants;
  8. import com.posdata.glue.context.PosContext;
  9. import com.posdata.glue.dao.vo.PosParameter;
  10. import com.posdata.glue.dao.vo.PosRow;
  11. import com.posdata.glue.dao.vo.PosRowSet;
  12. import com.posdata.glue.msg.PosMESMessageImpl;
  13. import com.posdata.glue.msg.PosMessage;
  14. /*
  15. * desc:这里为保存完的发货指示号提供回退功能,便于成品在下车的时候出现有问题的卷或者车可以回退到保存以前。
  16. * 让其它没有问题的车成功的发出去
  17. * author:唐亮 tangliang
  18. * date:2009-7-21
  19. */
  20. public class returnSHIPDIRCAR extends PosActivity{
  21. public String runActivity(PosContext context)
  22. {
  23. // 行状态
  24. String[] rowStuts1 = (String[])context.get("rowStuts1");
  25. //选择标志
  26. String[] CHK = (String[])context.get("CHK");
  27. //发货指示
  28. String[] SHIP_DIRNO = (String[])context.get("SHIP_DIRNO");
  29. //运送指示
  30. String[] DLIV_DIRNO = (String[])context.get("DLIV_DIRNO");
  31. // 排车顺序
  32. String[] ALLOC_SEQ = (String[])context.get("ALLOC_SEQ");
  33. //车辆号
  34. String[] TRANS_CAR_NO = (String[])context.get("TRANS_CAR_NO");
  35. //火车入库道次
  36. String[] LANE_TP = (String[])context.get("LANE_TP");
  37. //装车次数
  38. String[] ENTERANCE_SEQ = (String[])context.get("ENTERANCE_SEQ");
  39. //钢卷公共表中的ship_prog_cd
  40. String ship_prog_cd = null;
  41. if(rowStuts1 != null){
  42. // 这里循环行数,取出数据一行一行的更新
  43. for(int i=0;i<rowStuts1.length;i++){
  44. if(CHK[i].equals("Y")){
  45. PosParameter paramA = new PosParameter();
  46. paramA.setWhereClauseParameter(0,DLIV_DIRNO[i]);
  47. PosRowSet rowsA = getDao("mesdao").find("UIJ010040_17.select", paramA);
  48. if(rowsA.hasNext()){
  49. continue;
  50. }
  51. // 判断是否全部选择的标志位
  52. boolean note = true;
  53. //如果是选中的项才可以执行更新操作,这里需要取消放入运输表的车厢号和排车顺序号,不能改变运输表的状态
  54. PosParameter param0 = new PosParameter();
  55. param0.setWhereClauseParameter(0, DLIV_DIRNO[i]);
  56. getDao("mesdao").update("UIJ010040_01.return", param0);
  57. //取消钢卷公共表中的车辆号,排车顺序号
  58. PosParameter param1 = new PosParameter();
  59. param1.setWhereClauseParameter(0, DLIV_DIRNO[i]);
  60. getDao("mesdao").update("UIJ010040_04.return", param1);
  61. //不需要进行判断,一个发货指示对应一个运输指示
  62. PosParameter param2 = new PosParameter();
  63. param2.setWhereClauseParameter(0, SHIP_DIRNO[i]);
  64. //可能还需要更新相应的时间信息,具体的等待确认
  65. getDao("mesdao").update("UIJ010040_03.return", param2);
  66. }
  67. }
  68. }
  69. return PosBizControlConstants.SUCCESS;
  70. }
  71. }