xiangpei
2025-05-13 3655b69f8a8d278603da22fe86d5d4fe5cb64f2a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
package cn.lili.modules.store.entity.dos;
 
import cn.lili.mybatis.BaseEntity;
import cn.lili.common.utils.BeanUtil;
import cn.lili.modules.member.entity.dos.Member;
import cn.lili.modules.store.entity.dto.AdminStoreApplyDTO;
import cn.lili.modules.store.entity.enums.StoreStatusEnum;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;
 
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.Size;
import java.util.Date;
 
/**
 * 店铺
 *
 * @author pikachu
 * @since 2020-02-18 15:18:56
 */
@Data
@TableName("li_store")
@ApiModel(value = "店铺")
@NoArgsConstructor
public class Store extends BaseEntity {
 
    private static final long serialVersionUID = -5861767726387892272L;
 
    @ApiModelProperty(value = "会员Id")
    private String memberId;
 
    @ApiModelProperty(value = "会员名称")
    private String memberName;
 
    @ApiModelProperty(value = "店铺名称")
    private String storeName;
 
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "店铺关闭时间")
    private Date storeEndTime;
 
    /**
     * @see StoreStatusEnum
     */
    @ApiModelProperty(value = "店铺状态")
    private String storeDisable;
 
    @ApiModelProperty(value = "是否自营")
    private Boolean selfOperated;
 
    @ApiModelProperty(value = "店铺logo")
    private String storeLogo;
 
    @ApiModelProperty(value = "经纬度")
    @NotEmpty
    private String storeCenter;
 
    @Size(min = 6, max = 200, message = "店铺简介需在6-200字符之间")
    @NotBlank(message = "店铺简介不能为空")
    @ApiModelProperty(value = "店铺简介")
    private String storeDesc;
 
    @ApiModelProperty(value = "地址名称, ','分割")
    private String storeAddressPath;
 
    @ApiModelProperty(value = "地址id,','分割 ")
    private String storeAddressIdPath;
 
    @ApiModelProperty(value = "详细地址")
    private String storeAddressDetail;
 
    @ApiModelProperty(value = "描述评分")
    private Double descriptionScore;
 
    @ApiModelProperty(value = "服务评分")
    private Double serviceScore;
 
    @ApiModelProperty(value = "物流评分")
    private Double deliveryScore;
 
    @ApiModelProperty(value = "商品数量")
    private Integer goodsNum;
 
    @ApiModelProperty(value = "收藏数量")
    private Integer collectionNum;
 
    @ApiModelProperty(value = "腾讯云智服唯一标识")
    private String yzfSign;
 
    @ApiModelProperty(value = "腾讯云智服小程序唯一标识")
    private String yzfMpSign;
 
    @ApiModelProperty(value = "udesk IM标识")
    private String merchantEuid;
 
    public Boolean getPageShow() {
        if(pageShow == null){
            return false;
        }
        return pageShow;
    }
 
    public Boolean getSelfPickFlag() {
        if(selfPickFlag == null){
            return false;
        }
        return selfPickFlag;
    }
 
    @ApiModelProperty(value = "默认页面是否开启")
    private Boolean pageShow;
 
    @ApiModelProperty(value = "是否开启自提")
    private Boolean selfPickFlag;
 
    public Store(Member member) {
        this.memberId = member.getId();
        this.memberName = member.getUsername();
        storeDisable = StoreStatusEnum.APPLY.value();
        selfOperated = false;
        deliveryScore = 5.0;
        serviceScore = 5.0;
        descriptionScore = 5.0;
        goodsNum = 0;
        collectionNum = 0;
        this.selfPickFlag = false;
        this.pageShow = false;
    }
 
    public Store(Member member, AdminStoreApplyDTO adminStoreApplyDTO) {
        BeanUtil.copyProperties(adminStoreApplyDTO, this);
 
        this.memberId = member.getId();
        this.memberName = member.getUsername();
        storeDisable = StoreStatusEnum.APPLYING.value();
        selfOperated = false;
        deliveryScore = 5.0;
        serviceScore = 5.0;
        descriptionScore = 5.0;
        goodsNum = 0;
        collectionNum = 0;
        this.selfPickFlag = false;
        this.pageShow = false;
    }
 
}