mac 2 лет назад
Родитель
Сommit
9c3a280da8

+ 1 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/KxsTotalDebt.java

@@ -76,6 +76,7 @@ public class KxsTotalDebt extends Model<KxsTotalDebt> implements Serializable {
      */
     @Schema(description = "创客ID")
     @NotNull(message = "创客ID不能为空")
+    @DecimalMin("1")
     private Integer userId;
 
 

+ 1 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/constant/enums/UserErrorTypeEnum.java

@@ -26,6 +26,7 @@ public enum UserErrorTypeEnum {
 	WITHDRAW_MAX(-1, "单笔提现金额不能超过50000"),
 	NOT_SUFFICIENT_FUNDS(-1, "可提现余额不足"),
 	USER_LIMIT_ERROR(-1, "用户预发额度初始化失败"),
+	USER_HAS_ADDED_AN_AMOUNT_OWED(-1, "此用户已添加欠款"),
 	CLIENT_NULL(-1, "客户端查询异常,请检查数据库链接");
 
 	private final int code;

+ 14 - 4
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysTotalDebtController.java

@@ -1,16 +1,21 @@
 package com.kxs.user.biz.controller.admin;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.kxs.common.core.util.R;
+import com.kxs.system.api.model.SysPublicParam;
 import com.kxs.user.api.model.KxsTotalDebt;
 import com.kxs.user.api.model.KxsTotalDebtLog;
 import com.kxs.user.biz.service.KxsTotalDebtLogService;
 import com.kxs.user.biz.service.KxsTotalDebtService;
+import jakarta.validation.Valid;
 import lombok.RequiredArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
+import java.time.LocalDateTime;
 import java.util.List;
 
 /**
@@ -25,6 +30,7 @@ import java.util.List;
 public class SysTotalDebtController {
 
     /**
+     * KXS总偿债额
      * 服务对象
      */
     private final KxsTotalDebtService kxsTotalDebtService;
@@ -54,9 +60,9 @@ public class SysTotalDebtController {
      */
     @PostMapping("/add")
 //    @PreAuthorize("@pms.hasPermission('sys_debt_add')")
-    public R add(@RequestBody KxsTotalDebt param) {
+    public R add(@RequestBody @Valid KxsTotalDebt param) {
 
-        return R.ok(kxsTotalDebtService.save(param));
+        return kxsTotalDebtService.addData(param);
     }
 
 
@@ -68,9 +74,13 @@ public class SysTotalDebtController {
      */
     @PostMapping("/update")
 //    @PreAuthorize("@pms.hasPermission('sys_debt_edit')")
-    public R update(@RequestBody KxsTotalDebt param) {
+    public R update(@RequestBody @Valid KxsTotalDebt param) {
 
-        return R.ok(kxsTotalDebtService.save(param));
+        return R.ok(kxsTotalDebtService.update(Wrappers.<KxsTotalDebt>lambdaUpdate()
+                .eq(KxsTotalDebt::getId, param.getId())
+                .set(KxsTotalDebt::getTotalDebt, param.getTotalDebt())
+                .set(KxsTotalDebt::getRemark, param.getRemark())
+                .set(KxsTotalDebt::getUpdateTime, LocalDateTime.now())));
     }
 
 

+ 2 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/KxsTotalDebtService.java

@@ -1,6 +1,7 @@
 package com.kxs.user.biz.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.common.core.util.R;
 import com.kxs.user.api.model.KxsTotalDebt;
 
 /**
@@ -11,5 +12,6 @@ import com.kxs.user.api.model.KxsTotalDebt;
  */
 public interface KxsTotalDebtService extends IService<KxsTotalDebt> {
 
+    R addData(KxsTotalDebt param);
 }
 

+ 21 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/impl/KxsTotalDebtServiceImpl.java

@@ -1,9 +1,15 @@
 package com.kxs.user.biz.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.common.core.util.R;
+import com.kxs.user.api.model.KxsUser;
+import com.kxs.user.biz.constant.enums.UserErrorTypeEnum;
 import com.kxs.user.biz.mapper.KxsTotalDebtMapper;
 import com.kxs.user.api.model.KxsTotalDebt;
+import com.kxs.user.biz.mapper.KxsUserMapper;
 import com.kxs.user.biz.service.KxsTotalDebtService;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
 /**
@@ -13,7 +19,22 @@ import org.springframework.stereotype.Service;
  * @since 2024-03-22 11:05:40
  */
 @Service("kxsTotalDebtService")
+@RequiredArgsConstructor
 public class KxsTotalDebtServiceImpl extends ServiceImpl<KxsTotalDebtMapper, KxsTotalDebt> implements KxsTotalDebtService {
 
+    private final KxsUserMapper kxsUserMapper;
+
+    @Override
+    public R addData(KxsTotalDebt param) {
+        KxsUser user = kxsUserMapper.selectById(param.getUserId());
+        if(user == null){
+            return R.failed(UserErrorTypeEnum.USER_NOT_EXIST.getDescription());
+        }
+        KxsTotalDebt totalDebt = getOne(Wrappers.<KxsTotalDebt>lambdaQuery().eq(KxsTotalDebt::getUserId, param.getUserId()));
+        if(totalDebt != null){
+            return R.failed(UserErrorTypeEnum.USER_HAS_ADDED_AN_AMOUNT_OWED.getDescription());
+        }
+        return R.ok(save(param));
+    }
 }