姜永辉 vor 2 Jahren
Ursprung
Commit
1fbb1d66e1

+ 11 - 0
src/main/java/com/dk/mdm/controller/mst/StaffController.java

@@ -95,6 +95,17 @@ public class StaffController{
     }
 
     /**
+     * @desc : 新建员工--邀请员工的确定
+     * @author : 姜永辉
+     * @date : 2023/1/9 10:48
+     */
+    @ApiOperation(value = "邀请员工的确定", notes = "邀请员工的确定")
+    @PostMapping({"insert_request"})
+    public ResponseResultVO<?> insertRequestStaff(@RequestBody StaffVO staffVO) {
+        return staffService.insertRequestStaff(staffVO);
+    }
+
+    /**
      * @desc : 编辑员工
      * @author : 姜永辉
      * @date : 2023/1/9 10:49

+ 11 - 3
src/main/java/com/dk/mdm/mapper/mst/StaffMapper.xml

@@ -44,13 +44,13 @@
                 AND t.staff_id = #{staffId}
             </if>
             <if test="staffCode != null and staffCode != ''">
-                AND position (#{staffCode} in t.staff_code ) >0
+                AND t.staff_code LIKE concat('%', my_ex.likequery(#{staffCode}), '%')
             </if>
             <if test="staffName != null and staffName != ''">
-                AND position (#{staffName} in t.staff_name ) >0
+                AND t.staff_name LIKE concat('%', my_ex.likequery(#{staffName}), '%')
             </if>
             <if test="staffPhone != null and staffPhone != ''">
-                AND position (#{staffPhone} in t.staff_phone ) >0
+                AND t.staff_phone LIKE concat('%', my_ex.likequery(#{staffPhone}), '%')
             </if>
 
             <if test="orgId != null">
@@ -138,6 +138,14 @@
         WHERE t.wx_user_id = #{userId}::uuid
     </select>
 
+    <!-- 根据用户Id更新dkic_a.t_wx_user的cpid-->
+<!--    <update id="updateWxInfoByUserId">-->
+<!--        update dkic_a.t_wx_user -->
+<!--        set current_cp = #{currentCp},joined_cps = #{currentCp}-->
+<!--        where user_id = #{userId}::uuid-->
+<!--    </update>-->
+
+    <!-- 批量插入数 -->
     <insert id="insertBatch">
         insert into dkic_b.t_mst_staff
         (

+ 22 - 20
src/main/java/com/dk/mdm/mapper/mst/StaffPurviewMapper.xml

@@ -5,23 +5,24 @@
     <!-- 通用设置 -->
     <!-- 通用查询列 -->
     <sql id="Base_Column_List">
-        staff_id, purview_code, flg_nolimit, data_ids, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user
+        staff_id
+        , purview_code, flg_nolimit, data_ids, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user
     </sql>
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.dk.mdm.model.pojo.mst.StaffPurview">
         <id column="staff_id" property="staffId"/>
-                <result column="purview_code" property="purviewCode"/>
-                <result column="flg_nolimit" property="flgNolimit"/>
-                <result column="data_ids" property="dataIds" typeHandler="UuidListTypeHandler"/>
-                <result column="cp_id" property="cpId"/>
-            <result column="op_create_time" property="opCreateTime" typeHandler="TimestampTypeHandler"/>
-                <result column="op_create_user_id" property="opCreateUserId" typeHandler="UuidTypeHandler"/>
-            <result column="op_update_time" property="opUpdateTime" typeHandler="TimestampTypeHandler"/>
-                <result column="op_update_user_id" property="opUpdateUserId" typeHandler="UuidTypeHandler"/>
-                <result column="op_app_code" property="opAppCode"/>
-            <result column="op_timestamp" property="opTimestamp" typeHandler="TimestampTypeHandler"/>
-                <result column="op_db_user" property="opDbUser"/>
+        <result column="purview_code" property="purviewCode"/>
+        <result column="flg_nolimit" property="flgNolimit"/>
+        <result column="data_ids" property="dataIds" typeHandler="UuidListTypeHandler"/>
+        <result column="cp_id" property="cpId"/>
+        <result column="op_create_time" property="opCreateTime" typeHandler="TimestampTypeHandler"/>
+        <result column="op_create_user_id" property="opCreateUserId" typeHandler="UuidTypeHandler"/>
+        <result column="op_update_time" property="opUpdateTime" typeHandler="TimestampTypeHandler"/>
+        <result column="op_update_user_id" property="opUpdateUserId" typeHandler="UuidTypeHandler"/>
+        <result column="op_app_code" property="opAppCode"/>
+        <result column="op_timestamp" property="opTimestamp" typeHandler="TimestampTypeHandler"/>
+        <result column="op_db_user" property="opDbUser"/>
     </resultMap>
 
     <!-- 通用条件列 -->
@@ -142,21 +143,22 @@
 
     <!-- 获取范围权限 -->
     <select id="getStaffPurview" resultType="java.util.Map">
-        SELECT  org.org_id    AS "id",
-                org.org_name    AS "orgName",
-                org.parent_id  AS "parentId",
-               orgb.org_id   AS "orgId",
-               org.level_no AS "levelNo",
-               org.level_code as "levelCode",
-               CASE WHEN orgb.org_id IS NULL THEN FALSE ELSE TRUE END    AS "checked"
+        SELECT org.org_id                                             AS "id",
+               org.org_name                                           AS "orgName",
+               org.parent_id                                          AS "parentId",
+               orgb.org_id                                            AS "orgId",
+               org.level_no                                           AS "levelNo",
+               org.level_code                                         as "levelCode",
+               CASE WHEN orgb.org_id IS NULL THEN FALSE ELSE TRUE END AS "checked"
         FROM dkic_b.t_mst_org org
-                 left JOIN dkic_b.t_mst_org orgb ON orgb.org_id = org.org_id  and org.org_id::uuid =  any ( (
+                 left JOIN dkic_b.t_mst_org orgb ON orgb.org_id = org.org_id and org.org_id::uuid =  any ( (
                  select  data_ids from dkic_b.t_mst_staff_purview where staff_id = #{staffId}::uuid)::uuid[])
         WHERE org.flg_valid
           AND org.cp_id = #{cpId}
         ORDER BY org.level_code;
     </select>
 
+    <!-- 批量插入   -->
     <insert id="insertOrUpdateCondition">
         insert into t_mst_staff_purview
         (

+ 29 - 24
src/main/java/com/dk/mdm/mapper/mst/StaffRightMapper.xml

@@ -113,6 +113,7 @@
         for update
     </select>
 
+    <!--    批量插入-->
     <insert id="insertBatch">
         insert into t_mst_staff_right
         (
@@ -137,26 +138,29 @@
     </insert>
 
     <!-- 删除功能权限 -->
-    <delete id="deleteById" >
-        DELETE FROM dkic_b.t_mst_staff_right   WHERE staff_id = #{staffId}::uuid;
+    <delete id="deleteById">
+        DELETE
+        FROM dkic_b.t_mst_staff_right
+        WHERE staff_id = #{staffId}::uuid;
     </delete>
 
 
     <!-- 获取功能权限 -->
     <select id="getStaffRight" resultType="java.util.Map">
-        SELECT menu.menu_uuid    AS "menuUuid",
-               menu.menu_uuid    AS "id",
-               menu.menu_name    AS "menuName",
-               menu.app_code     AS "appCode",
-               menu.parent_uuid  AS "parentId",
-               menu.flg_menu     AS "flgMenu",
-               staffRight.staff_id   AS "staffId",
-               menu.fun_uuid     AS "funUuid",
-               CASE WHEN staffRight.staff_id IS NULL THEN FALSE ELSE TRUE END    AS "checked"
+        SELECT menu.menu_uuid                                                 AS "menuUuid",
+               menu.menu_uuid                                                 AS "id",
+               menu.menu_name                                                 AS "menuName",
+               menu.app_code                                                  AS "appCode",
+               menu.parent_uuid                                               AS "parentId",
+               menu.flg_menu                                                  AS "flgMenu",
+               staffRight.staff_id                                            AS "staffId",
+               menu.fun_uuid                                                  AS "funUuid",
+               CASE WHEN staffRight.staff_id IS NULL THEN FALSE ELSE TRUE END AS "checked"
         FROM sys.t_app_menu menu
-             inner JOIN dkic_b.t_mst_role_fun roleFun ON menu.fun_uuid = roleFun.fun_uuid  and roleFun.role_id::uuid =  any ( (
+                 inner JOIN dkic_b.t_mst_role_fun roleFun ON menu.fun_uuid = roleFun.fun_uuid and roleFun.role_id::uuid =  any ( (
                  select  role_ids from dkic_b.t_mst_staff where staff_id = #{staffId}::uuid)::uuid[])
-             left JOIN   dkic_b.t_mst_staff_right staffRight ON menu.fun_uuid = staffRight.fun_uuid  and staffRight.staff_id = #{staffId}::uuid
+            left JOIN dkic_b.t_mst_staff_right staffRight
+        ON menu.fun_uuid = staffRight.fun_uuid and staffRight.staff_id = #{staffId}::uuid
 
         WHERE menu.flg_valid
           AND menu.flg_right
@@ -166,19 +170,20 @@
 
     <!-- WEB获取功能权限 -->
     <select id="getStaffRightWeb" resultType="java.util.Map">
-        SELECT menu.menu_uuid    AS "menuUuid",
-               menu.menu_uuid    AS "id",
-               menu.menu_name    AS "menuName",
-               menu.app_code     AS "appCode",
-               menu.parent_uuid  AS "parentId",
-               menu.flg_menu     AS "flgMenu",
-               staffRight.staff_id   AS "staffId",
-               menu.fun_uuid     AS "funUuid",
-               CASE WHEN staffRight.staff_id IS NULL THEN FALSE ELSE TRUE END    AS "checked"
+        SELECT menu.menu_uuid                                                 AS "menuUuid",
+               menu.menu_uuid                                                 AS "id",
+               menu.menu_name                                                 AS "menuName",
+               menu.app_code                                                  AS "appCode",
+               menu.parent_uuid                                               AS "parentId",
+               menu.flg_menu                                                  AS "flgMenu",
+               staffRight.staff_id                                            AS "staffId",
+               menu.fun_uuid                                                  AS "funUuid",
+               CASE WHEN staffRight.staff_id IS NULL THEN FALSE ELSE TRUE END AS "checked"
         FROM sys.t_app_menu menu
-                 left JOIN dkic_b.t_mst_role_fun roleFun ON menu.fun_uuid = roleFun.fun_uuid  and roleFun.role_id::uuid =  any ( (
+                 left JOIN dkic_b.t_mst_role_fun roleFun ON menu.fun_uuid = roleFun.fun_uuid and roleFun.role_id::uuid =  any ( (
                  select  role_ids from dkic_b.t_mst_staff where staff_id = #{staffId}::uuid)::uuid[])
-            left JOIN   dkic_b.t_mst_staff_right staffRight ON menu.fun_uuid = staffRight.fun_uuid  and staffRight.staff_id = #{staffId}::uuid
+            left JOIN dkic_b.t_mst_staff_right staffRight
+        ON menu.fun_uuid = staffRight.fun_uuid and staffRight.staff_id = #{staffId}::uuid
 
         WHERE menu.flg_valid
           AND menu.flg_right

+ 1 - 18
src/main/java/com/dk/mdm/model/query/mst/StaffQuery.java

@@ -71,23 +71,6 @@ public class StaffQuery extends PageInfo<StaffQuery> implements Serializable {
     @ApiModelProperty(value = "员工电话")
     private String staffPhone;
 
-
-    /**
-     * 员工工种
-     */
-    @Excel(name = "员工工种")
-    @ApiModelProperty(value = "员工工种")
-    private Integer jobId;
-
-
-    /**
-     * 员工职务
-     */
-    @Excel(name = "员工职务")
-    @ApiModelProperty(value = "员工职务")
-    private Integer postId;
-
-
     /**
      * 组织部门
      */
