Przeglądaj źródła

魔术衣外墙不更新orgcode

zxfqwert 2 miesięcy temu
rodzic
commit
72d8e9f2dd

+ 71 - 10
suishenbang-sync/suishenbang-sync-common/src/main/java/com/dgtly/sync/service/AnalysisDiyCustomerComponent.java

@@ -790,6 +790,14 @@ public class AnalysisDiyCustomerComponent {
      */
     public Integer buildSysUser(JSONArray jsonArray, Set<String> loginNameSet,Set<String> diyNameSet, int isManager, List<SyncFailDetail> failDetails,String packageId, Map<String,Customers> cusMap) {
         // JSONArray jsonArray = json.getJSONArray("userlist");
+
+        //如果人员来自字典配置并且信息是删除状态的话   需要删除  cust_exclusion_info表中 按照类型和登录名称进行删除
+        Set<String> res = new HashSet<>();
+        List<SysDictData> dictDatas = sysDictDataService.selectSimpleDictDataByType("customer_user_is_customer_manager");
+        for(SysDictData d: dictDatas){
+            res.add(d.getDictValue());
+        }
+
         int count = 0;
         List<String> interfaceList = new ArrayList<>();
         List<UserAssVO> assVOList =new ArrayList<>();
@@ -845,7 +853,16 @@ public class AnalysisDiyCustomerComponent {
                         resultList.remove(i.toString());
                         String IsManager = resultList.stream().map(String::valueOf).collect(Collectors.joining(","));
                         u.getSysUserExt().setIsCustomerManager(IsManager);
-                        sysUserExtMapper.updateSysUserExt(u.getSysUserExt());
+
+                        if(res.contains(String.valueOf(isManager))){
+                            sysUserExtMapper.updateSysUserExtNoOgrCode(u.getSysUserExt());
+                        }
+                        else{
+                            sysUserExtMapper.updateSysUserExt(u.getSysUserExt());
+                        }
+
+
+
                     } else {
                         if(assVOList !=null && assVOList.size()>0){
                             boolean containsValue = assVOList.iterator().hasNext() && assVOList.iterator().next().getUserName().equals(u.getUserName());
@@ -903,11 +920,7 @@ public class AnalysisDiyCustomerComponent {
                     continue;
                 }*/
                 //如果人员来自字典配置并且信息是删除状态的话   需要删除  cust_exclusion_info表中 按照类型和登录名称进行删除
-                Set<String> res = new HashSet<>();
-                List<SysDictData> dictDatas = sysDictDataService.selectSimpleDictDataByType("customer_user_is_customer_manager");
-                for(SysDictData d: dictDatas){
-                    res.add(d.getDictValue());
-                }
+
                 if(res.contains(String.valueOf(isManager))){
                     if(isDelete){
                         //需要去删除排除表中的数据  按照用户类型和登录名称
@@ -988,7 +1001,14 @@ public class AnalysisDiyCustomerComponent {
 //                    wxQyUser.setUserid(jo.getString("userid"));
 //                    wxQyUser.setMobile(jo.getString("mobile"));
                     user.setSysUserExt(userExt);
-                    insertUserAndExt(user);
+                    if(res.contains(String.valueOf(isManager))){
+                        insertUserAndExtNoOrgCode(user);
+                    }
+                    else{
+                        insertUserAndExt(user);
+                    }
+
+
                     count++;
                     loginNameSet.add(userid);
                 } else {
@@ -1002,7 +1022,12 @@ public class AnalysisDiyCustomerComponent {
                         user.setPhonenumber(jo.getString("mobile"));
                         if (user.getSysUserExt().getIsCustomerManager() == null) {
                             user.getSysUserExt().setIsCustomerManager(isManager + "");
-                            sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+                            if(res.contains(String.valueOf(isManager))){
+                                sysUserExtMapper.updateSysUserExtNoOgrCode(user.getSysUserExt());
+                            }
+                            else{
+                                sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+                            }
                         }
                         /*判断不是导购角色,更新经销商角色*/
 //                    if (isManager == 1 || isManager == 2 || isManager == 3) {
@@ -1050,7 +1075,13 @@ public class AnalysisDiyCustomerComponent {
                                 }
                             }
                             log.info("updateSysUserExt" + customerCode);
-                            sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+
+                                if(res.contains(String.valueOf(isManager))){
+                                    sysUserExtMapper.updateSysUserExtNoOgrCode(user.getSysUserExt());
+                                }
+                                else{
+                                    sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+                                }
                             }
                         }
                         if(("019").equals(user.getSysUserExt().getCustomerCode().substring(0, 3)) && ("0").equals(user.getSysUserExt().getIsCustomerManager())){
@@ -1066,7 +1097,12 @@ public class AnalysisDiyCustomerComponent {
                                 user.getSysUserExt().setCustomerCode(customerCode);
                                 user.getSysUserExt().setOrgCode(customerCode);
                                 user.getSysUserExt().setOrgName(customerName);
-                                sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+                                if(res.contains(String.valueOf(isManager))){
+                                    sysUserExtMapper.updateSysUserExtNoOgrCode(user.getSysUserExt());
+                                }
+                                else{
+                                    sysUserExtMapper.updateSysUserExt(user.getSysUserExt());
+                                }
                             }
                         }
                        /* if(user.getSysUserExt().getIsCustomerManager() !=null){
@@ -2161,4 +2197,29 @@ public class AnalysisDiyCustomerComponent {
 //        }
         return rows;
     }
+
+
+
+
+
+    @Transactional(rollbackFor = Exception.class)
+    public Integer insertUserAndExtNoOrgCode(SysUser user) {
+        // 新增用户信息
+        int rows = sysUserMapper.insertUser(user);
+
+        // 新增用户与角色管理
+        sysUserService.insertUserRole(user);
+        SysUserExt userExt = user.getSysUserExt();
+        userExt.setUserId(user.getUserId());
+
+        int i1 = sysUserExtMapper.insertOrUpSysUserExtNoOrgcode(userExt);
+
+
+        //wxQyUser.setSysUserId(user.getUserId());
+//        int i2 =wxQyUserMapper.insertWxQyUser(wxQyUser);
+//        if(i1+i2<2){
+//            throw new RuntimeException("插入UserExt或WxUser错误");
+//        }
+        return rows;
+    }
 }

+ 4 - 0
suishenbang-system/src/main/java/com/dgtly/system/mapper/SysUserExtMapper.java

@@ -104,4 +104,8 @@ public interface SysUserExtMapper
     int selectSysUserExtBySapEmployeeId(@Param("sapEmployeeId") String sapEmployeeId);
 
     List<SysUserExt> selectUserExtList();
+
+    void updateSysUserExtNoOgrCode(SysUserExt sysUserExt);
+
+    int insertOrUpSysUserExtNoOrgcode(SysUserExt userExt);
 }

+ 72 - 1
suishenbang-system/src/main/resources/mapper/system/SysUserSalesExtMapper.xml

@@ -81,6 +81,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
          </trim>
     </insert>
 
+    <update id="updateSysUserExtNoOgrCode" parameterType="SysUserExt">
+        update sys_user_ext
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="salesLevel != null  and salesLevel != ''">sales_level = #{salesLevel},</if>
+            <if test="orgName != null  and orgName != ''">org_name = #{orgName},</if>
+            <if test="sapEmployeeId != null ">sap_employee_id = #{sapEmployeeId},</if>
+            <if test="bossEmployeeId != null ">boss_employee_id = #{bossEmployeeId},</if>
+            <if test="bossName != null  and bossName != ''">boss_name = #{bossName},</if>
+            <if test="customerCode != null and customerCode != ''"> customer_code =#{customerCode}, </if>
+             is_customer_manager = #{isCustomerManager},
+            <if test="postCode != null and postCode != ''">  post_code = #{postCode},</if>
+            <if test="postName != null  and postName != ''">  post_name = #{postName}, </if>
+            <if test="identity != null  and identity != ''">  identity = #{identity}, </if>
+        </trim>
+        where user_id = #{userId}
+    </update>
+
+
+
     <update id="updateSysUserExt" parameterType="SysUserExt">
         update sys_user_ext
         <trim prefix="SET" suffixOverrides=",">
@@ -91,7 +110,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="bossEmployeeId != null ">boss_employee_id = #{bossEmployeeId},</if>
             <if test="bossName != null  and bossName != ''">boss_name = #{bossName},</if>
             <if test="customerCode != null and customerCode != ''"> customer_code =#{customerCode}, </if>
-             is_customer_manager = #{isCustomerManager},
+            is_customer_manager = #{isCustomerManager},
             <if test="postCode != null and postCode != ''">  post_code = #{postCode},</if>
             <if test="postName != null  and postName != ''">  post_name = #{postName}, </if>
             <if test="identity != null  and identity != ''">  identity = #{identity}, </if>
@@ -172,6 +191,58 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </trim>
   </insert>
 
+    <insert id="insertOrUpSysUserExtNoOrgcode"  useGeneratedKeys="true" keyProperty="userId" keyColumn="user_id"
+            parameterType="SysUserExt">
+        insert INTO
+        sys_user_ext
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            user_id,
+            <if test="salesLevel != null  and salesLevel != ''">sales_level,</if>
+            <if test="orgName != null  and orgName != ''">org_name,</if>
+            <if test="sapEmployeeId != null ">sap_employee_id,</if>
+            <if test="bossEmployeeId != null ">boss_employee_id,</if>
+            <if test="bossName != null  and bossName != ''">boss_name,</if>
+            <if test="customerCode != null and customerCode != ''">  customer_code,</if>
+            <if test="isCustomerManager != null  and isCustomerManager != ''">  is_customer_manager,</if>
+            <if test="postCode != null and postCode != ''"> post_code ,</if>
+            <if test="postName != null  and postName != ''"> post_name ,</if>
+            <if test="identity != null  and identity != ''"> identity ,</if>
+            <if test="duty != null  and duty != ''"> duty ,</if>
+            <if test="dutyName != null  and dutyName != ''"> duty_name ,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            #{userId},
+            <if test="salesLevel != null  and salesLevel != ''">#{salesLevel},</if>
+            <if test="orgName != null  and orgName != ''">#{orgName},</if>
+            <if test="sapEmployeeId != null ">#{sapEmployeeId},</if>
+            <if test="bossEmployeeId != null ">#{bossEmployeeId},</if>
+            <if test="bossName != null  and bossName != ''">#{bossName},</if>
+            <if test="customerCode != null and customerCode != ''"> #{customerCode},</if>
+            <if test="isCustomerManager != null  and isCustomerManager != ''"> #{isCustomerManager},</if>
+            <if test="postCode != null and postCode != ''">  #{postCode},</if>
+            <if test="postName != null  and postName != ''">#{postName}, </if>
+            <if test="identity != null  and identity != ''">#{identity}, </if>
+            <if test="duty != null  and duty != ''">#{duty}, </if>
+            <if test="dutyName != null  and dutyName != ''">#{dutyName}, </if>
+        </trim>
+        ON DUPLICATE KEY UPDATE
+        <trim suffixOverrides=",">
+            <if test="salesLevel != null  and salesLevel != ''">sales_level = #{salesLevel},</if>
+            <if test="orgName != null  and orgName != ''">org_name = #{orgName},</if>
+            <if test="sapEmployeeId != null ">sap_employee_id = #{sapEmployeeId},</if>
+            <if test="bossEmployeeId != null ">boss_employee_id = #{bossEmployeeId},</if>
+            <if test="bossName != null  and bossName != ''">boss_name = #{bossName},</if>
+            <if test="customerCode != null and customerCode != ''"> customer_code=#{customerCode},</if>
+            <if test="isCustomerManager != null  and isCustomerManager != ''">is_customer_manager= #{isCustomerManager},</if>
+            <if test="postCode != null and postCode != ''"> post_code = #{postCode}, </if>
+            <if test="postName != null  and postName != ''">  post_name = #{postName}, </if>
+            <if test="identity != null  and identity != ''">  identity = #{identity}, </if>
+            <if test="duty != null  and duty != ''">  duty = #{duty}, </if>
+            <if test="dutyName != null  and dutyName != ''">  duty_name = #{dutyName}, </if>
+        </trim>
+    </insert>
+
+
     <select id="selectEmployeeIdsByBossEmployeeId" parameterType="String" resultType="String">
         select sap_employee_id
         from sys_user_ext