彭雪彬
2025-07-15 a7501803a3ca43310e57a5dd912e5047919c2e43
oying-system/src/main/java/com/oying/modules/pc/store/domain/Store.java
@@ -3,10 +3,14 @@
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.oying.base.BaseEntity;
import com.oying.modules.pc.product.domain.Product;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.geo.Point;
import javax.validation.constraints.NotBlank;
@@ -14,18 +18,20 @@
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalTime;
import java.time.ZonedDateTime;
import java.util.Date;
import java.util.List;
/**
 * @author lzp
 * @date 2025-04-21
 **/
@Data
@Getter
@Setter
@TableName("pc_store")
public class Store implements Serializable {
public class Store extends BaseEntity implements Serializable {
    @TableId(value = "store_id", type = IdType.AUTO)
    @ApiModelProperty(value = "唯一标识")
    @ApiModelProperty(value = "店铺ID")
    private Long storeId;
    @NotNull
@@ -51,16 +57,20 @@
    private String businessScope;
    @NotNull
    @ApiModelProperty(value = "状态:1000-草稿  1002-正常  1003-暂停营业 1004-关闭")
    @ApiModelProperty(value = "状态")
    private Integer status;
    @NotBlank
    @ApiModelProperty(value = "店铺logo图片")
    private Long logoImageId;
    @NotBlank
    @ApiModelProperty(value = "店铺logo图片Url")
    private String logoImageUrl;
    @ApiModelProperty(value = "店铺封面图")
    private Long coverImageId;
    @ApiModelProperty(value = "店铺封面图Url")
    private String coverImageUrl;
    @ApiModelProperty(value = "店铺描述")
    private String description;
@@ -82,6 +92,9 @@
    @ApiModelProperty(value = "营业结束时间")
    private LocalTime closeTime;
    @ApiModelProperty(value = "营业状态")
    private Integer businessStatus;
    @ApiModelProperty(value = "省级代码")
    private String provinceCode;
@@ -113,21 +126,46 @@
    @ApiModelProperty(value = "营业半径(米)")
    private Integer radius;
    @NotNull
    @ApiModelProperty(value = "创建人")
    private Long createBy;
    @ApiModelProperty(value = "是否支持退货")
    private Integer returns;
    @ApiModelProperty(value = "是否支持自提")
    private Integer selfPickup;
    @ApiModelProperty(value = "审核状态")
    private Integer auditStatus;
    @TableField(exist = false)
    @ApiModelProperty(value = "评分")
    private Double score = 0d;
    @TableField(exist = false)
    @ApiModelProperty(value = "配送距离")
    private Integer deliveryDuration = 0;
    @TableField(exist = false)
    @ApiModelProperty(value = "配送时长")
    private Integer deliveryTime = 0;
    @TableField(exist = false)
    @ApiModelProperty(value = "销量")
    private Integer totalUnitsSold = 0;
    @TableField(exist = false)
    @ApiModelProperty(value = "月销售量")
    private Integer monthlyUnitsSold = 0;
    @NotNull
    @ApiModelProperty(value = "创建日期")
    private ZonedDateTime createTime;
    @ApiModelProperty(value = "版本号")
    private Long version;
    @NotNull
    @ApiModelProperty(value = "修改人")
    private Long updateBy;
    @TableField(exist = false)
    @ApiModelProperty(value = "资质")
    private List<StoreQualification> qualifications;
    @NotNull
    @ApiModelProperty(value = "修改时间")
    private ZonedDateTime updateTime;
    @TableField(exist = false)
    @ApiModelProperty(value = "商品")
    private List<Product> products;
    public void copy(Store source) {
        BeanUtil.copyProperties(source, this, CopyOptions.create().setIgnoreNullValue(true));