@@ -132,7 +115,7 @@ public class StaffQuery extends PageInfo<StaffQuery> implements Serializable {
      */
     @Excel(name = "工厂ID")
     @ApiModelProperty(value = "工厂ID")
-    private Integer ftyId;
+    private Integer cpId;
 
 
     /**

+ 7 - 1
src/main/java/com/dk/mdm/model/vo/mst/StaffVO.java

@@ -70,7 +70,13 @@ public class StaffVO extends PageInfo<StaffVO> implements Serializable {
     @ApiModelProperty(value = "员工电话")
     private String staffPhone;
 
-
+    /**
+     * 微信用户
+     */
+    @Excel(name = "微信用户")
+    @ApiModelProperty(value = "微信用户")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String wxUserId;
 
     /**
      * 组织部门

+ 0 - 1
src/main/java/com/dk/mdm/service/mst/StaffPurviewService.java

@@ -16,7 +16,6 @@ import java.util.List;
 import java.util.Map;
 
 @Service
-@Transactional
 public class StaffPurviewService extends BaseService<StaffPurview> {
 
 	@Override

+ 0 - 1
src/main/java/com/dk/mdm/service/mst/StaffRightService.java

@@ -21,7 +21,6 @@ import java.util.Map;
  * @date : 2024/2/26 10:36
  */
 @Service
-@Transactional
 public class StaffRightService extends BaseService<StaffRight> {
 
     @Override

+ 37 - 0
src/main/java/com/dk/mdm/service/mst/StaffService.java

@@ -91,6 +91,14 @@ public class StaffService extends BaseService<Staff> {
     public ResponseResultVO<?> insert(StaffVO staffVO) {
         // 转化实体
         Staff staff = staffConvert.convertToPo(staffVO);
+        // 校验同一个公司的电话不能重复
+        StaffQuery staffQuery = new StaffQuery();
+        staffQuery.setCpId(staff.getCpId());
+        staffQuery.setStaffPhone(staff.getStaffPhone());
+        List<StaffResponse> staffResponses = staffMapper.selectByCond(staffQuery);
+        if (staffResponses!=null && staffResponses.size() > 0){
+            return ResponseResultUtil.error(ResponseCodeEnum.ERROR_STAFF_PHONE_EXIST);
+        }
         // 获取编码和主键UuId
         Map<String, Object> codeMap = commonService.getUniqueNoteCode(Constant.docNameConstant.STAFF.getName(), true);
         staff.setStaffId(codeMap.get("outId").toString());
@@ -99,6 +107,35 @@ public class StaffService extends BaseService<Staff> {
     }
 
     /**
+     * @desc : 保存方法-邀请员工的确定
+     * @author : 姜永辉
+     * @date : 2023/1/9 10:49
+     */
+    @Transactional( rollbackFor = {Exception.class} )
+    public ResponseResultVO<?> insertRequestStaff(StaffVO staffVO) {
+        // 转化实体
+        Staff staff = staffConvert.convertToPo(staffVO);
+        // 校验同一个公司的电话不能重复
+        StaffQuery staffQuery = new StaffQuery();
+        staffQuery.setCpId(staff.getCpId());
+        staffQuery.setStaffPhone(staff.getStaffPhone());
+        List<StaffResponse> staffResponses = staffMapper.selectByCond(staffQuery);
+        if (staffResponses!=null && staffResponses.size() > 0){
+            return ResponseResultUtil.error(ResponseCodeEnum.ERROR_STAFF_PHONE_EXIST);
+        }
+        // 获取编码和主键UuId
+        Map<String, Object> codeMap = commonService.getUniqueNoteCode(Constant.docNameConstant.STAFF.getName(), true);
+        staff.setStaffId(codeMap.get("outId").toString());
+        staff.setStaffCode(codeMap.get("outNote").toString());
+        // 更新 被邀人员的cpid
+        if (staff.getWxUserId()!=null){
+
+        }
+        // 插入员工
+        return super.insert(staff);
+    }
+
+    /**
      * @desc : 编辑方法
      * @author : 姜永辉
      * @date : 2023/1/9 10:49