From 1e2ad095b54b01edf53675884b7d7ccd372c552a Mon Sep 17 00:00:00 2001 From: gaowdong Date: Mon, 21 Apr 2025 14:04:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=8F=96=E6=AC=BE=20?= =?UTF-8?q?=E5=8F=8A=E8=AE=B0=E5=BD=95=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../account/controller/AccInfoController.java | 38 ++++++++++++++++++ .../controller/AccSubsidyController.java | 4 +- ...java => AccWalletOperationQueryParam.java} | 6 +-- .../domain/param/AccWithdrawParam.java | 27 +++++++++++++ ...ionListVO.java => AccOperationListVO.java} | 12 +++--- .../core/account/mapper/AccTradeMapper.java | 8 ++-- .../core/account/service/AccSubService.java | 5 +-- .../core/account/service/IAccInfoService.java | 5 ++- .../account/service/IAccTradeService.java | 6 +-- .../service/impl/AccInfoServiceImpl.java | 40 ++++++++++++++++--- .../service/impl/AccSubServiceImpl.java | 8 ++-- .../service/impl/AccTradeServiceImpl.java | 8 ++-- .../core/pay/constants/TradeTypeEnum.java | 25 ------------ .../mapper/account/AccTradeMapper.xml | 6 ++- 14 files changed, 135 insertions(+), 63 deletions(-) rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/{AccSubOperationQueryParam.java => AccWalletOperationQueryParam.java} (87%) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWithdrawParam.java rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/{AccSubOperationListVO.java => AccOperationListVO.java} (84%) delete mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/constants/TradeTypeEnum.java diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccInfoController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccInfoController.java index 990908d..2343839 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccInfoController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccInfoController.java @@ -1,15 +1,19 @@ package com.bonus.canteen.core.account.controller; import java.util.List; +import java.util.Objects; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; +import com.bonus.canteen.core.account.constants.AccTradeTypeEnum; import com.bonus.canteen.core.account.domain.AccInfo; import com.bonus.canteen.core.account.domain.param.*; import com.bonus.canteen.core.account.domain.vo.AccInfoDetailsVO; import com.bonus.canteen.core.account.service.AccOperationHistoryService; +import com.bonus.common.core.exception.ServiceException; import com.bonus.common.log.enums.OperaType; +import com.bonus.common.security.utils.SecurityUtils; import com.bonus.system.api.domain.SysUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -194,10 +198,44 @@ public class AccInfoController extends BaseController { return AjaxResult.success(); } + @ApiOperation("单人取钱") + @PostMapping("/withdraw") + public AjaxResult individualAccWithdraw(@RequestBody @Valid AccWithdrawParam param) { + this.accInfoService.individualAccWithdraw(param); + return AjaxResult.success(); + } + @ApiOperation("离职清空余额(个人钱包和补贴钱包)") @PostMapping({"/leave/clear"}) public AjaxResult individualAccLeaveClear(@RequestBody @Valid AccLeaveClearParam param) { this.accInfoService.individualAccLeaveClear(param); return AjaxResult.success(); } + + @ApiOperation("个人钱包操作记录") + @PostMapping({"/wallet/history"}) + public TableDataInfo queryAccPersonalWalOperationAddList(@RequestBody AccWalletOperationQueryParam request) { + if(Objects.isNull(request)) { + throw new ServiceException("请求参数为空"); + } + if(Objects.isNull(request.getTradeType())) { + throw new ServiceException("交易类型为空"); + } + startPage(); + return getDataTable(accInfoService.queryAccPersonalWalOperationAddList(request)); + } + + @ApiOperation("手机端个人钱包操作记录") + @PostMapping({"/mobile/wallet/history"}) + public TableDataInfo queryAccPersonalWalOperationAddListForMobile(@RequestBody AccWalletOperationQueryParam request) { + if(Objects.isNull(request)) { + throw new ServiceException("请求参数为空"); + } + if(Objects.isNull(request.getTradeType())) { + throw new ServiceException("交易类型为空"); + } + startPage(); + request.setUserId(SecurityUtils.getUserId()); + return getDataTable(accInfoService.queryAccPersonalWalOperationAddList(request)); + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccSubsidyController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccSubsidyController.java index fcfa0b3..a7b8acc 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccSubsidyController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/controller/AccSubsidyController.java @@ -65,7 +65,7 @@ public class AccSubsidyController extends BaseController { @ApiOperation("补贴记录") @PostMapping({"/add/history"}) - public TableDataInfo queryAccSubOperationAddList(@RequestBody AccSubOperationQueryParam request) { + public TableDataInfo queryAccSubOperationAddList(@RequestBody AccWalletOperationQueryParam request) { startPage(); request.setTradeType(AccTradeTypeEnum.SUBSIDY.getKey()); return getDataTable(accSubService.queryAccSubOperationList(request)); @@ -73,7 +73,7 @@ public class AccSubsidyController extends BaseController { @ApiOperation("补贴清空记录") @PostMapping({"/clear/history"}) - public TableDataInfo queryAccSubOperationClearList(@RequestBody AccSubOperationQueryParam request) { + public TableDataInfo queryAccSubOperationClearList(@RequestBody AccWalletOperationQueryParam request) { startPage(); request.setTradeType(AccTradeTypeEnum.CLEAR.getKey()); return getDataTable(accSubService.queryAccSubOperationList(request)); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccSubOperationQueryParam.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWalletOperationQueryParam.java similarity index 87% rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccSubOperationQueryParam.java rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWalletOperationQueryParam.java index 01d202f..0e26c2b 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccSubOperationQueryParam.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWalletOperationQueryParam.java @@ -10,7 +10,7 @@ import java.time.LocalDateTime; import java.util.List; @Data -public class AccSubOperationQueryParam extends BaseEntity { +public class AccWalletOperationQueryParam extends BaseEntity { @ApiModelProperty("查询组织id集合") private List deptIds; @ApiModelProperty("开始时间") @@ -20,12 +20,12 @@ public class AccSubOperationQueryParam extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime endDateTime; @ApiModelProperty("交易类型") - @JsonIgnore private Integer tradeType; private String searchValue; private String createBy; + private Long userId; - public AccSubOperationQueryParam() { + public AccWalletOperationQueryParam() { this.endDateTime = LocalDateTime.now().plusDays(7); this.startDateTime = LocalDateTime.now().minusDays(7); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWithdrawParam.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWithdrawParam.java new file mode 100644 index 0000000..690b431 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccWithdrawParam.java @@ -0,0 +1,27 @@ +package com.bonus.canteen.core.account.domain.param; + +import com.bonus.common.core.web.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; + +@Data +public class AccWithdrawParam extends BaseEntity { + @ApiModelProperty(value = "用户编号") + private @NotNull( + message = "用户编号不能为空" + ) Long userId; + @ApiModelProperty( + value = "提现金额/分" + ) + private @NotNull( + message = "提现金额不能为空" + ) @Min( + value = 0L, + message = "提现不能小于0" + ) BigDecimal amount; +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccSubOperationListVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccOperationListVO.java similarity index 84% rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccSubOperationListVO.java rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccOperationListVO.java index 7eb07d8..35ed53e 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccSubOperationListVO.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccOperationListVO.java @@ -10,7 +10,7 @@ import java.math.BigDecimal; import java.time.LocalDateTime; @Data -public class AccSubOperationListVO { +public class AccOperationListVO { @ApiModelProperty("补贴时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime tradeTime; @@ -26,17 +26,17 @@ public class AccSubOperationListVO { private Integer userType; @ApiModelProperty("用户类别(展示)") private String userTypeName; - @ApiModelProperty("补贴金额") + @ApiModelProperty("金额") private BigDecimal amount; - @ApiModelProperty("补贴后补贴钱包余额") + @ApiModelProperty("钱包余额") private BigDecimal walletBal; - @ApiModelProperty("补贴记录交易状态") + @ApiModelProperty("交易状态") private Integer tradeState; - @ApiModelProperty("充值结果名称") + @ApiModelProperty("结果名称") private String tradeStateName; @ApiModelProperty("操作员") private String createBy; - @ApiModelProperty("补贴订单号") + @ApiModelProperty("交易单号") private Long tradeId; public String getTradeStateName() { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java index c3a2696..9b67a74 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java @@ -3,8 +3,8 @@ package com.bonus.canteen.core.account.mapper; import java.util.List; import com.bonus.canteen.core.account.domain.AccTrade; import com.bonus.canteen.core.account.domain.bo.TradeAndWallerInfo; -import com.bonus.canteen.core.account.domain.param.AccSubOperationQueryParam; -import com.bonus.canteen.core.account.domain.vo.AccSubOperationListVO; +import com.bonus.canteen.core.account.domain.param.AccWalletOperationQueryParam; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.canteen.core.account.domain.vo.AccTradeVo; import org.apache.ibatis.annotations.Param; @@ -69,8 +69,8 @@ public interface AccTradeMapper { */ public int deleteAccTradeByTradeIds(Long[] tradeIds); - List queryAccSubOperationList(@Param("param") AccSubOperationQueryParam param, - @Param("encryptedSearchValue") String encryptedSearchValue); + List queryAccOperationList(@Param("param") AccWalletOperationQueryParam param, + @Param("encryptedSearchValue") String encryptedSearchValue); List queryTradeAndWallerInfoByOrderNo(@Param("orderNo") String orderNo, @Param("accTradeType") Integer accTradeType); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/AccSubService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/AccSubService.java index 088179c..9f8f1b4 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/AccSubService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/AccSubService.java @@ -2,9 +2,8 @@ package com.bonus.canteen.core.account.service; import com.bonus.canteen.core.account.domain.param.*; import com.bonus.canteen.core.account.domain.vo.AccBatchOperationWalletPreCheckVO; -import com.bonus.canteen.core.account.domain.vo.AccSubOperationListVO; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; -import java.math.BigDecimal; import java.util.List; public interface AccSubService { @@ -20,6 +19,6 @@ public interface AccSubService { AccBatchOperationWalletPreCheckVO batchOperationWalletClearCheck(AccSubsidyBatchClearParam param); - List queryAccSubOperationList(AccSubOperationQueryParam param); + List queryAccSubOperationList(AccWalletOperationQueryParam param); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccInfoService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccInfoService.java index 942bfa8..afe6822 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccInfoService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccInfoService.java @@ -2,13 +2,12 @@ package com.bonus.canteen.core.account.service; import java.util.List; import com.bonus.canteen.core.account.domain.AccInfo; -import com.bonus.canteen.core.account.domain.AccInfoVo; import com.bonus.canteen.core.account.domain.WalletBalanceVO; import com.bonus.canteen.core.account.domain.param.*; import com.bonus.canteen.core.account.domain.vo.AccInfoDetailsVO; import com.bonus.canteen.core.account.domain.vo.AccInfoInvalidSumVO; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.system.api.domain.SysUser; -import org.apache.ibatis.annotations.Param; /** * 账户资料Service接口 @@ -73,5 +72,7 @@ public interface IAccInfoService { AccInfoDetailsVO queryAccInfoByUserId(Long userId); void checkAccStatus(AccInfoDetailsVO accInfoVO); void individualAccRecharge(AccRechargeParam param); + void individualAccWithdraw(AccWithdrawParam param); void individualAccLeaveClear(AccLeaveClearParam param); + List queryAccPersonalWalOperationAddList(AccWalletOperationQueryParam param); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java index cb36d1c..3cc5c39 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java @@ -3,8 +3,8 @@ package com.bonus.canteen.core.account.service; import com.bonus.canteen.core.account.constants.AccTradeTypeEnum; import com.bonus.canteen.core.account.domain.AccTrade; import com.bonus.canteen.core.account.domain.bo.TradeAndWallerInfo; -import com.bonus.canteen.core.account.domain.param.AccSubOperationQueryParam; -import com.bonus.canteen.core.account.domain.vo.AccSubOperationListVO; +import com.bonus.canteen.core.account.domain.param.AccWalletOperationQueryParam; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.canteen.core.account.domain.vo.AccTradeVo; import java.util.List; @@ -70,7 +70,7 @@ public interface IAccTradeService { */ public int deleteAccTradeByTradeId(Long tradeId); - List queryAccSubOperationList(AccSubOperationQueryParam param); + List queryAccOperationList(AccWalletOperationQueryParam param); List queryTradeAndWallerInfoByOrderNo(String orderNo, AccTradeTypeEnum accTradeTypeEnum); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccInfoServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccInfoServiceImpl.java index f7bc544..3ce1368 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccInfoServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccInfoServiceImpl.java @@ -13,15 +13,15 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.bonus.canteen.core.account.constants.AccTradeTypeEnum; import com.bonus.canteen.core.account.constants.AccWalletIdEnum; import com.bonus.canteen.core.account.constants.AccStatusEnum; -import com.bonus.canteen.core.account.constants.WalletBalanceOperationEnum; import com.bonus.canteen.core.account.domain.*; -import com.bonus.canteen.core.account.domain.bo.WalletBalanceOperation; import com.bonus.canteen.core.account.domain.param.*; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.canteen.core.account.domain.vo.AccWalletInfoVO; import com.bonus.canteen.core.account.domain.vo.AccInfoDetailsVO; import com.bonus.canteen.core.account.domain.vo.AccInfoInvalidSumVO; import com.bonus.canteen.core.account.mq.AccMqSender; import com.bonus.canteen.core.account.service.AccOperationHistoryService; +import com.bonus.canteen.core.account.service.IAccTradeService; import com.bonus.canteen.core.account.service.IAccWalletInfoService; import java.util.ArrayList; import java.util.List; @@ -30,7 +30,6 @@ import cn.hutool.json.JSONUtil; import com.bonus.canteen.core.account.domain.AccInfoVo; import com.bonus.canteen.core.account.domain.AccWalletInfo; import com.bonus.canteen.core.account.domain.WalletBalanceVO; -import com.bonus.canteen.core.account.utils.AccRedisUtils; import com.bonus.canteen.core.common.utils.MqUtil; import com.bonus.canteen.core.pay.constants.PayChannelEnum; import com.bonus.canteen.core.pay.constants.PayTypeEnum; @@ -46,7 +45,6 @@ import com.bonus.system.api.domain.SysUser; import com.bonus.common.houqin.utils.SM4EncryptUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.core.task.AsyncTaskExecutor; @@ -74,7 +72,8 @@ public class AccInfoServiceImpl implements IAccInfoService { @Autowired private AccOperationHistoryService accOperationHistoryService; @Autowired - private AccMqSender accMqSender; + @Lazy + IAccTradeService accTradeService; @Resource( name = "smartCanteenTaskExecutor" @@ -413,6 +412,29 @@ public class AccInfoServiceImpl implements IAccInfoService { log.error("发送MQ消息失败", e); } } + public void individualAccWithdraw(AccWithdrawParam param) { + AccInfoDetailsVO accInfoVO = queryAccInfoByUserId(param.getUserId()); + if(Objects.isNull(accInfoVO)) { + throw new ServiceException("账户不存在"); + } + checkAccStatus(accInfoVO); + WalletUpdateDTO walletUpdateDTO = new WalletUpdateDTO(); + walletUpdateDTO.setAmount(param.getAmount()); + walletUpdateDTO.setUserId(param.getUserId()); + walletUpdateDTO.setAccWalletIdEnum(AccWalletIdEnum.WALLET); + walletUpdateDTO.setAccTradeTypeEnum(AccTradeTypeEnum.WITHDRAW); + walletUpdateDTO.setPayChannelEnum(PayChannelEnum.GC_SYSTEM); + walletUpdateDTO.setPayTypeEnum(PayTypeEnum.MEAL_CARD); + accWalletInfoService.clearAccWalletBalance(walletUpdateDTO); + try { + DeviceMqPersonalUpdateMessageDTO bean = new DeviceMqPersonalUpdateMessageDTO().setUpdatePerson(Math.toIntExact(param.getUserId()),"update"); + String jsonString = JacksonUtil.writeValueAsString(bean); + log.info("账户变动发送mq内容:{}", jsonString); + MqUtil.pushToTenantAllDevice(bean, LeMqConstant.Topic.DEVICE_UPDATE_PERSONAL_CONFIG_V4); + } catch (Exception e) { + log.error("发送MQ消息失败", e); + } + } @Transactional( rollbackFor = {Exception.class} ) @@ -445,4 +467,12 @@ public class AccInfoServiceImpl implements IAccInfoService { } } } + @Override + public List queryAccPersonalWalOperationAddList(AccWalletOperationQueryParam param) { + List operationListVOList = accTradeService.queryAccOperationList(param); + operationListVOList = operationListVOList.stream().peek(operation -> { + operation.setPhoneNumber(SM4EncryptUtils.sm4Decrypt(operation.getPhoneNumber())); + }).collect(Collectors.toList()); + return operationListVOList ; + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccSubServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccSubServiceImpl.java index ffd1d4b..fd57a02 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccSubServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccSubServiceImpl.java @@ -3,15 +3,13 @@ package com.bonus.canteen.core.account.service.impl; import cn.hutool.core.collection.CollUtil; import com.bonus.canteen.core.account.constants.AccTradeTypeEnum; import com.bonus.canteen.core.account.constants.AccWalletIdEnum; -import com.bonus.canteen.core.account.constants.WalletBalanceOperationEnum; import com.bonus.canteen.core.account.domain.AccWalletInfo; import com.bonus.canteen.core.account.domain.WalletUpdateDTO; -import com.bonus.canteen.core.account.domain.bo.WalletBalanceOperation; import com.bonus.canteen.core.account.domain.param.*; import com.bonus.canteen.core.account.domain.vo.AccBatchOperationWallerErrorVO; import com.bonus.canteen.core.account.domain.vo.AccBatchOperationWalletPreCheckVO; import com.bonus.canteen.core.account.domain.vo.AccInfoDetailsVO; -import com.bonus.canteen.core.account.domain.vo.AccSubOperationListVO; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.canteen.core.account.service.AccSubService; import com.bonus.canteen.core.account.service.IAccInfoService; import com.bonus.canteen.core.account.service.IAccTradeService; @@ -368,8 +366,8 @@ public class AccSubServiceImpl implements AccSubService { return errVO; } @Override - public List queryAccSubOperationList(AccSubOperationQueryParam param) { - List operationListVOList = accTradeService.queryAccSubOperationList(param); + public List queryAccSubOperationList(AccWalletOperationQueryParam param) { + List operationListVOList = accTradeService.queryAccOperationList(param); operationListVOList = operationListVOList.stream().peek(operation -> { operation.setPhoneNumber(SM4EncryptUtils.sm4Decrypt(operation.getPhoneNumber())); }).collect(Collectors.toList()); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java index d508cde..5a8548a 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java @@ -3,8 +3,8 @@ package com.bonus.canteen.core.account.service.impl; import com.bonus.canteen.core.account.constants.AccTradeTypeEnum; import com.bonus.canteen.core.account.domain.AccTrade; import com.bonus.canteen.core.account.domain.bo.TradeAndWallerInfo; -import com.bonus.canteen.core.account.domain.param.AccSubOperationQueryParam; -import com.bonus.canteen.core.account.domain.vo.AccSubOperationListVO; +import com.bonus.canteen.core.account.domain.param.AccWalletOperationQueryParam; +import com.bonus.canteen.core.account.domain.vo.AccOperationListVO; import com.bonus.canteen.core.account.domain.vo.AccTradeVo; import com.bonus.canteen.core.account.mapper.AccTradeMapper; import com.bonus.canteen.core.account.service.IAccTradeService; @@ -130,9 +130,9 @@ public class AccTradeServiceImpl implements IAccTradeService { } @Override - public List queryAccSubOperationList(AccSubOperationQueryParam param) { + public List queryAccOperationList(AccWalletOperationQueryParam param) { String encryptedSearchValue = SM4EncryptUtils.sm4Encrypt(param.getSearchValue()); - return accTradeMapper.queryAccSubOperationList(param, encryptedSearchValue); + return accTradeMapper.queryAccOperationList(param, encryptedSearchValue); } @Override diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/constants/TradeTypeEnum.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/constants/TradeTypeEnum.java deleted file mode 100644 index cc9b843..0000000 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/constants/TradeTypeEnum.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.bonus.canteen.core.pay.constants; - -public enum TradeTypeEnum { - RECHARGE(1, "充值"), - RECHARGE_REFUND(2, "充值退款"), - CONSUME(3, "消费"), - CONSUME_REFUND(4, "消费退款"); - - private final Integer key; - private final String desc; - - private TradeTypeEnum(Integer key, String desc) { - this.key = key; - this.desc = desc; - } - - public Integer getKey() { - return this.key; - } - - public String getDesc() { - return this.desc; - } - -} diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml index adaf64e..9b02dbb 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml @@ -224,7 +224,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT ate.trade_time, ate.user_id, su.nick_name, @@ -261,8 +261,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and (su.nick_name = #{param.searchValue} or su.phonenumber = #{encryptedSearchValue} + or su.user_id like CONCAT('%',#{param.searchValue},'%') ) + + and ate.user_id = #{param.userId} + order by atwd.id desc