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 SaveCustSpec extends PosActivity { public String runActivity(PosContext context) { PosGenericDao dao = this.getDao("mesdao"); PosParameter param= null; String INFID = "UIB010272"; //datagrid1 String[] DEV_SPEC_CD = (String[])context.get("DEV_SPEC_CD");//牌号 //datagrid2 String[]CUSTSTL = (String[])context.get("CUSTSTL");//客户牌号 String[]CUSTNAME = (String[])context.get("CUSTNAME");//产品名称 String[]SPECABBSYM = (String[])context.get("SPEC_ABBSYM");//产品名称 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(CUSTSTL[i])) { continue; } else if("u".equals(rowStuts1[i]) && "Y".equals(CHK[i])) { param = new PosParameter(); param.setWhereClauseParameter(j++, CUSTSTL[i]); param.setWhereClauseParameter(j++, CUSTNAME[i]); param.setWhereClauseParameter(j++, SPECABBSYM[i]); param.setWhereClauseParameter(j++, REG_NM[0]); //下面是UPDATE的条件 param.setWhereClauseParameter(j++, DEV_SPEC_CD[0]); param.setWhereClauseParameter(j++, MARK[i]); dao.update("UIB010272_01.UPDATE", param); SaveModifyHistory.writeLog(dao, INFID, "U", "UIB010272_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++, CUSTSTL[i]); param.setValueParamter(j++, CUSTNAME[i]); param.setValueParamter(j++, SPECABBSYM[i]); param.setValueParamter(j++, REG_NM[0]); dao.insert("UIB010272_01.INSERT", param); SaveModifyHistory.writeLog(dao, INFID, "I", "UIB010272_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("UIB010272_02.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("UIB010272_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; } }