소스 검색

1、修改门墩儿交易订单模块
2、优化货币账户模块

rayson 11 달 전
부모
커밋
6fc4d56c5d
16개의 변경된 파일139개의 추가작업 그리고 55개의 파일을 삭제
  1. 8 4
      citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/controller/app/currency/AppPayCurrencyRechargeController.java
  2. 15 0
      citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/convert/currency/PayCurrencyRechargeConvert.java
  3. 32 8
      citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/service/currency/PayCurrencyRechargeServiceImpl.java
  4. 1 4
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/user/UserInfoReqDTO.java
  5. 2 0
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/ErrorCodeConstants.java
  6. 18 0
      menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/MdeUserTypeEnum.java
  7. 3 2
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/user/UserApiImpl.java
  8. 6 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderCreateReqVO.java
  9. 10 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderPageReqVO.java
  10. 6 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderRespVO.java
  11. 8 0
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/order/TradeOrderDO.java
  12. 16 3
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/order/TradeOrderMapper.java
  13. 9 32
      menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/order/TradeOrderServiceImpl.java
  14. 1 0
      menduner/menduner-system-biz/src/main/resources/i18n/messages_en_US.properties
  15. 1 0
      menduner/menduner-system-biz/src/main/resources/i18n/messages_zh_CN.properties
  16. 3 2
      menduner/menduner-system-biz/src/test/java/com/citu/module/menduner/system/service/userapi/UserApiTest.java

+ 8 - 4
citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/controller/app/currency/AppPayCurrencyRechargeController.java

@@ -5,6 +5,8 @@ import com.citu.framework.common.enums.UserTypeEnum;
 import com.citu.framework.common.pojo.CommonResult;
 import com.citu.framework.common.pojo.PageParam;
 import com.citu.framework.common.pojo.PageResult;
+import com.citu.module.pay.controller.admin.currency.vo.recharge.PayCurrencyRechargePageReqVO;
+import com.citu.module.pay.controller.admin.currency.vo.recharge.PayCurrencyRechargeRespVO;
 import com.citu.module.pay.controller.app.currency.vo.recharge.AppPayCurrencyRechargeCreateReqVO;
 import com.citu.module.pay.controller.app.currency.vo.recharge.AppPayCurrencyRechargeCreateRespVO;
 import com.citu.module.pay.controller.app.currency.vo.recharge.AppPayCurrencyRechargeRespVO;
@@ -16,6 +18,7 @@ import com.citu.module.pay.service.order.PayOrderService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
@@ -53,16 +56,17 @@ public class AppPayCurrencyRechargeController {
 
     @GetMapping("/page")
     @Operation(summary = "获得货币账户充值记录分页")
-    public CommonResult<PageResult<AppPayCurrencyRechargeRespVO>> getCurrencyRechargePage(@Valid PageParam pageReqVO) {
-        PageResult<PayCurrencyRechargeDO> pageResult = currencyRechargeService.getCurrencyRechargePackagePage(
-                getLoginUserDataId(Long.class), getLoginUserId(), UserTypeEnum.MEMBER.getValue(), pageReqVO, true);
+    public CommonResult<PageResult<AppPayCurrencyRechargeRespVO>> getCurrencyRechargePage(
+            @Valid PayCurrencyRechargePageReqVO pageReqVO) {
+        PageResult<PayCurrencyRechargeDO> pageResult = currencyRechargeService
+                .getCurrencyRechargePackagePage(pageReqVO);
         if (CollUtil.isEmpty(pageResult.getList())) {
             return success(PageResult.empty(pageResult.getTotal()));
         }
         // 拼接数据
         List<PayOrderDO> payOrderList = payOrderService.getOrderList(
                 convertList(pageResult.getList(), PayCurrencyRechargeDO::getPayOrderId));
-        return success(PayCurrencyRechargeConvert.INSTANCE.convertPage(pageResult, payOrderList));
+        return success(PayCurrencyRechargeConvert.INSTANCE.convertPage3(pageResult, payOrderList));
     }
 
 }

+ 15 - 0
citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/convert/currency/PayCurrencyRechargeConvert.java

@@ -58,4 +58,19 @@ public interface PayCurrencyRechargeConvert {
         return voPageResult;
     }
 
+    default PageResult<AppPayCurrencyRechargeRespVO> convertPage3(PageResult<PayCurrencyRechargeDO> pageResult,
+                                                               List<PayOrderDO> payOrderList) {
+        PageResult<AppPayCurrencyRechargeRespVO> voPageResult = BeanUtils.toBean(pageResult, AppPayCurrencyRechargeRespVO.class);
+        Map<Long, PayOrderDO> payOrderMap = CollectionUtils.convertMap(payOrderList, PayOrderDO::getId);
+        voPageResult.getList().forEach(recharge -> {
+            if (StringUtils.hasText(recharge.getPayChannelCode())) {
+                recharge.setPayChannelName(DictFrameworkUtils.getDictDataLabel(
+                        DictTypeConstants.CHANNEL_CODE, recharge.getPayChannelCode()));
+            }
+            MapUtils.findAndThen(payOrderMap, recharge.getPayOrderId(),
+                    order -> recharge.setPayOrderChannelOrderNo(order.getChannelOrderNo()));
+        });
+        return voPageResult;
+    }
+
 }

