144e05f84129dc74736c420a833e2aa61973b577.svn-base 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package xin.glue.ui.B.B02;
  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.PosGenericDao;
  6. import com.posdata.glue.dao.vo.PosParameter;
  7. /**
  8. *
  9. * @Description 保存板坯成分复样信息{界面ID:UIB020035}
  10. * @author 梅贵平{meiguiping}
  11. * @date 2009-3-30 上午11:24:00
  12. * @JDK Version jdk1.4.2
  13. */
  14. public class SaveSlabAchievement extends PosActivity
  15. {
  16. public String runActivity(PosContext context)
  17. {
  18. ///ready
  19. PosGenericDao dao = this.getDao("mesdao");
  20. PosParameter param = null;
  21. ///获取请求参数
  22. String[]REG_ID = (String[])context.get("REG_ID");
  23. //表格1
  24. String[]rowStuts1 = (String[])context.get("rowStuts1");//值为i时,一次只允许插入一列,插入时其作用
  25. String[]SLAB_NO = (String[])context.get("SLAB_NO");//板坯号,插入时其作用
  26. // String[]PROC_CD = (String[])context.get("PROC_CD");//成分,插入时其作用
  27. String[]CHEM_SEQ = (String[])context.get("CHEM_SEQ");//工序,插入时其作用
  28. String[]SLABNO = (String[])context.get("SLABNO");//板坯号,表2、3、4、5更新时其作用
  29. // String[]PROCCD = (String[])context.get("PROCCD");//工序,表2、3、4、5更新时其作用
  30. String[]SEQ = (String[])context.get("SEQ");//次数,表2、3、4、5更新时其作用
  31. //表格2、3、4、5
  32. String[]rowStuts2 = (String[])context.get("rowStuts2");//对应表格2、3、4、5修改的信息
  33. String[]CHEM_CD = (String[])context.get("CHEM_CD");//成分代码
  34. String[]CHEM_VAL = (String[])context.get("CHEM_VAL");//实绩值
  35. String[]EX = (String[])context.get("EX");//标记是否存在于WORK_INGR表格中
  36. // SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
  37. ///界面上更新或插入操作一次只允许有一种
  38. //界面上为UPDATE,rowStuts2只有更新("u")状态
  39. if(rowStuts2 != null && rowStuts1 == null)
  40. {
  41. int len2 = rowStuts2.length;
  42. for(int i = 0; i < len2; i++)
  43. {
  44. param = new PosParameter();
  45. // System.out.println("################# CHEM_VAL ###################"+CHEM_VAL[i]);
  46. //若EX值为Y,INSERT
  47. if("Y".equals(EX[i]))
  48. {
  49. param.setValueParamter(0, SLAB_NO[0]);
  50. param.setValueParamter(1, SEQ[0]);
  51. param.setValueParamter(2, CHEM_CD[i]);
  52. param.setValueParamter(3, CHEM_VAL[i]);
  53. param.setValueParamter(4, REG_ID[0]);
  54. dao.insert("UIB020035_01.INSERT", param);
  55. }
  56. //若EX值非Y,则UPDATE
  57. else
  58. {
  59. param.setWhereClauseParameter(0, CHEM_VAL[i]);
  60. param.setWhereClauseParameter(1, REG_ID[0]);
  61. param.setWhereClauseParameter(2, SLABNO[0]);
  62. param.setWhereClauseParameter(3, SEQ[0]);
  63. param.setWhereClauseParameter(4, CHEM_CD[i]);
  64. dao.update("UIB020035_01.UPDATE", param);
  65. }
  66. }
  67. }
  68. //界面上为INSERT操作
  69. if(rowStuts2 != null && rowStuts1 != null)
  70. {
  71. int len2 = rowStuts2.length;
  72. for(int i = 0; i < len2; i++)
  73. {
  74. param = new PosParameter();
  75. param.setValueParamter(0, SLAB_NO[0]);
  76. param.setValueParamter(1, SEQ[0]);
  77. param.setValueParamter(2, CHEM_CD[i]);
  78. param.setValueParamter(3, CHEM_VAL[i]);
  79. param.setValueParamter(4, REG_ID[0]);
  80. dao.insert("UIB020035_01.INSERT", param);
  81. }
  82. }
  83. String[] rowStuts3 = (String[])context.get("rowStuts3");
  84. // System.out.println("#########################################################"+rowStuts3);
  85. String[] X_SLABNO = (String[])context.get("X_SLABNO");
  86. String[] CHECKED = (String[])context.get("CHECKED");
  87. if(rowStuts3 != null)
  88. {
  89. int len3 = rowStuts3.length;
  90. for(int i = 0; i < len3; i++)
  91. {
  92. if("Y".equals(CHECKED[i]))
  93. {
  94. param = new PosParameter();
  95. param.setWhereClauseParameter(0, X_SLABNO[i]);
  96. dao.delete("UIB020035_02.DELETE", param);
  97. param = new PosParameter();
  98. param.setValueParamter(0, X_SLABNO[i]);
  99. param.setValueParamter(1, SLABNO[0]);
  100. param.setValueParamter(2, SEQ[0]);
  101. dao.insert("UIB020035_02.INSERT", param);
  102. }
  103. }
  104. }
  105. return PosBizControlConstants.SUCCESS;
  106. }
  107. }