Browse Source

新建sop 快捷查询部门所有员工

三七 1 week ago
parent
commit
23e58838ea

+ 4 - 2
fs-company/src/main/java/com/fs/company/controller/qw/QwDeptController.java

@@ -35,6 +35,9 @@ public class QwDeptController extends BaseController
     @Autowired
     private TokenService tokenService;
 
+    @Autowired
+    QwCompanyMapper qwCompanyMapper;
+
     /**
      * 查询企业微信部门列表
      */
@@ -46,8 +49,7 @@ public class QwDeptController extends BaseController
         List<QwDept> list = qwDeptService.selectQwDeptList(qwDept);
         return getDataTable(list);
     }
-    @Autowired
-    QwCompanyMapper qwCompanyMapper;
+
 
     /**
     * 同步企业微信 部门信息

+ 10 - 0
fs-company/src/main/java/com/fs/company/controller/qw/QwUserController.java

@@ -170,6 +170,16 @@ public class QwUserController extends BaseController
     }
 
 
+    /**
+     * 查询部门下的 企业微信账号
+     */
+    @PostMapping("/getQwUserByDept")
+    public R getQwUserByDept(@RequestBody QwUserByDeptParam deptParam){
+        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+        deptParam.setCompanyId(loginUser.getCompany().getCompanyId());
+        return R.ok().put("data",qwUserService.getQwUserByDept(deptParam)) ;
+    }
+
 
     @PreAuthorize("@ss.hasPermi('qw:user:login')")
     @PostMapping("/getQwIpad")

+ 2 - 2
fs-company/src/main/resources/application.yml

@@ -7,9 +7,9 @@ spring:
 #    active: dev
 #    active: druid-jzzx-test
 #    active: druid-hdt
-#    active: druid-sxjz
+    active: druid-syysy-test
 #    active: druid-yzt
 #    active: druid-myhk
 #    active: druid-sft
 #    active: dev-yjb
-    active: druid-myhk-test
+#    active: druid-myhk-test

+ 21 - 2
fs-service/src/main/java/com/fs/qw/mapper/QwUserMapper.java

@@ -200,7 +200,6 @@ public interface QwUserMapper extends BaseMapper<QwUser>
     QwFsServerBindParam selectQwServerBindParam(@Param("appKey") String appKey);
 
 
-
     /**
      *  查询企微用户绑定了的列表
      */
@@ -212,10 +211,11 @@ public interface QwUserMapper extends BaseMapper<QwUser>
             "            <if test=\"qwUserId != null  and qwUserId != ''\"> and qu.qw_user_id = #{qwUserId}</if>\n" +
             "            <if test=\"companyId != null \"> and qu.company_id = #{companyId}</if>\n" +
             "            <if test=\"nickName != null  and nickName != ''\"> and cu.nick_name like concat('%', #{nickName}, '%') </if>\n" +
-            "            <if test=\"qwUserName != null  and qwUserName != ''\"> and qu.qw_user_uame like concat( #{qwUserName}, '%') </if>\n" +
+            "            <if test=\"qwUserName != null  and qwUserName != ''\"> and qu.qw_user_name like concat('%', #{qwUserName}, '%') </if>\n" +
             "            <if test=\"companyUserId != null \"> and qu.company_user_id = #{companyUserId}</if>\n" +
             "            <if test=\"corpId != null \"> and qu.corp_id = #{corpId}</if>\n" +
             "            <if test=\"deptId != null \"> and qd.dept_id = #{deptId}</if>\n" +
+            "            <if test=\"deptName != null \"> and qd.dept_name like concat('%', #{deptName}, '%') </if>\n" +
             "            <if test=\"status != null \"> and qu.status = #{status}</if>\n" +
             "            <if test=\"type != null and sendType !=null and type==2 and (sendType==2 or sendType==4 or sendType==11) \"> and qu.app_key IS NOT NULL  </if>\n" +
             "</script>"})
@@ -432,6 +432,25 @@ public interface QwUserMapper extends BaseMapper<QwUser>
             "</script>")
     List<Long> selectQwUserListByCuDeptIdList(@Param("map") QwSop qwSop);
 
