/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.party.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import org.springblade.core.mp.base.BaseEntity;
import java.time.LocalDate;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 实体类
 *
 * @author BladeX
 * @since 2021-03-30
 */
@Data
@TableName("party_member")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "Member对象", description = "Member对象")
public class PartyMember extends BaseEntity {

	private static final long serialVersionUID = 1L;

	private String name;
	/**
	* 性别： 0-未定义 1-男 2-女
	*/
		@ApiModelProperty(value = "性别： 0-未定义 1-男 2-女")
		private Integer sex;
	/**
	* 联系方式
	*/
		@ApiModelProperty(value = "联系方式")
		private String phone;
	/**
	* 住址
	*/
		@ApiModelProperty(value = "住址")
		private String address;
	/**
	* 身份证
	*/
		@ApiModelProperty(value = "身份证")
		private String idCard;
	/**
	* 所属党支部id
	*/
		@ApiModelProperty(value = "所属党支部id")
		private Long branchId;
	/**
	* 党员状态：1-正常 2-转出 3-失联 4-死亡 5-清退
	*/
		@ApiModelProperty(value = "党员状态：1-正常 2-转出 3-失联 4-死亡 5-清退")
		private Integer memberStatus;
	/**
	* 入党时间
	*/
		@ApiModelProperty(value = "入党时间")
		private LocalDate enterTime;
	/**
	* 党员证件图像
	*/
		@ApiModelProperty(value = "党员证件图像")
		@TableField(updateStrategy = FieldStrategy.IGNORED)
		private String memberPic;
	/**
	* 是否为优秀党员： 1-是 0-否
	*/
		@ApiModelProperty(value = "是否为优秀党员： 1-是 0-否")
		private Integer isExcellent;
	/**
	* 审核状态  -1:审核不通过  0:待审核 1:审核通过
	*/
		@ApiModelProperty(value = "审核状态  -1:审核不通过  0:待审核 1:审核通过")
		private Integer auditStatus;
	/**
	* 审核意见
	*/
		@ApiModelProperty(value = "审核意见")
		private String auditOpinion;
	/**
	* 机构路径
	*/
		@ApiModelProperty(value = "机构路径")
		private String orgPosition;

	/**
	 * 关联人员Id
	 */
		@ApiModelProperty(value = "关联人员Id")
		private Long personId;

	/**
	 * 人员类型
	 */
		@ApiModelProperty(value = "人员类型：1-住户  2-员工")
		private Integer personType;
}
