d7a0c6cdf4fb3eb32afe198c05e9309f02027f77.svn-base 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. package xin.glue.ui.B.common;
  2. import java.sql.CallableStatement;
  3. import com.posdata.glue.biz.activity.PosActivity;
  4. import com.posdata.glue.biz.constants.PosBizControlConstants;
  5. import com.posdata.glue.context.PosContext;
  6. import com.posdata.glue.dao.PosGenericDao;
  7. import com.posdata.glue.dao.vo.PosParameter;
  8. import com.posdata.glue.dao.vo.PosRow;
  9. import com.posdata.glue.dao.vo.PosRowSet;
  10. /**
  11. *
  12. * @Description 板坯改判{界面ID:UIB030202}
  13. * @author 梅贵平{meiguiping}
  14. * @date 2009-8-19 上午09:25:32
  15. * @JDK Version jdk1.4.2
  16. */
  17. public class SaveDcsSlabInfo extends PosActivity {
  18. public String runActivity(PosContext context) {
  19. // /ready
  20. PosGenericDao dao = this.getDao("mesdao");
  21. // /param
  22. String[] SLAB_NO = (String[]) context.get("SLAB_NO");// 板坯号
  23. String[] rowStatus = (String[]) context.get("rowStatus");// grid状态
  24. String[] DCS_DETAIL = (String[]) context.get("DCS_DETAIL");// 改判说明
  25. String[] STL_GRD = (String[]) context.get("STL_GRD");// 改判后的牌号
  26. String[] REG_NM = (String[]) context.get("REG_NM");// 改判人
  27. String[] CHK = (String[]) context.get("CHK");// 选择
  28. String[] SLAB_RT = (String[]) context.get("SLAB_RT");// 板坯去向
  29. if (rowStatus == null)
  30. return PosBizControlConstants.SUCCESS;
  31. int len = rowStatus.length;
  32. //进行板坯是否做过申报的判断
  33. for (int i = 0; i < len; i++) {
  34. if ("Y".equals(CHK[i])) {
  35. String sqlc = "SELECT nvl(REPORT_TIME, 'NULL') REPORT_TIME FROM TBG02_SLAB_COMM T WHERE T.SLAB_NO = ?";
  36. PosParameter paramc = new PosParameter();
  37. paramc.setWhereClauseParameter(0,SLAB_NO[i] );
  38. PosRowSet CoilVo1 = getDao("mesdao").findByQueryStatement(sqlc, paramc);
  39. if (CoilVo1.hasNext()) {
  40. PosRow CoilROW = CoilVo1.next();
  41. String iflag = (String)CoilROW.getAttribute("REPORT_TIME");
  42. if(!iflag.equals("NULL"))
  43. {
  44. String vtemp="REPORTFLAG";
  45. context.put("AYY", vtemp);
  46. return PosBizControlConstants.SUCCESS;
  47. }
  48. }
  49. }
  50. }
  51. CallableStatement cstm = dao
  52. .getCallableStatement("UIB030202_03.CALLSTATEMENT");
  53. try {
  54. for (int i = 0; i < len; i++) {
  55. if ("Y".equals(CHK[i])) {
  56. cstm.setString(1, SLAB_NO[i]);// 需要改判的板坯号
  57. cstm.setString(2, STL_GRD[i]);// 牌号
  58. cstm.setString(3, SLAB_RT[i]);// 板坯去向
  59. cstm.setString(4, DCS_DETAIL[0]);
  60. cstm.setString(5, REG_NM[0]);
  61. cstm.registerOutParameter(6, java.sql.Types.VARCHAR);
  62. cstm.registerOutParameter(7, java.sql.Types.VARCHAR);
  63. cstm.execute();
  64. //add by pbs 增加错误提示
  65. String errorCd = cstm.getString(6);
  66. String errorMsg = cstm.getString(7);
  67. if ("XX".equals(errorCd)) {
  68. context.put("errorMsg", errorMsg);
  69. return PosBizControlConstants.FAILURE;
  70. }
  71. }
  72. }
  73. cstm.close();
  74. } catch (Exception ex) {
  75. ex.printStackTrace();
  76. return PosBizControlConstants.FAILURE;
  77. }
  78. return PosBizControlConstants.SUCCESS;
  79. }
  80. }