管理端店铺用户相关接口

This commit is contained in:
张松
2025-02-13 16:06:15 +08:00
parent 140f9344e0
commit aa6df702f3
16 changed files with 504 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
package com.czg.account.dto.flow;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.fastjson2.annotation.JSONField;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 用户余额流水 实体类。
*
* @author zs
* @since 2025-02-13
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ShopUserFlowDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private Long id;
private Long userId;
private Long shopId;
private BigDecimal amount;
private BigDecimal balance;
/**
* 类型cashIn 会员充值awardIn 充值奖励wechatIn 微信小程序充值alipayIn 支付宝小程序充值orderPay 订单消费orderRefund 订单退款rechargeRefund 充值退款 adminOp 管理员手动增减
*/
private String bizCode;
/**
* 加减号
*/
private String type;
private String remark;
/**
* 关联订单编号,支付单号,退款单号
*/
private String relationOrderNo;
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
}

View File

@@ -0,0 +1,28 @@
package com.czg.account.dto.shopuser;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
/**
* @author Administrator
*/
@Data
public class ShopUserEditDTO {
/**
* 对应shopUserid
*/
@NotNull
private Long id;
/**
* 昵称
*/
private String nickName;
/**
* 性别 0女 1男
*/
private Integer sex;
/**
* 生日
*/
private String birthDay;
}

View File

@@ -0,0 +1,38 @@
package com.czg.account.dto.shopuser;
import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Administrator
*/
@Data
public class ShopUserMoneyEditDTO {
/**
* 对应shopUserid
*/
@NotNull
private Long id;
/**
* 0减少 1增加
*/
@NotNull
private Integer type;
/**
* 浮动金额
*/
@NotNull
@DecimalMin("0.01")
@DecimalMax("9999")
private BigDecimal money;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,15 @@
package com.czg.account.dto.shopuser;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Administrator
*/
@Data
public class ShopUserSummaryDTO {
private Integer userTotal;
private Integer chargeTotal;
private BigDecimal balanceTotal;
}

View File

@@ -36,6 +36,31 @@ public class ShopUser implements Serializable {
@Id(keyType = KeyType.Auto)
private Long id;
/**
* 用户头像
*/
private String headImg;
/**
* 用户昵称
*/
private String nickName;
/**
* 电话号码
*/
private String phone;
/**
* 会员生日
*/
private String birthDay;
/**
* 0-女 1男
*/
private Integer sex;
/**
* 店铺Id
*/

View File

@@ -0,0 +1,65 @@
package com.czg.account.entity;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 用户余额流水 实体类。
*
* @author zs
* @since 2025-02-13
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table("tb_shop_user_flow")
public class ShopUserFlow implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Id(keyType = KeyType.Auto)
private Long id;
private Long userId;
private Long shopId;
private BigDecimal amount;
private BigDecimal balance;
/**
* 类型cashIn 会员充值awardIn 充值奖励wechatIn 微信小程序充值alipayIn 支付宝小程序充值orderPay 订单消费orderRefund 订单退款rechargeRefund 充值退款 adminOp 管理员手动增减
*/
private String bizCode;
/**
* 加减号
*/
private String type;
private String remark;
/**
* 关联订单编号,支付单号,退款单号
*/
private String relationOrderNo;
@Column(onInsertValue = "now()")
private LocalDateTime createTime;
}

View File

@@ -0,0 +1,14 @@
package com.czg.account.service;
import com.mybatisflex.core.service.IService;
import com.czg.account.entity.ShopUserFlow;
/**
* 用户余额流水 服务层。
*
* @author zs
* @since 2025-02-13
*/
public interface ShopUserFlowService extends IService<ShopUserFlow> {
}

View File

@@ -1,6 +1,10 @@
package com.czg.account.service;
import com.czg.account.dto.shopuser.ShopUserEditDTO;
import com.czg.account.dto.shopuser.ShopUserMoneyEditDTO;
import com.czg.account.dto.shopuser.ShopUserSummaryDTO;
import com.czg.account.entity.ShopUser;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
/**
@@ -11,4 +15,11 @@ import com.mybatisflex.core.service.IService;
*/
public interface ShopUserService extends IService<ShopUser> {
Page<ShopUser> getPage(String key, Integer isVip);
Boolean updateInfo(Long shopId, ShopUserEditDTO shopUserEditDTO);
Boolean updateMoney(Long shopId, ShopUserMoneyEditDTO shopUserEditDTO);
ShopUserSummaryDTO getSummary(Long shopId, Integer isVip);
}

View File

@@ -0,0 +1,25 @@
package com.czg.enums;
import lombok.Getter;
/**
* @author Administrator
*/
@Getter
public enum ShopUserFlowBizEnum {
// 会员充值
CASH_IN("cashIn"),
AWARD_IN("awardIn"),
WECHAT_IN("wechatIn"),
ALIPAY_IN("alipayIn"),
ORDER_PAY("orderPay"),
ORDER_REFUND("orderRefund"),
RECHARGE_REFUND("rechargeRefund"),
ADMIN_IN("adminIn");
private final String code;
ShopUserFlowBizEnum(String code) {
this.code = code;
}
}