| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186 |
- 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:UIB010270)
- * @author 梅贵平{meiguiping}
- * @date 2008-10-25
- */
- public class SaveSpecDelItem extends PosActivity
- {
- public String runActivity(PosContext context)
- {
- PosGenericDao dao = this.getDao("mesdao");
- PosParameter param= null;
-
- String INFID = "UIB010270";
- //datagrid1
- String[] DEV_SPEC_CD = (String[])context.get("DEV_SPEC_CD");//外形尺寸标准号
-
- //datagrid2
- String[] DEV_DGR_CD = (String[])context.get("DEV_DGR_CD");//等级代码
- String[]DEL_TOL_CD = (String[])context.get("DEL_TOL_CD");//公差名
- String[]THK_MIN = (String[])context.get("THK_MIN");//厚度最小
- String[]THK_MAX = (String[])context.get("THK_MAX");//厚度最大
- String[]WTH_MIN = (String[])context.get("WTH_MIN");//宽度最小
- String[]WTH_MAX = (String[])context.get("WTH_MAX");//宽度最大
- String[]TOL_MIN_SYM = (String[])context.get("TOL_MIN_SYM");//下限符号
- String[]TOL_MIN = (String[])context.get("TOL_MIN");//下限值
- String[]TOL_MAX_SYM = (String[])context.get("TOL_MAX_SYM");//上限符号
- String[]TOL_MAX = (String[])context.get("TOL_MAX");//上限值
- String[]TOL_UNIT = (String[])context.get("TOL_UNIT");//其他单位
- String[]TOL_VAL = (String[])context.get("TOL_VAL");//其它值
- String[]DEV_RMK = (String[])context.get("DEV_RMK");//备注
- String[]EMEC_TP = (String[])context.get("EMEC_TP");//是否切边
-
- //主键被修改时起作用
- String[] DEV_DGR_CD1 = (String[])context.get("DEV_DGR_CD1");//等级代码
- String[]DEL_TOL_CD1 = (String[])context.get("DEL_TOL_CD1");//公差名
- String[]THK_MIN1 = (String[])context.get("THK_MIN1");//厚度最小
- String[]THK_MAX1 = (String[])context.get("THK_MAX1");//厚度最大
- String[]WTH_MIN1 = (String[])context.get("WTH_MIN1");//宽度最小
- String[]WTH_MAX1 = (String[])context.get("WTH_MAX1");//宽度最大
- String[]EMEC_TP1 = (String[])context.get("EMEC_TP1");//是否切边
-
- String[] rowStuts1 = (String[])context.get("rowStuts1");//对应datagrid1
- String[] REG_NM = (String[])context.get("REG_NM");//操作人
- String[] CHK = (String[])context.get("CHK");
-
- 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]) || "".equals(DEV_DGR_CD[0]) )
- {
- break;//若为空则直接退出循环
- }
- else if("".equals(DEL_TOL_CD[i])||"".equals(THK_MIN[i]) ||"".equals(THK_MAX[i])
- || "".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++, DEL_TOL_CD[i]);
- param.setWhereClauseParameter(j++, DEV_DGR_CD[i]);
- param.setWhereClauseParameter(j++, THK_MIN[i]);
- param.setWhereClauseParameter(j++, THK_MAX[i]);
- param.setWhereClauseParameter(j++, WTH_MIN[i]);
- param.setWhereClauseParameter(j++, WTH_MAX[i]);
- param.setWhereClauseParameter(j++, "T2".equals(DEL_TOL_CD[i])?EMEC_TP[i]:"EM");
- param.setWhereClauseParameter(j++, TOL_MIN_SYM[i]);
- param.setWhereClauseParameter(j++, TOL_MIN[i]);
- param.setWhereClauseParameter(j++, TOL_MAX_SYM[i]);
- param.setWhereClauseParameter(j++, TOL_MAX[i]);
- param.setWhereClauseParameter(j++, TOL_UNIT[i]);
- param.setWhereClauseParameter(j++, TOL_VAL[i]);
- param.setWhereClauseParameter(j++, DEV_RMK[i]);//备注
- param.setWhereClauseParameter(j++, REG_NM[0]);
- //下面是UPDATE的条件
- param.setWhereClauseParameter(j++, DEV_SPEC_CD[0]);
- param.setWhereClauseParameter(j++, DEV_DGR_CD1[i]);
- param.setWhereClauseParameter(j++, DEL_TOL_CD1[i]);
- param.setWhereClauseParameter(j++, THK_MIN1[i]);
- param.setWhereClauseParameter(j++, THK_MAX1[i]);
- param.setWhereClauseParameter(j++, WTH_MIN1[i]);
- param.setWhereClauseParameter(j++, WTH_MAX1[i]);
- param.setWhereClauseParameter(j++, "T2".equals(DEL_TOL_CD1[i])?EMEC_TP1[i]:"EM");
- dao.update("UIB010270_01.UPDATE", param);
- SaveModifyHistory.writeLog(dao, INFID, "U", "UIB010270_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++, DEV_DGR_CD[i]);
- param.setValueParamter(j++, DEL_TOL_CD[i]);
- param.setValueParamter(j++, THK_MIN[i]);
- param.setValueParamter(j++, THK_MAX[i]);
- param.setValueParamter(j++, WTH_MIN[i]);
- param.setValueParamter(j++, WTH_MAX[i]);
- param.setValueParamter(j++, "T2".equals(DEL_TOL_CD[i])?EMEC_TP[i]:"EM");
- param.setValueParamter(j++, TOL_MIN_SYM[i]);
- param.setValueParamter(j++, TOL_MIN[i]);
- param.setValueParamter(j++, TOL_MAX_SYM[i]);
- param.setValueParamter(j++, TOL_MAX[i]);
- param.setValueParamter(j++, TOL_UNIT[i]);
- param.setValueParamter(j++, TOL_VAL[i]);
- param.setValueParamter(j++, DEV_RMK[i]);
- param.setValueParamter(j++, REG_NM[0]);
- dao.insert("UIB010270_01.INSERT", param);
- SaveModifyHistory.writeLog(dao, INFID, "I", "UIB010270_01.INSERT", param.getValueParameters(), "", REG_NM[0]);
- }
- else if("d".equals(rowStuts1[i]) && "Y".equals(CHK[i]))
- {
- param = new PosParameter();
- param.setWhereClauseParameter(j++, DEV_SPEC_CD[0]);
- param.setWhereClauseParameter(j++, DEV_DGR_CD[i]);
- param.setWhereClauseParameter(j++, DEL_TOL_CD[i]);
- param.setWhereClauseParameter(j++, THK_MIN[i]);
- param.setWhereClauseParameter(j++, THK_MAX[i]);
- param.setWhereClauseParameter(j++, WTH_MIN[i]);
- param.setWhereClauseParameter(j++, WTH_MAX[i]);
- param.setWhereClauseParameter(j++, EMEC_TP[i]);
- dao.delete("UIB010270_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]);
- param.setWhereClauseParameter(1, DEV_DGR_CD[0]);
- dao.update("UIB010270_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;
- }
- }
|