From a3e8881ba50d8b13793ca6fb6d82f5b6b6a860c2 Mon Sep 17 00:00:00 2001 From: fxh <1763817137@qq.com> Date: Tue, 12 Aug 2025 15:40:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/goods/ProductMapper.xml | 12 +++++++-- .../domain/po/MemberAccountChangeRecord.java | 1 + .../service/impl/RedPacketServiceImpl.java | 6 ++--- .../controller/SysVersionController.java | 17 ++++++------- .../org/dromara/system/domain/SysTenant.java | 7 ++++-- .../system/domain/SysTenantAccount.java | 4 +-- .../system/domain/bo/SysVersionBo.java | 3 +++ .../dromara/system/domain/dto/TenantDTO.java | 6 +++++ .../system/mapper/SysTenantMapper.java | 3 +++ .../system/mapper/SysVerisonMapper.java | 13 ++++++++-- .../system/service/ISysVerisonService.java | 3 ++- .../service/impl/SysTenantServiceImpl.java | 25 ++++++++++++++++++- .../service/impl/SysVerisonServiceImpl.java | 24 +++++++++++++++--- .../mapper/system/SysVersionMapper.xml | 3 +++ .../service/impl/WithdrawServiceImpl.java | 2 +- 15 files changed, 102 insertions(+), 27 deletions(-) diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml index 29463adff..e7a86ae89 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ProductMapper.xml @@ -56,7 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT p.*, b.name AS brandName, @@ -64,7 +64,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" t.store_name AS contactUserName, t.contact_phone AS contactPhone, o.distribution AS distribution, - pc.name AS productCategoryName + pc.name AS productCategoryName, + s.id AS sku_id, + s.out_sku_id, + s.price, + s.pic, + s.stock, + s.sp_data, + s.product_id FROM pms_product p LEFT JOIN pms_brand b ON p.brand_id = b.id @@ -72,6 +79,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" LEFT JOIN oms_order_item oi ON p.id = oi.product_id LEFT JOIN oms_order o ON oi.order_id = o.id LEFT JOIN pms_product_category pc ON p.category_id = pc.id + LEFT JOIN pms_sku s ON p.id = s.product_id WHERE p.tenant_id = #{tenantId} AND p.name LIKE CONCAT('%', #{query.nameLike}, '%') 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/MemberAccountChangeRecord.java index 46483196f..8416eea53 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/MemberAccountChangeRecord.java @@ -27,6 +27,7 @@ public class MemberAccountChangeRecord extends BaseAudit { @Schema(description ="会员id") private Long memberId; + @Schema(description = "账户id") private Long accountId; 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 d0000a8a6..00a6471e7 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 @@ -208,7 +208,7 @@ public class RedPacketServiceImpl extends ServiceImpl> page(Page page) { - return R.ok(sysVerisonService.getPage(page)); - } - @Tag(name ="查询app版本管理") @PostMapping("/list") @@ -40,11 +34,14 @@ public class SysVersionController { return R.ok(sysVerisonService.getList(page,query)); } - @Tag(name = "新增app版本管理") - @Log(title = "新增app版本管理", businessType = BusinessType.INSERT) + @Tag(name = "新增版本") + @Log(title = "版本管理", businessType = BusinessType.INSERT) @PostMapping("/add") - public R add(@RequestBody SysVersion sysVersion) { - return R.ok(sysVerisonService.save(sysVersion)); + public R add(@Validated @RequestBody SysVersion sysVersion) { + if (!sysVerisonService.add(sysVersion)) { + return R.fail("新增版本失败"); + } + return R.ok("新增成功"); } @Tag(name ="修改状态") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java index e18424169..c5712364a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenant.java @@ -127,8 +127,11 @@ public class SysTenant extends BaseEntity { @Schema(description = "类型(0.店铺 1.代理 2.推广人)") private Integer type; - @Schema(description = "代理商") - private Long agencyId; + @Schema(description = "所属代理商") + private Long agencyTenantId; + + @Schema(description = "所属推广人") + private Long promoterTenantId; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantAccount.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantAccount.java index f6ef157c3..dea7bb024 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantAccount.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysTenantAccount.java @@ -18,12 +18,12 @@ public class SysTenantAccount extends BaseAudit { private BigDecimal moneyBalance; @Schema(description = "钱包余额") private BigDecimal wallet; - @Schema(description = "累计收益") + @Schema(description = "营收") private BigDecimal revenue; @Schema(description = "创建人") private Long createBy; @Schema(description = "更新人") private Long updateBy; - @Schema(description = "账户类型 1商家 2代理 3平台") + @Schema(description = "账户类型(0.店铺 1.代理 2.推广人)") private Integer type; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysVersionBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysVersionBo.java index 19660399f..d64a12717 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysVersionBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysVersionBo.java @@ -14,4 +14,7 @@ public class SysVersionBo { @Schema(description = "版本名称") private String versionName; + + @Schema(description = "状态") + private Integer status; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/dto/TenantDTO.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/dto/TenantDTO.java index fe47b5807..c15bab57d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/dto/TenantDTO.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/dto/TenantDTO.java @@ -208,4 +208,10 @@ public class TenantDTO { @Schema(description = "代理名称") private String agencyContactUserName; + + @Schema(description = "所属代理商") + private Long agencyTenantId; + + @Schema(description = "所属推广人") + private Long promoterTenantId; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantMapper.java index aedf1d9d1..bceafc5ad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysTenantMapper.java @@ -73,4 +73,7 @@ public interface SysTenantMapper extends BaseMapperPlus int batchDeleteTenantExtendByStoreIds(List ids); int batchDeleteTenantByIds(List ids); + + @Select("SELECT * FROM sys_tenant WHERE tenant_id = #{tenantId}") + SysTenant selectByBelongId(Long belongId); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysVerisonMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysVerisonMapper.java index 914454cd9..bc2140d14 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysVerisonMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysVerisonMapper.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.Update; import org.dromara.system.domain.SysVersion; import org.dromara.system.domain.bo.SysVersionBo; import org.dromara.system.domain.dto.VersionDTO; @@ -16,6 +17,14 @@ public interface SysVerisonMapper extends BaseMapper { IPage getList(@Param("page") Page page, @Param("query") SysVersionBo query); - @Select("SELECT v.version_code,v.download_url FROM sys_version as v") - Page getPage(Page page); + + @Update("UPDATE sys_version SET status = 0 WHERE platform_type = #{platformType} AND status = 1") + void disableOtherVersions(String platformType); + + @Update("UPDATE sys_version SET status = 0 " + + "WHERE platform_type = #{platformType} " + + "AND status = 1 " + + "AND id != #{currentId}") // 排除当前正在修改的版本 + void disableOtherVersion(@Param("platformType") String platformType, + @Param("currentId") Long currentId); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysVerisonService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysVerisonService.java index 9f4b5f1eb..541037b65 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysVerisonService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysVerisonService.java @@ -14,5 +14,6 @@ public interface ISysVerisonService extends IService { SysVersion updateStatus(Long id, Integer status); - Page getPage(Page page); + + boolean add(SysVersion sysVersion); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java index a661d02ca..08f425b9b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysTenantServiceImpl.java @@ -124,10 +124,30 @@ public class SysTenantServiceImpl implements ISysTenantService { @Override @Transactional(rollbackFor = Exception.class) public Boolean insertByBo(SysTenantExtendBo bo) { + + // 处理sys_tenant表数据 SysTenant tenant = new SysTenant(); Long belongId = Long.valueOf(LoginHelper.getTenantId()); + SysTenant sysTenant = baseMapper.selectByBelongId(belongId); + + if (bo.getExpiryDate() != null && sysTenant.getType() != 1){ + + } + + if (bo.getExpiryDate() != null) { + + if (sysTenant != null) { + Integer type = sysTenant.getType(); + if (type != 1) { + throw new RuntimeException("只有代理能添加推广人"); + } + } else { + throw new RuntimeException("未查询到对应 belongId 的租户信息"); + } + } + // 生成租户ID List tenantIds = baseMapper.selectObjs( @@ -164,7 +184,10 @@ public class SysTenantServiceImpl implements ISysTenantService { tenant.setQualification(bo.getQualification()); tenant.setType(bo.getType()); if (bo.getType() == 2){ - tenant.setAgencyId(bo.getId()); + tenant.setAgencyTenantId(belongId); + } + if (bo.getType() == 0){ + tenant.setPromoterTenantId(belongId); } // 插入sys_tenant表 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysVerisonServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysVerisonServiceImpl.java index 2643bd3b8..0b077dac0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysVerisonServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysVerisonServiceImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.exception.ServiceException; import org.dromara.system.domain.SysVersion; import org.dromara.system.domain.bo.SysVersionBo; import org.dromara.system.domain.dto.VersionDTO; @@ -12,6 +13,7 @@ import org.dromara.system.domain.vo.SysVersionVo; import org.dromara.system.mapper.SysVerisonMapper; import org.dromara.system.service.ISysVerisonService; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; @Slf4j @RequiredArgsConstructor @@ -26,18 +28,34 @@ public class SysVerisonServiceImpl extends ServiceImpl getPage(Page page) { - return sysVerisonMapper.getPage(page); + public boolean add(SysVersion sysVersion) { + // 检查是否设置启用状态 + if (sysVersion.getStatus() == 1) { + // 禁用其他版本 + sysVerisonMapper.disableOtherVersions(sysVersion.getPlatformType()); + } + return super.save(sysVersion); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysVersionMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysVersionMapper.xml index 4c515f9a0..afdf1d3a7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysVersionMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysVersionMapper.xml @@ -18,6 +18,9 @@ AND v.platform_type LIKE CONCAT('%', #{query.platformType}, '%') + + AND v.status = #{query.status} + ORDER BY v.version_code asc 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 361744027..59c915f7b 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 @@ -107,7 +107,7 @@ public class WithdrawServiceImpl extends ServiceImpl i memberAccountService.updateById(memberAccount.toBuilder().wallet(balance.subtract(finalBalance)).build()); //生成账户变动记录bh MemberAccountChangeRecord memberAccountChangeRecord = MemberAccountChangeRecord.builder() - .memberId(withdraw.getMemberId()) + .accountId(withdraw.getMemberId()) .moneyBalance(finalBalance) .beforeBalance(balance) .afterBalance(yishengAccountVO.getBalance())