+
+    @Select("<script>" +
+            "select qu.id,qu.qw_user_id,qu.qw_user_name,qu.department,qu.corp_id,qu.company_id,qu.company_user_id, " +
+            "cu.nick_name, cu.user_name, qd.dept_name as departmentName from qw_user qu " +
+            "LEFT JOIN company_user cu ON cu.user_id=qu.company_user_id " +
+            "RIGHT JOIN qw_dept qd on qu.department=qd.dept_id and qd.corp_id=qu.corp_id " +
+            "where qu.is_del=0 and qu.company_user_id is not null "+
+            "            <if test=\"map.corpId != null \"> and qu.corp_id = #{map.corpId}</if>\n" +
+            "            <if test=\"map.companyId != null \"> and qu.company_id = #{map.companyId}</if>\n" +
+            "            <if test=\"map.deptIds != null and !map.deptIds.isEmpty() \">" +
+            "               AND qu.department IN " +
+            "                   <foreach collection='map.deptIds' item='item' open='(' separator=',' close=')'> " +
+            "                       #{item} " +
+            "                   </foreach> " +
+            "            </if>" +
+            "</script>")
+    List<QwUserVO> selectQwUserByDeptList(@Param("map") QwUserByDeptParam deptParam);
+
+
     /**
      * 根据外部联系人的fsUserId查询关联的企微员工信息
      * @param fsUserId 会员id

+ 18 - 0
fs-service/src/main/java/com/fs/qw/param/QwUserByDeptParam.java

@@ -0,0 +1,18 @@
+package com.fs.qw.param;
+
+import com.fs.common.annotation.Excel;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class QwUserByDeptParam {
+
+    private List<Long> deptIds;
+
+    /** 公司id */
+    @Excel(name = "公司id")
+    private Long companyId;
+
+    private String corpId;
+}

+ 16 - 2
fs-service/src/main/java/com/fs/qw/param/QwUserListParam.java

@@ -13,6 +13,7 @@ public class QwUserListParam {
     @Excel(name = "企微用户id")
     private String qwUserId;
 
+    @Excel(name = "企微用户昵称")
     private String qwUserName;
 
     private List<String> qwUserIds;
@@ -36,12 +37,18 @@ public class QwUserListParam {
     @Excel(name = "企微")
     private Integer status;
 
-    @Excel(name = "企微")
+    /**
+     * 登录状态
+     */
+    private Integer loginStatus;
+
+    @Excel(name = "员工状态")
     private Integer isDel;
 
     private String nickName;
 
     private String userName;
+    private String deptName;
 
     private Integer type;
 
@@ -56,15 +63,22 @@ public class QwUserListParam {
      * 销售部门
      */
     private List<Long> cuDeptIdList;
-
     /**
      * 企微部门
      */
     private List<Long> qwDeptIdList;
 
+
     /**
      * 部门类型 00 管理员 01 员工
      */
     private String userType;
 
+    /**
+     * 0:好友欢迎语
+     * 1:我的欢迎语
+     * 2、部门欢迎语
+     */
+    private String isRemark;
+
 }

+ 1 - 0
fs-service/src/main/java/com/fs/qw/service/IQwUserService.java

@@ -147,6 +147,7 @@ public interface IQwUserService
     QwUser getByQwUserIdAndCorId(String qwUserId, String corpId);
 
     R loginQwIpad(QwLoginHookParam loginParam);
+    List<QwUserVO> getQwUserByDept(QwUserByDeptParam deptParam);
 
     R qrCodeStatus(QwLoginHookParam loginParam);
 

+ 7 - 0
fs-service/src/main/java/com/fs/qw/service/impl/QwUserServiceImpl.java

@@ -1230,6 +1230,13 @@ public class QwUserServiceImpl implements IQwUserService
         redisCache.setCacheObject("qrCodeUid:qwUserId:"+loginParam.getQwUserId(),data.getUuid(),10, TimeUnit.MINUTES);
         return R.ok().put("qrCode",qrData.getQrcode()).put("qrCode64",qrData.getQrcodeData());
     }
+
+
+    @Override
+    public List<QwUserVO> getQwUserByDept(QwUserByDeptParam deptParam) {
+        return qwUserMapper.selectQwUserByDeptList(deptParam);
+    }
+
     void updateIpadStatus(Long id ,Integer status){
         QwUser u = new QwUser();
         u.setId(id);