杨六六 4 лет назад
Родитель
Сommit
89170118c4

+ 2 - 1
common/fire-dto/src/main/java/com/fire/dto/CustomerInfo.java

@@ -10,6 +10,7 @@ import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+
 import java.math.BigDecimal;
 
 
@@ -82,7 +83,7 @@ public class CustomerInfo {
     private BigDecimal partnerCommission;
 
     @ApiModelProperty(value = "跟用户关联,客户登录使用")
-    private Integer userId;
+    private Long userId;
 
     @ApiModelProperty(value = "价格校验")
     private Integer priceCheck;

+ 2 - 0
common/fire-dto/src/main/java/com/fire/dto/system/SysUser.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.fasterxml.jackson.annotation.JsonInclude;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -23,6 +24,7 @@ import java.util.List;
 @EqualsAndHashCode(callSuper = true)
 @Accessors(chain = true)
 @TableName("sys_user")
+@JsonInclude(JsonInclude.Include.NON_EMPTY)
 public class SysUser extends Model<SysUser> {
 
     private static final long serialVersionUID = 1L;

+ 1 - 1
modules/admin/src/main/java/com/fire/admin/dto/CustomerDto.java

@@ -78,7 +78,7 @@ public class CustomerDto {
     private BigDecimal partnerCommission;
 
     @ApiModelProperty(value = "跟用户关联,客户登录使用")
-    private Integer userId;
+    private Long userId;
 
     @ApiModelProperty(value = "价格校验")
     private Integer priceCheck;

+ 1 - 1
modules/admin/src/main/java/com/fire/admin/rest/SysMenuController.java

@@ -93,7 +93,7 @@ public class SysMenuController {
      */
     @PreAuthorize("hasAuthority('sys:menu:delete')")
     @DeleteMapping("/{id}")
-    public BaseRestResponse deleteMenu(@PathVariable("id") Integer id) {
+    public BaseRestResponse deleteMenu(@PathVariable("id") Long id) {
         return new BaseRestResponse(menuService.removeMenuById(id));
     }
 

+ 20 - 18
modules/admin/src/main/java/com/fire/admin/rest/SysUserController.java

@@ -11,6 +11,7 @@ import com.fire.admin.util.SecurityUtil;
 import com.fire.common.exception.BaseException;
 import com.fire.dto.response.BaseRestResponse;
 import com.fire.dto.system.SysUser;
+import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -41,7 +42,7 @@ public class SysUserController {
     @PostMapping
     @PreAuthorize("hasAuthority('sys:user:add')")
     public BaseRestResponse insert(@RequestBody UserDTO userDto) {
-        return  new BaseRestResponse(userService.insertUser(userDto));
+        return new BaseRestResponse(userService.insertUser(userDto));
     }
 
 
@@ -53,9 +54,9 @@ public class SysUserController {
      * @date: 2020/8/31 15:49
      */
     @GetMapping
-   @PreAuthorize("hasAuthority('sys:user:view')")
+    @PreAuthorize("hasAuthority('sys:user:view')")
     public BaseRestResponse getList(Page page, UserDTO userDTO) {
-        return  new BaseRestResponse(userService.getUsersWithRolePage(page, userDTO));
+        return new BaseRestResponse(userService.getUsersWithRolePage(page, userDTO));
     }
 
     /**
@@ -68,7 +69,7 @@ public class SysUserController {
     @PutMapping
     @PreAuthorize("hasAuthority('sys:user:update')")
     public BaseRestResponse update(@RequestBody UserDTO userDto) {
-        return  new BaseRestResponse(userService.updateUser(userDto));
+        return new BaseRestResponse(userService.updateUser(userDto));
     }
 
     /**
@@ -81,7 +82,7 @@ public class SysUserController {
     @DeleteMapping("/{userId}")
     @PreAuthorize("hasAuthority('sys:user:delete')")
     public BaseRestResponse delete(@PathVariable("userId") Long userId) {
-        return  new BaseRestResponse(userService.removeUser(userId));
+        return new BaseRestResponse(userService.removeUser(userId));
     }
 
 
@@ -95,7 +96,7 @@ public class SysUserController {
     @PutMapping("/{userId}")
     @PreAuthorize("hasAuthority('sys:user:rest')")
     public BaseRestResponse restPass(@PathVariable("userId") Long userId) {
-        return  new BaseRestResponse(userService.restPass(userId));
+        return new BaseRestResponse(userService.restPass(userId));
     }
 
 
@@ -108,7 +109,7 @@ public class SysUserController {
      */
     @GetMapping("/info")
     public BaseRestResponse getUserInfo() {
-        return  new BaseRestResponse(userService.findByUserInfoName(SecurityUtil.getUser().getUsername()));
+        return new BaseRestResponse(userService.findByUserInfoName(SecurityUtil.getUser().getUsername()));
     }
 
 
@@ -134,7 +135,7 @@ public class SysUserController {
         SysUser user = new SysUser();
         user.setUserId(sysUser.getUserId());
         user.setPassword(PreUtil.encode(newPass));
-        return  new BaseRestResponse(userService.updateUserInfo(user));
+        return new BaseRestResponse(userService.updateUserInfo(user));
     }
 
 
@@ -148,20 +149,21 @@ public class SysUserController {
     @PostMapping("/vailUserName")
     public BaseRestResponse vailUserName(@RequestParam String userName) {
         SysUser sysUser = userService.findSecurityUserByUser(new SysUser().setUsername(userName));
-        return  new BaseRestResponse(ObjectUtil.isNull(sysUser));
+        return new BaseRestResponse(ObjectUtil.isNull(sysUser));
     }
 
 
     /**
-    * @Description:  TODO 获取用户属性为客户和中间人的所有用户
-    * @Param:
-    * @return:
-    * @Author: liuliu
-    * @Date: 2021/6/15 16:46
-    */
-    public  BaseRestResponse getTypeAllUser(){
-
-        return new BaseRestResponse();
+     * @Description: TODO 获取用户属性为客户和中间人的所有用户
+     * @Param:
+     * @return:
+     * @Author: liuliu
+     * @Date: 2021/6/15 16:46
+     */
+    @ApiOperation("获取中间人用户编号和客户登录用户,并把用户id 跟客户建立关系【客户跟用户一对一,中间人跟客户一对多;2:客户  3: 中间人】")
+    @GetMapping("/{type}")
+    public BaseRestResponse getTypeAllUser(@PathVariable("type") Integer type) {
+        return new BaseRestResponse(userService.queryUserByType(type));
     }
 
 }

+ 19 - 0
modules/admin/src/main/java/com/fire/admin/rest/UtilController.java

@@ -1,6 +1,8 @@
 package com.fire.admin.rest;
 
 import com.fire.admin.service.CustomerService;
+import com.fire.admin.service.SupplierService;
+import com.fire.dto.ChannelSupplier;
 import com.fire.dto.CustomerInfo;
 import com.fire.dto.response.BaseResponse;
 import io.swagger.annotations.Api;
@@ -14,6 +16,7 @@ import redis.clients.jedis.JedisCluster;
 import java.util.List;
 
 import static com.fire.dto.enums.RedisKey.CUSTOMER_AMOUNT;
+import static com.fire.dto.enums.RedisKey.SUPPLIER_AMOUNT;
 
 /**
  * @author: liuliu
@@ -32,6 +35,9 @@ public class UtilController {
     @Autowired
     private JedisCluster jedisCluster;
 
+    @Autowired
+    private SupplierService supplierService;
+
     /**
      * @Description: TODO  工具接口,给所有的客户初始化key
      * @Param: []
@@ -51,4 +57,17 @@ public class UtilController {
         return new BaseResponse();
     }
 
+
+    @ApiOperation("给所有的供应商初始化可用金额,构建redisKey")
+    @PostMapping("/supplier")
+    public BaseResponse createSupplerRedisKey() {
+
+        List<ChannelSupplier> supplierInfo = supplierService.getSupplierInfo(null);
+
+        supplierInfo.forEach(supp -> {
+            jedisCluster.hset(SUPPLIER_AMOUNT.key(), SUPPLIER_AMOUNT.key().concat(supp.getSupplierId().toString()), "100000000000");
+        });
+        return new BaseResponse();
+    }
+
 }

+ 7 - 17
modules/admin/src/main/java/com/fire/admin/service/ISysUserService.java

@@ -128,24 +128,14 @@ public interface ISysUserService extends IService<SysUser> {
 
 
 
-
+    
     /**
-      *@Description: TODO 获取区域管理员和驿站管理员
-      *@Param:
-      *@return:
-      *@Author: liu liu
-      *@date: 2020/8/31 15:52
+    * @Description:  TODO 获取属性为中间人跟客户的用户,中间人跟用户是一对多
+    * @Param: [type]
+    * @return: java.util.List<com.fire.dto.system.SysUser>
+    * @Author: liuliu
+    * @Date: 2021/6/16 17:46
     */
-    List<SysUser> findUserType(String type);
-
+    List<SysUser>  queryUserByType(Integer type);
 
-
-    /**
-      *@Description: TODO 获取用户的职权范围
-      *@Param:
-      *@return:
-      *@Author: liu liu
-      *@date: 2020/9/2 15:13
-    */
-    int findType(Long userId);
 }

+ 1 - 1
modules/admin/src/main/java/com/fire/admin/service/impl/CustomerServiceImpl.java

@@ -209,7 +209,7 @@ public class CustomerServiceImpl extends ServiceImpl<CustomerMapper, CustomerInf
     @Override
     public List<CustomerInfo> queryCustomerInfo(String customerName) {
         LambdaQueryWrapper<CustomerInfo> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.select(CustomerInfo::getCustomerId, CustomerInfo::getCustomerName)
+        queryWrapper.select(CustomerInfo::getCustomerId, CustomerInfo::getCustomerName,CustomerInfo::getUserId)
                 .like(customerName != null, CustomerInfo::getCustomerName, customerName);
 
         return baseMapper.selectList(queryWrapper);

+ 1 - 1
modules/admin/src/main/java/com/fire/admin/service/impl/SysMenuServiceImpl.java

@@ -119,7 +119,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
     public BaseRestResponse removeMenuById(Serializable id) {
         List<Long> idList = this.list(Wrappers.<SysMenu>query().lambda().eq(SysMenu::getParentId, id)).stream().map(SysMenu::getMenuId).collect(Collectors.toList());
         if (CollUtil.isNotEmpty(idList)) {
-            return new BaseRestResponse<>("菜单含有下级不能删除");
+           throw new BaseException("菜单含有下级不能删除");
         }
         return new BaseRestResponse(this.removeById(id));
     }

+ 39 - 24
modules/admin/src/main/java/com/fire/admin/service/impl/SysUserServiceImpl.java

@@ -10,14 +10,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fire.admin.dto.UserDTO;
 import com.fire.admin.mapper.SysUserMapper;
-import com.fire.admin.service.ISysDeptService;
-import com.fire.admin.service.ISysMenuService;
-import com.fire.admin.service.ISysUserRoleService;
-import com.fire.admin.service.ISysUserService;
+import com.fire.admin.service.*;
 import com.fire.admin.util.JwtUtil;
 import com.fire.admin.util.PreSecurityUser;
 import com.fire.admin.util.PreUtil;
 import com.fire.common.exception.BaseException;
+import com.fire.dto.CustomerInfo;
+import com.fire.dto.enums.Status;
 import com.fire.dto.system.SysUser;
 import com.fire.dto.system.SysUserRole;
 import lombok.extern.slf4j.Slf4j;
@@ -63,6 +62,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Resource
     private JedisCluster jedisCluster;
 
+    @Autowired
+    private CustomerService customerService;
+
     /**
      * @Description: TODO 分页查询用户信息(含有角色信息)
      * @Param:
@@ -286,34 +288,47 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         return user;
     }
 
-
     /**
-     * @Description: 获取区域管理员和驿站管理员
-     * @Param:
-     * @return:
-     * @Author: liu liu
-     * @date: 2020/8/17 16:15
+     * @Description: TODO 获取属性为中间人跟客户的用户,中间人跟用户是一对多
+     * @Param: [type]
+     * @return: java.util.List<com.fire.dto.system.SysUser>
+     * @Author: liuliu
+     * @Date: 2021/6/16 17:46
      */
     @Override
-    public List<SysUser> findUserType(String type) {
-        LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
-        wrapper.select(SysUser::getUserId, SysUser::getUsername);
-        return baseMapper.selectList(wrapper);
+    public List<SysUser> queryUserByType(Integer type) {
+        // TODO 获取用户属性为中间人的用户
+        if (type.equals(3)) {
+            return queryUserByPartner(type);
+        } else if (type.equals(2)) {
+            // TODO 获取属性为客户的用户,该用户只能绑定一个客户
+            List<SysUser> sysUsers = queryUserByPartner(type);
+            // TODO 获取客户已经绑定的所有用户
+            List<Long> collect = customerService.queryCustomerInfo(null).stream().map(CustomerInfo::getUserId).collect(Collectors.toList());
+            if (!collect.isEmpty()) {
+                return sysUsers.stream().filter((SysUser user) -> !collect.contains(user.getUserId())).collect(Collectors.toList());
+            }
+            return sysUsers;
+        } else {
+            log.info("获取中间人或者客户用户失败,前端未传入用户属性 type  ,中间人用户属性为: 3,客户用户属性为: 2");
+            throw new BaseException(Status.REQUEST_PARAM_ERROR.status(), Status.REQUEST_PARAM_ERROR.message());
+        }
+
     }
 
+
     /**
-     * @Description: TODO 获取用户的职权范围
-     * @Param:
-     * @return:
-     * @Author: liu liu
-     * @date: 2020/9/2 15:13
+     * @Description: TODO 获取中间人的用户,中间人跟用户是一对多,对中间人用书是否绑定客户并不做限制
+     * @Param: [type]
+     * @return: java.util.List<com.fire.dto.system.SysUser>
+     * @Author: liuliu
+     * @Date: 2021/6/16 17:46
      */
-    @Override
-    public int findType(Long userId) {
+    private List<SysUser> queryUserByPartner(Integer type) {
         LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
-        /*wrapper.select(SysUser::getType).eq(SysUser::getUserId, userId);
-        return baseMapper.selectOne(wrapper).getType();*/
-        return 0;
+        wrapper.select(SysUser::getUserId, SysUser::getUsername, SysUser::getType)
+                .eq(SysUser::getType, type);
+        return baseMapper.selectList(wrapper);
     }