ソースを参照

1.工程报备
2.订单在线认证经销商导出优化

njs 3 年 前
コミット
a2305a317d

+ 33 - 14
suishenbang-order/src/main/resources/mapper/order/CustomersStartMapper.xml

@@ -53,26 +53,45 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="selectCustomerAuthList" resultType="com.dgtly.order.domain.CustomerAuthModel">
         SELECT
-            mds.Org3code companyCode,
-            mds.Org3name companyName,
-            mds.Org4code saleCode,
-            mds.Org4name saleName,
-            mds.Org5code officeCode,
-            mds.Org5name officeName,
-            osc.suboffice_code subOfficeCode,
-            osc.suboffice_name subOfficeName,
-            osc.customer_id customerCode,
-            osc.customer_name customerName,
+            mds.company_code companyCode,
+            mds.company_name companyName,
+            mds.saledept_code saleCode,
+            mds.saledept_name saleName,
+            mds.office_code officeCode,
+            mds.office_name officeName,
+            mds.suboffice_code subOfficeCode,
+            mds.suboffice_name subOfficeName,
+            ce.chains_code customerCode,
+            mds.customer_name customerName,
             ce.org_attestation_time authTime
         FROM
             customers_ext ce
-        LEFT JOIN order_sales_customer osc ON ce.chains_code = osc.customer_id
-        LEFT JOIN meta_diy_salesorgtree mds ON osc.suboffice_code = mds.Org5code
+                LEFT JOIN (
+                SELECT
+                    company_code,
+                    company_name,
+                    saledept_code,
+                    saledept_name,
+                    office_code,
+                    office_name,
+                    suboffice_code,
+                    suboffice_name,
+                    customer_id,
+                    customer_name
+                FROM
+                    order_sales_sum_tuc_customer
+                WHERE
+                    company_code != ''
+                and office_code !=''
+                GROUP BY
+                    customer_id
+            ) mds ON ce.chains_code = mds.customer_id
         WHERE
             ce.org_attestation_time IS NOT NULL
         GROUP BY
-            osc.customer_id
-        ORDER BY mds.Org3name DESC
+            ce.chains_code
+        ORDER BY
+            mds.company_name DESC
     </select>
 
     <insert id="insertCustomersStart" parameterType="com.dgtly.order.domain.CustomersStart">

+ 43 - 4
suishenbang-sync/suishenbang-sync-common/src/main/java/com/dgtly/sync/service/impl/AnalysisSysUserService.java

@@ -453,7 +453,7 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                         SysUser sysUser=sysUserService.selectUserByLoginName(user.getLoginName());
                         if(!sysUser.getSysUserExt().getSalesLevel().equals(userExt.getSalesLevel())){
                             sysUserService.deleteByLoginName(user.getLoginName());
-                        }else if(!sysUser.getSysUserExt().getOrgCode().equals(userExt.getOrgCode())){
+                        }else if(!sysUser.getSysUserExt().getPostCode().equals(userExt.getPostCode())){
                             SysUserRole role=new SysUserRole();
                             role.setUserId(sysUser.getUserId());
                             for (Long role_Id : roleIds)
@@ -461,6 +461,8 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                                 role.setRoleId(role_Id);
                                 userRoleMapper.deleteUserRoleInfo(role);
                             }
