package xin.glue.nui.F.F01; import xin.glue.user.common.LogGpError; import com.posdata.glue.PosException; import com.posdata.glue.biz.activity.PosActivity; import com.posdata.glue.biz.constants.PosBizControlConstants; import com.posdata.glue.biz.control.PosBizProvider; import com.posdata.glue.context.PosContext; import com.posdata.glue.dao.vo.PosParameter; import com.posdata.glue.dao.vo.PosRow; import com.posdata.glue.dao.vo.PosRowSet; import com.posdata.glue.msg.PosMESMessageImpl; import com.posdata.glue.msg.PosMessage; /* Program Name SMSRhLfChange * Description SMS WORK INSTRUCTION RH, LF LINE CHANGING * Write By wxy * Date 2010-3-10 */ public class SMSRhLfVdChange extends PosActivity { public String runActivity(PosContext ctx) { String[] P_PRC_PATH = (String[])ctx.get("PRC_PATH"); String[] P_REG_ID = (String[])ctx.get("REG_ID"); String[] P_CHARGE_MANA_NO = (String[])ctx.get("CHARGE_MANA_NO"); String[] P_CHK = (String[])ctx.get("CHK"); long V_CHARGE_EDT_SEQ = 0 ; long V_RH_TEMP_TGT = 0 ; long V_LF_TEMP_TGT = 0 ; long V_VD_TEMP_TGT = 0 ; long V_CHG_SEQ = 0 ; String V_PRC_LINE = "" ; String V_PATH_PROC_CD = ""; String V_TREAT_RT_CD = "" ; String V_LINE_PROC_CD = "" ; String V_L2_SEND = "" ; String V_CCM_CHG = "N" ; String V_TIME_RESCH = "N" ; String V_TABLE_ID = "" ; String V_TABLE_MODE = "" ; String V_ERR_DESC = "" ; String V_RTN_NAME = "" ; int rows = P_CHK.length; for(int i = 0 ; i < rows ; i++){ if(P_CHK[i].equals("true")){ //CHARGE_MANA_NO CHECK PosParameter param0 = new PosParameter(); param0.setWhereClauseParameter(0, P_CHARGE_MANA_NO[i]); PosRowSet ChargeManaNoInfVO = getDao("mesdao").find("NIF012170_ChargeManaNoInf.select",param0); ChargeManaNoInfVO.reset(); if (ChargeManaNoInfVO.hasNext()) { PosRow ChargeManaNoInfRow = ChargeManaNoInfVO.next(); V_PATH_PROC_CD = (String)ChargeManaNoInfRow.getAttribute("PATH_PROC_CD"); V_LINE_PROC_CD = (String)ChargeManaNoInfRow.getAttribute("LINE_PROC_CD"); V_PRC_LINE = (String)ChargeManaNoInfRow.getAttribute("PRC_LINE"); V_L2_SEND = (String)ChargeManaNoInfRow.getAttribute("L2_SEND"); V_CHARGE_EDT_SEQ = Long.parseLong((ChargeManaNoInfRow.getAttribute("CHARGE_EDT_SEQ")==null? "0":ChargeManaNoInfRow.getAttribute("CHARGE_EDT_SEQ")).toString()); V_RH_TEMP_TGT = Long.parseLong((ChargeManaNoInfRow.getAttribute("RH_TGT_TEMP")==null? "0":ChargeManaNoInfRow.getAttribute("RH_TGT_TEMP")).toString()); V_LF_TEMP_TGT = Long.parseLong((ChargeManaNoInfRow.getAttribute("LF_TGT_TEMP")==null? "0":ChargeManaNoInfRow.getAttribute("LF_TGT_TEMP")).toString()); V_VD_TEMP_TGT = Long.parseLong((ChargeManaNoInfRow.getAttribute("VD_TGT_TEMP")==null? "0":ChargeManaNoInfRow.getAttribute("VD_TGT_TEMP")).toString()); V_CHG_SEQ = Long.parseLong((ChargeManaNoInfRow.getAttribute("CHG_SEQ")==null? "0":ChargeManaNoInfRow.getAttribute("CHG_SEQ")).toString()); } else { //MESSAGE ERROR --> PROGRAM EXIT throw new PosException("SMSRhLfChange..NOT FOUND CHARGE_MANA_NO INFORMATION.."); } String preCCMNo = V_LINE_PROC_CD.substring((V_LINE_PROC_CD.length() - 2), V_LINE_PROC_CD.length()); String curCCMNo = P_PRC_PATH[0].substring((P_PRC_PATH[0].length() - 2), P_PRC_PATH[0].length()); if(!preCCMNo.equals(curCCMNo)){ V_CCM_CHG = "Y"; }else{ V_CCM_CHG = "N"; } if(P_PRC_PATH[0].indexOf("R")>= 0){ }else{ V_RH_TEMP_TGT = 0; } if(P_PRC_PATH[0].indexOf("L")>= 0){ }else{ V_LF_TEMP_TGT = 0; } if(P_PRC_PATH[0].indexOf("V")>= 0){ }else{ V_VD_TEMP_TGT = 0; } //TREAT_RT_CD CHECK PosParameter param1 = new PosParameter(); param1.setWhereClauseParameter(0, P_PRC_PATH[0]); PosRowSet TreatRtInfVO = getDao("mesdao").find("NIF012170_TreatRtInf.select",param1); TreatRtInfVO.reset(); if (TreatRtInfVO.hasNext()) { PosRow TreatRtRow = TreatRtInfVO.next(); V_TREAT_RT_CD = (String)TreatRtRow.getAttribute("SM_CD"); } else { //MESSAGE ERROR --> PROGRAM EXIT throw new PosException("SMSRhLfChange..NOT FOUND TreatRtInf INFORMATION.."); } //RH, LF LINE CHANGE --> TBF01_SPEC_CHARGE UPDATE PosParameter param2 = new PosParameter(); param2.setWhereClauseParameter(0, P_PRC_PATH[0]); param2.setWhereClauseParameter(1, P_PRC_PATH[0]); param2.setWhereClauseParameter(2, V_TREAT_RT_CD); param2.setWhereClauseParameter(3, String.valueOf(V_RH_TEMP_TGT)); param2.setWhereClauseParameter(4, String.valueOf(V_LF_TEMP_TGT)); param2.setWhereClauseParameter(5, String.valueOf(V_VD_TEMP_TGT)); param2.setWhereClauseParameter(6, String.valueOf(V_CHARGE_EDT_SEQ)); int UpdCnt1 = getDao("mesdao").update("NIF012170_ChargeProcLineUpd.update",param2); if (UpdCnt1 == 0) { V_TABLE_ID = "TBF01_SPEC_CHARGE"; V_TABLE_MODE = "U"; V_ERR_DESC = "TBF01_SPEC_CHARGE UPDATE COUNT IS ZERO"; V_RTN_NAME = "SMSRhLfChange TBF01_SPEC_CHARGE UPDATE1 " + String.valueOf(V_CHARGE_EDT_SEQ); LogGpError.logMessageToDB("SMSRhLfChange", V_TABLE_ID, V_TABLE_MODE, V_ERR_DESC, V_RTN_NAME); throw new PosException(V_RTN_NAME); } //CALL NIF012180_SMSSchTme //NIF012180_CALL(V_PRC_LINE, V_L2_SEND, P_REG_ID[0]); if(V_L2_SEND.equals("Y")){ //TBG06_L2_CHARGE_INS INSERT 出钢指示 SEND_CLF = 'U' PosParameter param4 = new PosParameter(); param4.setValueParamter(0, V_PRC_LINE); param4.setValueParamter(1, V_PRC_LINE); param4.setValueParamter(2, String.valueOf(V_CHARGE_EDT_SEQ)); int InsCnt1 = getDao("mesdao").insert("NIF012170_L2Charge.insert",param4); if (InsCnt1 == 0) { V_TABLE_ID = "TBG06_L2_CHARGE_INS"; V_TABLE_MODE = "I"; V_ERR_DESC = "TBG06_L2_CHARGE_INS UPDATE COUNT IS ZERO"; V_RTN_NAME = "SMSRhLfChange TBG06_L2_CHARGE_INS INSERTE1 " + String.valueOf(V_CHARGE_EDT_SEQ); LogGpError.logMessageToDB("SMSRhLfChange", V_TABLE_ID, V_TABLE_MODE, V_ERR_DESC, V_RTN_NAME); throw new PosException(V_RTN_NAME); } if (V_CCM_CHG.equals("Y")) { //TBG06_L2_CCM_INS INSERT 连铸指示 SEND_CLF = 'U' PosParameter param5 = new PosParameter(); param5.setValueParamter(0, V_PRC_LINE); param5.setValueParamter(1, V_PRC_LINE); param5.setValueParamter(2, String.valueOf(V_CHARGE_EDT_SEQ)); int InsCnt2 = getDao("mesdao").insert("NIF012170_L2Ccm.insert",param5); if (InsCnt2 == 0) { V_TABLE_ID = "TBG06_L2_CCM_INS"; V_TABLE_MODE = "I"; V_ERR_DESC = "TBG06_L2_CCM_INS UPDATE COUNT IS ZERO"; V_RTN_NAME = "SMSRhLfChange TBG06_L2_CCM_INS INSERTE2 " + String.valueOf(V_CHARGE_EDT_SEQ); LogGpError.logMessageToDB("SMSRhLfChange", V_TABLE_ID, V_TABLE_MODE, V_ERR_DESC, V_RTN_NAME); throw new PosException(V_RTN_NAME); } } } } // end if(P_CHK[i].equals("true")) }// end for(int i = 0 ; i < rows ; i++) return PosBizControlConstants.SUCCESS; } public PosContext NIF012180_CALL(String V_PRC_LINE, String V_L2_SEND, String V_REG_ID) { PosContext context = new PosContext(); PosMessage message = new PosMESMessageImpl(); //SMSSchTme String TcId = "NIF012180"; message.setTCID(TcId); message.setObject("MSG_ID", TcId); message.setObject("PRC_LINE", V_PRC_LINE); message.setObject("L2_SEND", V_L2_SEND); message.setObject("CHARGE_MANA_NO", ""); message.setObject("REG_ID", V_REG_ID); context.setMessage(message); message.setTCID(TcId); String SERVICE_POSTFIX = "-service"; context.put(PosBizControlConstants.SERVICE_NAME, TcId + SERVICE_POSTFIX); PosBizProvider.getController().doSubController(context, false); String SERVICE_ERR_MSG = (String) context.get("SERVICE_ERR_MSG"); if (SERVICE_ERR_MSG != null) { throw new PosException(SERVICE_ERR_MSG); } return context; } }