From d979b590cd44c85337cdd35a5c957d328f5272db Mon Sep 17 00:00:00 2001 From: gaowdong Date: Tue, 8 Jul 2025 16:09:33 +0800 Subject: [PATCH] =?UTF-8?q?i=E5=9B=BD=E7=BD=91=EF=BC=9A=E8=B4=A6=E6=88=B7?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=BF=94=E5=9B=9E=E6=96=B0=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/param/AccountInfoQueryParam.java | 1 + .../controller/ZhhqAccountInfoController.java | 64 +++++++++++++++++++ .../core/zhhq/domain/AccountInfoDTO.java | 15 +++++ .../core/zhhq/domain/AccountInfoVO.java | 20 ++++++ .../mapper/account/AccInfoMapper.xml | 3 + 5 files changed, 103 insertions(+) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/controller/ZhhqAccountInfoController.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoDTO.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoVO.java diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccountInfoQueryParam.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccountInfoQueryParam.java index 4d21121..1b09082 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccountInfoQueryParam.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/param/AccountInfoQueryParam.java @@ -23,6 +23,7 @@ public class AccountInfoQueryParam extends BaseEntity { private LocalDateTime endDateTime; private String searchValue; private Integer userType; + private String userCode; // @ApiModelProperty("钱包最小金额") // private BigDecimal walletMinAmount; // @ApiModelProperty("钱包最大金额") diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/controller/ZhhqAccountInfoController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/controller/ZhhqAccountInfoController.java new file mode 100644 index 0000000..ebf0a3c --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/controller/ZhhqAccountInfoController.java @@ -0,0 +1,64 @@ +package com.bonus.canteen.core.zhhq.controller; + +import cn.hutool.core.collection.CollUtil; +import com.bonus.canteen.core.account.constants.AccStatusEnum; +import com.bonus.canteen.core.account.domain.param.AccountInfoQueryParam; +import com.bonus.canteen.core.account.domain.vo.AccInfoDetailsVO; +import com.bonus.canteen.core.account.service.IAccInfoService; +import com.bonus.canteen.core.zhhq.domain.AccountInfoDTO; +import com.bonus.canteen.core.zhhq.domain.AccountInfoVO; +import com.bonus.canteen.core.zhhq.domain.WeekRecipeDTO; +import com.bonus.canteen.core.zhhq.service.IZhhqCookRecipeService; +import com.bonus.common.core.web.controller.BaseController; +import com.bonus.common.core.web.domain.AjaxResult; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.Valid; +import java.math.BigDecimal; +import java.util.List; + +/** + * 账户信息Controller + * + * @author xsheng + * @date 2025-05-25 + */ +@Api(tags = "账户h5接口") +@RestController +@RequestMapping("/api/zhhq/account_info") +@Slf4j +public class ZhhqAccountInfoController extends BaseController { + @Autowired + private IAccInfoService accInfoService; + + @ApiOperation("获取员工账户信息") + @PostMapping({"/getBalance"}) + public AjaxResult getBalance(@RequestBody @Valid AccountInfoDTO dto) { + try { + AccountInfoQueryParam param = new AccountInfoQueryParam(); + param.setUserCode(dto.getEmpCode()); + List list = this.accInfoService.selectAccInfoList(param); + AccountInfoVO accountInfoVO = null; + if(CollUtil.isNotEmpty(list)) { + AccInfoDetailsVO accInfoVO = list.get(0); + accountInfoVO = new AccountInfoVO(); + accountInfoVO.setWalletBal(accInfoVO.getWalletBal().divide(BigDecimal.valueOf(100))); + accountInfoVO.setSubsidyBal(accInfoVO.getSubsidyBal().divide(BigDecimal.valueOf(100))); + accountInfoVO.setStatus(AccStatusEnum.NORMAL.getKey().equals(accInfoVO.getAccountStatus()) ? 1 : 2); + }else { + return AjaxResult.error("账户不存在"); + } + return AjaxResult.success("卡信息查询成功", accountInfoVO); + } catch (Exception e) { + log.error(e.toString(), e); + return AjaxResult.error(null); + } + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoDTO.java new file mode 100644 index 0000000..54c333f --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoDTO.java @@ -0,0 +1,15 @@ +package com.bonus.canteen.core.zhhq.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.time.LocalDate; + +@Data +public class AccountInfoDTO { + @ApiModelProperty(value = "食堂id") + @NotNull(message = "员工号不能为空") + private String empCode; +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoVO.java new file mode 100644 index 0000000..b82a9a4 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/zhhq/domain/AccountInfoVO.java @@ -0,0 +1,20 @@ +package com.bonus.canteen.core.zhhq.domain; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.math.BigDecimal; + +@Data +public class AccountInfoVO { + @ApiModelProperty(value = "个人钱包余额") + private BigDecimal walletBal; + + @ApiModelProperty(value = "补贴钱包余额") + private BigDecimal subsidyBal; + + @ApiModelProperty(value = "账户状态") + private Integer status; + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccInfoMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccInfoMapper.xml index 4fe65e4..70765ea 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccInfoMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccInfoMapper.xml @@ -349,6 +349,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) + + and t2.user_code = #{accountInfoQueryParam.userCode} +