Selaa lähdekoodia

fix(优化群组人员数量)

gengyang 5 vuotta sitten
vanhempi
commit
1c2708cbaa

+ 2 - 0
src/main/java/com/mokamrp/privates/mapper/RoomTagMapper.java

@@ -2,6 +2,7 @@ package com.mokamrp.privates.mapper;
 
 import com.mokamrp.privates.mapper.pojo.RoomTag;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Component;
 
 /**
  * <p>
@@ -11,6 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author gy
  * @since 2021-04-22
  */
+@Component
 public interface RoomTagMapper extends BaseMapper<RoomTag> {
 
 }

+ 3 - 4
src/main/java/com/mokamrp/privates/mapper/WorkContactRoomMapper.xml

@@ -58,9 +58,8 @@
         mc_work_contact_room AS a
         LEFT JOIN mc_work_contact AS b ON b.id = a.contact_id
         LEFT JOIN mc_work_employee AS c ON c.id = a.employee_id
-        <where>
+        WHERE
             ${ew.sqlSegment}
-        </where>
     </select>
 
     <select id="getListByRoomIdTotal" resultType="Integer">
@@ -69,9 +68,9 @@
         FROM
         mc_work_contact_room AS a
         LEFT JOIN mc_work_contact AS b ON b.id = a.contact_id
-        <where>
+        LEFT JOIN mc_work_employee AS c ON c.id = a.employee_id
+        WHERE
             ${ew.sqlSegment}
-        </where>
     </select>
 
 </mapper>

+ 5 - 6
src/main/java/com/mokamrp/privates/mapper/vo/WorkContactRoomGroupDataVo.java

