New file |
| | |
| | | package com.panzhihua.common.model.dtos.community.convenient; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.NotEmpty; |
| | | import javax.validation.constraints.NotNull; |
| | | import javax.validation.constraints.Pattern; |
| | | import javax.validation.constraints.Size; |
| | | |
| | | import org.hibernate.validator.constraints.Length; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.panzhihua.common.enums.MerchantBusinessPeriod; |
| | | import com.panzhihua.common.validated.AddGroup; |
| | | import com.panzhihua.common.validated.PutGroup; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @title: ConvenientMerchantDTO |
| | | * @projectName: 成都呐喊信息技术有限公司-智慧社区项目 |
| | | * @description: 新增/编辑便民服务商家 |
| | | * @author: hans |
| | | * @date: 2021/09/15 17:18 |
| | | */ |
| | | @Data |
| | | @ApiModel("新增/编辑便民服务商家") |
| | | public class ConvenientMerchantDTO { |
| | | |
| | | @ApiModelProperty("便民服务商家ID") |
| | | @NotNull(groups = {PutGroup.class}, message = "便民服务商家ID不能为空") |
| | | private Long id; |
| | | |
| | | @ApiModelProperty("商家名称") |
| | | @NotBlank(groups = {AddGroup.class}, message = "商家名称不能为空") |
| | | @Length(groups = {AddGroup.class}, max = 25, message = "商家名称最多支持25个字符") |
| | | private String name; |
| | | |
| | | @ApiModelProperty("商家logo") |
| | | private String logo; |
| | | |
| | | @ApiModelProperty("联系人") |
| | | @NotBlank(groups = {AddGroup.class}, message = "联系人不能为空") |
| | | private String contacts; |
| | | |
| | | @ApiModelProperty("负责人身份证号") |
| | | @Pattern(groups = {AddGroup.class}, message = "请输入18位有效身份证号码", regexp = "(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)") |
| | | private String idCard; |
| | | |
| | | @ApiModelProperty("咨询电话") |
| | | @Pattern(groups = {AddGroup.class}, message = "咨询电话格式错误", regexp = "(1[3|4|5|7|8][0-9]\\d{8})|(\\d{3}-\\d{8}|\\d{4}-\\d{7})") |
| | | private String phone; |
| | | |
| | | @ApiModelProperty("商家地址") |
| | | @NotBlank(groups = {AddGroup.class}, message = "商家地址不能为空") |
| | | private String address; |
| | | |
| | | @ApiModelProperty("纬度") |
| | | @NotBlank(groups = {AddGroup.class}, message = "纬度不能为空") |
| | | private String lat; |
| | | |
| | | @ApiModelProperty("经度") |
| | | @NotBlank(groups = {AddGroup.class}, message = "经度不能为空") |
| | | private String lon; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8") |
| | | @NotNull(groups = {AddGroup.class}, message = "营业开始时间不能为空") |
| | | private Date beginAt; |
| | | |
| | | @ApiModelProperty("营业截至时间") |
| | | @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8") |
| | | @NotNull(groups = {AddGroup.class}, message = "营业截至时间不能为空") |
| | | private Date endAt; |
| | | |
| | | @ApiModelProperty(value = "营业周期", allowableValues = "EVERY_DAY,WEEKDAY,WEEKEND") |
| | | @NotNull(groups = {AddGroup.class}, message = "营业周期不能为空") |
| | | private MerchantBusinessPeriod period; |
| | | |
| | | @ApiModelProperty("商家介绍") |
| | | @Size(max = 100) |
| | | private String introduction; |
| | | |
| | | @ApiModelProperty("服务范围") |
| | | @NotEmpty(groups = {AddGroup.class}, message = "服务范围不能为空") |
| | | private List<Long> serviceIds; |
| | | |
| | | @ApiModelProperty("是否营业中,1.在营 0.已关闭") |
| | | @NotNull(groups = {AddGroup.class}, message = "是否营业不能为空") |
| | | private Integer businessStatus; |
| | | |
| | | @ApiModelProperty("管理账号") |
| | | @Pattern(groups = {AddGroup.class}, message = "请输入6-10位管理账号,由英文或数字组成", regexp = "^[0-9A-Za-z]{6,10}$") |
| | | private String account; |
| | | |
| | | @ApiModelProperty("登陆密码") |
| | | // @Pattern(groups = {AddGroup.class}, message = "请输入8-12位登陆密码,由英文,数字和特殊符号组成", |
| | | // regexp = "^(?=.*[A-Za-z])(?=.*\\d)(?=.*[$@$!%*#?&])[A-Za-z\\d$@$!%*#?&]{8,12}$") |
| | | @Pattern(groups = {AddGroup.class}, message = "请输入8-12位登陆密码,由英文,数字和特殊符号组成", |
| | | regexp = "^(?=.*[A-Za-z])(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s).{8,}$") |
| | | private String password; |
| | | |
| | | @ApiModelProperty(value = "所属社区id") |
| | | @NotNull(groups = {AddGroup.class}, message = "所属社区id不能为空") |
| | | private Long communityId; |
| | | |
| | | @ApiModelProperty(value = "创建人", hidden = true) |
| | | private Long createdBy; |
| | | |
| | | @ApiModelProperty(value = "更新人", hidden = true) |
| | | private Long updatedBy; |
| | | |
| | | public String getPeriod() { |
| | | return period.name(); |
| | | } |
| | | |
| | | public void setPeriod(MerchantBusinessPeriod period) { |
| | | this.period = period; |
| | | } |
| | | |
| | | public Boolean getBusinessStatus() { |
| | | return businessStatus.intValue() == 1; |
| | | } |
| | | |
| | | public void setBusinessStatus(Boolean businessStatus) { |
| | | this.businessStatus = businessStatus ? 1 : 0; |
| | | } |
| | | } |