| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014 |
- package UIJ.UIJ05;
- 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.Calendar;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.HashSet;
- import java.util.List;
- import java.util.Map;
- import java.util.Set;
- import java.text.SimpleDateFormat;
- import UIJ.UIJ03.UIJ030052;
- import UIJ.UIJ03.UIJ030060;
- import org.apache.commons.lang.StringUtils;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.alibaba.fastjson.TypeReference;
- import xin.glue.cargocnHttpClient.WayBill;
- import UIB.COM.ProduceFactory;
- import UIB.COM.XmlSqlParsersFactory;
- import CoreFS.SA01.CoreIComponent;
- import CoreFS.SA06.CoreReturnObject;
- public class UIJ050010 extends CoreIComponent {
- public CoreReturnObject queryTransPlanLt(String shipProgCd,
- String fromDate, String toDate, String shipDirNo, String curProgCd,
- String shipCompNm, String dlivTp, String laneTp, String enteranceSeq)
- throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT '' CHK,\n");
- sqlBuffer.append(" B.SHIP_DIRNO,\n");
- // sqlBuffer.append(" B.GET_ON_PCD,\n");
- sqlBuffer.append(" B.DEST_PCD,\n");
- sqlBuffer
- .append(" (SELECT sm_cfnm FROM TBZ00_COMMCD WHERE LG_CD = 'A01009' AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,\n");
- sqlBuffer.append(" B.EXLV_LINE_CD,\n");
- sqlBuffer
- .append(" (SELECT x.SM_CFNM FROM TBZ00_COMMCD x WHERE LG_CD = 'A01015' AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,\n");
- sqlBuffer
- .append(" (select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, \n");
- sqlBuffer
- .append(" (select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,\n");
- sqlBuffer.append(" B.GET_OFF_PCD,\n");
- sqlBuffer.append(" B.DLIV_TP,\n");
- sqlBuffer.append(" D.SM_CFNM AS DLIV_TP_NM,\n");
- sqlBuffer.append(" B.SHIP_COMP_CD,\n");
- sqlBuffer.append(" C.SHIP_COMP_NM SM_CFNM,\n");
- sqlBuffer.append(" B.TRAIN_DLIVNO,\n");
- sqlBuffer.append(" B.DLIV_DIRNO,\n");
- sqlBuffer.append(" NVL(B.CNT,0) AS CNT,\n");
- sqlBuffer.append(" NVL(B.ACT_WGT,0) AS ACT_WGT,\n");
- sqlBuffer.append(" B.ALLOC_SEQ,\n");
- sqlBuffer.append(" B.TRANS_CAR_NO,\n");
- sqlBuffer.append(" B.LANE_TP,\n");
- sqlBuffer.append(" B.ENTERANCE_SEQ,\n");
- sqlBuffer.append(" B.ORD_NO,\n");
- sqlBuffer.append(" B.ORD_SEQ,\n");
- sqlBuffer.append(" B.SPEC_STL_GRD,\n");
- sqlBuffer.append(" B.INSTR_COIL_THK||'*'||B.INSTR_COIL_WTH T_W \n");
- sqlBuffer.append(" FROM(SELECT *\n");
- sqlBuffer.append(" FROM TBJ01_SHIP_DIR\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer
- .append(" AND SHIP_PROG_CD = ? -- SHIP_PROG_CD = '03' 发货指示状态\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" AND SHIP_DIRNO LIKE ?||'%') A \n");
- sqlBuffer
- .append(" ,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH \n");
- sqlBuffer.append(" FROM TBJ01_DLIV_DIR X\n");
- sqlBuffer.append(" ,(SELECT DLIV_DIRNO\n");
- sqlBuffer.append(" , COUNT(*) AS CNT\n");
- sqlBuffer.append(" , NVL(SUM(ACT_WGT),0) AS ACT_WGT\n");
- sqlBuffer.append(" , MAX(ORD_NO) AS ORD_NO\n");
- sqlBuffer.append(" , MAX(ORD_SEQ) AS ORD_SEQ\n");
- sqlBuffer.append(" , MAX(SPEC_STL_GRD) AS SPEC_STL_GRD\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_THK) AS INSTR_COIL_THK\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer
- .append(" AND CUR_PROG_CD like ?||'%' -- CUR_PROG_CD = 'SFB'(物料进度)\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" GROUP BY DLIV_DIRNO) Y\n");
- sqlBuffer.append(" WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO\n");
- sqlBuffer.append(" AND X.DLIV_TP LIKE ?||'%'\n");
- sqlBuffer.append(" AND NVL(X.LANE_TP,'*') LIKE ?||'%'\n");
- sqlBuffer.append(" AND NVL(X.ENTERANCE_SEQ,0) = NVL(?,0)) B\n");
- sqlBuffer.append(" ,(SELECT *\n");
- sqlBuffer.append(" FROM TBJ00_SHIP_COMP\n");
- sqlBuffer.append(" WHERE SHIP_COMP_CD LIKE ?||'%') C\n");
- sqlBuffer
- .append(" ,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D\n");
- sqlBuffer.append(" WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)\n");
- sqlBuffer.append(" AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)\n");
- sqlBuffer.append(" AND D.SM_CD = B.DLIV_TP \n");
- sqlBuffer.append(" AND B.ISDELETED = 0\n");
- sqlBuffer.append(" AND B.ISCANCEL = 0\n");
- sqlBuffer.append(" ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO\n");
- cro = this.getDao("KgDao").ExcuteQuery(
- sqlBuffer.toString(),
- new Object[] { shipProgCd, fromDate, toDate, shipDirNo,
- curProgCd, fromDate, toDate, dlivTp, laneTp,
- enteranceSeq, shipCompNm, dlivTp, });
- return cro;
- }
- //20131112火车排车
- public CoreReturnObject saveSHIPDIRTRAINLt(ArrayList<String[]> list)
- throws SQLException{
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- PreparedStatement pSta = null;
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- StringBuffer sqlBuffer = null;
- for (int i = 0; i < list.size(); i++) {
-
- // 判断是否全部选择的标志位
- boolean flag = true;
- String[] param = list.get(i);
- // 查询钢卷公共表中的SHIP_PROG_CD状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("select a.SHIP_PROG_CD from C_TBC02_COIL_COMM a where a.ship_dirno = '"
- + param[5] + "'\n");
- Statement sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sqlBuffer.toString());
- while (rs.next()) {
- String shipProgCd = rs.getString("SHIP_PROG_CD");
- if (!"03".equals(shipProgCd)) {
- flag = false;
- cro.setV_errCode(-1);
- cro.setV_errMsg("指示号"+param[4]+"已装车或明细已打印,请检查相应钢卷信息,再进行操作!!!");
- break;
- }
- }
- rs.close();
- sta.close();
- if (flag) {
- // 把车厢号和排车顺序号放入运输表,不改变运输表的状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update tbj01_dliv_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ALLOC_SEQ = ?,\n");
- sqlBuffer.append(" TRANS_CAR_NO = ? ,\n");
- sqlBuffer.append(" LANE_TP = ?,\n");
- sqlBuffer.append(" ENTERANCE_SEQ = ?\n");
- sqlBuffer.append(" WHERE DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.setString(2, param[1]);
- pSta.setString(3, param[2]);
- pSta.setString(4, param[3]);
- pSta.setString(5, param[4]);
- pSta.executeUpdate();
- pSta.close();
- // 更新钢卷公共表中的车辆号,排车顺序号
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" TRAIN_STEP_NO = ?,\n");
- sqlBuffer.append(" TRANS_CAR_NO = ?,\n");
- sqlBuffer.append(" SHIP_PROG_CD = '04'\n");
- sqlBuffer.append(" where DLIV_DIRNO =?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.setString(2, param[1]);
- pSta.setString(3, param[4]);
- pSta.executeUpdate();
- pSta.close();
- // 更新发货表发货状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" UPDATE TBJ01_SHIP_DIR \n");
- sqlBuffer.append(" SET \n");
- sqlBuffer.append(" SHIP_PROG_CD = '04' \n");
- sqlBuffer.append(" WHERE SHIP_DIRNO=?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[5]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- conn.commit();
- } catch (SQLException ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("装车失败,请检查钢卷信息后重新操作!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- public CoreReturnObject saveSHIPDIRCARLt(ArrayList<String[]> list)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- PreparedStatement pSta = null;
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- StringBuffer sqlBuffer = null;
- for (int i = 0; i < list.size(); i++) {
-
- // 判断是否全部选择的标志位
- boolean flag = true;
- String ysr="",url="";
- String[] param = list.get(i);
-
- /* sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("SELECT nvl(t1.ysr,'0') ysr from tba01_ord_line t, sel_test t1 " +
- "where t.DEST_PCD = t1.stationcode and t.ORD_NO='"+param[4]+"' and t.ORD_SEQ='"+param[5]+"' and rownum=1");
- ArrayList xslist = (ArrayList) this.getDao("KgDao")
- .ExcuteQueryReturnList(sqlBuffer.toString(),
- new String[] {});
- for (int j = 0; j < xslist.size(); j++) {
- Map map1 = (Map) xslist.get(j);
- ysr = map1.get("ysr").toString();
-
- }
- if("0".equals(ysr))
- {
- UIJ030052 uij030052 = new UIJ030052();
- url="http://172.16.0.49/xg56/webservice/webWaybill/queryIsChecked/"+param[2];
- String retr=uij030052.jsonPost(url, param[2]);
- //retr="["+retr+"]";
- JSONObject jsonObject1 =JSONObject.parseObject(retr);
- JSONObject jsonObj = new JSONObject(jsonObject1);
- String RET_CODE = jsonObj.getString("RET_CODE");
- if("0".equals(RET_CODE))
- {
- cro.setV_errCode(new Integer(-1));
- cro.setV_errMsg("司机身份未核对!");
- return cro;
- }
-
- }
- */
-
-
-
-
- // 查询钢卷公共表中的SHIP_PROG_CD状态
- sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("select a.SHIP_PROG_CD from C_TBC02_COIL_COMM a where a.ship_dirno = '"
- + param[3] + "'\n");
- Statement sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sqlBuffer.toString());
- while (rs.next()) {
- String shipProgCd = rs.getString("SHIP_PROG_CD");
- if (!"03".equals(shipProgCd)) {
- flag = false;
- cro.setV_errCode(-1);
- cro.setV_errMsg("指示号"+param[2]+"已装车或明细已打印,请检查相应钢卷信息,再进行操作!!!");
- break;
- }
- }
- rs.close();
- sta.close();
- if (flag) {
- // 把车厢号和排车顺序号放入运输表,不改变运输表的状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update tbj01_dliv_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ALLOC_SEQ = ?,\n");
- sqlBuffer.append(" TRANS_CAR_NO = ? \n");
- sqlBuffer.append(" where DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.setString(2, param[1]);
- pSta.setString(3, param[2]);
- pSta.executeUpdate();
- pSta.close();
- // 更新钢卷公共表中的车辆号,排车顺序号
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" TRAIN_STEP_NO = ?,\n");
- sqlBuffer.append(" TRANS_CAR_NO = ?,\n");
- sqlBuffer.append(" SHIP_PROG_CD = '04'\n");
- sqlBuffer.append(" where DLIV_DIRNO =?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.setString(2, param[1]);
- pSta.setString(3, param[2]);
- pSta.executeUpdate();
- pSta.close();
- // 更新发货表发货状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update tbj01_ship_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ship_prog_cd = '04' \n");
- sqlBuffer.append(" where ship_dirno =?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[3]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- conn.commit();
- } catch (SQLException ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("装车失败,请检查钢卷信息后重新操作!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- /**
- * 待装车取消
- *
- * @param list
- * @return
- * @throws SQLException
- */
- public CoreReturnObject returnSHIPDIRCARLt(ArrayList<String[]> list)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- String[] param = null;
- Connection conn = null;
- Statement sta = null;
- PreparedStatement pSta = null;
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- for (int i = 0; i < list.size(); i++) {
- param = (String[]) list.get(i);
- boolean flag = true;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("select a.SHIP_PROG_CD from C_TBC02_COIL_COMM a where a.DLIV_DIRNO = '"
- + param[0] + "'\n");
- sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sqlBuffer.toString());
- while (rs.next()) {
- String shipProgCd = rs.getString("SHIP_PROG_CD");
- if (!"04".equals(shipProgCd)) {
- flag = false;
- break;
- }
- }
- rs.close();
- sta.close();
- if (flag) {
- // 取消放入运输表的车厢号和排车顺序号,不能改变运输表的状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("update tbj01_dliv_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ALLOC_SEQ = '',\n");
- sqlBuffer.append(" TRANS_CAR_NO = '',\n");
- sqlBuffer.append(" LANE_TP = '',\n");
- sqlBuffer.append(" ENTERANCE_SEQ = '' \n");
- sqlBuffer.append(" where DLIV_DIRNO = ? \n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.executeUpdate();
- pSta.close();
- // 取消钢卷公共表中的车辆号,排车顺序号
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" TRAIN_STEP_NO = '',\n");
- sqlBuffer.append(" TRANS_CAR_NO = '',\n");
- sqlBuffer.append(" SHIP_PROG_CD = '03' \n");
- sqlBuffer.append(" where DLIV_DIRNO =?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[0]);
- pSta.executeUpdate();
- pSta.close();
- // 更新发货表状态标志
- sqlBuffer = new StringBuffer();
- sqlBuffer.append(" update tbj01_ship_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ship_prog_cd = '03' \n");
- sqlBuffer.append(" where ship_dirno =?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[1]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- conn.commit();
- } catch (SQLException ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("取消装车失败,请重新操作!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- public CoreReturnObject queryTransPlanlt(String shipProgCd,
- String fromDate, String toDate, String shipDirNo, String curProgCd,
- String shipCompNm, String dlivTp, String laneTp, String enteranceSeq)
- throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT '' CHK,\n");
- sqlBuffer.append(" B.SHIP_DIRNO,\n");
- sqlBuffer.append(" B.GET_ON_PCD,\n");
- sqlBuffer.append(" B.DEST_PCD,\n");
- sqlBuffer
- .append(" (SELECT sm_cfnm FROM TBZ00_COMMCD WHERE LG_CD = 'A01009' AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,\n");
- sqlBuffer.append(" B.EXLV_LINE_CD,\n");
- sqlBuffer
- .append(" (SELECT x.SM_CFNM FROM TBZ00_COMMCD x WHERE LG_CD = 'A01015' AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,\n");
- sqlBuffer
- .append(" (select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, \n");
- sqlBuffer
- .append(" (select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,\n");
- sqlBuffer.append(" B.GET_OFF_PCD,\n");
- sqlBuffer.append(" B.DLIV_TP,\n");
- sqlBuffer.append(" D.SM_CFNM AS DLIV_TP_NM,\n");
- sqlBuffer.append(" B.SHIP_COMP_CD,\n");
- sqlBuffer.append(" C.SHIP_COMP_NM SM_CFNM,\n");
- sqlBuffer.append(" B.TRAIN_DLIVNO,\n");
- sqlBuffer.append(" B.DLIV_DIRNO,\n");
- sqlBuffer.append(" NVL(B.CNT,0) AS CNT,\n");
- sqlBuffer.append(" NVL(B.ACT_WGT,0) AS ACT_WGT,\n");
- sqlBuffer.append(" B.ALLOC_SEQ,\n");
- sqlBuffer.append(" B.TRANS_CAR_NO,\n");
- sqlBuffer.append(" B.LANE_TP,\n");
- sqlBuffer.append(" B.ENTERANCE_SEQ,\n");
- sqlBuffer.append(" B.ORD_NO,\n");
- sqlBuffer.append(" B.ORD_SEQ,\n");
- sqlBuffer.append(" B.SPEC_STL_GRD,\n");
- sqlBuffer.append(" B.INSTR_COIL_THK||'*'||B.INSTR_COIL_WTH T_W \n");
- sqlBuffer.append(" FROM(SELECT *\n");
- sqlBuffer.append(" FROM TBJ01_SHIP_DIR\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer
- .append(" AND SHIP_PROG_CD = ? -- SHIP_PROG_CD = '03' 发货指示状态\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" AND SHIP_DIRNO LIKE ?||'%') A \n");
- sqlBuffer
- .append(" ,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH \n");
- sqlBuffer.append(" FROM TBJ01_DLIV_DIR X\n");
- sqlBuffer.append(" ,(SELECT DLIV_DIRNO\n");
- sqlBuffer.append(" , COUNT(*) AS CNT\n");
- sqlBuffer.append(" , NVL(SUM(ACT_WGT),0) AS ACT_WGT\n");
- sqlBuffer.append(" , MAX(ORD_NO) AS ORD_NO\n");
- sqlBuffer.append(" , MAX(ORD_SEQ) AS ORD_SEQ\n");
- sqlBuffer.append(" , MAX(SPEC_STL_GRD) AS SPEC_STL_GRD\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_THK) AS INSTR_COIL_THK\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer
- .append(" AND CUR_PROG_CD like ?||'%' -- CUR_PROG_CD = 'SFB'(物料进度)\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" GROUP BY DLIV_DIRNO) Y\n");
- sqlBuffer.append(" WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO\n");
- sqlBuffer.append(" AND X.DLIV_TP LIKE ?||'%'\n");
- sqlBuffer.append(" AND NVL(X.LANE_TP,'*') LIKE ?||'%'\n");
- sqlBuffer.append(" AND NVL(X.ENTERANCE_SEQ,0) = NVL(?,0)) B\n");
- sqlBuffer.append(" ,(SELECT *\n");
- sqlBuffer.append(" FROM TBJ00_SHIP_COMP\n");
- sqlBuffer.append(" WHERE SHIP_COMP_CD LIKE ?||'%') C\n");
- sqlBuffer
- .append(" ,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D\n");
- sqlBuffer.append(" WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)\n");
- sqlBuffer.append(" AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)\n");
- sqlBuffer.append(" AND D.SM_CD = B.DLIV_TP \n");
- sqlBuffer.append(" AND B.ISDELETED = 0\n");
- sqlBuffer.append(" AND B.ISCANCEL = 0\n");
- sqlBuffer.append(" ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO\n");
- cro = this.getDao("KgDao").ExcuteQuery(
- sqlBuffer.toString(),
- new Object[] { shipProgCd, fromDate, toDate, shipDirNo,
- curProgCd, fromDate, toDate, dlivTp, laneTp,
- enteranceSeq, shipCompNm, dlivTp, });
- return cro;
- }
- /**
- * 查询下达排车计划时排车计划对应的钢卷信息
- *
- * @param dlivNo
- * @return
- */
- public CoreReturnObject queryPlanCoilLt(String dlivNo) throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("SELECT substr(A.DLIV_NO,5,8) DLIV_NO,A.COIL_NO,A.COIL_STEEL,A.COIL_HEIGHT||'*'||A.COIL_WIDTH T_W FROM TBJ01_DLIVNO_COIL A \n");
- sqlBuffer.append(" WHERE A.DLIV_NO = ? \n");
- sqlBuffer.append(" order by a.COIL_NO\n");
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { dlivNo });
- return cro;
- }
- /**
- * 查询待装车钢卷
- *
- * @param dlivTp
- * @return
- */
- public CoreReturnObject queryShipDir(String dlivTp) throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT '' CHK,\n");
- sqlBuffer.append(" A.OLD_SAMPL_NO,\n");
- sqlBuffer.append(" A.COIL_NO,\n");
- sqlBuffer
- .append(" DECODE(A.TOT_DEC_GRD,'1','合格','2','次品',' ') TOT_DEC_GRD,\n");
- sqlBuffer.append(" a.instr_coil_wth COIL_WTH,\n");
- sqlBuffer.append(" a.instr_coil_thk COIL_THK,\n");
- sqlBuffer.append(" a.ORD_NO,\n");
- sqlBuffer.append(" a.ORD_SEQ,\n");
- sqlBuffer.append(" a.spec_stl_grd,\n");
- sqlBuffer.append(" A.COIL_OUTDIA,\n");
- sqlBuffer.append(" NVL(A.ACT_WGT,0) ACT_WGT,\n");
- sqlBuffer.append(" NVL(A.CAL_WGT,0) CAL_WGT,\n");
- sqlBuffer.append(" A.CUR_LOAD_LOC,\n");
- sqlBuffer.append(" B.DEST_PCD,\n");
- sqlBuffer.append(" B.ALLOC_SEQ,\n");
- sqlBuffer.append(" B.TRANS_CAR_NO,\n");
- sqlBuffer.append(" B.DLIV_DIRNO,\n");
- sqlBuffer.append(" B.SHIP_DIRNO,\n");
- sqlBuffer
- .append(" (SELECT sm_cfnm FROM TBZ00_COMMCD WHERE LG_CD = 'A01009' AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,\n");
- sqlBuffer
- .append(" (select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.CUST_CD and REC_TP='01') CUST_NM, \n");
- sqlBuffer
- .append(" (select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = B.ORD_CUST_CD and REC_TP='02') ORD_NM,\n");
- sqlBuffer.append(" A.HCOLOUR_REM \n");
- sqlBuffer
- .append(" FROM C_TBC02_COIL_COMM A,TBJ01_DLIV_DIR B,TBJ01_SHIP_DIR C\n");
- sqlBuffer.append(" WHERE A.DLIV_DIRNO = B.DLIV_DIRNO\n");
- sqlBuffer.append(" AND B.SHIP_DIRNO = C.SHIP_DIRNO\n");
- sqlBuffer.append(" AND A.SHIP_PROG_CD = '04'\n");
- sqlBuffer.append(" AND B.DLIV_TP = ? \n");
- sqlBuffer.append(" ORDER BY B.ALLOC_SEQ\n");
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { dlivTp });
- return cro;
- }
- public CoreReturnObject queryShippingResultLt(String dlivTp,
- String curProgCd, String transCarNo, String dlivDirNo,
- String shipProgCd, String tranfDTime) throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT 'N' AS CHK\n");
- sqlBuffer.append(" , 'FALSE' CY\n");
- sqlBuffer.append(" , A.SHIP_PROG_CD\n");
- sqlBuffer.append(" , Z.SM_CFNM AS SHIP_PROG_NM\n");
- sqlBuffer.append(" , A.SHIP_DIRNO\n");
- sqlBuffer
- .append(" ,(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = (SELECT CUST_CD FROM TBA01_ORD_COMM WHERE ORD_NO = A.ORD_NO) and REC_TP='01') CUST_NM \n");
- sqlBuffer
- .append(" ,(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = C.ORD_CUST_CD and REC_TP='02') ORD_NM\n");
- sqlBuffer
- .append(" ,(select SM_CFNM FROM TBZ00_COMMCD WHERE SM_CD = A.ORD_USE_CD and LG_CD = 'A01007') SM_CFNM\n");
- sqlBuffer.append(" , A.ORD_USE_CD\n");
- sqlBuffer.append(" , A.SPEC_ABBSYM\n");
- //sqlBuffer.append(" , A.SPEC_STL_GRD\n");
- sqlBuffer.append(" , nvl((SELECT T.DDC_STL_GRD FROM tba01_ord_line T WHERE T.ORD_NO = A.ORD_NO AND T.ORD_SEQ = A.ORD_SEQ and rownum = 1), A.SPEC_STL_GRD) SPEC_STL_GRD \n");
- sqlBuffer.append(" , A.DLIV_DIRNO\n");
- sqlBuffer.append(" , C.DLIV_TP\n");
- sqlBuffer.append(" , C.DLIV_TP_DESC\n");
- sqlBuffer.append(" , C.SHIP_COMP_CD\n");
- sqlBuffer.append(" , NVL(C.SHIP_COMP_NM,C.SHIP_COMP_CD) SHIP_COMP_NM\n");
- sqlBuffer.append(" , C.TRANS_CAR_NO\n");
- sqlBuffer.append(" , C.GET_ON_PCD\n");
- sqlBuffer.append(" , C.DEST_PCD\n");
- sqlBuffer.append(" , C.DEST_PCD_DESC\n");
- sqlBuffer.append(" , C.EXLV_LINE_CD\n");
- sqlBuffer.append(" , C.EXLV_LINE_CD_DESC\n");
- sqlBuffer.append(" , C.GET_OFF_PCD\n");
- sqlBuffer.append(" , C.BY_SEA_YN\n");
- sqlBuffer.append(" , C.ARRIVAL_CD \n");
- sqlBuffer.append(" , C.ARRIVAL_CD_DESC\n");
- sqlBuffer.append(" , A.OLD_SAMPL_NO OLD_SAMPL_NO\n");
- sqlBuffer.append(" , A.COIL_NO \n");
- sqlBuffer.append(" , A.TOT_DEC_GRD \n");
- sqlBuffer
- .append(" , DECODE(A.TOT_DEC_GRD,'1','合格','2','不合格',null) as TOT_DEC_GRD_DESC\n");
- sqlBuffer.append(" , NVL(A.ACT_WGT,0) COIL_WGT\n");
- sqlBuffer.append(" , NVL(A.CAL_WGT,0) CAL_WGT\n");
- sqlBuffer.append(" , A.COIL_OUTDIA\n");
- sqlBuffer.append(" , A.SHIP_INVNO\n");
- sqlBuffer.append(" , A.CRET_NO\n");
- sqlBuffer
- .append(" , NVL(TO_CHAR(TO_DATE(A.TRNF_DTIME,'YYYYMMDDHH24MISS'),'YYYY-MM-DD HH24:MI:SS'),'-') AS TRNF_DTIME\n");
- sqlBuffer.append(" ,'3' AS COIL_STAT\n");
- sqlBuffer.append(" ,'DFF' AS CUR_PROG_CD\n");
- sqlBuffer.append(" ,'UIJ050010' AS CUR_PROG_CD_PGM\n");
- sqlBuffer.append(" , A.CUR_PROG_CD AS BEF_PROG_CD\n");
- sqlBuffer.append(" , A.CUR_PROG_CD_DTIME AS BEF_PROG_CD_DTIME\n");
- sqlBuffer.append(" , A.CUR_PROG_CD_PGM AS BEF_PROG_CD_PGM\n");
- sqlBuffer.append(" , A.ORD_NO, A.ORD_SEQ\n");
- sqlBuffer.append(" ,A.MATLQLTY_DEC_GRD \n");
- sqlBuffer
- .append(" , DECODE(A.MATLQLTY_DEC_GRD,'1','合格','2','不合格',null) as MATLQLTY_DEC_GRD_DESC\n");
- sqlBuffer.append(" , A.COIL_THK||'*'||COIL_WTH C_W\n");
- sqlBuffer.append(" , A.INSTR_COIL_THK||'*'||A.INSTR_COIL_WTH T_W\n");
- sqlBuffer.append(" , TO_CHAR(SYSDATE,'YYYY-MM-DD') SYS_TIME\n");
- sqlBuffer.append(" , A.CZD_WGT\n");
- sqlBuffer
- .append(" , DECODE(A.TRNF_SHIFT,'1','早','2','中','3','晚') TRNF_SHIFT\n");
- sqlBuffer
- .append(" , DECODE(A.TRNF_GROUP,'A','甲','B','乙','C','丙','D','丁') TRNF_GROUP\n");
- sqlBuffer.append(" , A.TRNF_USE_TIME\n");
- sqlBuffer.append(" ,A.HCOLOUR_REM\n");
- sqlBuffer.append(" ,A.SLAB_NO --板加添加,以下相同\n");
- sqlBuffer
- .append(" ,(SELECT T.DEL_TO_DATE FROM TBE02_ORD_PRC T WHERE T.ORD_NO = A.ORD_NO AND T.ORD_SEQ = A.ORD_SEQ) DEVLMT_DTIME\n");
- sqlBuffer.append(" ,A.INSTR_COIL_THK\n");
- sqlBuffer.append(" ,A.INSTR_COIL_WTH\n");
- sqlBuffer.append(" ,A.INSTR_COIL_LEN\n");
- sqlBuffer.append(" ,A.INSTR_COIL_OUTDIA\n");
- sqlBuffer.append(" ,A.INSTR_COIL_INDIA\n");
- sqlBuffer.append(" ,A.INSTR_COIL_WGT\n");
- sqlBuffer.append(" ,C.SM_CD\n");
- sqlBuffer
- .append(" ,(select CUST_CD ORD_CD FROM TBZ00_CUSTOMER WHERE CUST_CD = C.ORD_CUST_CD and REC_TP='02') ORD_CD \n");
- sqlBuffer.append(" ,A.COIL_LEN\n");
- sqlBuffer.append(" ,A.COIL_INDIA\n");
- sqlBuffer.append(" ,A.COIL_THK\n");
- sqlBuffer.append(" ,A.COIL_WTH\n");
- sqlBuffer.append(" ,A.PRODNM_CD\n");
- sqlBuffer.append(" ,A.PATH_MILL_CD\n");
- sqlBuffer.append(" ,A.INGR_DEC_DTIME --成份判定\n");
- sqlBuffer.append(" ,A.MATLQLTY_DEC_DTIME --材质判定\n");
- sqlBuffer.append(" ,A.EXTSHAPE_DEC_DTIME --外观判定\n");
- sqlBuffer.append(" ,A.TOT_DEC_DTIME --综合判定时间\n");
- sqlBuffer.append(" ,A.INGR_DEC_GRD\n");
- sqlBuffer.append(" ,A.SIZE_DEC_RST\n");
- sqlBuffer.append(" ,A.EXTSHAPE_DEC_GRD\n");
- sqlBuffer.append(" ,A.WGT_DEC_RST\n");
- sqlBuffer.append(" ,A.EXTSHAPE_QUALITY\n");
-
- //新加字段 包装等级
- sqlBuffer.append(",(SELECT C.SM_CFNM FROM TBZ00_COMMCD C WHERE C.LG_CD = 'A01010' AND SM_CD = A.PACKAGE_LEVEL AND ROWNUM=1) PACKING_GRADE \n");
-
- sqlBuffer.append(" ,A.CRK_CD3\n");
- sqlBuffer.append(" ,A.CRK_CD1\n");
- sqlBuffer.append(" ,A.CRK_CD2\n");
- sqlBuffer.append(" ,A.CRK_CD3\n");
- sqlBuffer.append(" ,A.CRK_CD4\n");
- sqlBuffer.append(" ,A.CRK_CD5\n");
- // sqlBuffer.append("
- // ,DECODE(NVL(A.PACKAGE_LEVEL,1),'2','22','3','110','4','120','0')
- // PKG_WGT\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM A\n");
- sqlBuffer.append(" , TBJ01_SHIP_DIR B\n");
- sqlBuffer
- .append(" ,(SELECT X.*, Y.SHIP_COMP_NM, Z.SM_CFNM AS DLIV_TP_DESC\n");
- sqlBuffer.append(" , Z1.SM_CFNM AS DEST_PCD_DESC\n");
- sqlBuffer.append(" , Z2.SM_CFNM AS EXLV_LINE_CD_DESC\n");
- sqlBuffer.append(" , Z3.SM_CFNM AS ARRIVAL_CD_DESC\n");
- sqlBuffer.append(" , Z1.SM_CD --板加 目的地代码\n");
- sqlBuffer.append(" FROM TBJ01_DLIV_DIR X\n");
- sqlBuffer.append(" , TBJ00_SHIP_COMP Y\n");
- sqlBuffer
- .append(" ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01012') Z\n");
- sqlBuffer
- .append(" ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01009') Z1\n");
- sqlBuffer
- .append(" ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01015') Z2 \n");
- sqlBuffer
- .append(" ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'A01009') Z3\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer.append(" AND X.SHIP_COMP_CD = Y.SHIP_COMP_CD(+)\n");
- sqlBuffer.append(" AND X.DLIV_TP = Z.SM_CD(+)\n");
- sqlBuffer.append(" AND X.DEST_PCD = Z1.SM_CD(+)\n");
- sqlBuffer.append(" AND X.EXLV_LINE_CD = Z2.SM_CD(+)\n");
- sqlBuffer.append(" AND X.ARRIVAL_CD = Z3.SM_CD(+)\n");
- sqlBuffer.append(" AND X.DLIV_TP LIKE ?||'%') C\n");
- sqlBuffer
- .append(" ,(SELECT * FROM TBZ00_COMMCD WHERE LG_CD = 'J01005' AND SM_CD IN ('05','06','07','08','09')) Z\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer.append(" AND A.SHIP_DIRNO = B.SHIP_DIRNO\n");
- sqlBuffer.append(" AND A.DLIV_DIRNO = C.DLIV_DIRNO\n");
- sqlBuffer.append(" AND A.SHIP_PROG_CD = Z.SM_CD(+)\n");
- sqlBuffer.append(" AND A.SHIP_PROG_CD IN ('06','07','08')\n");
- sqlBuffer.append(" AND A.CUR_PROG_CD LIKE ?||'%'\n");
- sqlBuffer.append(" AND A.TRANS_CAR_NO||'&' LIKE ?||'%'\n");
- sqlBuffer.append(" AND A.DLIV_DIRNO LIKE ?||'%'\n");
- sqlBuffer.append(" AND A.SHIP_PROG_CD LIKE ?||'%'\n");
- sqlBuffer.append(" AND A.TRNF_DTIME||'&' LIKE ?||'%'\n");
- sqlBuffer.append(" ORDER BY A.SHIP_DIRNO, A.DLIV_DIRNO\n");
- cro = this.getDao("KgDao").ExcuteQuery(
- sqlBuffer.toString(),
- new Object[] { dlivTp, curProgCd, transCarNo, dlivDirNo,
- shipProgCd, tranfDTime });
- System.out.println(cro);
- return cro;
- }
- /**
- * 生成发货实绩
- *
- * @param trnfShift
- * @param trnfGroup
- * @param trnfRegId
- * @param trnfDTime
- * @param czdWgt
- * @param params
- * @return
- * @throws SQLException
- */
- public CoreReturnObject saveShippingResultLt(String trnfShift,
- String trnfGroup, String trnfRegId, String trnfDTime,
- String czdWgt, ArrayList<String[]> params) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- Statement sta = null;
- ArrayList<String[]> params1 = new ArrayList<String[]>();
- ArrayList<String> list=new ArrayList<String>();
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- // 修改钢卷发运状态
- updateCoilProgStatus(conn,trnfShift, trnfGroup, trnfRegId, trnfDTime,
- params);
- // 调用进程管理进程整理
- // 修改钢卷表发运状态及发运相关信息 、发运表发运状态
- updateShipProgStatus(conn,czdWgt, params);
-
- // for (int i = 0; i < params.size(); i++) {
- // String[] param = params.get(i);
- // String dlno=param[1];
- // String sql2 = "select * from TBB01_CARGOCN_DATA a where DLIV_DIRNO = '"
- // + param[1] + "' ";
- // sta = conn.createStatement();
- // ResultSet rs = sta.executeQuery(sql2);
- // while (rs.next()) {
- // list.add(i, dlno);
- // String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_01.delete");
- // this.getDao("KgDao").ExcuteNonQuery(sql4,new Object[] { dlno });
- // }
- // rs.close();
- // sta.close();
- // }
- // //保存发货明细状态的同时把钢卷数据保存到货运中国中间表去
- // saveCargocnData(params,czdWgt,trnfDTime,list);
- conn.commit();
- } catch (Exception ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("发货实绩生成失败,请重新操作!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- /**
- * 修改钢卷发运状态
- *
- * @param trnfShift
- * @param trnfGroup
- * @param trnfRegId
- * @param trnfDTime
- * @param params
- * @return
- * @throws SQLException
- */
- private void updateCoilProgStatus(Connection conn,String trnfShift, String trnfGroup,
- String trnfRegId, String trnfDTime, ArrayList<String[]> params)
- throws SQLException {
- PreparedStatement pSta = null;
- String flag=null;
- String trnftime ;
- Date d = new Date();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
- trnftime = sdf.format(d);
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- // 更新钢卷公共表发货状态
- StringBuffer updSql1 = new StringBuffer();
- updSql1.append("UPDATE C_TBC02_COIL_COMM\n");
- updSql1.append(" SET COIL_STAT = ?\n");
- updSql1.append(" , CUR_PROG_CD = ?\n");
- updSql1
- .append(" , CUR_PROG_CD_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')\n");
- updSql1.append(" , CUR_PROG_CD_PGM = ?\n");
- updSql1.append(" , BEF_PROG_CD = ?\n");
- updSql1.append(" , BEF_PROG_CD_DTIME = ?\n");
- updSql1.append(" , BEF_PROG_CD_PGM = ?\n");
- updSql1.append(" , TRANS_CAR_NO = ?\n");
- updSql1.append(" , TRNF_SHIFT = ?\n");
- updSql1.append(" , TRNF_GROUP = ?\n");
- updSql1.append(" , TRNF_REG = ?\n");
- updSql1.append(" , TRNF_DTIME = ?\n");
- updSql1
- .append(" , OUT_YARD_KIND = decode(substr(nvl(BEF_LOAD_LOC,'0'),0,1),'3','2','4','2','5','3',decode(length(OLD_SAMPL_NO),17,'3','2'))\n");
- updSql1.append(" --记录修改前重量\n");
- // updSql1.append(" , BEF_ACT_WGT = ACT_WGT\n");
- updSql1.append(" , ACT_WGT = ?\n");
- updSql1.append(" WHERE OLD_SAMPL_NO = ?\n");
- pSta = conn.prepareStatement(updSql1.toString());
- pSta.setString(1, param[25]);
- pSta.setString(2, param[26]);
- pSta.setString(3, param[27]);
- pSta.setString(4, param[19]);
- pSta.setString(5, param[20]);
- pSta.setString(6, param[21]);
- pSta.setString(7, param[2]);
- pSta.setString(8,trnfShift);
- pSta.setString(9, trnfGroup);
- pSta.setString(10, trnfRegId);
- pSta.setString(11, trnfDTime);
- pSta.setString(12, param[12]);
- //pSta.setString(13, trnftime);
- pSta.setString(13, param[10]);
- pSta.executeUpdate();
- pSta.close();
-
- //保持同一指示号下面所有卷操作时间一致 20190411
- StringBuffer updSql3 = new StringBuffer();
- updSql3.append("UPDATE C_TBC02_COIL_COMM\n");
- updSql3.append(" SET TRNF_USE_TIME = ?\n");
- updSql3.append(" WHERE DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(updSql3.toString());
- pSta.setString(1, trnftime);
- pSta.setString(2, param[1]);
- pSta.executeUpdate();
- pSta.close();
-
-
- //添加记录
- String sql = XmlSqlParsersFactory.getSql("UIL010020_02_CALL.CALL");
- if(!param[10].substring(14,15).equals("0")){
- flag="C";
- }
- else{
- flag="L";
- }
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1,flag);
- cstm.setString(2,param[10]);
- cstm.setString(3,trnfRegId);
- cstm.setString(4,"明细打印");
- cstm.setString(5,"UIJ050030");
- cstm.setString(6,"明细打印后");
- cstm.registerOutParameter(7,Types.VARCHAR);
- cstm.execute();
- cstm.close();
- // 更新发运表车辆号
- StringBuffer updSql2 = new StringBuffer();
- updSql2.append("UPDATE tbj01_dliv_dir\n");
- updSql2.append(" SET TRANS_CAR_NO = ?\n");
- updSql2.append(" WHERE DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(updSql2.toString());
- pSta.setString(1, param[2]);
- pSta.setString(2, param[1]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- /**
- * 修改钢卷表发运状态及发运相关信息
- *
- * @param czdWgt
- * @param params
- * @throws SQLException
- */
- private void updateShipProgStatus(Connection conn,String czdWgt, ArrayList<String[]> params)
- throws SQLException {
- PreparedStatement pSta = null;
- Statement sta = null;
- //double dczdWgt = new Double(czdWgt);
- //dczdWgt=dczdWgt * params.size();
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- // 更新钢卷公共表发运状态及发运相关信息
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" SET SHIP_PROG_CD = ?\n");
- sqlBuffer.append(" ,TRANS_CAR_NO = ?\n");
- sqlBuffer.append(" ,ACT_WGT = ?\n");
- sqlBuffer.append(" ,CZD_WGT = ? \n");
- sqlBuffer.append(" WHERE OLD_SAMPL_NO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[17]);
- pSta.setString(2, param[2]);
- pSta.setString(3, param[12]);
- pSta.setString(4, czdWgt);
- pSta.setString(5, param[10]);
- pSta.executeUpdate();
- pSta.close();
- }
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- // 查询钢卷公共表中SHIP_PROG_CD状态,看是否全部改变
- boolean flag = true;
- String sql = "select a.SHIP_PROG_CD from C_TBC02_COIL_COMM a where a.ship_dirno = '"
- + param[0] + "' ";
- sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sql);
- while (rs.next()) {
- String shipProgCd = rs.getString("SHIP_PROG_CD");
- //&& !"09".equals(shipProgCd)
- if (!"07".equals(shipProgCd) && !"08".equals(shipProgCd)
- ) {
- flag = false;
- }
- }
- rs.close();
- sta.close();
- // 判断同一发货指示下的钢卷是否全部保存,如果没有的话不能改变发货指示的状态
- if (flag) {
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_SHIP_DIR\n");
- sqlBuffer.append(" SET SHIP_PROG_CD = ?\n");
- sqlBuffer.append(" WHERE SHIP_DIRNO = ?\n");
-
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[17]);
- pSta.setString(2, param[0]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- }
- /**
- * 保存发货明细状态的同时把钢卷数据保存到货运中国中间表去
- * @param params
-
- public void saveCargocnData(ArrayList<String[]> params,String czdWgt,String trnfDTime,ArrayList<String> list) {
- try {
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- String sql3 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.select");
- String flat="1";
- ArrayList coilList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(sql3,new Object[]{param[10]});
- //若表中存在该钢卷则删除
- if(null != coilList && 0 != coilList.size()){
- String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.delete");
- this.getDao("KgDao").ExcuteNonQuery(sql4, new Object[]{param[10]});
- flat="0";
- }
- String sql2 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.insert");
- Object[] param2 = new Object[25];
- param2[0] = param[10]; //真实钢卷号
- param2[1] = param[1]; //发运指示号
- param2[2] = param[18]; //牌号
- param2[3] = param[2]; //车牌号
- param2[4] = param[12]; //重量
- param2[5] = trnfDTime; //发货时间
- param2[6] = param[33]; //收货单位
- param2[7] = param[34]; //到站
- param2[8] = param[32]; //合同单位
- String SHIP_COMP = param[35];
- if(StringUtils.isEmpty(SHIP_COMP))
- SHIP_COMP = param[24];
- param2[9] = SHIP_COMP; //运输公司
- param2[10] = param[36]; //产品名称
- param2[11] = "新余市"; //发货城市
- param2[12] = "冷轧厂"; //发货地点
- param2[13] = 1; //订单类型
- //通过到站地点从产销数据库查收货城市、收货人、电话
- String receiveCity = param[34];
- String dlivno = param[1];
- // String sql5 = "SELECT CX.UNLOADDOCK,CX.SHR,CX.SHRDH FROM SEL_STATIONINFO@XGCX CX WHERE CX.STATIONNAME LIKE '"
- // + receiveCity + "%' ";
- String sql5="select a.UNLOADDOCK, a.SHR, a.SHRDH from sel_stationinfo a where a.STATIONCODE = (select DEST_PCD from tbj01_dliv_dir b where b.DLIV_DIRNO='"+dlivno+"' and rownum = 1)";
- String receiveNM = "";
- String receivePhone = "";
- ResultSet rs = this.getDao("KgDao").ExceuteQueryForResultSet(sql5);
- if (rs.next()) {
- receiveNM = rs.getString("SHR"); //收货人
- receivePhone = rs.getString("SHRDH"); //收货人电话
- if(StringUtils.isEmpty(receiveNM))
- receiveNM="";
- if(StringUtils.isEmpty(receivePhone))
- receivePhone="";
- if(!StringUtils.isEmpty(rs.getString("UNLOADDOCK")))
- receiveCity = rs.getString("UNLOADDOCK"); //收货城市
- }
- this.getDao("KgDao").closeRs(rs);
- param2[14] = receiveCity; //收货城市
- param2[15] = receiveNM; //收货联系人
- param2[16] = receivePhone; //收货联系人电话
- param2[17] = "6"; //未发送状态
- param2[18] = "LZMES_UIJ050010"; //程序id
- param2[19] = param[28]; //操作人
- param2[20]= param[29]; // 运输方式
- param2[21]= "A"; // 修改标示
- param2[22]= param[22]; // 合同号
- String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.dlivselect");
- ArrayList dlivList = (ArrayList) this.getDao("KgDao").ExcuteQueryReturnList(sql4,new Object[]{param[1]});
- //若表中存在该钢卷则删除
- if(null != dlivList && 0 != dlivList.size())
- {
- param2[23]="0";
- }
- else
- {
- param2[23]= czdWgt; // 草支垫扣重
- }
- param2[24]= param[37]; // 包装扣重
- this.getDao("KgDao").ExcuteNonQuery(sql2, param2);
- if("0".equals(flat)){
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_01.update");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{param2[1]});
- }
- }
- if(!list.isEmpty())
- {
- for (int i = 0; i < list.size(); i++) {
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_02.update");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{list.get(i)});
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- */
- public void saveCargocnData(Connection conn,ArrayList<String[]> params,String czdWgt,String trnfDTime,ArrayList<String> list) {
- try {
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
-
-
- Double wgt=Double.parseDouble(param[12]);
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_12.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, "1");//标志
- cstm.setString(2, param[10]);
- cstm.setString(3, param[1]);
- cstm.setString(4, param[18]);
- cstm.setString(5, param[2]);
- cstm.setString(6, wgt.toString());
- cstm.setString(7, trnfDTime);
- cstm.setString(8, czdWgt);
- cstm.setString(9, param[37]);
- cstm.setString(10, "L");
- cstm.setString(11, param[28]);
- cstm.execute();
- cstm.close();
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
-
- /**
- * 打印发货明细后修改相关状态
- *
- * @param trnfShift
- * @param trnfGroup
- * @param trnfRegId
- * @param trnfDTime
- * @param czdWgt
- * @param params
- * @return
- * @throws SQLException
- */
- public CoreReturnObject printShippingResultLt(String trnfShift,
- String trnfGroup, String trnfRegId, String trnfDTime,
- String czdWgt, ArrayList<String[]> params) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- ArrayList<String[]> params1 = new ArrayList<String[]>();
- Connection conn = null;
- Statement sta = null;
- int a=0;
- ArrayList<String> list=new ArrayList<String>();
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- UIJ030060 uij030060 = new UIJ030060();
- updateInvoiceInfoOfDelivery(conn,params);
- // 修改钢卷表发运状态及发运相关信息 、发运表发运状态
- //updateShipProgStatus(conn, czdWgt, params);
- updateShipProgStatusOfPrint(conn,czdWgt, params);
-
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- String coilno=param[10];
- //调用存货异动点存储过程
- ProduceFactory PD= new ProduceFactory();
- //PD.ErpDataCover("LTCOIL",coilno,"11AC","1","O",trnfRegId,"连退综判");
- PD.ErpDataCover("LTCOIL",coilno,"69A","1","O",trnfRegId,"连退发货");
- }
-
- /*
- //保存发货明细状态的同时把钢卷数据保存到货运中国中间表去
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- String coilno=param[10];
- String sql2 = "select * from TBB01_CARGOCN_DATA a where COIL_NO = '"
- + param[10] + "' ";
- sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sql2);
- while (rs.next()) {
- list.add(a, coilno);
- if(a==0)
- {
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_cargocn_03.update");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{param[1]});
- }
- String sql4 = XmlSqlParsersFactory.getSql("UIJ030030_cargocn.delete");
- this.getDao("KgDao").ExcuteNonQuery(sql4,new Object[] { coilno });
- a++;
- }
- rs.close();
- sta.close();
- }
- */
-
- //数据发送到优特钢
- // for (int i = 0; i < params.size(); i++) {
- // String[] param = params.get(i);
- //
- // if("20180703S115".equals(param[1])) {
- // params1.add(params.get(i));
- // }
- // }
- // uij030060.saveYouTeTbcData(params1);
-
- saveCargocnData(conn,params,czdWgt,trnfDTime,list);
- //数据发送到铁前
- addshipdetail(conn,czdWgt,params);
- //数据发送到中冶新材
- addzycoil(conn,params);
- conn.commit();
- } catch (Exception ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("发货实绩生成失败,请重新操作!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- private void addshipdetail(Connection conn,String czdWgt,ArrayList<String[]> params)
- throws SQLException {
- //boolean flag = true;
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- String rtMsg = "";
-
- Double wgt=Double.parseDouble(param[12])/1000;
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_09.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, "1");//标志
- cstm.setString(2, param[1]);
- cstm.setString(3, param[2]);
- cstm.setString(4, param[18]);
- cstm.setString(5, param[30]);
- cstm.setString(6, "1");
- cstm.setString(7, wgt.toString());
- cstm.setString(8, czdWgt);
- cstm.setString(9, "4001LT1");
- cstm.setString(10, "连退线");
- //cstm.registerOutParameter(10, java.sql.Types.VARCHAR);
- cstm.execute();
- //rtMsg = cstm.getString(10);
- cstm.close();
- // return rtMsg;
- }
-
- }
- //发送中冶新材数据 20150710
- private void addzycoil(Connection conn,ArrayList<String[]> params)
- throws SQLException {
- //boolean flag = true;
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- String rtMsg = "";
- if(param[31].equals("224902")||param[31].equals("243187")){ //中冶新材客户代码
-
- String sql = XmlSqlParsersFactory.getSql("UIJ030030_11.CALL");
- CallableStatement cstm = conn.prepareCall(sql);
- cstm.setString(1, param[10]);//钢卷号
- cstm.execute();
- cstm.close();
- }
-
- }
-
- }
- private void updateInvoiceInfoOfDelivery(Connection conn,ArrayList<String[]> params)
- throws SQLException {
- PreparedStatement pSta = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_DLIV_DIR\n");
- sqlBuffer.append(" SET TRANS_CAR_NO = ?\n");
- sqlBuffer.append(" , INV_PRNCNT = NVL(INV_PRNCNT,0) + 1\n");
- sqlBuffer.append(" WHERE DLIV_DIRNO = ?\n");
- String dlivDirNo = "";
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- if (i > 0) {
- if (dlivDirNo.equals(param[1])) {
- continue;
- } else {
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[2]);
- pSta.setString(2, param[1]);
- pSta.executeUpdate();
- pSta.close();
- }
- } else {
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[2]);
- pSta.setString(2, param[1]);
- pSta.executeUpdate();
- pSta.close();
- }
- dlivDirNo = param[1];
- }
- }
- /**
- * 修改钢卷表发运状态及发运相关信息
- *
- * @param czdWgt
- * @param params
- * @throws SQLException
- */
- private void updateShipProgStatusOfPrint(Connection conn,String czdWgt,
- ArrayList<String[]> params) throws SQLException {
- PreparedStatement pSta = null;
- Statement sta = null;
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- // 更新钢卷公共表发运状态及发运相关信息
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" SET SHIP_PROG_CD = ?\n");
- sqlBuffer.append(" ,TRANS_CAR_NO = ?\n");
- sqlBuffer.append(" ,ACT_WGT = ?\n");
- sqlBuffer.append(" ,CZD_WGT = ? \n");
- sqlBuffer.append(" WHERE OLD_SAMPL_NO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[17]);
- pSta.setString(2, param[2]);
- pSta.setString(3, param[12]);
- pSta.setString(4, czdWgt);
- pSta.setString(5, param[10]);
- pSta.executeUpdate();
- pSta.close();
- }
- for (int i = 0; i < params.size(); i++) {
- String[] param = params.get(i);
- // 查询钢卷公共表中SHIP_PROG_CD状态,看是否全部改变
- boolean flag = true;
- String sql = "select a.SHIP_PROG_CD from C_TBC02_COIL_COMM a where a.ship_dirno = '"
- + param[0] + "' ";
- sta = conn.createStatement();
- ResultSet rs = sta.executeQuery(sql);
- while (rs.next()) {
- String shipProgCd = rs.getString("SHIP_PROG_CD");
- // && !"09".equals(shipProgCd)
- if (!"08".equals(shipProgCd)) {
- flag = false;
- }
- }
- rs.close();
- sta.close();
- // 判断同一发货指示下的钢卷是否全部保存,如果没有的话不能改变发货指示的状态
- if (flag) {
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_SHIP_DIR\n");
- sqlBuffer.append(" SET SHIP_PROG_CD = ?\n");
- sqlBuffer.append(" WHERE SHIP_DIRNO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, param[17]);
- pSta.setString(2, param[0]);
- pSta.executeUpdate();
- pSta.close();
- }
- }
- }
- /**
- * 查询发运计划信息
- *
- * @param fromDate
- * @param toDate
- * @param dlivTp
- * @param dlivDirNo
- * @param isCancel
- * @return
- * @throws SQLException
- */
- public CoreReturnObject queryDlivPlanLt(String fromDate, String toDate,
- String dlivTp, String dlivDirNo, String isCancel)
- throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT '' CHK,\n");
- sqlBuffer.append(" B.SHIP_DIRNO,\n");
- sqlBuffer.append(" B.GET_ON_PCD,\n");
- sqlBuffer.append(" B.DEST_PCD,\n");
- sqlBuffer
- .append(" (SELECT sm_cfnm FROM TBZ00_COMMCD WHERE LG_CD = 'A01009' AND b.DEST_PCD = SM_CD) DEST_PCD_DESC,\n");
- sqlBuffer.append(" B.EXLV_LINE_CD,\n");
- sqlBuffer
- .append(" (SELECT x.SM_CFNM FROM TBZ00_COMMCD x WHERE LG_CD = 'A01015' AND b.EXLV_LINE_CD = SM_CD) EXLV_LINE_CD_DESC,\n");
- sqlBuffer
- .append(" (select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.CUST_CD and REC_TP='01') CUST_NM, \n");
- sqlBuffer
- .append(" (select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = b.ORD_CUST_CD and REC_TP='02') ORD_NM,\n");
- sqlBuffer.append(" B.GET_OFF_PCD,\n");
- // sqlBuffer.append(" B.DLIV_TP,\n");
- sqlBuffer.append(" D.SM_CFNM AS DLIV_TP_NM,\n");
- // sqlBuffer.append(" B.SHIP_COMP_CD,\n");
- sqlBuffer.append(" C.SHIP_COMP_NM SM_CFNM,\n");
- sqlBuffer.append(" B.TRAIN_DLIVNO,\n");
- sqlBuffer.append(" B.DLIV_DIRNO,\n");
- sqlBuffer.append(" NVL(B.CNT,0) AS CNT,\n");
- sqlBuffer.append(" NVL(B.ACT_WGT,0) AS ACT_WGT,\n");
- sqlBuffer.append(" B.ALLOC_SEQ,\n");
- sqlBuffer.append(" B.TRANS_CAR_NO,\n");
- sqlBuffer.append(" B.LANE_TP,\n");
- sqlBuffer.append(" B.ENTERANCE_SEQ,\n");
- sqlBuffer.append(" B.ORD_NO,\n");
- sqlBuffer.append(" B.ORD_SEQ,\n");
- sqlBuffer.append(" B.SPEC_STL_GRD,\n");
- sqlBuffer.append(" B.INSTR_COIL_THK||'*'||B.INSTR_COIL_WTH T_W,\n");
- sqlBuffer.append(" ISCANCEL \n");
- sqlBuffer.append(" FROM(SELECT *\n");
- sqlBuffer.append(" FROM TBJ01_SHIP_DIR\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer.append(" AND SHIP_PROG_CD = '03'\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" AND SHIP_DIRNO LIKE ''||'%') A \n");
- sqlBuffer
- .append(" ,(SELECT X.*, Y.CNT CNT, Y.ACT_WGT ACT_WGT,Y.ORD_NO,Y.ORD_SEQ,Y.SPEC_STL_GRD,Y.INSTR_COIL_THK,Y.INSTR_COIL_WTH \n");
- sqlBuffer.append(" FROM TBJ01_DLIV_DIR X\n");
- sqlBuffer.append(" ,(SELECT DLIV_DIRNO\n");
- sqlBuffer.append(" , COUNT(*) AS CNT\n");
- sqlBuffer.append(" , NVL(SUM(ACT_WGT),0) AS ACT_WGT\n");
- sqlBuffer.append(" , MAX(ORD_NO) AS ORD_NO\n");
- sqlBuffer.append(" , MAX(ORD_SEQ) AS ORD_SEQ\n");
- sqlBuffer.append(" , MAX(SPEC_STL_GRD) AS SPEC_STL_GRD\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_THK) AS INSTR_COIL_THK\n");
- sqlBuffer.append(" , MAX(INSTR_COIL_WTH) AS INSTR_COIL_WTH\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM\n");
- sqlBuffer.append(" WHERE 1 = 1\n");
- sqlBuffer.append(" AND CUR_PROG_CD like 'DFB'||'%'\n");
- sqlBuffer
- .append(" AND SHIP_DIRNO BETWEEN NVL(?,'00000101')||'0000' AND NVL(?,'99991231')||'9999'\n");
- sqlBuffer.append(" GROUP BY DLIV_DIRNO) Y\n");
- sqlBuffer.append(" WHERE X.DLIV_DIRNO = Y.DLIV_DIRNO\n");
- sqlBuffer.append(" AND X.DLIV_TP LIKE ?||'%'\n");
- sqlBuffer.append(" AND NVL(X.LANE_TP,'*') LIKE ''||'%'\n");
- sqlBuffer.append(" AND NVL(X.ENTERANCE_SEQ,0) = NVL('',0)) B\n");
- sqlBuffer.append(" ,(SELECT *\n");
- sqlBuffer.append(" FROM TBJ00_SHIP_COMP\n");
- sqlBuffer.append(" WHERE SHIP_COMP_CD LIKE ''||'%') C\n");
- sqlBuffer
- .append(" ,(SELECT SM_CD, SM_CFNM FROM TBZ00_COMMCD WHERE LG_CD = 'A01012' AND SM_CD LIKE ?||'%') D\n");
- sqlBuffer.append(" WHERE A.SHIP_DIRNO = B.SHIP_DIRNO(+)\n");
- sqlBuffer.append(" AND B.SHIP_COMP_CD = C.SHIP_COMP_CD(+)\n");
- sqlBuffer.append(" AND D.SM_CD = B.DLIV_TP \n");
- sqlBuffer.append(" AND B.ISDELETED = 0\n");
- sqlBuffer.append(" AND B.ISCANCEL = ?\n");
- sqlBuffer.append(" AND B.DLIV_DIRNO LIKE ?||'%'\n");
- sqlBuffer.append(" ORDER BY B.ALLOC_SEQ,B.DLIV_DIRNO \n");
- cro = this.getDao("KgDao").ExcuteQuery(
- sqlBuffer.toString(),
- new Object[] { fromDate, toDate, fromDate, toDate, dlivTp,
- dlivTp, isCancel, dlivDirNo });
- return cro;
- }
- /**
- * 发运计划回退
- *
- * @param regId
- * @param params
- * @return
- * @throws SQLException
- */
- public CoreReturnObject returnShipDirLt(String regId,
- ArrayList<String> params) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("update TBJ01_DLIV_DIR a\n");
- sqlBuffer.append(" set A.RETURN_GED = ?,\n");
- sqlBuffer
- .append("A.RETURN_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),\n");
- sqlBuffer.append(" A.ISCANCEL = '1',\n");
- sqlBuffer.append(" A.DLIV_PROG_CD = '02' \n");
- sqlBuffer.append(" WHERE A.DLIV_DIRNO = ? \n");
- Connection conn = null;
- PreparedStatement pSta = null;
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- for (int i = 0; i < params.size(); i++) {
- String dlivDirNo = params.get(i);
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, regId);
- pSta.setString(2, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
- }
- conn.commit();
- } catch (Exception ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("发运计划回退失败!");
- }finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- return cro;
- }
- /**
- * 根据发运指示号查询可回退的发运明细
- *
- * @param dlivDirNo
- * 发运指示号
- * @return CoreReturnObject
- * @throws SQLException
- */
- public CoreReturnObject queryShipRetRsLt(String dlivDirNo)
- throws SQLException {
- String shipProgCd = "08";// 发货明细结束
- CoreReturnObject cro = this.query(dlivDirNo, shipProgCd);
- return cro;
- }
- /**
- * 查询没有车号的发货明细的卷
- *
- * @param dlivDirNo
- * @return
- * @throws SQLException
- */
- public CoreReturnObject queryShipRetRsNoCarNoLt(String dlivDirNo)
- throws SQLException {
- String shipProgCd = "03";
- CoreReturnObject cro = this.query(dlivDirNo, shipProgCd);
- return cro;
- }
- private CoreReturnObject query(String dlivDirNo, String shipProgCd)
- throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT A.OLD_SAMPL_NO\n");
- sqlBuffer.append(" ,A.DLIV_DIRNO\n");
- sqlBuffer.append(" ,A.SHIP_DIRNO\n");
- sqlBuffer.append(" ,A.SHIP_INVNO\n");
- sqlBuffer.append(" ,A.CUR_PROG_CD\n");
- sqlBuffer.append(" ,A.COIL_STAT\n");
- sqlBuffer.append(" ,A.SHIP_PROG_CD\n");
- sqlBuffer.append(" ,A.TRNF_DTIME\n");
- sqlBuffer.append(" ,DECODE(C.DLIV_TP,'C','汽运','T','火运') DLIV_TP \n");
- sqlBuffer.append(" ,A.TRANS_CAR_NO\n");
- sqlBuffer.append(" ,A.TRNF_REG\n");
- sqlBuffer.append(" ,A.ORD_NO\n");
- sqlBuffer.append(" ,A.ORD_SEQ\n");
- sqlBuffer
- .append(" ,DECODE(A.TRNF_SHIFT,'1','早','2','中','3','晚') TRNF_SHIFT\n");
- sqlBuffer
- .append(" ,DECODE(A.TRNF_GROUP,'A','甲','B','乙','C','丙','D','丁') TRNF_GROUP\n");
- sqlBuffer.append(" ,A.TRNF_USE_TIME\n");
- sqlBuffer
- .append(" ,(select CUST_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = (SELECT CUST_CD FROM TBA01_ORD_COMM WHERE ORD_NO = A.ORD_NO) and REC_TP='01') CUST_NM \n");
- sqlBuffer
- .append(" ,(select CUST_NM ORD_NM FROM TBZ00_CUSTOMER WHERE CUST_CD = C.ORD_CUST_CD and REC_TP='02') ORD_NM\n");
- sqlBuffer
- .append(" ,(SELECT A.SM_CFNM FROM TBZ00_COMMCD A WHERE A.LG_CD = 'A01009' AND A.SM_CD = C.DEST_PCD) DEST_PCD_DESC\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM A,TBJ01_DLIV_DIR C \n");
- sqlBuffer.append(" WHERE A.DLIV_DIRNO = C.DLIV_DIRNO \n");
- sqlBuffer.append(" AND A.DLIV_DIRNO = ? \n");
- sqlBuffer.append(" AND A.COIL_STAT = '3' \n");
- sqlBuffer.append(" AND A.CUR_PROG_CD = 'DFF'\n");
- sqlBuffer.append(" AND A.SHIP_PROG_CD = ?\n");
- sqlBuffer.append(" AND A.TRNF_DTIME IS NOT NULL\n");
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { dlivDirNo, shipProgCd });
- return cro;
- }
- /**
- * 发运明细回退
- *
- * @param dlivDirNo
- * @param regId
- * @return
- * @throws SQLException
- */
- public CoreReturnObject returnShipResultLt(String dlivDirNo, String regId,String return_reson)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- PreparedStatement pSta = null;
- Statement sta = null;
- String strValue;
- String url;
- String cod1,cod2;
- try {
- /*
- UIJ030052 uij030052 = new UIJ030052();
- url="http://172.16.0.49/xg56/webservice/mesWaybillService/queryIsLock/"+dlivDirNo;
- String retr=uij030052.jsonPost(url, dlivDirNo);
- int loc=retr.indexOf("IS_LOCK");
- int loc1=retr.indexOf("RET_CODE");
- cod1=retr.substring(loc1+11, loc1+12);
- cod2=retr.substring(loc+10, loc+11);
- //if("9".equals(cod2) ||("0".equals(cod2)&&"0".equals(cod1)))
- if("0".equals(cod1)&&"1".equals(cod2))
- {
- cro.setV_errCode(new Integer(-1));
- cro.setV_errMsg("明细数据已经锁定,如要解锁,请联系物流中心!");
- }else
- {*/
- String sqlOut = "select DLIV_DIRNO from tbj01_dliv_dir where DLIV_DIRNO = ? AND LAST_MAN IS NULL";
- List listOut = this.getDao("KgDao").ExcuteQueryReturnList(sqlOut,
- new Object[] { dlivDirNo });
-
- UIJ030052 uij030052 = new UIJ030052();
- url="http://172.16.0.18:9090/TieQianinterface/services/MaterialOutInfo/materialoutinfo/"+dlivDirNo;
- String retr=uij030052.jsonPost(url, dlivDirNo);
-
- //if("9".equals(cod2) ||("0".equals(cod2)&&"0".equals(cod1)))
- if(retr.contains("false")&&listOut.size()>0)
- {
- cro.setV_errCode(new Integer(-1));
- cro.setV_errMsg("车辆已出厂,如要退回,请先审批!");
- }else
- {
-
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- CallableStatement cstmt = conn
- .prepareCall("{?=call SqListNumbRollBack(?)}");
- cstmt.registerOutParameter(1, Types.VARCHAR);
- cstmt.setString(2, dlivDirNo);
- //cstmt.registerOutParameter(3, Types.INTEGER);
- cstmt.execute();
- strValue = cstmt.getString(1);
- cstmt.close();
- boolean isClearing = false;// 销售是否已结算
- if ( !"1".equals(strValue)) {
- isClearing = true;
- }
- if (isClearing) {
- cro.setV_errCode(-2);
- cro.setV_errMsg("明细数据已经发送到销售,请联系销售退明细后成品才能进行明细回退!");
- } else {
-
- // 更新钢卷公共表钢卷状态及发运状态
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE C_TBC02_COIL_COMM A SET \n");
- sqlBuffer.append(" A.COIL_STAT = '2'\n");
- sqlBuffer.append(" ,A.CUR_PROG_CD = 'DFB'\n");
- sqlBuffer.append(" ,A.SHIP_PROG_CD = '03'\n");
- sqlBuffer.append(" ,A.TRNF_DTIME = ''\n");
- sqlBuffer.append(" ,A.TRANS_CAR_NO = ''\n");
- sqlBuffer.append(" ,A.TRNF_REG = ''\n");
- sqlBuffer.append(" ,A.TRNF_SHIFT = ''\n");
- sqlBuffer.append(" ,A.TRNF_GROUP = ''\n");
- sqlBuffer.append(" ,A.TRNF_USE_TIME = ''\n");
- sqlBuffer.append(" ,A.CUR_LOAD_LOC = A.BEF_LOAD_LOC\n");
- sqlBuffer.append(" ,A.BEF_SHIP_INVNO = A.SHIP_INVNO\n");
- sqlBuffer.append(" ,A.BEF_CRET_NO = A.CRET_NO\n");
- sqlBuffer.append(" ,A.RETURN_SHIP_REG = ?\n");
- sqlBuffer
- .append(" ,A.RETURN_SHIP_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')\n");
- sqlBuffer.append(" WHERE A.DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, regId);
- pSta.setString(2, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
- // 清除发运表发运信息
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_DLIV_DIR A SET \n");
- sqlBuffer.append(" A.LANE_TP = ''\n");
- sqlBuffer.append(" ,A.ENTERANCE_SEQ = ''\n");
- sqlBuffer.append(" ,A.ALLOC_SEQ = ''\n");
- sqlBuffer.append(" ,a.TRANS_CAR_NO = ''\n");
- sqlBuffer.append(" WHERE A.DLIV_DIRNO = ?\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
- // 更新运送表运送状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_SHIP_DIR A SET \n");
- sqlBuffer.append(" A.SHIP_PROG_CD = '03'\n");
- sqlBuffer
- .append(" WHERE A.SHIP_DIRNO = (SELECT T.SHIP_DIRNO FROM TBJ01_DLIV_DIR T WHERE T.DLIV_DIRNO = ?)\n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
- // 删除结算接口表数据
- sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("DELETE TBJ02_COIL_COMM A WHERE A.DLIV_DIRNO = ? \n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
-
- // 还原出库前垛位
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE C_TBC02_COIL_COMM T \n");
- sqlBuffer.append(" SET T.CUR_LOAD_LOC = (SELECT MIN(CUR_LOAD_LOC_F) FROM c_tbk08_coil_move T1 WHERE T1.COIL_NO = T.OLD_SAMPL_NO AND T1.MOVE_TYPE = '12') \n");
- sqlBuffer.append(" WHERE T.DLIV_DIRNO =? \n");
- pSta = conn.prepareStatement(sqlBuffer.toString());
- pSta.setString(1, dlivDirNo);
- pSta.executeUpdate();
- pSta.close();
- //删除铁前接口数据
- String sql6 = XmlSqlParsersFactory
- .getSql("UIJ030030_09.CALL");
- this.getDao("KgDao").ExcuteProcedure(sql6,new String[] {"3",dlivDirNo,"","","","","","","4001LZ1","冷轧线"},
- new String[0]);
- //更新货运中国标识
- String sql7 = XmlSqlParsersFactory
- .getSql("UIJ030030_12.CALL");
- this.getDao("KgDao").ExcuteProcedure(sql7,new String[] {"3","",dlivDirNo,"","","","","","","C",regId},
- new String[0]);
-
- //插入日志
- String sql8 = XmlSqlParsersFactory
- .getSql("UIJ030030_13.CALL");
- this.getDao("KgDao").ExcuteProcedure(sql8,new String[] {"3","",dlivDirNo,"","","","","",return_reson,"L",regId},
- new String[0]);
-
- //调用存货异动点存储过程
- ProduceFactory PD= new ProduceFactory();
- PD.ErpDataCover("LTDLIVNO",dlivDirNo,"69A","1","N",regId,"连退退货");
- //PD.ErpDataCover("LTDLIVNO",dlivDirNo,"11AC","0","N",regId,"连退退货取消判定");
- }
- conn.commit();
- }
- }catch (SQLException ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("发货明细回退失败!");
- } finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
-
- return cro;
-
- }
- public CoreReturnObject resend(ArrayList<String[]> pDlivDirNos, String regId)
- throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- PreparedStatement pSta = null;
- Statement sta = null;
- String strValue,dlivDirNo;
-
-
- //汇总处理
- for (int i = 0; i < pDlivDirNos.size(); i++) {
- String[] param = pDlivDirNos.get(i);
- try {
- dlivDirNo=param[0];
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- CallableStatement cstmt = conn.prepareCall("{call HYZGMX.HYMX_ADD(?,?,?)}");
- cstmt.setString(1, dlivDirNo);
- cstmt.setString(2, "连退线");
- cstmt.registerOutParameter(3, Types.VARCHAR);
- //cstmt.registerOutParameter(3, Types.INTEGER);
- cstmt.execute();
- strValue = cstmt.getString(3);
- cstmt.close();
- boolean isClearing = false;// 销售是否已结算
- if ( !"1".equals(strValue)) {
- isClearing = true;
- }
- conn.commit();
-
- }
- catch (SQLException ex) {
- if(conn != null){
- conn.rollback();
- }
- cro.setV_errCode(-1);
- cro.setV_errMsg("补发明细失败!");
- }
- finally{
- if(conn != null && !conn.isClosed()){
- conn.close();
- }
- }
- }
- return cro;
- }
- /**
- * 确认排车操作
- *
- * @param regId
- * @param list
- * @return
- * @throws SQLException
- */
- public CoreReturnObject saveDLIVDIRCAR(String regId, String regOrder,
- String regGroup, ArrayList<String[]> list) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Connection conn = null;
- try {
- conn = this.getDao("KgDao").getConnection();
- conn.setAutoCommit(false);
- String[] param = null;
- ArrayList<String> dlivDirNoList = new ArrayList<String>();
- StringBuffer sqlBuffer = null;
- // 根据运输指示号的个数来生成发货清单号
- for (int i = 0; i < list.size(); i++) {
- param = list.get(i);
- boolean flag = false;// 运输号是否重复标识
- for (int j = 0; j < dlivDirNoList.size(); j++) {
- if (param[2].equals(dlivDirNoList.get(i))) {
- flag = true;
- break;
- }
- }
- // 生成发货清单号
- if (!flag) {
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("UPDATE TBJ01_DLIV_DIR\n");
- sqlBuffer
- .append(" SET INV_NO = (SELECT 'LZ'||SUBSTR(TO_CHAR(SYSDATE, 'YYYY'), 4) ||'-'||TO_CHAR(TO_NUMBER(SUBSTRB(INV_NO, 5)) + 1, 'FM000000')\n");
- sqlBuffer
- .append(" FROM (SELECT ROW_NUMBER() OVER (ORDER BY NVL(INV_NO,'LZ'||SUBSTR(TO_CHAR(SYSDATE, 'YYYY'), 4)||'-0000000') DESC) AS RN\n");
- sqlBuffer.append(" ,INV_DTIME\n");
- sqlBuffer.append(" ,INV_NO\n");
- sqlBuffer.append(" FROM TBJ01_DLIV_DIR \n");
- sqlBuffer.append(" WHERE INV_NO LIKE 'LZ'||SUBSTR(TO_CHAR(SYSDATE, 'YYYY'), 4) ||'%') A\n");
- sqlBuffer.append(" WHERE A.RN = 1) \n");
- sqlBuffer
- .append(" , INV_DTIME = TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')\n");
- sqlBuffer.append(" WHERE DLIV_DIRNO = ?\n");
- PreparedStatement ps1 = conn.prepareStatement(sqlBuffer
- .toString());
- ps1.setString(1, param[2]);
- ps1.executeUpdate();
- ps1.close();
- }
- // 将发货清单号更新到钢卷公共表
- sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("SELECT A.INV_NO FROM TBJ01_DLIV_DIR A WHERE A.DLIV_DIRNO = '"
- + param[2] + "'\n");
- Statement sta1 = conn.createStatement();
- ResultSet rs = sta1.executeQuery(sqlBuffer.toString());
- if (rs.next()) {
- String invNo = rs.getString("INV_NO");
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("update c_tbc02_coil_comm X SET \n");
- sqlBuffer.append(" X.SHIP_INVNO = ?\n");
- sqlBuffer.append(" WHERE X.DLIV_DIRNO = ?\n");
- PreparedStatement ps2 = conn.prepareStatement(sqlBuffer
- .toString());
- ps2.setString(1, invNo);
- ps2.setString(2, param[2]);
- ps2.executeUpdate();
- ps2.close();
- }
- rs.close();
- sta1.close();
- // 插入移垛记录
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("INSERT INTO C_TBK08_COIL_MOVE (ROLL_SEQ\n");
- sqlBuffer
- .append(",CUR_LOAD_LOC_F,CUR_LOAD_LOC_T,COIL_NO,REG_ID\n");
- sqlBuffer
- .append(",REG_SHIFT,REG_GROUP,REG_DTIME,REG_USE_DTIME,MOVE_TYPE)\n");
- sqlBuffer
- .append("VALUES((SELECT MAX(ROLL_SEQ)+1 ROLL_SEQ FROM C_TBK08_COIL_MOVE)\n");
- sqlBuffer
- .append(",?,?,?,?,?,?,TO_CHAR(SYSDATE,'YYYYMMDD'),TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),'12')\n");
- PreparedStatement pStaI = conn.prepareStatement(sqlBuffer
- .toString());
- pStaI.setString(1, param[7]);// 垛位
- pStaI.setString(2, "");
- pStaI.setString(3, param[4]);// 钢卷号
- pStaI.setString(4, regId);
- pStaI.setString(5, regOrder);
- pStaI.setString(6, regGroup);
- pStaI.executeUpdate();
- pStaI.close();
- // 根据钢卷号更新车厢号和排车顺序
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("update c_tbc02_coil_comm\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" TRANS_CAR_NO = ?,\n");
- sqlBuffer.append(" TRAIN_STEP_NO = ?,\n");
- sqlBuffer.append(" DLIV_DIRNO = ?,\n");
- sqlBuffer.append(" SHIP_DIRNO = ?,\n");
- sqlBuffer.append(" ACT_WGT = ?,\n");
- sqlBuffer.append(" SHIP_PROG_CD = '06',\n");
- sqlBuffer.append(" BEF_LOAD_LOC = CUR_LOAD_LOC, \n");
- sqlBuffer.append(" CUR_LOAD_LOC = '' \n");
- sqlBuffer.append(" where OLD_SAMPL_NO =? \n");
- PreparedStatement ps3 = conn.prepareStatement(sqlBuffer
- .toString());
- ps3.setString(1, param[1]);
- ps3.setString(2, param[0]);
- ps3.setString(3, param[2]);
- ps3.setString(4, param[3]);
- ps3.setString(5, param[6]);
- ps3.setString(6, param[4]);
- ps3.executeUpdate();
- ps3.close();
- // 清除垛位表钢卷信息 (成品库未写垛位表数据)
- // sqlBuffer = new StringBuffer();
- // sqlBuffer.append("update C_TBK08_COIL_YARD A SET \n");
- // sqlBuffer.append(" A.COIL_NO = '',\n");
- // sqlBuffer.append(" A.MOD_ID = '',\n");
- // sqlBuffer.append(" A.MOD_TIME = ''\n");
- // sqlBuffer.append(" WHERE A.COIL_NO = ?\n");
- //
- // PreparedStatement ps4 = conn.prepareStatement(sqlBuffer
- // .toString());
- // ps4.setString(1, param[4]);
- // ps4.executeUpdate();
- // ps4.close();
- flag = true;
- // 查询钢卷发运状态
- sqlBuffer = new StringBuffer();
- sqlBuffer
- .append("select a.SHIP_PROG_CD from c_tbc02_coil_comm a where a.ship_dirno = '"
- + param[3] + "'\n");
- Statement sta2 = conn.createStatement();
- rs = sta2.executeQuery(sqlBuffer.toString());
- while (rs.next()) {
- String tmpShipProgCd = rs.getString("SHIP_PROG_CD");
- if ("03".equals(tmpShipProgCd)
- || "04".equals(tmpShipProgCd)) {
- flag = false;
- break;
- }
- }
- rs.close();
- sta2.close();
- if (flag) {
- // 更新发运表发运状态
- sqlBuffer = new StringBuffer();
- sqlBuffer.append("update tbj01_ship_dir\n");
- sqlBuffer.append(" set \n");
- sqlBuffer.append(" ship_prog_cd = '05'\n");
- sqlBuffer.append(" where ship_dirno =?\n");
- PreparedStatement ps5 = conn.prepareStatement(sqlBuffer
- .toString());
- ps5.setString(1, param[3]);
- ps5.executeUpdate();
- ps5.close();
- // 开具质保书
- String[] inparams = new String[] { param[3] };
- String sCRET_NO = "";
- String sRETURN_CD = "YY";
- String sRETURN_MSG = null;
- if ("YY".equals(sRETURN_CD)) {
- String sqlString = "{call ZL_LIANT_DCS01.CRET_BOOK_GENT(?,?,?)}";
- CallableStatement cstm = conn.prepareCall(sqlString);
- cstm.setString(1, param[3]);
- cstm.registerOutParameter(2, java.sql.Types.VARCHAR);
- cstm.registerOutParameter(3, java.sql.Types.VARCHAR);
- cstm.execute();
- sRETURN_MSG = cstm.getString(3);
- cstm.close();
- if ("XX".equals(sRETURN_MSG)) {
- // 这里出现的异常情况是板坯号与钢卷号不匹配
- cro.setV_errMsg("开具质保书失败,请联系管理员!");
- throw new SQLException();
- }
- }
- }
- }
- conn.commit();
- } catch (SQLException ex) {
- if (conn != null) {
- conn.rollback();
- }
- } finally {
- if (conn != null && !conn.isClosed()) {
- conn.close();
- }
- }
- return cro;
- }
- public CoreReturnObject queryTransCoils(String dlivDirNo)
- throws SQLException {
- CoreReturnObject cro = null;
- StringBuffer sqlBuffer = new StringBuffer();
- sqlBuffer.append("SELECT D.OLD_SAMPL_NO\n");
- sqlBuffer.append(" ,D.SPEC_STL_GRD\n");
- sqlBuffer.append(" ,D.INSTR_COIL_THK||'*'||D.INSTR_COIL_WTH ORD_SIZE\n");
- sqlBuffer.append(" ,D.SPEC_STL_GRD\n");
- sqlBuffer.append(" ,D.INSTR_COIL_THK||'*'||D.INSTR_COIL_WTH ORD_SIZE\n");
- sqlBuffer.append(" ,D.ACT_WGT\n");
- sqlBuffer.append(" ,D.CUR_LOAD_LOC\n");
- sqlBuffer.append(" FROM C_TBC02_COIL_COMM d WHERE d.DLIV_DIRNO=?\n");
- cro = this.getDao("KgDao").ExcuteQuery(sqlBuffer.toString(),
- new Object[] { dlivDirNo });
- return cro;
- }
-
- public CoreReturnObject updateCarNo(String dlivDirNo,String carNo) throws SQLException {
- CoreReturnObject cro = new CoreReturnObject();
- Map result = this.getDao("KgDao").CoreBeginTranscation();
-
- String sql = XmlSqlParsersFactory.getSql("UIJ050030_01.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo});
- sql = XmlSqlParsersFactory.getSql("UIJ030030_08.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo});
- sql = XmlSqlParsersFactory.getSql("UIJ030030_09.UPDATE");
- this.getDao("KgDao").ExcuteNonQuery(sql, new Object[]{carNo,dlivDirNo});
- this.getDao("KgDao").CoreCommit(result);
- return cro;
- }
- }
|