package xin.glue.ui.B.B01; import java.sql.CallableStatement; import xin.glue.ui.B.common.SaveModifyHistory; 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; /** * 标准交付条件项目保存(界面ID:UIB010271) * @author 万磊{wanlei} * @date 2016-7-13 */ public class SaveSpecAddCut extends PosActivity { public String runActivity(PosContext context) { PosGenericDao dao = this.getDao("mesdao"); PosParameter param= null; String INFID = "UIB010271"; //datagrid1 String[] DEV_SPEC_CD = (String[])context.get("DEV_SPEC_CD");//外形尺寸标准号 //datagrid2 String[]WTH_MIN = (String[])context.get("WTH_MIN");//宽度最小 String[]WTH_MAX = (String[])context.get("WTH_MAX");//宽度最大 String[]THK_MIN = (String[])context.get("THK_MIN");//厚度最小 String[]THK_MAX = (String[])context.get("THK_MAX");//厚度最大 String[]ADD_WTH = (String[])context.get("ADD_WTH");//宽度最小 String[]EMEC_TP = (String[])context.get("EMEC_TP");//切边 String[] rowStuts1 = (String[])context.get("rowStuts1");//对应datagrid1 String[] REG_NM = (String[])context.get("REG_NM");//操作人 String[] CHK = (String[])context.get("CHK"); String[] MARK = (String[])context.get("MARK"); int j = 0; if(rowStuts1 != null)//grid2被变更后的操作 { int len = rowStuts1.length; for(int i = 0; i < len; i++) { j = 0; //不允许为空 if("".equals(DEV_SPEC_CD[0]) ) { break;//若为空则直接退出循环 } else if("".equals(WTH_MIN[i]) || "".equals(WTH_MAX[i]) ) { continue; } else if("u".equals(rowStuts1[i]) && "Y".equals(CHK[i])) { param = new PosParameter(); param.setWhereClauseParameter(j++, EMEC_TP[i]); param.setWhereClauseParameter(j++, WTH_MIN[i]); param.setWhereClauseParameter(j++, WTH_MAX[i]); param.setWhereClauseParameter(j++, THK_MIN[i]); param.setWhereClauseParameter(j++, THK_MAX[i]); param.setWhereClauseParameter(j++, ADD_WTH[i]); param.setWhereClauseParameter(j++, REG_NM[0]); //下面是UPDATE的条件 param.setWhereClauseParameter(j++, DEV_SPEC_CD[0]); param.setWhereClauseParameter(j++, MARK[i]); dao.update("UIB010271_01.UPDATE", param); SaveModifyHistory.writeLog(dao, INFID, "U", "UIB010271_01.UPDATE", param.getWhereClauseParamters(), "", REG_NM[0]); } else if("i".equals(rowStuts1[i]) && "Y".equals(CHK[i])) { param = new PosParameter(); param.setValueParamter(j++, DEV_SPEC_CD[0]); param.setValueParamter(j++, EMEC_TP[i]); param.setValueParamter(j++, WTH_MIN[i]); param.setValueParamter(j++, WTH_MAX[i]); param.setValueParamter(j++, THK_MIN[i]); param.setValueParamter(j++, THK_MAX[i]); param.setValueParamter(j++, ADD_WTH[i]); param.setValueParamter(j++, REG_NM[0]); dao.insert("UIB010271_01.INSERT", param); SaveModifyHistory.writeLog(dao, INFID, "I", "UIB010271_01.INSERT", param.getValueParameters(), "", REG_NM[0]); } else if("d".equals(rowStuts1[i]) && "Y".equals(CHK[i])) { param = new PosParameter(); param.setWhereClauseParameter(j++, MARK[i]); dao.delete("UIB010271_03.DELETE", param); SaveModifyHistory.writeLog(dao, INFID, "D", "UIB010270_02.DELETE", param.getWhereClauseParamters(), "", REG_NM[0]); } } } String[]rowStatusD = (String[])context.get("rowStatusD"); if(rowStatusD != null)//针对grid1删除操作 { param = new PosParameter(); param.setWhereClauseParameter(0, DEV_SPEC_CD[0]); dao.update("UIB010271_01.DELETE", param); SaveModifyHistory.writeLog(dao, INFID, "D", "UIB010270_01.DELETE", param.getWhereClauseParamters(), "", REG_NM[0]); } //复制 // String[]CALL = (String[])context.get("CALL"); // if(CALL != null) // { // String[]NeedGrd = (String[])context.get("NeedGrd");//等级代码 // String[]delSpec = (String[])context.get("delSpec");//外形尺寸标准 // CallableStatement cstm = null; // cstm = dao.getCallableStatement("UIB010270_01.CALL"); // try // { // cstm.setString(1, DEV_SPEC_CD[0]); // cstm.setString(2, DEV_DGR_CD[0]); // cstm.setString(3, delSpec[0]); // cstm.setString(4, NeedGrd[0]); // cstm.setString(6, REG_NM[0]); // cstm.registerOutParameter(7, java.sql.Types.VARCHAR); // cstm.execute(); // }catch(Exception ex) // { // try // { // if(cstm != null) cstm.close(); // }catch(Exception e) // { // e.printStackTrace(); // } // } // } return PosBizControlConstants.SUCCESS; } }