中扬CRM客户关系管理系统
Junjie
2023-08-24 480431571f806f9ef66f77ec42034549cd573a31
src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
@@ -158,7 +158,7 @@
        reimburseOnline.setCheckData(param.getCheckData());
        reimburseOnline.setTemplateName(param.getTemplateName());
        reimburseOnline.setSettle(1);  // 1.开始
        reimburseOnline.setSettle(0);  // 0.创建
        User manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 获取部门领导
        ProcessPermissions processPermissions3 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 3).eq("process", param.getCheckData().equals("否")? "3-1" : "3-2"));//3:报销流程
@@ -182,7 +182,7 @@
        map.put("templateName",param.getTemplateName());
        map.put("checkData",param.getCheckData());
        reimburseOnline.setForm(JSON.toJSONString(map));
        reimburseOnline.setMemberId(manager.getId());
        reimburseOnline.setMemberId(getUser().getId());
        if (!reimburseOnlineService.insert(reimburseOnline)){
            return R.error("添加报销主档失败");
@@ -449,7 +449,45 @@
        assert reimburseOnline != null;
        Integer settle = reimburseOnline.getSettle();
        String process="";
        Date now = new Date();
        switch (reimburseOnline.getSettle()) {
            case 0:
                User user2 = userService.selectById(reimburseOnline.getUserId());
                User manager1 = userService.getDeptManager(getHostId(), user2.getDeptId());
                if (Cools.isEmpty(getUser())) {
                    return R.error("抱歉,您没有提交的权限");
                }
                if (!getUserId().equals(getUser().getId())) {
                    return R.error("抱歉,您没有提交的权限");
                }
                // 修改 settle 步骤数据
                List<SettleDto> list1 = JSON.parseArray(reimburseOnline.getSettleMsg(), SettleDto.class);
                for (SettleDto dto : list1) {
                    switch (dto.getStep()) {
                        case 0:
                            dto.setCurr(Boolean.FALSE);
                            break;
                        case 1:
                            dto.setCurr(Boolean.TRUE);
                            dto.setMsg(getUser().getNickname() + "提交完成");
                            dto.setTime(DateUtils.convert(now));
                            break;
                        default:
                            break;
                    }
                }
                reimburseOnline.setSettleMsg(JSON.toJSONString(list1));
                // 修改规划单状态
                reimburseOnline.setSettle(1);
                reimburseOnline.setUpdateUserId(getUserId());
                reimburseOnline.setUpdateTime(now);
                reimburseOnline.setMemberId(manager1.getId());
                if (!reimburseOnlineService.updateById(reimburseOnline)) {
                    throw new CoolException("审核失败,请联系管理员");
                }
                break;
            case 1:
                // 本部门经理审核
                User user = userService.selectById(reimburseOnline.getUserId());
@@ -466,7 +504,7 @@
                            case 2:
                                dto.setCurr(Boolean.TRUE);
                                dto.setMsg("部门经理" + manager.getNickname() + "审批通过");
                                dto.setTime(DateUtils.convert(new Date()));
                                dto.setTime(DateUtils.convert(now));
                                break;
                            default:
                                break;
@@ -477,7 +515,7 @@
                    // 修改规划单状态
                    reimburseOnline.setSettle(2);  // 总裁办待审
                    reimburseOnline.setUpdateUserId(getUserId());
                    reimburseOnline.setUpdateTime(new Date());
                    reimburseOnline.setUpdateTime(now);
                    ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 3).eq("process", reimburseOnline.getCheckData().equals("否") ? "3-1" : "3-2"));//3:报销流程
                    reimburseOnline.setMemberId(processPermissions.getUserId());
@@ -525,7 +563,7 @@
                    }else if (dto.getStep().equals(settle+1)){
                        dto.setCurr(Boolean.TRUE);
                        dto.setMsg("报价流程节点"+process+"确认人:"+planLeader.getNickname() + "审批通过");
                        dto.setTime(DateUtils.convert(new Date()));
                        dto.setTime(DateUtils.convert(now));
                        break;
                    }else {
                        break;
@@ -535,7 +573,7 @@
                // 修改规划单状态
                reimburseOnline.setSettle(settle+1);
                reimburseOnline.setUpdateUserId(getUserId());
                reimburseOnline.setUpdateTime(new Date());
                reimburseOnline.setUpdateTime(now);
                String[] split = process.split("-");
                if (settle!=5){
                    settle=settle+2;