package com.neusoft.smart.pos.dto.member.request;

import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;
import java.util.Date;

@Data
@ApiModel
public class CreateMemberRequest {
	
	@NotNull(message = "name is required")
	private String name;
	
	//    @NotNull(message = "mobile is required")
	private String mobile;
	
//	@NotEmpty(message = "memberEmail is required")
	private String memberEmail;
	
//	@NotEmpty(message = "memberCode is required")
	private String memberCode;
	
//	@NotNull(message = "org id is required")
	private Integer org;
	
//	@NotNull(message = "memberType is required")
	private Integer memberType;
	
	//    @NotNull(message = "store id is required")  默认给个0了
	private Integer store = 0;
	
	//    @NotNull(message = "card password is required")
	private String cardPassword;
	
//	@NotEmpty(message = "cardHidCode is required")
	private String cardHidCode;
	
	private Date birthday;
	
	private Integer gender;
	
	private String address;
	
	private String avatar;
	
	private String content;
	
//	@NotNull(message = "cardNum is required")
	private String cardNum;

	//删除是否需要密码字段，该字段为卡属性，与member无关；如果某一个member持有实体卡，或即便是虚拟资产，
	//密码应该与实体或虚拟资产关联，member做为会员属性描述实体，不适用于密码
	//private String needPassword;
	
	//userid为该会员关联的用户id；用户可以用于登录，如果关联了用户id，可能的表示为企业不仅提供了线下业务，还为会员提供了线上服务，该会员
	//可以通过关联的账号进行线上服务登录；随着业务的发展也可能会有进一步的解释
	private Integer userId;
	
	//Line, 微信等用户登录是第三方系统给出的openid
	private String openId;
}
