@Override public String execute() { HttpServletRequest request = ServletActionContext.getRequest(); User entity; UserHelper userHelper = AppContextUtil.getAppContext().getBean("userHelper", UserHelper.class); try { String createUserLoginId = ParamUtil.getString(request, "createUserLoginId"); if (userHelper.getUserByUserId(createUserLoginId) != null) { request.setAttribute( AppConsts.MSG_ERROR, MessageHelper.getMessage(MessageConsts.USER_EXIST)); return ERROR; } entity = setEntity(request); userHelper.saveEntity(entity); } catch (Exception e) { if (MessageConsts.MSG_COMMON_SESSION_TIMEOUT.equals(e.getMessage())) { request.setAttribute(AppConsts.MSG_ERROR, MessageHelper.getMessage(e.getMessage())); } else { request.setAttribute( AppConsts.MSG_ERROR, MessageHelper.getMessage(MessageConsts.MSG_PAYMENT_ERROR)); } return ERROR; } request.setAttribute("xID", String.valueOf(entity.getxID())); request.setAttribute( AppConsts.MSG_SUCCESS, MessageHelper.getMessage(MessageConsts.MSG_COMMON_SUBMIT_SUC)); entity = userHelper.getUserByXId(entity.getxID()); // request.setAttribute("entity", entity); return SUCCESS; }
private Payment setEntity(HttpServletRequest request) throws Exception { User user = (User) ParamUtil.getSessionAttr(request, "LOGIN_USER"); if (user == null) throw new Exception(MessageConsts.MSG_COMMON_SESSION_TIMEOUT); String userId = user.getxLOGIN_ID(); Payment entity = new Payment(); int companyPrincipleId = ParamUtil.getInt(request, "companyPrincipleId"); int projectId = ParamUtil.getInt(request, "projectId"); int companyId = -1; CompanyPrincipalHelper companyPrincipalHelper = AppContextUtil.getAppContext() .getBean("companyPrincipalHelper", CompanyPrincipalHelper.class); CompanyPrincipal companyPrincipal = companyPrincipalHelper.getCompanyPrincipal(companyPrincipleId); if (companyPrincipal != null) { companyId = companyPrincipal.getxCOMPANY_xID(); } double payAmt = ParamUtil.getDouble(request, "payAmt"); Date payDate = ParamUtil.getDate(request, "payDate"); String sourcexID = ParamUtil.getString(request, "xID"); /* String paymentWhat = URLDecoder.decode(ParamUtil.getString(request, "paymentWhat"), "utf-8"); String remark = URLDecoder.decode(ParamUtil.getString(request, "remark"), "utf-8");*/ String paymentWhat = ParamUtil.getString(request, "paymentWhat"); String remark = ParamUtil.getString(request, "remark"); if (!StringUtil.isEmpty(sourcexID)) { entity.setxID(Integer.valueOf(sourcexID)); entity.setxUPDATE_ID(userId); } else { entity.setxCREATER_ID(userId); } entity.setxPAY_AMT(payAmt); entity.setxPAY_DATE(payDate); entity.setxPAY_REASON(paymentWhat); entity.setxREMARK(remark); entity.setxCOMPANY_PRINCIPAL_xID(companyPrincipleId); entity.setxPROJECT_xID(projectId); entity.setxCOMPANY_xID(companyId); return entity; }
private User setEntity(HttpServletRequest request) throws Exception { User user = (User) ParamUtil.getSessionAttr(request, "LOGIN_USER"); if (user == null) throw new Exception(MessageConsts.MSG_COMMON_SESSION_TIMEOUT); String userId = user.getxLOGIN_ID(); User entity = new User(); DeptHelper deptHelper = AppContextUtil.getAppContext().getBean("deptHelper", DeptHelper.class); String deptId = ParamUtil.getString(request, "deptId"); Dept dept = deptHelper.getByXID(Integer.valueOf(deptId), true); // ParamUtil.setSessionAttr(request, "dept", dept); String createUserLoginId = ParamUtil.getString(request, "createUserLoginId"); String createUserDisplayName = ParamUtil.getString(request, "createUserDisplayName"); String createUserPWD = ParamUtil.getString(request, "createUserPWD"); String sourcexID = ParamUtil.getString(request, "xID"); if (!StringUtil.isEmpty(sourcexID)) { entity.setxID(Integer.valueOf(sourcexID)); entity.setxUPDATE_ID(userId); } else { entity.setxCREATER_ID(userId); } entity.setxDEPT_xID(Integer.valueOf(deptId)); entity.setxPRIVILEGE_xID(dept.getPrivilege().getxID()); entity.setxPRIVILEGE_xNAME(dept.getPrivilege().getxPRIVILEGE_NAME()); entity.setxLOGIN_ID(createUserLoginId); entity.setxDISPLAY_NAME(createUserDisplayName); entity.setxPWD(createUserPWD); return entity; }
private void handleBudget(HttpServletRequest request, Payment entity) throws Exception { BudgetActionHelper budgetActionHelper = AppContextUtil.getAppContext().getBean("budgetActionHelper", BudgetActionHelper.class); BudgetHelper budgetHelper = AppContextUtil.getAppContext().getBean("budgetHelper", BudgetHelper.class); // handle budget User user = (User) ParamUtil.getSessionAttr(request, "LOGIN_USER"); if (user == null) throw new Exception(MessageConsts.MSG_COMMON_SESSION_TIMEOUT); Budget currentBudget = budgetHelper.getBudgetByPaydate(user.getxDEPT_xID(), entity.getxPAY_DATE()); // if there are no budget,then no paymentAction too if (currentBudget == null) { return; } BudgetAction paymenAction = new BudgetAction(); paymenAction.setxACTION(MessageConsts.BUDGET_TYPE_PAYMENT); paymenAction.setxPAYMENT_ID(entity.getxID()); paymenAction.setxACTION_AMT(entity.getxPAY_AMT()); paymenAction.setxCREATER_ID(user.getxLOGIN_ID()); if (currentBudget != null) { paymenAction.setxBUDGET_xID(currentBudget.getxID()); paymenAction.setxSOURCE_AMT(currentBudget.getxBALANCE_AMT()); } budgetActionHelper.insert(paymenAction); // handle borrow int deptId = ParamUtil.getInt(request, "deptId", 0); double borrowAmt = ParamUtil.getDouble(request, "borrowAmtHidden", 0); logger.info("PaymentAction-->borrowDeptId:" + deptId); logger.info("PaymentAction-->borrowAmt:" + borrowAmt); if (deptId > 0 && borrowAmt > 0) { Budget borrowBudget = budgetHelper.getBudgetByPaydate(deptId, entity.getxPAY_DATE()); BudgetAction borrowOutAction = new BudgetAction(); borrowOutAction.setxBUDGET_xID(borrowBudget.getxID()); borrowOutAction.setxPAYMENT_ID(entity.getxID()); borrowOutAction.setxACTION(MessageConsts.BUDGET_TYPE_BORROW_OUT); borrowOutAction.setxSOURCE_AMT(borrowBudget.getxBALANCE_AMT()); borrowOutAction.setxACTION_AMT(borrowAmt); borrowOutAction.setxCREATER_ID(user.getxLOGIN_ID()); budgetActionHelper.insert(borrowOutAction); borrowBudget.setxBALANCE_AMT(Calculator.sub(borrowBudget.getxBALANCE_AMT(), borrowAmt)); budgetHelper.update(borrowBudget); BudgetAction borrowInAction = new BudgetAction(); borrowInAction.setxBUDGET_xID(currentBudget.getxID()); borrowInAction.setxPAYMENT_ID(entity.getxID()); borrowInAction.setxACTION(MessageConsts.BUDGET_TYPE_BORROW_IN); borrowInAction.setxSOURCE_AMT(currentBudget.getxBALANCE_AMT()); borrowInAction.setxACTION_AMT(borrowAmt); borrowInAction.setxRELATED_BUDGET_ACTION_ID(borrowOutAction.getxID()); borrowInAction.setxCREATER_ID(user.getxLOGIN_ID()); budgetActionHelper.insert(borrowInAction); borrowOutAction.setxRELATED_BUDGET_ACTION_ID(borrowInAction.getxID()); budgetActionHelper.update(borrowOutAction); } double currentBalanceAmt = Calculator.add( Calculator.sub(currentBudget.getxBALANCE_AMT(), entity.getxPAY_AMT()), borrowAmt); currentBudget.setxBALANCE_AMT(currentBalanceAmt); budgetHelper.update(currentBudget); }