中扬CRM客户关系管理系统
LSH
2023-10-10 9c3c9bf7dfaf0f1c162a6aa06fdb7ca81711f70d
src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -42,7 +42,7 @@
    @Autowired
    private PriOnline2Service priOnline2Service;
    @Autowired
    private PriSalesService priSalesService;
    private PriQuoteService priQuoteService;
    @RequestMapping(value = "/order/{id}/auth")
    @ManagerAuth
@@ -135,45 +135,88 @@
        try{
            List<Plan> plans = planService.selectList(new EntityWrapper<Plan>().eq("order_id", orderId));
            for (Plan plan:plans){
                if (plan.getSettle$().equals("审批通过")){
                boolean signPlan = false;
                List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
                if (!Cools.isEmpty(priOnline2s)){
                    for (PriOnline2 priOnline2:priOnline2s){
                        boolean signPriOnline2 = false;
                        List<PriQuote> priQuotes = priQuoteService.selectList(new EntityWrapper<PriQuote>().eq("pri_online_id", priOnline2.getId()));
                        if (!Cools.isEmpty(priQuotes)){
                            for (PriQuote priQuote:priQuotes){
                                if (priQuote.getSettle()>=4){
                                    continue;
                                }
                                signPriOnline2 = true;
                                priQuote.setUserId(user.getId());
                                priQuote.setDeptId(user.getDeptId());
                                priQuote.setHostId(user.getHostId());
                                priQuote.setUpdateUserId(getUserId());
                                priQuote.setUpdateTime(now);
                                List<SettleDto> priQuoteDtos = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class);
                                List<SettleDto> priQuoteDtoList = new ArrayList<>();
                                for (SettleDto dto : priQuoteDtos) {
                                    switch (dto.getStep()) {
                                        case 1:
                                            dto.setMsg(dto.getMsg()+" ———————————————————————————————————————————————————————————————————————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+priQuote.getUserId$());
                                            dto.setUserId(priQuote.getUserId());
                                            dto.setUsername(priQuote.getUserId$());
                                            break;
                                        case 4:
                                            dto.setUserId(priQuote.getUserId());
                                            dto.setUsername(priQuote.getUserId$());
                                            break;
                                        default:
                                            break;
                                    }
                                    priQuoteDtoList.add(dto);
                                }
                                priQuote.setSettleMsg(JSON.toJSONString(priQuoteDtoList));
                                priQuoteService.updateById(priQuote);
                            }
                        }else {
                            signPriOnline2=true;
                        }
                        if (!signPriOnline2){
                            continue;
                        }
                        signPlan = true;
                        priOnline2.setUserId(user.getId());
                        priOnline2.setDeptId(user.getDeptId());
                        priOnline2.setHostId(user.getHostId());
                        priOnline2.setUpdateUserId(getUserId());
                        priOnline2.setUpdateTime(now);
                        List<SettleDto> priOnline2Dtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
                        List<SettleDto> priOnline2DtoList = new ArrayList<>();
                        for (SettleDto dto : priOnline2Dtos) {
                            switch (dto.getStep()) {
                                case 0:
                                    dto.setMsg(dto.getMsg()+" ———————————————————————————————————————————————————————————————————————————————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+priOnline2.getUser$());
                                    break;
                                case 3:
                                    dto.setUserId(priOnline2.getUserId());
                                    dto.setUsername(priOnline2.getUser$());
                                    break;
                                default:
                                    break;
                            }
                            priOnline2DtoList.add(dto);
                        }
                        priOnline2.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
                        priOnline2Service.updateById(priOnline2);
                    }
                }else {
                    signPlan=true;
                }
                if (!signPlan){
                    continue;
                }
                List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
                for (PriOnline2 priOnline2:priOnline2s){
                    List<PriSales> priSalesList = priSalesService.selectList(new EntityWrapper<PriSales>().eq("pri_online2_id", priOnline2.getId()));
                    for (PriSales priSales:priSalesList){
                        priSales.setUserId(user.getId());
                        priSales.setDeptId(user.getDeptId());
                        priSales.setHostId(user.getHostId());
                        priSalesService.updateById(priSales);
                    }
                    priOnline2.setUserId(user.getId());
                    priOnline2.setDeptId(user.getDeptId());
                    priOnline2.setHostId(user.getHostId());
                    priOnline2.setUpdateUserId(getUserId());
                    priOnline2.setUpdateTime(now);
//                    List<SettleDto> priOnline2Dtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
//                    List<SettleDto> priOnline2DtoList = new ArrayList<>();
//                    for (SettleDto dto : priOnline2Dtos) {
//                        switch (dto.getStep()) {
//                            case 1:
//                                dto.setMsg(dto.getMsg()+" —————— "+DateUtils.convert(now)+" 跟踪项目修改负责人为:"+plan.getUserId$());
//                                dto.setUserId(plan.getUserId());
//                                dto.setUsername(plan.getUserId$());
//                                break;
//                            case 4:
//                                dto.setUserId(plan.getUserId());
//                                dto.setUsername(plan.getUserId$());
//                                break;
//                            default:
//                                break;
//                        }
//                        priOnline2DtoList.add(dto);
//                    }
//                    plan.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
                    priOnline2Service.updateById(priOnline2);
                }
                plan.setUserId(user.getId());
                plan.setDeptId(user.getDeptId());
                plan.setHostId(user.getHostId());
@@ -221,6 +264,15 @@
        return R.ok();
    }
    @PostMapping(value = "/order/business/list/auth")
    @ManagerAuth
    public R orderBusiness(@RequestParam Long orderId){
        List<KeyValueVo> vos = new ArrayList<>();
        vos.add(new KeyValueVo("出差申请", 1L));
        vos.add(new KeyValueVo("其它出差", 2L));
        return R.ok().add(vos);
    }
    @RequestMapping(value = "/orderQuery/auth")
    @ManagerAuth
    public R query(String condition) {