9fe254a30dd4700727e41e4c64cf42e3a67a7d33.svn-base 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. package UIM;
  2. import java.sql.PreparedStatement;
  3. import java.sql.ResultSet;
  4. import java.sql.SQLException;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7. import CoreFS.SA01.CoreIComponent;
  8. import CoreFS.SA06.CoreReturnObject;
  9. /**
  10. * 冷轧成品库库存数据查询
  11. *
  12. * @author siy
  13. * @date 2010-08-19
  14. */
  15. public class UIM010240 extends CoreIComponent {
  16. /**
  17. * 查询退废出库卷信息
  18. *
  19. * @param coilNo
  20. * 冷轧卷号
  21. * @return CoreReturnObject
  22. */
  23. public CoreReturnObject queryOutCoil(String coilNo) throws SQLException {
  24. CoreReturnObject cro = new CoreReturnObject();
  25. StringBuffer sqlBuffer = new StringBuffer();
  26. sqlBuffer.append("select COIL_NO,SPEC_STL_GRD STL_GRD,COIL_THK,\n");
  27. sqlBuffer
  28. .append("COIL_WTH,ACT_WGT COIL_WGT,CUR_LOAD_LOC,ORD_NO,ORD_SEQ \n");
  29. sqlBuffer.append("from c_tbl02_coil_comm where COIL_NO like ?||'%'\n");
  30. cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
  31. new Object[] { coilNo });
  32. return cro;
  33. }
  34. /**
  35. * 成品库退废出库
  36. *
  37. * @param outType
  38. * 出库类型
  39. * @param coilNo
  40. * 钢卷号
  41. * @param regId
  42. * 操作人
  43. * @param trnfShift
  44. * 出库班次
  45. * @param trnfGroup
  46. * 出库班组
  47. * @param trnfTime
  48. * 出库时间
  49. * @return CoreReturnObject
  50. */
  51. public CoreReturnObject saveCoilOut(Integer outType, String coilNo,
  52. String regId, String trnfShift, String trnfGroup, String trnfTime,
  53. String trnfRemark) throws SQLException {
  54. CoreReturnObject cro = new CoreReturnObject();
  55. // 清除原料库垛位表钢卷信息并将原料公共表钢卷垛位信息置为出库
  56. boolean crs = cleanCoil(outType.intValue(), coilNo, regId, trnfShift,
  57. trnfGroup, trnfTime, trnfRemark);
  58. if (crs) {
  59. // 如果是退回出库,将热轧公共表钢卷数据改为可入库
  60. if (3 == outType.intValue()) {
  61. }
  62. // 修改进程、计划
  63. }
  64. return cro;
  65. }
  66. /**
  67. * 清空钢卷库存信息
  68. *
  69. * @param outType
  70. * 出库类型
  71. * @param coilNo
  72. * 钢卷号
  73. * @param regId
  74. * 出库人
  75. * @param trnfShift
  76. * 出库班次
  77. * @param trnfGroup
  78. * 出库班组
  79. * @param tranTime
  80. * 出库时间
  81. * @return boolean
  82. */
  83. private boolean cleanCoil(int outType, String coilNo, String regId,
  84. String trnfShift, String trnfGroup, String trnfTime,
  85. String trnfRemark) throws SQLException {
  86. // 根据钢卷号查询垛位编号
  87. String sql1 = "select clf_no from c_tbk08_coil_yard where coil_no = '"
  88. + coilNo + "'";
  89. ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(sql1);
  90. long yardNo = 0;
  91. // 如果钢卷在原料库中,查询出相应的垛位编号
  92. if (rs.next()) {
  93. yardNo = Long.parseLong(rs.getObject("clf_no").toString());
  94. } else {
  95. return false;
  96. }
  97. //20131014系统连接异常优化
  98. this.getDao("KgDao").closeRs(rs);
  99. // 根据垛位编号清除钢卷信息
  100. String sql2 = "update c_tbk08_coil_yard set coil_no = '' where clf_no = ?";
  101. this.getDao("KgDao").ExcuteNonQuery(sql2, new Object[] { yardNo });
  102. // 修改原料公共表钢卷操作信息
  103. StringBuffer sql3 = new StringBuffer();
  104. sql3.append("update c_tbk02_coil_comm set \n");
  105. sql3.append("coil_stat = '3', --进程状态\n");
  106. // 如果是上料出库,更新物料进程代码为酸轧卷取待机,如果是退废或退回出库,不处理
  107. switch (outType) {
  108. case 1:
  109. sql3.append("cur_prog_cd = 'PCC', --物料进程代码\n");
  110. break;
  111. case 2:
  112. trnfRemark = "退废";
  113. break;
  114. case 3:
  115. trnfRemark = "退回";
  116. break;
  117. }
  118. sql3.append("trnf_reg = :1, --出库人\n");
  119. sql3.append("trnf_shift=:2, --出库班次\n");
  120. sql3.append("trnf_group=:3, --出库班组\n");
  121. sql3
  122. .append("trnf_use_time=TO_CHAR(SYSDATE,'YYYYMMDDHH24MIDD'), --出库操作时间\n");
  123. sql3.append("trnf_dtime=:4, --出库时间\n");
  124. sql3.append("trnf_remark=:5 --出库备注\n");
  125. sql3.append("where coil_no = :6 --钢卷号\n");
  126. this.getDao("KgDao").ExcuteNonQuery(
  127. sql3.toString(),
  128. new Object[] { regId, trnfShift, trnfGroup, trnfTime, coilNo,
  129. trnfRemark });
  130. return true;
  131. }
  132. }