package xin.glue.nui.E.E01; import java.math.BigDecimal; import xin.glue.user.common.GlobalConstants; 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 OrdStsCoil (NIE012083) * Description COIL ORDER PROGRESS * Write By KIM SUNG HO * Date 2008-10-13 */ public class OrdStsCoil extends PosActivity implements GlobalConstants { public String runActivity(PosContext context) { long V_WGT = 0 ; long V_BEF_WGT = 0 ; PosMessage message = context.getMessage(); String P_BEF_ORD_NO = (String)message.get("BEF_ORD_NO"); String P_BEF_ORD_SEQ = (String)message.get("BEF_ORD_SEQ"); String P_ORD_NO = (String)message.get("ORD_NO"); String P_ORD_SEQ = (String)message.get("ORD_SEQ"); String P_BEF_PROG_CD = (String)message.get("BEF_PROG_CD"); String P_PROG_CD = (String)message.get("PROG_CD"); String P_MAT_NO = (String)message.get("MAT_NO"); String P_MAT_TYPE = (String)message.get("MAT_TYPE"); String P_PGMID = (String)message.get("PGMID"); String P_REG_ID = (String)message.get("REG_ID"); try { if (P_BEF_ORD_NO != null && !"".equals(P_BEF_ORD_NO) && P_BEF_ORD_SEQ != null && !"".equals(P_BEF_ORD_SEQ) && P_ORD_NO != null && !"".equals(P_ORD_NO) && P_ORD_SEQ != null && !"".equals(P_ORD_SEQ)) { //CALL NIE012100_ReArrangeOrdSts NIE012100_CALL(P_BEF_ORD_NO, P_BEF_ORD_SEQ, P_PGMID, P_REG_ID); } if (P_PROG_CD == null || P_PROG_CD.equals("SRC")) { P_PROG_CD = ""; } if (P_BEF_PROG_CD == null || P_BEF_PROG_CD.equals("SRC")) { P_BEF_PROG_CD = ""; } //SELECT COIL IN ORD_NO, ORD_SEQ PosParameter param0 = new PosParameter(); param0.setWhereClauseParameter(0, P_MAT_NO); PosRowSet ordNoVO = getDao("mesdao").find("NIE012083_OrdNo.select",param0); ordNoVO.reset(); while(ordNoVO.hasNext()) { PosRow ordNoRow = ordNoVO.next(); P_ORD_NO = (String)ordNoRow.getAttribute("ORD_NO"); P_ORD_SEQ = (String)ordNoRow.getAttribute("ORD_SEQ"); V_WGT = 0; V_BEF_WGT = 0; if (P_PROG_CD != null && !P_PROG_CD.equals("")) { //SELECT MATERIAL WEIGHT SUM if (P_PROG_CD.equals("SFF")||P_PROG_CD.equals("SGF")) { PosParameter param3 = new PosParameter(); param3.setWhereClauseParameter(0, P_ORD_NO); param3.setWhereClauseParameter(1, P_ORD_SEQ); param3.setWhereClauseParameter(2, P_PROG_CD); PosRowSet OrdWgtSFFVO = getDao("mesdao").find("NIE012083_OrdWgtSFF.select",param3); OrdWgtSFFVO.reset(); if (OrdWgtSFFVO.hasNext()) { PosRow OrdWgtSFFRow = OrdWgtSFFVO.next(); V_WGT = Long.parseLong((OrdWgtSFFRow.getAttribute("ORD_WGT")==null? "0":OrdWgtSFFRow.getAttribute("ORD_WGT")).toString()); } } else { PosParameter param1 = new PosParameter(); param1.setWhereClauseParameter(0, P_ORD_NO); param1.setWhereClauseParameter(1, P_ORD_SEQ); param1.setWhereClauseParameter(2, P_PROG_CD); PosRowSet ordWgtVO = getDao("mesdao").find("NIE012083_OrdWgt.select",param1); ordWgtVO.reset(); if (ordWgtVO.hasNext()) { PosRow ordWgtRow = ordWgtVO.next(); V_WGT = Long.parseLong((ordWgtRow.getAttribute("ORD_WGT")==null? "0":ordWgtRow.getAttribute("ORD_WGT")).toString()); } } } if (P_BEF_PROG_CD != null && !P_BEF_PROG_CD.equals("")) { //SELECT MATERIAL WEIGHT SUM if (P_BEF_PROG_CD.equals("SFF")||P_BEF_PROG_CD.equals("SGF")) { PosParameter param4 = new PosParameter(); param4.setWhereClauseParameter(0, P_ORD_NO); param4.setWhereClauseParameter(1, P_ORD_SEQ); param4.setWhereClauseParameter(2, P_BEF_PROG_CD); PosRowSet befOrdWgtSFFVO = getDao("mesdao").find("NIE012083_BefOrdWgtSFF.select",param4); befOrdWgtSFFVO.reset(); if (befOrdWgtSFFVO.hasNext()) { PosRow befOrdWgtSFFRow = befOrdWgtSFFVO.next(); V_BEF_WGT = Long.parseLong((befOrdWgtSFFRow.getAttribute("ORD_WGT")==null? "0":befOrdWgtSFFRow.getAttribute("ORD_WGT")).toString()); } } else { PosParameter param2 = new PosParameter(); param2.setWhereClauseParameter(0, P_ORD_NO); param2.setWhereClauseParameter(1, P_ORD_SEQ); param2.setWhereClauseParameter(2, P_BEF_PROG_CD); PosRowSet befOrdWgtVO = getDao("mesdao").find("NIE012083_BefOrdWgt.select",param2); befOrdWgtVO.reset(); if (befOrdWgtVO.hasNext()) { PosRow befOrdWgtRow = befOrdWgtVO.next(); V_BEF_WGT = Long.parseLong((befOrdWgtRow.getAttribute("ORD_WGT")==null? "0":befOrdWgtRow.getAttribute("ORD_WGT")).toString()); } } } //CALL NIE012090_SaveOrdPrcDet NIE012090_CALL(P_ORD_NO, P_ORD_SEQ, P_PROG_CD, V_WGT, P_BEF_PROG_CD, V_BEF_WGT, P_MAT_TYPE, P_MAT_NO, P_PGMID, P_REG_ID); } } catch (PosException ex) { context.put(SERVICE_ERR_MSG, ex.getMessage()); throw ex; } catch (Throwable t) { context.put(SERVICE_ERR_MSG, t.getMessage()); throw new PosException(t.getMessage(), t); } return PosBizControlConstants.SUCCESS; } public PosContext NIE012090_CALL(String V_ORD_NO, String V_ORD_SEQ, String V_PROG_CD, long V_WGT, String V_BEF_PROG_CD, long V_BEF_WGT, String V_MAT_TYPE, String V_MAT_NO, String V_PGMID, String V_REG_ID) { PosContext context = new PosContext(); PosMessage message = new PosMESMessageImpl(); String TcId = "NIE012090"; message.setTCID(TcId); message.setObject("MSG_ID", TcId); message.setObject("ORD_NO", V_ORD_NO); message.setObject("ORD_SEQ", V_ORD_SEQ); message.setObject("PROG_CD", V_PROG_CD); message.setObject("WGT", new BigDecimal(V_WGT)); message.setObject("BEF_PROG_CD", V_BEF_PROG_CD); message.setObject("BEF_WGT", new BigDecimal(V_BEF_WGT)); message.setObject("MAT_TYPE", V_MAT_TYPE); message.setObject("MAT_NO", V_MAT_NO); message.setObject("PGMID", V_PGMID); 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 null; } public PosContext NIE012100_CALL(String V_ORD_NO, String V_ORD_SEQ, String V_PGMID, String V_REG_ID) { PosContext context = new PosContext(); PosMessage message = new PosMESMessageImpl(); String TcId = "NIE012100"; message.setTCID(TcId); message.setObject("MSG_ID", TcId); message.setObject("ORD_NO", V_ORD_NO); message.setObject("ORD_SEQ", V_ORD_SEQ); message.setObject("PGMID", V_PGMID); 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; } }