/** * 报销申请 * * @return */ @RequestMapping( value = "expenseApply", method = {RequestMethod.GET, RequestMethod.POST}) public @ResponseBody Object addExpense(HttpServletRequest request) { ResponseResult responseResult = new ResponseResult(); // 获取请假申请信息 String jsonExpenseApplyInfo = HttpRequestUtil.getInst().getString("expenseApplyInfo"); if (StringUtils.isEmpty(jsonExpenseApplyInfo)) { throw new VyiyunException("报销申请信息为空!"); } try { JSONObject jsonExpenseApplyInfoObj = JSON.parseObject(URLDecoder.decode(jsonExpenseApplyInfo, "UTF-8")); String id = jsonExpenseApplyInfoObj.getString("id"); // 存在id说明是重新发起 if (StringUtils.isNotEmpty(id)) { jsonExpenseApplyInfoObj.put("isAgain", true); } else if (StringUtils.isEmpty(id)) { id = CommonUtil.GeneGUID(); jsonExpenseApplyInfoObj.put("id", id); } responseResult.setValue(id); expenseService.doApply(jsonExpenseApplyInfoObj); } catch (Exception e) { e.printStackTrace(); responseResult.setErrorMsg("请联系系统管理员"); responseResult.setStatus(-1); } // 返回数据 return responseResult; }
/** * 获取报销记录 * * @return */ @RequestMapping( value = "getExpenseRecord", method = {RequestMethod.GET, RequestMethod.POST}) public @ResponseBody Object getExpenseRecord(HttpServletRequest request) { ResponseResult responseResult = new ResponseResult(); try { // 获取请假申请信息 String operationType = HttpRequestUtil.getInst().getString("operationType"); if (StringUtils.isEmpty(operationType)) { responseResult.setStatus(-1); responseResult.setErrorMsg("参数operationType不能为空!"); throw new VyiyunException("无效的operationType值!"); } int pageIndex = -1; int pageSize = -1; String sPageIndex = HttpRequestUtil.getInst().getString("pageIndex"); String sPageSize = HttpRequestUtil.getInst().getString("pageSize"); if (StringUtils.isNotEmpty(sPageIndex) && sPageIndex.matches("\\d+")) { pageIndex = Integer.parseInt(sPageIndex); } if (StringUtils.isNotEmpty(sPageSize) && sPageSize.matches("\\d+")) { pageSize = Integer.parseInt(sPageSize); } Expense expense = new Expense(); expense.setUserId(HttpRequestUtil.getInst().getCurrentWeixinUser().getUserid()); Map<String, Object> params = new HashMap<String, Object>(); params.put("orderBy", "CreateTime desc"); params.put("operationType", operationType); responseResult.setValue( expenseService.queryExpenseRecord(expense, params, pageIndex, pageSize).getData()); } catch (Exception e) { LOGGER.debug("获取数据失败", e); responseResult.setStatus(-1); if (e instanceof VyiyunException) { responseResult.setErrorMsg(e.getMessage()); } else { responseResult.setErrorMsg("获取数据记录失败,请联系统管理员!"); } } return responseResult; }
/** * 获取报销记录 * * @return */ @RequestMapping( value = "getAuditRecord", method = {RequestMethod.GET, RequestMethod.POST}) public @ResponseBody Object getAuditRecord(HttpServletRequest request) { ResponseResult responseResult = new ResponseResult(); try { // 获取请假申请信息 String operationType = HttpRequestUtil.getInst().getString("operationType"); if (StringUtils.isEmpty(operationType)) { responseResult.setStatus(-1); responseResult.setErrorMsg("参数operationType不能为空!"); throw new VyiyunException("无效的operationType值!"); } int pageIndex = -1; int pageSize = -1; String sPageIndex = HttpRequestUtil.getInst().getString("pageIndex"); String sPageSize = HttpRequestUtil.getInst().getString("pageSize"); if (StringUtils.isNotEmpty(sPageIndex) && sPageIndex.matches("\\d+")) { pageIndex = Integer.parseInt(sPageIndex); } if (StringUtils.isNotEmpty(sPageSize) && sPageSize.matches("\\d+")) { pageSize = Integer.parseInt(sPageSize); } WeixinUser weixinUser = HttpRequestUtil.getInst().getCurrentWeixinUser(); Expense expense = new Expense(); expense.setUserId(weixinUser.getUserid()); Map<String, Object> params = new HashMap<String, Object>(); params.put("orderBy", "CreateTime desc"); String userName = HttpRequestUtil.getInst().getString("userName"); String startDate = HttpRequestUtil.getInst().getString("startDate"); String endDate = HttpRequestUtil.getInst().getString("endDate"); String expenseNum = HttpRequestUtil.getInst().getString("expenseNum"); String personType = HttpRequestUtil.getInst().getString("personType"); if (StringUtils.isNotEmpty(userName)) { params.put("uNameLike", userName); } if (StringUtils.isNotEmpty(expenseNum)) { params.put("expenseNumLIke", expenseNum); } if (StringUtils.isNotEmpty(startDate)) { params.put("startDate", DateUtil.stringToDate(startDate, "yyyy-MM-dd")); } if (StringUtils.isNotEmpty(endDate)) { params.put("endDate", DateUtil.stringToDate(endDate, "yyyy-MM-dd")); } if (StringUtils.isNotEmpty(endDate)) { params.put("endDate", DateUtil.stringToDate(endDate, "yyyy-MM-dd")); } if ("0".equals(personType)) { if ("1".equals(operationType)) { params.put("operationType", "1"); responseResult.setValue( expenseService.queryAuditRecord(expense, params, pageIndex, pageSize).getData()); } else if ("2".equals(operationType)) { params.put("personType", "0"); params.put("userId", weixinUser.getUserid()); responseResult.setValue( entityAccountService .queryEntityAccountExpense(params, pageIndex, pageSize) .getData()); } } else if ("2".equals(personType)) { if ("1".equals(operationType)) { params.put("operationType", "3"); responseResult.setValue( expenseService.queryAuditRecord(expense, params, pageIndex, pageSize).getData()); } else if ("2".equals(operationType)) { params.put("personType", "2"); params.put("userId", weixinUser.getUserid()); responseResult.setValue( entityAccountService .queryEntityAccountExpense(params, pageIndex, pageSize) .getData()); } } } catch (Exception e) { LOGGER.debug("获取数据失败", e); responseResult.setStatus(-1); if (e instanceof VyiyunException) { responseResult.setErrorMsg(e.getMessage()); } else { responseResult.setErrorMsg("获取数据记录失败,请联系统管理员!"); } } return responseResult; }