Procházet zdrojové kódy

qxm-修改DIY和厨卫多经销商切换查询报错问题

qxm před 3 roky
rodič
revize
2da1b77c04

+ 8 - 9
suishenbang-system/src/main/resources/mapper/system/AssRelcustomerinfoMapper.xml

@@ -46,23 +46,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
     <select id="selectRelcustomerinfoListByorgCode" resultMap="AssRelcustomerinfoResult">
         <include refid="selectAssRelcustomerinfoVo"/>
-        where
+
+        WHERE
             glfs != '开票方关联'
-        AND (
+        AND mainkunnr IN (
             SELECT
                 ar.mainkunnr
             FROM
                 ass_relcustomerinfo ar
             WHERE
                 1 = 1
-            AND (
-                #{orgCode} = ar.mainkunnr
-                OR #{orgCode} = ar.kunnr
-                )
+            AND ( #{orgCode} = ar.mainkunnr OR #{orgCode} = ar.kunnr )
             GROUP BY
-            ar.mainkunnr
-        ) = mainkunnr
-        GROUP BY kunnr
+                ar.mainkunnr
+            )
+        GROUP BY
+            kunnr
     </select>
 
     <insert id="insertAssRelcustomerinfo" parameterType="AssRelcustomerinfo" useGeneratedKeys="true" keyProperty="id">

+ 24 - 7
suishenbang-wxportal/suishenbang-wxportal-api/src/main/java/com/dgtly/wxportal/controller/EsignController.java

@@ -32,9 +32,8 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.io.File;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @description:e签宝认证
@@ -616,6 +615,22 @@ public class EsignController extends ApiBaseController {
         List<SysUserExt> sysUserExtList = new ArrayStack<>();
         List<AssRelcustomerinfo>  assRelcustomerinfoList= assRelcustomerinfoService.selectRelcustomerinfoListByorgCode(sysUser.getSysUserExt().getOrgCode());
         if (assRelcustomerinfoList.size()>0){
+            for (AssRelcustomerinfo ar:assRelcustomerinfoList) {
+                SysUserExt sysUserExt = new SysUserExt();
+                sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
+                sysUserExt.setOrgCode(ar.getMainkunnr());
+                sysUserExt.setOrgName(ar.getMainname1());
+                sysUserExt.setSalesLevel(sysUser.getSysUserExt().getSalesLevel());
+                sysUserExt.setBossEmployeeId(sysUser.getSysUserExt().getBossEmployeeId());
+                sysUserExt.setBossName(sysUser.getSysUserExt().getBossName());
+                sysUserExt.setSapEmployeeId(sysUser.getSysUserExt().getSapEmployeeId());
+                sysUserExt.setCustomerCode(sysUser.getSysUserExt().getCustomerCode());
+                sysUserExt.setIsCustomerManager(sysUser.getSysUserExt().getIsCustomerManager());
+                sysUserExt.setPostCode(sysUser.getSysUserExt().getPostCode());
+                sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
+                sysUserExtList.add(sysUserExt);
+            }
+
             for (AssRelcustomerinfo ar:assRelcustomerinfoList) {
                 SysUserExt sysUserExt = new SysUserExt();
                 sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
@@ -631,7 +646,7 @@ public class EsignController extends ApiBaseController {
                 sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
                 sysUserExtList.add(sysUserExt);
             }
-            SysUserExt sysUserExt = new SysUserExt();
+            /*SysUserExt sysUserExt = new SysUserExt();
             sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
             sysUserExt.setOrgCode(assRelcustomerinfoList.get(0).getMainkunnr());
             sysUserExt.setOrgName(assRelcustomerinfoList.get(0).getMainname1());
@@ -643,7 +658,7 @@ public class EsignController extends ApiBaseController {
             sysUserExt.setIsCustomerManager(sysUser.getSysUserExt().getIsCustomerManager());
             sysUserExt.setPostCode(sysUser.getSysUserExt().getPostCode());
             sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
-            sysUserExtList.add(sysUserExt);
+            sysUserExtList.add(sysUserExt);*/
         }else{
             //只有是经销商级别的存入sysUserExtList中
             if(null != sysUser.getSysUserExt() &&
@@ -653,11 +668,13 @@ public class EsignController extends ApiBaseController {
                 sysUserExtList.add(sysUser.getSysUserExt());
             }
         }
-        sysUser.setSysUserExtLsit(sysUserExtList);
+        ArrayList<SysUserExt> resultList = sysUserExtList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(SysUserExt::getOrgCode))), ArrayList::new));
+
+        sysUser.setSysUserExtLsit(resultList);
         if (sysUser!=null){
             map.put("user",sysUser);
             List<CustomersExt> customersExtList = new ArrayStack<>();
-            for (SysUserExt sysUserExt:sysUserExtList) {
+            for (SysUserExt sysUserExt:resultList) {
                 CustomersExt customersExt = customersExtService.selectCustomersExtById(sysUserExt.getOrgCode());
                 if (customersExt!=null){
                     customersExtList.add(customersExt);

+ 25 - 7
suishenbang-wxportal/suishenbang-wxportal-api/src/main/java/com/dgtly/wxportal/controller/WxPortalController.java

@@ -1,9 +1,7 @@
 package com.dgtly.wxportal.controller;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 import com.dgtly.common.annotation.ApiPassToken;
 import com.dgtly.common.annotation.Log;
@@ -129,6 +127,22 @@ public class WxPortalController extends ApiBaseController {
         List<SysUserExt> sysUserExtList = new ArrayList<>();
         List<AssRelcustomerinfo>  assRelcustomerinfoList= assRelcustomerinfoService.selectRelcustomerinfoListByorgCode(customerCode);
         if (assRelcustomerinfoList.size()>0){
+            for (AssRelcustomerinfo ar:assRelcustomerinfoList) {
+                SysUserExt sysUserExt = new SysUserExt();
+                sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
+                sysUserExt.setOrgCode(ar.getMainkunnr());
+                sysUserExt.setOrgName(ar.getMainname1());
+                sysUserExt.setSalesLevel(sysUser.getSysUserExt().getSalesLevel());
+                sysUserExt.setBossEmployeeId(sysUser.getSysUserExt().getBossEmployeeId());
+                sysUserExt.setBossName(sysUser.getSysUserExt().getBossName());
+                sysUserExt.setSapEmployeeId(sysUser.getSysUserExt().getSapEmployeeId());
+                sysUserExt.setCustomerCode(sysUser.getSysUserExt().getCustomerCode());
+                sysUserExt.setIsCustomerManager(sysUser.getSysUserExt().getIsCustomerManager());
+                sysUserExt.setPostCode(sysUser.getSysUserExt().getPostCode());
+                sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
+                sysUserExtList.add(sysUserExt);
+            }
+
             for (AssRelcustomerinfo ar:assRelcustomerinfoList) {
                 SysUserExt sysUserExt = new SysUserExt();
                 sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
@@ -144,6 +158,8 @@ public class WxPortalController extends ApiBaseController {
                 sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
                 sysUserExtList.add(sysUserExt);
             }
+
+            /*
             SysUserExt sysUserExt = new SysUserExt();
             sysUserExt.setUserId(sysUser.getSysUserExt().getUserId());
             sysUserExt.setOrgCode(assRelcustomerinfoList.get(0).getMainkunnr());
@@ -156,12 +172,14 @@ public class WxPortalController extends ApiBaseController {
             sysUserExt.setIsCustomerManager(sysUser.getSysUserExt().getIsCustomerManager());
             sysUserExt.setPostCode(sysUser.getSysUserExt().getPostCode());
             sysUserExt.setPostName(sysUser.getSysUserExt().getPostName());
-            sysUserExtList.add(sysUserExt);
+            sysUserExtList.add(sysUserExt);*/
         }
-        sysUser.setSysUserExtLsit(sysUserExtList);
+        ArrayList<SysUserExt> resultList = sysUserExtList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(SysUserExt::getOrgCode))), ArrayList::new));
+
+        sysUser.setSysUserExtLsit(resultList);
         if (sysUser!=null){
 //            map.put("user",sysUser);
-            map.put("sysUserExtList",sysUserExtList);
+            map.put("sysUserExtList",resultList);
             return AjaxResult.success(map);
         }else{
             return AjaxResult.error("用户不存在");