+                            user.setUserId(sysUser.getUserId());
+                            insertUserRole(user);
                         }
                         SysUser userInDb =sysUserService.selectUserByLoginName(user.getLoginName());
                         if(!userInDb.getSysUserExt().getSalesLevel().equals("diy_level")){
@@ -675,7 +677,7 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                         SysUser sysUser=sysUserService.selectUserByLoginName(user.getLoginName());
                         if(!sysUser.getSysUserExt().getSalesLevel().equals(userExt.getSalesLevel())){
                             sysUserService.deleteByLoginName(user.getLoginName());
-                        }else if(!sysUser.getSysUserExt().getOrgCode().equals(userExt.getOrgCode())){
+                        }else if(!sysUser.getSysUserExt().getPostCode().equals(userExt.getPostCode())){
                             SysUserRole role=new SysUserRole();
                             role.setUserId(sysUser.getUserId());
                             for (Long role_Id : roleIds)
@@ -683,6 +685,8 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                                 role.setRoleId(role_Id);
                                 userRoleMapper.deleteUserRoleInfo(role);
                             }
+                            user.setUserId(sysUser.getUserId());
+                            insertUserRole(user);
                         }
                         SysUser userInDb = sysUserService.selectUserByLoginName(user.getLoginName());
                         if (!userInDb.getSysUserExt().getSalesLevel().equals("diy_level")) {
@@ -873,7 +877,7 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                         SysUser sysUser=sysUserService.selectUserByLoginName(user.getLoginName());
                        if(!sysUser.getSysUserExt().getSalesLevel().equals(userExt.getSalesLevel())){
                            sysUserService.deleteByLoginName(user.getLoginName());
-                       }else if(!sysUser.getSysUserExt().getOrgCode().equals(userExt.getOrgCode())){
+                       }else if(!sysUser.getSysUserExt().getPostCode().equals(userExt.getPostCode())){
                            SysUserRole role=new SysUserRole();
                            role.setUserId(sysUser.getUserId());
                            for (Long role_Id : roleIds)
@@ -881,6 +885,8 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                                    role.setRoleId(role_Id);
                                    userRoleMapper.deleteUserRoleInfo(role);
                                }
+                           user.setUserId(sysUser.getUserId());
+                           insertUserRole(user);
                        }
                         user.setSysUserExt(userExt);
                         user.setUpdateTime(new Date());
@@ -1007,6 +1013,13 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
                     loginNameList = loginNameList.stream().map(String::toUpperCase).collect(Collectors.toSet());
                     if (loginNameList.contains(user.getLoginName().toUpperCase())) {
                         /**  更新 */
+                        SysUser sysUser=sysUserService.selectUserByLoginName(user.getLoginName());
+                        sysUserService.deleteByLoginName(user.getLoginName());
+                        SysUserRole role=new SysUserRole();
+                        role.setUserId(sysUser.getUserId());
+                        userRoleMapper.deleteUserRoleInfo(role);
+                        user.setUserId(sysUser.getUserId());
+                        insertUserRole(user);
                         user.setSysUserExt(userExt);
                         user.setUpdateTime(new Date());
                         sysUserService.updateUserInfoAndSalesExt(user);
@@ -1105,6 +1118,8 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
             SysUserRole role=new SysUserRole();
             role.setUserId(sysUser.getUserId());
             userRoleMapper.deleteUserRoleInfo(role);
+            user.setUserId(sysUser.getUserId());
+            insertUserRole(user);
             user.setSysUserExt(userExt);
             user.setUpdateTime(new Date());
             sysUserService.updateUserInfoAndSalesExt(user);
@@ -1394,5 +1409,29 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
             return null;
         }
     }
-
+    /**
+     * 新增用户角色信息
+     *
+     * @param user 用户对象
+     */
+    public void insertUserRole(SysUser user)
+    {
+        Long[] roles = user.getRoleIds();
+        if (StringUtils.isNotNull(roles))
+        {
+            // 新增用户与角色管理
+            List<SysUserRole> list = new ArrayList<SysUserRole>();
+            for (Long roleId : roles)
+            {
+                SysUserRole ur = new SysUserRole();
+                ur.setUserId(user.getUserId());
+                ur.setRoleId(roleId);
+                list.add(ur);
+            }
+            if (list.size() > 0)
+            {
+                userRoleMapper.batchUserRole(list);
+            }
+        }
+    }
 }

+ 8 - 1
suishenbang-system/src/main/resources/mapper/system/SysUserRoleMapper.xml

@@ -32,7 +32,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</insert>
 	
 	<delete id="deleteUserRoleInfo" parameterType="SysUserRole">
-		delete from sys_user_role where user_id=#{userId} and role_id=#{roleId}
+		delete from sys_user_role where 1=1
+		<if test="userId !=null and userId !='' ">
+			and user_id=#{userId}
+		</if>
+		<if test="roleId !=null and roleId !='' ">
+			and role_id=#{roleId}
+		</if>
+
 	</delete>
 	
 	<delete id="deleteUserRoleInfos">