From 1d0fc6126fb664e81a1a3737d8eaf4a618e7cb0f Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期二, 07 一月 2025 10:34:34 +0800
Subject: [PATCH] add:配置
---
src/main/java/com/mzl/flower/service/system/UserService.java | 66 +++++++++++++++++++++++++++++++++
1 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/mzl/flower/service/system/UserService.java b/src/main/java/com/mzl/flower/service/system/UserService.java
index fca2da7..6721d3c 100644
--- a/src/main/java/com/mzl/flower/service/system/UserService.java
+++ b/src/main/java/com/mzl/flower/service/system/UserService.java
@@ -3,21 +3,30 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.mzl.flower.config.GlobalSupplierVariables;
import com.mzl.flower.config.exception.ValidationException;
import com.mzl.flower.config.security.SecurityUtils;
import com.mzl.flower.constant.Constants;
import com.mzl.flower.dto.request.BindWechatDTO;
import com.mzl.flower.dto.request.system.*;
import com.mzl.flower.dto.response.current.CurrentUserDTO;
+import com.mzl.flower.dto.response.supplier.SupplierDTO;
import com.mzl.flower.dto.response.system.EmployeeDTO;
import com.mzl.flower.dto.response.system.MenuTreeDTO;
import com.mzl.flower.dto.response.system.UserDetailsDTO;
import com.mzl.flower.dto.response.system.UserListDTO;
+import com.mzl.flower.entity.point.CustomerPoint;
+import com.mzl.flower.entity.supplier.SupplierSub;
import com.mzl.flower.entity.system.*;
import com.mzl.flower.enums.TrueOrFalseEnum;
+import com.mzl.flower.mapper.point.CustomerPointMapper;
+import com.mzl.flower.mapper.supplier.SupplierMapper;
+import com.mzl.flower.mapper.supplier.SupplierSubMapper;
import com.mzl.flower.mapper.system.*;
import com.mzl.flower.service.customer.CustomerService;
import com.mzl.flower.service.partner.PartnerService;
+import com.mzl.flower.service.point.CustomerPointService;
+import com.mzl.flower.service.supplier.StationService;
import com.mzl.flower.service.supplier.SupplierService;
import com.mzl.flower.utils.TreeBuilderUtil;
import com.mzl.flower.utils.UUIDGenerator;
@@ -28,6 +37,7 @@
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
import javax.validation.constraints.NotBlank;
import java.util.ArrayList;
@@ -73,6 +83,21 @@
@Autowired
private EmployeeMapper employeeMapper;
+
+ @Autowired
+ private CustomerPointMapper customerPointMapper;
+ @Autowired
+ private StationService stationService;
+
+ @Autowired
+ private SupplierSubMapper supplierSubMapper;
+
+ @Autowired
+ private SupplierMapper supplierMapper;
+
+ @Autowired
+ private GlobalSupplierVariables globalSupplierVariables;
+
public User findUserByOpenId(String openId, String sessionKey, String unionId
, String imgUrl, String nickname,String userType){
@@ -132,6 +157,7 @@
}
public CurrentUserDTO getCurrentUser() {
+
String userId = SecurityUtils.getUserId();
CurrentUserDTO result = new CurrentUserDTO();
@@ -188,10 +214,50 @@
if(Constants.USER_TYPE.customer.name().equals(user.getType())){
result.setCustomerDTO(customerService.getCurrentCustomer());
+ //查询积分
+ CustomerPoint customerPoint = customerPointMapper.selectOne(new LambdaQueryWrapper<CustomerPoint>()
+ .eq(CustomerPoint::getUserId, userId));
+ if(customerPoint == null){
+ result.setCurrentPoint(0);
+ }else{
+ Integer currentPoint =customerPoint.getTotalPoint()-customerPoint.getUsedPoint()-customerPoint.getExpiredPoint()-customerPoint.getDeductionPoint();
+ result.setCurrentPoint(currentPoint>=0?currentPoint:0);
+ }
}else if(Constants.USER_TYPE.supplier.name().equals(user.getType())){
result.setSupplierDTO(supplierService.getCurrentSupplier());
+ //子账号信息
+ SupplierSub sub = supplierSubMapper.getCurrentSupplier(SecurityUtils.getUserId());
+ //主账号信息
+ SupplierDTO dto = supplierMapper.getCurrentSupplier(SecurityUtils.getUserId());
+// if (!ObjectUtils.isEmpty(dto)) {
+// globalSupplierVariables.removeSupplier(String.valueOf(dto.getId()));
+// }
+ String tempUserId = "";
+ if (!ObjectUtils.isEmpty(sub)) {
+ tempUserId = globalSupplierVariables.getSupplier(String.valueOf(sub.getId()));
+ } else {
+ tempUserId = globalSupplierVariables.getSupplier(String.valueOf(dto.getId()));
+ }
+ if (!ObjectUtils.isEmpty(sub)) {
+ result.setIsSubSupplier(true);
+ result.setSupplierSub(sub);
+ result.setSwitchFlag(false);
+ } else {
+ if (!StringUtils.isBlank(tempUserId)) {
+ SupplierSub temSub = supplierSubMapper.getCurrentSupplier(tempUserId);
+ result.setIsSubSupplier(true);
+ result.setSupplierSub(temSub);
+ result.setSwitchFlag(true);
+ } else {
+ result.setIsSubSupplier(false);
+ result.setSupplierSub(null);
+ result.setSwitchFlag(true);
+ }
+ }
}else if(Constants.USER_TYPE.partner.name().equals(user.getType())){
result.setPartnerDTO(partnerService.getCurrentPartner());
+ }else if (Constants.USER_TYPE.admin.name().equals(user.getType())){
+ result.setMainWarehouse(stationService.getMainWarehouse(user.getId()));
}
result.setBindWechat(wechatMapper.selectCount(new LambdaQueryWrapper<UserWechat>()
.eq(UserWechat::getUserId, userId)) > 0);
--
Gitblit v1.9.3