package xin.glue.ui.G.G06; 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; import com.posdata.glue.util.log.PosLog; import com.posdata.glue.util.log.PosLogFactory; /* * auth:wangxiaoyan * date:2008-12-18 * desc:班次组的编制 */ public class XinSaveShiftData extends PosActivity { static PosLog logger = PosLogFactory.getLogger(XinSaveShiftData.class); public String runActivity(PosContext context) { // // 20082 // 23 // 1 // String[] procCd = (String[]) context.get("PROC_CD"); // 工厂区分 String[] grMonth = (String[]) context.get("GR_YYYYMM"); // 月份 String[] grDate = (String[]) context.get("GR_DD"); // String[] grShift = (String[]) context.get("GR_SHIFT"); // 班次 String[] grGroup = (String[]) context.get("GR_GROUP"); // 组 if (grGroup.length > 0) { for (int i = 0; i < grGroup.length; i++) { StringBuffer orderClf = new StringBuffer(); orderClf.append("select * from tbg02_shift_group "); orderClf.append("where proc_cd = ? "); orderClf.append("and gr_yyyymm = ? "); orderClf.append("and gr_dd = ? "); orderClf.append("and gr_shift = ?"); logger.logInfo("-------->orderClf = " + orderClf); PosParameter param0 = new PosParameter(); param0.setWhereClauseParameter(0, procCd[i]); param0.setWhereClauseParameter(1, grMonth[i]); param0.setWhereClauseParameter(2, grDate[i]); param0.setWhereClauseParameter(3, grShift[i]); PosRowSet rowSet0 = this.getDao("mesdao").findByQueryStatement(orderClf.toString(), param0); // 该班次已经编制,进行修改 if (rowSet0.hasNext()) { param0 = new PosParameter(); param0.setWhereClauseParameter(0, grGroup[i]); param0.setWhereClauseParameter(1, procCd[i]); param0.setWhereClauseParameter(2, grMonth[i]); param0.setWhereClauseParameter(3, grDate[i]); param0.setWhereClauseParameter(4, grShift[i]); logger.logInfo("-------> Starting update shift "); this.getDao("mesdao").update("UIG060020_shift.update",param0); } // 该班次尚未编制,插入操作 else { param0 = new PosParameter(); param0.setValueParamter(0, grGroup[i]); param0.setValueParamter(1, procCd[i]); param0.setValueParamter(2, grMonth[i]); param0.setValueParamter(3, grDate[i]); param0.setValueParamter(4, grShift[i]); logger.logInfo("-------> Starting insert shift "); this.getDao("mesdao").insert("UIG060020_shift.insert",param0); } } } return PosBizControlConstants.SUCCESS; } }