| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- 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.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.PosMessage;
- /*
- * author:wangxiaoyan
- * Date:08-10-25
- * desc:接收转炉实绩的电文信息 更新转炉实绩表 TBG02_BOF_RESULT以后 相应的修改炼钢公共表 TBG02_CHARGE_COMM
- * 如果当前炉次信息在炉次公共表中已经存在的话,只需更新炉次的工序信息,进程信息,重量,
- * 如果当前炉次信息在炉次公共表中不存在的话,还需要通过炉次号 查询 炉次参数表 获取炉次参数信息 插入一条新记录
- */
- public class XinSaveBofProcChargecomm 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);
-
- try{
- PosMessage message = context.getMessage();
-
-
- // 从电文中获取的数据项
- String chargeNo = (String)message.get("CHARGE_NO");
- String planChargeNo = (String)message.get("PLAN_CHARGE_NO");
- String bofNo = (String)message.get("BOF_NO");
- BigDecimal tappingWgt = (BigDecimal)message.get("TAPPING_WGT");
- String tappingEndDtime = (String)message.get("TAPPING_END_DTIME");
- // 从炉次参数表 TBF01_SPEC_CHARGE 查询出来的数据项 用于插入 炉次参数表
- String lineProcCd = "";
- String prodnmCd = "";
- String stlGrd = "";
- String hcrClf = "";
- String castManaNo = "";
- String SLAB_RT = "";
- BigDecimal castChargeSeq = null;
- BigDecimal castEdtChargeCnt = null;
-
- //chargeNo = chargeNo+"A";
-
- PosParameter param0 = new PosParameter();
- PosParameter param1 = new PosParameter();
- PosParameter param2 = new PosParameter();
-
- int chLth = chargeNo.trim().length();
-
- if (chLth < 10 ) {
-
- logger.logInfo("XinSaveBofRawMaterialResult CHARGE_NO ERROR !!!!-->"+chargeNo );
-
- return PosBizControlConstants.SUCCESS;
- }
-
- // 通过电文中接收的炉次号查询炼钢参数表 TBF01_SPEC_CHARGE 取得的数据项 ,修改炼钢公共表 TBG02_CHARGE_COMM
- param2.setWhereClauseParameter(0, planChargeNo);
- PosRowSet rowset2 = this.getDao("mesdao").find("NIG020210_02.select", param2);
- if(rowset2.hasNext())
- {
- PosRow row2 = rowset2.next();
- lineProcCd = (String)row2.getAttribute("LINE_PROC_CD");
- prodnmCd = (String)row2.getAttribute("PRODNM_CD");
- stlGrd = (String)row2.getAttribute("STL_GRD");
- hcrClf = (String)row2.getAttribute("HCR_CLF");
- castManaNo = (String)row2.getAttribute("CAST_MANA_NO");
- castChargeSeq = (BigDecimal)row2.getAttribute("CAST_CHARGE_SEQ");
- castEdtChargeCnt = (BigDecimal)row2.getAttribute("CAST_EDT_CHARGE_CNT");
- SLAB_RT = (String)row2.getAttribute("SLAB_RT");
-
-
- //检查炉次,板坯记录是否存在
- String sql = "select * from tbg02_charge_comm where CHARGE_NO = ?";
- param = new PosParameter();
-
- param.setWhereClauseParameter(0, chargeNo);
- rowset = this.getDao("mesdao").findByQueryStatement(sql,param);
- if(!rowset.hasNext()){
- xtbcm.CreateCharge("3"+chargeNo.substring(1, 10));
- xtbcm.CreateSlab("3"+chargeNo.substring(1, 10));
- }
-
- param0.setWhereClauseParameter(0, chargeNo);
- PosRowSet rowset0 = this.getDao("mesdao").find("NIG020210_03.select", param0);
- if(rowset0.hasNext())
- {
- PosRow rowsetROW = rowset0.next();
- String currProgCd = (String)rowsetROW.getAttribute("CUR_PROG_CD");
- String befProgCd = (String)rowsetROW.getAttribute("BEF_PROG_CD");
- String CHARGE_STAT = (String)rowsetROW.getAttribute("CHARGE_STAT");
-
-
- if (CHARGE_STAT != null && CHARGE_STAT.equals("2")) {
-
- if (currProgCd == null) {
- currProgCd = "JBF";
- befProgCd = "JBB";
- }
- // 如果是修改转炉实绩的话 作业进程就不会变
- else if ( !(currProgCd.equals("JCF") || currProgCd.equals("JLF") || currProgCd.equals("JRF") || currProgCd.equals("JJB"))) {
-
- currProgCd = "JBF";
- befProgCd = "JBB";
-
- }
- }
- param1.setWhereClauseParameter(0,bofNo);
- param1.setWhereClauseParameter(1,currProgCd);
- param1.setWhereClauseParameter(2,tappingWgt);
- param1.setWhereClauseParameter(3,tappingEndDtime);
- param1.setWhereClauseParameter(4,befProgCd);
- param1.setWhereClauseParameter(5,tappingWgt);
- param1.setWhereClauseParameter(6,SLAB_RT);
- param1.setWhereClauseParameter(7,chargeNo);
- this.getDao("mesdao").update("NIG020210_02.update",param1);
- }
- // 如果当前炉次信息在炉次公共表中不存在的话,还需要通过炉次号 查询 炉次参数表 获取炉次参数信息 插入一条新记录
- /*else
- {
- param1.setValueParamter(0, chargeNo);
- param1.setValueParamter(1, planChargeNo);
- param1.setValueParamter(2, lineProcCd);
- param1.setValueParamter(3, prodnmCd);
- param1.setValueParamter(4, stlGrd);
- param1.setValueParamter(5, hcrClf);
- param1.setValueParamter(6, castManaNo);
- param1.setValueParamter(7, castChargeSeq);
- param1.setValueParamter(8, castEdtChargeCnt);
- param1.setValueParamter(9, bofNo);
- param1.setValueParamter(10, tappingWgt);
- param1.setValueParamter(11, tappingEndDtime);
- param1.setValueParamter(12, tappingWgt);
- param1.setValueParamter(13, SLAB_RT);
-
- this.getDao("mesdao").insert("NIG020210_02.insert",param1);
- }
- */
- }
- }catch(Exception ex){
- logger.logDebug("--------------------->" + ex);
- logger.logError("--------------------->" + ex);
- }
-
-
- // 如果当前炉次信息在炉次公共表中已经存在的话,只需更新炉次的工序信息,进程信息,重量,
-
-
- return PosBizControlConstants.SUCCESS;
- }
- }
|