| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918 |
- package UIK.UIK02;
- import java.sql.CallableStatement;
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.sql.Types;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Hashtable;
- import java.util.Iterator;
- import java.util.List;
- import java.util.Map;
- import UIB.COM.ProduceFactory;
- import UIB.COM.XmlSqlParsersFactory;
- import CoreFS.SA01.CoreIComponent;
- import CoreFS.SA06.CoreReturnObject;
- /**
- * 酸轧作业管理
- *
- * @author siy
- * @date 2010-9-17
- */
- public class UIK020020 extends CoreIComponent {
- /**
- * 查询酸轧作业实绩
- *
- * @return
- * @throws SQLException
- */
- public CoreReturnObject queryAcidRollingResult(String cCoilNo,String hCoilNo)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append(XmlSqlParsersFactory.getSql("UIK020020_01.SELECT"));
- // if(null == cCoilNo || "".equals(cCoilNo)){
- // sqlBuffer.append(" and r.mill_dtime = (select max(mill_dtime) from
- // c_tbl02_pltcm_result)");
- // }
- // else{
- // sqlBuffer.append(" and r.l_coil_no = '" + cCoilNo + "'");
- // }
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { cCoilNo,hCoilNo });
- return cro;
- }
-
-
- public CoreReturnObject queryOriCoil(String cCoilNo )
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append(XmlSqlParsersFactory.getSql("UIK020020_11.SELECT"));
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { cCoilNo });
- return cro;
- }
- /**
- * 查询冷轧卷是否存在
- *
- * @param coilNo
- * @return
- * @throws SQLException
- */
- public CoreReturnObject queryCoilExist(String coilNo) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- // 查询钢卷是否存在于实绩表
- String sql = XmlSqlParsersFactory.getSql("UIK020020_03.SELECT");
- List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { coilNo });
- Iterator it = list.iterator();
- int count = 0;
- try {
- while (it.hasNext()) {
- Map map = (Map) it.next();
- count = Integer.parseInt(map.get("COUNT").toString());
- }
- } catch (Exception ex) {
- }
- if (count == 0 && !coilNo.endsWith("0")) {
- String pCoilNo = coilNo.substring(0, coilNo.length() - 2) + "0";
- CoreReturnObject cro1 = this.queryCoilExist(pCoilNo);
- count = Integer.parseInt(cro1.getResult().toString());
- }
- cro.setResult(count);
- return cro;
- }
- /**
- * 新增酸轧实绩
- *
- * @param listParam
- * @param regID
- * @return
- * @throws SQLException
- */
- public CoreReturnObject addAcidRollingResult(ArrayList listParam,String regID)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- String[] lCoilInfo = (String[]) listParam.get(0);
- ArrayList hCoilInfo = (ArrayList) listParam.get(1);
- ArrayList defectInfo = (ArrayList) listParam.get(2);
- String sqlEntry = "select t.OLD_SAMPL_NO from c_tbl02_coil_comm t where (t.DLIV_DIRNO is not null or t.FL = '1') and t.OLD_SAMPL_NO = ?";
- List listEntry = this.getDao("KgDao").ExcuteQueryReturnList(sqlEntry,
- new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- if (listEntry.size() > 0) {
- cro.setV_errCode(new Integer(1));
- cro.setV_errMsg("物料对应的母卷"+lCoilInfo[0].substring(0, 11)+"0"+"已发货或已连退,禁止分卷!");
- return cro;
- }
-
-
- // 查询钢卷是否存在于钢卷公共表
- String sql = XmlSqlParsersFactory.getSql("UIK020020_02.SELECT");
-
- List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0] });
- Iterator it = list.iterator();
- int count = 0;
- try {
- while (it.hasNext()) {
- Map map = (Map) it.next();
- count = Integer.parseInt(map.get("COUNT").toString());
- }
- } catch (Exception ex) {
- }
- //根据真实钢卷号判断是否存在此卷
- String sqln = XmlSqlParsersFactory.getSql("UIK020020_10.SELECT");
- List listN = this.getDao("KgDao").ExcuteQueryReturnList(sqln,
- new Object[] { lCoilInfo[0] });
- Iterator itn = listN.iterator();
- int countn = 0;
- try {
- while (itn.hasNext()) {
- Map mapn = (Map) itn.next();
- countn = Integer.parseInt(mapn.get("COUNT").toString());
- }
- } catch (Exception ex) {
- }
- //判断母卷-10是否存在
- List listMU = this.getDao("KgDao").ExcuteQueryReturnList(sqln,
- new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- Iterator itMU = listMU.iterator();
- int countMU = 0;
- try {
- while (itMU.hasNext()) {
- Map mapMU = (Map) itMU.next();
- countMU = Integer.parseInt(mapMU.get("COUNT").toString());
- }
- } catch (Exception ex) {
- }
- Map result = this.getDao("KgDao").CoreBeginTranscation();
- try {
- List<Object> param = new ArrayList<Object>();
- param.add(lCoilInfo[0]);
- param.add(lCoilInfo[0]);
- param.add(lCoilInfo[1]);
- param.add(lCoilInfo[3]);
- param.add(lCoilInfo[6]);
- param.add(lCoilInfo[7]);
- param.add(lCoilInfo[2]);
- param.add(lCoilInfo[8]);
- param.add("");// lock_coil
- param.add(lCoilInfo[9]);
- for (int i = 0; i < hCoilInfo.size(); i++) {
- String[] hCoil = (String[]) hCoilInfo.get(i);
- for (int j = 0; j < hCoil.length - 1; j++) {
- param.add(hCoil[j]);
- }
- }
- param.add(lCoilInfo[10]);
- for (int i = 0; i < defectInfo.size(); i++) {
- String[] defect = (String[]) defectInfo.get(i);
- for (int j = 0; j < defect.length; j++) {
- param.add(defect[j]);
- }
- }
- // 新增实绩
- sql = XmlSqlParsersFactory.getSql("UIK020020_01.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
-
- // 查询订单信息
- sql = XmlSqlParsersFactory.getSql("UIK020020_04.SELECT");
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0] });
- it = list.iterator();
- Map ordMap = new HashMap();
- if (it.hasNext()) {
- ordMap = (Map) it.next();
- }
- param = new ArrayList<Object>();
- param.add(lCoilInfo[0]);
- String coilLen = lCoilInfo[3];
- try {
- if (coilLen == null || coilLen.equals("")
- || Integer.parseInt(coilLen) == 0) {
- coilLen = String.valueOf(Math.round(Double
- .parseDouble(lCoilInfo[2])
- * 1000
- / (Double.parseDouble(lCoilInfo[4])
- * Double.parseDouble(lCoilInfo[5]) * 7.85)
- * 1000));
- }
- } catch (Exception ex) {
- }
- param.add(coilLen);
- param.add(lCoilInfo[6]);
- param.add(lCoilInfo[7]);
- param.add(lCoilInfo[5]);
- param.add(lCoilInfo[4]);
- param.add(""); //param.add(lCoilInfo[2]);重量屏蔽
- param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
- .toString() : "");// stl_grd
- param.add(lCoilInfo[1]);
- param.add(lCoilInfo[0]);
- if (((String[]) hCoilInfo.get(0))[0].length() > 3) {
- param.add(((String[]) hCoilInfo.get(0))[0].substring(0,
- ((String[]) hCoilInfo.get(0))[0].length() - 3));// ord_no
- param
- .add(((String[]) hCoilInfo.get(0))[0]
- .substring(((String[]) hCoilInfo.get(0))[0]
- .length() - 3));// ord_seq
- param.add(1);
- } else {
- String ordNo = ordMap.get("ORD_NO") != null ? ordMap.get(
- "ORD_NO").toString() : "";
- String ordSeq = ordMap.get("ORD_SEQ") != null ? ordMap.get(
- "ORD_SEQ").toString() : "";
- String ordFl = ordNo.equals("") ? "2" : "1";
- param.add(ordNo);// ord_no
- param.add(ordSeq);// ord_seq
- param.add(ordFl);
- }
- // for (int i = 0; i < 5; i++) {
- // param.add(((String[]) defectInfo.get(i))[1]);// defect_type
- // }
- String slabNo = "";
- sql = "select k.slab_no from c_tbk02_coil_comm k where k.coil_no = ?";
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { ((String[]) hCoilInfo.get(0))[29] });// h_coil_no1
- it = list.iterator();
- if (it.hasNext()) {
- Map map = (Map) it.next();
- slabNo = map.get("SLAB_NO").toString();
- }
- param.add(slabNo);// slab_no
-
- String []hCoils = new String[3];
- for (int i = 0; i < 3; i++) {
- hCoils[i] = ((String[]) hCoilInfo.get(i))[29];
- param.add(((String[]) hCoilInfo.get(i))[29]);// h_coil_no
- param.add(((String[]) hCoilInfo.get(i))[2]);// h_coil_len
- }
- param.add(ordMap.get("ORD_THK") != null ? ordMap.get("ORD_THK")
- .toString() : "");
- param.add(ordMap.get("ORD_WTH") != null ? ordMap.get("ORD_WTH")
- .toString() : "");
- param.add(ordMap.get("ORD_LEN") != null ? ordMap.get("ORD_LEN")
- .toString() : "");
- param.add(ordMap.get("ORD_WGT") != null ? ordMap.get("ORD_WGT")
- .toString() : "");
- param.add(ordMap.get("ORD_INDIA") != null ? ordMap.get("ORD_INDIA")
- .toString() : "");
- param.add(ordMap.get("ORD_OUTDIA") != null ? ordMap.get(
- "ORD_OUTDIA").toString() : "");
- param.add(ordMap.get("DEL_TO_DATE") != null ? ordMap.get(
- "DEL_TO_DATE").toString() : "");
- param.add(ordMap.get("DEST_CD") != null ? ordMap.get("DEST_CD")
- .toString() : "");
- param.add(ordMap.get("ORDCUST_CD") != null ? ordMap.get("ORDCUST_CD")
- .toString() : "");
- //param.add("");// cust_cd
- param.add(ordMap.get("CUST_CD") != null ? ordMap.get("CUST_CD")
- .toString() : "");
- param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
- "SPEC_STL_GRD").toString() : "");
- // param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
- // .toString() : "");
- param.add(ordMap.get("PRODNM_CD") != null ? ordMap.get("PRODNM_CD")
- .toString() : "");
- param.add(ordMap.get("C_ORD_USEAGE_CD") != null ? ordMap.get(
- "C_ORD_USEAGE_CD").toString() : "");
- param.add(ordMap.get("C_SPEC_ABBSYM") != null ? ordMap.get(
- "C_SPEC_ABBSYM").toString() : "");
- param.add(regID);
- param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
- "SPEC_STL_GRD").toString() : "");
- if (count <= 0) {// 新增钢卷
- sql = XmlSqlParsersFactory.getSql("UIK020020_02.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
- if(countMU>0) {
- //调用存货异动点存储过程
- ProduceFactory PD= new ProduceFactory();
- PD.ErpDataCover("CCOIL",lCoilInfo[0].substring(0, 11)+"0","11AD","0","O",regID,"酸轧分卷母卷");
- PD.ErpDataCoverFJ("CCOIL",lCoilInfo[0],"11AD","0","N","N","",lCoilInfo[0].substring(0, 11)+"0",regID,"酸轧分卷子卷");
- }
- else{
- ProduceFactory PD= new ProduceFactory();
- PD.ErpDataCover("CORICOIL",((String[]) hCoilInfo.get(0))[29],"41A","0","O",regID,"酸轧轧制"); //((String[]) hCoilInfo.get(i))[29]
- PD.ErpDataCoverFJ("CCOIL",lCoilInfo[0],"11A","0","N","N","",((String[]) hCoilInfo.get(0))[29],regID,"酸轧分卷子卷");
- }
- // 修改母卷
- sql = XmlSqlParsersFactory.getSql("UIK020020_07.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- sql = XmlSqlParsersFactory.getSql("UIK020020_08.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- } else {// 修改钢卷
-
- sql = XmlSqlParsersFactory.getSql("UIK020020_02.UPDATE");
- param.remove(0);
- param.add(lCoilInfo[0]);
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
- if(countn<=0)//人工补录实绩时抛送异动点
- {
- ProduceFactory PD= new ProduceFactory();
- PD.ErpDataCover("CCOIL",lCoilInfo[0],"11A","0","O",regID,"酸轧补录产出"); //
- PD.ErpDataCover("CORICOIL",((String[]) hCoilInfo.get(0))[29],"41A","0","O",regID,"酸轧轧制"); //((String[]) hCoilInfo.get(i))[29]
-
- }
- }
-
- //更改原料卷状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_06.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql, hCoils);
-
- // 写入钢卷公共表_D
- if (!(ordMap.get("ORD_NO") != null ? ordMap.get("ORD_NO")
- .toString() : "").equals("")) {
- sql = XmlSqlParsersFactory.getSql("UIK020020_06.SELECT");
- list = this.getDao("KgDao")
- .ExcuteQueryReturnList(
- sql,
- new Object[] { lCoilInfo[0], lCoilInfo[0],
- lCoilInfo[0] });
- it = list.iterator();
- Map ordMapD = new HashMap();
- if (it.hasNext()) {
- ordMapD = (Map) it.next();
- }
- String cutSeq = ordMapD.get("CUT_SEQ") != null ? ordMapD.get(
- "CUT_SEQ").toString() : "";
- String ordThk = ordMapD.get("ORD_THK") != null ? ordMapD.get(
- "ORD_THK").toString() : "";
- String ordWth = ordMapD.get("ORD_WTH") != null ? ordMapD.get(
- "ORD_WTH").toString() : "";
- String ordLen = ordMapD.get("ORD_LEN") != null ? ordMapD.get(
- "ORD_LEN").toString() : "";
- String ordWgt = ordMapD.get("ORD_WGT") != null ? ordMapD.get(
- "ORD_WGT").toString() : "";
- String ordWgtMin = ordMapD.get("ORD_WGT_MIN") != null ? ordMapD
- .get("ORD_WGT_MIN").toString() : "";
- String ordWgtMax = ordMapD.get("ORD_WGT_MAX") != null ? ordMapD
- .get("ORD_WGT_MAX").toString() : "";
- String ordIndia = ordMapD.get("ORD_INDIA") != null ? ordMapD
- .get("ORD_INDIA").toString() : "";
- String ordOutdia = ordMapD.get("ORD_OUTDIA") != null ? ordMapD
- .get("ORD_OUTDIA").toString() : "";
- String ordNo = ordMapD.get("ORD_NO") != null ? ordMapD.get(
- "ORD_NO").toString() : "";
- String ordSeq = ordMapD.get("ORD_SEQ") != null ? ordMapD.get(
- "ORD_SEQ").toString() : "";
- String ordFl = ordMapD.get("ORD_FL") != null ? ordMapD.get(
- "ORD_FL").toString() : "";
- sql = XmlSqlParsersFactory.getSql("UIK020020_07.SELECT");
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0], cutSeq });
- it = list.iterator();
- Map ordMapCount = new HashMap();
- if (it.hasNext()) {
- ordMapCount = (Map) it.next();
- }
- int ordCount = Integer
- .parseInt(ordMapCount.get("COUNT") != null ? ordMapCount
- .get("COUNT").toString().trim()
- : "0");
- if (ordCount > 0) {
- sql = XmlSqlParsersFactory.getSql("UIK020020_05.UPDATE");
- this.getDao("KgDao")
- .ExcuteNonQuery(
- sql,
- new Object[] { ordThk, ordWth, ordLen,
- ordWgt, ordWgtMin, ordWgtMax,
- ordIndia, ordOutdia, ordNo, ordSeq,
- ordFl, lCoilInfo[0], cutSeq });
- } else {
- sql = XmlSqlParsersFactory.getSql("UIK020020_03.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(
- sql,
- new Object[] { lCoilInfo[0], cutSeq, ordThk,
- ordWth, ordLen, ordWgt, ordWgtMin,
- ordWgtMax, ordIndia, ordOutdia, ordNo,
- ordSeq, ordFl });
- }
- }
- // 修改钢卷轧制状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_03.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,
- new Object[] { lCoilInfo[0] });
- // 修改轧辊单元轧制状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_04.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,
- new Object[] { lCoilInfo[0], lCoilInfo[0], lCoilInfo[0] });
- this.getDao("KgDao").CoreCommit(result);
- Connection conn = this.getDao("KgDao").getConnection();
- try {
- conn.setAutoCommit(false);
- // this.takeOverPltcmCoilLable(conn, lCoilInfo[0], Double
- // .parseDouble(lCoilInfo[2]), Double
- // .parseDouble(lCoilInfo[5]), lCoilInfo[1]);
- // 酸轧实绩补录成功后进行尺寸及重量判定
- this.dscCoilWgtSize(conn, lCoilInfo[0]);
- //添加操作记录
- this.CallHistory(conn, lCoilInfo[0] , regID);
- // 分卷后重新取样
- if ("123456789".contains(lCoilInfo[0].substring(lCoilInfo[0]
- .length() - 1))) {
- this.cutCoilLost(conn, lCoilInfo[0]);
- }
- conn.commit();
- } catch (Exception e) {
- e.printStackTrace();
- conn.rollback();
- } finally {
- if (conn != null && !conn.isClosed()) {
- conn.close();
- }
- }
- } catch (Exception ex) {
- ex.printStackTrace();
- this.getDao("KgDao").CoreRollBack(result);
- cro.setV_errCode(-1);
- cro.setV_errMsg("实绩新增失败!");
- }
- return cro;
- }
- /**
- * 新增酸轧实绩
- *
- * @param listParam
- * @param regID
- * @return
- * @throws SQLException
- */
- public CoreReturnObject addAcidResultSaunXi(ArrayList listParam,String regID)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- String[] lCoilInfo = (String[]) listParam.get(0);
- ArrayList hCoilInfo = (ArrayList) listParam.get(1);
- ArrayList defectInfo = (ArrayList) listParam.get(2);
- // 查询钢卷是否存在于钢卷公共表
- String sql = XmlSqlParsersFactory.getSql("UIK020020_02.SELECT");
- List list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0] });
- Iterator it = list.iterator();
- int count = 0;
- try {
- while (it.hasNext()) {
- Map map = (Map) it.next();
- count = Integer.parseInt(map.get("COUNT").toString());
- }
- } catch (Exception ex) {
- }
- Map result = this.getDao("KgDao").CoreBeginTranscation();
- try {
- List<Object> param = new ArrayList<Object>();
- param.add(lCoilInfo[0]);
- param.add(lCoilInfo[0]);
- param.add(lCoilInfo[1]);
- param.add(lCoilInfo[3]);
- param.add(lCoilInfo[6]);
- param.add(lCoilInfo[7]);
- param.add(lCoilInfo[2]);
- param.add(lCoilInfo[8]);
- param.add("");// lock_coil
- param.add(lCoilInfo[9]);
- for (int i = 0; i < hCoilInfo.size(); i++) {
- String[] hCoil = (String[]) hCoilInfo.get(i);
- for (int j = 0; j < hCoil.length - 1; j++) {
- param.add(hCoil[j]);
- }
- }
- param.add(lCoilInfo[10]);
- for (int i = 0; i < defectInfo.size(); i++) {
- String[] defect = (String[]) defectInfo.get(i);
- for (int j = 0; j < defect.length; j++) {
- param.add(defect[j]);
- }
- }
- // 新增实绩
- sql = XmlSqlParsersFactory.getSql("UIK020020_01.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
- // 查询订单信息
- sql = XmlSqlParsersFactory.getSql("UIK020020_08.SELECT");
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0] });
- it = list.iterator();
- Map ordMap = new HashMap();
- if (it.hasNext()) {
- ordMap = (Map) it.next();
- }
- param = new ArrayList<Object>();
- param.add(lCoilInfo[0]);
- String coilLen = lCoilInfo[3];
- try {
- if (coilLen == null || coilLen.equals("")
- || Integer.parseInt(coilLen) == 0) {
- coilLen = String.valueOf(Math.round(Double
- .parseDouble(lCoilInfo[2])
- * 1000
- / (Double.parseDouble(lCoilInfo[4])
- * Double.parseDouble(lCoilInfo[5]) * 7.85)
- * 1000));
- }
- } catch (Exception ex) {
- }
- param.add(coilLen);
- param.add(lCoilInfo[6]);
- param.add(lCoilInfo[7]);
- param.add(lCoilInfo[5]);
- param.add(lCoilInfo[4]);
- param.add("");//param.add(lCoilInfo[2]);
- param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
- .toString() : "");// stl_grd
- param.add(lCoilInfo[1]);
- param.add(lCoilInfo[0]);
- if (((String[]) hCoilInfo.get(0))[0].length() > 3) {
- param.add(((String[]) hCoilInfo.get(0))[0].substring(0,
- ((String[]) hCoilInfo.get(0))[0].length() - 3));// ord_no
- param
- .add(((String[]) hCoilInfo.get(0))[0]
- .substring(((String[]) hCoilInfo.get(0))[0]
- .length() - 3));// ord_seq
- param.add(1);
- } else {
- String ordNo = ordMap.get("ORD_NO") != null ? ordMap.get(
- "ORD_NO").toString() : "";
- String ordSeq = ordMap.get("ORD_SEQ") != null ? ordMap.get(
- "ORD_SEQ").toString() : "";
- String ordFl = ordNo.equals("") ? "2" : "1";
- param.add(ordNo);// ord_no
- param.add(ordSeq);// ord_seq
- param.add(ordFl);
- }
- // for (int i = 0; i < 5; i++) {
- // param.add(((String[]) defectInfo.get(i))[1]);// defect_type
- // }
- String slabNo = "";
- String smp_no = "";
- String smp_cut_loc = "";
- String matlqlty_dec_grd = "0";
- sql = "select k.SMP_NO, k.SMP_CUT_LOC,k.MATLQLTY_DEC_GRD,k.slab_no from c_tbk02_coil_comm k where k.coil_no = ?";
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { ((String[]) hCoilInfo.get(0))[29] });// h_coil_no1
- it = list.iterator();
- if (it.hasNext()) {
- Map map = (Map) it.next();
- slabNo = map.get("SLAB_NO").toString();
- // smp_no = map.get("SMP_NO").toString();
-
- smp_no = map.get("SMP_NO") != null ? map.get(
- "SMP_NO").toString() : "";
- smp_cut_loc = map.get("SMP_CUT_LOC") != null ? map.get(
- "SMP_CUT_LOC").toString() : "";
-
- //smp_cut_loc = map.get("SMP_CUT_LOC").toString();
- matlqlty_dec_grd = map.get("MATLQLTY_DEC_GRD").toString();
- }
- param.add(slabNo);// slab_no
- param.add(smp_no);
- param.add(smp_cut_loc);
- param.add(matlqlty_dec_grd);
- /*
- param.add("188888");
- param.add("k");
- param.add("1");
- */
-
- String []hCoils = new String[3];
- for (int i = 0; i < 3; i++) {
- hCoils[i] = ((String[]) hCoilInfo.get(i))[29];
- param.add(((String[]) hCoilInfo.get(i))[29]);// h_coil_no
- param.add(((String[]) hCoilInfo.get(i))[2]);// h_coil_len
- }
- param.add(ordMap.get("ORD_THK") != null ? ordMap.get("ORD_THK")
- .toString() : "");
- param.add(ordMap.get("ORD_WTH") != null ? ordMap.get("ORD_WTH")
- .toString() : "");
- param.add(ordMap.get("ORD_LEN") != null ? ordMap.get("ORD_LEN")
- .toString() : "");
- param.add(ordMap.get("ORD_WGT") != null ? ordMap.get("ORD_WGT")
- .toString() : "");
- param.add(ordMap.get("ORD_INDIA") != null ? ordMap.get("ORD_INDIA")
- .toString() : "");
- param.add(ordMap.get("ORD_OUTDIA") != null ? ordMap.get(
- "ORD_OUTDIA").toString() : "");
- param.add(ordMap.get("DEL_TO_DATE") != null ? ordMap.get(
- "DEL_TO_DATE").toString() : "");
- param.add(ordMap.get("DEST_CD") != null ? ordMap.get("DEST_CD")
- .toString() : "");
- param.add(ordMap.get("ORDCUST_CD") != null ? ordMap.get("ORDCUST_CD")
- .toString() : "");
- //param.add("");// cust_cd
- param.add(ordMap.get("CUST_CD") != null ? ordMap.get("CUST_CD")
- .toString() : "");
- param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
- "SPEC_STL_GRD").toString() : "");
- // param.add(ordMap.get("STL_GRD") != null ? ordMap.get("STL_GRD")
- // .toString() : "");
- param.add(ordMap.get("PRODNM_CD") != null ? ordMap.get("PRODNM_CD")
- .toString() : "");
- param.add(ordMap.get("C_ORD_USEAGE_CD") != null ? ordMap.get(
- "C_ORD_USEAGE_CD").toString() : "");
- param.add(ordMap.get("C_SPEC_ABBSYM") != null ? ordMap.get(
- "C_SPEC_ABBSYM").toString() : "");
- param.add(regID);
- param.add(ordMap.get("SPEC_STL_GRD") != null ? ordMap.get(
- "SPEC_STL_GRD").toString() : "");
- if (count <= 0) {// 新增钢卷
- sql = XmlSqlParsersFactory.getSql("UIK020020_04.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
- // 修改母卷
- sql = XmlSqlParsersFactory.getSql("UIK020020_07.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- sql = XmlSqlParsersFactory.getSql("UIK020020_08.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,new Object[] { lCoilInfo[0].substring(0, 11)+"0" });
- } else {// 修改钢卷
- sql = XmlSqlParsersFactory.getSql("UIK020020_02.UPDATE");
- param.remove(0);
- param.add(lCoilInfo[0]);
- this.getDao("KgDao").ExcuteNonQuery(sql, param.toArray());
- }
-
- //更改原料卷状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_06.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql, hCoils);
-
- // 写入钢卷公共表_D
- if (!(ordMap.get("ORD_NO") != null ? ordMap.get("ORD_NO")
- .toString() : "").equals("")) {
- sql = XmlSqlParsersFactory.getSql("UIK020020_09.SELECT");
- list = this.getDao("KgDao")
- .ExcuteQueryReturnList(
- sql,
- new Object[] { lCoilInfo[0], lCoilInfo[0],
- lCoilInfo[0] });
- it = list.iterator();
- Map ordMapD = new HashMap();
- if (it.hasNext()) {
- ordMapD = (Map) it.next();
- }
- String cutSeq = ordMapD.get("CUT_SEQ") != null ? ordMapD.get(
- "CUT_SEQ").toString() : "";
- String ordThk = ordMapD.get("ORD_THK") != null ? ordMapD.get(
- "ORD_THK").toString() : "";
- String ordWth = ordMapD.get("ORD_WTH") != null ? ordMapD.get(
- "ORD_WTH").toString() : "";
- String ordLen = ordMapD.get("ORD_LEN") != null ? ordMapD.get(
- "ORD_LEN").toString() : "";
- String ordWgt = ordMapD.get("ORD_WGT") != null ? ordMapD.get(
- "ORD_WGT").toString() : "";
- String ordWgtMin = ordMapD.get("ORD_WGT_MIN") != null ? ordMapD
- .get("ORD_WGT_MIN").toString() : "";
- String ordWgtMax = ordMapD.get("ORD_WGT_MAX") != null ? ordMapD
- .get("ORD_WGT_MAX").toString() : "";
- String ordIndia = ordMapD.get("ORD_INDIA") != null ? ordMapD
- .get("ORD_INDIA").toString() : "";
- String ordOutdia = ordMapD.get("ORD_OUTDIA") != null ? ordMapD
- .get("ORD_OUTDIA").toString() : "";
- String ordNo = ordMapD.get("ORD_NO") != null ? ordMapD.get(
- "ORD_NO").toString() : "";
- String ordSeq = ordMapD.get("ORD_SEQ") != null ? ordMapD.get(
- "ORD_SEQ").toString() : "";
- String ordFl = ordMapD.get("ORD_FL") != null ? ordMapD.get(
- "ORD_FL").toString() : "";
- sql = XmlSqlParsersFactory.getSql("UIK020020_07.SELECT");
- list = this.getDao("KgDao").ExcuteQueryReturnList(sql,
- new Object[] { lCoilInfo[0], cutSeq });
- it = list.iterator();
- Map ordMapCount = new HashMap();
- if (it.hasNext()) {
- ordMapCount = (Map) it.next();
- }
- int ordCount = Integer
- .parseInt(ordMapCount.get("COUNT") != null ? ordMapCount
- .get("COUNT").toString().trim()
- : "0");
- if (ordCount > 0) {
- sql = XmlSqlParsersFactory.getSql("UIK020020_05.UPDATE");
- this.getDao("KgDao")
- .ExcuteNonQuery(
- sql,
- new Object[] { ordThk, ordWth, ordLen,
- ordWgt, ordWgtMin, ordWgtMax,
- ordIndia, ordOutdia, ordNo, ordSeq,
- ordFl, lCoilInfo[0], cutSeq });
- } else {
- sql = XmlSqlParsersFactory.getSql("UIK020020_03.INSERT");
- this.getDao("KgDao").ExcuteNonQuery(
- sql,
- new Object[] { lCoilInfo[0], cutSeq, ordThk,
- ordWth, ordLen, ordWgt, ordWgtMin,
- ordWgtMax, ordIndia, ordOutdia, ordNo,
- ordSeq, ordFl });
- }
- }
- // 修改钢卷轧制状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_11.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,
- new Object[] { lCoilInfo[0] });
- // 修改轧辊单元轧制状态
- sql = XmlSqlParsersFactory.getSql("UIK020020_12.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql,
- new Object[] { lCoilInfo[0], lCoilInfo[0], lCoilInfo[0] });
- this.getDao("KgDao").CoreCommit(result);
- Connection conn = this.getDao("KgDao").getConnection();
- try {
- conn.setAutoCommit(false);
- // this.takeOverPltcmCoilLable(conn, lCoilInfo[0], Double
- // .parseDouble(lCoilInfo[2]), Double
- // .parseDouble(lCoilInfo[5]), lCoilInfo[1]);
- // 酸轧实绩补录成功后进行尺寸及重量判定
- this.dscCoilWgtSize(conn, lCoilInfo[0]);
- //添加操作记录
- this.CallHistory(conn, lCoilInfo[0] , regID);
- // 分卷后重新取样 20190409 注释
- /*
- if ("123456789".contains(lCoilInfo[0].substring(lCoilInfo[0]
- .length() - 1))) {
- this.cutCoilLost(conn, lCoilInfo[0]);
- }
- */
- conn.commit();
- } catch (Exception e) {
- e.printStackTrace();
- conn.rollback();
- } finally {
- if (conn != null && !conn.isClosed()) {
- conn.close();
- }
- }
- } catch (Exception ex) {
- ex.printStackTrace();
- this.getDao("KgDao").CoreRollBack(result);
- cro.setV_errCode(-1);
- cro.setV_errMsg("实绩新增失败!");
- }
- return cro;
- }
- /**
- * 修改酸轧实绩
- *
- * @param coilNo
- * @param coilWgt
- * @param coilLen
- * @param coilWth
- * @param CoilThk
- * @param coilInida
- * @param coilOutdia
- * @return
- * @throws SQLException
- */
- public CoreReturnObject updateAcidRollingResult(String coilNo,
- String coilWgt, String coilLen, String coilWth, String coilThk,
- String coilIndia, String coilOutdia, String regId)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- String sql = XmlSqlParsersFactory.getSql("UIK020020_01.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(
- sql,
- new Object[] { coilLen, coilWth, coilThk, coilIndia,
- coilOutdia, regId, coilNo });
-
- String sql0 = XmlSqlParsersFactory.getSql("UIK020020_10.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(
- sql0,
- new Object[] { coilNo, coilLen, coilIndia,
- coilOutdia,coilThk, coilWth, coilWgt,regId });
- return cro;
- }
- /**
- * 查询酸轧轧制最后20卷
- *
- * @return
- * @throws SQLException
- */
- public CoreReturnObject queryLastCoilNos() throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- String sql = XmlSqlParsersFactory.getSql("UIK020020_05.SELECT");
- PreparedStatement pSta = this.getDao("KgDao").getPreparedStatement(sql);
- ResultSet rs = pSta.executeQuery();
- ArrayList<String> list = new ArrayList<String>();
- String param = "";
- while (rs.next()) {
- param = rs.getString("COIL_NO");
- list.add(param);
- }
- cro.setResult(list);
- rs.close();
- Connection con = pSta.getConnection();
- pSta.close();
- con.close();
- return cro;
- }
- /**
- * 酸轧重量及尺寸判定
- *
- * @param conn
- * @param coilNo
- * @return
- * @throws SQLException
- */
- private String dscCoilWgtSize(Connection conn, String coilNo)
- throws SQLException {
- // ZL_SUAN_DCS01.DCS_COIL_WGTSIZE(v_rec.EXIT_COIL_ID,P_RETURN_MSG);
- String retMsg = "";
- String sql = XmlSqlParsersFactory.getSql("UIK020020_01.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, coilNo);
- cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
- cstm.execute();
- retMsg = cstm.getString(2);
- cstm.close();
- return retMsg;
- }
- /**
- * 分卷后重新生成取样信息
- *
- * @param conn
- * @param coilNo
- * @return
- * @throws SQLException
- */
- private String cutCoilLost(Connection conn, String coilNo)
- throws SQLException {
- String retMsg = "";
- String sql = XmlSqlParsersFactory.getSql("UIK020020_02.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, coilNo);
- cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
- cstm.execute();
- retMsg = cstm.getString(2);
- cstm.close();
- return retMsg;
- }
- /**
- * 补录实绩后调用标签打印
- *
- * @param conn
- * @param coilNo
- * @return
- * @throws SQLException
- */
- private void takeOverPltcmCoilLable(Connection conn, String coilNo,
- double coilWgt, double coilThk, String millDtime)
- throws SQLException {
- String sql = XmlSqlParsersFactory.getSql("UIK020020_03.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, coilNo);
- cstm.setDouble(2, coilWgt);
- cstm.setDouble(3, coilThk);
- cstm.setString(4, millDtime);
- cstm.execute();
- cstm.close();
- }
-
- public void CallHistory(Connection conn,String coilNo,String regid){
- try{
- String sql = XmlSqlParsersFactory.getSql("UIL010020_02_CALL.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1,"S");
- cstm.setString(2,coilNo);
- cstm.setString(3,regid);
- cstm.setString(4,"酸轧实绩修改");
- cstm.setString(5,"UIK020020");
- cstm.setString(6,"修改后");
- cstm.registerOutParameter(7,Types.VARCHAR);
- cstm.execute();
- cstm.close();
- }catch(Exception j){
- j.getMessage();
- }
- }
- }
|