Просмотр исходного кода

为业务员的账号新增租户的区别

lipf 4 месяцев назад
Родитель
Сommit
1dbd0146a6

+ 1 - 0
authentication/src/main/java/com/jzg/controller/AuthController.java

@@ -185,6 +185,7 @@ public class AuthController extends BaseController {
      * 返回:HttpResult 文本提示
      * 注意:验证码暂固定为 123456,存入 Redis,120 秒过期
      */
+    // TODO 发送验证吗的功能没有实现
     @GetMapping("sendSmsCode")
     @Operation(summary = "发送短信验证码")
     public HttpResult sendSmsCode(String mobile) {

+ 6 - 0
commons/src/main/java/com/jzg/commons/core/base/BaseController.java

@@ -187,6 +187,12 @@ public class BaseController {
         return systemCode;
     }
 
+    /**
+     * 获取登录用户所属的租户
+     *      手机端和网页端的systemCode 都可以通过这个获取
+     * @author lipf
+     * @date 2026/6/4 14:11
+     */
     public String getSystemCode(){
         String userSystemCode = this.getUserSystemCode();
         if(userSystemCode.equals("APP")){

+ 1 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsFeeOrdersServiceImpl.java

@@ -406,6 +406,7 @@ public class InsFeeOrdersServiceImpl extends ServiceImpl<InsFeeOrdersMapper, Ins
      */
     @Override
     public BigDecimal queryAllTotalReceivablePremiumByOrderNo(List<String> orderNos) {
+        log.info("查询[{}]个订单的应付金额", CollUtil.size(orderNos));
         if(CollUtil.isEmpty(orderNos)){
             return BigDecimal.ZERO;
         }

+ 7 - 1
tenant/organization/src/main/java/com/jzg/organization/controller/AppUserController.java

@@ -162,7 +162,13 @@ public class AppUserController extends BaseController {
         log.info("邀请码注册:param=[{}]", JSONUtil.toJsonStr(param));
         AssertionUtils.isSucceed(userService.validateSmsCode(param.getMobile(), param.getSmsCode()), "短信验证码不通过!");
         param.setToken(getToken());
-        return HttpResult.ok(userJzgAppService.invitationRegister(param));
+        try{
+            InvitationVo invitationVo = userJzgAppService.invitationRegister(param);
+            return HttpResult.ok(invitationVo);
+        }catch (Exception e){
+            log.info("邀请用户注册发生异常:param=[{}]", JSONUtil.toJsonStr(param),e);
+            return HttpResult.error(e.getMessage());
+        }
     }
 
     @Operation(summary = "分销员app扫码邀请")

+ 2 - 0
tenant/organization/src/main/java/com/jzg/organization/controller/ReceivableController.java

@@ -25,6 +25,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -374,6 +375,7 @@ public class ReceivableController {
         try{
             List<String> orderNos = receivablePageIds.stream().map(InsPlyIncomeOrder::getOrderNo).distinct().toList();
             totalReceivablePremium = receivableService.queryAllTotalReceivablePremium(orderNos);
+            totalReceivablePremium = totalReceivablePremium.setScale(2, RoundingMode.HALF_DOWN);
         }catch (Exception e){
             log.error("统计总的应收异常",e);
         }

+ 6 - 6
tenant/organization/src/main/java/com/jzg/organization/controller/UserAccountController.java

@@ -2,6 +2,7 @@ package com.jzg.organization.controller;
 
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jzg.commons.core.base.BaseController;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.account.po.SysUserAccountIncomeLog;
 import com.jzg.commons.entity.dto.IncomeAndExpenseParam;
@@ -26,12 +27,10 @@ public class UserAccountController {
 
     @Autowired
     private SysUserAccountService userAccountService;
-
     @Autowired
     private SysUserAccountIncomeLogService sysUserAccountIncomeLogService;
-//
-//    @Autowired
-//    private BaseController baseController;
+    @Autowired
+    private BaseController baseController;
 
     /**
      * 用户账户信息查询
@@ -40,8 +39,9 @@ public class UserAccountController {
      */
     @GetMapping(value = { "/accountGet"})
     @Operation(summary = "用户账户信息查询")
-    public HttpResult accountGet(String userId) {
-        return HttpResult.ok(userAccountService.queryByUserId(userId));
+    public HttpResult<SysUserAccount> accountGet(String userId) {
+        String systemCode = baseController.getSystemCode();
+        return HttpResult.ok(userAccountService.queryByUserId(userId,systemCode));
     }
 
     /**

+ 5 - 3
tenant/organization/src/main/java/com/jzg/organization/service/SysUserAccountService.java

@@ -16,16 +16,18 @@ import java.util.List;
 /**
 * @author dongxin
 * @description 针对表【sys_user_account(用户账户表)】的数据库操作Service
-* @createDate 2025-07-15 15:37:58
+* @date 2025-07-15 15:37:58
 */
 public interface SysUserAccountService extends IService<SysUserAccount> {
 
     /**
      * accountGet
-     * @param userId 用户唯一标识
+     *
+     * @param userId     用户唯一标识
+     * @param systemCode 租户代码
      * @return SysUserAccount
      */
-    SysUserAccount queryByUserId(String userId);
+    SysUserAccount queryByUserId(String userId, String systemCode);
 
     /**
      * 应付统计

+ 8 - 3
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysAmountAuditingServiceImpl.java

@@ -183,7 +183,8 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
     public HttpResult<String> verifyAmount(AmountAuditEditParam param) {
         String userName = baseController.getUserName();
         String userId = baseController.getUserId();
-        log.info("用户开始进行付款操作。userName=[{}],param=[{}]",userName,JSONUtil.toJsonStr(param));
+        String systemCode = baseController.getSystemCode();
+        log.info("用户开始进行付款操作。userName=[{}],param=[{}]systemCode=[{}]",userName,JSONUtil.toJsonStr(param),systemCode);
         if(StrUtil.isEmpty(param.getAccountId())){
             return HttpResult.error("付款账户不能为空");
         }
@@ -209,9 +210,12 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
                 audit.setPicId(param.getPicId());
                 audit.setVoucherId(param.getVoucherId());
                 audit.setAccountId(param.getAccountId());
+                audit.setPaymentTime(LocalDateTime.now());
+                audit.setAuditingTime(LocalDateTime.now());
+                audit.setAuditingUserId(userId);
                 this.updateById(audit);
                 // 更新用户账户
-                SysUserAccount userAccount = userAccountService.queryByUserId(audit.getUserId());
+                SysUserAccount userAccount = userAccountService.queryByUserId(audit.getUserId(),systemCode);
                 AssertionUtils.isFail(Objects.isNull(userAccount), "用户账户数据异常!");
                 AssertionUtils.isFail(audit.getAmount().compareTo(audit.getBalanceAmount()) > 0, "提现金额大于账户余额!");
 
@@ -295,6 +299,7 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
     public HttpResult<String> applyWithdraw(ApplyWithdrawParam applyWithdrawParam) {
         String userName = baseController.getUserName();
         String userId = baseController.getUserId();
+        String systemCode = baseController.getSystemCode();
         log.info("业务员提交提现申请:userName=[{}],userId=[{}],applyWithdrawParam=[{}]",userId, userName, JSONUtil.toJsonStr(applyWithdrawParam));
         // 当前有处于待审核状态的提现申请的时候,不能再次提交提现申请 add by lipf,  2026年6月3日14:09:07
         List<SysAmountAuditing> auditings = baseMapper.queryPaymentByUserId(userId, 0);
@@ -306,7 +311,7 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
             log.info("业务员[{}]提现提现金额不能为负值[{}]",userName, applyWithdrawParam.getWithdrawAmount());
             throw new SystemException("提现金额错误,请重新输入");
         }
-        SysUserAccount sysUserAccount = userAccountService.queryByUserId(userId);
+        SysUserAccount sysUserAccount = userAccountService.queryByUserId(userId,systemCode);
         AssertionUtils.isFail(Objects.isNull(sysUserAccount),"找不到用户账号");
 
         // sys_amount_auditing 表中的 balance_amount 字段,表示冻结的金额, 避免重复提现

+ 15 - 3
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysUserAccountServiceImpl.java

@@ -58,11 +58,20 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
     @Autowired
     private QuoteClient quoteClient;
 
+    /**
+     * 查询指定租户下,用户在系统中的账户信息
+     *
+     * @param systemCode 租户代码
+     * @param userId 用户序号
+     * @author lipf
+     * @date 2026/6/4 14:04
+     */
     @Override
-    public SysUserAccount queryByUserId(String userId) {
+    public SysUserAccount queryByUserId(String userId, String systemCode) {
         LambdaQueryWrapper<SysUserAccount> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(SysUserAccount::getUserId, userId);
         wrapper.eq(SysUserAccount::getIsDelete, 0);
+        wrapper.eq(SysUserAccount::getSystemCode, systemCode);
         return this.getOne(wrapper);
     }
 
@@ -88,11 +97,13 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
     public SysUserWalletVo userWallet() {
         // 获取个人中心信息
         String mobile = baseController.getUserName();
-        String systemCode = baseController.getAppSystemCode();
+        String systemCode = baseController.getSystemCode();
+        String userId  = baseController.getUserId();
+        log.info("查询用户的钱包信息:mobile=[{}], systemCode=[{}],userId=[{}]", mobile, systemCode, userId);
         SysUser sysUser = sysUserService.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getMobile, mobile));
         SysUserJzgInfo sysUserJzgInfo = sysUserJzgInfoService.getOne(new LambdaQueryWrapper<SysUserJzgInfo>().eq(SysUserJzgInfo::getUserId, sysUser.getId()).eq(SysUserJzgInfo::getSystemCode, systemCode));
         SysDept sysDept = sysDeptService.getById(sysUserJzgInfo.getDeptId());
-        SysUserAccount sysUserAccount = sysUserAccountService.queryByUserId(sysUser.getId());
+        SysUserAccount sysUserAccount = sysUserAccountService.queryByUserId(sysUser.getId(),systemCode);
         if (sysUserAccount == null) {
             sysUserAccount = new SysUserAccount();
             sysUserAccount.setUserId(sysUser.getId());
@@ -100,6 +111,7 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
             sysUserAccount.setSumAmountPaid(BigDecimal.ZERO);
             sysUserAccount.setSumAmountUnpaid(BigDecimal.ZERO);
             sysUserAccount.setIntegral(BigDecimal.ZERO);
+            sysUserAccount.setSystemCode(systemCode);
             sysUserAccountService.save(sysUserAccount);
         }
         return buildUserWalletVo(sysDept, sysUser, sysUserJzgInfo, sysUserAccount);

+ 2 - 2
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysUserJzgAppServiceImpl.java

@@ -281,7 +281,7 @@ public class SysUserJzgAppServiceImpl extends ServiceImpl<SysUserJzgAppMapper, S
                     sysUserJzgInfoService.save(userInfo);
                     userId = userInfo.getId();
                 } else {
-                    if (!appUser.getReferrerId().equals(yqrAppUser.getId())) {
+                    if (!Objects.equals(appUser.getReferrerId(),yqrAppUser.getId())) {
                         throw new SystemException("该用户已被邀请注册");
                     }
                     invitationVo.setIsJoined(1);
@@ -292,7 +292,7 @@ public class SysUserJzgAppServiceImpl extends ServiceImpl<SysUserJzgAppMapper, S
             return invitationVo;
         } catch (Exception e) {
             log.error("invitationRegister",e);
-            throw new SystemException("程序异常");
+            throw new SystemException(Objects.toString(e.getMessage(),"程序异常"));
         }
     }