diff --git a/.feisuan/.ymlignore b/.feisuan/.ymlignore new file mode 100644 index 000000000..1640b548a --- /dev/null +++ b/.feisuan/.ymlignore @@ -0,0 +1,2 @@ +spring.datasource.username +spring.datasource.password diff --git a/pom.xml b/pom.xml index cdf408e0a..1c35b6880 100644 --- a/pom.xml +++ b/pom.xml @@ -484,32 +484,32 @@ run - - - - - - - - + + + + + + + + - - + + + + + + - - - + + + + + + + + + + diff --git a/ruoyi-admin/src/main/java/org/dromara/app/AppMemberController.java b/ruoyi-admin/src/main/java/org/dromara/app/AppMemberController.java index d5d828ee5..b7feee34d 100644 --- a/ruoyi-admin/src/main/java/org/dromara/app/AppMemberController.java +++ b/ruoyi-admin/src/main/java/org/dromara/app/AppMemberController.java @@ -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 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> list(@RequestBody MemberAccountChangeRecordBO bo, - @RequestBody Page page) { - Page memberPage = accountChangeRecordService.page(page,bo.toWrapper()); - return R.ok(accountChangeRecordConvert.toVO(memberPage)); + @PostMapping("/bills") + public R> list(@RequestBody AccountBillBO bo, + @RequestBody Page page) { + Page memberPage = accountBillService.page(page,bo.toWrapper()); + return R.ok(accountBillConvert.toVO(memberPage)); } + + } diff --git a/ruoyi-admin/src/main/java/org/dromara/app/AppProductCategoryController.java b/ruoyi-admin/src/main/java/org/dromara/app/AppProductCategoryController.java new file mode 100644 index 000000000..58aebf51b --- /dev/null +++ b/ruoyi-admin/src/main/java/org/dromara/app/AppProductCategoryController.java @@ -0,0 +1,34 @@ +package org.dromara.app; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wzj.soopin.goods.convert.ProductCategoryConvert; +import com.wzj.soopin.goods.domain.bo.ProductCategoryBo; +import com.wzj.soopin.goods.domain.entity.ProductCategory; +import com.wzj.soopin.goods.domain.vo.ProductCategoryVO; +import com.wzj.soopin.goods.service.impl.ProductCategoryServiceImpl; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +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; + +@Tag(name ="商品分类接口列表") +@RestController +@RequestMapping("/app/productCategory") +@RequiredArgsConstructor +public class AppProductCategoryController { + + + private final ProductCategoryServiceImpl service; + private final ProductCategoryConvert convert; + + @Tag(name ="查询商品分类列表") + @PostMapping("page") + public R> page(@RequestBody ProductCategoryBo query, Page page) { + Page productCategoryPage = service.page(page,query.toWrapper()); + return R.ok(convert.toVO(productCategoryPage)); + } + +} diff --git a/ruoyi-admin/src/main/java/org/dromara/app/AppProductController.java b/ruoyi-admin/src/main/java/org/dromara/app/AppProductController.java new file mode 100644 index 000000000..3c7747bde --- /dev/null +++ b/ruoyi-admin/src/main/java/org/dromara/app/AppProductController.java @@ -0,0 +1,39 @@ +package org.dromara.app; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wzj.soopin.goods.convert.ProductConvert; +import com.wzj.soopin.goods.domain.bo.ProductBo; +import com.wzj.soopin.goods.domain.entity.Product; +import com.wzj.soopin.goods.domain.vo.ProductVO; +import com.wzj.soopin.goods.service.ProductService; +import com.wzj.soopin.goods.service.impl.ProductServiceImpl; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.springframework.web.bind.annotation.*; + +@Tag(name ="商品信息接口列表") +@RestController +@RequestMapping("/app/product") +@RequiredArgsConstructor +public class AppProductController { + + private final ProductServiceImpl service; + private final ProductConvert convert; + private final ProductService productService; + + @Tag(name ="查询商品信息列表") + @PostMapping("page") + public R> page(@RequestBody ProductBo query, Page page) { + Page productCategoryPage = service.page(page,query.toWrapper()); + return R.ok(convert.toVO(productCategoryPage)); + } + + @Tag(name ="获取商品信息详细信息") + @GetMapping(value = "/{id}") + public R getInfo(@PathVariable("id") Long id) { + return R.ok(service.selectById(id)); + } + +} diff --git a/ruoyi-admin/src/main/java/org/dromara/app/AppVersionController.java b/ruoyi-admin/src/main/java/org/dromara/app/AppVersionController.java new file mode 100644 index 000000000..feef243be --- /dev/null +++ b/ruoyi-admin/src/main/java/org/dromara/app/AppVersionController.java @@ -0,0 +1,33 @@ +package org.dromara.app; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.system.domain.SysVersion; +import org.dromara.system.domain.bo.SysVersionBo; +import org.dromara.system.domain.vo.SysVersionVo; +import org.dromara.system.service.ISysVerisonService; +import org.springframework.validation.annotation.Validated; +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; + +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/app/version") +public class AppVersionController { + + + private final ISysVerisonService sysVerisonService; + + @Tag(name ="查询app版本管理") + @PostMapping("/page") + public R> list(@RequestBody SysVersionBo query, Page page){ + return R.ok(sysVerisonService.getList(page,query)); + } + +} diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml index 293597990..789c32b3f 100644 --- a/ruoyi-admin/src/main/resources/application-dev.yml +++ b/ruoyi-admin/src/main/resources/application-dev.yml @@ -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: diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 8bdd06d52..14c9ec0e4 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -185,8 +185,8 @@ tenant: - sys_commission_rate_range - oms_red_packet - oms_red_packet_receive - - commission_template - - commission_rate_range + - sys_commission_template + - sys_commission_rate_range - cont_article - cont_article_category diff --git a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java index db696e515..a1ea11a63 100644 --- a/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java +++ b/ruoyi-common/ruoyi-common-social/src/main/java/org/dromara/common/social/utils/SocialUtils.java @@ -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); diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductCategoryController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductCategoryController.java index c759a2861..452fe957e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductCategoryController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductCategoryController.java @@ -29,16 +29,11 @@ import java.util.List; @RequiredArgsConstructor public class ProductCategoryController extends BaseController { + + private final ProductCategoryServiceImpl service; private final ProductCategoryConvert convert; - @Tag(name ="查询商品分类列表") - @PostMapping("page") - public R> page(@RequestBody ProductCategoryBo query, Page page) { - Page productCategoryPage = service.page(page,query.toWrapper()); - return R.ok(convert.toVO(productCategoryPage)); - } - @Tag(name ="查询商品分类列表") @PostMapping("list") public R> list(@RequestBody ProductCategoryBo query) { diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductController.java index 3e5c26f92..e24c090fe 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/wzj/soopin/goods/controller/ProductController.java @@ -46,13 +46,6 @@ public class ProductController extends BaseController { private final ProductService productService; - @Tag(name ="查询商品信息列表app") - @PostMapping("page") - public R> page(@RequestBody ProductBo query, Page page) { - Page productCategoryPage = service.page(page,query.toWrapper()); - return R.ok(convert.toVO(productCategoryPage)); - } - @Tag(name ="查询商品信息列表") @PostMapping("list") public R> list(@RequestBody ProductBo query, @RequestBody Page page) { diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountBillController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountBillController.java new file mode 100644 index 000000000..8aba2c82d --- /dev/null +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountBillController.java @@ -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(@RequestBody AccountBillBO bo, + @RequestBody Page page) { + Page memberPage = service.page(page,bo.toWrapper()); + return R.ok(convert.toVO(memberPage)); + } + + + @Tag(name = "查询账单列表") + @SaCheckPermission("ums:accountbill:list") + @PostMapping("list") + public R> list(@RequestBody AccountBillBO bo) { + List memberPage = service.list(bo.toWrapper()); + return R.ok(convert.toVO(memberPage)); + } + + @Tag(name ="导出账单") + @SaCheckPermission("ums:accountbill:export") + @PostMapping("export") + public ResponseEntity export(AccountBillBO query) { + List list = service.list(query.toWrapper()); + ExcelUtil util = new ExcelUtil<>(AccountBillVO.class); + return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "账单")); + } + + @Tag(name ="获取账单详情") + @SaCheckPermission("ums:accountbill:query") + @GetMapping(value = "{id}") + public R 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)); + } + + + + +} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountDetailController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountDetailController.java deleted file mode 100644 index abb4019f3..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/AccountDetailController.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.wzj.soopin.member.controller; - -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.wzj.soopin.member.domain.bo.AccountDetailQueryBO; -import com.wzj.soopin.member.domain.vo.AccountDetailVO; -import com.wzj.soopin.member.service.IAccountDetailService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import lombok.RequiredArgsConstructor; -import org.dromara.common.core.domain.R; -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 org.springframework.validation.annotation.Validated; - -/** - * 账户明细查询控制器 - */ -@Tag(name = "账户明细查询") -@RestController -@RequestMapping("/account/detail") -@RequiredArgsConstructor -public class AccountDetailController { - - private final IAccountDetailService accountDetailService; - - /** - * 分页查询账户明细 - */ - @Operation(summary = "根据account_id分页查询账户明细") - @PostMapping("/page") - public R> queryAccountDetailPage(@RequestBody AccountDetailQueryBO queryBO, - @RequestBody Page page) { - if (page != null) { - queryBO.setPageNum(page.getCurrent()); - queryBO.setPageSize(page.getSize()); - } - IPage result = accountDetailService.queryAccountDetailPage(queryBO); - return R.ok(result); - } - - /** - * 查询当前登录用户的账户明细 - */ - @Operation(summary = "查询当前登录用户的账户明细") - @PostMapping("/current") - public R> queryCurrentUserAccountDetailPage(@Validated @RequestBody AccountDetailQueryBO queryBO) { - IPage result = accountDetailService.queryCurrentUserAccountDetailPage(queryBO); - return R.ok(result); - } -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/MemberAccountChangeRecordController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/MemberAccountChangeRecordController.java deleted file mode 100644 index 2f91f2edc..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/controller/MemberAccountChangeRecordController.java +++ /dev/null @@ -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> list(@RequestBody MemberAccountChangeRecordBO bo, - @RequestBody Page page) { - Page 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 export(MemberAccountChangeRecordBO query) { - List list = service.list(query.toWrapper()); - ExcelUtil util = new ExcelUtil<>(MemberAccountChangeRecordVO.class); - return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "会员变动记录")); - } - - @Tag(name ="获取变动记录") - @SaCheckPermission("ums:accountchange:query") - @GetMapping(value = "{id}") - public R 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)); - } - - -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/AccountBillConvert.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/AccountBillConvert.java new file mode 100644 index 000000000..08ae5e965 --- /dev/null +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/AccountBillConvert.java @@ -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 { + +} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/MemberAccountChangeRecordConvert.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/MemberAccountChangeRecordConvert.java deleted file mode 100644 index bf584b814..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/convert/MemberAccountChangeRecordConvert.java +++ /dev/null @@ -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 { - -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/MemberAccountChangeRecordBO.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/AccountBillBO.java similarity index 50% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/MemberAccountChangeRecordBO.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/AccountBillBO.java index cc1b3537c..d8a86f1c1 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/MemberAccountChangeRecordBO.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/bo/AccountBillBO.java @@ -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 { +public class AccountBillBO extends BaseBO { private Long id; - - @Schema(description ="MEMBER_ID") - private Long memberId; - @Schema(description = "账户id") private Long accountId; @Schema(description ="余额") @@ -53,10 +45,10 @@ public class MemberAccountChangeRecordBO extends BaseBO toWrapper() { - return new LambdaQueryWrapper() - .eq(getMemberId() != null,MemberAccountChangeRecord::getMemberId,memberId) - .eq(getChangeType() != null,MemberAccountChangeRecord::getChangeType,changeType) - .eq(getSource() != null,MemberAccountChangeRecord::getSource,source); + public LambdaQueryWrapper toWrapper() { + return super.toWrapper() + .eq(getChangeType() != null, AccountBill::getChangeType,changeType) + .eq(getAccountId() != null, AccountBill::getAccountId,accountId) + .eq(getSource() != null, AccountBill::getSource,source); } } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/MemberAccountChangeRecord.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/AccountBill.java similarity index 76% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/MemberAccountChangeRecord.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/AccountBill.java index 8416eea53..eba2642ed 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/MemberAccountChangeRecord.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/po/AccountBill.java @@ -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,13 +44,13 @@ 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 ="来源") + @Schema(description ="来源 ") private Integer source; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/MemberAccountChangeRecordVO.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/AccountBillVO.java similarity index 78% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/MemberAccountChangeRecordVO.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/AccountBillVO.java index c58e638f2..33714dec7 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/MemberAccountChangeRecordVO.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/domain/vo/AccountBillVO.java @@ -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,19 +10,17 @@ 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; - @Schema(description ="MEMBER_ID") - @TableId(value="member_id", type = IdType.ASSIGN_ID) - private Long memberId; + private Long accountId; @Schema(description ="余额") diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordSourceEnum.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillChangeTypeEnum.java similarity index 51% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordSourceEnum.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillChangeTypeEnum.java index f653678ba..517d1c042 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordSourceEnum.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillChangeTypeEnum.java @@ -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; } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordChangeTypeEnum.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillSourceEnum.java similarity index 60% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordChangeTypeEnum.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillSourceEnum.java index 7b42f0c1f..10045a602 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/MemberAccountChangeRecordChangeTypeEnum.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/enums/AccountBillSourceEnum.java @@ -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; } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/MemberAccountChangeRecordMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/AccountBillMapper.java similarity index 79% rename from ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/MemberAccountChangeRecordMapper.java rename to ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/AccountBillMapper.java index 0a623bb2b..9c1efca30 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/MemberAccountChangeRecordMapper.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/mapper/AccountBillMapper.java @@ -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 { +public interface AccountBillMapper extends BaseMapperPlus { /** * 分页查询账户明细(关联账户表获取账户类型) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IAccountBillService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IAccountBillService.java new file mode 100644 index 000000000..6d18c9090 --- /dev/null +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IAccountBillService.java @@ -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 { + +} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberAccountChangeRecordService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberAccountChangeRecordService.java deleted file mode 100644 index ccc29928f..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberAccountChangeRecordService.java +++ /dev/null @@ -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 { - -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberService.java index 3646b39f1..0f0bec90a 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberService.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/IMemberService.java @@ -67,4 +67,7 @@ public interface IMemberService extends IService { MemberVO getLoginMemberInfo(); + + + String updateWechat(MemberBO bo); } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountBillServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountBillServiceImpl.java new file mode 100644 index 000000000..5184c273c --- /dev/null +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountBillServiceImpl.java @@ -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 implements IAccountBillService { + + + + + +} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountDetailServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountDetailServiceImpl.java deleted file mode 100644 index 678b4735a..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/AccountDetailServiceImpl.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.wzj.soopin.member.service.impl; - -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -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.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; - -import java.time.format.DateTimeFormatter; -import java.util.List; - -/** - * 账户明细查询服务实现类 - */ -@Slf4j -@Service -@RequiredArgsConstructor -public class AccountDetailServiceImpl implements IAccountDetailService { - - private final MemberAccountChangeRecordMapper accountChangeRecordMapper; - - @Override - public IPage queryAccountDetailPage(AccountDetailQueryBO queryBO) { - // 构建分页对象 - Page page = new Page<>(queryBO.getPageNum(), queryBO.getPageSize()); - - // 处理时间格式 - String startTime = null; - String endTime = null; - if (queryBO.getStartTime() != null) { - startTime = queryBO.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); - } - 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(), - queryBO.getSource(), startTime, endTime); - - // 查询数据 - IPage result = accountChangeRecordMapper.selectAccountDetailPage( - page, queryBO.getMemberId(), queryBO.getAccountId(), - queryBO.getChangeType(), queryBO.getSource(), startTime, endTime - ); - - // 补充账户类型和用户类型描述 - List 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; - } - - @Override - public Integer getUserTypeByAccountType(Integer accountType) { - return UserTypeEnum.getUserTypeByAccountType(accountType); - } - - @Override - public IPage queryCurrentUserAccountDetailPage(AccountDetailQueryBO queryBO) { - // 获取当前登录用户信息 - LoginUser loginUser = LoginHelper.getLoginUser(); - if (loginUser == null) { - throw new RuntimeException("用户未登录"); - } - - // 设置当前登录用户的会员ID - queryBO.setMemberId(loginUser.getUserId()); - - // 调用原有的分页查询方法 - return queryAccountDetailPage(queryBO); - } -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberAccountChangeRecordServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberAccountChangeRecordServiceImpl.java deleted file mode 100644 index 952072d79..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberAccountChangeRecordServiceImpl.java +++ /dev/null @@ -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 implements IMemberAccountChangeRecordService { - - - - - -} diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberServiceImpl.java index f9a85b3be..2d9b2d074 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/MemberServiceImpl.java @@ -269,4 +269,13 @@ public class MemberServiceImpl extends ServiceImpl 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; + } } diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/AccountBillMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/AccountBillMapper.xml new file mode 100644 index 000000000..929e80d72 --- /dev/null +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/AccountBillMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberAccountChangeRecordMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberAccountChangeRecordMapper.xml deleted file mode 100644 index 8c8266abc..000000000 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberAccountChangeRecordMapper.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/ums/MemberAccountChangeRecord.xml b/ruoyi-modules/ruoyi-member/src/main/resources/ums/MemberAccountChangeRecord.xml index 636a22651..7810c009f 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/ums/MemberAccountChangeRecord.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/ums/MemberAccountChangeRecord.xml @@ -1,5 +1,5 @@ - + diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java index 8d20f3e7b..3bb8fc607 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/controller/OrderController.java @@ -158,4 +158,11 @@ public class OrderController extends BaseController { } } + @Tag(name = "订单退款") + @GetMapping("/refund") + public R refund(@RequestParam Long orderId, @RequestParam(required = false) String reason) { + log.info("订单退款开始,订单ID: {}", orderId); + return service.refund(orderId,reason); + } + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/AftersaleServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/AftersaleServiceImpl.java index 54b2677d0..911978bc5 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/AftersaleServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/AftersaleServiceImpl.java @@ -386,6 +386,7 @@ public class AftersaleServiceImpl extends ServiceImpl implements private final MemberWechatMapper memberWechatMapper; private final WechatPaymentHistoryMapper wechatPaymentHistoryMapper; private final RedisService redisService; + private final AftersaleMapper aftersaleMapper; @Autowired(required = false) @@ -519,5 +520,48 @@ public class OrderServiceImpl extends ServiceImpl implements } } + /** + * 处理退款逻辑 + * @param orderId 订单ID + * @return 操作结果 + */ + public R refund(Long orderId, String reason) { + if (orderId == null) { + return R.fail("订单ID不能为空"); + } + + try { + // 根据订单ID获取订单信息 + Order order = orderMapper.selectById(orderId); + if (order == null) { + return R.fail("未找到对应订单"); + } + if (order.getAftersaleStatus() !=1){ + return R.fail("订单未处于待售后状态"); + } + + // // 设置售后状态 + order.setAftersaleStatus(2); + orderMapper.updateById(order); + + // 创建售后记录 + Aftersale aftersale = new Aftersale(); + aftersale.setMemberId(order.getMemberId()); + aftersale.setOrderId(orderId); + aftersale.setReturnAmount(order.getPayAmount()); + aftersale.setQuantity(1); + aftersale.setType(1); + aftersale.setStatus(0); + aftersale.setReason(reason); + aftersale.setAuthFlag(0); + + aftersaleMapper.insert(aftersale); + + return R.ok("退款申请已提交",aftersale); + } catch (Exception e) { + log.error("处理退款时出错,订单ID: " + orderId, e); + return R.fail("退款处理失败: " + e.getMessage()); + } + } } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/RedPacketServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/RedPacketServiceImpl.java index 00a6471e7..8dc49dc67 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/RedPacketServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/wzj/soopin/order/service/impl/RedPacketServiceImpl.java @@ -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 redisTemplate; // Redis锁前缀 @@ -49,10 +51,6 @@ public class RedPacketServiceImpl extends ServiceImpl toWrapper() { + return new LambdaQueryWrapper() + .eq(platformType != null, SysVersion::getPlatformType, platformType) + .eq(versionCode != null, SysVersion::getVersionCode, versionCode) + .eq(versionName != null, SysVersion::getVersionName, versionName) + .eq(status != null, SysVersion::getStatus, status); + } } diff --git a/ruoyi-modules/ruoyi-transaction/src/main/java/com/wzj/soopin/transaction/service/impl/WithdrawServiceImpl.java b/ruoyi-modules/ruoyi-transaction/src/main/java/com/wzj/soopin/transaction/service/impl/WithdrawServiceImpl.java index 59c915f7b..f601d2367 100644 --- a/ruoyi-modules/ruoyi-transaction/src/main/java/com/wzj/soopin/transaction/service/impl/WithdrawServiceImpl.java +++ b/ruoyi-modules/ruoyi-transaction/src/main/java/com/wzj/soopin/transaction/service/impl/WithdrawServiceImpl.java @@ -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 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 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 {