+ 32 - 8
citu-module-pay/citu-module-pay-biz/src/main/java/com/citu/module/pay/service/currency/PayCurrencyRechargeServiceImpl.java

@@ -58,7 +58,9 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
     private static final Long WALLET_PAY_APP_ID = 11L;
 
     private static final String RECHARGE_ORDER_SUBJECT = "账户充值";
-    /** 比例倍数 1:10 **/
+    /**
+     * 比例倍数 1:10
+     **/
     private static final Integer RATIO_MULTIPLE = 10;
     @Resource
     public SocialClientApi socialClientApi;
@@ -73,6 +75,25 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
     @Resource
     private PayCurrencyRechargePackageService payCurrencyRechargePackageService;
 
+    /**
+     * 将金额转成正确比例 1:10
+     *
+     * @return Long
+     **/
+    public static Long convertPriceRatio(Long price) {
+        return (price / 100) * RATIO_MULTIPLE;
+    }
+
+    /**
+     * 逆转转换比例,将转换后的金额恢复到原始金额
+     *
+     * @param convertedPrice 转换后的金额
+     * @return Long 原始金额
+     */
+    public static Long revertConvertPriceRatio(Long convertedPrice) {
+        return (convertedPrice / RATIO_MULTIPLE) * 100;
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public PayCurrencyRechargeDO createCurrencyRecharge(Long dataId, Long userId, Integer userType, String userIp,
@@ -81,7 +102,8 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         long payPrice;
         long bonusPrice = 0;
         if (Objects.nonNull(reqVO.getPackageId())) {
-            PayCurrencyRechargePackageDO rechargePackage = payCurrencyRechargePackageService.validCurrencyRechargePackage(reqVO.getPackageId());
+            PayCurrencyRechargePackageDO rechargePackage = payCurrencyRechargePackageService
+                    .validCurrencyRechargePackage(reqVO.getPackageId());
             payPrice = rechargePackage.getPayPrice();
             bonusPrice = rechargePackage.getBonusPrice();
         } else {
@@ -89,7 +111,8 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         }
         // 1.2 插入充值记录
         PayCurrencyDO currency = payCurrencyService.getOrCreateCurrency(dataId, userId, userType);
-        PayCurrencyRechargeDO recharge = PayCurrencyRechargeConvert.INSTANCE.convert(currency.getId(), payPrice, bonusPrice, reqVO.getPackageId());
+        PayCurrencyRechargeDO recharge = PayCurrencyRechargeConvert.INSTANCE
+                .convert(currency.getId(), payPrice, bonusPrice, reqVO.getPackageId());
         currencyRechargeMapper.insert(recharge);
 
         // 2.1 创建支付单
@@ -141,7 +164,7 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         // TODO @jason:这样的话,未来提现会不会把充值的,也提现走哈。类似先充 100,送 110;然后提现 110;
         // TODO 需要货币账户中加个可提现余额
         payCurrencyService.addCurrencyBalance(currencyRecharge.getCurrencyId(), String.valueOf(id),
-                PayCurrencyBizTypeEnum.RECHARGE, currencyRecharge.getTotalPrice());
+                PayCurrencyBizTypeEnum.RECHARGE, convertPriceRatio(currencyRecharge.getTotalPrice()));
 
         // 4. 发送订阅消息
         getSelf().sendCurrencyRechargerPaidMessage(payOrderId, currencyRecharge);
@@ -175,7 +198,7 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         PayCurrencyDO currency = validateCurrencyRechargeCanRefund(currencyRecharge);
 
         // 2. 冻结退款的余额,暂时只处理赠送的余额也全部退回
-        payCurrencyService.freezePrice(currency.getId(), currencyRecharge.getTotalPrice());
+        payCurrencyService.freezePrice(currency.getId(), convertPriceRatio(currencyRecharge.getTotalPrice()));
 
         // 3. 创建退款单
         String currencyRechargeId = String.valueOf(id);
@@ -209,7 +232,7 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         if (PayRefundStatusEnum.isSuccess(payRefund.getStatus())) {
             // 2.1 更新货币账户余额
             payCurrencyService.reduceCurrencyBalance(currencyRecharge.getCurrencyId(), id,
-                    PayCurrencyBizTypeEnum.RECHARGE_REFUND, currencyRecharge.getTotalPrice());
+                    PayCurrencyBizTypeEnum.RECHARGE_REFUND, convertPriceRatio(currencyRecharge.getTotalPrice()));
 
             updateObj.setRefundStatus(SUCCESS.getStatus()).setRefundTime(payRefund.getSuccessTime())
                     .setRefundTotalPrice(currencyRecharge.getTotalPrice()).setRefundPayPrice(currencyRecharge.getPayPrice())
@@ -218,7 +241,8 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         // 退款失败
         if (PayRefundStatusRespEnum.isFailure(payRefund.getStatus())) {
             // 2.2 解冻余额
-            payCurrencyService.unfreezePrice(currencyRecharge.getCurrencyId(), currencyRecharge.getTotalPrice());
+            payCurrencyService.unfreezePrice(currencyRecharge.getCurrencyId(),
+                    convertPriceRatio(currencyRecharge.getTotalPrice()));
 
             updateObj.setRefundStatus(FAILURE.getStatus());
         }
@@ -267,7 +291,7 @@ public class PayCurrencyRechargeServiceImpl implements PayCurrencyRechargeServic
         // 校验货币账户余额是否足够
         PayCurrencyDO currency = payCurrencyService.getCurrency(currencyRecharge.getCurrencyId());
         Assert.notNull(currency, "用户货币账户({}) 不存在", currency.getId());
-        if (currency.getBalance() < currencyRecharge.getTotalPrice()) {
+        if (revertConvertPriceRatio(currency.getBalance()) < currencyRecharge.getTotalPrice()) {
             throw exception(WALLET_RECHARGE_REFUND_BALANCE_NOT_ENOUGH);
         }
         // TODO @芋艿:需要考虑下,赠送的金额,会不会导致提现超过;

+ 1 - 4
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/user/UserInfoReqDTO.java

@@ -6,11 +6,8 @@ import lombok.Data;
 @Data
 @Schema(description = "用户信息 REQ DTO VO")
 public class UserInfoReqDTO {
-    // 常量 0 求职端用户 | 1 企业端用户
-    public static final int USER_TYPE_USER = 0;
-    public static final int USER_TYPE_ENTERPRISE = 1;
 
-    @Schema(description = "用户类型(0 求职端用户 | 1 企业端用户)", example = "2")
+    @Schema(description = "用户类型(MdeUserTypeEnum)", example = "2")
     private int userType;
 
     @Schema(description = "企业id,userType = USER_TYPE_USER 不填", example = "2")

+ 2 - 0
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/ErrorCodeConstants.java

@@ -25,6 +25,8 @@ public interface ErrorCodeConstants {
     ErrorCode MDE_COMMON_ID_NOT_NULL = new ErrorCode(1_099_000_005, "id不能为空");
     ErrorCode MDE_COMMON_USER_ID_NOT_NULL = new ErrorCode(1_099_000_006, "用户id不能为空");
     ErrorCode MDE_COMMON_ENTERPRISE_ID_NOT_NULL = new ErrorCode(1_099_000_007, "企业id不能为空");
+    ErrorCode MDE_COMMON_USER_TYPE_NOT_NULL = new ErrorCode(1_099_000_008, "用户类型不能为空");
+
 
 
     // ========== 人员信息-个人档案 1_100_001_000 ==========

+ 18 - 0
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/enums/MdeUserTypeEnum.java

@@ -0,0 +1,18 @@
+package com.citu.module.menduner.system.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * menduner 用户类型 0求职端用户 | 企业端用户
+ **/
+@Getter
+@AllArgsConstructor
+public enum MdeUserTypeEnum {
+    USER("0", "求职端用户"),
+    ENTERPRISE_USER("1", "企业端用户")
+    ;
+
+    private final String type;
+    private final String name;
+}

+ 3 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/api/user/UserApiImpl.java

@@ -4,6 +4,7 @@ import com.citu.framework.common.pojo.CommonResult;
 import com.citu.module.menduner.system.dal.dataobject.person.PersonInfoDO;
 import com.citu.module.menduner.system.dal.mysql.enterprise.EnterpriseUserBindMapper;
 import com.citu.module.menduner.system.dal.mysql.person.PersonInfoMapper;
+import com.citu.module.menduner.system.enums.MdeUserTypeEnum;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -29,7 +30,7 @@ public class UserApiImpl implements UserApi {
         for (UserInfoReqDTO dto : req) {
             UserInfoRespDTO respDTO = new UserInfoRespDTO();
             respDTO.setUserId(dto.getUserId());
-            if (UserInfoReqDTO.USER_TYPE_USER == dto.getUserType()) {
+            if (Integer.parseInt(MdeUserTypeEnum.USER.getType()) == dto.getUserType()) {
                 // 平台用户
                 PersonInfoDO personInfo = personMapper.selectOne(PersonInfoDO::getUserId, dto.getUserId());
                 if (null != personInfo) {
@@ -39,7 +40,7 @@ public class UserApiImpl implements UserApi {
                 }
 
             }
-            if (UserInfoReqDTO.USER_TYPE_ENTERPRISE == dto.getUserType()) {
+            if (Integer.parseInt(MdeUserTypeEnum.ENTERPRISE_USER.getType()) == dto.getUserType()) {
                 // 企业用户
                 UserInfoRespDTO info = bindMapper.selectUserInfo(dto.getEnterpriseId(), dto.getUserId());
                 if (null != info) {

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderCreateReqVO.java

@@ -13,6 +13,12 @@ import java.math.BigDecimal;
 @Data
 public class TradeOrderCreateReqVO {
 
+    @NotNull(message = "{1_099_000_008}")
+    @Schema(description = "用户类型", example = "1")
+    private String userType;
+
+    @Schema(description = "企业编号", example = "1")
+    private Long enterpriseId;
 
     @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
     @NotNull(message = "{1_099_000_006}")

+ 10 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderPageReqVO.java

@@ -16,6 +16,12 @@ public class TradeOrderPageReqVO extends PageParam {
     @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
     private Long id;
 
+    @Schema(description = "用户类型", example = "1")
+    private String userType;
+
+    @Schema(description = "企业编号", example = "1")
+    private Long enterpriseId;
+
     @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
     private Long userId;
 
@@ -50,4 +56,8 @@ public class TradeOrderPageReqVO extends PageParam {
     @Schema(description = "支付渠道")
     private String payChannelCode;
 
+    // ========== 拓展 ==========
+    @Schema(description = "是否退款", requiredMode = Schema.RequiredMode.REQUIRED)
+    private Boolean isRefund;
+
 }

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/order/TradeOrderRespVO.java

@@ -16,6 +16,12 @@ public class TradeOrderRespVO {
     @Schema(description = "订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
     private Long id;
 
+    @Schema(description = "用户类型", example = "1")
+    private String userType;
+
+    @Schema(description = "企业编号", example = "1")
+    private Long enterpriseId;
+
     @Schema(description = "用户编号")
     private Long userId;
 

+ 8 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/dataobject/order/TradeOrderDO.java

@@ -34,6 +34,14 @@ public class TradeOrderDO extends BaseDO {
      */
     @TableId
     private Long id;
+    /**
+     * 用户类型
+     */
+    private String userType;
+    /**
+     * 企业编号
+     */
+    private Long enterpriseId;
     /**
      * 用户编号
      */

+ 16 - 3
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/order/TradeOrderMapper.java

@@ -11,6 +11,8 @@ import com.citu.module.menduner.system.controller.app.recruit.order.vo.AppRecrui
 import com.citu.module.menduner.system.controller.app.recruit.order.vo.AppRecruitTradeOrderRespVO;
 import com.citu.module.menduner.system.controller.base.order.TradeOrderPageReqVO;
 import com.citu.module.menduner.system.dal.dataobject.order.TradeOrderDO;
+import com.citu.module.menduner.system.enums.MdeUserTypeEnum;
+import com.citu.module.menduner.system.enums.order.TradeOrderRefundStatusEnum;
 import com.citu.module.menduner.system.enums.order.TradeOrderStatusEnum;
 import org.apache.ibatis.annotations.Mapper;
 
@@ -27,6 +29,9 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
 
     default PageResult<TradeOrderDO> selectPage(TradeOrderPageReqVO reqVO) {
         return selectPage(reqVO, new LambdaQueryWrapperX<TradeOrderDO>()
+                .eqIfPresent(TradeOrderDO::getId, reqVO.getId())
+                .eqIfPresent(TradeOrderDO::getUserType, reqVO.getUserType())
+                .eqIfPresent(TradeOrderDO::getEnterpriseId, reqVO.getEnterpriseId())
                 .eqIfPresent(TradeOrderDO::getUserId, reqVO.getUserId())
                 .eqIfPresent(TradeOrderDO::getType, reqVO.getType())
                 .eqIfPresent(TradeOrderDO::getTerminal, reqVO.getTerminal())
@@ -38,6 +43,8 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
                 .eqIfPresent(TradeOrderDO::getPayOrderId, reqVO.getPayOrderId())
                 .eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode())
                 .betweenIfPresent(TradeOrderDO::getPayTime, reqVO.getPayTime())
+                .ne(null != reqVO.getIsRefund() && reqVO.getIsRefund(),
+                        TradeOrderDO::getRefundStatus, TradeOrderRefundStatusEnum.NONE.getStatus())
                 .orderByDesc(TradeOrderDO::getCreateTime));
     }
 
@@ -50,10 +57,11 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
     /**
      * 求职端分页查询
      */
-    default PageResult<AppTradeOrderRespVO> page(Long userId,AppTradeOrderPageReqVO reqVO) {
+    default PageResult<AppTradeOrderRespVO> page(Long userId, AppTradeOrderPageReqVO reqVO) {
         MPJLambdaWrapperX<TradeOrderDO> query = new MPJLambdaWrapperX<>();
         query.selectAsClass(TradeOrderDO.class, AppTradeOrderRespVO.class);
         query.eq(TradeOrderDO::getUserId, userId);
+        query.eq(TradeOrderDO::getUserType, MdeUserTypeEnum.USER.getType());
         query.likeIfPresent(TradeOrderDO::getSpuName, reqVO.getSpuName())
                 .eqIfPresent(TradeOrderDO::getPayStatus, reqVO.getPayStatus())
                 .eqIfPresent(TradeOrderDO::getPayOrderId, reqVO.getPayOrderId())
@@ -80,14 +88,19 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
                 .eqIfPresent(TradeOrderDO::getPayOrderId, reqVO.getPayOrderId())
                 .eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode())
                 .betweenIfPresent(TradeOrderDO::getPayTime, reqVO.getPayTime());
+        query.ne(null != reqVO.getIsRefund() && reqVO.getIsRefund(),
+                TradeOrderDO::getRefundStatus, TradeOrderRefundStatusEnum.NONE.getStatus());
         query.orderByDesc(TradeOrderDO::getCreateTime);
         return selectJoinPage(reqVO, AppRecruitTradeOrderRespVO.class, query);
     }
 
 
-    /** 获取待支付的订单 */
-    default TradeOrderDO getOrderByUnpaid(Long userId,String type,Long spu_id) {
+    /**
+     * 获取待支付的订单
+     */
+    default TradeOrderDO getOrderByUnpaid(Long enterpriseId, Long userId, String type, Long spu_id) {
         return selectOne(new LambdaQueryWrapperX<TradeOrderDO>()
+                .eqIfPresent(TradeOrderDO::getEnterpriseId, enterpriseId)
                 .eq(TradeOrderDO::getUserId, userId)
                 .eq(TradeOrderDO::getType, type)
                 .eq(TradeOrderDO::getSpuId, spu_id)

+ 9 - 32
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/order/TradeOrderServiceImpl.java

@@ -11,6 +11,7 @@ import com.citu.module.menduner.system.controller.base.order.TradeOrderCreateReq
 import com.citu.module.menduner.system.controller.base.order.TradeOrderPageReqVO;
 import com.citu.module.menduner.system.dal.dataobject.order.TradeOrderDO;
 import com.citu.module.menduner.system.dal.mysql.order.TradeOrderMapper;
+import com.citu.module.menduner.system.enums.MdeUserTypeEnum;
 import com.citu.module.menduner.system.enums.order.TradeOrderCancelTypeEnum;
 import com.citu.module.menduner.system.enums.order.TradeOrderRefundStatusEnum;
 import com.citu.module.menduner.system.enums.order.TradeOrderStatusEnum;
@@ -31,8 +32,6 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-import java.math.BigDecimal;
-import java.math.RoundingMode;
 import java.time.Duration;
 import java.time.LocalDateTime;
 import java.util.List;
@@ -87,6 +86,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
         // 1.1 获得商品
         // 1.2 插入 订单
         TradeOrderDO tradeOrderDO = new TradeOrderDO().setUserId(createReqVO.getUserId())
+                .setUserType(createReqVO.getUserType()).setEnterpriseId(createReqVO.getEnterpriseId())
                 .setSpuId(createReqVO.getSpuId()).setSpuName(createReqVO.getSpuName())
                 .setPrice(createReqVO.getPrice()).setPayStatus(false).setRefundPrice(0L);
         // 初始化默认
@@ -328,32 +328,6 @@ public class TradeOrderServiceImpl implements TradeOrderService {
         return payRefund;
     }
 
-
-    /**
-     * 转换金额类型
-     *
-     * @param price 金额
-     **/
-    public Integer convertPrice(BigDecimal price) {
-        return price.multiply(new BigDecimal(100)).intValue();
-    }
-
-    /**
-     * 转换金额类型
-     *
-     * @param price 金额
-     **/
-    public BigDecimal convertPrice(Integer price) {
-        // 将Integer转换为BigDecimal
-        BigDecimal bigDecimalValue = new BigDecimal(price);
-
-        // 创建一个表示100的BigDecimal对象
-        BigDecimal hundred = new BigDecimal(100);
-        // 使用divide方法进行除法
-        // 设置小数位数为2,并使用RoundingMode.HALF_UP作为舍入模式
-        return bigDecimalValue.divide(hundred, 2, RoundingMode.HALF_UP);
-    }
-
     @Override
     public PageResult<AppTradeOrderRespVO> page(AppTradeOrderPageReqVO reqVO) {
         return tradeOrderMapper.page(LoginUserContext.getUserId(), reqVO);
@@ -361,16 +335,19 @@ public class TradeOrderServiceImpl implements TradeOrderService {
 
     @Override
     public PageResult<AppRecruitTradeOrderRespVO> page(AppRecruitTradeOrderPageReqVO reqVO) {
+        reqVO.setUserType(MdeUserTypeEnum.ENTERPRISE_USER.getType());
+        reqVO.setUserId(LoginUserContext.getEnterpriseId());
         return tradeOrderMapper.page(reqVO);
     }
 
     @Override
     public Long create(AppRecruitTradeOrderCreateReqVO reqVO) {
-        Long userId = LoginUserContext.getUserId();
         // 获取待支付的订单
         TradeOrderTypeEnum type = TradeOrderTypeEnum.getByType(reqVO.getType());
         TradeOrderCreateReqVO dto = new TradeOrderCreateReqVO();
-        dto.setUserId(userId);
+        dto.setUserType(MdeUserTypeEnum.ENTERPRISE_USER.getType());
+        dto.setEnterpriseId(LoginUserContext.getEnterpriseId());
+        dto.setUserId(LoginUserContext.getUserId());
         dto.setType(reqVO.getType());
         dto.setSpuId(reqVO.getSpuId());
         dto.setSpuName(type.getName() + ": " + reqVO.getSpuName());
@@ -381,8 +358,8 @@ public class TradeOrderServiceImpl implements TradeOrderService {
     @Override
     public AppRecruitTradeOrderGetRespVO getOrderByUnpaid(AppRecruitTradeOrderGetReqVO reqVO) {
 
-        TradeOrderDO order = tradeOrderMapper.getOrderByUnpaid(LoginUserContext.getUserId(),
-                reqVO.getType(), reqVO.getSpuId());
+        TradeOrderDO order = tradeOrderMapper.getOrderByUnpaid(LoginUserContext.getEnterpriseId(),
+                LoginUserContext.getUserId(), reqVO.getType(), reqVO.getSpuId());
         if (null == order) {
             return null;
         }

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

@@ -25,6 +25,7 @@
 1_099_000_005=id cannot be empty
 1_099_000_006=User ID cannot be empty
 1_099_000_007=Enterprise ID cannot be empty
+1_099_000_008=User Type cannot be empty
 # ========== 人才信息-人才档案 1_100_001_000 ==========
 1_100_001_001=Personal Profile Does Not Exist
 1_100_001_002=Personal advantage cannot be empty

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

@@ -25,6 +25,7 @@
 1_099_000_005=id不能为空
 1_099_000_006=用户id不能为空
 1_099_000_007=企业id不能为空
+1_099_000_008=用户类型不能为空
 # ========== 人才信息-人才档案 1_100_001_000 ==========
 1_100_001_001=人才档案不存在
 1_100_001_002=人才优势不能为空

+ 3 - 2
menduner/menduner-system-biz/src/test/java/com/citu/module/menduner/system/service/userapi/UserApiTest.java

@@ -5,6 +5,7 @@ import com.citu.framework.test.core.ut.BaseMockitoUnitTest;
 import com.citu.module.menduner.system.api.user.UserApi;
 import com.citu.module.menduner.system.api.user.UserInfoReqDTO;
 import com.citu.module.menduner.system.api.user.UserInfoRespDTO;
+import com.citu.module.menduner.system.enums.MdeUserTypeEnum;
 import org.mockito.Mock;
 
 import java.util.ArrayList;
@@ -23,14 +24,14 @@ public class UserApiTest extends BaseMockitoUnitTest {
         List<UserInfoReqDTO> list = new ArrayList<>();
         UserInfoReqDTO userInfoReqDTO1 = new UserInfoReqDTO();
         userInfoReqDTO1.setUserId(1L);
-        userInfoReqDTO1.setUserType(UserInfoReqDTO.USER_TYPE_USER);
+        userInfoReqDTO1.setUserType(Integer.parseInt(MdeUserTypeEnum.USER.getType()));
 
         list.add(userInfoReqDTO1);
 
         UserInfoReqDTO userInfoReqDTO2 = new UserInfoReqDTO();
         userInfoReqDTO2.setUserId(1L);
         userInfoReqDTO2.setEnterpriseId(1L);
-        userInfoReqDTO2.setUserType(UserInfoReqDTO.USER_TYPE_ENTERPRISE);
+        userInfoReqDTO2.setUserType(Integer.parseInt(MdeUserTypeEnum.ENTERPRISE_USER.getType()));
 
         list.add(userInfoReqDTO2);