rayson 1 год назад
Родитель
Сommit
ccb0d47a47
47 измененных файлов с 428 добавлено и 213 удалено
  1. 1 6
      menduner/menduner-reward-api/src/main/java/com/citu/module/menduner/reward/enums/ErrorCodeConstants.java
  2. 5 5
      menduner/menduner-reward-biz/src/main/java/com/citu/module/menduner/reward/mq/consumer/UserPointConsumer.java
  3. 4 3
      menduner/menduner-reward-biz/src/main/java/com/citu/module/menduner/reward/service/signin/SignInRecordServiceImpl.java
  4. 2 6
      menduner/menduner-reward-biz/src/main/resources/i18n/messages_en_US.properties
  5. 2 6
      menduner/menduner-reward-biz/src/main/resources/i18n/messages_zh_CN.properties
  6. 25 28
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/AccountRecordSaveReqDTO.java
  7. 9 7
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/EnterpriseAccountApi.java
  8. 11 13
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/UserAccountApi.java
  9. 7 5
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/ErrorCodeConstants.java
  10. 7 0
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/MathOperationEnum.java
  11. 11 8
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/account/BalanceBizTypeEnum.java
  12. 10 9
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/account/PointBizTypeEnum.java
  13. 4 5
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/permission/MdeRoleCodeEnum.java
  14. 7 4
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/account/EnterpriseAccountApiImpl.java
  15. 7 4
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/account/UserAccountApiImpl.java
  16. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/enterprise/EnterpriseAccountController.java
  17. 9 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/hire/HireCommissionRatioController.java
  18. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/user/UserAccountController.java
  19. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/appadmin/hire/AppAdminHireJobCvRelController.java
  20. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/appadmin/job/vo/AppAdminJobSaveReqVO.java
  21. 3 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioPageReqVO.java
  22. 3 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioRespVO.java
  23. 3 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioSaveReqVO.java
  24. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedRespVO.java
  25. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedSaveReqVO.java
  26. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedSimpleRespVO.java
  27. 3 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/hire/HireCommissionRatioDO.java
  28. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/job/JobAdvertisedDO.java
  29. 1 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/es/job/ESJobAdvertisedMergeDO.java
  30. 2 2
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/enterprise/EnterpriseAccountMapper.java
  31. 22 1
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/record/EnterpriseAccountRecordMapper.java
  32. 9 8
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/record/UserAccountRecordMapper.java
  33. 10 9
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/enterprise/account/EnterpriseAccountService.java
  34. 2 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/enterprise/account/EnterpriseAccountServiceImpl.java
  35. 8 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireCommissionRatioService.java
  36. 17 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireCommissionRatioServiceImpl.java
  37. 0 6
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobCvRelService.java
  38. 0 11
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobCvRelServiceImpl.java
  39. 8 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobIntegrationService.java
  40. 49 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobIntegrationServiceImpl.java
  41. 130 31
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedServiceImpl.java
  42. 2 2
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/permission/MdeRoleServiceImpl.java
  43. 3 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/record/EnterpriseAccountRecordServiceImpl.java
  44. 4 9
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/record/UserAccountRecordServiceImpl.java
  45. 4 0
      menduner/menduner-system-biz/src/main/resources/application.yaml
  46. 8 0
      menduner/menduner-system-biz/src/main/resources/i18n/messages_en_US.properties
  47. 8 0
      menduner/menduner-system-biz/src/main/resources/i18n/messages_zh_CN.properties

+ 1 - 6
menduner/menduner-reward-api/src/main/java/com/citu/module/menduner/reward/enums/ErrorCodeConstants.java

