Pārlūkot izejas kodu

修改代理商相关BUG

hgw 3 gadi atpakaļ
vecāks
revīzija
0219a5193e

+ 25 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantProxyDividendServiceImpl.java

@@ -4,12 +4,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.TenantProxyDividendDao;
 import com.ym.mec.biz.dal.entity.TenantPreJoin;
 import com.ym.mec.biz.dal.entity.TenantProxyDividend;
+import com.ym.mec.biz.dal.entity.TenantProxyUserRelation;
 import com.ym.mec.biz.dal.vo.ProxyDividendVo;
 import com.ym.mec.biz.service.TenantPreJoinService;
 import com.ym.mec.biz.service.TenantProxyDividendService;
+import com.ym.mec.biz.service.TenantProxyUserRelationService;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageUtil;
 import org.apache.commons.collections.CollectionUtils;
@@ -20,6 +24,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Optional;
 import java.util.function.BiConsumer;
 
@@ -36,6 +41,10 @@ public class TenantProxyDividendServiceImpl extends ServiceImpl<TenantProxyDivid
 
     @Autowired
     private TenantPreJoinService tenantPreJoinService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private TenantProxyUserRelationService tenantProxyUserRelationService;
 
     @Override
     public TenantProxyDividendDao getDao() {
@@ -77,6 +86,17 @@ public class TenantProxyDividendServiceImpl extends ServiceImpl<TenantProxyDivid
             result.setPreTenant((int) count);
         }
 
+        SysUser user = getUser();
+        //当前登录人是代理商账号类型,需要做数据隔离
+        if (user.getUserType().equalsIgnoreCase("PROXY")) {
+            //查询代理商
+            TenantProxyUserRelation proxyUserRelation = tenantProxyUserRelationService.getOne(Wrappers.<TenantProxyUserRelation>lambdaQuery()
+                    .eq(TenantProxyUserRelation::getUserId, user.getId()));
+            if (Objects.nonNull(proxyUserRelation)) {
+                param.put("proxyId", proxyUserRelation.getProxyId());
+            }
+        }
+
         //团练宝销售数
         int count = baseMapper.queryProxyDividendCount(param);
         result.setMemberCount(count);
@@ -89,5 +109,10 @@ public class TenantProxyDividendServiceImpl extends ServiceImpl<TenantProxyDivid
         return result;
     }
 
+    private SysUser getUser() {
+        //修改机构基础信息
+        return Optional.ofNullable(sysUserFeignService.queryUserInfo())
+                .orElseThrow(() -> new BizException("用户信息获取失败,请刷新页面或者重新登录!"));
+    }
 }
 

+ 4 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantProxyInfoServiceImpl.java

@@ -59,7 +59,7 @@ public class TenantProxyInfoServiceImpl extends ServiceImpl<TenantProxyInfoDao,
         Integer opsUserId = getUser().getId();
         Date now = new Date();
         //添加sysUser人员信息
-        Integer userId = addSysUser(dto);
+        Integer userId = addSysUser(dto, "PROXY");
         //添加代理商信息表
         TenantProxyInfo proxyInfo = new TenantProxyInfo();
         proxyInfo.setProxyName(dto.getProxyName());
@@ -86,7 +86,7 @@ public class TenantProxyInfoServiceImpl extends ServiceImpl<TenantProxyInfoDao,
         //获取父级Id
         Integer parentId = Optional.ofNullable(dto.getParentId()).orElseGet(() -> getUser().getId());
         //员工id
-        Integer userId = addSysUser(dto);
+        Integer userId = addSysUser(dto, null);
         //查询父级信息
         TenantProxyUserRelation parentProxyUser = proxyUserRelationService.getOne(Wrappers.<TenantProxyUserRelation>lambdaQuery()
                 .eq(TenantProxyUserRelation::getUserId, parentId)
@@ -107,7 +107,7 @@ public class TenantProxyInfoServiceImpl extends ServiceImpl<TenantProxyInfoDao,
      *
      * @return id
      */
-    private Integer addSysUser(TenantProxyDto dto) {
+    private Integer addSysUser(TenantProxyDto dto, String userType) {
         SysUser sysUser = sysUserFeignService.queryUserByMobile(dto.getPhone());
         if (Objects.nonNull(sysUser)) {
             throw new BizException("该手机号在系统已存在!");
@@ -116,7 +116,7 @@ public class TenantProxyInfoServiceImpl extends ServiceImpl<TenantProxyInfoDao,
         sysUser.setTenantId(-1);
         sysUser.setUsername(dto.getName());
         sysUser.setPhone(dto.getPhone());
-        sysUser.setUserType("PROXY");
+        sysUser.setUserType(userType);
         sysUser.setRealName(dto.getName());
         baseMapper.insertProxySysUser(sysUser);
         return sysUser.getId();

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/TenantProxyDividendMapper.xml

@@ -53,7 +53,7 @@
     </select>
 
     <select id="queryProxyDividendCount" resultType="int" parameterType="map">
-        select SUM(IFNULL(a.total_month_,0)) as activeCount
+        select IFNULL(SUM(a.total_month_), 0)  as activeCount
         from tenant_proxy_dividend as a
         left join tenant_proxy_info as b on a.proxy_id_ = b.id_
         left join tenant_info as c on a.tenant_id_ = c.id_

+ 5 - 4
mec-web/src/main/java/com/ym/mec/web/controller/TenantPreJoinController.java

@@ -45,10 +45,11 @@ public class TenantPreJoinController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('tenantPreJoin/queryPage')")
     public HttpResponseResult<PageInfo<TenantPreJoinVo>> queryPage(@RequestBody Map<String, Object> param) {
         //如果不是超管,那么只能看到推荐人自己的机构
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if(!sysUser.getIsSuperAdmin()){
-            param.put("recommender",sysUser.getId());
-        }
+        //2022年4月26日 需求要求变更为平台账号就看所有数据
+//        SysUser sysUser = sysUserFeignService.queryUserInfo();
+//        if(!sysUser.getIsSuperAdmin()){
+//            param.put("recommender",sysUser.getId());
+//        }
         return succeed(tenantPreJoinService.queryPage(param));
     }
 

+ 3 - 1
mec-web/src/main/java/com/ym/mec/web/controller/TenantProxyInfoController.java

@@ -12,9 +12,11 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import javax.validation.Valid;
 import java.util.List;
 import java.util.Map;
 
@@ -36,7 +38,7 @@ public class TenantProxyInfoController extends BaseController {
 
     @ApiOperation("添加代理商信息")
     @PostMapping(value = "/addProxyInfo")
-    public HttpResponseResult<Object> addProxyInfo(@RequestBody TenantProxyDto dto) {
+    public HttpResponseResult<Object> addProxyInfo(@Valid @RequestBody TenantProxyDto dto) {
         tenantProxyInfoService.addProxyInfo(dto);
         return succeed();
     }