Ver Fonte

Merge branch 'master' of http://47.100.37.243:10191/wutt/manHourHousekeeper

hlp há 1 ano atrás
pai
commit
48921664a0

+ 33 - 9
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/ClueController.java

@@ -6,8 +6,10 @@ import com.management.platform.entity.Clue;
 import com.management.platform.entity.SysDict;
 import com.management.platform.entity.User;
 import com.management.platform.mapper.SysDictMapper;
+import com.management.platform.mapper.SysFunctionMapper;
 import com.management.platform.mapper.UserMapper;
 import com.management.platform.service.ClueService;
+import com.management.platform.service.SysFunctionService;
 import com.management.platform.service.UserService;
 import com.management.platform.util.HttpRespMsg;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -18,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -37,17 +40,19 @@ public class ClueController {
     private ClueService clueService;
     @Resource
     private UserMapper userMapper;
+    @Resource
+    private SysFunctionService sysFunctionService;
 
     @Resource
     private SysDictMapper sysDictMapper;
 
 
-    @RequestMapping("getClueSources")
-    public Object getClueSources(){
-        QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("code", "ClueSources");
-        return sysDictMapper.selectList(queryWrapper);
-    }
+//    @RequestMapping("getClueSources")
+//    public Object getClueSources(){
+//        QueryWrapper<SysDict> queryWrapper = new QueryWrapper<>();
+//        queryWrapper.eq("code", "ClueSources");
+//        return sysDictMapper.selectList(queryWrapper);
+//    }
     @RequestMapping("getDetail")
     public Object getDetail(@RequestBody Clue clue){
         HttpRespMsg msg = new HttpRespMsg();
@@ -57,9 +62,21 @@ public class ClueController {
     @RequestMapping("listClue")
     public Object list(@RequestBody Clue clue, HttpServletRequest request){
         //TODO token待定
-        // User user = userMapper.selectById(request.getHeader(  "Token"));
-        // clue.setCompanyId(user.getCompanyId());
-        List<Clue> list =  clueService.getList(clue);
+        User user = userMapper.selectById(request.getHeader("Token"));
+        clue.setCompanyId(user.getCompanyId());
+        boolean isAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看全部线索");
+        boolean isNotAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看负责部门线索");
+        List<Clue> list = new ArrayList<>();
+        if (!isAll){
+            //查看全部线索
+            list = clueService.getList(clue);
+        }else if (!isNotAll){
+            //查看负责部门线索 找出所处部门下所有的负责人
+            list = clueService.getList1(clue,user);
+        }else {
+            // 查看负责人为 自己 和 null的数据
+            list = clueService.getList2(clue,user);
+        }
         HashMap<Object, Object> map = new HashMap<>();
         map.put("data",list);
         map.put("total",clueService.getTotal(clue));
@@ -125,6 +142,13 @@ public class ClueController {
         clueService.isRollback(ids);
         return msg;
     }
+    @RequestMapping("claim")
+    public Object claim(@RequestBody Clue clue, HttpServletRequest request){
+        HttpRespMsg msg = new HttpRespMsg();
+        msg.setMsg("操作成功");
+        clueService.getAndTransfer(clue);
+        return msg;
+    }
     @RequestMapping("deleterDelete")
     public Object deleterDelete(@RequestBody List<Integer> ids){
         HttpRespMsg msg = new HttpRespMsg();

+ 4 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/mapper/ClueMapper.java

@@ -2,6 +2,7 @@ package com.management.platform.mapper;
 
 import com.management.platform.entity.Clue;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -16,8 +17,11 @@ import java.util.List;
 public interface ClueMapper extends BaseMapper<Clue> {
 
     List<Clue> list(Clue clue);
+    List<Clue> list1(@Param("clue") Clue clue ,@Param("userId") String userId);
     List<Clue> Deleterlist(Clue clue);
 
     Integer getTotal(Clue clue);
     Integer getDeleterTotal(Clue clue);
+
+    List<Clue> list2(Clue clue, String id);
 }

+ 5 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/ClueService.java

@@ -2,6 +2,7 @@ package com.management.platform.service;
 
 import com.management.platform.entity.Clue;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.management.platform.entity.User;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.List;
@@ -22,6 +23,8 @@ public interface ClueService extends IService<Clue> {
     void isDelete(List<Integer> ids);
 
     List<Clue> getList(Clue clue);
+    List<Clue> getList1(Clue clue, User user);
+    List<Clue> getList2(Clue clue, User user);
     List<Clue> getDeleterList(Clue clue);
 
     Integer getTotal(Clue clue);
@@ -32,4 +35,6 @@ public interface ClueService extends IService<Clue> {
     void isRollback(List<Integer> ids);
 
     void deleterDelete(List<Integer> ids);
+
+    void getAndTransfer(Clue clue);
 }

+ 31 - 8
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/ClueServiceImpl.java

@@ -4,11 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.management.platform.entity.Clue;
 import com.management.platform.entity.ClueLog;
+import com.management.platform.entity.User;
 import com.management.platform.mapper.ClueLogMapper;
 import com.management.platform.mapper.ClueMapper;
 import com.management.platform.service.ClueService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.management.platform.service.SysFunctionService;
+import com.management.platform.service.UserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -20,7 +22,7 @@ import java.util.List;
 
 /**
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  *
  * @author Seyason
@@ -35,6 +37,8 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
     private ClueMapper clueMapper;
     @Autowired
     private ClueLogMapper clueLogMapper;
+    @Autowired
+    private UserService userService;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -65,22 +69,22 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
     }
 
     private Clue setNull(Clue clue) {
-        if (clue.getPlate1() == ""){
+        if (clue.getPlate1() == "") {
             clue.setPlate1(null);
         }
-        if (clue.getPlate2() == ""){
+        if (clue.getPlate2() == "") {
             clue.setPlate2(null);
         }
-        if (clue.getPlate3() == ""){
+        if (clue.getPlate3() == "") {
             clue.setPlate3(null);
         }
-        if (clue.getPlate4() == ""){
+        if (clue.getPlate4() == "") {
             clue.setPlate4(null);
         }
-        if (clue.getPlate5() == ""){
+        if (clue.getPlate5() == "") {
             clue.setPlate5(null);
         }
-    return clue;
+        return clue;
     }
 
     @Override
@@ -98,6 +102,16 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
         return clueMapper.list(clue);
     }
 
+    @Override
+    public List<Clue> getList1(Clue clue, User user) {
+        return clueMapper.list1(clue, user.getId());
+    }
+
+    @Override
+    public List<Clue> getList2(Clue clue, User user) {
+        return clueMapper.list2(clue, user.getId());
+    }
+
     @Override
     public List<Clue> getDeleterList(Clue clue) {
         return clueMapper.Deleterlist(clue);
@@ -107,6 +121,7 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
     public Integer getTotal(Clue clue) {
         return clueMapper.getTotal(clue);
     }
+
     @Override
     public Integer getDeleterTotal(Clue clue) {
         return clueMapper.getDeleterTotal(clue);
@@ -116,7 +131,7 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
     public Clue getInfo(Clue clue) {
         Clue clue1 = clueMapper.selectById(clue.getId());
         QueryWrapper<ClueLog> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("clue_id",clue.getId());
+        queryWrapper.eq("clue_id", clue.getId());
         List<ClueLog> logs = clueLogMapper.selectList(queryWrapper);
         clue1.setClueLogList(logs);
         return clue1;
@@ -138,5 +153,13 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements Cl
         clueMapper.deleteBatchIds(ids);
     }
 
+    @Override
+    public void getAndTransfer(Clue clue) {
+        UpdateWrapper<Clue> updateWrapper = new UpdateWrapper<>();
+
+
+        clueMapper.update(clue, updateWrapper);
+    }
+
 
 }

+ 80 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/resources/mapper/ClueMapper.xml

@@ -68,6 +68,86 @@
         </if>
         limit #{pageIndex},#{pageFrom}
     </select>
+    <select id="list1" resultType="com.management.platform.entity.Clue">
+        select c.id,
+        c.company_id,
+        (select company_name from company where company_id = c.id) companyName,
+        c.clue_name,
+        c.clue_source_id,
+        c.phone,
+        c.email,
+        c.customer_industry_id,
+        c.customer_level_id,
+        c.address,
+        c.incharger_id,
+        c.remark,
+        c.is_delete,
+        c.plate1,
+        c.plate2,
+        c.plate3,
+        c.plate4,
+        c.plate5,
+        c.create_time,
+        c.create_id
+        from Clue c
+        where
+        c.company_id = #{companyId} and is_delete = 0
+        and c.incharger_id in
+        (SELECT id from `user` WHERE department_id = (SELECT department_id from `user` WHERe id = c.id))
+        and c.incharger_id is null
+        <if test="startTime != null and endTime != null ">
+            and  c.create_time BETWEEN  #{startTime} and #{endTime}
+        </if>
+        <if test="clueName != null and clueName != '' ">
+            and  c.clue_name =  #{clueName}
+        </if>
+        <if test="clueSourceId != null">
+            and  c.clue_source_id =  #{clueSourceId}
+        </if>
+        <if test="customerIndustryId != null">
+            and  c.customer_industry_id =  #{customerIndustryId}
+        </if>
+        limit #{pageIndex},#{pageFrom}
+    </select>
+    <select id="list2" resultType="com.management.platform.entity.Clue">
+        select c.id,
+        c.company_id,
+        (select company_name from company where company_id = c.id) companyName,
+        c.clue_name,
+        c.clue_source_id,
+        c.phone,
+        c.email,
+        c.customer_industry_id,
+        c.customer_level_id,
+        c.address,
+        c.incharger_id,
+        c.remark,
+        c.is_delete,
+        c.plate1,
+        c.plate2,
+        c.plate3,
+        c.plate4,
+        c.plate5,
+        c.create_time,
+        c.create_id
+        from Clue c
+        where
+        c.company_id = #{companyId} and is_delete = 0
+        and c.incharger_id = #{userId} and c.incharger_id is null
+        <if test="startTime != null and endTime != null ">
+            and  c.create_time BETWEEN  #{startTime} and #{endTime}
+        </if>
+        <if test="clueName != null and clueName != '' ">
+            and  c.clue_name =  #{clueName}
+        </if>
+        <if test="clueSourceId != null">
+            and  c.clue_source_id =  #{clueSourceId}
+        </if>
+        <if test="customerIndustryId != null">
+            and  c.customer_industry_id =  #{customerIndustryId}
+        </if>
+        limit #{pageIndex},#{pageFrom}
+    </select>
     <select id="Deleterlist" resultType="com.management.platform.entity.Clue">
         select c.id,
                c.company_id,