@@ -13,7 +13,7 @@ import java.util.Date;
 public class WorkContactRoomGroupDataVo {
 
     private Integer num;
-    private Integer room_id;
+    private Integer roomId;
 
     public Integer getNum() {
         return num;
@@ -23,13 +23,12 @@ public class WorkContactRoomGroupDataVo {
         this.num = num;
     }
 
-    public Integer getRoom_id() {
-        return room_id;
+    public Integer getRoomId() {
+        return roomId;
     }
 
-    public void setRoom_id(Integer room_id) {
-        this.room_id = room_id;
+    public void setRoomId(Integer roomId) {
+        this.roomId = roomId;
     }
 
-
 }

+ 2 - 4
src/main/java/com/mokamrp/privates/service/impl/WorkContactRoomServiceImpl.java

@@ -43,7 +43,6 @@ public class WorkContactRoomServiceImpl extends ServiceImpl<WorkContactRoomMappe
 
         Iterator fileterIt = indexHandle.getFilter().entrySet().iterator();
         QueryWrapper<WorkContactRoomByRoomIdVo> warpper = new QueryWrapper<WorkContactRoomByRoomIdVo>();
-        //.@leon where like,=,<>
         while (fileterIt.hasNext()) {
             Map.Entry entray = (Map.Entry) fileterIt.next();
             Object key = entray.getKey();
@@ -53,9 +52,8 @@ public class WorkContactRoomServiceImpl extends ServiceImpl<WorkContactRoomMappe
             if (op.get(key) == null || op.get(key).isEmpty() || op.get(key).toString().equals("=")) {
                 warpper.eq(StringUtils.humpToLine2(key.toString()), value.toString());
             } else if (op.get(key).toString().equals("like")) {
-                warpper.like(StringUtils.humpToLine2(key.toString()), "%" + value.toString() + "%");
-            } else if (op.get(key).toString().equals("<>")) {
-                warpper.ne(StringUtils.humpToLine2(key.toString()), value.toString());
+                warpper.and(wrapper -> wrapper.like(StringUtils.humpToLine2(key.toString()), "%" + value.toString() + "%")
+                        .or().like("c.name", "%" + value.toString() + "%"));
             }
         }
 

+ 16 - 21
src/main/java/com/mokamrp/privates/service/impl/WorkRoomServiceImpl.java

@@ -62,8 +62,6 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
     @Override
     public Map<String, Object> getPageList(GetWorkRoomHandle handle) {
 
-        Integer pagesize = handle.getPagesize();
-        Integer page = handle.getPage();
         Map<String, Object> resMap = new HashMap<String, Object>();
         resMap.put("list", null);
         resMap.put("total", 0);
@@ -155,6 +153,7 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
             tagObj.in("a.id", ids);
             List<HashMap<String, Object>> tagMapData = mapperObj.getRoomTagList(tagObj);
 
+
             if (dataById.size() > 0) {
                 int j  = list.size();
                 list = list.stream().map(WorkRwoomVo -> {
@@ -171,7 +170,6 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
                         detail.setLeftNum(dataById.get(detail.getId()).get("left_num"));
                     }
 
-
                     for (HashMap<String,Object> m :tagMapData){
                         if(m.get("id").toString().equals(detail.getId().toString())){
                             if(m.get("tag_names") != null){
@@ -184,7 +182,6 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
                         }
                     }
 
-
                     return detail;
                 }).collect(Collectors.toList());
             }
@@ -343,7 +340,6 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
         QueryWrapper<WorkContactRoom> contactRoomQueryWrapperTodayAdd = new QueryWrapper<WorkContactRoom>();
         QueryWrapper<WorkContactRoom> contactRoomQueryWrapperTodayLeft = new QueryWrapper<WorkContactRoom>();
 
-
         contactRoomQueryWrapperTotal.in("room_id", ids);
         contactRoomQueryWrapperTotal.eq("status", 1);
 
@@ -369,35 +365,34 @@ public class WorkRoomServiceImpl extends ServiceImpl<WorkRoomMapper, WorkRoom> i
             temp.put("total", o.getNum());
             temp.put("add_num", 0);
             temp.put("left_num", 0);
-            dataById.put(o.getRoom_id(), temp);
+            dataById.put(o.getRoomId(), temp);
         }
 
         HashMap<String, Integer> tempSetLeft = new HashMap<String, Integer>();
-        for (WorkContactRoomGroupDataVo o : todayLefts) {
-            if (dataById.get(o.getRoom_id()) == null) {//不存在
+        for (WorkContactRoomGroupDataVo l : todayLefts) {
+            if (dataById.get(l.getRoomId()) == null) {//不存在
                 temp.put("total", 0);
-                temp.put("left_num", o.getNum());
+                temp.put("left_num", l.getNum());
                 temp.put("add_num", 0);
-                dataById.put(o.getRoom_id(), temp);
+                dataById.put(l.getRoomId(), temp);
             } else {
-                tempSetLeft = dataById.get(o.getRoom_id());
-                tempSetLeft.put("left_num", o.getNum());
-                dataById.put(o.getRoom_id(), tempSetLeft);
+                tempSetLeft = dataById.get(l.getRoomId());
+                tempSetLeft.put("left_num", l.getNum());
+                dataById.put(l.getRoomId(), tempSetLeft);
             }
-
         }
 
         HashMap<String, Integer> tempSetAdd = new HashMap<String, Integer>();
-        for (WorkContactRoomGroupDataVo o : todayAdds) {
-            if (dataById.get(o.getRoom_id()) == null) {
+        for (WorkContactRoomGroupDataVo a : todayAdds) {
+            if (dataById.get(a.getRoomId()) == null) {
                 temp.put("total", 0);
-                temp.put("add_num", o.getNum());
+                temp.put("add_num", a.getNum());
                 temp.put("left_num", 0);
-                dataById.put(o.getRoom_id(), temp);
+                dataById.put(a.getRoomId(), temp);
             } else {
-                tempSetAdd = dataById.get(o.getRoom_id());
-                tempSetAdd.put("add_num", o.getNum());
-                dataById.put(o.getRoom_id(), tempSetAdd);
+                tempSetAdd = dataById.get(a.getRoomId());
+                tempSetAdd.put("add_num", a.getNum());
+                dataById.put(a.getRoomId(), tempSetAdd);
             }
         }