From a823bffa3800426d0a908b9397a8ea7586b5be21 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 18 十二月 2024 18:00:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/PointChangeType.java | 38 ++
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java | 132 +++++++--
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java | 76 +----
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java | 55 +--
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java | 3
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/PointSettingController.java | 22 +
ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml | 40 +-
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/TechnicianSubscribeMapper.java | 5
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionStatistics.java | 2
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java | 20 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TechnicianSubscribeServiceImpl.java | 6
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/WithdrawalAuditStatus.java | 2
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java | 7
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java | 12
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/BalanceChangeRecordMapper.java | 5
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/TechnicianSubscribeService.java | 4
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopBalanceStatementController.java | 8
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java | 2
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianController.java | 48 +++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianSubscribeController.java | 20 +
/dev/null | 37 --
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/BalanceChangeRecordController.java | 40 --
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/BalanceChangeRecord.java | 6
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/PointSettingDto.java | 11
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopPointMapper.xml | 72 ++--
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java | 4
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TechnicianSubscribeMapper.xml | 34 ++
ruoyi-service/ruoyi-account/src/main/resources/mapper/account/BalanceChangeRecordMapper.xml | 67 +---
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopPointMapper.java | 7
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/UserPointMapper.java | 5
30 files changed, 467 insertions(+), 323 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java
index 5479c1b..9499843 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java
@@ -179,11 +179,23 @@
@TableField("total_register_point")
private Integer totalRegisterPoint;
- @ApiModelProperty(value = "做工积分总数")
- @TableField("total_work_point")
- private Integer totalWorkPoint;
+// @ApiModelProperty(value = "做工积分总数")
+// @TableField("total_work_point")
+// private Integer totalWorkPoint;
- @ApiModelProperty(value = "业绩积分总数")
+ @ApiModelProperty(value = "每日分享积分")
+ @TableField("total_share_point")
+ private Integer totalSharePoint;
+
+ @ApiModelProperty(value = "每日签到积分")
+ @TableField("total_sign_point")
+ private Integer totalSignPoint;
+
+ @ApiModelProperty(value = "使用时长积分")
+ @TableField("total_hour_point")
+ private Integer totalHourPoint;
+
+ @ApiModelProperty(value = "技师业绩积分总数")
@TableField("total_performance_point")
private Integer totalPerformancePoint;
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/BalanceChangeRecord.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/BalanceChangeRecord.java
index 1b8ccc4..44f58b2 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/BalanceChangeRecord.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/BalanceChangeRecord.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -34,12 +35,14 @@
private Long orderId;
@ApiModelProperty("类型:1充值2提现3红包4分佣5商城购物6订单取消回退")
+ @Excel(name = "变更类型", readConverterExp = "1=充值,2=提现,3=红包,4=分佣,5=商城购物,6=订单取消回退")
private Integer changeType;
@ApiModelProperty("变更前金额")
private BigDecimal beforeAmount;
@ApiModelProperty("变更金额")
+ @Excel(name = "变更数量")
private BigDecimal changeAmount;
@ApiModelProperty("变更后金额")
@@ -49,14 +52,17 @@
private Integer delFlag;
@ApiModelProperty("添加时间")
+ @Excel(name = "变更时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
@TableField(exist = false)
@ApiModelProperty("消费用户名称")
+ @Excel(name = "用户名称")
private String userName;
@TableField(exist = false)
@ApiModelProperty("消费用户手机号")
+ @Excel(name = "联系电话")
private String userPhone;
@TableField(exist = false)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
index fb58e18..ad2a4a3 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
@@ -37,7 +37,8 @@
@TableId("id")
private Long id;
- @ApiModelProperty(value = "变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 5 = 门店业绩积分 6 =门店返佣积分7=技师业绩积分8 =转赠积分 9 =做工积分 10 =注册积分)")
+ @ApiModelProperty(value = "变动类型(1-消费,2-返佣,3-拉新,4-每日分享,5-每日签到,6-使用时长, 7-注册积分, 8-门店业绩," +
+ "9-门店返佣,14-下级门店返佣,10-技师业绩,11-兑换商品,12-他人赠送,13-赠与他人)")
@TableField("type")
private Integer type;
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java
index 49eda6f..cf885bf 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -41,6 +42,7 @@
@ApiModelProperty(value = "变动类型(1=门店业绩,2=门店返佣,3=下级门店返佣)")
@TableField("type")
+ @Excel(name = "变动类型", readConverterExp = "1=门店业绩,2=门店返佣,3=下级门店返佣")
private Integer type;
@ApiModelProperty(value = "历史余额")
@@ -49,10 +51,12 @@
@ApiModelProperty(value = "变动金额")
@TableField("variable_point")
+ @Excel(name = "变动金额")
private Integer variablePoint;
@ApiModelProperty(value = "变动时间")
@TableField("create_time")
+ @Excel(name = "变动时间")
private LocalDateTime createTime;
@ApiModelProperty(value = "变动用户id")
@@ -65,14 +69,17 @@
@ApiModelProperty(value = "门店名称")
@TableField(exist = false)
+ @Excel(name = "门店名称")
private String shopName;
@ApiModelProperty(value = "店长姓名")
@TableField(exist = false)
+ @Excel(name = "店长姓名")
private String shopLeaderName;
@ApiModelProperty(value = "联系电话")
@TableField(exist = false)
+ @Excel(name = "联系电话")
private String phone;
@TableField(exist = false)
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/PointChangeType.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/PointChangeType.java
new file mode 100644
index 0000000..c6aedee
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/PointChangeType.java
@@ -0,0 +1,38 @@
+package com.ruoyi.other.api.enums;
+
+import lombok.Getter;
+
+@Getter
+public enum PointChangeType {
+// 1-消费,2-返佣,3-拉新,4-每日分享,5-每日签到,6-使用时长, 7-注册积分, 8-门店业绩,9-门店返佣,10-技师业绩,11-兑换商品,12-他人赠送,13-赠与他人
+ CONSUME(1, "消费"),
+ REBATE(2, "返佣"),
+ PULL_NEW(3, "拉新"),
+ SHARE(4, "每日分享"),
+ SIGN_IN(5, "每日签到"),
+ USE_TIME(6, "使用时长"),
+ REGISTER(7, "注册积分"),
+ SHOP_ACHIEVEMENT(8, "门店业绩"),
+ SHOP_REBATE(9, "门店返佣"),
+ JUNIOR_SHOP_REBATE(14, "下级门店返佣"),
+ TECHNICIAN_ACHIEVEMENT(10, "技师业绩"),
+ EXCHANGE_GOODS(11, "兑换商品"),
+ OTHER_GIFT(12, "他人赠送"),
+ GIFT(13, "赠与他人");
+ private final int code;
+ private final String description;
+
+ PointChangeType(int code, String description) {
+ this.code = code;
+ this.description = description;
+ }
+
+ public static PointChangeType fromCode(int code) {
+ for (PointChangeType type : values()) {
+ if (type.getCode() == code) {
+ return type;
+ }
+ }
+ throw new IllegalArgumentException("Invalid code: " + code);
+ }
+}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/WithdrawalAuditStatus.java
similarity index 90%
rename from ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java
rename to ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/WithdrawalAuditStatus.java
index 4788fd6..bf06e86 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/enums/WithdrawalAuditStatus.java
@@ -1,4 +1,4 @@
-package com.ruoyi.account.enums;
+package com.ruoyi.other.api.enums;
import lombok.Getter;
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java
index 3d4c11e..0548e0d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java
@@ -97,11 +97,11 @@
@ApiOperation(value = "个人信息-修改密码")
@Log(title = "个人信息", businessType = BusinessType.UPDATE)
@PostMapping("/updatePwd")
- public AjaxResult updatePwd(String oldPassword, String newPassword)
+ public AjaxResult updatePwd(String username,String oldPassword, String newPassword)
{
System.err.println(oldPassword);
System.err.println(newPassword);
- String username = SecurityUtils.getUsername();
+// String username = SecurityUtils.getUsername();
SysUser user = userService.selectUserByUserName(username);
String password = user.getPassword();
if (!SecurityUtils.matchesPassword(oldPassword, password))
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/BalanceChangeRecordController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/BalanceChangeRecordController.java
index e43b425..440d198 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/BalanceChangeRecordController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/BalanceChangeRecordController.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.account.api.model.BalanceChangeRecord;
import com.ruoyi.account.dto.BalanceQuery;
-import com.ruoyi.account.excel.BalanceChangeRecordEX;
import com.ruoyi.account.service.BalanceChangeRecordService;
import com.ruoyi.account.vo.CommissionStatistics;
import com.ruoyi.common.core.domain.R;
@@ -15,8 +14,6 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
-import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
import java.util.List;
/**
@@ -70,41 +67,8 @@
CommissionStatistics commissionStatistics1 = balanceChangeRecordService.commissionStatistics(Page.of(1, Integer.MAX_VALUE), balanceChangeRecord);
IPage<BalanceChangeRecord> userPointPage = commissionStatistics1.getUserPointPage();
List<BalanceChangeRecord> userPointList = userPointPage.getRecords();
- List<BalanceChangeRecordEX> userPointExList = new ArrayList<>();
- for (BalanceChangeRecord balanceChangeRecord1 : userPointList) {
- BalanceChangeRecordEX balanceChangeRecordEX = new BalanceChangeRecordEX();
- balanceChangeRecordEX.setUserName(balanceChangeRecord1.getUserName());
- balanceChangeRecordEX.setPhone(balanceChangeRecord1.getUserPhone());
- balanceChangeRecordEX.setChangeTime(balanceChangeRecord1.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
- balanceChangeRecordEX.setChangeNum(balanceChangeRecord1.getAfterAmount().toString());
- Integer type = balanceChangeRecord1.getChangeType();
- // 类型:1充值2提现3红包4分佣5商城购物6订单取消回退
- switch (type) {
- case 1:
- balanceChangeRecordEX.setType("充值");
- break;
- case 2:
- balanceChangeRecordEX.setType("提现");
- break;
- case 3:
- balanceChangeRecordEX.setType("红包");
- break;
- case 4:
- balanceChangeRecordEX.setType("分佣");
- break;
- case 5:
- balanceChangeRecordEX.setType("商城购物");
- break;
- case 6:
- balanceChangeRecordEX.setType("订单取消回退");
- break;
- default:
- balanceChangeRecordEX.setType("未知积分");
- }
- userPointExList.add(balanceChangeRecordEX);
- }
- ExcelUtil<BalanceChangeRecordEX> util = new ExcelUtil<>(BalanceChangeRecordEX.class);
- util.exportExcel(response, userPointExList, "用户分佣统计");
+ ExcelUtil<BalanceChangeRecord> util = new ExcelUtil<>(BalanceChangeRecord.class);
+ util.exportExcel(response, userPointList, "用户分佣统计");
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java
deleted file mode 100644
index 7b2f61b..0000000
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.ruoyi.account.enums;
-
-import lombok.Getter;
-
-@Getter
-public enum PointChangeType {
- CONSUME(1, "消费积分"),
- COMMISSION_RETURN(2, "返佣积分"),
- NEW_USER_REFERRAL(3, "拉新人积分"),
- EXCHANGE_GOODS(4, "兑换商品"),
- STORE_PERFORMANCE(5, "门店业绩积分"),
- STORE_COMMISSION_RETURN(6, "门店返佣积分"),
- TECHNICIAN_PERFORMANCE(7, "技师业绩积分"),
- TRANSFER_POINTS(8, "转赠积分"),
- WORK_PERFORMANCE(9, "做工积分"),
- REGISTRATION(10, "注册积分");
-
- private final int code;
- private final String description;
-
- PointChangeType(int code, String description) {
- this.code = code;
- this.description = description;
- }
-
- public static PointChangeType fromCode(int code) {
- for (PointChangeType type : values()) {
- if (type.getCode() == code) {
- return type;
- }
- }
- throw new IllegalArgumentException("Invalid code: " + code);
- }
-}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/BalanceChangeRecordEX.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/BalanceChangeRecordEX.java
deleted file mode 100644
index a81fee3..0000000
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/BalanceChangeRecordEX.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.ruoyi.account.excel;
-
-import com.ruoyi.common.core.annotation.Excel;
-import lombok.Data;
-
-@Data
-public class BalanceChangeRecordEX {
- @Excel(name = "用户名称")
- private String userName;
-
- @Excel(name = "联系电话")
- private String phone;
-
- @Excel(name = "变更类型")
- private String type;
-
- @Excel(name = "变更时间")
- private String changeTime;
-
- @Excel(name = "变更数量")
- private String changeNum;
-}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/UserPointEx.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/UserPointEx.java
deleted file mode 100644
index 7932861..0000000
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/excel/UserPointEx.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.ruoyi.account.excel;
-
-import com.ruoyi.common.core.annotation.Excel;
-import lombok.Data;
-
-@Data
-public class UserPointEx {
-
- /**
- * 用户名称
- */
- @Excel(name = "用户名称")
- private String userName;
-
- /**
- * 联系电话
- */
- @Excel(name = "联系电话")
- private String phone;
-
- /**
- * 变更类型
- */
- @Excel(name = "变更类型")
- private String type;
-
- /**
- * 变更时间
- */
- @Excel(name = "变更时间")
- private String changeTime;
-
- /**
- * 变更数量
- */
- @Excel(name = "变更数量")
- private String changeNum;
-}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/BalanceChangeRecordMapper.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/BalanceChangeRecordMapper.java
index 19d0672..70ef058 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/BalanceChangeRecordMapper.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/BalanceChangeRecordMapper.java
@@ -13,8 +13,9 @@
public interface BalanceChangeRecordMapper extends BaseMapper<BalanceChangeRecord> {
IPage<BalanceChangeRecord> pageList(@Param("page") Page<BalanceChangeRecord> page,@Param("agentQuery") BalanceQuery agentQuery);
+
+ List<BalanceChangeRecord> selectBalanceChangeRecordList(@Param("changeRecord") BalanceChangeRecord balanceChangeRecord);
+
IPage<BalanceChangeRecord> queryCommissionStatistics(@Param("page") Page<BalanceChangeRecord> page,
@Param("changeRecord") BalanceChangeRecord changeRecord);
-
- List<UserPoint> findLatestChangeByType(BalanceChangeRecord balanceChangeRecord);
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/UserPointMapper.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/UserPointMapper.java
index 14618dc..8daeb5c 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/UserPointMapper.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/UserPointMapper.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ruoyi.account.api.model.UserPoint;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -18,5 +19,7 @@
List<UserPoint> findLatestUserPointByTypeForUser(Long userId);
- IPage<UserPoint> queryUserPointPage(IPage<UserPoint> page, UserPoint userPoint);
+ IPage<UserPoint> queryUserPointPage(@Param("page") IPage<UserPoint> page,@Param("userPoint") UserPoint userPoint);
+
+ List<UserPoint> selectUserPoint(@Param("userPoint") UserPoint userPoint);
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
index 850405b..1a3ca07 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
@@ -14,12 +14,15 @@
import com.ruoyi.account.service.BalanceChangeRecordService;
import com.ruoyi.account.vo.CommissionStatistics;
import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.other.api.domain.ShopPoint;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.math.RoundingMode;
import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
@Service
@@ -38,9 +41,14 @@
@Override
public CommissionStatistics commissionStatistics(Page<BalanceChangeRecord> page, BalanceChangeRecord balanceChangeRecord) {
+ List<BalanceChangeRecord> balanceChangeRecordList = this.baseMapper.selectBalanceChangeRecordList(balanceChangeRecord);
+ BigDecimal totalCommission = balanceChangeRecordList.stream()
+ .filter(item -> !(item.getChangeType().equals(2) && item.getChangeType().equals(5)))
+ .map(BalanceChangeRecord::getChangeAmount)
+ .reduce(BigDecimal.ZERO, BigDecimal::add)
+ .setScale(2, RoundingMode.HALF_UP);
IPage<BalanceChangeRecord> balanceChangeRecordIPage = this.baseMapper.queryCommissionStatistics(page, balanceChangeRecord);
-// return new CommissionStatistics(totalCommission, changeRecordPage);
- return null;
+ return new CommissionStatistics(totalCommission, balanceChangeRecordIPage);
}
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
index 056f483..f2fc4eb 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
@@ -7,7 +7,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.account.api.model.UserPoint;
-import com.ruoyi.account.enums.PointChangeType;
+import com.ruoyi.other.api.enums.PointChangeType;
import com.ruoyi.account.mapper.UserPointMapper;
import com.ruoyi.account.service.AppUserService;
import com.ruoyi.account.service.PointSettingService;
@@ -16,12 +16,14 @@
import com.ruoyi.account.vo.UserPointDetailVO;
import com.ruoyi.account.vo.UserPointStatistics;
import com.ruoyi.account.vo.UserPointVO;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.PhoneNumberValidator;
-import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.other.api.domain.PointSetting;
+import com.ruoyi.other.api.domain.Shop;
import com.ruoyi.other.api.domain.VipSetting;
+import com.ruoyi.other.api.feignClient.ShopClient;
import com.ruoyi.system.api.model.LoginUser;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -55,6 +57,8 @@
private PointSettingService pointSettingService;
@Resource
private UserPointMapper userPointMapper;
+ @Resource
+ private ShopClient shopClient;
@Override
public UserPointVO getUserPoint(Long userId) {
@@ -69,9 +73,9 @@
userPointVO.setConsumePoint(appUser.getLavePoint());
userPointVO.setShopPoint(appUser.getShopPoint());
userPointVO.setSharePoint(appUser.getSharePoint());
- userPointVO.setPullNewPoint(userBalanceMap.get(PointChangeType.NEW_USER_REFERRAL.getCode()));
- userPointVO.setShopAchievementPoint(userBalanceMap.get(PointChangeType.STORE_PERFORMANCE.getCode()));
- userPointVO.setShopSharePoint(userBalanceMap.get(PointChangeType.STORE_COMMISSION_RETURN.getCode()));
+ userPointVO.setPullNewPoint(userBalanceMap.get(PointChangeType.PULL_NEW.getCode()));
+ userPointVO.setShopAchievementPoint(userBalanceMap.get(PointChangeType.SHOP_ACHIEVEMENT.getCode()));
+ userPointVO.setShopSharePoint(userBalanceMap.get(PointChangeType.SHOP_REBATE.getCode()));
userPointVO.setGiftPoint(vipSetting.getVipGiftRole() == 1 && vipSetting.getId() == 1 ? 1 : 0);
return userPointVO;
}
@@ -117,32 +121,15 @@
if (appUser == null) {
throw new ServiceException("用户未找到");
}
- Integer totalPoint = appUser.getLavePoint();
PointSetting pointSetting = pointSettingService.getPointSettingByAppUserId(userid);
if (pointSetting == null) {
throw new ServiceException("积分设置未找到");
}
- Integer buyPointOpen = pointSetting.getBuyPointOpen();
+ // 可转赠积分总数
+ int adjustedPoint = getAdjustedPoint(pointSetting, appUser);
- UserPoint userPoint = new UserPoint();
- userPoint.setAppUserId(userid);
-// List<UserPoint> userPointList = userPointMapper.indLatestChangeByType(userPoint);
- // TODO 完善
- List<UserPoint> userPointList = new ArrayList<>();
- Map<Integer, Integer> userBalanceMap = userPointList.stream()
- .collect(Collectors.toMap(UserPoint::getType, UserPoint::getBalance));
-
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.CONSUME.getCode(), buyPointOpen == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.COMMISSION_RETURN.getCode(), pointSetting.getSharePointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.STORE_COMMISSION_RETURN.getCode(), pointSetting.getShopSharePointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.STORE_PERFORMANCE.getCode(), pointSetting.getShopPointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.TECHNICIAN_PERFORMANCE.getCode(), pointSetting.getPersonPointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.NEW_USER_REFERRAL.getCode(), pointSetting.getGetNewPointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.REGISTRATION.getCode(), pointSetting.getGetRegisPointOpen() == 0);
- totalPoint -= getAdjustedPoint(userBalanceMap, PointChangeType.WORK_PERFORMANCE.getCode(), pointSetting.getWorkPointOpen() == 0);
-
- if (point.compareTo(new BigDecimal(totalPoint)) > 0) {
+ if (point.compareTo(new BigDecimal(adjustedPoint)) > 0) {
throw new ServiceException("转赠积分不足");
}
@@ -159,13 +146,102 @@
log.info("积分转赠完成,用户ID: {}, 新积分: {}", appUserForPhoe.getId(), appUserForPhoe.getLavePoint());
}
- private int getAdjustedPoint(Map<Integer, Integer> userBalanceMap, int pointTypeCode, boolean isOpen) {
- return isOpen ? 0 : Optional.ofNullable(userBalanceMap.get(pointTypeCode)).orElse(0);
+ /**
+ * 获取可转赠积分
+ * @param pointSetting 积分设置
+ * @param appUser 用户
+ * @return
+ */
+ private int getAdjustedPoint(PointSetting pointSetting, AppUser appUser) {
+ int transferPoint = 0;
+
+ // 消费积分数
+ Integer buyPointGift = pointSetting.getBuyPointGift();
+ if (buyPointGift == 1){
+ transferPoint += appUser.getShopPoint();
+ }
+
+ // 返佣积分
+ Integer sharePointOpen = pointSetting.getSharePointGift();
+ if (sharePointOpen == 1){
+ transferPoint += appUser.getSharePoint();
+ }
+
+ // 门店返佣积分
+ Integer shopSharePointGift = pointSetting.getShopSharePointGift();
+ R<List<Shop>> shops = shopClient.getShopByUserIds(Collections.singletonList(appUser.getId()));
+ List<Shop> shopList = shops.getData();
+ if (CollectionUtils.isEmpty(shopList)) {
+ throw new ServiceException("未找到门店");
+ }
+ if (shopSharePointGift == 1){
+ transferPoint += shopList.stream().mapToInt(Shop::getSharePoint).sum();
+ }
+ // 门店业绩积分
+ Integer shopPointOpen = pointSetting.getShopPointGift();
+ if (shopPointOpen == 1){
+ transferPoint += shopList.stream().mapToInt(Shop::getShopPoint).sum();
+ }
+
+ // 技师业绩积分
+ Integer personPointOpen = pointSetting.getPersonPointGift();
+ if (personPointOpen == 1){
+ transferPoint += appUser.getTotalPerformancePoint();
+ }
+
+ // 拉新积分
+ Integer getNewPointOpen = pointSetting.getGetNewPointGift();
+ if (getNewPointOpen == 1){
+ transferPoint += appUser.getTotalInvitePoint();
+ }
+
+ // 注册积分
+ Integer getRegisPointGift = pointSetting.getGetRegisPointGift();
+ if (getRegisPointGift == 1){
+ transferPoint += appUser.getTotalRegisterPoint();
+ }
+
+ // 做工积分
+ Integer workPointOpen = pointSetting.getWorkPointGift();
+ if (workPointOpen == 1){
+ transferPoint += appUser.getTotalSharePoint() + appUser.getTotalSignPoint() + appUser.getTotalHourPoint();
+ }
+ return transferPoint;
}
+
@Override
public UserPointStatistics getStatistics(UserPoint userPoint) {
- return null;
+ List<UserPoint> userPointList = this.baseMapper.selectUserPoint(userPoint);
+ Map<Integer, Integer> userBalanceMap = userPointList.stream()
+ .collect(Collectors.groupingBy(
+ UserPoint::getType,
+ Collectors.summingInt(UserPoint::getVariablePoint)
+ ));
+
+ int consumePoint = userBalanceMap.getOrDefault(PointChangeType.CONSUME.getCode(), 0);
+ int sharePoint = userBalanceMap.getOrDefault(PointChangeType.REBATE.getCode(), 0);
+ int pullNewPoint = userBalanceMap.getOrDefault(PointChangeType.PULL_NEW.getCode(), 0);
+ int registerPoint = userBalanceMap.getOrDefault(PointChangeType.REGISTER.getCode(), 0);
+
+ // 做工积分:签到积分 + 每日分享积分 + 每日签到积分 + 每日使用时长积分
+ int share = userBalanceMap.getOrDefault(PointChangeType.SHARE.getCode(), 0);
+ int signIn = userBalanceMap.getOrDefault(PointChangeType.SIGN_IN.getCode(), 0);
+ int useTime = userBalanceMap.getOrDefault(PointChangeType.USE_TIME.getCode(), 0);
+ int workPoint = share + signIn + useTime;
+
+ int shopAchievementPoint = userBalanceMap.getOrDefault(PointChangeType.TECHNICIAN_ACHIEVEMENT.getCode(), 0);
+ //总积分
+ int totalPoint = consumePoint+sharePoint+pullNewPoint+registerPoint+workPoint+shopAchievementPoint;
+ UserPointStatistics userPointStatistics = new UserPointStatistics();
+ userPointStatistics.setTotalPoint(totalPoint);
+ userPointStatistics.setConsumePoint(consumePoint);
+ userPointStatistics.setSharePoint(sharePoint);
+ userPointStatistics.setPullNewPoint(pullNewPoint);
+ userPointStatistics.setRegisterPoint(registerPoint);
+ userPointStatistics.setWorkPoint(workPoint);
+ userPointStatistics.setShopAchievementPoint(shopAchievementPoint);
+ return userPointStatistics;
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
index 06caeb7..65f5425 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
@@ -1,7 +1,7 @@
package com.ruoyi.account.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.ruoyi.account.enums.WithdrawalAuditStatus;
+import com.ruoyi.other.api.enums.WithdrawalAuditStatus;
import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.account.api.model.WithdrawalRequests;
import com.ruoyi.account.service.AppUserService;
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionStatistics.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionStatistics.java
index 24f543e..b55d179 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionStatistics.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionStatistics.java
@@ -21,7 +21,7 @@
public CommissionStatistics() {
}
- public CommissionStatistics(BigDecimal totalCommission, Page<BalanceChangeRecord> changeRecordPage) {
+ public CommissionStatistics(BigDecimal totalCommission, IPage<BalanceChangeRecord> changeRecordPage) {
this.totalCommission = totalCommission;
this.userPointPage = changeRecordPage;
}
diff --git a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/BalanceChangeRecordMapper.xml b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/BalanceChangeRecordMapper.xml
index a947cb1..4bfdf8b 100644
--- a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/BalanceChangeRecordMapper.xml
+++ b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/BalanceChangeRecordMapper.xml
@@ -21,14 +21,17 @@
</if>
</where>
</select>
- <select id="queryCommissionStatistics" resultType="com.ruoyi.account.api.model.BalanceChangeRecord">
+
+ <sql id="balanceChangeRecordList">
SELECT
- tcr.*,
tau.`name` userName,
- tau.phone userPhone
+ tau.phone userPhone,
+ tbcr.change_type,
+ tbcr.create_time,
+ tbcr.change_amount
FROM
- t_balance_change_record tcr
- LEFT JOIN t_app_user tau ON tcr.app_user_id = tau.id
+ t_balance_change_record tbcr
+ LEFT JOIN t_app_user tau ON tbcr.app_user_id = tau.id
<where>
<if test="changeRecord.userName != null and changeRecord.userName != ''">
and tau.name like concat('%',#{changeRecord.userName},'%')
@@ -36,56 +39,16 @@
<if test="changeRecord.userPhone != null and changeRecord.userPhone != ''">
and tau.phone like concat('%',#{changeRecord.userPhone},'%')
</if>
- <if test="changeRecord.changeType != null">
- and tcr.change_type = #{changeRecord.changeType}
- </if>
<if test="changeRecord.startTime != null and changeRecord.endTime != null">
- and DATE(tcr.create_time) between #{changeRecord.startTime} and #{changeRecord.endTime}
+ and DATE(tbcr.create_time) between #{changeRecord.startTime} and #{changeRecord.endTime}
</if>
</where>
+ </sql>
+
+ <select id="selectBalanceChangeRecordList" resultType="com.ruoyi.account.api.model.BalanceChangeRecord">
+ <include refid="balanceChangeRecordList"/>
</select>
- <select id="findLatestChangeByType" resultType="com.ruoyi.account.api.model.UserPoint">
- SELECT
- id,
- app_user_id,
- order_id,
- change_type,
- before_amount,
- change_amount,
- after_amount,
- del_flag,
- create_time
- FROM
- (
- SELECT
- id,
- app_user_id,
- order_id,
- change_type,
- before_amount,
- change_amount,
- after_amount,
- del_flag,
- create_time,
- ROW_NUMBER() OVER ( PARTITION BY change_type, app_user_id ORDER BY create_time DESC ) rn
- FROM
- t_balance_change_record
- <where>
- <if test="changeRecord.userName != null and changeRecord.userName != ''">
- and tau.name like concat('%',#{changeRecord.userName},'%')
- </if>
- <if test="changeRecord.userPhone != null and changeRecord.userPhone != ''">
- and tau.phone like concat('%',#{changeRecord.userPhone},'%')
- </if>
- <if test="changeRecord.changeType != null">
- and tcr.change_type = #{changeRecord.changeType}
- </if>
- <if test="changeRecord.startTime != null and changeRecord.endTime != null">
- and DATE(tcr.create_time) between #{changeRecord.startTime} and #{changeRecord.endTime}
- </if>
- </where>
- ) AS subquery
- WHERE
- rn = 1
+ <select id="queryCommissionStatistics" resultType="com.ruoyi.account.api.model.BalanceChangeRecord">
+ <include refid="balanceChangeRecordList"/>
</select>
</mapper>
diff --git a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml
index 5c211c5..d054e5e 100644
--- a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml
+++ b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml
@@ -27,30 +27,38 @@
WHERE
t1.app_user_id = #{userId}
</select>
- <select id="queryUserPointPage" resultType="com.ruoyi.account.api.model.UserPoint">
+
+ <sql id="userPointList">
SELECT
- tau.`name` userName,
- tau.phone,
- tup.type,
- tup.create_time,
- tup.variable_point
+ tau.`name` userName,
+ tau.phone,
+ tup.type,
+ tup.create_time,
+ tup.variable_point
FROM
- t_user_point tup
- LEFT JOIN t_app_user tau ON tup.app_user_id = tau.id
+ t_user_point tup
+ LEFT JOIN t_app_user tau ON tup.app_user_id = tau.id
<where>
- <if test="userName != null and userName != ''">
- AND tau.`name` LIKE concat('%',#{userName},'%')
+ <if test="userPoint.userName != null and userPoint.userName != ''">
+ AND tau.`name` LIKE concat('%',#{userPoint.userName},'%')
</if>
- <if test="phone != null and phone != ''">
- AND tau.phone LIKE concat('%',#{phone},'%')
+ <if test="userPoint.phone != null and userPoint.phone != ''">
+ AND tau.phone LIKE concat('%',#{userPoint.phone},'%')
</if>
- <if test="type != null and type != ''">
- AND tup.type = #{type}
+ <if test="userPoint.type != null and userPoint.type != ''">
+ AND tup.type = #{userPoint.type}
</if>
- <if test="startTime != null and endTime != null">
- AND tup.create_time BETWEEN #{startTime} AND #{endTime}
+ <if test="userPoint.startTime != null and userPoint.endTime != null">
+ AND tup.create_time BETWEEN #{userPoint.startTime} AND #{userPoint.endTime}
</if>
</where>
+ </sql>
+
+ <select id="queryUserPointPage" resultType="com.ruoyi.account.api.model.UserPoint">
+ <include refid="userPointList"/>
+ </select>
+ <select id="selectUserPoint" resultType="com.ruoyi.account.api.model.UserPoint">
+ <include refid="userPointList"/>
</select>
</mapper>
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/PointSettingController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/PointSettingController.java
index abecabd..c6062e4 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/PointSettingController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/PointSettingController.java
@@ -1,16 +1,17 @@
package com.ruoyi.other.controller;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.other.api.domain.PointSetting;
+import com.ruoyi.other.dto.PointSettingDto;
import com.ruoyi.other.service.PointSettingService;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import java.util.List;
/**
* <p>
@@ -32,6 +33,19 @@
PointSetting pointSetting = pointSettingService.getById(id);
return R.ok(pointSetting);
}
+ @GetMapping("/search")
+ @ApiOperation(value = "积分配置查询", tags = {"后台"})
+ public R<List<PointSetting>> search(@RequestParam Integer id) {
+ List<PointSetting> list = pointSettingService.list();
+ return R.ok(list);
+ }
+ @PostMapping("/save")
+ @ApiOperation(value = "积分配置", tags = {"后台"})
+ public R<PointSetting> save(@RequestBody PointSettingDto pointSettingDto) {
+ pointSettingService.remove(Wrappers.lambdaQuery());
+ pointSettingService.saveBatch(pointSettingDto.getPointSettings());
+ return R.ok();
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopBalanceStatementController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopBalanceStatementController.java
index d03e6f8..f9b7729 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopBalanceStatementController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopBalanceStatementController.java
@@ -45,6 +45,14 @@
ShopCommissionStatisticsVO shopCommissionStatisticsVO = shopBalanceStatementService.shopCommissionStatistics(Page.of(pageNum, pageSize), shopBalanceStatement);
return R.ok(shopCommissionStatisticsVO);
}
+ @GetMapping("/commissionStatistics/list")
+ @ApiOperation(value = "门店余额明细", notes = "门店余额明细", tags = {"门店后台"})
+ public R<ShopCommissionStatisticsVO> shopCommissionStatisticslist(@ApiParam("页码") @RequestParam Integer pageNum,
+ @ApiParam("每一页数据大小") Integer pageSize,
+ ShopBalanceStatement shopBalanceStatement){
+ ShopCommissionStatisticsVO shopCommissionStatisticsVO = shopBalanceStatementService.shopCommissionStatistics(Page.of(pageNum, pageSize), shopBalanceStatement);
+ return R.ok(shopCommissionStatisticsVO);
+ }
/**
* 导出门店分佣统计
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java
index f3cbe5b..706959a 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java
@@ -4,10 +4,9 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.other.api.domain.ShopPoint;
-import com.ruoyi.other.excel.ShopPointEX;
import com.ruoyi.other.service.ShopPointService;
import com.ruoyi.other.vo.ShopPointStatistics;
import io.swagger.annotations.Api;
@@ -18,8 +17,6 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.List;
/**
* <p>
@@ -35,6 +32,8 @@
public class ShopPointController {
@Resource
private ShopPointService shopPointService;
+ @Resource
+ private TokenService tokenService;
/**
@@ -47,6 +46,23 @@
return R.ok(statistics);
}
+ @GetMapping("/shop/statistics")
+ @ApiOperation(value = "门店积分统计", notes = "门店积分统计", tags = {"门店后台"})
+ public R<ShopPointStatistics> shopstatistics(ShopPoint shopPoint) {
+ Integer objectId = tokenService.getLoginUser().getSysUser().getObjectId();
+ shopPoint.setShopId(objectId);
+ ShopPointStatistics statistics = shopPointService.statistics(Page.of(shopPoint.getPageNum(), shopPoint.getPageSize()), shopPoint);
+ return R.ok(statistics);
+ }
+ @GetMapping("/shop/statistics/list")
+ @ApiOperation(value = "门店积分统计列表", notes = "门店积分统计", tags = {"门店后台"})
+ public R<Page<ShopPoint>> shopstatisticslist(ShopPoint shopPoint,Integer pageNum,Integer pageSize) {
+ Integer objectId = tokenService.getLoginUser().getSysUser().getObjectId();
+ Page<ShopPoint> page = shopPointService.lambdaQuery().eq(ShopPoint::getShopId, objectId).eq(ShopPoint::getType, shopPoint.getType())
+ .page(Page.of(pageNum, pageSize));
+ return R.ok(page);
+ }
+
/**
* 导出门店积分统计
*/
@@ -56,37 +72,10 @@
ShopPointStatistics statistics = shopPointService.statistics(Page.of(1, Integer.MAX_VALUE), shopPoint);
if (statistics!=null){
IPage<ShopPoint> shopPointIPage = statistics.getShopPointIPage();
- List<ShopPointEX> shopPointEXList = new ArrayList<>();
- if (shopPointIPage!=null){
- List<ShopPoint> records = shopPointIPage.getRecords();
- if (records!=null){
- for (ShopPoint record : records) {
- ShopPointEX shopPointEX = new ShopPointEX();
- BeanUtils.copyBeanProp(shopPointEX, record);
- Integer type = record.getType();
- switch (type) {
- case 1:
- shopPointEX.setType("门店业绩");
- break;
- case 2:
- shopPointEX.setType("门店返佣");
- break;
- default:
- shopPointEX.setType("下级门店返佣");
- break;
- }
- shopPointEXList.add(shopPointEX);
- }
- }
-
- ExcelUtil<ShopPointEX> util = new ExcelUtil<>(ShopPointEX.class);
- util.exportExcel(response, shopPointEXList, "用户积分统计");
- }
+ ExcelUtil<ShopPoint> util = new ExcelUtil<>(ShopPoint.class);
+ util.exportExcel(response, shopPointIPage.getRecords(), "用户积分统计");
}
-
}
-
-
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianController.java
index 26bca8a..cda2f44 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianController.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.page.TableDataInfo;
@@ -105,8 +106,53 @@
return R.ok(getDataTable(technicianService.getTechnicianListByShopId(shopId,name)));
}
+ @GetMapping("/manage/list")
+ @ApiOperation(value = "技师列表", tags = {"门店-技师列表"})
+ public R<Page<Technician>> managelist(@RequestParam Integer pageNum,@RequestParam Integer pageSize,@ApiParam("技师姓名") String name,@ApiParam("技师电话") String phone) {
+ Integer objectId = tokenService.getLoginUser().getSysUser().getObjectId();
+ Page<Technician> page = technicianService.lambdaQuery().like(name != null, Technician::getName, name)
+ .like(phone != null, Technician::getPhone, phone)
+ .eq(Technician::getShopId, objectId)
+ .page(Page.of(pageNum, pageSize));
+ return R.ok(page);
+ }
+ @PostMapping("/manage/addorupdate")
+ @ApiOperation(value = "添加编辑", tags = {"门店-技师列表"})
+ public R<Page<Technician>> add(@RequestBody Technician technician) {
+ Integer objectId = tokenService.getLoginUser().getSysUser().getObjectId();
+ technician.setShopId(objectId);
+ technicianService.saveOrUpdate(technician);
+ return R.ok();
+ }
+ @GetMapping("/manage/delete")
+ @ApiOperation(value = "删除", tags = {"门店-技师列表"})
+ public R<Page<Technician>> delete(@RequestParam Integer id) {
+ technicianService.removeById(id);
+ return R.ok();
+ }
+ @GetMapping("/manage/changeStatus")
+ @ApiOperation(value = "上下架", tags = {"门店-技师列表"})
+ public R<Page<Technician>> changeStatus(@RequestParam Integer id,@RequestParam@ApiParam("状态(1=下架,2=上架)") Integer status) {
+ Technician byId = technicianService.getById(id);
+ byId.setStatus(status);
+ technicianService.updateById(byId);
+ return R.ok();
+ }
+ @GetMapping("/manage/changesubscri")
+ @ApiOperation(value = "修改预约状态", tags = {"门店-技师列表"})
+ public R<Page<Technician>> changesubscri(@RequestParam Integer id,@RequestParam@ApiParam("预约状态(1=可预约,2=不可预约)") Integer subscribeStatus) {
+ Technician byId = technicianService.getById(id);
+ byId.setSubscribeStatus(subscribeStatus);
+ technicianService.updateById(byId);
+ return R.ok();
+ }
+
+
+
+
+
@GetMapping("/getById")
- @ApiOperation(value = "技师详情", tags = {"技师详情-小程序"})
+ @ApiOperation(value = "技师详情", tags = {"技师详情-小程序","门店-技师列表"})
public R<Technician> getById(@RequestParam("id") Integer id){
Technician byId = technicianService.getById(id);
return R.ok(byId);
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianSubscribeController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianSubscribeController.java
index f683fff..6f6fe87 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianSubscribeController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TechnicianSubscribeController.java
@@ -8,6 +8,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.page.TableDataInfo;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.other.api.domain.TechnicianSubscribe;
import com.ruoyi.other.service.TechnicianSubscribeService;
@@ -32,6 +33,23 @@
public class TechnicianSubscribeController extends BaseController {
@Resource
private TechnicianSubscribeService technicianSubscribeService;
+ @Resource
+ private TokenService tokenService;
+
+
+ @GetMapping("/shop/list")
+ @ApiOperation(value = "预约列表", tags = {"门店-预约列表"})
+ public TableDataInfo<TechnicianSubscribeVO> shoplist(@ApiParam(value = "状态") Integer status,
+ @ApiParam("电话")String phone,
+ @ApiParam("姓名")String name,
+ @ApiParam("服务方式:1=上门服务,2=到店服务")Integer serviceMode
+ ) {
+ Integer objectId = tokenService.getLoginUser().getSysUser().getObjectId();
+ startPage();
+ List<TechnicianSubscribeVO> list = technicianSubscribeService
+ .getTechnicianSubscribeByUserAndShop1(Long.valueOf(objectId),status,phone,name,serviceMode);
+ return getDataTable(list);
+ }
/**
* 预约列表
@@ -60,7 +78,7 @@
* 取消服务
*/
@GetMapping("/cancel")
- @ApiOperation(value = "取消服务", notes = "取消服务", tags = {"小程序-个人中心-门店管理,小程序-个人中心-我的预约"})
+ @ApiOperation(value = "取消服务", notes = "取消服务", tags = {"小程序-个人中心-门店管理,小程序-个人中心-我的预约","门店-预约管理"})
public R<Void> cancel(@ApiParam(value = "预约id") @RequestParam Long id) {
TechnicianSubscribe subscribe = technicianSubscribeService.getOne(new LambdaQueryWrapper<TechnicianSubscribe>()
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/PointSettingDto.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/PointSettingDto.java
new file mode 100644
index 0000000..fc55bc1
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/PointSettingDto.java
@@ -0,0 +1,11 @@
+package com.ruoyi.other.dto;
+
+import com.ruoyi.other.api.domain.PointSetting;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PointSettingDto {
+ private List<PointSetting> pointSettings;
+}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/excel/ShopPointEX.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/excel/ShopPointEX.java
deleted file mode 100644
index 7376059..0000000
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/excel/ShopPointEX.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.ruoyi.other.excel;
-
-import com.ruoyi.common.core.annotation.Excel;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-@Data
-public class ShopPointEX {
- @Excel(name = "变动类型")
- private String type;
-
- @Excel(name = "历史余额")
- private Integer historicalPoint;
-
- @Excel(name = "变动金额")
- private Integer variablePoint;
-
- @Excel(name = "变动时间")
- private LocalDateTime createTime;
-
- @Excel(name = "变动用户id")
- private Long createUserId;
-
- @Excel(name = "关联对象id")
- private Long objectId;
-
- @Excel(name = "门店名称")
- private String shopName;
-
- @Excel(name = "店长姓名")
- private String shopLeaderName;
-
- @Excel(name = "联系电话")
- private String phone;
-
-}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopPointMapper.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopPointMapper.java
index 02355d9..feee1b5 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopPointMapper.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopPointMapper.java
@@ -1,7 +1,9 @@
package com.ruoyi.other.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ruoyi.other.api.domain.ShopPoint;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -15,6 +17,9 @@
*/
public interface ShopPointMapper extends BaseMapper<ShopPoint> {
- List<ShopPoint> findLatestChangeByType(ShopPoint shopPoint);
+ List<ShopPoint> selectShopPointList(@Param("shopPoint") ShopPoint shopPoint);
+
+ IPage<ShopPoint> queryShpointPage(@Param("page") IPage<ShopPoint> page,@Param("shopPoint") ShopPoint shopPoint);
+
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/TechnicianSubscribeMapper.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/TechnicianSubscribeMapper.java
index 9ccd914..c32412a 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/TechnicianSubscribeMapper.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/TechnicianSubscribeMapper.java
@@ -27,6 +27,11 @@
List<TechnicianSubscribeVO> getTechnicianSubscribeByUserAndShop(
@Param("shopId") Long shopId,
@Param("status") Integer status);
+ List<TechnicianSubscribeVO> getTechnicianSubscribeByUserAndShop1(
+ @Param("shopId") Long shopId,
+ @Param("status") Integer status,@Param("phone")String phone,
+ @Param("name")String name,
+ @Param("serviceMode")Integer serviceMode);
IPage<TechnicianSubscribeVO> getTechnicianSubscribeByUser(@Param("page") Page<TechnicianSubscribe> page, @Param("userId") Long userId,
@Param("status") Integer status);
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/TechnicianSubscribeService.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/TechnicianSubscribeService.java
index 8b81dc8..1eccff1 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/TechnicianSubscribeService.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/TechnicianSubscribeService.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.other.api.domain.TechnicianSubscribe;
import com.ruoyi.other.vo.TechnicianSubscribeVO;
+import io.swagger.annotations.ApiParam;
import java.util.List;
@@ -22,6 +23,9 @@
* 查询用于指定门店的相关预约记录
*/
List<TechnicianSubscribeVO> getTechnicianSubscribeByUserAndShop(Long shopId, Integer status);
+ List<TechnicianSubscribeVO> getTechnicianSubscribeByUserAndShop1(Long shopId, Integer status ,String phone,
+ String name,
+ Integer serviceMode);
IPage<TechnicianSubscribeVO> getTechnicianSubscribeByUser(Page<TechnicianSubscribe> page, Long userId, Integer status);
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java
index cfc5e09..f9e435f 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java
@@ -1,22 +1,16 @@
package com.ruoyi.other.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.account.api.feignClient.AppUserClient;
-import com.ruoyi.account.api.model.AppUser;
-import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.other.api.domain.Shop;
-import com.ruoyi.other.mapper.ShopPointMapper;
import com.ruoyi.other.api.domain.ShopPoint;
+import com.ruoyi.other.api.enums.PointChangeType;
+import com.ruoyi.other.mapper.ShopPointMapper;
import com.ruoyi.other.service.ShopPointService;
-import com.ruoyi.other.service.ShopService;
import com.ruoyi.other.vo.ShopPointStatistics;
import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-import javax.annotation.Resource;
import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -29,62 +23,28 @@
*/
@Service
public class ShopPointServiceImpl extends ServiceImpl<ShopPointMapper, ShopPoint> implements ShopPointService {
- @Resource
- private ShopPointMapper shopPointMapper;
- @Resource
- private ShopService shopService;
@Override
public ShopPointStatistics statistics(IPage<ShopPoint> page, ShopPoint shopPoint) {
-
- String shopName = shopPoint.getShopName();
- String phone = shopPoint.getPhone();
- String shopLeaderName = shopPoint.getShopLeaderName();
- List<Integer> shopIds = shopService.listObjs(new LambdaQueryWrapper<Shop>()
- .select(Shop::getId)
- .like(StringUtils.isNotEmpty(shopName), Shop::getName, shopName)
- .like(StringUtils.isNotEmpty(phone), Shop::getPhone, phone)
- .like(StringUtils.isNotEmpty(shopLeaderName), Shop::getShopManager, shopLeaderName))
- .stream().map(o -> (Integer) o).collect(Collectors.toList());
- if (CollectionUtils.isEmpty(shopIds)) {
- return new ShopPointStatistics();
- }
-
- shopPoint.setShopIds(shopIds);
-
+ List<ShopPoint> shopPoints = this.baseMapper.selectShopPointList(shopPoint);
+ Map<Integer, Integer> shopPointMap = shopPoints.stream()
+ .collect(Collectors.groupingBy(
+ ShopPoint::getType,
+ Collectors.summingInt(ShopPoint::getVariablePoint)
+ ));
ShopPointStatistics shopPointStatistics = new ShopPointStatistics();
- List<ShopPoint> latestChangeByType = shopPointMapper.findLatestChangeByType(shopPoint);
- for (ShopPoint sp : latestChangeByType) {
- switch (sp.getType()) {
- case 1:
- shopPointStatistics.setShopPoint(sp.getVariablePoint());
- break;
- case 2:
- shopPointStatistics.setShopCommissionPoint(sp.getVariablePoint());
- break;
- case 3:
- shopPointStatistics.setSubShopCommissionPoint(sp.getVariablePoint());
- break;
- }
- }
- shopPointStatistics.setTotalPoint(shopPointStatistics.getShopPoint() + shopPointStatistics.getShopCommissionPoint() + shopPointStatistics.getSubShopCommissionPoint());
+ int sPoint = shopPointMap.getOrDefault(PointChangeType.SHOP_ACHIEVEMENT.getCode(), 0);
+ int shopCommissionPoint = shopPointMap.getOrDefault(PointChangeType.SHOP_REBATE.getCode(), 0);
+ int subShopCommissionPoint = shopPointMap.getOrDefault(PointChangeType.JUNIOR_SHOP_REBATE.getCode(), 0);
+ shopPointStatistics.setTotalPoint(sPoint + shopCommissionPoint + subShopCommissionPoint);
+ shopPointStatistics.setShopPoint(sPoint);
+ shopPointStatistics.setShopCommissionPoint(shopCommissionPoint);
+ shopPointStatistics.setSubShopCommissionPoint(subShopCommissionPoint);
-
- boolean condition = shopPoint.getStartTime() != null && shopPoint.getEndTime() != null;
- IPage<ShopPoint> shopPointIPage = page(page, new LambdaQueryWrapper<ShopPoint>()
- .in(!CollectionUtils.isEmpty(shopPoint.getShopIds()), ShopPoint::getShopId, shopPoint.getShopIds())
- .eq(shopPoint.getType() != null, ShopPoint::getType, shopPoint.getType())
- .between(condition, ShopPoint::getCreateTime, shopPoint.getStartTime(), shopPoint.getEndTime())
- .orderByDesc(ShopPoint::getCreateTime));
- List<ShopPoint> shopPoints = shopPointIPage.getRecords();
- for (ShopPoint sp : shopPoints) {
- Shop shop = shopService.getById(sp.getShopId());
- sp.setShopName(shop.getName());
- sp.setShopLeaderName(shop.getShopManager());
- sp.setPhone(shop.getPhone());
- }
+ IPage<ShopPoint> shopPointIPage = this.baseMapper.queryShpointPage(page, shopPoint);
shopPointStatistics.setShopPointIPage(shopPointIPage);
+
return shopPointStatistics;
}
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TechnicianSubscribeServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TechnicianSubscribeServiceImpl.java
index 50f8621..03e63ba 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TechnicianSubscribeServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TechnicianSubscribeServiceImpl.java
@@ -41,6 +41,12 @@
return technicianSubscribeMapper.getTechnicianSubscribeByUserAndShop(shopId,status);
}
@Override
+ public List<TechnicianSubscribeVO> getTechnicianSubscribeByUserAndShop1(Long shopId, Integer status ,String phone,
+ String name,
+ Integer serviceMode) {
+ return technicianSubscribeMapper.getTechnicianSubscribeByUserAndShop1(shopId,status,phone,name,serviceMode);
+ }
+ @Override
public IPage<TechnicianSubscribeVO> getTechnicianSubscribeByUser(Page<TechnicianSubscribe> page, Long userId, Integer status) {
return technicianSubscribeMapper.getTechnicianSubscribeByUser(page, userId, status);
}
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopPointMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopPointMapper.xml
index 6828ee3..937b56a 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopPointMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopPointMapper.xml
@@ -2,47 +2,41 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.other.mapper.ShopPointMapper">
- <select id="findLatestChangeByType" resultType="com.ruoyi.other.api.domain.ShopPoint">
+ <sql id="ShopPointList">
SELECT
- id,
- shop_id,
- type,
- historical_point,
- variable_point,
- create_time,
- create_user_id,
- object_id
+ ts.`name` shopName,
+ ts.shop_manager shopLeaderName,
+ ts.phone,
+ tsp.type,
+ tsp.create_time,
+ tsp.variable_point
FROM
- (
- SELECT
- id,
- shop_id,
- type,
- historical_point,
- variable_point,
- create_time,
- create_user_id,
- object_id,
- ROW_NUMBER() OVER ( PARTITION BY type,create_user_id ORDER BY create_time DESC ) AS rn
- FROM
- t_shop_point
+ t_shop_point tsp
+ LEFT JOIN t_shop ts ON tsp.shop_id = ts.id
+ <where>
+ <if test="shopPoint.shopName != null and shopPoint.shopName != ''">
+ AND ts.`name` LIKE concat('%',#{shopPoint.shopName},'%')
+ </if>
+ <if test="shopPoint.shopLeaderName != null and shopPoint.shopLeaderName != ''">
+ AND ts.shop_manager LIKE concat('%',#{shopPoint.shopLeaderName},'%')
+ </if>
+ <if test="shopPoint.phone != null and shopPoint.phone != ''">
+ AND ts.phone LIKE concat('%',#{shopPoint.phone},'%')
+ </if>
+ <if test="shopPoint.type != null">
+ AND tsp.type = #{shopPoint.type}
+ </if>
+ <if test="shopPoint.startTime !=null and shopPoint.endTime !=null">
+ AND tsp.create_time BETWEEN #{shopPoint.startTime} AND #{shopPoint.endTime}
+ </if>
- <where>
- <if test="shopIds != null and shopIds.size() > 0">
- AND shop_id IN
- <foreach collection="shopIds" item="shopId" open="(" close=")" separator=",">
- #{shopId}
- </foreach>
- </if>
- <if test="type != null">
- AND `type` = #{type}
- </if>
- <if test="startTime != null and endTime != null">
- AND create_time BETWEEN #{startTime} AND #{endTime}
- </if>
- </where>
- ) AS subquery
- WHERE
- rn = 1
+ </where>
+ </sql>
+
+ <select id="selectShopPointList" resultType="com.ruoyi.other.api.domain.ShopPoint">
+ <include refid="ShopPointList"/>
+ </select>
+ <select id="queryShpointPage" resultType="com.ruoyi.other.api.domain.ShopPoint">
+ <include refid="ShopPointList"/>
</select>
</mapper>
\ No newline at end of file
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TechnicianSubscribeMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TechnicianSubscribeMapper.xml
index 48a511d..91afdb6 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TechnicianSubscribeMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TechnicianSubscribeMapper.xml
@@ -26,6 +26,40 @@
</if>
ORDER BY tts.create_time DESC
</select>
+ <select id="getTechnicianSubscribeByUserAndShop1" resultType="com.ruoyi.other.vo.TechnicianSubscribeVO">
+ SELECT
+ CAST(tts.id AS CHAR) id,
+ tts.user_address,
+ ts.`name` shopName,
+ ts.address shopAddress,
+ tt.name technicianName,
+ ts.longitude,
+ ts.latitude,
+ tts.subscribe_time,
+ tts.service_mode,
+ tts.status
+ FROM
+ t_technician_subscribe tts
+ LEFT JOIN t_technician tt ON tts.technician_id = tt.id AND tt.del_flag = 0
+ LEFT JOIN t_shop ts ON tt.shop_id = ts.id AND ts.del_flag = 0
+ WHERE
+ ts.id = #{shopId}
+ AND tts.del_flag = 0
+ <if test="status != null">
+ AND tts.status = #{status}
+ </if>
+ <if test="name != null and name != ''">
+ AND tt.`name` LIKE concat('%', #{name}, '%')
+ </if>
+ <if test="phone != null and phone != ''">
+ AND tt.`phone` LIKE concat('%', #{phone}, '%')
+ </if>
+ <if test="serviceMode != null">
+ AND tts.service_mode = #{serviceMode}
+ </if>
+
+ ORDER BY tts.create_time DESC
+ </select>
<select id="getTechnicianSubscribeByUser" resultType="com.ruoyi.other.vo.TechnicianSubscribeVO">
SELECT * from (
--
Gitblit v1.7.1