| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303 |
- package xin.glue.ui.B.B02;
- 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;
- /**
- * @Description 保存需要多次检验的材质信息,手工材质判定界面{界面ID:UIB020160}
- * @author 梅贵平{meiguiping}
- * @date 2008-12-24 下午04:24:05
- * @JDK Version jdk1.4.2
- */
- public class SaveMoreTimeQltyExp extends PosActivity
- {
- public String runActivity(PosContext context)
- {
- //生成dao及posparamter
- PosGenericDao dao = this.getDao("mesdao");
- PosParameter param= new PosParameter();
-
- ///获取请求参数
- String[]REG_ID = (String[])context.get("REG_ID");//登录人
-
- //获取表格1的请求参数
- String[] COIL_NO = (String[])context.get("COIL_NO");//钢卷号
- String[] QLTY_MAN_DEC_GRD = (String[])context.get("QLTY_MAN_DEC_GRD");//钢卷号的材质结果
- String[] QLTY_MAN_INS_TP = (String[])context.get("QLTY_MAN_INS_TP");//是否为手工判定
- String[] SMP_NO = (String[])context.get("SMP_NO");//试样号
- String[] SMP_CUT_LOC = (String[])context.get("SMP_CUT_LOC");//试样位置
- String[] rowStatus1 = (String[])context.get("rowStatus1");
-
- //获取表格2的请求参数
- String[] QLTY_CD = (String[])context.get("QLTY_CD");//材质代码
- String[] QLTY_SEQ = (String[])context.get("QLTY_SEQ");
- String[] QLTY_VAL_WK1 = (String[])context.get("QLTY_VAL_WK1");//材质实际值
- String[] QLTY_UNIT_WK1 = (String[])context.get("QLTY_UNIT_WK1");//类型
- String[] QLTY_VAL_WK2 = (String[])context.get("QLTY_VAL_WK2");//值
- String[] QLTY_UNIT_WK2 = (String[])context.get("QLTY_UNIT_WK2");//类型
- String[] QLTY_DCS_RST = (String[])context.get("QLTY_DCS_RST");//各个检验仓木的结果
- String[] COIL_NO1 = (String[])context.get("COIL_NO1");//钢卷号
- String[] SMP_NO1 = (String[])context.get("SMP_NO1");//试样号
- String[] SMP_CUT_LOC1 = (String[])context.get("SMP_CUT_LOC1");//位置
- //EX用于判断在TBB02_REDCS_QLTY是需要update还是需要insert,若值为Y则为insert,否则为update
- String[] EX = (String[])context.get("EX");
- String[] rowStatus2 = (String[])context.get("rowStatus2");
- //对表格1执行增、删、改
- //UPDATE TBH02_COIL_COMM SET MATLQLTY_DEC_GRD = ? WHERE COIL_NO = ?
- if(rowStatus1!=null)
- {
- int len1 = rowStatus1.length;
- if(len1 > 0)
- {
- for(int i = 0; i < len1; i++)
- {
- param = new PosParameter();
- param.setWhereClauseParameter(0, QLTY_MAN_DEC_GRD[i]);//材质判定等级
- param.setWhereClauseParameter(1, COIL_NO[i]);
- dao.update("UIB020160_01.UPDATE", param);
-
- //修改试样号的状态到“D”,即综合判定待机
- param = new PosParameter();
- param.setWhereClauseParameter(0, QLTY_MAN_INS_TP[i]);//是否为手工判定
- param.setWhereClauseParameter(1, REG_ID[0]);//登录人
- param.setWhereClauseParameter(2, SMP_NO[i]);
- param.setWhereClauseParameter(3, SMP_CUT_LOC[i]);
- dao.update("UIB020160_012.UPDATE", param);
- }
- }
- }
- //对表格2执行增、删、改
- //对于TBB02_WORK_QLTY和TBB02_REWORK_QLTY,若请求的位置参数为W的话,则要区分1和2
- if(rowStatus2!=null)
- {
- int n = 0;
- int len2 = rowStatus2.length;
- if(len2>0)
- {
- for(int j = 0; j < len2; j++)
- {
- if("u".equals(rowStatus2[j]))
- {
- //update TBB02_WORK_QLTY
- if("W".equals(SMP_CUT_LOC1[0]) && "".equals(QLTY_SEQ[j]) )//若位置为W
- {
- //头的--1
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK1[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK1[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "1");//1为头
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- dao.update("UIB020160_02.UPDATE" , param);
- //尾的--2
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK2[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK2[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "2");//2为尾
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- dao.update("UIB020160_02.UPDATE" , param);
- }
- else if(!"W".equals(SMP_CUT_LOC1[0]) && "".equals(QLTY_SEQ[j]) )//若位置非W
- {
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK1[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK1[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, SMP_CUT_LOC1[0]);
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- dao.update("UIB020160_02.UPDATE" , param);
- }
- //update TBB02_REWORK_QLTY
- if("W".equals(SMP_CUT_LOC1[0]) && !"".equals(QLTY_SEQ[j]))
- {
- //头
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK1[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK1[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "1");
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.update("UIB020160_03.UPDATE" , param);
- //尾
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK2[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK2[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "2");
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.update("UIB020160_03.UPDATE" , param);
- }
- if(!"W".equals(SMP_CUT_LOC1[0]) && !"".equals(QLTY_SEQ[j]))
- {
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_VAL_WK1[j]);
- param.setWhereClauseParameter(n++, QLTY_UNIT_WK1[j]);
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, SMP_CUT_LOC1[0]);
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.update("UIB020160_03.UPDATE" , param);
- }
- //update or insert TBB02_REDCS_QLTY
- if(!"".equals(QLTY_SEQ[j]))
- {
- if("Y".equals(EX[j]))//为y时需要insert
- {
- n = 0;
- param = new PosParameter();
- param.setValueParamter(n++, COIL_NO1[0]);
- param.setValueParamter(n++, QLTY_CD[j]);
- param.setValueParamter(n++, QLTY_SEQ[j]);
- param.setValueParamter(n++, QLTY_DCS_RST[j]);
- dao.insert("UIB020160_02.INSERT", param);
- }
- else//非y时为update
- {
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_DCS_RST[j]);
- param.setWhereClauseParameter(n++, COIL_NO1[0]);
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.update("UIB020160_04.UPDATE" , param);
- }
- }// update redcs_qlty end
- else//insert or update tbb02_dcs_qlty
- {
- if("Y".equals(EX[j]))//insert
- {
- param = new PosParameter();
- param.setValueParamter(0 , COIL_NO1[0]);
- param.setValueParamter(1, QLTY_CD[j]);
- param.setValueParamter(2, QLTY_DCS_RST[j]);
- dao.insert("UIB020160_03.INSERT", param);
- }
- else//update
- {
- param = new PosParameter();
- param.setWhereClauseParameter(0, QLTY_DCS_RST[j]);
- param.setWhereClauseParameter(1, COIL_NO1[0]);
- param.setWhereClauseParameter(2, QLTY_CD[j]);
- dao.update("UIB020160_05.UPDATE", param);
- }
- }
- }//if "u" end
- if("i".equals(rowStatus2[j]))
- {
- //insert TBB02_REWORK_QLTY
- if("W".equals(SMP_CUT_LOC1[0]))
- {
- //头
- n = 0;
- param = new PosParameter();
- param.setValueParamter(n++, QLTY_CD[j]);
- param.setValueParamter(n++, QLTY_SEQ[j]);
- param.setValueParamter(n++, QLTY_VAL_WK1[j]);
- param.setValueParamter(n++, QLTY_UNIT_WK1[j]);
- param.setValueParamter(n++, SMP_NO1[0]);
- param.setValueParamter(n++, "1");
- dao.insert("UIB020160_01.INSERT", param);
- //尾
- n = 0;
- param = new PosParameter();
- param.setValueParamter(n++, QLTY_CD[j]);
- param.setValueParamter(n++, QLTY_SEQ[j]);
- param.setValueParamter(n++, QLTY_VAL_WK2[j]);
- param.setValueParamter(n++, QLTY_UNIT_WK2[j]);
- param.setValueParamter(n++, SMP_NO1[0]);
- param.setValueParamter(n++, "2");
- dao.insert("UIB020160_01.INSERT", param);
- }
- else
- {
- n = 0;
- param = new PosParameter();
- param.setValueParamter(n++, QLTY_CD[j]);
- param.setValueParamter(n++, QLTY_SEQ[j]);
- param.setValueParamter(n++, QLTY_VAL_WK1[j]);
- param.setValueParamter(n++, QLTY_UNIT_WK1[j]);
- param.setValueParamter(n++, SMP_NO1[0]);
- param.setValueParamter(n++, SMP_CUT_LOC1[0]);
- dao.insert("UIB020160_01.INSERT", param);
- }
- //insert TBB02_REDCS_QLTY
- n = 0;
- param = new PosParameter();
- param.setValueParamter(n++, COIL_NO1[0]);
- param.setValueParamter(n++, QLTY_CD[j]);
- param.setValueParamter(n++, QLTY_SEQ[j]);
- param.setValueParamter(n++, QLTY_DCS_RST[j]);
- dao.insert("UIB020160_02.INSERT", param);
- }// if "i" end
- if("d".equals(rowStatus2[j]))
- {
- //update TBB02_REWORK_QLTY
-
- if("W".equals(SMP_CUT_LOC1[j]))
- {
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "1");
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.delete("UIB020160_01.DELETE", param);
-
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, "2");
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.delete("UIB020160_01.DELETE", param);
-
- }
- else
- {
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, SMP_NO1[0]);
- param.setWhereClauseParameter(n++, SMP_CUT_LOC1[0]);
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.delete("UIB020160_01.DELETE", param);
- }
-
- //update TBB02_REDCS_QLTY
- n = 0;
- param = new PosParameter();
- param.setWhereClauseParameter(n++, QLTY_DCS_RST[j]);
- param.setWhereClauseParameter(n++, COIL_NO1[0]);
- param.setWhereClauseParameter(n++, QLTY_CD[j]);
- param.setWhereClauseParameter(n++, QLTY_SEQ[j]);
- dao.delete("UIB020160_02.DELETE", param);
- }//if "d" end
- }//for end
- }// if "len2>0" end
- }//if "rowStatus2!=null" end
-
- //修改试样号的状态到“D”,即综合判定待机
- param = new PosParameter();
- param.setWhereClauseParameter(0, REG_ID[0]);
- param.setWhereClauseParameter(1, SMP_NO1[0]);
- param.setWhereClauseParameter(2, SMP_CUT_LOC1[0]);
- dao.update("UIB020160_011.UPDATE", param);
-
- return PosBizControlConstants.SUCCESS;
- }
- }
|