| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362 |
- package xin.glue.nui.G.G02;
- import java.math.BigDecimal;
- import xin.glue.ui.G.G01.XTBGCOMM;
- import xin.glue.ui.G.G01.XTBGCreateMaterial;
- import com.posdata.glue.biz.activity.PosActivity;
- import com.posdata.glue.biz.constants.PosBizControlConstants;
- import com.posdata.glue.biz.control.PosBizControlIF;
- import com.posdata.glue.biz.control.PosBizProvider;
- import com.posdata.glue.component.PosConstants;
- import com.posdata.glue.context.PosContext;
- import com.posdata.glue.dao.PosGenericDao;
- 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;
- public class XinSaveChargeProc extends PosActivity
- {
- public String runActivity(PosContext context)
- {
-
- PosGenericDao dao = getDao("mesdao");
- PosParameter param;
- PosRowSet rowset;
- PosRow row;
-
- XTBGCOMM xtbgcom = new XTBGCOMM(dao);
- XTBGCreateMaterial xtbcm = new XTBGCreateMaterial(dao);
-
- PosMessage message = context.getMessage();
-
- String mChargeNo = (String)message.get("CHARGE_NO"); // 炉次号
- String mPlanChargeNo = (String)message.get("PLAN_CHARGE_NO"); // 计划炉次号
- String mProcCd = (String)message.get("TREAT_NO"); // 处理站号
- String mEventCd = (String)message.get("EVENT_CD"); // 工序号
- String mTreatDtime = (String)message.get("EVENT_DTIME"); // 钢水重量
- BigDecimal mEventQty = (BigDecimal)message.get("EVENT_WGT"); // 钢水重量
- BigDecimal mTreatTemp = (BigDecimal)message.get("EVENT_TEMP"); // 处理温度
-
- BigDecimal sCastChargeSeq = null; //浇次内顺序
- BigDecimal sCastEdtChargeCnt = null; //板坯去向
- BigDecimal sPrevChargeWgt = null; //炉次重量
- String sStlGrd = null;
- String sBOF_STA_DTIME = null;
- String sBOF_END_DTIME = null;
- String sRH_STA_DTIME = null;
- String sRH_END_DTIME = null;
- String sLF_STA_DTIME = null;
- String sLF_END_DTIME = null;
- String sCAS_STA_DTIME = null;
- String sCAS_END_DTIME = null;
- String sLT_ARRV_DTIME = null;
- String sCASTING_STA_DTIME = null;
- String sCASTING_END_DTIME = null;
- String sCCM_DEP_DTIME = null;
-
- BigDecimal chargeWgt = null; //炉次重量
- BigDecimal tappingWgt = null; //转炉出钢重量
- String befProgCd = null; //前进程
- String progCd = null; //当前进程
- String chargeStat = null;
- BigDecimal ROW_BOF_TAPPING_WGT = null;
- BigDecimal ROW_CHARGE_WGT = null;
-
- if (mEventCd.equals("B01")) {
- if(sBOF_STA_DTIME == null ||sBOF_STA_DTIME.equals("")){
- sBOF_STA_DTIME = mTreatDtime;
- }
-
- } else if (mEventCd.equals("B02")) {
- if(sBOF_STA_DTIME == null ||sBOF_STA_DTIME.equals("")){
- sBOF_STA_DTIME = mTreatDtime;
- }
- } else if (mEventCd.equals("B03")) {
- if(sBOF_STA_DTIME == null ||sBOF_STA_DTIME.equals("")){
- sBOF_STA_DTIME = mTreatDtime;
- }
- } else if (mEventCd.equals("B04")) {
- sBOF_END_DTIME = mTreatDtime;
- if(sBOF_STA_DTIME == null ||sBOF_STA_DTIME.equals("")){
- sBOF_STA_DTIME = mTreatDtime;
- }
- } else if (mEventCd.equals("R03")) {sRH_STA_DTIME = mTreatDtime;
- } else if (mEventCd.equals("R04")) {sRH_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("L02")) {sLF_STA_DTIME = mTreatDtime;
- } else if (mEventCd.equals("L03")) {sLF_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("C02")) {sCAS_STA_DTIME = mTreatDtime;
- } else if (mEventCd.equals("C03")) {sCAS_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("J01")) {sLT_ARRV_DTIME = mTreatDtime;sCASTING_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("J02")) {sCASTING_STA_DTIME = mTreatDtime;sCASTING_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("J03")) {sCASTING_END_DTIME = mTreatDtime;
- } else if (mEventCd.equals("J04")) {
- sCCM_DEP_DTIME = mTreatDtime;sCASTING_END_DTIME = mTreatDtime;
- PosParameter pram = new PosParameter();
- pram.setWhereClauseParameter(0, sCCM_DEP_DTIME);
- pram.setWhereClauseParameter(1,mChargeNo);
- getDao("mesdao").update("NIG020200_LD_CCM_DEP_DTIME.update", pram);
- }
-
-
- //通过电文中接收的炉次号查询炉次参数表 TBF01_SPEC_CHARGE 取得的数据项 ,修改炼钢公共表 TBF02_CHARGE_COMM
- rowset = context.getRowSet("specCharge");
- if(rowset.hasNext()){
- row = rowset.next();
- sCastChargeSeq = (BigDecimal)row.getAttribute("CAST_CHARGE_SEQ"); //浇次内顺序
- sCastEdtChargeCnt = (BigDecimal)row.getAttribute("CAST_EDT_CHARGE_CNT"); //浇次内炉次数
- sPrevChargeWgt = (BigDecimal)row.getAttribute("PREV_CHARGE_WGT");
- sStlGrd = (String)row.getAttribute("STL_GRD");
- }
-
- String sql = "select * from tbg02_charge_comm where CHARGE_NO = ?";
- param = new PosParameter();
- param.setWhereClauseParameter(0, mChargeNo);
- rowset = this.getDao("mesdao").findByQueryStatement(sql,param);
- if(!rowset.hasNext()){
- xtbcm.CreateCharge("3"+mChargeNo.substring(1, 10));
- xtbcm.CreateSlab("3"+mChargeNo.substring(1, 10));
- }else{
- row = rowset.next();
- ROW_BOF_TAPPING_WGT = (BigDecimal)row.getAttribute("BOF_TAPPING_WGT");
- ROW_CHARGE_WGT = (BigDecimal)row.getAttribute("CHARGE_WGT");
- chargeStat = (String)row.getAttribute("CHARGE_STAT");
- if (chargeWgt == null) {chargeWgt = ROW_CHARGE_WGT;}
- if (tappingWgt == null) {tappingWgt = ROW_BOF_TAPPING_WGT;}
- if(chargeStat.equals("3")){
- return PosBizControlConstants.SUCCESS;
- }
- }
-
- if (mEventQty != null ) {chargeWgt = mEventQty;}
- if (mEventCd.equals("B04")) {tappingWgt = mEventQty;}
-
- param = new PosParameter();
- param.setWhereClauseParameter(0,"3" + mChargeNo.substring(1,10));
- PosRowSet L2Send = dao.find("UIG020020_L2_SEND_CHARGE.select", param);
- if(!L2Send.hasNext()){
- context.put("MESSAGES", "指示没有下发2级,不能操作");
- return PosBizControlConstants.SUCCESS;
- }
-
- //if( mEventCd.equals("J01") || mEventCd.equals("J02") || mEventCd.equals("J03") || mEventCd.equals("J04"))return PosBizControlConstants.SUCCESS;
- int chLth = mChargeNo.trim().length();
- if (chLth < 10 ) {
- return PosBizControlConstants.SUCCESS;
- }
-
-
-
- //steel making progress table and Steel making tracking table update
- xtbgcom.steelEventUpt(mChargeNo, mProcCd, mEventCd, mTreatTemp, chargeWgt, mTreatDtime, "2", sStlGrd, sCastEdtChargeCnt, sCastChargeSeq);
-
- //td md update
- String TdNo = null;
- String MdNo1 = null;
- String MdNo2 = null;
- if (mProcCd.substring(0,1).equals("J")) {
- param = new PosParameter();
- String sMC = mProcCd.substring(1,2);
- param.setWhereClauseParameter(0, "2");
- param.setWhereClauseParameter(1, "2");
- param.setWhereClauseParameter(2, sMC);
- param.setWhereClauseParameter(3, sMC);
- PosRowSet TdMdVo = this.getDao("mesdao").find("NIG020200_TD_MD.select", param);
- if (TdMdVo.hasNext() ) {
- PosRow TdMdROW = TdMdVo.next();
- TdNo = (String)TdMdROW.getAttribute("TD_NO");
- MdNo1 = (String)TdMdROW.getAttribute("MD_NO1");
- MdNo2 = (String)TdMdROW.getAttribute("MD_NO2");
- }
- }
- //Return Charge Search for setting return charge and return weight to the new charge no
- String RtnChNo = null;
- Number RtnChWgt = null;
- if (mEventCd.substring(0,1).equals("B")) {
- PosParameter paramB = new PosParameter();
- String sql1 = "select CHARGE_NO,RTN_CHARGE_WGT from tbg02_charge_comm where NEW_PLAN_CHARGE_NO = ?";
- paramB.setWhereClauseParameter(0, mPlanChargeNo);
- PosRowSet rtnChVO = this.getDao("mesdao").findByQueryStatement(sql1,paramB);
- if(rtnChVO.hasNext()) {
- PosRow rtnChROW = rtnChVO.next();
- RtnChNo = (String)rtnChROW.getAttribute("CHARGE_NO");
- RtnChWgt = (Number)rtnChROW.getAttribute("RTN_CHARGE_WGT");
- }
- }
- //炉次事件实绩修改
- param = new PosParameter();
- param.setWhereClauseParameter(0,TdNo); //中包号
- param.setWhereClauseParameter(1,MdNo1); //结晶器1
- param.setWhereClauseParameter(2,MdNo2); //结晶器2
- param.setWhereClauseParameter(3,sBOF_STA_DTIME);
- param.setWhereClauseParameter(4,sBOF_END_DTIME);
- param.setWhereClauseParameter(5,sRH_STA_DTIME);
- param.setWhereClauseParameter(6,sRH_END_DTIME);
- param.setWhereClauseParameter(7,sCAS_STA_DTIME);
- param.setWhereClauseParameter(8,sCAS_END_DTIME);
- param.setWhereClauseParameter(9,sLF_STA_DTIME);
- param.setWhereClauseParameter(10,sLF_END_DTIME);
- param.setWhereClauseParameter(11,sLT_ARRV_DTIME);
- param.setWhereClauseParameter(12,sCASTING_STA_DTIME);
- param.setWhereClauseParameter(13,sCASTING_END_DTIME);
- param.setWhereClauseParameter(14,RtnChNo); //回送炉号
- param.setWhereClauseParameter(15,RtnChWgt); //回送重量
- param.setWhereClauseParameter(16,chargeWgt); //装入量
- param.setWhereClauseParameter(17,tappingWgt); //转炉出钢重量
- param.setWhereClauseParameter(18,mChargeNo);
- this.getDao("mesdao").update("UIG030010_TREAT_DTIME_UPT_01", param);
-
-
- //炉次信息修改
- String PgmId = null;
- if(mEventCd.equals("J02")){
- PgmId = "XinCcmStart";
- }else{
- PgmId = mEventCd+"|SaveChrgProc";
- }
- if (mEventCd.substring(0,1).equals("L")){
- progCd = "JLF";
- }else if (mEventCd.substring(0,1).equals("R")){
- progCd = "JRF";
- }else if (mEventCd.substring(0,1).equals("V")){
- progCd = "JVF";
- }else if (mEventCd.substring(0,1).equals("C")){
- progCd = "JCF";
- }
- if(mEventCd.substring(0,1).equals("B")||mEventCd.substring(0,1).equals("J")){
- if (mEventCd.substring(0,1).equals("B")){
- if (progCd == null || progCd.equals("") || progCd.equals("JBB")){
- progCd = "JBB";
- befProgCd = "JBA";
- }
- }else{
- if (progCd == null || progCd.equals("")){
- progCd = "JJB";
- }
- }
- }
-
- //计划信息修改
- xtbgcom.specChargeProcUpt(mPlanChargeNo, "B", progCd);
- xtbgcom.specSlabProcUpt(mPlanChargeNo, "B");
-
- xtbgcom.chargeProcUpt(mChargeNo, "2", progCd, PgmId);
- //MODIFY BY WXY 20111121
- //SendProg_NIE012070( mPlanChargeNo,befProgCd,progCd,sPrevChargeWgt,PgmId);
- //SendProg_NIE012080();
-
- return PosBizControlConstants.SUCCESS;
- }
- public PosContext SendProg_NIE012070(String ChargeNo ,String befProgCd,String ProgCD,Number prevChargeWgt,String PgmId)
- {
- logger.logDebug("XinSaveChargeProc SendProg_NIE012070 " );
-
- PosContext context = new PosContext();
- PosMessage message = new PosMESMessageImpl();
-
-
- String TcId = "NIE012070";
-
-
-
-
- message.setTCID(TcId);
- message.setObject("MSG_ID",TcId);
- message.setObject("BEF_ORD_NO",null);
- message.setObject("BEF_ORD_SEQ",null);
- message.setObject("ORD_NO",null);
- message.setObject("ORD_SEQ",null);
- message.setObject("BEF_PROG_CD",befProgCd);
- message.setObject("PROG_CD",ProgCD);
- message.setObject("MAT_TYPE","CH");
- message.setObject("MAT_NO",ChargeNo);
- message.setObject("WGT",prevChargeWgt);
- message.setObject("PGMID",PgmId);
- message.setObject("REG_ID","LEVEL2");
-
- context.setMessage(message);
- this.processComponent(PosConstants.CREATE_MESSAGE, context);
- String transactionCode = context.getMessage().getTC();
-
-
- logger.logDebug("XinSaveChargeProc---> transactionCode:("+transactionCode+")" );
-
- message.setTCID(TcId);
-
- String serviceName = "NIE012070";
-
- String SERVICE_POSTFIX = "-service";
-
-
- context.put(PosBizControlConstants.SERVICE_NAME, serviceName + SERVICE_POSTFIX);
-
-
- context.setMessage(message);
-
-
- PosBizControlIF controller = PosBizProvider.getController();
-
- controller.doSubController(context,false);
-
-
- logger.logDebug("XinSaveChargeProc---> NIE012070 TC SendProgress end" );
-
-
- return null;
- }
- public PosContext SendProg_NIE012080()
- {
- logger.logDebug("XinSaveChargeProc SendProg_NIE012080 " );
-
-
-
- PosContext context = new PosContext();
- PosMessage message = new PosMESMessageImpl();
-
-
- String TcId = "NIE012080";
-
-
-
- message.setTCID(TcId);
- message.setObject("MSG_ID",TcId);
- message.setObject("AA",null);
-
- context.setMessage(message);
- this.processComponent(PosConstants.CREATE_MESSAGE, context);
- String transactionCode = context.getMessage().getTC();
-
-
- logger.logDebug("XinSaveChargeProc---> transactionCode:("+transactionCode+")" );
-
- message.setTCID(TcId);
-
- String serviceName = "NIE012080";
-
- String SERVICE_POSTFIX = "-service";
-
-
- context.put(PosBizControlConstants.SERVICE_NAME, serviceName + SERVICE_POSTFIX);
-
-
- context.setMessage(message);
-
-
- PosBizControlIF controller = PosBizProvider.getController();
-
- controller.doSubController(context,false);
-
- String SERVICE_ERR_MSG = (String) context.get("SERVICE_ERR_MSG");
- logger.logDebug("XinSaveChargeProc SERVICE_ERR_MSG:"+SERVICE_ERR_MSG );
-
-
-
-
- return null;
- }
- }
|