中扬CRM客户关系管理系统
LSH
2023-10-09 caac62f1f080ee8db3aba698f7f67ce105ad9ffe
src/main/java/com/zy/crm/manager/controller/CstmrController.java
@@ -16,9 +16,12 @@
import com.zy.crm.manager.entity.Cstmr;
import com.zy.crm.manager.entity.CstmrFoll;
import com.zy.crm.manager.entity.CstmrType;
import com.zy.crm.manager.entity.Order;
import com.zy.crm.manager.service.CstmrFollService;
import com.zy.crm.manager.service.CstmrService;
import com.zy.crm.manager.service.CstmrTypeService;
import com.zy.crm.manager.service.OrderService;
import com.zy.crm.manager.utils.CompanySearchUtils;
import com.zy.crm.system.entity.Dept;
import com.zy.crm.system.entity.Dic;
import com.zy.crm.system.entity.Role;
@@ -56,6 +59,8 @@
    private DicService dicService;
    @Autowired
    private DeptService deptService;
    @Autowired
    private OrderService orderService;
    @RequestMapping(value = "/cstmr/{id}/auth")
    @ManagerAuth
@@ -67,11 +72,23 @@
    @ManagerAuth
    public R page(@RequestParam(defaultValue = "1") Integer curr,
                  @RequestParam(defaultValue = "10") Integer limit,
                  @RequestParam(required = false) String followerName,
                  @RequestParam(required = false) String conditionName,
                  @RequestParam(required = false) String condition,
                  @RequestParam(required = false, value = "dept_id") Long deptId,
                  @RequestParam(required = false, value = "role_id") Long roleId,
                  @RequestParam(required = false, value = "user_id") Long userId){
        List<Integer> ids = new ArrayList<>();
        if (!Cools.isEmpty(followerName)){
            User username = userService.selectOne(new EntityWrapper<User>().eq("username", followerName));
            if (!Cools.isEmpty(username)){
                List<CstmrFoll> cstmrIds = cstmrFollService.selectCstmrIdUserId(username.getId().intValue());
                for (CstmrFoll id : cstmrIds){
                    ids.add(id.getCstmrId().intValue());
                }
            }else {
                return R.error("未查询到跟进人信息!");
            }
        }
        if (!Cools.isEmpty(conditionName)){
            switch (conditionName){
                case "director":
@@ -85,22 +102,29 @@
            }
        }
        return R.ok(cstmrService.getPage2(new Page<>(curr, limit)
        return R.ok(cstmrService.getPage3(new Page<>(curr, limit)
                , getHostId()
                , deptId == null ? userService.selectById(getUserId()).getDeptId() : deptId
                , deptId == null ? null : String.valueOf(deptId)
                , userId == null ? getUserId() : userId
                , roleId == null ? userService.selectById(getUserId()).getRoleId() : roleId
                , Cools.isEmpty(followerName) ? null : ids
                , conditionName
                , condition)
        );
    }
    @RequestMapping(value = "/cstmr/add/auth")
    @ManagerAuth
    @ManagerAuth(memo = "添加甲方单位")
    public R add(Cstmr cstmr) {
        Long hostId = getHostId();
        if (cstmrService.selectByUuid(hostId, cstmr.getUuid()) != null) {
            throw new CoolException("客户已存在");
        }
        if (cstmrService.selectByName(hostId, cstmr.getName()) != null) {
            throw new CoolException("客户已存在");
        }
        Cstmr cstmr1 = cstmrService.selectByName(hostId, cstmr.getName());
        if (cstmr1!=null){
            throw new CoolException("该客户信息已存在,业务员是:"+cstmr1.getDirector$());
        }
        cstmr.setHostId(hostId);
        cstmr.setUuid(cstmrService.getUuid(hostId));  // 客户代号
@@ -111,13 +135,14 @@
        cstmr.setCreateTime(new Date());
        cstmr.setUpdateBy(getUserId());
        cstmr.setUpdateTime(new Date());
        cstmr.setDirector(getUserId());
        cstmr.setStatus(1);
        cstmrService.insert(cstmr);
        return R.ok();
    }
   @RequestMapping(value = "/cstmr/update/auth")
   @ManagerAuth
   @ManagerAuth(memo = "更新甲方单位")
    public R update(Cstmr cstmr){
        if (Cools.isEmpty(cstmr) || null==cstmr.getId()){
            return R.error();
@@ -129,14 +154,28 @@
    }
    @RequestMapping(value = "/cstmr/delete/auth")
    @ManagerAuth
    @ManagerAuth(memo = "删除甲方单位")
    public R delete(@RequestParam(value="ids[]") Long[] ids){
        for (Long id : ids){
            int order = orderService.selectCount(new EntityWrapper<Order>().eq("cstmr_id", id));
            if (order!=0){
                return R.error("存在关联的跟踪项目,禁止删除!!!");
            }
            cstmrService.deleteById(id);
        }
        return R.ok();
    }
    @RequestMapping(value = "/cstmr/delete/one/{id}")
    @ManagerAuth(memo = "删除甲方单位")
    public R deleteOne(@PathVariable Long id) {
        int cstmr_id = orderService.selectCount(new EntityWrapper<Order>().eq("cstmr_id", id));
        if (cstmr_id!=0){
            return R.error("存在关联跟踪项目,禁止删除!!!");
        }
        cstmrService.deleteById(id);
        return R.ok();
    }
    @RequestMapping(value = "/cstmrQuery/auth")
@@ -155,6 +194,13 @@
        return R.ok(result);
    }
    @RequestMapping(value = "/cstmrSearch/auth")
    @ManagerAuth
    public R cstmrSearch(String condition) {
        List<Map<String, Object>> search = CompanySearchUtils.search(condition, 1);
        return R.ok(search);
    }
    @RequestMapping(value = "/cstmr/check/column/auth")
    @ManagerAuth
    public R query(@RequestBody JSONObject param) {