package com.panzhihua.common.model.vos.community; import java.io.Serializable; import javax.validation.constraints.NotBlank; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass; import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField; import com.panzhihua.common.model.helper.sensitive.Sensitive; import com.panzhihua.common.model.helper.sensitive.SensitiveStrategy; import com.panzhihua.common.validated.AddGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * 实有人口Vo */ @Data @ApiModel("实有人口编辑表") @EncryptDecryptClass public class EditComMngPopulationVO implements Serializable { /** * 自增 id */ @ApiModelProperty("实有人口id") private Long id; /** * 小区id(实有房屋id) */ @ApiModelProperty("小区id(实有房屋id)") private Integer villageId; /** * 家庭成员(姓名) */ @ApiModelProperty("家庭成员(姓名)") @NotBlank(groups = {AddGroup.class}, message = "家庭成员(姓名)不可为空") private String name; @ApiModelProperty("性别(1.男 2.女 3.未知)") @NotBlank(groups = {AddGroup.class}, message = "性别不可为空") private Integer sex; @ApiModelProperty("年龄") @NotBlank(groups = {AddGroup.class}, message = "年龄不可为空") private Integer age; @NotBlank(groups = {AddGroup.class}, message = "身份证号码不可为空") @ApiModelProperty("身份证号码") @EncryptDecryptField @Sensitive(strategy = SensitiveStrategy.ID_CARD) private String cardNo; @ApiModelProperty("街路巷") @NotBlank(groups = {AddGroup.class}, message = "街路巷不可为空") private String road; @ApiModelProperty("门牌号") @NotBlank(groups = {AddGroup.class}, message = "门牌号不可为空") private String doorNo; @ApiModelProperty("楼排号") @NotBlank(groups = {AddGroup.class}, message = "楼排号不可为空") private String floor; @ApiModelProperty("单元号") @NotBlank(groups = {AddGroup.class}, message = "单元号不可为空") private String unitNo; @ApiModelProperty("户室(房间号)") @NotBlank(groups = {AddGroup.class}, message = "户室(房间号)不可为空") private String houseNo; @ApiModelProperty("政治面貌(1.中共党员2.中共预备党员3.共青团员4.民革党员5.民盟盟员6.民建会员7.8.农工党党员9.致公党党员10.九三学社社员11.台盟盟员12.无党派人士13.群众)") @NotBlank(groups = {AddGroup.class}, message = "政治面貌不可为空") private Integer politicalOutlook; @ApiModelProperty("工作单位") private String workCompany; @ApiModelProperty("特殊情况") private String specialSituation; @ApiModelProperty("联系方式") @NotBlank(groups = {AddGroup.class}, message = "联系方式不可为空") @EncryptDecryptField @Sensitive(strategy = SensitiveStrategy.ID_CARD) private String phone; @ApiModelProperty("备注") private String remark; @ApiModelProperty("标签集合(多个标签以,隔开,如物业工作人员,物业") private String label; @ApiModelProperty("籍贯") private String nativePlace; @ApiModelProperty("民族") private String nation; @ApiModelProperty("小区名字") private String alley; @ApiModelProperty("是否租住 是否租住(0.否 1.是)") @NotBlank(groups = {AddGroup.class}, message = "是否租住不可为空") private Integer isRent; @ApiModelProperty("文化程度(1.小学 2.初中 3.高中 4.中专 5.大专 6.本科 7.硕士 8.博士 9.其他)") private Integer cultureLevel; @ApiModelProperty("婚姻状况(1.未婚 2.已婚 3.离异 4.丧偶 5.分居 6.其他)") private Integer marriage; @ApiModelProperty("健康状况") private String healthy; @ApiModelProperty("与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他)") private Integer relation; @ApiModelProperty("外地or本地(1.本地 2.外地)") private Integer outOrLocal; @ApiModelProperty("户口所在地") private String censusRegister; public interface sex { int nan = 1; int nv = 2; int no = 3; } /** * 是否租住 */ public interface isOk { int yes = 1; int no = 0; } /** * 政治面貌 */ public interface politicalOutlook { int dang = 1; int tuan = 3; int wu = 12; int qun = 13; int no = 13; } }