初始化

This commit is contained in:
xuelijun
2025-11-04 18:08:36 +08:00
parent 2dff5e25de
commit daa020f1ec
1370 changed files with 127388 additions and 1 deletions

26
ygsx-shop-bean/pom.xml Normal file
View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>ygsx-mall</artifactId>
<groupId>com.yami.shop</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ygsx-shop-bean</artifactId>
<dependencies>
<dependency>
<groupId>com.yami.shop</groupId>
<artifactId>ygsx-shop-common</artifactId>
<version>${yami.shop.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean;
import java.util.ArrayList;
import java.util.List;
import com.yami.shop.bean.bo.SmsInfoBo;
import cn.hutool.core.collection.CollectionUtil;
/**
* @author lanhai
*/
public class SmsInfoContext {
/** The request holder. */
private static ThreadLocal<List<SmsInfoBo>> smsInfoHolder = new ThreadLocal<List<SmsInfoBo>>();
public static List<SmsInfoBo> get(){
List<SmsInfoBo> list = smsInfoHolder.get();
if (CollectionUtil.isEmpty(list)) {
return new ArrayList<>();
}
return smsInfoHolder.get();
}
public static void set(List<SmsInfoBo> smsInfoBos){
smsInfoHolder.set(smsInfoBos);
}
public static void put(SmsInfoBo smsInfoBo){
List<SmsInfoBo> smsInfoBos = smsInfoHolder.get();
if (CollectionUtil.isEmpty(smsInfoBos)) {
smsInfoBos = new ArrayList<>();
}
smsInfoBos.add(smsInfoBo);
smsInfoHolder.set(smsInfoBos);
}
public static void clean() {
if (smsInfoHolder.get() != null) {
smsInfoHolder.remove();
}
}
}

View File

@@ -0,0 +1,71 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class BasketItemDto implements Serializable {
@Schema(description = "购物车ID" , required = true)
private Long basketId;
@Schema(description = "店铺ID" , required = true)
private Long shopId;
/**
* 商品名称
*/
@JsonIgnore
private String shopName;
@Schema(description = "产品ID" , required = true)
private Long prodId;
@Schema(description = "skuID" , required = true)
private Long skuId;
@Schema(description = "产品个数" , required = true)
private Integer prodCount;
@Schema(description = "产品名称" , required = true)
private String prodName;
@Schema(description = "产品主图" , required = true)
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@Schema(description = "产品现价" , required = true)
private Double price;
@Schema(description = "产品原价" , required = true)
private Double oriPrice;
@Schema(description = "产品简介" , required = true)
private String brief;
@Schema(description = "产品sku信息" , required = true)
private String skuName;
@Schema(description = "参与满减活动列表" )
private List<DiscountDto> discounts;
}

View File

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
public class CategoryDto {
@Schema(description = "分类id" ,required=true)
private Long categoryId;
@Schema(description = "分类父id" ,required=true)
private Long parentId;
@Schema(description = "分类名称" ,required=true)
private String categoryName;
@Schema(description = "分类图片" ,required=true)
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@JsonSerialize(using = ImgJsonSerializer.class)
private String icon;
}

View File

@@ -0,0 +1,26 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import lombok.Data;
import java.io.Serializable;
/**
* 购物车中选中的满减活动项信息
* @author lanhai
*/
@Data
public class ChooseDiscountItemDto implements Serializable {
}

View File

@@ -0,0 +1,23 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
public class CouponOrderDto implements Serializable {
}

View File

@@ -0,0 +1,36 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class DeliveryDto {
@Schema(description = "物流公司名称" ,required=true)
private String companyName;
@Schema(description = "物流公司官网" ,required=true)
private String companyHomeUrl;
@Schema(description = "物流订单号" ,required=true)
private String dvyFlowId;
@Schema(description = "查询出的物流信息" ,required=true)
private List<DeliveryInfoDto> data;
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
public class DeliveryInfoDto {
@Schema(description = "详细信息" ,required=true)
private String context;
private String ftime;
@Schema(description = "快递所在区域" ,required=true)
private String location;
@Schema(description = "物流更新时间" ,required=true)
private String time;
}

View File

@@ -0,0 +1,24 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
public class DiscountDto implements Serializable {
}

View File

@@ -0,0 +1,60 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
/**
* @author lanhai
*/
@Schema(description = "首页图片对象")
@Data
public class IndexImgDto {
/**
* 图片
*/
@JsonSerialize(using = ImgJsonSerializer.class)
@Schema(description = "图片Url" , required = true)
private String imgUrl;
/**
* 顺序
*/
@Schema(description = "图片顺序" , required = true)
private Integer seq;
/**
* 上传时间
*/
@Schema(description = "上传时间" , required = true)
private Date uploadTime;
/**
* 类型
*/
@Schema(description = "类型" , required = true)
private int type;
/**
* 关联id
*/
@Schema(description = "关联id" , required = true)
private Long relation;
}

View File

@@ -0,0 +1,50 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
@Schema(description = "我的订单")
public class MyOrderDto {
@Schema(description = "订单项" ,required=true)
private List<MyOrderItemDto> orderItemDtos;
@Schema(description = "订单号" ,required=true)
private String orderNumber;
@Schema(description = "总价" ,required=true)
private Double actualTotal;
@Schema(description = "订单状态" ,required=true)
private Integer status;
@Schema(description = "VIP名称" ,required=true)
private String vipName;
@Schema(description = "订单类型" ,required=true)
private Integer orderType;
@Schema(description = "第三方交易单号" ,required=true)
private String thirdTradeNo;
@Schema(description = "支付订单号" )
private String payOrder;
}

View File

@@ -0,0 +1,44 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Schema(description = "我的订单-订单项")
@Data
public class MyOrderItemDto {
@Schema(description = "商品图片" , required = true)
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@Schema(description = "商品名称" , required = true)
private String prodName;
@Schema(description = "商品数量" , required = true)
private Integer prodCount;
@Schema(description = "商品价格" , required = true)
private Double price;
@Schema(description = "skuName" , required = true)
private String skuName;
@Schema(description = "商品价格" , required = true)
private Double points;
}

View File

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
/**
* @author lanhai
*/
@Schema(description = "公告对象")
@Data
public class NoticeDto {
@Schema(description = "公告id" )
private Long id;
@Schema(description = "店铺id" )
private Long shopId;
@Schema(description = "标题" )
private String title;
@Schema(description = "公告内容" )
private String content;
@Schema(description = "公告发布时间" )
private Date publishTime;
}

View File

@@ -0,0 +1,45 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@Schema(description = "我的订单数量")
public class OrderCountData {
@Schema(description = "所有订单数量" )
private Integer allCount;
@Schema(description = "待付款" )
private Integer unPay;
@Schema(description = "待发货" )
private Integer payed;
@Schema(description = "待收货" )
private Integer consignment;
@Schema(description = "待评价" )
private Integer confirm;
@Schema(description = "成功" )
private Integer success;
@Schema(description = "失败" )
private Integer close;
}

View File

@@ -0,0 +1,25 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
/**
* @author LGH
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class OrderItemDto extends ProductItemDto implements Serializable {
}

View File

@@ -0,0 +1,29 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
public class OrderNumbersDto {
@Schema(description = "多个订单号拼接的字符串" ,required=true)
private String orderNumbers;
public OrderNumbersDto(String orderNumbers) {
this.orderNumbers = orderNumbers;
}
public OrderNumbersDto(){}
}

View File

@@ -0,0 +1,87 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 订单下的每个店铺
*
* @author YaMi
*/
@Data
public class OrderShopDto implements Serializable {
/**
* 店铺ID
**/
@Schema(description = "店铺id" , required = true)
private Long shopId;
/**
* 店铺名称
**/
@Schema(description = "店铺名称" , required = true)
private String shopName;
@Schema(description = "实际总值" , required = true)
private Double actualTotal;
@Schema(description = "商品总值" , required = true)
private Double total;
@Schema(description = "商品总数" , required = true)
private Integer totalNum;
@Schema(description = "地址Dto" , required = true)
private UserAddrDto userAddrDto;
@Schema(description = "产品信息" , required = true)
private List<OrderItemDto> orderItemDtos;
@Schema(description = "运费" , required = true)
private Double transfee;
@Schema(description = "优惠总额" , required = true)
private Double reduceAmount;
@Schema(description = "促销活动优惠金额" , required = true)
private Double discountMoney;
@Schema(description = "优惠券优惠金额" , required = true)
private Double couponMoney;
/**
* 创建时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(description = "订单创建时间" , required = true)
private Date createTime;
/**
* 订单备注信息
*/
@Schema(description = "订单备注信息" , required = true)
private String remarks;
/**
* 订单状态
*/
@Schema(description = "订单状态" , required = true)
private Integer status;
}

View File

@@ -0,0 +1,41 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Schema(description = "商品评论数据")
@Data
public class ProdCommDataDto {
@Schema(description = "好评率" )
private Double positiveRating;
@Schema(description = "评论数量" )
private Integer number;
@Schema(description = "好评数" )
private Integer praiseNumber;
@Schema(description = "中评数" )
private Integer secondaryNumber;
@Schema(description = "差评数" )
private Integer negativeNumber;
@Schema(description = "有图数" )
private Integer picNumber;
}

View File

@@ -0,0 +1,96 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author lanhai
*/
@Schema(description = "评论对象")
@Data
public class ProdCommDto {
@Schema(description = "id" )
private Long prodCommId;
/**
* 得分0-5分
*/
@Schema(description = "得分0-5分" )
private Integer score;
/**
* 是否匿名(1:是 0:否)
*/
@Schema(description = "是否匿名(1:是 0:否)" )
private Integer isAnonymous;
/**
* 掌柜回复
*/
@Schema(description = "掌柜回复" )
private String replyContent;
/**
* 记录时间
*/
@Schema(description = "记录时间" )
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date recTime;
/**
* 回复时间
*/
@Schema(description = "回复时间" )
@JsonFormat(pattern = "yyyy-MM-dd")
private Date replyTime;
@Schema(description = "用户昵称" )
private String nickName;
/**
* 头像图片路径
*/
@Schema(description = "头像图片路径" )
private String pic;
/**
* 是否回复 0:未回复 1:已回复
*/
@Schema(description = "商家是否回复 0:未回复 1:已回复" )
private Integer replySts;
/**
* 评论图片
*/
@JsonSerialize(using = ImgJsonSerializer.class)
@Schema(description = "评论图片" )
private String pics;
/**
* 评价等级
*/
@Schema(description = "0好评 1中评 2差评" )
private Byte evaluate;
@Schema(description = "评论内容" )
private String content;
}

View File

@@ -0,0 +1,34 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
public class ProdTagDto {
@Schema(description = "分组标签id" )
private Long id;
@Schema(description = "分组标签标题" )
private String title;
@Schema(description = "排序(数值越高越靠前)" )
private String seq;
@Schema(description = "列表样式(0:一列一个,1:一列两个,2:一列三个)" )
private String style;
}

View File

@@ -0,0 +1,124 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.bean.model.Transport;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class ProductDto {
/**
* 店铺ID
*/
@Schema(description = "店铺ID" , required = true)
private Long shopId;
/**
* 店铺名称
*/
@Schema(description = "店铺名称" , required = true)
private String shopName;
/**
* 商品ID
*/
@Schema(description = "商品ID" , required = true)
private Long prodId;
/**
* 商品名称
*/
@Schema(description = "商品名称" )
private String prodName;
/**
* 商品价格
*/
@Schema(description = "商品价格" , required = true)
private Double price;
/**
* 商品详情
*/
@Schema(description = "详细描述" )
private String content;
/**
* 商品原价
*/
@Schema(description = "商品原价" , required = true)
private Double oriPrice;
/**
* 商品积分
*/
@Schema(description = "商品积分")
private Double points;
/**
* 库存量
*/
@Schema(description = "库存量" , required = true)
private Integer totalStocks;
/**
* 简要描述,卖点等
*/
@Schema(description = "简要描述,卖点等" , required = true)
private String brief;
/**
* 商品类型 0普通商品 1:积分商品 2福利商品 3积分和普通通用商品
*/
private Integer type;
/**
* 商品主图
*/
@JsonSerialize(using = ImgJsonSerializer.class)
@Schema(description = "商品主图" , required = true)
private String pic;
@JsonSerialize(using = ImgJsonSerializer.class)
@Schema(description = "商品图片列表,以逗号分割" , required = true)
private String imgs;
/**
* 商品分类
*/
@Schema(description = "商品分类id" , required = true)
private Long categoryId;
@Schema(description = "sku列表" )
private List<SkuDto> skuList;
@Schema(description = "运费信息" , required = true)
private Transport transport;
private String categoryName;
private String vipGrade;
public static interface WithNoContent{}
public static interface WithContent extends WithNoContent{}
}

View File

@@ -0,0 +1,77 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @author LGH
*/
@Data
public class ProductItemDto implements Serializable {
@Schema(description = "产品名称" ,required=true)
private String prodName;
@Schema(description = "产品个数" ,required=true)
private Integer prodCount;
@Schema(description = "产品图片路径" ,required=true)
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@Schema(description = "产品价格" ,required=true)
private Double price;
@Schema(description = "商品实际总金额" ,required=true)
private Double productTotalAmount;
@Schema(description = "商品原价总金额")
private Double productOriginalTotalAmount;
@Schema(description = "产品ID" ,required=true)
private Long prodId;
@Schema(description = "商品类型 0普通商品 1:积分商品 2福利商品 3积分和普通通用商品" )
private Integer type;
@Schema(description = "skuId" ,required=true)
private Long skuId;
@Schema(description = "规格名称" , required = true)
private String skuName;
@Schema(description = "basketId" ,required=true)
private Long basketId;
@Schema(description = "商品实际金额 = 商品总金额 - 分摊的优惠金额" )
private Double actualTotal;
@Schema(description = "满减满折优惠id0不主动参与活动用户没有主动参与该活动-1主动不参与活动" )
private Long discountId = 0L;
@Schema(description = "分摊的优惠金额" )
private Double shareReduce;
@Schema(description = "订单积分" )
private Double points;
@Schema(description = "参与满减活动列表" )
private List<DiscountDto> discounts = new ArrayList<>();
}

View File

@@ -0,0 +1,34 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@Schema(description = "购物车合计")
public class ShopCartAmountDto {
@Schema(description = "总额" )
private Double totalMoney;
@Schema(description = "总计" )
private Double finalMoney;
@Schema(description = "减额" )
private Double subtractMoney;
@Schema(description = "商品数量" )
private Integer count;
}

View File

@@ -0,0 +1,35 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class ShopCartDto implements Serializable {
@Schema(description = "店铺ID" , required = true)
private Long shopId;
@Schema(description = "店铺名称" , required = true)
private String shopName;
@Schema(description = "购物车商品" , required = true)
private List<ShopCartItemDiscountDto> shopCartItemDiscounts;
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
@Schema(description = "购物车失效商品对象")
public class ShopCartExpiryItemDto {
@Schema(description = "店铺ID" , required = true)
private Long shopId;
@Schema(description = "店铺名称" , required = true)
private String shopName;
@Schema(description = "商品项" , required = true)
private List<ShopCartItemDto> shopCartItemDtoList;
}

View File

@@ -0,0 +1,31 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class ShopCartItemDiscountDto implements Serializable {
@Schema(description = "已选满减项" , required = true)
private ChooseDiscountItemDto chooseDiscountItemDto;
@Schema(description = "商品列表" )
private List<ShopCartItemDto> shopCartItems;
}

View File

@@ -0,0 +1,52 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author LGH
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class ShopCartItemDto extends ProductItemDto implements Serializable {
private static final long serialVersionUID = -8284981156242930909L;
@Schema(description = "购物车ID" , required = true)
private Long basketId;
@Schema(description = "店铺ID" , required = true)
private Long shopId;
@Schema(description = "规格名称" , required = true)
private String skuName;
@Schema(description = "店铺名称" , required = true)
private String shopName;
@Schema(description = "商品原价" , required = true)
private Double oriPrice;
@Schema(description = "推广员使用的推销卡号" )
private String distributionCardNo;
@Schema(description = "加入购物车的时间" )
private Date basketDate;
}

View File

@@ -0,0 +1,73 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 单个店铺的订单信息
* @author lanhai
*/
@Data
public class ShopCartOrderDto implements Serializable{
@Schema(description = "店铺id" , required = true)
private Long shopId;
@Schema(description = "店铺名称" , required = true)
private String shopName;
@Schema(description = "实际总值" , required = true)
private Double actualTotal;
@Schema(description = "商品总值" , required = true)
private Double total;
@Schema(description = "商品总数" , required = true)
private Integer totalCount;
@Schema(description = "运费" , required = true)
private Double transfee;
@Schema(description = "花费商品积分总数")
private Double pointsTotal;
@Schema(description = "商品编号")
private String prodNumber;
@Schema(description = "订单类型")
private Integer orderType;
@Schema(description = "促销活动优惠金额" , required = true)
private Double discountReduce;
@Schema(description = "优惠券优惠金额" , required = true)
private Double couponReduce;
@Schema(description = "店铺优惠金额(促销活动 + 优惠券 + 其他)" , required = true)
private Double shopReduce = 0.0;
@Schema(description = "订单备注信息" , required = true)
private String remarks;
@Schema(description = "购物车商品" , required = true)
private List<ShopCartItemDiscountDto> shopCartItemDiscounts;
@Schema(description = "整个店铺可以使用的优惠券列表" , required = true)
private List<CouponOrderDto> coupons;
@Schema(description = "订单编号" , required = true)
private String orderNumber;
}

View File

@@ -0,0 +1,61 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 多个店铺订单合并在一起的合并类
* "/confirm" 使用
* @author lanhai
*/
@Data
public class ShopCartOrderMergerDto implements Serializable{
@Schema(description = "实际总值" , required = true)
private Double actualTotal;
@Schema(description = "商品总值" , required = true)
private Double total;
@Schema(description = "商品实际总数" , required = true)
private Integer totalCount;
@Schema(description = "积分总数" )
private Double pointsTotal;
@Schema(description = "订单优惠金额(所有店铺优惠金额相加)" , required = true)
private Double orderReduce;
@Schema(description = "地址Dto" , required = true)
private UserAddrDto userAddr;
@Schema(description = "每个店铺的购物车信息" , required = true)
private List<ShopCartOrderDto> shopCartOrders;
@Schema(description = "整个订单可以使用的优惠券列表" , required = true)
private List<CouponOrderDto> coupons;
@Schema(description = "订单号")
private String orderNumber;
@Schema(description = "地址id")
private Long addressId;
@Schema(description = "用户id")
private String userId;
}

View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
public class SkuDto implements Serializable {
private static final long serialVersionUID = 6457261945829470666L;
@Schema(description = "skuId" , required = true)
private Long skuId;
@Schema(description = "价格" , required = true)
private Double price;
@Schema(description = "原价" )
private Double oriPrice;
@Schema(description = "库存(-1表示无穷)" , required = true)
private Integer stocks;
@Schema(description = "sku名称" , required = true)
private String skuName;
@Schema(description = "图片" )
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
/**
* 商品积分
*/
@Schema(description = "商品积分")
private Double points;
@Schema(description = "销售属性组合字符串,格式是p1:v1;p2:v2" , required = true)
private String properties;
private Integer moq ;
}

View File

@@ -0,0 +1,37 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class TagProductDto {
@Schema(description = "分组标签id" )
private Long id;
@Schema(description = "分组标签标题" )
private String title;
@Schema(description = "排序(数值越高越靠前)" )
private String seq;
@Schema(description = "列表样式(0:一列一个,1:一列两个,2:一列三个)" )
private String style;
private List<ProductDto> productDtoList;
}

View File

@@ -0,0 +1,63 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
public class UserAddrDto implements Serializable {
@Schema(description = "地址id" , required = true)
private Long addrId;
@Schema(description = "收货人" , required = true)
private String receiver;
@Schema(description = "" , required = true)
private String province;
@Schema(description = "城市" , required = true)
private String city;
@Schema(description = "" , required = true)
private String area;
@Schema(description = "地址" , required = true)
private String addr;
@Schema(description = "手机" , required = true)
private String mobile;
@Schema(description = "是否默认地址1:是 0 " , required = true)
private Integer commonAddr;
/**
* 省ID
*/
@Schema(description = "省ID" , required = true)
private Long provinceId;
/**
* 城市ID
*/
@Schema(description = "城市ID" , required = true)
private Long cityId;
/**
* 区域ID
*/
@Schema(description = "区域ID" , required = true)
private Long areaId;
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
/**
* @author lanhai
*/
@Schema(description = "收藏对象")
@Data
public class UserCollectionDto {
@Schema(description = "收藏id" )
private Long id;
@Schema(description = "商品名称" )
private String prodName;
@Schema(description = "收藏时间" )
private Date createTime;
}

View File

@@ -0,0 +1,145 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author lanhai
*/
@Data
public class UserDto {
private String userId;
/**
* 用户昵称
*/
private String nickName;
/**
* 真实姓名
*/
private String realName;
/**
* 登录密码
*/
private String loginPassword;
/**
* 支付密码
*/
private String payPassword;
/**
* 手机号码
*/
private String userMobile;
/**
* 修改时间
*/
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date modifyTime;
/**
* 注册时间
*/
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date userRegtime;
/**
* 最后登录时间
*/
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date userLasttime;
/**
* 备注
*/
private String userMemo;
/**
* 例如2009-11-27
*/
@DateTimeFormat(pattern="yyyy-MM-dd")
private String birthDate;
/**
* 头像图片路径
*/
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
/**
* 状态 1 正常 0 无效
*/
private Integer status;
/**
* 积分
*/
@Schema(description = "积分" )
private Double score;
/**
* 优惠比例
*/
@Schema(description = "优惠比例" )
private Double discountRatio;
/**
* 用户余额
*/
private Double balance;
/**
* 会员等级
*/
@Schema(description = "会员等级" )
private Integer vipGrade;
/**
* 微信openId
*/
private String openid;
@Schema(description = "邀请码" )
private String inviteCode;
private String inviterCode;
private Integer redCard;
private Integer ifUseCode;
@Schema(description = "邀请人用户id" )
private String InviterUserId;
@Schema(description = "已经充值VIP多少钱" )
private Double alreadyVipPrice;
}

View File

@@ -0,0 +1,48 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author xuelijun
*/
@Data
public class UserOtherDto {
private String userId;
/**
* 用户昵称
*/
private String nickName;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号码
*/
private String userMobile;
/**
* 头像图片路径
*/
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
}

View File

@@ -0,0 +1,154 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
/**
* @author lanhai
*/
@Schema(description = "地址参数")
public class AddrParam {
@Schema(description = "地址ID" ,required=true)
private Long addrId;
@NotNull(message = "收货人不能为空")
@Schema(description = "收货人" ,required=true)
private String receiver;
@NotNull(message = "地址不能为空")
@Schema(description = "地址" ,required=true)
private String addr;
@Schema(description = "邮编" ,required=false)
private String postCode;
@NotNull(message = "手机不能为空")
@Schema(description = "手机" ,required=true)
private String mobile;
@NotNull(message = "省ID不能为空")
@Schema(description = "省ID" ,required=true)
private Long provinceId;
@NotNull(message = "城市ID不能为空")
@Schema(description = "城市ID" ,required=true)
private Long cityId;
@NotNull(message = "区ID不能为空")
@Schema(description = "区ID" ,required=true)
private Long areaId;
@NotNull(message = "省不能为空")
@Schema(description = "" ,required=true)
private String province;
@NotNull(message = "城市不能为空")
@Schema(description = "城市" ,required=true)
private String city;
@NotNull(message = "区不能为空")
@Schema(description = "" ,required=true)
private String area;
public Long getAddrId() {
return addrId;
}
public void setAddrId(Long addrId) {
this.addrId = addrId;
}
public String getReceiver() {
return receiver;
}
public void setReceiver(String receiver) {
this.receiver = receiver;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public String getPostCode() {
return postCode;
}
public void setPostCode(String postCode) {
this.postCode = postCode;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public Long getProvinceId() {
return provinceId;
}
public void setProvinceId(Long provinceId) {
this.provinceId = provinceId;
}
public Long getCityId() {
return cityId;
}
public void setCityId(Long cityId) {
this.cityId = cityId;
}
public Long getAreaId() {
return areaId;
}
public void setAreaId(Long areaId) {
this.areaId = areaId;
}
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getArea() {
return area;
}
public void setArea(String area) {
this.area = area;
}
}

View File

@@ -0,0 +1,45 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import jakarta.validation.constraints.NotNull;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author LGH
*/
@Data
public class ChangeShopCartParam {
@Schema(description = "购物车ID" , required = true)
private Long basketId;
@NotNull(message = "商品ID不能为空")
@Schema(description = "商品ID" , required = true)
private Long prodId;
@NotNull(message = "skuId不能为空")
@Schema(description = "skuId" , required = true)
private Long skuId;
@NotNull(message = "店铺ID不能为空")
@Schema(description = "店铺ID" , required = true)
private Long shopId;
@NotNull(message = "商品个数不能为空")
@Schema(description = "商品个数" , required = true)
private Integer count;
@Schema(description = "分销推广人卡号" )
private String distributionCardNo;
}

View File

@@ -0,0 +1,47 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
/**
* @author lanhai
*/
@Data
public class CurrencyParam {
@Schema(description = "邀请码" )
private String invitationCode;
@Schema(description = "VIP套餐id" )
private Long vipPackageId;
@Schema(description = "商品id" )
private Long prodId;
@Schema(description = "SKUid" )
private Long skuId;
@Schema(description = "地址id")
private Long addressId;
@Schema(description = "订单商品总数")
private Integer productNums;
@Schema(description = "订单id")
private String orderNumber;
@Schema(description = "退款原因")
private String buyerMsg;
}

View File

@@ -0,0 +1,51 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* @author lanhai
*/
@Schema(description = "登陆参数")
public class LoginParam {
@Schema(description = "小程序登陆时返回的code(使用code登陆必填)" ,required=true)
private String code;
@Schema(description = "登陆时的用户名(账号密码登陆必填)" ,required=true)
private String mobile;
@Schema(description = "登陆时的密码(账号密码登陆必填)" ,required=true)
private String password;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

View File

@@ -0,0 +1,45 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
/**
* @author lanhai
*/
@Data
@Schema(description = "购物车物品参数")
public class OrderItemParam {
@NotNull(message = "产品ID不能为空")
@Schema(description = "产品ID" ,required=true)
private Long prodId;
@NotNull(message = "skuId不能为空")
@Schema(description = "skuId" ,required=true)
private Long skuId;
@NotNull(message = "产品数量不能为空")
@Min(value = 1,message = "产品数量不能为空")
@Schema(description = "产品数量" ,required=true)
private Integer prodCount;
@NotNull(message = "店铺id不能为空")
@Schema(description = "店铺id" ,required=true)
private Long shopId;
@Schema(description = "推广员使用的推销卡号" )
private String distributionCardNo;
}

View File

@@ -0,0 +1,53 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.NotNull;
import java.util.List;
/**
* @author lanhai
*/
@Data
@Schema(description = "订单参数")
public class OrderParam {
@Schema(description = "购物车id 数组" )
private List<Long> basketIds;
@Schema(description = "立即购买时提交的商品项" )
private OrderItemParam orderItem;
@Schema(description = "地址ID0为默认地址")
//@NotNull(message = "地址不能为空")
private Long addrId;
@Schema(description = "用户是否改变了优惠券的选择,如果用户改变了优惠券的选择,则完全根据传入参数进行优惠券的选择" )
private Integer userChangeCoupon;
@Schema(description = "优惠券id数组" )
private List<Long> couponIds;
@Schema(description = "是否使用积分 0 不用 1用")
private Integer flag;
// @Schema(description = "每次订单提交时的uuid" )
// private String uuid;
// @Schema(description = "订单入口 SHOP_CART购物车BUY_NOW立即购买" )
// private OrderEntry orderEntry;
}

View File

@@ -0,0 +1,27 @@
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.NotEmpty;
/**
* @author lanhai
*/
@Data
public class OrderRefundExpressParam {
@Schema(description = "退款编号名称" , required = true)
@NotEmpty(message = "退款编号不能为空")
private String refundSn;
@Schema(description = "物流公司名称" , required = true)
@NotEmpty(message = "物流公司名称不能为空")
private String expressName;
@Schema(description = "物流单号" , required = true)
@NotEmpty(message = "物流单号不能为空")
private String expressNo;
}

View File

@@ -0,0 +1,36 @@
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
/**
* @author lanhai
*/
@Data
public class OrderRefundParam {
@Schema(description = "订单编号" , required = true)
@NotEmpty(message = "订单编号不能为空")
private String orderNumber;
@Schema(description = "申请类型(1:仅退款 2退款退货)" , required = true)
@NotNull(message = "申请类型不能为空")
private Integer applyType;
@Schema(description = "订单项id(全部退款是0)" , required = true)
@NotNull(message = "订单项id不能为空")
private Long orderItemId;
@Schema(description = "凭证图片列表" , required = true)
private String photoFiles;
@Schema(description = "申请原因" , required = true)
@NotEmpty(message = "订单编号不能为空")
private String buyerMsg;
}

View File

@@ -0,0 +1,46 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* @author lanhai
*/
public class OrderShopParam {
/** 店铺ID **/
@Schema(description = "店铺id" ,required=true)
private Long shopId;
/**
* 订单备注信息
*/
@Schema(description = "订单备注信息" ,required=true)
private String remarks;
public Long getShopId() {
return shopId;
}
public void setShopId(Long shopId) {
this.shopId = shopId;
}
public String getRemarks() {
return remarks;
}
public void setRemarks(String remarks) {
this.remarks = remarks;
}
}

View File

@@ -0,0 +1,54 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* @author lanhai
*/
@Schema(description = "支付参数")
public class PayParam {
/**
* 订单号
*/
@NotBlank(message="订单号不能为空")
@Schema(description = "订单号" ,required=true)
private String orderNumbers;
/**
* 支付方式
*/
@NotNull(message="支付方式不能为空")
@Schema(description = "支付方式 (1:微信支付 2:支付宝)" ,required=true)
private Integer payType;
public Integer getPayType() {
return payType;
}
public void setPayType(Integer payType) {
this.payType = payType;
}
public String getOrderNumbers() {
return orderNumbers;
}
public void setOrderNumbers(String orderNumbers) {
this.orderNumbers = orderNumbers;
}
}

View File

@@ -0,0 +1,58 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.validation.constraints.NotNull;
/**
* @author lanhai
*/
@Data
@Schema(description = "添加评论信息")
public class ProdCommParam {
/**
* 商品ID
*/
@Schema(description = "商品id" )
private Long prodId;
/**
* 订单项ID
*/
@Schema(description = "订单项ID" )
private Long orderItemId;
/**
* 评价0-5分
*/
@Schema(description = "评价0-5分" ,required=true)
@NotNull(message = "评价不能为空")
private Integer score;
@Schema(description = "评论内容" ,required=true)
private String content;
@Schema(description = "评论图片, 用逗号分隔" )
private String pics;
/**
* 是否匿名(1:是 0:否)
*/
@Schema(description = "是否匿名(1:是 0:否) 默认为否" )
private Integer isAnonymous;
@Schema(description = "* 评价(0好评 1中评 2差评)" )
private Integer evaluate;
}

View File

@@ -0,0 +1,36 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Pattern;
/**
* @author lanhai
*/
@Schema(description = "发送验证码参数")
public class SendSmsParam {
@Schema(description = "手机号" )
@Pattern(regexp="1[0-9]{10}",message = "请输入正确的手机号")
private String mobile;
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
}

View File

@@ -0,0 +1,28 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Schema(description = "购物车参数")
@Data
public class ShopCartParam {
@Schema(description = "购物项id" )
private Long basketId;
@Schema(description = "活动id,传0则不参与该活动" )
private Long discountId;
}

View File

@@ -0,0 +1,23 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class ShopCartParams {
List<ShopCartParam> shopCartParams;
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* @author lanhai
*/
@Data
@Schema(description = "提交订单参数")
public class SubmitOrderParam {
@Schema(description = "每个店铺提交的订单信息" ,required=true)
private List<OrderShopParam> orderShopParam;
@Schema(description = "订单号" )
public String orderNumber;
@Schema(description = "地址id",required=true)
private Long addressId;
}

View File

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.app.param;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@Schema(description = "设置用户信息")
public class UserInfoParam {
@Schema(description = "用户昵称" )
private String nickName;
@Schema(description = "用户头像" )
private String avatarUrl;
@Schema(description = "邀请码" )
private String inviteCode;
@Schema(description = "手机号" )
private String phone;
@Schema(description = "转向用户的手机号" )
private String receiverPhone;
@Schema(description = "转向用户的积分" )
private Double points;
}

View File

@@ -0,0 +1,71 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.bo;
import com.yami.shop.bean.enums.SmsType;
import java.util.Map;
/**
* @author lanhai
*/
public class SmsInfoBo {
private SmsType smsType;
private String userId;
private String mobile;
private Map<String, String> params;
public SmsInfoBo(SmsType smsType, String userId, String mobile, Map<String, String> params) {
this.smsType = smsType;
this.userId = userId;
this.mobile = mobile;
this.params = params;
}
public SmsType getSmsType() {
return smsType;
}
public void setSmsType(SmsType smsType) {
this.smsType = smsType;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public Map<String, String> getParams() {
return params;
}
public void setParams(Map<String, String> params) {
this.params = params;
}
}

View File

@@ -0,0 +1,17 @@
package com.yami.shop.bean.constant;
//通用
public class CurrencyConstant {
//甜狗充值
public static final String ORDINARY_MALL = "or";
//身份证比对ID card
public static final String POINTS_MALL = "poi";
//下单业务
public static final String VIP = "vip";
//退款业务
public static final String TK = "TK";
}

View File

@@ -0,0 +1,32 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.distribution;
import lombok.Data;
/**
* 用户购物数据
* @author lanhai
*/
@Data
public class UserShoppingDataDto {
/**
* 用户消费笔数
*/
private Double expenseNumber;
/**
* 用户消费金额
*/
private Double sumOfConsumption;
}

View File

@@ -0,0 +1,47 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author xuelijun
*/
@Schema(description = "提交订单")
@Data
public class AddOrderDto implements Serializable {
/**
* 业务类型
*/
private Integer bizType;
@Schema(description = "vip套餐id" )
private Integer vipPackageId;
@Schema(description = "商品id" )
private List<AddProdDto> prodIds;
@Schema(description = "购物车id 数组" )
private List<Long> basketIds;
@Schema(description = "商品数量" )
private Integer productNums;
/**
* 商品id
*/
private Long prodId;
@Schema(description = "收获地址id" )
private long addressId;
}

View File

@@ -0,0 +1,34 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* @author xuelijun
*/
@Schema(description = "商品id")
@Data
public class AddProdDto implements Serializable {
/**
* 商品id
*/
private Long prodId;
@Schema(description = "商品数量" )
private Integer productNums;
}

View File

@@ -0,0 +1,35 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Schema(description = "热搜数据")
@Data
public class HotSearchDto implements Serializable {
@Schema(description = "热搜id" )
private Long hotSearchId;
@Schema(description = "标题" )
private String title;
@Schema(description = "内容" )
private String content;
}

View File

@@ -0,0 +1,190 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import com.yami.shop.bean.model.Sku;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author lanhai
*/
@Data
public class ProductDto {
/**
* 商品ID
*/
private Long prodId;
/**
* 店铺id
*/
private Long shopId;
/**
* 店铺名称
*/
private String shopName;
/**
* 版本号
*/
private Integer version;
/**
* 商品名称
*/
private String prodName;
/**
* 原价
*/
private Double oriPrice;
/**
* 现价
*/
private Double price;
/**
* 简要描述,卖点等
*/
private String brief;
/**
* 商品主图
*/
private String pic;
/**
* 商品图片
*/
private String imgs;
/**
* 默认是1表示正常状态
*/
private Integer status;
/**
* 商品分类
*/
private Long categoryId;
/**
* 观看人数
*/
private Integer views;
/**
* 已经销售数量
*/
private Integer buys;
/**
* 评论数
*/
private Integer comments;
/**
* 评论得分
*/
private Integer commentScore;
/**
* 库存量
*/
private Integer stocks;
/**
* 实际库存
*/
private Integer actualStocks;
/**
* 库存警告
*/
private Integer stocksArm;
/**
* 关键字
*/
private String keyWord;
/**
* 是否包含用户自提
*/
private Integer hasUserPickUp;
/**
* 是否包含商家配送
*/
private Integer hasShopDelivery;
/**
* 运费模板id
*/
private Long transportId;
/**
* 有没发票
*/
private Integer hasInvoice;
/**
* 是否保修
*/
private Integer hasGuarantee;
/**
* 商品SEOTitle
*/
private String metaTitle;
/**
* 商品SEO desc
*/
private String metaDesc;
/**
* 商品SEO keywords
*/
private String metaKeywords;
/**
* 录入时间
*/
private Date recTime;
/**
* 修改时间
*/
private Date modifyTime;
/**
* 详细描述
*/
private String content;
/**
* sku列表
*/
private List<Sku> skuList;
/**
* 商品分类名称
*/
private String categoryName;
}

View File

@@ -0,0 +1,53 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@Schema(description = "搜索商品数据")
public class SearchProdDto {
@Schema(description = "商品id" )
private Long prodId;
@Schema(description = "商品照片" )
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@Schema(description = "商品名字" )
private String prodName;
@Schema(description = "商品价格" )
private Double price;
@Schema(description = "商品积分" )
private Double points;
@Schema(description = "商品评论数量" )
private Integer prodCommNumber;
@Schema(description = "好评率" )
private Double positiveRating;
@Schema(description = "好评数量" )
private Integer praiseNumber;
@Schema(description = "商品类型 0普通商品 1:积分商品 2福利商品 3积分和普通通用商品" )
private Integer type;
}

View File

@@ -0,0 +1,38 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
/**
* 富文本编辑器 图片上传返回数据
* @author lgh
*/
public class TinymceEditorDto {
private Boolean error = false;
private String path;
public Boolean getError() {
return error;
}
public void setError(Boolean error) {
this.error = error;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
}

View File

@@ -0,0 +1,114 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.yami.shop.bean.enums.VipType;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author xuelijun
*/
@Schema(description = "用户会员排行榜")
public class UserRankDto implements Serializable {
private static final long serialVersionUID = 2090714647038636892L;
/**
* ID
*/
@TableId(type = IdType.INPUT)
private String userId;
/**
* 用户昵称
*/
private String nickName;
/**
* 手机号码
*/
private String userMobile;
/**
* 积分
*/
private Integer score;
/**
* 会员等级
*/
private Integer vipGrade;
/**
* 会员等级
*/
private String vipGradeName;
public String getUserMobile() {
// 取前3位和后4位中间用****替换
String prefix = userMobile.substring(0, 3);
String suffix = userMobile.substring(7);
return prefix + "****" + suffix;
}
public void setUserMobile(String userMobile) {
this.userMobile = userMobile;
}
public String getVipGradeName() {
return VipType.instance(this.vipGrade).getPayTypeName();
}
public void setVipGradeName(String vipGradeName) {
this.vipGradeName = vipGradeName;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public Integer getVipGrade() {
return vipGrade;
}
public void setVipGrade(Integer vipGrade) {
this.vipGrade = vipGrade;
}
public Integer getScore() {
return score;
}
public void setScore(Integer score) {
this.score = score;
}
}

View File

@@ -0,0 +1,63 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* @author xuelijun
*/
@Schema(description = "用户积分首页信息")
@Data
public class UserScoreDto implements Serializable {
private static final long serialVersionUID = 2090714647038636892L;
/**
* 消费的总积分
*/
@Schema(description = "消费的总积分")
private Double consumeTotal;
/**
* 用户余额积分
*/
@Schema(description = "用户余额积分")
private Double score;
/**
* 消费的总积分
*/
@Schema(description = "消费的总积分")
private Double cumulativeScore;
/**
* 今天新增的积分
*/
@Schema(description = "今天新增的积分")
private Double todayScore;
/**
* 拉人的进度
*/
@Schema(description = "拉人的进度")
private Double progressTotal;
/**
* 返利积分
*/
@Schema(description = "返利积分")
private Double lachineTotal;
}

View File

@@ -0,0 +1,50 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@Schema(description = "福利赠送列表")
public class WelfareGiftRecordDto {
@Schema(description = "商品id" )
private Long prodId;
@Schema(description = "商品照片" )
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
@Schema(description = "商品名字" )
private String prodName;
@Schema(description = "商品价格" )
private Double price;
@Schema(description = "领取状态0未领取 1已领取" )
private Integer status;
@Schema(description = "用户id" )
private String userId;
@Schema(description = "创建时间" )
private String createTime;
@Schema(description = "赠送商品数量" )
private Integer quantity;
}

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* 地区层级
* @author cl
*/
public enum AreaLevelEnum {
/**
* 第一层
*/
FIRST_LEVEL(1),
/**
* 第二层
*/
SECOND_LEVEL(2),
/**
* 第三层
*/
THIRD_LEVEL(3)
;
private Integer num;
public Integer value() {
return num;
}
AreaLevelEnum(Integer num) {
this.num = num;
}
public static AreaLevelEnum instance(Integer value) {
AreaLevelEnum[] enums = values();
for (AreaLevelEnum statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,42 @@
package com.yami.shop.bean.enums;
import lombok.Getter;
/**
* @Author LGF
* @create 2020/10/26 16:36
*/
public enum BaseEnum {
/**
* 基础 枚举
*/
YES_ONE(1, ""),
NO_ZERO(0, ""),
ENABLE_ZERO(0, "启用"),
FORBIDDEN_ONE(1, "禁用"),
YES_BINDING(1, "已绑定"),
NO_BINDING(0, "未绑定"),
NO(1, "删除"),
YES(0, "正常"),
HIDE(3, "隐藏"),
NO_TWO(2, ""),
;
@Getter
Integer key;
@Getter
String value;
;
BaseEnum(Integer key, String value) {
this.key = key;
this.value = value;
}
}

View File

@@ -0,0 +1,66 @@
package com.yami.shop.bean.enums;
/**
* @Author xuelijun
* @Classname BizCodeEnum
* @Description
*/
public enum BizCodeEnum {
//超级群
BIZ_CODE_ORDINARY_MALL(1, "普通商城"),
//超级群
BIZ_CODE_POINTS_MALL(2, "积分商城"),
//会员
BIZ_CODE_MEMBER(3, "会员"),
//积分和普通通用商品
BIZ_CODE_GENRRAL(4, "积分和普通通用商品");
/** 描述 */
public String name;
public int type;
BizCodeEnum(int type, String name) {
this.name = name;
this.type = type;
}
public static String getBizCodeName(Integer type) {
if (type == null) {
return null;
}
for (BizCodeEnum result : BizCodeEnum.values()) {
if (type.equals(result.getType())) {
return result.getName();
}
}
return null;
}
public static BizCodeEnum getBizCodeEnum(Integer type) {
if (type == null) {
return null;
}
for (BizCodeEnum result : BizCodeEnum.values()) {
if (type.equals(result.getType())) {
return result;
}
}
return null;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
*/
public enum MessageStatus {
/**
* 小程序
*/
CANCEL(0),
RELEASE(1);
private Integer num;
public Integer value() {
return num;
}
MessageStatus(Integer num){
this.num = num;
}
}

View File

@@ -0,0 +1,28 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* 订单入口
* @author LGH
*/
public enum OrderEntry {
/**
* 立即购买
*/
BUY_NOW,
/**
* 购物车
*/
SHOP_CART
}

View File

@@ -0,0 +1,75 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
*/
public enum OrderStatus {
/**
* 没有付款.待付款
*/
UNPAY(1),
/**
* 已经付款,但卖家没有发货.待发货
*/
PADYED(2),
/**
* 发货,导致实际库存减少,没有确认收货.待收货
*/
CONSIGNMENT(3),
/**
* 收货,没有评价.待评价
*/
//CONFIRM(4),
/**
* 评价后交易成功购买数增加1.
*/
SUCCESS(5),
/**
* 评价后交易成功购买数增加1.
*/
CLOSE(6),
/**
* 退款中
*/
REFUNDING(7),
/**
* 退款完成
*/
REFUNDSUCCESS(8);
private Integer num;
public Integer value() {
return num;
}
OrderStatus(Integer num) {
this.num = num;
}
public static OrderStatus instance(Integer value) {
OrderStatus[] enums = values();
for (OrderStatus statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,54 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
*/
public enum PayType {
FREE(0,"免费福利"),
/** 微信支付*/
WECHATPAY(1,"微信支付"),
/** "支付宝*/
ALIPAY(2,"支付宝"),
/** "支付宝*/
POINTS(3,"积分支付");
private Integer num;
private String payTypeName;
public Integer value() {
return num;
}
public String getPayTypeName() {
return payTypeName;
}
PayType(Integer num,String payTypeName){
this.num = num;
this.payTypeName = payTypeName;
}
public static PayType instance(Integer value) {
PayType[] enums = values();
for (PayType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,44 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* 商品规格参数、属性类型
* @author lgh
*/
public enum ProdPropRule {
// 规格属性 (用于商品商品发布时关联sku)
SPEC(1),
// 规格参数(用于商品搜索时,与分类关联搜索)
ATTRIBUTE(2);
private Integer num;
public Integer value() {
return num;
}
ProdPropRule(Integer num){
this.num = num;
}
public static ProdPropRule instance(Integer value) {
ProdPropRule[] enums = values();
for (ProdPropRule statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,69 @@
package com.yami.shop.bean.enums;
/**
* @Author xuelijun
* @Classname BizCodeEnum
* @Description
*/
public enum ProdTypeEnum {
//超级群
BIZ_CODE_ORDINARY_PRODUCT(0, "普通商城"),
//超级群
BIZ_CODE_POINTS_PRODUCT(1, "积分商城"),
//福利商品
BIZ_CODE_BENEFIT_PRODUCT(2, "福利商品"),
//积分和普通通用商品
BIZ_CODE_GENRRAL_PRODUCT(3, "积分和普通通用商品"),
//积分和普通通用商品
BIZ_CODE_MEMBER(4, "会员");
/** 描述 */
public String name;
public Integer type;
ProdTypeEnum(Integer type, String name) {
this.name = name;
this.type = type;
}
public static String getBizCodeName(Integer type) {
if (type == null) {
return null;
}
for (ProdTypeEnum result : ProdTypeEnum.values()) {
if (type.equals(result.getType())) {
return result.getName();
}
}
return null;
}
public static ProdTypeEnum getBizCodeEnum(Integer type) {
if (type == null) {
return null;
}
for (ProdTypeEnum result : ProdTypeEnum.values()) {
if (type.equals(result.getType())) {
return result;
}
}
return null;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
}

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author XUELIJUN
*/
public enum ScoreType {
/** "拉新人开通vip*/
LACHINE_VIP(1,"拉新人开通vip"),
/** "拉新人消费返利*/
LACHINE_ORDER(2,"拉新人消费返利"),
CONSUME(3,"自己消费返利"),
RECHARGE_VIP(4,"充值vip")
;
private Integer num;
private String payTypeName;
public Integer value() {
return num;
}
public String getPayTypeName() {
return payTypeName;
}
ScoreType(Integer num, String payTypeName){
this.num = num;
this.payTypeName = payTypeName;
}
public static ScoreType instance(Integer value) {
ScoreType[] enums = values();
for (ScoreType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,66 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lh
*/
public enum SendType {
/**
* 用户注册验证码
*/
REGISTER(12, 1,"用户注册验证码"),
/**
* 发送登录验证码
*/
LOGIN(13, 1,"发送登录验证码"),
/**
* 修改密码验证码
*/
UPDATE_PASSWORD(14, 1,"修改密码验证码"),
/**
* 身份验证验证码
*/
VALID(15, 1,"身份验证验证码")
;
private Integer value;
/**
* 1为全部平台发送的消息2为根据情况
*/
private Integer type;
private String desc;
SendType(Integer value, Integer type, String desc) {
this.value = value;
this.type = type;
this.desc = desc;
}
public Integer getValue() {
return value;
}
public String getDesc() {
return desc;
}
public static SendType instance(Integer value) {
SendType[] enums = values();
for (SendType statusEnum : enums) {
if (statusEnum.getValue().equals(value)) {
return statusEnum;
}
}
return null;
}
public Integer getType() {
return type;
}
}

View File

@@ -0,0 +1,107 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
*/
public enum SmsType {
/**
*发送验证码
*/
VALID(0,"SMS_152288010","感谢您对xxx的支持。您的验证码是${code},请勿把验证码泄漏给第三方。"),
/**
* 商品通知
*/
STOCKS_ARM(1,"SMS_152288054","尊敬的${name}感谢您对xxx的支持。您的${prodName}库存仅剩${num},为免影响您的客户下单,请及时补货!"),
/**
* 行业客户审核通过通知
*/
DISTRIBUTOR_PASS_AUDIT(2,"SMS_152283207","尊敬的${name}感谢您对xxx的支持。您提交的资料已审核通过祝您购物愉快!"),
/**
* 分销商订单购买成功通知
*/
DISTRIBUTOR_BUY_SUCCESS(3,"SMS_152283148","尊敬的${name}感谢您对xxx的支持。您的订单${orderNumber}已确认成功,我们会尽快发货!"),
/**
* 用户发货通知
*/
NOTIFY_DVY(4,"SMS_152283152","尊敬的${name}感谢您对xxx的支持。您的订单${orderNumber}已通过${dvyName}发货,快递单号是:${dvyFlowId}。请注意查收。"),
/**
* 代理商审核通知
*/
AGENT_PASS_AUDIT(5,"SMS_152288028","尊敬的${name}感谢您对xxx的支持。您提交的代理商申请已审核通过请重新登陆获取新的会员信息。"),
/**
* 代理商商品被购买通知
*/
NOTIFY_BUY(6,"SMS_152288372","尊敬的${name}感谢您对xxx的支持。与您有关联的订单${orderNumber}已生成,客户${buyerName},提货${prodName},数量${buyNum},剩余库存为${stockNum}。"),
/**
* 代理商新增分销商通知
*/
ADD_DISTRIBUTOR(7,"SMS_152283192","尊敬的${name}感谢您对xxx的支持。您有新增绑定客户资料生成客户${userName},联系方式${mobilePhone},联系地址${addr},合计共有客户${number}名。"),
/**
* 代理商解除与分销商合作通知
*/
UNBINDING(8,"SMS_152283198","尊敬的${name}感谢您对xxx的支持。您已成功解除与此客户的绑定关系客户${userName},联系方式${mobilePhone},联系地址${addr},现合计共有客户${number}名。"),
/**
* 代理商补货订单模板
*/
AGENT_BUY_SUCCESS(9,"SMS_152288475","尊敬的${name}感谢您对xxx的支持。您的补货订单${orderNumber}已完成入库,${prodName}剩余库存为${stockNum}。"),
/**
* 普通用户下单成功通知
*/
USER_BUY_SUCCESS(10,"SMS_152288329","亲爱的客户感谢您对xxx的支持。您的订单${orderNumber}已支付成功。我们会尽快发货!")
;
private Integer num;
private String templateCode;
private String content;
public Integer value() {
return num;
}
SmsType(Integer num,String templateCode,String content){
this.num = num;
this.templateCode = templateCode;
this.content = content;
}
public static SmsType instance(Integer value) {
SmsType[] enums = values();
for (SmsType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
public String getTemplateCode() {
return this.templateCode;
}
public String getContent() {
return this.content;
}
}

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* 运费收费方式 0 按件数,1 按重量 2 按体积)
* @author LGH
*/
public enum TransportChargeType {
/**
* 0全部商品参与
*/
COUNT(0),
/**
* 1指定商品参与
*/
WEIGHT(1),
/**
* 2指定商品不参与
*/
VOLUME(2)
;
private Integer num;
public Integer value() {
return num;
}
TransportChargeType(Integer num){
this.num = num;
}
public static TransportChargeType instance(Integer value) {
TransportChargeType[] enums = values();
for (TransportChargeType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,48 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
* 文件上传方式 1.本地文件上传 2.七牛云
*/
public enum UploadType {
/**
* 本地文件上传
*/
LOCAL(1),
/**
* 七牛云
*/
QINIU(2);
private Integer num;
public Integer value() {
return num;
}
UploadType(Integer num) {
this.num = num;
}
public static UploadType instance(Integer value) {
UploadType[] enums = values();
for (UploadType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.enums;
/**
* @author lanhai
*/
public enum VipType {
/** 普通用户*/
ORDINARY_USER(0,"普通会员"),
/** "品牌会员*/
ORDINARY_VIP(1,"品牌会员"),
/** "高级会员*/
SENIOR_VIP(2,"高级会员"),
/** "代理*/
AGENT(3,"代理会员");
private Integer num;
private String payTypeName;
public Integer value() {
return num;
}
public String getPayTypeName() {
return payTypeName;
}
VipType(Integer num, String payTypeName){
this.num = num;
this.payTypeName = payTypeName;
}
public static VipType instance(Integer value) {
VipType[] enums = values();
for (VipType statusEnum : enums) {
if (statusEnum.value().equals(value)) {
return statusEnum;
}
}
return null;
}
}

View File

@@ -0,0 +1,26 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.model.Order;
import lombok.AllArgsConstructor;
import lombok.Data;
/**
* 取消订单的事件
* @author
*/
@Data
@AllArgsConstructor
public class CancelOrderEvent {
private Order order;
}

View File

@@ -0,0 +1,45 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.app.dto.ShopCartDto;
import com.yami.shop.bean.app.dto.ShopCartItemDto;
import com.yami.shop.bean.app.dto.ShopCartOrderDto;
import com.yami.shop.bean.app.dto.ShopCartOrderMergerDto;
import com.yami.shop.bean.app.param.OrderParam;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* 确认订单时的事件
* @author LGH
*/
@Data
@AllArgsConstructor
public class ConfirmOrderEvent {
/**
* 购物车已经组装好的店铺订单信息
*/
private ShopCartOrderDto shopCartOrderDto;
/**
* 下单请求的参数
*/
private OrderParam orderParam;
/**
* 店铺中的所有商品项
*/
private List<ShopCartItemDto> shopCartItems;
}

View File

@@ -0,0 +1,28 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.model.Order;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* 订单付款成功的事件
* @author
*/
@Data
@AllArgsConstructor
public class PaySuccessOrderEvent {
private List<Order> orders;
}

View File

@@ -0,0 +1,27 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.model.Order;
import lombok.AllArgsConstructor;
import lombok.Data;
/**
* 确认收货的事件
* @author
*/
@Data
@AllArgsConstructor
public class ReceiptOrderEvent {
private Order order;
}

View File

@@ -0,0 +1,37 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.app.dto.ShopCartDto;
import com.yami.shop.bean.app.dto.ShopCartItemDto;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* 购物车商品发生改变时的事件
* @author LGH
*/
@Data
@AllArgsConstructor
public class ShopCartEvent {
/**
* 将要组装的单个店铺的店铺信息
*/
private ShopCartDto shopCartDto;
/**
* 该店铺下的所有商品信息
*/
private List<ShopCartItemDto> shopCartItemDtoList;
}

View File

@@ -0,0 +1,37 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.event;
import com.yami.shop.bean.app.dto.ShopCartItemDto;
import com.yami.shop.bean.app.dto.ShopCartOrderDto;
import com.yami.shop.bean.app.dto.ShopCartOrderMergerDto;
import com.yami.shop.bean.app.param.OrderParam;
import com.yami.shop.bean.model.Order;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* 提交订单时的事件
* @author LGH
*/
@Data
@AllArgsConstructor
public class SubmitOrderEvent {
/**
* 完整的订单信息
*/
private final ShopCartOrderMergerDto mergerOrder;
private List<Order> orders;
}

View File

@@ -0,0 +1,44 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author lanhai
*/
@Data
@TableName("tz_area")
public class Area implements Serializable {
private static final long serialVersionUID = -6013320537436191451L;
@TableId
@Schema(description = "地区id" ,required=true)
private Long areaId;
@Schema(description = "地区名称" ,required=true)
private String areaName;
@Schema(description = "地区上级id" ,required=true)
private Long parentId;
@Schema(description = "地区层级" ,required=true)
private Integer level;
@TableField(exist=false)
private List<Area> areas;
}

View File

@@ -0,0 +1,65 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_attach_file")
public class AttachFile implements Serializable {
@TableId
private Long fileId;
/**
* 文件路径
*/
private String filePath;
/**
* 文件类型
*/
private String fileType;
/**
* 文件大小
*/
private Integer fileSize;
/**
* 上传时间
*/
private Date uploadTime;
/**
* 文件关联的表主键id
*/
private Long fileJoinId;
/**
* 文件关联表类型1 商品表 @see FileJoinType
*/
private Integer fileJoinType;
}

View File

@@ -0,0 +1,78 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_basket")
public class Basket implements Serializable {
/**
* 主键
*/
@TableId
private Long basketId;
/**
* 店铺ID
*/
private Long shopId;
/**
* 产品ID
*/
private Long prodId;
/**
* SkuID
*/
private Long skuId;
/**
* 用户ID
*/
private String userId;
/**
* 购物车产品个数
*/
private Integer basketCount;
/**
* 购物时间
*/
private Date basketDate;
/**
* 满减活动ID
*/
private Long discountId;
/**
* 分销推广人卡号
*/
private String distributionCardNo;
}

View File

@@ -0,0 +1,93 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_brand")
public class Brand implements Serializable {
/**
* 主键
*/
@TableId
private Long brandId;
/**
* 品牌名称
*/
private String brandName;
/**
* 图片路径
*/
private String brandPic;
/**
* 用户ID
*/
private String userId;
/**
* 备注
*/
private String memo;
/**
* 顺序
*/
private Integer seq;
/**
* 默认是1表示正常状态,0为下线状态
*/
private Integer status;
/**
* 简要描述
*/
private String brief;
/**
* 记录时间
*/
private Date recTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 品牌首字母
*/
private String firstChar;
/**
* 内容
*/
private String content;
}

View File

@@ -0,0 +1,123 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author lanhai
*/
@Data
@TableName("tz_category")
public class Category implements Serializable {
/**
* 类目ID
*
*/
@TableId
private Long categoryId;
/**
* 店铺id
*/
private Long shopId;
/**
* 父节点
*/
private Long parentId = 0L;
/**
* 产品类目名称
*/
private String categoryName;
/**
* 类目图标
*/
@JsonSerialize(using = ImgJsonSerializer.class)
private String icon;
/**
* 类目的显示图片
*/
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
/**
* 排序
*/
private Integer seq;
/**
* 默认是1表示正常状态,0为下线状态
*/
private Integer status;
/**
* 记录时间
*/
private Date recTime;
/**
* 分类层级
*/
private Integer grade;
/**
* 更新时间
*/
private Date updateTime;
/**
* 品牌id
*/
@TableField(exist=false)
private List<Long> brandIds;
/**
* 参数id
*/
@TableField(exist=false)
private List<Long> attributeIds;
/**
* 品牌列表
*/
@TableField(exist=false)
private List<Brand> brands;
/**
* 参数列表
*/
@TableField(exist=false)
private List<ProdProp> prodProps;
/**
* 商品列表
*/
@TableField(exist=false)
private List<Product> products;
@TableField(exist=false)
private List<Category> categories;
}

View File

@@ -0,0 +1,39 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
@TableName("tz_category_brand")
public class CategoryBrand implements Serializable {
@TableId
private Long id;
/**
* 分类id
*/
private Long categoryId;
/**
* 品牌id
*/
private Long brandId;
}

View File

@@ -0,0 +1,39 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
/**
* @author lanhai
*/
@Data
@TableName("tz_category_prop")
public class CategoryProp implements Serializable {
@TableId
private Long id;
/**
* 分类id
*/
private Long categoryId;
/**
* 商品属性id即表tz_prod_prop中的prop_id
*/
private Long propId;
}

View File

@@ -0,0 +1,62 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_delivery")
public class Delivery implements Serializable {
/**
* ID
*/
@TableId
private Long dvyId;
/**
* 物流公司名称
*/
private String dvyName;
/**
* 公司主页
*/
private String companyHomeUrl;
/**
* 建立时间
*/
private Date recTime;
/**
* 修改时间
*/
private Date modifyTime;
/**
* 物流查询接口
*/
private String queryUrl;
}

View File

@@ -0,0 +1,64 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_hot_search")
public class HotSearch implements Serializable {
/**
* 主键
*/
@TableId
private Long hotSearchId;
/**
* 店铺id
*/
private Long shopId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String content;
/**
* 录入时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date recDate;
/**
* 顺序
*/
private Integer seq;
/**
* 状态 默认是1,0为下线
*/
private Integer status;
}

View File

@@ -0,0 +1,101 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ImgJsonSerializer;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_index_img")
public class IndexImg implements Serializable {
private static final long serialVersionUID = -3468251351681518798L;
/**
* 主键
*/
@TableId
private Long imgId;
/**
* 店铺ID
*/
private Long shopId;
/**
* 图片
*/
private String imgUrl;
/**
* 说明文字,描述
*/
private String des;
/**
* 标题
*/
private String title;
/**
* 链接
*/
private String link;
/**
* 状态
*/
private Integer status;
/**
* 顺序
*/
private Integer seq;
/**
* 上传时间
*/
private Date uploadTime;
/**
* 类型
*/
private int type;
/**
* 关联id
*/
private Long relation;
/**
* 商品图片
*/
@TableField(exist = false)
@JsonSerialize(using = ImgJsonSerializer.class)
private String pic;
/**
* 商品名称
*/
@TableField(exist = false)
private String prodName;
}

View File

@@ -0,0 +1,53 @@
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableName;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @author user
* @since 2025-01-07 15:47
*/
@Data
@TableName("tz_invitation")
public class Invitation implements Serializable{
private static final long serialVersionUID = 1L;
/**
* 邀请码
*/
private String invitationCode;
/**
* 邀请人id
*/
private String invitationUserId;
/**
* 创建时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 修改时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**
* 过期时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date expireTime;
/**
* 状态
*/
@NotBlank(message = "状态不能为空")
private Integer status;
}

View File

@@ -0,0 +1,66 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_message")
public class Message implements Serializable {
@TableId
private Long id;
/**
* 留言创建时间
*/
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 姓名
*/
private String userName;
/**
* 邮箱
*/
private String email;
/**
* 联系方式
*/
private String contact;
/**
* 状态0:未审核 1审核通过
*/
private Integer status;
/**
* 留言内容
*/
private String content;
/**
* 留言回复
*/
private String reply;
}

View File

@@ -0,0 +1,76 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* 公告管理
*
* @author hzm
* @date 2019-04-18 21:21:40
*/
@Data
@TableName("tz_notice")
public class Notice implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 公告id
*/
@TableId
private Long id;
/**
* 店铺id
*/
private Long shopId;
/**
* 公告标题
*/
private String title;
/**
* 公告内容
*/
private String content;
/**
* 状态(1:公布 0:撤回)
*/
private Integer status;
/**
* 是否置顶1:是 0
*/
private Integer isTop;
/**
* 发布时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date publishTime;
/**
* 更新时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
}

View File

@@ -0,0 +1,228 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author lanhai
*/
@Data
@TableName("tz_order")
public class Order implements Serializable {
private static final long serialVersionUID = 6222259729062826852L;
/**
* 订单ID
*/
@TableId
private Long orderId;
/**
* 店铺id
*/
private Long shopId;
/**
* 产品名称,多个产品将会以逗号隔开
*/
private String prodName;
/**
* 物流公司名称
*/
private String dvyName;
/**
* 订购用户ID
*/
private String userId;
/**
* 订购流水号
*/
private String orderNumber;
/**
* 总值
*/
private Double total;
/**
* 实际总值
*/
private Double actualTotal;
/**
* 支付方式 1 微信支付 2 支付宝
*/
private Integer payType;
/**
* 订单备注
*/
private String remarks;
/**
* 订单状态 -1 已取消 0:待付款 1:待发货 2:待收货 3:已完成
*/
private Integer status;
/**
* 配送类型
*/
private String dvyType;
/**
* 配送方式ID
*/
private Long dvyId;
/**
* 物流单号
*/
private String dvyFlowId;
/**
* 订单运费
*/
private Double freightAmount;
/**
* 用户订单地址Id
*/
private Long addrOrderId;
/**
* 订单商品总数
*/
private Integer productNums;
/**
* 套餐id
*/
private Integer packageId;
/**
* 第三方交易单号
*/
private String thirdTradeNo;
/**
* 第三方交易单号
*/
private String prodNumber;
/**
* 订购时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 订单更新时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**
* 付款时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date payTime;
/**
* 发货时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date dvyTime;
/**
* 完成时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date finallyTime;
/**
* 取消时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date cancelTime;
/**
* 是否已经支付1已经支付过0没有支付过
*/
private Integer isPayed;
/**
* 用户订单删除状态0没有删除 1回收站 2永久删除
*/
private Integer deleteStatus;
/**
* 0:默认,1:在处理,2:处理完成
*/
private Integer refundSts;
/**
* 优惠总额
*/
private Double reduceAmount;
/**
* 订单类型
*/
private Integer orderType;
/**
* 花费商品积分总数
*/
private Double pointsTotal;
/**
* 支付单号
*/
private String payOrder;
/**
* 店铺名称
*/
@TableField(exist = false)
private String shopName;
@TableField(exist = false)
private List<OrderItem> orderItems;
/**
* 用户订单地址
*/
@TableField(exist = false)
private UserAddrOrder userAddrOrder;
}

View File

@@ -0,0 +1,137 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author lanhai
*/
@Data
@TableName("tz_order_item")
public class OrderItem implements Serializable {
private static final long serialVersionUID = 7307405761190788407L;
/**
* 订单项ID
*/
@TableId(type = IdType.AUTO)
private Long orderItemId;
private Long shopId;
/**
* 订单sub_number
*/
private String orderNumber;
/**
* 产品ID
*/
private Long prodId;
/**
* 产品SkuID
*/
private Long skuId;
/**
* 购物车产品个数
*/
private Integer prodCount;
/**
* 产品名称
*/
private String prodName;
/**
* sku名称
*/
private String skuName;
/**
* 产品主图片路径
*/
private String pic;
/**
* 产品价格
*/
private Double price;
/**
* 用户Id
*/
private String userId;
/**
* 商品总金额
*/
private Double productTotalAmount;
/**
* 产品成本
*/
private Double oriPrice;
/**
* 购物时间
*/
private Date recTime;
/**
* 创建时间
*/
private Date createTime;
/**
* 评论状态: 0 未评价 1 已评价
*/
private Integer commSts;
/**
* 推广员使用的推销卡号
*/
private String distributionCardNo;
/**
* 加入购物车的时间
*/
private Date basketDate;
/**
* 折后价格
*/
private Double discountedPrice;
/**
* 商品积分值
*/
private Double points;
}

View File

@@ -0,0 +1,202 @@
/*
* Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved.
*
* https://www.mall4j.com/
*
* 未经允许,不可做商业用途!
*
* 版权所有,侵权必究!
*/
package com.yami.shop.bean.model;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
/**
* @author lanhai
*/
@Data
@TableName("tz_order_refund")
public class OrderRefund implements Serializable {
/**
* 记录ID
*/
@TableId
private Long refundId;
/**
* shopId
*/
private Long shopId;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单流水号
*/
private String orderNumber;
/**
* 订单总金额
*/
private Double orderAmount;
/**
* 订单项ID 全部退款是0
*/
private Long orderItemId;
/**
* 退款编号
*/
private String refundSn;
/**
* 订单支付流水号
*/
private String flowTradeNo;
/**
* 第三方退款单号(微信退款单号)
*/
private String outRefundNo;
/**
* 订单支付方式 1 微信支付 2 支付宝
*/
private Integer payType;
/**
* 订单支付名称
*/
private String payTypeName;
/**
* 买家ID
*/
private String userId;
/**
* 退货数量
*/
private Integer goodsNum;
/**
* 退款金额
*/
private Double refundAmount;
/**
* 申请类型:1,仅退款,2退款退货
*/
private Integer applyType;
/**
* 处理状态:1为待审核,2为同意,3为不同意
*/
private Integer refundSts;
/**
* 处理退款状态: 0:退款处理中 1:退款成功 -1:退款失败
*/
private Integer returnMoneySts;
/**
* 申请时间
*/
private Date applyTime;
/**
* 卖家处理时间
*/
private Date handelTime;
/**
* 退款时间
*/
private Date refundTime;
/**
* 文件凭证json
*/
private String photoFiles;
/**
* 申请原因
*/
private String buyerMsg;
/**
* 卖家备注
*/
private String sellerMsg;
/**
* 物流公司名称
*/
private String expressName;
/**
* 物流单号
*/
private String expressNo;
/**
* 发货时间
*/
private Date shipTime;
/**
* 收货时间
*/
private Date receiveTime;
/**
* 收货备注
*/
private String receiveMessage;
/**
* 拒绝原因
*/
private String rejectMessage;
/**
* 订单列表
*/
@TableField(exist = false)
private List<OrderItem> orderItems;
}

Some files were not shown because too many files have changed in this diff Show More