21d2f2f64ec25fcce239234aa7edcd77708d7db8.svn-base 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. package xin.glue.ui.B.B01;
  2. import java.sql.CallableStatement;
  3. import xin.glue.ui.B.common.SaveModifyHistory;
  4. import com.posdata.glue.biz.activity.PosActivity;
  5. import com.posdata.glue.biz.constants.PosBizControlConstants;
  6. import com.posdata.glue.context.PosContext;
  7. import com.posdata.glue.dao.PosGenericDao;
  8. import com.posdata.glue.dao.vo.PosParameter;
  9. import com.posdata.glue.dao.vo.PosRowSet;
  10. /**
  11. *
  12. * @Description 炼钢放行成分操作{界面ID:UIB010051}
  13. * @author 梅贵平{meiguiping}
  14. * @date 2009-12-9 下午04:06:07
  15. * @JDK Version jdk1.4.2
  16. */
  17. public class SaveTAFacChemParameter extends PosActivity
  18. {
  19. public String runActivity(PosContext context)
  20. {
  21. PosGenericDao dao = this.getDao("mesdao");
  22. PosParameter param = null;
  23. PosRowSet rowset = null;
  24. String INFID = "UIB010051";
  25. String[] REG_NM = (String[])context.get("REG_NM");
  26. String[]rowStuts = (String[])context.get("rowStuts");
  27. String[]TAFAC_STL_GRD = (String[])context.get("TAFAC_STL_GRD");//牌号
  28. String[] CHEM_MIN = (String[])context.get("CHEM_MIN");
  29. String[] CHEM_MAX = (String[])context.get("CHEM_MAX");
  30. String[] CHEM_CD = (String[])context.get("CHEM_CD");
  31. String[] COMP_YN = (String[])context.get("COMP_YN");//是否为复合元素
  32. if(rowStuts != null)
  33. {
  34. int len = rowStuts.length;
  35. for(int i = 0 ; i < len; i++)
  36. {
  37. if("".equals(CHEM_MIN[i]) && "".equals(CHEM_MAX[i]))//若最大值和最小值都为空
  38. {
  39. param = new PosParameter();
  40. param.setWhereClauseParameter(0, TAFAC_STL_GRD[0]);
  41. param.setWhereClauseParameter(1, CHEM_CD[i]);
  42. dao.delete("UIB010051_02.DELETE", param);
  43. SaveModifyHistory.writeLog(dao, INFID, "D", "UIB010051_02.DELETE", param.getWhereClauseParamters(), "", REG_NM[0]);
  44. continue;//进入下一次循环
  45. }
  46. param = new PosParameter();
  47. param.setWhereClauseParameter(0, TAFAC_STL_GRD[0]);
  48. param.setWhereClauseParameter(1, CHEM_CD[i]);
  49. rowset = dao.find("UIB010051_01.SELECT", param);
  50. if(rowset.count() > 0)//若有该元素
  51. {
  52. param = new PosParameter();
  53. param.setWhereClauseParameter(0, CHEM_MIN[i]);
  54. param.setWhereClauseParameter(1, CHEM_MAX[i]);
  55. param.setWhereClauseParameter(2, COMP_YN[i]);
  56. param.setWhereClauseParameter(3, REG_NM[0]);
  57. param.setWhereClauseParameter(4, TAFAC_STL_GRD[0]);
  58. param.setWhereClauseParameter(5, CHEM_CD[i]);
  59. dao.update("UIB010051_01.UPDATE" , param);
  60. SaveModifyHistory.writeLog(dao, INFID, "U", "UIB010051_01.UPDATE", param.getWhereClauseParamters(), "", REG_NM[0]);
  61. }
  62. else
  63. {
  64. param = new PosParameter();
  65. param.setValueParamter(0, TAFAC_STL_GRD[0]);
  66. param.setValueParamter(1, CHEM_CD[i]);
  67. param.setValueParamter(2, COMP_YN[i]);
  68. param.setValueParamter(3, CHEM_MIN[i]);
  69. param.setValueParamter(4, CHEM_MAX[i]);
  70. param.setValueParamter(5, REG_NM[0]);
  71. dao.insert("UIB010051_01.INSERT", param);
  72. }
  73. }
  74. }
  75. //delete from
  76. String[]rowStatusD = (String[])context.get("rowStatusD");//删除标记
  77. if(rowStatusD != null)
  78. {
  79. if("d".equals(rowStatusD[0]))
  80. {
  81. param = new PosParameter();
  82. param.setWhereClauseParameter(0, TAFAC_STL_GRD[0]);
  83. dao.delete("UIB010051_01.DELETE", param);
  84. SaveModifyHistory.writeLog(dao, INFID, "D", "UIB010051_01.DELETE", param.getWhereClauseParamters(), "", REG_NM[0]);
  85. }
  86. }
  87. String[] CALL = (String[])context.get("CALL");
  88. String[]TARGET_TAFAC_STL_GRD = (String[])context.get("TARGET_TAFAC_STL_GRD");//目标牌号
  89. if(CALL != null)//牌号复制
  90. {
  91. CallableStatement cstm = null;
  92. cstm = dao.getCallableStatement("UIB010051_01.CALL");
  93. try
  94. {
  95. cstm.setString(1, TAFAC_STL_GRD[0]);
  96. cstm.setString(2, TARGET_TAFAC_STL_GRD[0]);
  97. cstm.setString(3, REG_NM[0]);
  98. cstm.registerOutParameter(4, java.sql.Types.VARCHAR);
  99. cstm.execute();
  100. }catch(Exception ex)
  101. {
  102. ex.printStackTrace();
  103. }
  104. finally
  105. {
  106. if(cstm != null)
  107. {
  108. try
  109. {
  110. cstm.close();
  111. }catch(Exception e)
  112. {
  113. e.printStackTrace();
  114. }
  115. }
  116. }
  117. }
  118. return PosBizControlConstants.SUCCESS;
  119. }
  120. }