[feat]增加app轮播接口,增加app会员接口
This commit is contained in:
parent
2c4ea0c22c
commit
e2ce1e1211
48
pom.xml
48
pom.xml
@ -484,32 +484,32 @@
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<target>
|
||||
<!-- 1. 配置 SSH 连接信息 -->
|
||||
<property name="ssh.host" value="192.168.1.65" /> <!-- 例如:192.168.1.100 -->
|
||||
<property name="ssh.port" value="22" /> <!-- SSH 默认端口 -->
|
||||
<property name="ssh.username" value="wzj" /> <!-- 例如:root -->
|
||||
<property name="ssh.password" value="123456" /> <!-- 或使用密钥认证 -->
|
||||
<property name="local.jar.path" value="${project.build.directory}/${project.build.finalName}.jar" /> <!-- 本地 JAR 路径 -->
|
||||
<property name="remote.jar.path" value="/var/local/docker/java/data" /> <!-- 服务器存放 JAR 的目录,例如:/opt/app/ -->
|
||||
<!-- <target>-->
|
||||
<!-- <!– 1. 配置 SSH 连接信息 –>-->
|
||||
<!-- <property name="ssh.host" value="192.168.1.65" /> <!– 例如:192.168.1.100 –>-->
|
||||
<!-- <property name="ssh.port" value="22" /> <!– SSH 默认端口 –>-->
|
||||
<!-- <property name="ssh.username" value="wzj" /> <!– 例如:root –>-->
|
||||
<!-- <property name="ssh.password" value="123456" /> <!– 或使用密钥认证 –>-->
|
||||
<!-- <property name="local.jar.path" value="${project.build.directory}/${project.build.finalName}.jar" /> <!– 本地 JAR 路径 –>-->
|
||||
<!-- <property name="remote.jar.path" value="/var/local/docker/java/data" /> <!– 服务器存放 JAR 的目录,例如:/opt/app/ –>-->
|
||||
|
||||
<!-- 2. 通过 SCP 上传 JAR 包到目标服务器 -->
|
||||
<scp
|
||||
file="${local.jar.path}"
|
||||
todir="${ssh.username}:${ssh.password}@${ssh.host}:${remote.jar.path}"
|
||||
port="${ssh.port}"
|
||||
trust="true" /> <!-- 信任未知主机密钥 -->
|
||||
<!-- <!– 2. 通过 SCP 上传 JAR 包到目标服务器 –>-->
|
||||
<!-- <scp-->
|
||||
<!-- file="${local.jar.path}"-->
|
||||
<!-- todir="${ssh.username}:${ssh.password}@${ssh.host}:${remote.jar.path}"-->
|
||||
<!-- port="${ssh.port}"-->
|
||||
<!-- trust="true" /> <!– 信任未知主机密钥 –>-->
|
||||
|
||||
<!-- 3. 通过 SSH 执行远程命令:重启 docker java 容器 -->
|
||||
<sshexec
|
||||
host="${ssh.host}"
|
||||
port="${ssh.port}"
|
||||
username="${ssh.username}"
|
||||
password="${ssh.password}"
|
||||
command="docker restart java"
|
||||
trust="true"
|
||||
failonerror="true" /> <!-- 命令执行失败时,Maven 构建终止 -->
|
||||
</target>
|
||||
<!-- <!– 3. 通过 SSH 执行远程命令:重启 docker java 容器 –>-->
|
||||
<!-- <sshexec-->
|
||||
<!-- host="${ssh.host}"-->
|
||||
<!-- port="${ssh.port}"-->
|
||||
<!-- username="${ssh.username}"-->
|
||||
<!-- password="${ssh.password}"-->
|
||||
<!-- command="docker restart java"-->
|
||||
<!-- trust="true"-->
|
||||
<!-- failonerror="true" /> <!– 命令执行失败时,Maven 构建终止 –>-->
|
||||
<!-- </target>-->
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
|
@ -1,16 +1,15 @@
|
||||
package org.dromara.app;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.convert.MemberAccountChangeRecordConvert;
|
||||
import com.wzj.soopin.member.convert.AccountBillConvert;
|
||||
import com.wzj.soopin.member.convert.MemberAccountConvert;
|
||||
import com.wzj.soopin.member.convert.MemberConvert;
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountChangeRecordBO;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountChangeRecordVO;
|
||||
import com.wzj.soopin.member.domain.bo.AccountBillBO;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.domain.vo.AccountBillVO;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountVO;
|
||||
import com.wzj.soopin.member.domain.vo.MemberVO;
|
||||
import com.wzj.soopin.member.service.IMemberAccountChangeRecordService;
|
||||
import com.wzj.soopin.member.service.IAccountBillService;
|
||||
import com.wzj.soopin.member.service.IMemberAccountService;
|
||||
import com.wzj.soopin.member.service.IMemberService;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@ -32,9 +31,9 @@ public class AppMemberController {
|
||||
|
||||
private final IMemberAccountService accountService;
|
||||
|
||||
private final IMemberAccountChangeRecordService accountChangeRecordService;
|
||||
private final IAccountBillService accountBillService;
|
||||
|
||||
private final MemberAccountChangeRecordConvert accountChangeRecordConvert;
|
||||
private final AccountBillConvert accountBillConvert;
|
||||
|
||||
|
||||
|
||||
@ -47,14 +46,16 @@ public class AppMemberController {
|
||||
@Tag(name ="获取会员账户表详细信息")
|
||||
@GetMapping(value = "/account/{memberId}")
|
||||
public R<MemberAccountVO> accountInfo(@PathVariable("memberId") Long memberId) {
|
||||
return R.ok(accountConvert.toVO(accountService.getById(memberId)));
|
||||
return R.ok(accountConvert.toVO(accountService.getMemberAccount(memberId)));
|
||||
}
|
||||
|
||||
@Tag(name = "查询账单")
|
||||
@PostMapping("/changeRecord/list")
|
||||
public R<Page<MemberAccountChangeRecordVO>> list(@RequestBody MemberAccountChangeRecordBO bo,
|
||||
@RequestBody Page<MemberAccountChangeRecord> page) {
|
||||
Page<MemberAccountChangeRecord> memberPage = accountChangeRecordService.page(page,bo.toWrapper());
|
||||
return R.ok(accountChangeRecordConvert.toVO(memberPage));
|
||||
@PostMapping("/bills")
|
||||
public R<Page<AccountBillVO>> list(@RequestBody AccountBillBO bo,
|
||||
@RequestBody Page<AccountBill> page) {
|
||||
Page<AccountBill> memberPage = accountBillService.page(page,bo.toWrapper());
|
||||
return R.ok(accountBillConvert.toVO(memberPage));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -222,78 +222,27 @@ sms:
|
||||
--- # 三方授权
|
||||
justauth:
|
||||
# 前端外网访问地址
|
||||
address: http://localhost:80
|
||||
address: http://82.156.121.2:8880/
|
||||
type:
|
||||
maxkey:
|
||||
# maxkey 服务器地址
|
||||
# 注意 如下均配置均不需要修改 maxkey 已经内置好了数据
|
||||
server-url: http://sso.maxkey.top
|
||||
client-id: 876892492581044224
|
||||
client-secret: x1Y5MTMwNzIwMjMxNTM4NDc3Mzche8
|
||||
redirect-uri: ${justauth.address}/social-callback?source=maxkey
|
||||
topiam:
|
||||
# topiam 服务器地址
|
||||
server-url: http://127.0.0.1:1898/api/v1/authorize/y0q************spq***********8ol
|
||||
client-id: 449c4*********937************759
|
||||
client-secret: ac7***********1e0************28d
|
||||
redirect-uri: ${justauth.address}/social-callback?source=topiam
|
||||
scopes: [openid, email, phone, profile]
|
||||
qq:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=qq
|
||||
union-id: false
|
||||
weibo:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=weibo
|
||||
gitee:
|
||||
client-id: 91436b7940090d09c72c7daf85b959cfd5f215d67eea73acbf61b6b590751a98
|
||||
client-secret: 02c6fcfd70342980cd8dd2f2c06c1a350645d76c754d7a264c4e125f9ba915ac
|
||||
redirect-uri: ${justauth.address}/social-callback?source=gitee
|
||||
dingtalk:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=dingtalk
|
||||
baidu:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=baidu
|
||||
csdn:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=csdn
|
||||
coding:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=coding
|
||||
coding-group-name: xx
|
||||
oschina:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=oschina
|
||||
alipay_wallet:
|
||||
alipay_wallet: # 支付宝钱包
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=alipay_wallet
|
||||
alipay-public-key: MIIB**************DAQAB
|
||||
wechat_open:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
wechat_open: # 微信开放平台
|
||||
client-id: wxebcdaea31881caab
|
||||
client-secret: 71826d76bad096ec5407897c6ed1391f
|
||||
redirect-uri: ${justauth.address}/social-callback?source=wechat_open
|
||||
wechat_mp:
|
||||
wechat_mp: # 微信小程序
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=wechat_mp
|
||||
wechat_enterprise:
|
||||
wechat_enterprise: # 微信企业
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=wechat_enterprise
|
||||
agent-id: 1000002
|
||||
gitlab:
|
||||
client-id: 10**********6
|
||||
client-secret: 1f7d08**********5b7**********29e
|
||||
redirect-uri: ${justauth.address}/social-callback?source=gitlab
|
||||
|
||||
|
||||
# 腾讯云IM配置
|
||||
tencent:
|
||||
|
@ -39,7 +39,8 @@ public class SocialUtils {
|
||||
AuthConfig.AuthConfigBuilder builder = AuthConfig.builder()
|
||||
.clientId(obj.getClientId())
|
||||
.clientSecret(obj.getClientSecret())
|
||||
.redirectUri(obj.getRedirectUri())
|
||||
.redirectUri(obj.getRedirectUri())// 回调地址
|
||||
.ignoreCheckState(true)// 忽略state校验,默认false
|
||||
.scopes(obj.getScopes());
|
||||
return switch (source.toLowerCase()) {
|
||||
case "dingtalk" -> new AuthDingTalkRequest(builder.build(), STATE_CACHE);
|
||||
|
@ -0,0 +1,102 @@
|
||||
package com.wzj.soopin.member.controller;
|
||||
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.convert.AccountBillConvert;
|
||||
import com.wzj.soopin.member.domain.bo.AccountBillBO;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.domain.vo.AccountBillVO;
|
||||
import com.wzj.soopin.member.service.IAccountBillService;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 会员信息Controller
|
||||
*
|
||||
* @author zcc
|
||||
* @date 2022-11-28
|
||||
*/
|
||||
@Tag(name = "账单")
|
||||
@RequestMapping("/ums/account/bill")
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class AccountBillController extends BaseController {
|
||||
private final IAccountBillService service;
|
||||
|
||||
private final AccountBillConvert convert;
|
||||
|
||||
|
||||
@Tag(name = "查询账单列表")
|
||||
@SaCheckPermission("ums:accountbill:list")
|
||||
@PostMapping("page")
|
||||
public R<Page<AccountBillVO>> page(@RequestBody AccountBillBO bo,
|
||||
@RequestBody Page<AccountBill> page) {
|
||||
Page<AccountBill> memberPage = service.page(page,bo.toWrapper());
|
||||
return R.ok(convert.toVO(memberPage));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name = "查询账单列表")
|
||||
@SaCheckPermission("ums:accountbill:list")
|
||||
@PostMapping("list")
|
||||
public R<List<AccountBillVO>> list(@RequestBody AccountBillBO bo) {
|
||||
List<AccountBill> memberPage = service.list(bo.toWrapper());
|
||||
return R.ok(convert.toVO(memberPage));
|
||||
}
|
||||
|
||||
@Tag(name ="导出账单")
|
||||
@SaCheckPermission("ums:accountbill:export")
|
||||
@PostMapping("export")
|
||||
public ResponseEntity<String> export(AccountBillBO query) {
|
||||
List<AccountBill> list = service.list(query.toWrapper());
|
||||
ExcelUtil<AccountBillVO> util = new ExcelUtil<>(AccountBillVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "账单"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取账单详情")
|
||||
@SaCheckPermission("ums:accountbill:query")
|
||||
@GetMapping(value = "{id}")
|
||||
public R<AccountBillVO> getInfo(@PathVariable("id") Long id) {
|
||||
return R.ok(convert.toVO(service.getById(id)));
|
||||
}
|
||||
|
||||
@Tag(name ="新增账单")
|
||||
@SaCheckPermission("ums:accountbill:add")
|
||||
@Log(title = "新增账单", businessType = BusinessType.INSERT)
|
||||
@PostMapping("add")
|
||||
public R add(@RequestBody AccountBillBO member) {
|
||||
return R.ok(service.save(convert.toPo(member)));
|
||||
}
|
||||
|
||||
@Tag(name ="修改账单")
|
||||
@SaCheckPermission("ums:accountbill:edit")
|
||||
@Log(title = "修改账单", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("update")
|
||||
public R edit(@RequestBody AccountBillBO member) {
|
||||
return R.ok(service.updateById(convert.toPo(member)));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Tag(name ="删除账单")
|
||||
@SaCheckPermission("ums:accountbill:remove")
|
||||
@Log(title = "删除账单", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("{id}")
|
||||
public R remove(@PathVariable Long id) {
|
||||
return R.ok(service.removeById(id));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
@ -1,100 +0,0 @@
|
||||
package com.wzj.soopin.member.controller;
|
||||
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.convert.MemberAccountChangeRecordConvert;
|
||||
import com.wzj.soopin.member.convert.MemberConvert;
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountChangeRecordBO;
|
||||
import com.wzj.soopin.member.domain.bo.MemberBO;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountChangeRecordVO;
|
||||
import com.wzj.soopin.member.domain.vo.MemberDataStatisticsVO;
|
||||
import com.wzj.soopin.member.domain.vo.MemberVO;
|
||||
import com.wzj.soopin.member.service.IMemberAccountChangeRecordService;
|
||||
import com.wzj.soopin.member.service.IMemberService;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 会员信息Controller
|
||||
*
|
||||
* @author zcc
|
||||
* @date 2022-11-28
|
||||
*/
|
||||
@Tag(name = "会员账户变动接口列表")
|
||||
@RequestMapping("/ums/account/change/record")
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class MemberAccountChangeRecordController extends BaseController {
|
||||
private final IMemberAccountChangeRecordService service;
|
||||
|
||||
private final MemberAccountChangeRecordConvert convert;
|
||||
|
||||
|
||||
@Tag(name = "查询账户变动列表")
|
||||
@SaCheckPermission("ums:accountchange:list")
|
||||
@PostMapping("list")
|
||||
public R<Page<MemberAccountChangeRecordVO>> list(@RequestBody MemberAccountChangeRecordBO bo,
|
||||
@RequestBody Page<MemberAccountChangeRecord> page) {
|
||||
Page<MemberAccountChangeRecord> memberPage = service.page(page,bo.toWrapper());
|
||||
return R.ok(convert.toVO(memberPage));
|
||||
}
|
||||
|
||||
@Tag(name ="导出变动记录")
|
||||
@SaCheckPermission("ums:accountchange:export")
|
||||
@Log(title = "会员信息", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("export")
|
||||
public ResponseEntity<String> export(MemberAccountChangeRecordBO query) {
|
||||
List<MemberAccountChangeRecord> list = service.list(query.toWrapper());
|
||||
ExcelUtil<MemberAccountChangeRecordVO> util = new ExcelUtil<>(MemberAccountChangeRecordVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "会员变动记录"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取变动记录")
|
||||
@SaCheckPermission("ums:accountchange:query")
|
||||
@GetMapping(value = "{id}")
|
||||
public R<MemberAccountChangeRecordVO> getInfo(@PathVariable("id") Long id) {
|
||||
return R.ok(convert.toVO(service.getById(id)));
|
||||
}
|
||||
|
||||
@Tag(name ="新增变动记录")
|
||||
@SaCheckPermission("'ums:accountchange:add")
|
||||
@Log(title = "新增变动记录", businessType = BusinessType.INSERT)
|
||||
@PostMapping("add")
|
||||
public R add(@RequestBody MemberAccountChangeRecordBO member) {
|
||||
return R.ok(service.save(convert.toPo(member)));
|
||||
}
|
||||
|
||||
@Tag(name ="修改变动记录")
|
||||
@SaCheckPermission("ums:accountchange:edit")
|
||||
@Log(title = "修改变动记录", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("update")
|
||||
public R edit(@RequestBody MemberAccountChangeRecordBO member) {
|
||||
return R.ok(service.updateById(convert.toPo(member)));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Tag(name ="删除变动记录")
|
||||
@SaCheckPermission("ums:accountchange:remove")
|
||||
@Log(title = "删除变动记录", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("{id}")
|
||||
public R remove(@PathVariable Long id) {
|
||||
return R.ok(service.removeById(id));
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
package com.wzj.soopin.member.convert;
|
||||
|
||||
import com.wzj.soopin.member.domain.bo.AccountBillBO;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.domain.vo.AccountBillVO;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
/**
|
||||
* 会员账户表 DO <=> DTO <=> VO / BO / Query
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Mapper(componentModel = "spring",uses = BaseConverter.class)
|
||||
public interface AccountBillConvert extends BaseConverter<AccountBillVO, AccountBillBO, AccountBill> {
|
||||
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
package com.wzj.soopin.member.convert;
|
||||
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountBO;
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountChangeRecordBO;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccount;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountChangeRecordVO;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountVO;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
/**
|
||||
* 会员账户表 DO <=> DTO <=> VO / BO / Query
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Mapper(componentModel = "spring",uses = BaseConverter.class)
|
||||
public interface MemberAccountChangeRecordConvert extends BaseConverter<MemberAccountChangeRecordVO, MemberAccountChangeRecordBO, MemberAccountChangeRecord> {
|
||||
|
||||
}
|
@ -1,32 +1,24 @@
|
||||
package com.wzj.soopin.member.domain.bo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.core.domain.BaseBO;
|
||||
import org.dromara.common.core.domain.model.BaseAudit;
|
||||
import org.dromara.common.excel.annotation.Excel;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员账户表对象 ums_member_account
|
||||
* 账单
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Schema(description="会员账户变动记录")
|
||||
@Schema(description="账单 ")
|
||||
@Data
|
||||
public class MemberAccountChangeRecordBO extends BaseBO<MemberAccountChangeRecord> {
|
||||
public class AccountBillBO extends BaseBO<AccountBill> {
|
||||
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description ="MEMBER_ID")
|
||||
private Long memberId;
|
||||
|
||||
@Schema(description = "账户id")
|
||||
private Long accountId;
|
||||
@Schema(description ="余额")
|
||||
@ -53,10 +45,9 @@ public class MemberAccountChangeRecordBO extends BaseBO<MemberAccountChangeRecor
|
||||
private Integer source;
|
||||
|
||||
@Override
|
||||
public LambdaQueryWrapper<MemberAccountChangeRecord> toWrapper() {
|
||||
return new LambdaQueryWrapper<MemberAccountChangeRecord>()
|
||||
.eq(getMemberId() != null,MemberAccountChangeRecord::getMemberId,memberId)
|
||||
.eq(getChangeType() != null,MemberAccountChangeRecord::getChangeType,changeType)
|
||||
.eq(getSource() != null,MemberAccountChangeRecord::getSource,source);
|
||||
public LambdaQueryWrapper<AccountBill> toWrapper() {
|
||||
return new LambdaQueryWrapper<AccountBill>()
|
||||
.eq(getChangeType() != null, AccountBill::getChangeType,changeType)
|
||||
.eq(getSource() != null, AccountBill::getSource,source);
|
||||
}
|
||||
}
|
@ -11,23 +11,20 @@ import org.dromara.common.excel.annotation.Excel;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员账户表对象 ums_member_account
|
||||
* 账单对象 ums_account_bill
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Schema(description="会员账户变动记录")
|
||||
@Schema(description="账单")
|
||||
@Data
|
||||
@TableName("ums_account_change_record")
|
||||
@TableName("ums_account_bill")
|
||||
@Builder
|
||||
public class MemberAccountChangeRecord extends BaseAudit {
|
||||
public class AccountBill extends BaseAudit {
|
||||
|
||||
@Schema(description ="主键")
|
||||
@TableId(value="id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description ="会员id")
|
||||
private Long memberId;
|
||||
|
||||
@Schema(description = "账户id")
|
||||
private Long accountId;
|
||||
|
||||
@ -47,14 +44,14 @@ public class MemberAccountChangeRecord extends BaseAudit {
|
||||
@Excel(name = "变动金额")
|
||||
private BigDecimal changeAmount;
|
||||
|
||||
@Schema(description ="变动类型")
|
||||
@Schema(description ="变动类型 1收入 2支出")
|
||||
private Integer changeType;
|
||||
|
||||
@Schema(description ="变动描述")
|
||||
private String changeDesc;
|
||||
|
||||
@Schema(description ="来源")
|
||||
private String source;
|
||||
@Schema(description ="来源 ")
|
||||
private Integer source;
|
||||
|
||||
|
||||
}
|
@ -2,7 +2,6 @@ package com.wzj.soopin.member.domain.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.core.domain.model.BaseAudit;
|
||||
@ -11,16 +10,18 @@ import org.dromara.common.excel.annotation.Excel;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员账户表对象 ums_member_account
|
||||
* 账单VO
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Schema(description="会员账户变动记录")
|
||||
@Schema(description="账单")
|
||||
@Data
|
||||
public class MemberAccountChangeRecordVO extends BaseAudit {
|
||||
public class AccountBillVO extends BaseAudit {
|
||||
|
||||
private Long id;
|
||||
|
||||
private Long accountId;
|
||||
|
||||
@Schema(description ="MEMBER_ID")
|
||||
@TableId(value="member_id", type = IdType.ASSIGN_ID)
|
||||
private Long memberId;
|
@ -1,15 +1,13 @@
|
||||
package com.wzj.soopin.member.enums;
|
||||
|
||||
public enum MemberAccountChangeRecordSourceEnum {
|
||||
YISHENG(1, "充值"),
|
||||
CHARGE(2, "提现"),
|
||||
WITHDRAW(3, "经营"),
|
||||
public enum AccountBillChangeTypeEnum {
|
||||
|
||||
RECHARGE_REFUND_REFUND_REFUND(9, "充值退款退款退款");
|
||||
IN(1, "收入"),
|
||||
OUT(2, "支出");
|
||||
|
||||
private Integer code;
|
||||
private String message;
|
||||
MemberAccountChangeRecordSourceEnum(Integer code, String message) {
|
||||
AccountBillChangeTypeEnum(Integer code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
@ -1,6 +1,7 @@
|
||||
package com.wzj.soopin.member.enums;
|
||||
|
||||
public enum MemberAccountChangeRecordChangeTypeEnum {
|
||||
public enum AccountBillSourceEnum {
|
||||
|
||||
WITHDRAW(1, "提现"),
|
||||
CHARGE(2, "充值"),
|
||||
RECHARGE(3, "充值"),
|
||||
@ -8,11 +9,18 @@ public enum MemberAccountChangeRecordChangeTypeEnum {
|
||||
WITHDRAW_REFUND(5, "提现退款"),
|
||||
RECHARGE_REFUND_REFUND(6, "充值退款退款"),
|
||||
WITHDRAW_REFUND_REFUND(7, "提现退款退款"),
|
||||
RECHARGE_REFUND_REFUND_REFUND(8, "充值退款退款退款");
|
||||
RECHARGE_REFUND_REFUND_REFUND(9, "充值退款退款退款"),
|
||||
RED_PACKAGE_RECEIVE(10, "红包接收"),
|
||||
RED_PACKAGE_SEND(11, "红包发送"),
|
||||
RED_PACKAGE_REFUND(12, "红包退款"),
|
||||
RED_PACKAGE_REFUND_REFUND(13, "红包退款退款");
|
||||
|
||||
|
||||
;
|
||||
|
||||
private Integer code;
|
||||
private String message;
|
||||
MemberAccountChangeRecordChangeTypeEnum(Integer code, String message) {
|
||||
AccountBillSourceEnum(Integer code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
@ -1,9 +1,8 @@
|
||||
package com.wzj.soopin.member.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.domain.vo.AccountDetailVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
@ -11,7 +10,7 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
/**
|
||||
* 会员账户变动记录Mapper接口
|
||||
*/
|
||||
public interface MemberAccountChangeRecordMapper extends BaseMapperPlus<MemberAccountChangeRecord, AccountDetailVO> {
|
||||
public interface AccountBillMapper extends BaseMapperPlus<AccountBill, AccountDetailVO> {
|
||||
|
||||
/**
|
||||
* 分页查询账户明细(关联账户表获取账户类型)
|
@ -0,0 +1,8 @@
|
||||
package com.wzj.soopin.member.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
|
||||
public interface IAccountBillService extends IService<AccountBill> {
|
||||
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
package com.wzj.soopin.member.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccount;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
|
||||
public interface IMemberAccountChangeRecordService extends IService<MemberAccountChangeRecord> {
|
||||
|
||||
}
|
@ -67,4 +67,7 @@ public interface IMemberService extends IService<Member> {
|
||||
|
||||
|
||||
MemberVO getLoginMemberInfo();
|
||||
|
||||
|
||||
String updateWechat(MemberBO bo);
|
||||
}
|
||||
|
@ -0,0 +1,23 @@
|
||||
package com.wzj.soopin.member.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.mapper.AccountBillMapper;
|
||||
import com.wzj.soopin.member.service.IAccountBillService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 会员账户表Service业务层处理
|
||||
*
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Service
|
||||
public class AccountBillServiceImpl extends
|
||||
ServiceImpl<AccountBillMapper, AccountBill> implements IAccountBillService {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
@ -6,11 +6,10 @@ import com.wzj.soopin.member.domain.bo.AccountDetailQueryBO;
|
||||
import com.wzj.soopin.member.domain.vo.AccountDetailVO;
|
||||
import com.wzj.soopin.member.enums.AccountTypeEnum;
|
||||
import com.wzj.soopin.member.enums.UserTypeEnum;
|
||||
import com.wzj.soopin.member.mapper.MemberAccountChangeRecordMapper;
|
||||
import com.wzj.soopin.member.mapper.AccountBillMapper;
|
||||
import com.wzj.soopin.member.service.IAccountDetailService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
import org.dromara.common.core.domain.model.LoginUser;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -26,13 +25,13 @@ import java.util.List;
|
||||
@RequiredArgsConstructor
|
||||
public class AccountDetailServiceImpl implements IAccountDetailService {
|
||||
|
||||
private final MemberAccountChangeRecordMapper accountChangeRecordMapper;
|
||||
private final AccountBillMapper accountChangeRecordMapper;
|
||||
|
||||
@Override
|
||||
public IPage<AccountDetailVO> queryAccountDetailPage(AccountDetailQueryBO queryBO) {
|
||||
// 构建分页对象
|
||||
Page<AccountDetailVO> page = new Page<>(queryBO.getPageNum(), queryBO.getPageSize());
|
||||
|
||||
|
||||
// 处理时间格式
|
||||
String startTime = null;
|
||||
String endTime = null;
|
||||
@ -42,30 +41,30 @@ public class AccountDetailServiceImpl implements IAccountDetailService {
|
||||
if (queryBO.getEndTime() != null) {
|
||||
endTime = queryBO.getEndTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
}
|
||||
|
||||
|
||||
// 记录查询参数日志
|
||||
log.info("查询账户明细,参数:memberId={}, accountId={}, changeType={}, source={}, startTime={}, endTime={}",
|
||||
queryBO.getMemberId(), queryBO.getAccountId(), queryBO.getChangeType(),
|
||||
log.info("查询账户明细,参数:memberId={}, accountId={}, changeType={}, source={}, startTime={}, endTime={}",
|
||||
queryBO.getMemberId(), queryBO.getAccountId(), queryBO.getChangeType(),
|
||||
queryBO.getSource(), startTime, endTime);
|
||||
|
||||
|
||||
// 查询数据
|
||||
IPage<AccountDetailVO> result = accountChangeRecordMapper.selectAccountDetailPage(
|
||||
page, queryBO.getMemberId(), queryBO.getAccountId(),
|
||||
page, queryBO.getMemberId(), queryBO.getAccountId(),
|
||||
queryBO.getChangeType(), queryBO.getSource(), startTime, endTime
|
||||
);
|
||||
|
||||
|
||||
// 补充账户类型和用户类型描述
|
||||
List<AccountDetailVO> records = result.getRecords();
|
||||
for (AccountDetailVO record : records) {
|
||||
// 设置账户类型描述
|
||||
record.setAccountTypeDesc(AccountTypeEnum.getDesc(record.getAccountType()));
|
||||
|
||||
|
||||
// 根据账户类型判断用户类型
|
||||
Integer userType = getUserTypeByAccountType(record.getAccountType());
|
||||
record.setUserType(userType);
|
||||
record.setUserTypeDesc(UserTypeEnum.getDesc(userType));
|
||||
}
|
||||
|
||||
|
||||
log.info("查询账户明细完成,共查询到{}条记录", result.getTotal());
|
||||
return result;
|
||||
}
|
||||
@ -82,10 +81,10 @@ public class AccountDetailServiceImpl implements IAccountDetailService {
|
||||
if (loginUser == null) {
|
||||
throw new RuntimeException("用户未登录");
|
||||
}
|
||||
|
||||
|
||||
// 设置当前登录用户的会员ID
|
||||
queryBO.setMemberId(loginUser.getUserId());
|
||||
|
||||
|
||||
// 调用原有的分页查询方法
|
||||
return queryAccountDetailPage(queryBO);
|
||||
}
|
||||
|
@ -1,31 +0,0 @@
|
||||
package com.wzj.soopin.member.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountBO;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccount;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.mapper.MemberAccountChangeRecordMapper;
|
||||
import com.wzj.soopin.member.mapper.MemberAccountMapper;
|
||||
import com.wzj.soopin.member.service.IMemberAccountChangeRecordService;
|
||||
import com.wzj.soopin.member.service.IMemberAccountService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员账户表Service业务层处理
|
||||
*
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@Service
|
||||
public class MemberAccountChangeRecordServiceImpl extends
|
||||
ServiceImpl<MemberAccountChangeRecordMapper, MemberAccountChangeRecord> implements IMemberAccountChangeRecordService {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
@ -269,4 +269,13 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper,Member> implemen
|
||||
LoginUser tokenUser = LoginHelper.getLoginUser();
|
||||
return this.getMemberInfo(tokenUser.getUserId());
|
||||
}
|
||||
@Override
|
||||
public String updateWechat(MemberBO bo) {
|
||||
|
||||
String openId=bo.getAvatar();
|
||||
//到微信去验证
|
||||
String token=bo.getPassword();
|
||||
|
||||
return openId;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.wzj.soopin.member.mapper.MemberAccountChangeRecordMapper">
|
||||
<mapper namespace="com.wzj.soopin.member.mapper.AccountBillMapper">
|
||||
|
||||
<!-- 分页查询账户明细(关联会员账户表和租户账户表获取账户类型) -->
|
||||
<select id="selectAccountDetailPage" resultType="com.wzj.soopin.member.domain.vo.AccountDetailVO">
|
||||
SELECT
|
||||
SELECT
|
||||
r.id,
|
||||
r.member_id as memberId,
|
||||
r.account_id as accountId,
|
||||
COALESCE(ma.type, ta.type) as accountType,
|
||||
CASE
|
||||
CASE
|
||||
WHEN ma.id IS NOT NULL THEN 2 -- 会员
|
||||
WHEN ta.id IS NOT NULL THEN 1 -- 租户
|
||||
ELSE 2 -- 默认会员
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.wzj.soopin.member.mapper.MemberAccountChangeRecordMapper" >
|
||||
<mapper namespace="com.wzj.soopin.member.mapper.AccountBillMapper" >
|
||||
|
||||
</mapper>
|
||||
|
@ -2,8 +2,10 @@ package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.mapper.MemberAccountChangeRecordMapper;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.member.enums.AccountBillChangeTypeEnum;
|
||||
import com.wzj.soopin.member.enums.AccountBillSourceEnum;
|
||||
import com.wzj.soopin.member.mapper.AccountBillMapper;
|
||||
import com.wzj.soopin.member.mapper.MemberAccountMapper;
|
||||
import com.wzj.soopin.order.domain.entity.RedPacket;
|
||||
import com.wzj.soopin.order.domain.entity.RedPacketReceive;
|
||||
@ -32,7 +34,7 @@ public class RedPacketServiceImpl extends ServiceImpl<RedPacketMapper, RedPacket
|
||||
private final RedPacketMapper redPacketMapper;
|
||||
private final RedPacketReceiveMapper redPacketReceiveMapper;
|
||||
private final MemberAccountMapper umsAccountMapper;
|
||||
private final MemberAccountChangeRecordMapper accountChangeRecordMapper;
|
||||
private final AccountBillMapper accountChangeRecordMapper;
|
||||
private final RedisTemplate<String, Object> redisTemplate;
|
||||
|
||||
// Redis锁前缀
|
||||
@ -206,14 +208,14 @@ public class RedPacketServiceImpl extends ServiceImpl<RedPacketMapper, RedPacket
|
||||
umsAccountMapper.updateMoneyBalance(senderId, afterBalance);
|
||||
|
||||
// 记录金额变动
|
||||
MemberAccountChangeRecord record = MemberAccountChangeRecord.builder()
|
||||
AccountBill record = AccountBill.builder()
|
||||
.moneyBalance(beforeBalance)
|
||||
.accountId(senderId)
|
||||
.beforeBalance(beforeBalance)
|
||||
.afterBalance(afterBalance)
|
||||
.changeAmount(redPacket.getTotalAmount())
|
||||
.changeType(CHANGE_TYPE_SEND)
|
||||
.source("发送红包,红包ID:" + redPacket.getId())
|
||||
.changeType(AccountBillChangeTypeEnum.OUT.getCode())
|
||||
.source(AccountBillSourceEnum.RED_PACKAGE_SEND.getCode())
|
||||
.build();
|
||||
|
||||
accountChangeRecordMapper.insert(record);
|
||||
@ -269,7 +271,7 @@ public class RedPacketServiceImpl extends ServiceImpl<RedPacketMapper, RedPacket
|
||||
umsAccountMapper.updateMoneyBalance(senderId, afterBalance);
|
||||
|
||||
// 记录金额变动
|
||||
MemberAccountChangeRecord record = MemberAccountChangeRecord.builder()
|
||||
AccountBill record = AccountBill.builder()
|
||||
.accountId(senderId)
|
||||
.beforeBalance(beforeBalance)
|
||||
.afterBalance(afterBalance)
|
||||
@ -340,7 +342,7 @@ public class RedPacketServiceImpl extends ServiceImpl<RedPacketMapper, RedPacket
|
||||
umsAccountMapper.updateMoneyBalance(memberId, afterBalance);
|
||||
|
||||
// 记录金额变动
|
||||
MemberAccountChangeRecord record = MemberAccountChangeRecord.builder()
|
||||
AccountBill record = AccountBill.builder()
|
||||
.accountId(memberId)
|
||||
.beforeBalance(beforeBalance)
|
||||
.afterBalance(afterBalance)
|
||||
|
@ -3,10 +3,10 @@ package com.wzj.soopin.transaction.service.impl;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.transaction.domain.bo.WithdrawBO;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccount;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccountChangeRecord;
|
||||
import com.wzj.soopin.member.domain.po.AccountBill;
|
||||
import com.wzj.soopin.transaction.domain.po.Withdraw;
|
||||
import com.wzj.soopin.member.enums.MemberAccountChangeRecordChangeTypeEnum;
|
||||
import com.wzj.soopin.member.enums.MemberAccountChangeRecordSourceEnum;
|
||||
import com.wzj.soopin.member.enums.AccountBillChangeTypeEnum;
|
||||
import com.wzj.soopin.member.enums.AccountBillSourceEnum;
|
||||
import com.wzj.soopin.transaction.enums.WithdrawAuditStatus;
|
||||
import com.wzj.soopin.transaction.enums.WithdrawStatus;
|
||||
import com.wzj.soopin.transaction.mapper.WithdrawMapper;
|
||||
@ -40,7 +40,7 @@ public class WithdrawServiceImpl extends ServiceImpl<WithdrawMapper, Withdraw> i
|
||||
*/
|
||||
private final IYishengService yishengService;
|
||||
|
||||
private final IMemberAccountChangeRecordService memberAccountChangeRecordService;
|
||||
private final IAccountBillService memberAccountChangeRecordService;
|
||||
|
||||
@Override
|
||||
public boolean audit(WithdrawBO bo) {
|
||||
@ -106,14 +106,14 @@ public class WithdrawServiceImpl extends ServiceImpl<WithdrawMapper, Withdraw> i
|
||||
yishengAccountVO = yishengService.getYishengAccount(withdraw.getMemberId());
|
||||
memberAccountService.updateById(memberAccount.toBuilder().wallet(balance.subtract(finalBalance)).build());
|
||||
//生成账户变动记录bh
|
||||
MemberAccountChangeRecord memberAccountChangeRecord = MemberAccountChangeRecord.builder()
|
||||
AccountBill memberAccountChangeRecord = AccountBill.builder()
|
||||
.accountId(withdraw.getMemberId())
|
||||
.moneyBalance(finalBalance)
|
||||
.beforeBalance(balance)
|
||||
.afterBalance(yishengAccountVO.getBalance())
|
||||
.changeType(MemberAccountChangeRecordChangeTypeEnum.WITHDRAW.getCode())
|
||||
.changeType(AccountBillChangeTypeEnum.OUT.getCode())
|
||||
.changeDesc("提现")
|
||||
.source(MemberAccountChangeRecordSourceEnum.WITHDRAW.getCode()).build();
|
||||
.source(AccountBillSourceEnum.WITHDRAW.getCode()).build();
|
||||
memberAccountChangeRecordService.save(memberAccountChangeRecord);
|
||||
|
||||
} else {
|
||||
|
Loading…
x
Reference in New Issue
Block a user