@@ -45,12 +45,7 @@ public interface ErrorCodeConstants {
     //========== 签到记录 1_110_004_000 ==========
     ErrorCode SIGN_IN_RECORD_TODAY_EXISTS = new ErrorCode(1_110_004_001, "今日已签到,请勿重复签到");
 
-    // ========== 账户相关  1_110_005_000 ============
-    ErrorCode USER_NOT_EXISTS = new ErrorCode(1_110_005_001, "用户不存在");
-    ErrorCode USER_POINT_NOT_ENOUGH = new ErrorCode(1_110_005_002, "用户积分余额不足");
-    ErrorCode USER_POINT_CAN_NOT_BE_EMPTY = new ErrorCode(1_110_005_003, "变动积分不能为空");
-    ErrorCode USER_BALANCE_NOT_ENOUGH = new ErrorCode(1_110_005_004, "用户余额不足");
-    ErrorCode USER_BALANCE_CAN_NOT_BE_EMPTY = new ErrorCode(1_110_005_005, "变动余额不能为空");
+    // ========== 占位  1_110_005_000 ============
 
     // ========== 事件指标 1_110_006_000 ==========
     ErrorCode EVENT_METRIC_NOT_EXISTS = new ErrorCode(1_110_006_001, "事件指标不存在");

+ 5 - 5
menduner/menduner-reward-biz/src/main/java/com/citu/module/menduner/reward/mq/consumer/UserPointConsumer.java

@@ -32,15 +32,15 @@ public class UserPointConsumer implements RocketMQListener<UserPointSendMessage>
     public void onMessage(UserPointSendMessage message) {
         log.info("接收到队列消息[{}]", message);
         // 增加用户积分
-        AccountRecordSaveReqDTO dto = new AccountRecordSaveReqDTO(
-                message.getUserId(),
+        AccountRecordSaveReqDTO dto = new AccountRecordSaveReqDTO();
+        dto.build(message.getUserId(),
                 message.getUrl(),
                 message.getTitle(),
-                message.getOperation(),
+                message.getOperation().getExpression(),
                 message.getPoint(),
-                message.getBizType(),
+                message.getBizType().getType(),
                 message.getBizId());
-        userAccountApi.createPointRecord(dto);
+        userAccountApi.createPointRecord(dto).getCheckedData();
         log.info("消息处理完备[{}]", message);
     }
 

+ 4 - 3
menduner/menduner-reward-biz/src/main/java/com/citu/module/menduner/reward/service/signin/SignInRecordServiceImpl.java

@@ -75,13 +75,14 @@ public class SignInRecordServiceImpl implements SignInRecordService {
 
         // 4. 增加积分
         if (!ObjectUtils.equalsAny(record.getPoint(), null, 0)) {
-            AccountRecordSaveReqDTO dto = new AccountRecordSaveReqDTO(
+            AccountRecordSaveReqDTO dto = new AccountRecordSaveReqDTO();
+            dto.build(
                     userId,
                     "",
                     PointBizTypeEnum.SIGN.getName(),
-                    MathOperationEnum.ADD,
+                    MathOperationEnum.ADD.getExpression(),
                     record.getPoint(),
-                    PointBizTypeEnum.SIGN,
+                    PointBizTypeEnum.SIGN.getType(),
                     String.valueOf(record.getId()));
             userAccountApi.createPointRecord(dto);
         }

+ 2 - 6
menduner/menduner-reward-biz/src/main/resources/i18n/messages_en_US.properties

@@ -39,12 +39,8 @@
 1_110_003_005=Reward points cannot be less than 0
 # ========== 签到记录 1_110_004_000 ==========
 1_110_004_001=Checked in today, please do not sign in again
-# ========== 账户相关  1_110_005_000 ============
-1_110_005_001=User does not exist
-1_110_005_002=Insufficient user points balance
-1_110_005_003=Variable integral cannot be empty
-1_110_005_004=User balance insufficient
-1_110_005_005=Variable balance cannot be empty
+# ========== 占位  1_110_005_000 ============
+
 # ========== 事件指标 1_110_006_000 ==========
 1_110_006_001=Event indicator does not exist
 # ========== 事件记录 1_110_007_000 ==========

+ 2 - 6
menduner/menduner-reward-biz/src/main/resources/i18n/messages_zh_CN.properties

@@ -39,12 +39,8 @@
 1_110_003_005=奖励积分不能小于 0
 # ========== 签到记录 1_110_004_000 ==========
 1_110_004_001=今日已签到,请勿重复签到
-# ========== 账户相关  1_110_005_000 ============
-1_110_005_001=用户不存在
-1_110_005_002=用户积分余额不足
-1_110_005_003=变动积分不能为空
-1_110_005_004=用户余额不足
-1_110_005_005=变动余额不能为空
+# ========== 占位  1_110_005_000 ============
+
 # ========== 事件指标 1_110_006_000 ==========
 1_110_006_001=事件指标不存在
 # ========== 事件记录 1_110_007_000 ==========

+ 25 - 28
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/AccountRecordSaveReqDTO.java

@@ -1,8 +1,5 @@
 package com.citu.module.menduner.system.api.account;
 
-import com.citu.module.menduner.system.enums.MathOperationEnum;
-import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
-import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
@@ -16,26 +13,26 @@ public class AccountRecordSaveReqDTO {
     private Long userId;
     private String url;
     private String title;
-    private MathOperationEnum operation;
+    private String operation;
     private Integer point;
     private BigDecimal balance;
-    private PointBizTypeEnum pointBizTypeEnum;
-    private BalanceBizTypeEnum balanceBizType;
+    private Integer pointBizType;
+    private Integer balanceBizType;
     private String bizId;
 
 
     /**
      * 创建用户账户积分变动记录
      **/
-    public AccountRecordSaveReqDTO(Long userId,
-                                   String url,
-                                   String title,
-                                   MathOperationEnum operation,
-                                   Integer point,
-                                   PointBizTypeEnum bizType,
-                                   String bizId) {
+    public void build(Long userId,
+                      String url,
+                      String title,
+                      String operation,
+                      Integer point,
+                      Integer bizType,
+                      String bizId) {
         this.url = url;
-        this.pointBizTypeEnum = bizType;
+        this.pointBizType = bizType;
         this.point = point;
         initCommon(userId, title, operation, bizId);
 
@@ -44,12 +41,12 @@ public class AccountRecordSaveReqDTO {
     /**
      * 创建用户账户余额变动记录
      **/
-    public AccountRecordSaveReqDTO(Long userId,
-                                   String title,
-                                   MathOperationEnum operation,
-                                   BigDecimal balance,
-                                   BalanceBizTypeEnum bizType,
-                                   String bizId) {
+    public void build(Long userId,
+                      String title,
+                      String operation,
+                      BigDecimal balance,
+                      Integer bizType,
+                      String bizId) {
         this.balanceBizType = bizType;
         this.balance = balance;
         initCommon(userId, title, operation, bizId);
@@ -59,16 +56,16 @@ public class AccountRecordSaveReqDTO {
     /**
      * 创建企业账户积分变动记录
      **/
-    public AccountRecordSaveReqDTO(
+    public void build(
             Long enterpriseId,
             Long userId,
             String title,
-            MathOperationEnum operation,
+            String operation,
             Integer point,
-            PointBizTypeEnum bizType,
+            Integer bizType,
             String bizId) {
         this.enterpriseId = enterpriseId;
-        this.pointBizTypeEnum = bizType;
+        this.pointBizType = bizType;
         this.point = point;
         initCommon(userId, title, operation, bizId);
 
@@ -77,13 +74,13 @@ public class AccountRecordSaveReqDTO {
     /**
      * 创建企业账户余额变动记录
      **/
-    public AccountRecordSaveReqDTO(
+    public void build(
             Long enterpriseId,
             Long userId,
             String title,
-            MathOperationEnum operation,
+            String operation,
             BigDecimal balance,
-            BalanceBizTypeEnum bizType,
+            Integer bizType,
             String bizId) {
         this.enterpriseId = enterpriseId;
         this.balanceBizType = bizType;
@@ -98,7 +95,7 @@ public class AccountRecordSaveReqDTO {
      **/
     private void initCommon(Long userId,
                             String title,
-                            MathOperationEnum operation,
+                            String operation,
                             String bizId) {
         this.userId = userId;
         this.title = title;

+ 9 - 7
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/EnterpriseAccountApi.java

@@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.security.PermitAll;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
@@ -55,11 +56,12 @@ public interface EnterpriseAccountApi {
             @RequestParam("userId") Long userId,
             @RequestParam("balance") BigDecimal balance);
 
+    @PermitAll
     @PostMapping(PREFIX + "/create/point/record")
     @Operation(summary = "创建企业账户积分变动记录")
     CommonResult<Boolean> createPointRecord(@RequestBody AccountRecordSaveReqDTO dto);
 
-
+    @PermitAll
     @PostMapping(PREFIX + "/create/balance/record")
     @Operation(summary = "创建企业账户余额变动记录")
     CommonResult<Boolean> createBalanceRecord(@RequestBody AccountRecordSaveReqDTO dto);
@@ -70,16 +72,16 @@ public interface EnterpriseAccountApi {
     @Parameters({
             @Parameter(name = "enterpriseId", description = "企业号", example = "2", required = true),
             @Parameter(name = "userId", description = "用户编号", example = "2", required = true),
-            @Parameter(name = "url", description = "事件地址", example = "2", required = true),
-            @Parameter(name = "startDate", description = "开始时间", example = "2", required = true),
-            @Parameter(name = "endDate", description = "结束时间", example = "2", required = true)
+            @Parameter(name = "url", description = "事件地址", example = "2", required = false),
+            @Parameter(name = "startDate", description = "开始时间", example = "2", required = false),
+            @Parameter(name = "endDate", description = "结束时间", example = "2", required = false)
     })
     CommonResult<Integer> getPointCount(
             @RequestParam("enterpriseId") Long enterpriseId,
             @RequestParam("userId") Long userId,
-            @RequestParam("url") String url,
-            @RequestParam("startDate") LocalDateTime startDate,
-            @RequestParam("endDate") LocalDateTime endDate);
+            @RequestParam(value = "url", required = false) String url,
+            @RequestParam(value = "startDate", required = false) LocalDateTime startDate,
+            @RequestParam(value = "endDate", required = false) LocalDateTime endDate);
 
 
 }

+ 11 - 13
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/account/UserAccountApi.java

@@ -2,9 +2,6 @@ package com.citu.module.menduner.system.api.account;
 
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.module.menduner.system.enums.ApiConstants;
-import com.citu.module.menduner.system.enums.MathOperationEnum;
-import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
-import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.Parameters;
@@ -12,6 +9,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.security.PermitAll;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
@@ -47,29 +45,29 @@ public interface UserAccountApi {
                                         @RequestParam("balance") BigDecimal balance);
 
 
-
+    @PermitAll
     @PostMapping(PREFIX + "/create/point/record")
     @Operation(summary = "创建用户账户积分变动记录")
     CommonResult<Boolean> createPointRecord(@RequestBody AccountRecordSaveReqDTO dto);
 
-
+    @PermitAll
     @PostMapping(PREFIX + "/create/balance/record")
     @Operation(summary = "创建用户账户余额变动记录")
-    CommonResult<Boolean> createBalanceRecord( @RequestBody AccountRecordSaveReqDTO dto);
+    CommonResult<Boolean> createBalanceRecord(@RequestBody AccountRecordSaveReqDTO dto);
 
 
     @GetMapping(PREFIX + "/get/point/count")
     @Operation(summary = "获取一段时间内的用户账户积分变动获得的数量")
     @Parameters({
             @Parameter(name = "userId", description = "用户编号", example = "2", required = true),
-            @Parameter(name = "url", description = "事件地址", example = "2", required = true),
-            @Parameter(name = "startDate", description = "开始时间", example = "2", required = true),
-            @Parameter(name = "endDate", description = "结束时间", example = "2", required = true)
+            @Parameter(name = "url", description = "事件地址", example = "2", required = false),
+            @Parameter(name = "startDate", description = "开始时间", example = "2", required = false),
+            @Parameter(name = "endDate", description = "结束时间", example = "2", required = false)
     })
-    CommonResult<Integer> getPointCount(@RequestParam("userId")Long userId,
-                                        @RequestParam("url")String url,
-                                        @RequestParam("startDate")LocalDateTime startDate,
-                                        @RequestParam("endDate")LocalDateTime endDate);
+    CommonResult<Integer> getPointCount(@RequestParam("userId") Long userId,
+                                        @RequestParam(value = "url", required = false) String url,
+                                        @RequestParam(value = "startDate", required = false) LocalDateTime startDate,
+                                        @RequestParam(value = "endDate", required = false) LocalDateTime endDate);
 
 
 }

+ 7 - 5
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/ErrorCodeConstants.java

@@ -242,6 +242,8 @@ public interface ErrorCodeConstants {
     ErrorCode MDE_JOB_ADVERTISED_EDU_TYPE_NOT_NULL = new ErrorCode(1_100_025_007, "学历要求不能为空");
     ErrorCode MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH = new ErrorCode(1_100_025_008, "账户余额不足");
     ErrorCode MDE_ENTERPRISE_ACCOUNT_POINT_NOT_ENOUGH = new ErrorCode(1_100_025_009, "账户积分不足");
+    ErrorCode MDE_JOB_ADVERTISED_BALANCE_UPDATE = new ErrorCode(1_100_025_010, "不能修改已发布职位赏金余额");
+    ErrorCode MDE_JOB_ADVERTISED_POINT_UPDATE = new ErrorCode(1_100_025_011, "不能修改已发布职位赏金积分");
 
 
     // ========== 企业招聘者浏览 1_100_026_000 ==========
@@ -321,10 +323,10 @@ public interface ErrorCodeConstants {
     ErrorCode USER_ACCOUNT_NOT_EXISTS = new ErrorCode(1_100_038_001, "用户账户不存在");
 
     // ========== 账户记录相关  1_100_039_000 ============
-    ErrorCode USER_NOT_EXISTS = new ErrorCode(1_100_038_001, "用户不存在");
-    ErrorCode USER_POINT_NOT_ENOUGH = new ErrorCode(1_100_038_002, "用户积分余额不足");
-    ErrorCode USER_POINT_CAN_NOT_BE_EMPTY = new ErrorCode(1_100_038_003, "变动积分不能为空");
-    ErrorCode USER_BALANCE_NOT_ENOUGH = new ErrorCode(1_100_038_004, "用户余额不足");
-    ErrorCode USER_BALANCE_CAN_NOT_BE_EMPTY = new ErrorCode(1_100_038_005, "变动余额不能为空");
+    ErrorCode USER_NOT_EXISTS = new ErrorCode(1_100_039_001, "用户不存在");
+    ErrorCode USER_POINT_NOT_ENOUGH = new ErrorCode(1_100_039_002, "用户积分余额不足");
+    ErrorCode USER_POINT_CAN_NOT_BE_EMPTY = new ErrorCode(1_100_039_003, "变动积分不能为空");
+    ErrorCode USER_BALANCE_NOT_ENOUGH = new ErrorCode(1_100_039_004, "用户余额不足");
+    ErrorCode USER_BALANCE_CAN_NOT_BE_EMPTY = new ErrorCode(1_100_039_005, "变动余额不能为空");
 
 }

+ 7 - 0
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/MathOperationEnum.java

@@ -1,8 +1,11 @@
 package com.citu.module.menduner.system.enums;
 
+import cn.hutool.core.util.EnumUtil;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+import java.util.Objects;
+
 /**
  * 数据操作符 0 + | 1 -
  **/
@@ -16,4 +19,8 @@ public enum MathOperationEnum {
     final String operator;
     final String remark;
 
+    public static MathOperationEnum from(String expression) {
+        return EnumUtil.getBy(MathOperationEnum.class,
+                e -> Objects.equals(expression, e.getExpression()));
+    }
 }

+ 11 - 8
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/account/BalanceBizTypeEnum.java

@@ -14,10 +14,17 @@ import java.util.Objects;
  */
 @AllArgsConstructor
 @Getter
-public enum BalanceBizTypeEnum implements IntArrayValuable {
+public enum BalanceBizTypeEnum {
+
+    RECHARGE(1, "充值", "充值获得 {} 余额", true),
+    ADMIN(2, "管理员修改", "管理员修改 {} 余额", true),
+    PUBLISH(3, "职位发布", "发布职位,扣除 {} 余额", false),
+    PLATFORM_COMMISSION(4, "平台抽成", "平台抽取 {} ", true),
+    RECOMMENDED_POSITIONS(5, "推荐职位", "推荐职位,获得 {}", true),
+    DELIVERY_PERSON(6, "投递人", "投递人,获得 {}", true),
+    GIFT(7, "赠与", "赠与,获得 {}", true)
+    ;
 
-    RECHARGE(1, "充值", "签到获得 {}积分", true),
-    ADMIN(2, "管理员修改", "管理员修改 {} 积分", true);
 
     /**
      * 类型
@@ -36,14 +43,10 @@ public enum BalanceBizTypeEnum implements IntArrayValuable {
      */
     private final boolean add;
 
-    public static BalanceBizTypeEnum getByType(Integer type) {
+    public static BalanceBizTypeEnum from(Integer type) {
         return EnumUtil.getBy(BalanceBizTypeEnum.class,
                 e -> Objects.equals(type, e.getType()));
     }
 
-    @Override
-    public int[] array() {
-        return new int[0];
-    }
 
 }

+ 10 - 9
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/account/PointBizTypeEnum.java

@@ -1,7 +1,7 @@
 package com.citu.module.menduner.system.enums.account;
 
 import cn.hutool.core.util.EnumUtil;
-import com.citu.framework.common.core.IntArrayValuable;
+import com.citu.module.menduner.system.enums.MathOperationEnum;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
@@ -14,11 +14,16 @@ import java.util.Objects;
  */
 @AllArgsConstructor
 @Getter
-public enum PointBizTypeEnum implements IntArrayValuable {
+public enum PointBizTypeEnum {
 
-    SIGN(1, "签到", "签到获得 {}积分", true),
+    SIGN(1, "签到", "签到获得 {} 积分", true),
     ADMIN(2, "管理员修改", "管理员修改 {} 积分", true),
-    EVENT(3, "事件跟踪", "访问[{}],{}{} 积分", true);
+    EVENT(3, "事件跟踪", "访问[{}],{}{} 积分", true),
+    PUBLISH(3, "职位发布", "发布职位,扣除 {} 积分", false),
+    PLATFORM_COMMISSION(4, "平台抽成", "平台抽取 {} ", true),
+    RECOMMENDED_POSITIONS(5, "推荐职位", "推荐职位,获得 {}", true),
+    DELIVERY_PERSON(6, "投递人", "投递人,获得 {}", true),
+    GIFT(7, "赠与", "赠与,获得 {}", true);
 
     /**
      * 类型
@@ -37,14 +42,10 @@ public enum PointBizTypeEnum implements IntArrayValuable {
      */
     private final boolean add;
 
-    public static PointBizTypeEnum getByType(Integer type) {
+    public static PointBizTypeEnum from(Integer type) {
         return EnumUtil.getBy(PointBizTypeEnum.class,
                 e -> Objects.equals(type, e.getType()));
     }
 
-    @Override
-    public int[] array() {
-        return new int[0];
-    }
 
 }

+ 4 - 5
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/permission/MdeRoleCodeEnum.java

@@ -11,9 +11,8 @@ import lombok.Getter;
 @AllArgsConstructor
 public enum MdeRoleCodeEnum {
 
-    SUPER_ADMIN("super_admin", "超级管理员"),
-    TENANT_ADMIN("tenant_admin", "租户管理员"),
-    MDE_ADMIN("mde_admin", "menduner 管理员"),
+
+    MDE_ADMIN("menduner_admin", "menduner 管理员"),
     ;
 
     /**
@@ -25,8 +24,8 @@ public enum MdeRoleCodeEnum {
      */
     private final String name;
 
-    public static boolean isSuperAdmin(String code) {
-        return ObjectUtils.equalsAny(code, SUPER_ADMIN.getCode());
+    public static boolean isAdmin(String code) {
+        return ObjectUtils.equalsAny(code, MDE_ADMIN.getCode());
     }
 
 }

+ 7 - 4
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/account/EnterpriseAccountApiImpl.java

@@ -2,6 +2,9 @@ package com.citu.module.menduner.system.api.account;
 
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.module.menduner.system.dal.dataobject.enterprise.EnterpriseAccountDO;
+import com.citu.module.menduner.system.enums.MathOperationEnum;
+import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
+import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
 import com.citu.module.menduner.system.service.enterprise.account.EnterpriseAccountService;
 import com.citu.module.menduner.system.service.record.EnterpriseAccountRecordService;
 import org.springframework.validation.annotation.Validated;
@@ -47,9 +50,9 @@ public class EnterpriseAccountApiImpl implements EnterpriseAccountApi {
         accountRecordService.createPointRecord(dto.getEnterpriseId(),
                 dto.getUserId(),
                 dto.getTitle(),
-                dto.getOperation(),
+                MathOperationEnum.from(dto.getOperation()),
                 dto.getPoint(),
-                dto.getPointBizTypeEnum(),
+                PointBizTypeEnum.from(dto.getPointBizType()),
                 dto.getBizId()
         );
         return success(true);
@@ -60,9 +63,9 @@ public class EnterpriseAccountApiImpl implements EnterpriseAccountApi {
         accountRecordService.createBalanceRecord(dto.getEnterpriseId(),
                 dto.getUserId(),
                 dto.getTitle(),
-                dto.getOperation(),
+                MathOperationEnum.from(dto.getOperation()),
                 dto.getBalance(),
-                dto.getBalanceBizType(),
+                BalanceBizTypeEnum.from(dto.getBalanceBizType()),
                 dto.getBizId()
         );
         return success(true);

+ 7 - 4
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/account/UserAccountApiImpl.java

@@ -2,6 +2,9 @@ package com.citu.module.menduner.system.api.account;
 
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.module.menduner.system.dal.dataobject.user.UserAccountDO;
+import com.citu.module.menduner.system.enums.MathOperationEnum;
+import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
+import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
 import com.citu.module.menduner.system.service.record.UserAccountRecordService;
 import com.citu.module.menduner.system.service.user.UserAccountService;
 import org.springframework.validation.annotation.Validated;
@@ -48,9 +51,9 @@ public class UserAccountApiImpl implements UserAccountApi {
                 dto.getUserId(),
                 dto.getUrl(),
                 dto.getTitle(),
-                dto.getOperation(),
+                MathOperationEnum.from(dto.getOperation()),
                 dto.getPoint(),
-                dto.getPointBizTypeEnum(),
+                PointBizTypeEnum.from(dto.getPointBizType()),
                 dto.getBizId()
         );
         return success(true);
@@ -61,9 +64,9 @@ public class UserAccountApiImpl implements UserAccountApi {
         accountRecordService.createBalanceRecord(
                 dto.getUserId(),
                 dto.getTitle(),
-                dto.getOperation(),
+                MathOperationEnum.from(dto.getOperation()),
                 dto.getBalance(),
-                dto.getBalanceBizType(),
+                BalanceBizTypeEnum.from(dto.getBalanceBizType()),
                 dto.getBizId()
         );
         return success(true);

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/enterprise/EnterpriseAccountController.java

@@ -47,7 +47,7 @@ public class EnterpriseAccountController {
     
     @GetMapping("/page")
     @Operation(summary = "获得企业账户分页")
-    @PreAuthorize("@ss.hasPermission('menduner:system:enterprise-account:query')")
+    @PreAuthorize("@ss.hasPermission('menduner:system:enterprise-account-record:query')")
     public CommonResult<PageResult<EnterpriseAccountPageRespVO>> getEnterpriseAccountPage
             (@Valid EnterpriseAccountPageReqVO pageReqVO) {
         PageResult<EnterpriseAccountPageRespVO> pageResult = enterpriseAccountService.page2(pageReqVO);

+ 9 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/hire/HireCommissionRatioController.java

@@ -64,11 +64,19 @@ public class HireCommissionRatioController {
     @GetMapping("/get")
     @Operation(summary = "获得众聘-佣金比例")
     @PreAuthorize("@ss.hasPermission('menduner:system:hire-commission-ratio:query')")
-    public CommonResult<HireCommissionRatioRespVO> getHireCommissionRatio() {
+    public CommonResult<HireCommissionRatioRespVO> get() {
         HireCommissionRatioDO hireCommissionRatio = hireCommissionRatioService.get();
         return success(BeanUtils.toBean(hireCommissionRatio, HireCommissionRatioRespVO.class));
     }
 
+    @PostMapping("/save")
+    @Operation(summary = "保存众聘-佣金比例")
+    @PreAuthorize("@ss.hasPermission('menduner:system:hire-commission-ratio:save')")
+    public CommonResult<Boolean> save(@Valid @RequestBody HireCommissionRatioSaveReqVO createReqVO) {
+        hireCommissionRatioService.save(createReqVO);
+        return success(true);
+    }
+
     @GetMapping("/page")
     @Operation(summary = "获得众聘-佣金比例分页")
     @PreAuthorize("@ss.hasPermission('menduner:system:hire-commission-ratio:query')")

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/user/UserAccountController.java

@@ -46,7 +46,7 @@ public class UserAccountController {
 
     @GetMapping("/page")
     @Operation(summary = "获得用户账户分页")
-    @PreAuthorize("@ss.hasPermission('menduner:system:user-account:query')")
+    @PreAuthorize("@ss.hasPermission('menduner:system:user-account-record:query')")
     public CommonResult<PageResult<UserAccountPageRespVO>> getUserAccountPage(@Valid UserAccountPageReqVO pageReqVO) {
         PageResult<UserAccountPageRespVO> pageResult = userAccountService.page2(pageReqVO);
         return success(pageResult);

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/appadmin/hire/AppAdminHireJobCvRelController.java

@@ -68,7 +68,7 @@ public class AppAdminHireJobCvRelController {
     @PostMapping("/settlement")
     @Operation(summary = "结算")
     public CommonResult<Boolean> settlement(@RequestParam("id") Long id) {
-        return success(service.settlement(id));
+        return success(integrationService.settlement(id));
     }
 
 

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/appadmin/job/vo/AppAdminJobSaveReqVO.java

@@ -78,7 +78,7 @@ public class AppAdminJobSaveReqVO {
     private BigDecimal hirePrice;
 
     @Schema(description = "雇佣积分")
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
 
 
 }

+ 3 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioPageReqVO.java

@@ -18,13 +18,13 @@ import static com.citu.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DA
 @ToString(callSuper = true)
 public class HireCommissionRatioPageReqVO extends PageParam {
 
-    @Schema(description = "猎头佣金比例(0.000-100.000)", example = "6824")
+    @Schema(description = "猎头佣金比例(0.01-100.00)", example = "6824")
     private BigDecimal headhuntRate;
 
-    @Schema(description = "推荐人佣金比例(0.000-100.000)")
+    @Schema(description = "推荐人佣金比例(0.01-100.00)")
     private BigDecimal recommendRate;
 
-    @Schema(description = "投递人佣金比例(0.000-100.000)")
+    @Schema(description = "投递人佣金比例(0.01-100.00)")
     private BigDecimal cvRate;
 
     @Schema(description = "创建时间")

+ 3 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioRespVO.java

@@ -18,15 +18,15 @@ public class HireCommissionRatioRespVO {
     @ExcelProperty("id")
     private Long id;
 
-    @Schema(description = "猎头佣金比例(0.000-100.000)", example = "6824")
+    @Schema(description = "猎头佣金比例(0.01-100.00)", example = "6824")
     @ExcelProperty("猎头佣金比例")
     private BigDecimal headhuntRate;
 
-    @Schema(description = "推荐人佣金比例(0.000-100.000)")
+    @Schema(description = "推荐人佣金比例(0.01-100.00)")
     @ExcelProperty("推荐人佣金比例")
     private BigDecimal recommendRate;
 
-    @Schema(description = "投递人佣金比例(0.000-100.000)")
+    @Schema(description = "投递人佣金比例(0.01-100.00)")
     @ExcelProperty("投递人佣金比例")
     private BigDecimal cvRate;
 

+ 3 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/hire/HireCommissionRatioSaveReqVO.java

@@ -15,15 +15,15 @@ public class HireCommissionRatioSaveReqVO {
     private Long id;
 
     @NotNull(message = "{1_100_037_002}")
-    @Schema(description = "猎头佣金比例(0.000-100.000)", example = "6824")
+    @Schema(description = "猎头佣金比例(0.01-100.00)", example = "6824")
     private BigDecimal headhuntRate;
 
     @NotNull(message = "{1_100_037_002}")
-    @Schema(description = "推荐人佣金比例(0.000-100.000)")
+    @Schema(description = "推荐人佣金比例(0.01-100.00)")
     private BigDecimal recommendRate;
 
     @NotNull(message = "{1_100_037_002}")
-    @Schema(description = "投递人佣金比例(0.000-100.000)")
+    @Schema(description = "投递人佣金比例(0.01-100.00)")
     private BigDecimal cvRate;
 
 

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedRespVO.java

@@ -111,7 +111,7 @@ public class JobAdvertisedRespVO {
 
     @Schema(description = "雇佣积分")
     @ExcelProperty("雇佣积分")
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
 
     @Schema(description = "职位状态", example = "2")
     @ExcelProperty(value = "职位状态", converter = DictConvert.class)

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedSaveReqVO.java

@@ -90,7 +90,7 @@ public class JobAdvertisedSaveReqVO {
     private BigDecimal hirePrice;
 
     @Schema(description = "雇佣积分")
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
 
     @Schema(description = "职位状态", example = "2")
     private String status;

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedSimpleRespVO.java

@@ -51,7 +51,7 @@ public class JobAdvertisedSimpleRespVO {
     private BigDecimal hirePrice;
 
     @Schema(description = "雇佣积分")
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
 
     @Schema(description = "状态", example = "1")
     private String status;

+ 3 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/hire/HireCommissionRatioDO.java

@@ -30,15 +30,15 @@ public class HireCommissionRatioDO extends BaseDO {
     @TableId
     private Long id;
     /**
-     * 猎头佣金比例(0.000-100.000)
+     * 猎头佣金比例(0.01-100.00)
      */
     private BigDecimal headhuntRate;
     /**
-     * 推荐人佣金比例(0.000-100.000)
+     * 推荐人佣金比例(0.01-100.00)
      */
     private BigDecimal recommendRate;
     /**
-     * 投递人佣金比例(0.000-100.000)
+     * 投递人佣金比例(0.01-100.00)
      */
     private BigDecimal cvRate;
 

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/job/JobAdvertisedDO.java

@@ -123,7 +123,7 @@ public class JobAdvertisedDO extends TenantBaseDO {
     /**
      * 雇佣积分
      */
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
     /**
      * 职位状态
      * <p>

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/es/job/ESJobAdvertisedMergeDO.java

@@ -140,7 +140,7 @@ public class ESJobAdvertisedMergeDO extends ESBaseDO {
      * 雇佣积分
      */
     @Field(type = FieldType.Integer)
-    private BigDecimal hirePoint;
+    private Integer hirePoint;
     /**
      * 职位状态
      * <p>

+ 2 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/enterprise/EnterpriseAccountMapper.java

@@ -69,8 +69,8 @@ public interface EnterpriseAccountMapper extends BaseMapperX<EnterpriseAccountDO
 
     default EnterpriseAccountDO selectByEnterpriseId(Long enterpriseId, Long userId) {
         return selectOne(new LambdaQueryWrapperX<EnterpriseAccountDO>()
-                .eqIfPresent(EnterpriseAccountDO::getEnterpriseId, enterpriseId)
-                .eq(EnterpriseAccountDO::getEnterpriseId, userId)
+                .eq(EnterpriseAccountDO::getEnterpriseId, enterpriseId)
+                .eq(EnterpriseAccountDO::getUserId, userId)
 
         );
     }

+ 22 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/record/EnterpriseAccountRecordMapper.java

@@ -5,9 +5,10 @@ import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.mybatis.core.mapper.BaseMapperX;
 import com.citu.framework.mybatis.core.query.LambdaQueryWrapperX;
 import com.citu.module.menduner.system.controller.base.account.record.EnterpriseAccountRecordPageReqVO;
-
 import com.citu.module.menduner.system.dal.dataobject.record.EnterpriseAccountRecordDO;
+import com.citu.module.menduner.system.dal.dataobject.record.UserAccountRecordDO;
 import com.citu.module.menduner.system.enums.account.AccountRecordTypeEnum;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.time.LocalDateTime;
@@ -60,6 +61,26 @@ public interface EnterpriseAccountRecordMapper extends BaseMapperX<EnterpriseAcc
         return selectList(wrapperX);
     }
 
+    default Integer sumPoint(Long enterpriseId,
+                             Long userId,
+                             LocalDateTime startDate,
+                             LocalDateTime endDate) {
+        MPJLambdaWrapper<EnterpriseAccountRecordDO> wrapperX = new MPJLambdaWrapper<EnterpriseAccountRecordDO>();
+        wrapperX.selectSum(EnterpriseAccountRecordDO::getPoint);
+        wrapperX.eq(EnterpriseAccountRecordDO::getEnterpriseId, enterpriseId);
+        wrapperX.eq(EnterpriseAccountRecordDO::getUserId, userId);
+        wrapperX.eq(EnterpriseAccountRecordDO::getType, AccountRecordTypeEnum.POINT.getType());
+        if (null != startDate) {
+            wrapperX.ge(EnterpriseAccountRecordDO::getCreateTime, startDate);
+        }
+
+        if (null != endDate) {
+            wrapperX.le(EnterpriseAccountRecordDO::getCreateTime, endDate);
+        }
+
+        return selectJoinOne(Integer.class, wrapperX);
+    }
+
     default PageResult<EnterpriseAccountRecordDO> selectPageByUserId(
             Long enterpriseId,
             Long userId,

+ 9 - 8
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/record/UserAccountRecordMapper.java

@@ -7,6 +7,7 @@ import com.citu.framework.mybatis.core.query.LambdaQueryWrapperX;
 import com.citu.module.menduner.system.controller.base.account.record.UserAccountRecordPageReqVO;
 import com.citu.module.menduner.system.dal.dataobject.record.UserAccountRecordDO;
 import com.citu.module.menduner.system.enums.account.AccountRecordTypeEnum;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.time.LocalDateTime;
@@ -36,15 +37,15 @@ public interface UserAccountRecordMapper extends BaseMapperX<UserAccountRecordDO
      * @param url       事件地址
      * @param startDate 开始时间
      * @param endDate   结束时间
-     * @return List<UserAccountRecordDO>
      **/
-    default List<UserAccountRecordDO> getUserPointList(Long userId,
-                                                       String url,
-                                                       LocalDateTime startDate,
-                                                       LocalDateTime endDate) {
-        LambdaQueryWrapperX<UserAccountRecordDO> wrapperX = new LambdaQueryWrapperX<UserAccountRecordDO>();
+    default Integer sumPoint(Long userId,
+                          String url,
+                          LocalDateTime startDate,
+                          LocalDateTime endDate) {
+        MPJLambdaWrapper<UserAccountRecordDO> wrapperX = new MPJLambdaWrapper<UserAccountRecordDO>();
+        wrapperX.selectSum(UserAccountRecordDO::getPoint);
         wrapperX.eq(UserAccountRecordDO::getUserId, userId);
-        wrapperX.eqIfPresent(UserAccountRecordDO::getUrl, url);
+        wrapperX.eqIfExists(UserAccountRecordDO::getUrl, url);
         wrapperX.eq(UserAccountRecordDO::getType, AccountRecordTypeEnum.POINT.getType());
         if (null != startDate) {
             wrapperX.ge(UserAccountRecordDO::getCreateTime, startDate);
@@ -54,7 +55,7 @@ public interface UserAccountRecordMapper extends BaseMapperX<UserAccountRecordDO
             wrapperX.le(UserAccountRecordDO::getCreateTime, endDate);
         }
 
-        return selectList(wrapperX);
+        return selectJoinOne(Integer.class,wrapperX);
     }
 
     default PageResult<UserAccountRecordDO> selectPageByUserId(Long userId, String type, PageParam pageVO) {

+ 10 - 9
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/enterprise/account/EnterpriseAccountService.java

@@ -59,6 +59,16 @@ public interface EnterpriseAccountService {
      */
     EnterpriseAccountDO createEnterpriseAccountIfAbsent(Long enterpriseId, Long userId);
 
+    /**
+     * 效验额度是否充足
+     *
+     * @param enterpriseId 企业编号
+     * @param userId       用户编号
+     * @param balance      余额
+     * @return 是否充足 ,false 不足| true 足够
+     **/
+    boolean checkBalance(Long enterpriseId, Long userId, BigDecimal balance);
+
 
     // ========== 招聘端 ==========
 
@@ -69,13 +79,4 @@ public interface EnterpriseAccountService {
      */
     EnterpriseAccountDO get();
 
-    /**
-     * 效验额度是否充足
-     *
-     * @param enterpriseId 企业编号
-     * @param userId       用户编号
-     * @param balance      余额
-     * @return 是否充足 ,false 不足| true 足够
-     **/
-    boolean checkBalance(Long enterpriseId, Long userId, BigDecimal balance);
 }

+ 2 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/enterprise/account/EnterpriseAccountServiceImpl.java

@@ -97,4 +97,6 @@ public class EnterpriseAccountServiceImpl implements EnterpriseAccountService {
         // 判断  accountDO.getBalance() 是否大于等于balance
         return accountDO.getBalance().compareTo(balance) >= 0;
     }
+
+
 }

+ 8 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireCommissionRatioService.java

@@ -58,4 +58,12 @@ public interface HireCommissionRatioService {
      * @return 众聘-佣金比例分页
      */
     HireCommissionRatioDO get();
+
+    /**
+     * 保存佣金比例信息
+     *
+     * @param reqVO 保存信息
+     * @return 众聘-佣金比例
+     */
+    void save(HireCommissionRatioSaveReqVO reqVO);
 }

+ 17 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireCommissionRatioServiceImpl.java

@@ -1,6 +1,7 @@
 package com.citu.module.menduner.system.service.hire;
 
 
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.common.util.object.BeanUtils;
 import com.citu.module.menduner.system.controller.base.hire.HireCommissionRatioPageReqVO;
@@ -74,4 +75,20 @@ public class HireCommissionRatioServiceImpl implements HireCommissionRatioServic
         return mapper.selectByOne();
     }
 
+    @Override
+    @DSTransactional
+    public void save(HireCommissionRatioSaveReqVO reqVO) {
+        HireCommissionRatioDO hireCommissionRatio =
+                get();
+        if(null == hireCommissionRatio) {
+            createHireCommissionRatio(reqVO);
+            return;
+        }
+
+        hireCommissionRatio.setCvRate(reqVO.getCvRate());
+        hireCommissionRatio.setHeadhuntRate(reqVO.getHeadhuntRate());
+        hireCommissionRatio.setRecommendRate(reqVO.getRecommendRate());
+
+        mapper.updateById(hireCommissionRatio);
+    }
 }

+ 0 - 6
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobCvRelService.java

@@ -106,12 +106,6 @@ public interface HireJobCvRelService {
      */
     boolean entry(List<Long> ids);
 
-    /**
-     * 结算
-     *
-     * @param id 投递简历id
-     */
-    boolean settlement(Long id);
 
 
 }

+ 0 - 11
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobCvRelServiceImpl.java

@@ -180,15 +180,4 @@ public class HireJobCvRelServiceImpl implements HireJobCvRelService {
         }
         return true;
     }
-
-    @Override
-    @DSTransactional
-    public boolean settlement(Long id) {
-        HireJobCvRelDO cv = validateHireJobCvRelExists(id);
-        cv.setStatus(HireJobCvRelStatusEnum.SETTLEMENT.getStatus());
-        hireJobCvRelMapper.updateById(cv);
-
-        // 结算后,
-        return true;
-    }
 }

+ 8 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobIntegrationService.java

@@ -30,4 +30,12 @@ public interface HireJobIntegrationService {
      **/
     List<AppAdminPersonSimpleRespVO> getRecommendUser();
 
+
+    /**
+     * 结算
+     *
+     * @param id 投递简历id
+     */
+    boolean settlement(Long id);
+
 }

+ 49 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/hire/HireJobIntegrationServiceImpl.java

@@ -1,11 +1,20 @@
 package com.citu.module.menduner.system.service.hire;
 
 import cn.hutool.core.collection.CollUtil;
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.module.menduner.system.controller.appadmin.hire.vo.AppAdminHireJobCvRelPageReqVO;
 import com.citu.module.menduner.system.controller.appadmin.hire.vo.AppAdminHireJobCvRelRespVO;
 import com.citu.module.menduner.system.controller.appadmin.person.vo.AppAdminPersonSimpleRespVO;
+import com.citu.module.menduner.system.controller.base.job.JobAdvertisedRespVO;
+import com.citu.module.menduner.system.dal.dataobject.hire.HireCommissionRatioDO;
+import com.citu.module.menduner.system.dal.dataobject.hire.HireJobCvRelDO;
+import com.citu.module.menduner.system.dal.dataobject.job.JobAdvertisedDO;
 import com.citu.module.menduner.system.dal.mysql.hire.HireJobCvRelMapper;
+import com.citu.module.menduner.system.dal.mysql.job.JobAdvertisedMapper;
+import com.citu.module.menduner.system.enums.hire.HireJobCvRelStatusEnum;
+import com.citu.module.menduner.system.service.enterprise.account.EnterpriseAccountService;
+import com.citu.module.menduner.system.service.record.UserAccountRecordService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
@@ -13,6 +22,10 @@ import org.springframework.validation.annotation.Validated;
 import javax.annotation.Resource;
 import java.util.List;
 
+import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static com.citu.module.menduner.system.enums.ErrorCodeConstants.HIRE_COMMISSION_RATIO_NOT_EXISTS;
+import static com.citu.module.menduner.system.enums.ErrorCodeConstants.HIRE_JOB_CV_REL_NOT_EXISTS;
+
 @Slf4j
 @Service
 @Validated
@@ -21,6 +34,18 @@ public class HireJobIntegrationServiceImpl implements HireJobIntegrationService
     @Resource
     private HireJobCvRelMapper hireJobCvRelMapper;
 
+    @Resource
+    private JobAdvertisedMapper jobAdvertisedMapper;
+
+    @Resource
+    private HireCommissionRatioService ratioService;
+
+    @Resource
+    private UserAccountRecordService userAccountRecordService;
+
+    @Resource
+    private EnterpriseAccountService enterpriseAccountService;
+
 
     @Override
     public PageResult<AppAdminHireJobCvRelRespVO> page(AppAdminHireJobCvRelPageReqVO reqVO) {
@@ -35,4 +60,28 @@ public class HireJobIntegrationServiceImpl implements HireJobIntegrationService
     public List<AppAdminPersonSimpleRespVO> getRecommendUser() {
         return hireJobCvRelMapper.getRecommendUser();
     }
+
+    @Override
+    @DSTransactional
+    public boolean settlement(Long id) {
+        HireJobCvRelDO cv = hireJobCvRelMapper.selectById(id);
+        if (null == cv) {
+            throw exception(HIRE_JOB_CV_REL_NOT_EXISTS);
+        }
+        cv.setStatus(HireJobCvRelStatusEnum.SETTLEMENT.getStatus());
+        hireJobCvRelMapper.updateById(cv);
+
+        // 猎头、 推荐人、投递人
+        // 获取比例配置
+        HireCommissionRatioDO ratio = ratioService.get();
+        if (null == ratio) {
+            throw exception(HIRE_COMMISSION_RATIO_NOT_EXISTS);
+        }
+
+       JobAdvertisedDO job = jobAdvertisedMapper.selectById(cv.getJobId());
+
+        job.getHirePrice();
+
+        return false;
+    }
 }

+ 130 - 31
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedServiceImpl.java

@@ -21,11 +21,15 @@ import com.citu.module.menduner.system.controller.base.job.JobAdvertisedSaveReqV
 import com.citu.module.menduner.system.convert.JobAdvertisedConvert;
 import com.citu.module.menduner.system.dal.dataobject.job.JobAdvertisedDO;
 import com.citu.module.menduner.system.dal.mysql.job.JobAdvertisedMapper;
+import com.citu.module.menduner.system.enums.MathOperationEnum;
 import com.citu.module.menduner.system.enums.MendunerStatusEnum;
+import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
+import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
 import com.citu.module.menduner.system.mq.producer.ESProducer;
 import com.citu.module.menduner.system.service.enterprise.EnterpriseService;
 import com.citu.module.menduner.system.service.enterprise.account.EnterpriseAccountService;
 import com.citu.module.menduner.system.service.enterprise.bind.EnterpriseUserBindService;
+import com.citu.module.menduner.system.service.record.EnterpriseAccountRecordService;
 import com.citu.module.menduner.system.util.ESOperateEnum;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -41,8 +45,7 @@ import java.util.Objects;
 import java.util.stream.Collectors;
 
 import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
-import static com.citu.module.menduner.system.enums.ErrorCodeConstants.MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH;
-import static com.citu.module.menduner.system.enums.ErrorCodeConstants.MDE_JOB_ADVERTISED_NOT_EXISTS;
+import static com.citu.module.menduner.system.enums.ErrorCodeConstants.*;
 
 /**
  * 招聘职位 Service 实现类
@@ -67,6 +70,9 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
     @Resource
     private EnterpriseAccountService enterpriseAccountService;
 
+    @Resource
+    private EnterpriseAccountRecordService accountRecordService;
+
     @Resource
     private ESProducer esProducer;
 
@@ -238,43 +244,60 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
             job.setStatus(MendunerStatusEnum.ENABLE.getStatus());
             job.setTop(false);
             if (!job.getHire()) {
-                job.setHirePoint(BigDecimal.ZERO);
+                job.setHirePoint(0);
                 job.setHirePrice(BigDecimal.ZERO);
             }
-            jobAdvertisedMapper.insert(job);
-            esProducer.send(ESOperateEnum.ADD, job.getId());
+            // 后置处理
+            jobOperateAfter(enterpriseId, loginUser.getId(), job, ESOperateEnum.ADD);
 
         } else {
             // 修改
             JobAdvertisedDO entity = get(reqVO.getId());
+            // 效验
+            validUpdate(enterpriseId, loginUser.getId(), entity, reqVO);
 
             job.setId(entity.getId());
-            jobOperate(job);
+            // 后置处理
+            jobOperateAfter(enterpriseId, loginUser.getId(), job, ESOperateEnum.UPDATE);
         }
         return true;
     }
 
+    /**
+     * 效验职位发布的编辑
+     *
+     * @param enterpriseId 当前操作账户所在的企业
+     * @param userId       操作的用户
+     * @param reqVO        发布的职位信息
+     **/
     public void validAdd(Long enterpriseId,
                          Long userId,
                          AppAdminJobSaveReqVO reqVO) {
         if (reqVO.getHire()) {
             if (null != reqVO.getHirePrice()) {
-                // 计算需要支付的额外费用(如果是新职位,就是全额;如果是修改,就是差额)
-                boolean result = enterpriseAccountService
-                        .checkBalance(enterpriseId, userId, reqVO.getHirePrice());
-                if (!result) {
-                    // 余额不足
-                    throw exception(MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH);
-                }
+            //                // 计算需要支付的额外费用(如果是新职位,就是全额;如果是修改,就是差额)
+            //                boolean result = enterpriseAccountService
+            //                        .checkBalance(enterpriseId, userId, reqVO.getHirePrice());
+            //                if (!result) {
+            //                    // 余额不足
+            //                    throw exception(MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH);
+            //                }
             }
             if (null != reqVO.getHirePoint()) {
                 // 积分
-
             }
         }
 
     }
 
+    /**
+     * 效验职位发布的编辑
+     *
+     * @param enterpriseId 当前操作账户所在的企业
+     * @param userId       操作的用户
+     * @param entity       职位
+     * @param reqVO        编辑的职位信息
+     **/
     public void validUpdate(Long enterpriseId,
                             Long userId,
                             JobAdvertisedDO entity,
@@ -287,22 +310,31 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
         }
 
         if (reqVO.getHire()) {
+//            if (null != reqVO.getHirePrice()) {
+//                // 计算需要支付的额外费用(如果是新职位,就是全额;如果是修改,就是差额)
+//                BigDecimal extraCost = reqVO.getId() == null ? reqVO.getHirePrice()
+//                        : reqVO.getHirePrice().subtract(entity.getHirePrice());
+//
+//                boolean result = enterpriseAccountService
+//                        .checkBalance(enterpriseId, userId, extraCost);
+//                if (!result) {
+//                    // 余额不足
+//                    throw exception(MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH);
+//                }
+//            }
+            // TODO 暂时不给改,不清楚逻辑
             if (null != reqVO.getHirePrice()) {
-                // 计算需要支付的额外费用(如果是新职位,就是全额;如果是修改,就是差额)
-                BigDecimal extraCost = reqVO.getId() == null ? reqVO.getHirePrice()
-                        : reqVO.getHirePrice().subtract(entity.getHirePrice());
-
-                boolean result = enterpriseAccountService
-                        .checkBalance(enterpriseId, userId, extraCost);
-                if (!result) {
-                    // 余额不足
-                    throw exception(MDE_ENTERPRISE_ACCOUNT_BALANCE_NOT_ENOUGH);
+                if (!entity.getHirePrice().equals(reqVO.getHirePrice())) {
+                    throw exception(MDE_JOB_ADVERTISED_BALANCE_UPDATE);
                 }
             }
             if (null != reqVO.getHirePoint()) {
                 // 积分
-
+                if (!entity.getHirePoint().equals(reqVO.getHirePoint())) {
+                    throw exception(MDE_JOB_ADVERTISED_POINT_UPDATE);
+                }
             }
+
         }
 
     }
@@ -325,7 +357,8 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
                 return true;
             }
             job.setStatus(MendunerStatusEnum.ENABLE.getStatus());
-            jobOperate(job);
+            jobAdvertisedMapper.updateById(job);
+            jobDataSync(job, ESOperateEnum.UPDATE);
         }
         return true;
     }
@@ -340,7 +373,8 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
                 return true;
             }
             job.setStatus(MendunerStatusEnum.DISABLE.getStatus());
-            jobOperate(job);
+            jobAdvertisedMapper.updateById(job);
+            jobDataSync(job, ESOperateEnum.UPDATE);
         }
         return true;
     }
@@ -351,7 +385,8 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
         for (Long id : ids) {
             JobAdvertisedDO job = get(id);
             job.setUpdateTime(LocalDateTime.now());
-            jobOperate(job);
+            jobAdvertisedMapper.updateById(job);
+            jobDataSync(job, ESOperateEnum.UPDATE);
         }
     }
 
@@ -371,13 +406,77 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
             }
             job.setUpdateTime(LocalDateTime.now());
             job.setTop(true);
-            jobOperate(job);
+            jobAdvertisedMapper.updateById(job);
+            jobDataSync(job, ESOperateEnum.UPDATE);
+        }
+    }
+
+    /**
+     * 职位操作最后的操作
+     *
+     * @param enterpriseId 当前操作账户所在的企业
+     * @param userId       操作的用户
+     * @param job          职位对象
+     * @param operate      操作类型
+     **/
+    public void jobOperateAfter(Long enterpriseId,
+                                Long userId,
+                                JobAdvertisedDO job,
+                                ESOperateEnum operate) {
+
+
+        if (ESOperateEnum.ADD.getType().equals(operate.getType())) {
+            jobAdvertisedMapper.insert(job);
+        } else {
+            jobAdvertisedMapper.updateById(job);
+        }
+
+        // ========== 众聘处理 ==========
+        if (job.getHire()) {
+            if (null != job.getHirePrice()) {
+                // 创建记录 并扣除余额
+                accountRecordService.createBalanceRecord(
+                        enterpriseId,
+                        userId,
+                        BalanceBizTypeEnum.PUBLISH.getName(),
+                        MathOperationEnum.SUBTRACT,
+                        job.getHirePrice(),
+                        BalanceBizTypeEnum.PUBLISH,
+                        String.valueOf(job.getId()));
+            }
+            if (null != job.getHirePoint()) {
+                // 创建记录 并扣除积分
+                accountRecordService.createPointRecord(
+                        enterpriseId,
+                        userId,
+                        PointBizTypeEnum.PUBLISH.getName(),
+                        MathOperationEnum.SUBTRACT,
+                        job.getHirePoint(),
+                        PointBizTypeEnum.PUBLISH,
+                        String.valueOf(job.getId()));
+
+            }
+
         }
+
+
+        // ========== ES数据同步处理 ==========
+        jobDataSync(job, operate);
+
     }
 
-    public void jobOperate(JobAdvertisedDO job) {
-        jobAdvertisedMapper.updateById(job);
-        esProducer.send(ESOperateEnum.UPDATE, job.getId());
+    /**
+     * 职位数据同步
+     *
+     * @param job     职位对象
+     * @param operate 操作类型
+     **/
+    public void jobDataSync(JobAdvertisedDO job, ESOperateEnum operate) {
+        if (ESOperateEnum.ADD.getType().equals(operate.getType())) {
+            esProducer.send(ESOperateEnum.ADD, job.getId());
+        } else {
+            esProducer.send(ESOperateEnum.UPDATE, job.getId());
+        }
     }
 
 }

+ 2 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/permission/MdeRoleServiceImpl.java

@@ -136,7 +136,7 @@ public class MdeRoleServiceImpl implements MdeRoleService {
     @VisibleForTesting
     void validateRoleDuplicate(String name, String code, Long id) {
         // 0. 超级管理员,不允许创建
-        if (MdeRoleCodeEnum.isSuperAdmin(code)) {
+        if (MdeRoleCodeEnum.isAdmin(code)) {
             throw exception(MDE_ROLE_ADMIN_CODE_ERROR, code);
         }
         // 1. 该 name 名字被其它角色所使用
@@ -237,7 +237,7 @@ public class MdeRoleServiceImpl implements MdeRoleService {
         MdeRoleServiceImpl self = getSelf();
         return ids.stream().anyMatch(id -> {
             MdeRoleDO role = self.getRoleFromCache(id);
-            return role != null && MdeRoleCodeEnum.isSuperAdmin(role.getCode());
+            return role != null && MdeRoleCodeEnum.isAdmin(role.getCode());
         });
     }
 

+ 3 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/record/EnterpriseAccountRecordServiceImpl.java

@@ -171,11 +171,11 @@ public class EnterpriseAccountRecordServiceImpl implements EnterpriseAccountReco
                                  String url,
                                  LocalDateTime startDate,
                                  LocalDateTime endDate) {
-        List<EnterpriseAccountRecordDO> list = mapper.getEnterprisePointList(enterpriseId, userId, startDate, endDate);
-        if (ObjectUtil.isEmpty(list)) {
+        Integer pointCount = mapper.sumPoint(enterpriseId,userId, startDate, endDate);
+        if (null == pointCount) {
             return 0;
         }
-        return list.stream().mapToInt(EnterpriseAccountRecordDO::getPoint).sum();
+        return pointCount;
     }
 
     @Override

+ 4 - 9
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/record/UserAccountRecordServiceImpl.java

@@ -7,7 +7,6 @@ import com.citu.framework.common.exception.util.ServiceExceptionUtil;
 import com.citu.framework.common.pojo.PageParam;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.module.menduner.system.controller.base.account.record.UserAccountRecordPageReqVO;
-
 import com.citu.module.menduner.system.dal.dataobject.record.UserAccountRecordDO;
 import com.citu.module.menduner.system.dal.dataobject.user.UserAccountDO;
 import com.citu.module.menduner.system.dal.mysql.record.UserAccountRecordMapper;
@@ -15,8 +14,6 @@ import com.citu.module.menduner.system.enums.MathOperationEnum;
 import com.citu.module.menduner.system.enums.account.AccountRecordTypeEnum;
 import com.citu.module.menduner.system.enums.account.BalanceBizTypeEnum;
 import com.citu.module.menduner.system.enums.account.PointBizTypeEnum;
-import com.citu.module.menduner.system.api.account.AccountRespDTO;
-import com.citu.module.menduner.system.api.account.UserAccountApi;
 import com.citu.module.menduner.system.service.user.UserAccountService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -25,9 +22,7 @@ import org.springframework.validation.annotation.Validated;
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
-import java.util.List;
 
-import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static com.citu.module.menduner.system.enums.ErrorCodeConstants.USER_BALANCE_NOT_ENOUGH;
 import static com.citu.module.menduner.system.enums.ErrorCodeConstants.USER_POINT_NOT_ENOUGH;
 
@@ -66,7 +61,7 @@ public class UserAccountRecordServiceImpl implements UserAccountRecordService {
             return;
         }
         // 1. 校验用户积分余额
-        UserAccountDO userAccountDO =  userAccountService
+        UserAccountDO userAccountDO = userAccountService
                 .createUserAccountIfAbsent(userId);
         Integer userPoint = ObjectUtil.defaultIfNull(userAccountDO.getPoint(), 0);
         int totalPoint = userPoint + point; // 用户变动后的积分
@@ -168,11 +163,11 @@ public class UserAccountRecordServiceImpl implements UserAccountRecordService {
 
     @Override
     public Integer getPointCount(Long userId, String url, LocalDateTime startDate, LocalDateTime endDate) {
-        List<UserAccountRecordDO> list = mapper.getUserPointList(userId, url, startDate, endDate);
-        if (ObjectUtil.isEmpty(list)) {
+        Integer pointCount = mapper.sumPoint(userId, url, startDate, endDate);
+        if (null == pointCount) {
             return 0;
         }
-        return list.stream().mapToInt(UserAccountRecordDO::getPoint).sum();
+        return pointCount;
     }
 
     @Override

+ 4 - 0
menduner/menduner-system-biz/src/main/resources/application.yaml

@@ -140,6 +140,10 @@ citu:
   tenant: # 多租户相关配置项
     enable: true
     ignore-urls:
+      - /rpc-api/menduner/system/user-account/create/point/record
+      - /rpc-api/menduner/system/user-account/create/balance/record
+      - /rpc-api/menduner/system/enterprise-account/create/point/record
+      - /rpc-api/menduner/system/enterprise-account/create/balance/record
     ignore-tables:
 
 debug: false

+ 8 - 0
menduner/menduner-system-biz/src/main/resources/i18n/messages_en_US.properties

@@ -189,6 +189,8 @@
 1_100_025_007=Educational requirements cannot be empty
 1_100_025_008=Insufficient account balance
 1_100_025_009=Insufficient account points
+1_100_025_010=Unable to modify the reward balance for published positions
+1_100_025_011=Cannot modify reward points for published positions
 # ========== 企业招聘者浏览 1_100_026_000 ==========
 1_100_026_001=Enterprise recruiter browsing does not exist
 # ========== 人才-企业关注订阅 1_100_027_000 ==========
@@ -244,3 +246,9 @@
 1_100_037_003=Commission ratio cannot be less than 0
 # ========== 用户账户 1_100_038_000 ==========
 1_100_038_001=User account does not exist
+# ========== 账户相关 1_100_039_000 ============
+1_100_039_001=User does not exist
+1_100_039_002=Insufficient user points balance
+1_100_039_003=Variable integral cannot be empty
+1_100_039_004=User balance insufficient
+1_100_039_005=Variable balance cannot be empty

+ 8 - 0
menduner/menduner-system-biz/src/main/resources/i18n/messages_zh_CN.properties

@@ -189,6 +189,8 @@
 1_100_025_007=学历要求不能为空
 1_100_025_008=账户余额不足
 1_100_025_009=账户积分不足
+1_100_025_010=不能修改已发布职位赏金余额
+1_100_025_011=不能修改已发布职位赏金积分
 # ========== 企业招聘者浏览 1_100_026_000 ==========
 1_100_026_001=企业招聘者浏览不存在
 # ========== 人才-企业关注订阅 1_100_027_000 ==========
@@ -247,3 +249,9 @@
 1_100_037_003=佣金比例不能小于0
 # ========== 用户账户 1_100_038_000 ==========
 1_100_038_001=用户账户不存在
+# ========== 账户记录相关 1_100_039_000 ============
+1_100_039_001=用户不存在
+1_100_039_002=用户积分余额不足
+1_100_039_003=变动积分不能为空
+1_100_039_004=用户余额不足
+1_100_039_005=变动余额不能为空