package com.sinata.rest.modular.member.model;
|
|
import cn.hutool.core.date.DatePattern;
|
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.baomidou.mybatisplus.extension.activerecord.Model;
|
import com.sinata.rest.core.util.DateUtils;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
|
import java.io.Serializable;
|
|
import java.time.LocalDateTime;
|
import java.time.format.DateTimeFormatter;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Objects;
|
|
/**
|
* <p>
|
* 商家信息
|
* </p>
|
*
|
* @author goku
|
* @since 2023-03-23
|
*/
|
@Data
|
@TableName("mem_merchant")
|
@ApiModel(value = "商家信息")
|
public class MemMerchant extends Model<MemMerchant> {
|
|
private static final long serialVersionUID = 1L;
|
|
/**
|
* ID
|
*/
|
@TableId(value = "id", type = IdType.AUTO)
|
@ApiModelProperty(value = "ID")
|
private Integer id;
|
/**
|
* 创建时间
|
*/
|
@TableField("create_time")
|
@ApiModelProperty(value = "创建时间")
|
private Date createTime;
|
/**
|
* 商家名称
|
*/
|
@TableField("merchant_name")
|
@ApiModelProperty(value = "商家名称")
|
private String merchantName;
|
/**
|
* 联系人
|
*/
|
@ApiModelProperty(value = "联系人")
|
private String linkman;
|
/**
|
* 联系电话
|
*/
|
@TableField("link_phone")
|
@ApiModelProperty(value = "联系电话")
|
private String linkPhone;
|
/**
|
* 申请用户ID
|
*/
|
@TableField("user_id")
|
@ApiModelProperty(value = "申请用户ID")
|
private Integer userId;
|
/**
|
* 营业执照
|
*/
|
@TableField("business_license")
|
@ApiModelProperty(value = "营业执照")
|
private String businessLicense;
|
/**
|
* 其他资料
|
*/
|
@TableField("other_details")
|
@ApiModelProperty(value = "运营资质")
|
private String otherDetails;
|
/**
|
* 头部图片
|
*/
|
@TableField("head_picture")
|
@ApiModelProperty(value = "门店环境")
|
private String headPicture;
|
/**
|
* 申请说明
|
*/
|
@TableField("apply_des")
|
@ApiModelProperty(value = "申请说明")
|
private String applyDes;
|
/**
|
* 状态
|
*/
|
@ApiModelProperty(value = "状态")
|
private Integer state;
|
/**
|
* 锁定时间
|
*/
|
@TableField("lock_time")
|
@ApiModelProperty(value = "锁定时间")
|
private Date lockTime;
|
/**
|
* 解锁时间
|
*/
|
@TableField("unlock_time")
|
@ApiModelProperty(value = "解锁时间")
|
private Date unlockTime;
|
/**
|
* 审核状态
|
*/
|
@TableField("audit_state")
|
@ApiModelProperty(value = "审核状态")
|
private Integer auditState;
|
/**
|
* 审核时间
|
*/
|
@TableField("audit_time")
|
@ApiModelProperty(value = "审核时间")
|
private Date auditTime;
|
/**
|
* 处理备注
|
*/
|
@TableField("audit_mark")
|
@ApiModelProperty(value = "处理备注")
|
private String auditMark;
|
/**
|
* 是否删除
|
*/
|
@TableField("is_delete")
|
@ApiModelProperty(value = "是否删除")
|
private Integer isDelete;
|
/**
|
* 等级ID
|
*/
|
@TableField("grade_id")
|
@ApiModelProperty(value = "等级ID")
|
private Integer gradeId;
|
/**
|
* 店铺logo
|
*/
|
@ApiModelProperty(value = "店铺logo")
|
private String logo;
|
/**
|
* IM账号
|
*/
|
@TableField("im_account")
|
@ApiModelProperty(value = "IM账号")
|
private String imAccount;
|
/**
|
* IM密码
|
*/
|
@TableField("im_password")
|
@ApiModelProperty(value = "IM密码")
|
private String imPassword;
|
|
@TableField("link_card")
|
@ApiModelProperty(value = "'身份证号码'")
|
private String linkCard;
|
|
@TableField("link_position")
|
@ApiModelProperty(value = "''职位''")
|
private String linkPosition;
|
|
@TableField("id_card")
|
@ApiModelProperty(value = "'统一社会信用号码/身份证")
|
private String idCard;
|
@TableField("city_id")
|
@ApiModelProperty(value = "'所在城市")
|
private String cityId;
|
@TableField("start_time")
|
@ApiModelProperty(value = "''运营时间'")
|
private String startTime;
|
@TableField("service_ids")
|
@ApiModelProperty(value = "'''门店服务''")
|
private String serviceIds;
|
@TableField("address")
|
@ApiModelProperty(value = "''''门店所在详细地址''")
|
private String address;
|
|
@Override
|
protected Serializable pkVal() {
|
return this.id;
|
}
|
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "营业执照")
|
private String permitImg;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "运营资质")
|
private String aptitudeImg;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "门店环境")
|
private String attachment;
|
public void setPermitImg(String permitImg) {
|
this.businessLicense = permitImg;
|
}
|
|
public void setAptitudeImg(String aptitudeImg) {
|
this.otherDetails = aptitudeImg;
|
}
|
|
public void setAttachment(String attachment) {
|
this.headPicture = attachment;
|
}
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "门店环境")
|
private String serviceName;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "'所在城市")
|
private String cityName;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "商品集合")
|
private String productId;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "商品集合")
|
private Integer number;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "是否营业")
|
private Boolean work = Boolean.FALSE;
|
|
@TableField("work_end_time")
|
@ApiModelProperty(value = "''营业时间 结束时间''")
|
private String workEndTime;
|
|
@TableField("work_start_time")
|
@ApiModelProperty(value = "营业时间 开始时间")
|
private String workStartTime;
|
|
@TableField("work_end_date")
|
@ApiModelProperty(value = "营业时间 结束'")
|
private Integer workEndDate;
|
|
@TableField("work_start_date")
|
@ApiModelProperty(value = "营业时间 开始")
|
private Integer workStartDate;
|
|
public Boolean getWork() {
|
if(Objects.isNull(workStartDate)){
|
return work;
|
}
|
LocalDateTime nowTime = LocalDateTime.now();
|
int weekDay = nowTime.getDayOfWeek().getValue();
|
weekDay = weekDay==0?7:weekDay;
|
boolean isWeekDay = Boolean.FALSE;
|
if(workStartDate.compareTo(workEndDate) >= 0){
|
isWeekDay = weekDay >= workStartDate || weekDay <= workEndDate;
|
}else{
|
isWeekDay = weekDay >= workStartDate && weekDay <= workEndDate;
|
}
|
DateTimeFormatter dtf = DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_MINUTE_PATTERN);
|
String nowDate = DateUtils.getFormatDate(nowTime, DatePattern.NORM_DATE_PATTERN);
|
LocalDateTime startTime = LocalDateTime.parse(nowDate.concat(" "+workStartTime),dtf);
|
LocalDateTime endTime = LocalDateTime.parse(nowDate.concat(" "+workEndTime),dtf);
|
if(startTime.compareTo(endTime) >= 0){
|
work = nowTime.compareTo(startTime) >= 0 || nowTime.compareTo(endTime) <= 0;
|
}else{
|
work = nowTime.compareTo(startTime) >= 0 && nowTime.compareTo(endTime) <= 0;
|
}
|
|
return isWeekDay && work;
|
}
|
@TableField(exist = false)
|
@ApiModelProperty(value = "城市代码")
|
private String countyCode;
|
|
@ApiModelProperty(value = "城市名称")
|
@TableField(exist = false)
|
private String countyName;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "数量")
|
private Integer merchantCount;
|
|
@TableField(exist = false)
|
@ApiModelProperty(value = "服务名称")
|
private List<String> serviceNameList;
|
|
|
}
|