package com.kingdee.shr.batchAffair.web.handler; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang3.StringUtils; import org.apache.log4j.Logger; import org.springframework.ui.ModelMap; import com.kingdee.bos.BOSException; import com.kingdee.bos.Context; import com.kingdee.bos.dao.IObjectPK; import com.kingdee.bos.util.BOSUuid; import com.kingdee.eas.common.EASBizException; import com.kingdee.eas.custom.PlatPreResFactory; import com.kingdee.eas.custom.PlatPreResInfo; import com.kingdee.eas.framework.CoreBaseInfo; import com.kingdee.eas.hr.base.ApproveTypeEnum; import com.kingdee.eas.hr.base.HRBillStateEnum; import com.kingdee.shr.base.syssetting.context.SHRContext; import com.kingdee.shr.base.syssetting.exception.SHRWebException; import com.kingdee.shr.base.syssetting.web.handler.EditHandler; import com.kingdee.util.NumericExceptionSubItem; /** * Ô¤ÀëÖ°µ¥±à¼­½çÃæ * @author * */ public class PlatPreResEditHandler extends EditHandler{ private static Logger logger = Logger.getLogger(PlatPreResEditHandler.class); public String submitEffectAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws EASBizException{ CoreBaseInfo model = (CoreBaseInfo) request .getAttribute("dynamic_model"); Context ctx = SHRContext.getInstance().getContext(); IObjectPK objectPK; try { objectPK = PlatPreResFactory.getLocalInstance(ctx).submitEffect(model); model.setId(BOSUuid.read(objectPK.toString())); writeSuccessData(model.getId().toString()); } catch (EASBizException e) { e.printStackTrace(); throw new EASBizException(new NumericExceptionSubItem("001",e.getMessage())); } catch (BOSException e) { e.printStackTrace(); } catch (SHRWebException e) { e.printStackTrace(); } return null; } protected void beforeSubmit(HttpServletRequest request, HttpServletResponse response, CoreBaseInfo model) throws SHRWebException { PlatPreResInfo billInfo = (PlatPreResInfo)model; billInfo.setApproveType(ApproveTypeEnum.WORKFLOW); if (billInfo.getBillState() == null || billInfo.getBillState() != HRBillStateEnum.AUDITING) { billInfo.setBillState(HRBillStateEnum.SUBMITED); String operateStatus = request.getParameter("operateState"); if (!StringUtils.isEmpty(operateStatus) && "ADDNEW".equalsIgnoreCase(operateStatus)) { billInfo.setExtendedProperty("isAddNew", "isAddNew"); } // this.checkWorkFlowInstance(model); this.verifyModel(request, response, model); } } }