package xin.glue.ui.H.H04; import xin.glue.ui.common.PosGridSave; //import xin.glue.ui.common.component.PosSiteConfig; import xin.glue.ui.common.component.PosSiteLog; 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.vo.PosParameter; import com.posdata.glue.dao.vo.PosRowSet; /* * 磨削实绩的插入与保存 * @author TangLiang 唐亮 * @data 2008.10.09 */ public class saveGRollResult extends PosActivity{ public String runActivity(PosContext context) { //从页面获取提交数据 String[] status = (String[]) context.get("rowStuts"); //轧辊号 String[] ROLL_NO = (String[])context.get("ROLL_NO"); //轧辊类别 String[] ROLL_TYPE = (String[])context.get("ROLL_TYPE"); //入库直径 String[] ENT_DIA = (String[])context.get("ENT_DIA"); //辊型 String[] ROLL_SHAPE_CD = (String[])context.get("ROLL_SHAPE_CD"); //废弃直径 String[] DISUSE_DIA = (String[])context.get("DISUSE_DIA"); //磨削前直径 String[] BEF_DIA = (String[])context.get("BEF_DIA"); //磨削后直径 String[] CUR_DIA = (String[])context.get("CUR_DIA"); //磨削次数 String[] GRIND_STEPNO = (String[])context.get("GRIND_STEPNO"); //磨削时间 String[] GRIND_DTIME = (String[])context.get("GRIND_DTIME"); //超声波探伤 String[] SONIC_SIGHT = (String[])context.get("SONIC_SIGHT"); //表面硬度 String[] SURFACE_HARD = (String[])context.get("SURFACE_HARD"); //班次 String[] ENT_ROLL_WKSHIFT = (String[])context.get("ENT_ROLL_WKSHIFT"); //组 String[] ENT_ROLL_WKSGROUP = (String[])context.get("ENT_ROLL_WKSGROUP"); //作业者 String[] ROLL_ENT_EMP_ID = (String[])context.get("ROLL_ENT_EMP_ID"); //磨削完成时间。yyyy-mm-dd String[] GRIND_USE_DTIME = (String[])context.get("GRIND_USE_DTIME"); //磨削完成时间 hh-mm-ss String[] GRIND_USE_DTIME_T = (String[])context.get("GRIND_USE_DTIME_T"); //通过传入的辊号在表中查询结果是否存在,如果存在就更新否则就新增 PosParameter param0 = new PosParameter(); param0.setWhereClauseParameter(0, ROLL_NO[0]); String sql = "select ROLL_NO from tbh04_roll where ROLL_NO = ?"; PosRowSet rowset1 = getDao("mesdao").findByQueryStatement(sql, param0); //如果值存在就更新 if(rowset1.hasNext()){ //更新 PosParameter param1 = new PosParameter(); String RollStat = "G"; param1.setWhereClauseParameter(0, ROLL_TYPE[0]); param1.setWhereClauseParameter(1, ENT_DIA[0]); param1.setWhereClauseParameter(2, DISUSE_DIA[0]); //这里磨削前直径应该使用当次的磨削后直径,以使磨削前直径在减少 param1.setWhereClauseParameter(3, CUR_DIA[0]); param1.setWhereClauseParameter(4, CUR_DIA[0]); //磨削次数需要加一 前台处理 param1.setWhereClauseParameter(5, GRIND_STEPNO[0]); param1.setWhereClauseParameter(6, GRIND_DTIME[0]); param1.setWhereClauseParameter(7, ENT_ROLL_WKSHIFT[0]); param1.setWhereClauseParameter(8, ENT_ROLL_WKSGROUP[0]); param1.setWhereClauseParameter(9, ROLL_ENT_EMP_ID[0]); param1.setWhereClauseParameter(10, ROLL_SHAPE_CD[0]); param1.setWhereClauseParameter(11, SONIC_SIGHT[0]); param1.setWhereClauseParameter(12, SURFACE_HARD[0]); param1.setWhereClauseParameter(13, RollStat); param1.setWhereClauseParameter(14, GRIND_USE_DTIME[0]+GRIND_USE_DTIME_T[0]); param1.setWhereClauseParameter(15, ROLL_NO[0]); getDao("mesdao").update("UIH040040_01.update", param1); }else{ //这里如果轧辊表中不存在轧辊号信息时,说明轧辊号对应不上实物。给予相应的提示 //这里抛出异常,给予提示信息 logger.logDebug("saveGRollResult 输入的轧辊号在轧辊表 TBH04_ROLL 中不存在! "); String vtemp="ROLL_NO"; context.put("rs", vtemp); } return PosBizControlConstants.SUCCESS; } }