mirror of
https://gitee.com/elegant_wings/dbd-meeting.git
synced 2025-06-21 05:39:36 +08:00
391 lines
6.9 KiB
Java
391 lines
6.9 KiB
Java
package com.ics.admin.domain;
|
||
|
||
import com.baomidou.mybatisplus.annotation.IEnum;
|
||
import com.baomidou.mybatisplus.annotation.TableField;
|
||
import com.baomidou.mybatisplus.annotation.TableName;
|
||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||
import com.ics.common.core.domain.BaseEntity;
|
||
import lombok.Data;
|
||
|
||
import javax.validation.constraints.NotBlank;
|
||
import javax.validation.constraints.NotNull;
|
||
import java.math.BigDecimal;
|
||
import java.util.Date;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* 客户合同对象 ics_customer_contract
|
||
*
|
||
* @author zzm
|
||
* @date 2021-03-29
|
||
*/
|
||
@Data
|
||
@TableName("ics_customer_contract")
|
||
public class CustomerContract extends BaseEntity<CustomerContract> {
|
||
private static final long serialVersionUID = 1L;
|
||
|
||
/**
|
||
* 客户id
|
||
*/
|
||
@NotNull(message = "客户id不能为空!")
|
||
private Long customerId;
|
||
|
||
/**
|
||
* 合同名称
|
||
*/
|
||
@NotBlank(message = "合同名称不能为空!")
|
||
private String name;
|
||
|
||
/**
|
||
* 合同编号
|
||
*/
|
||
@NotBlank(message = "合同编号不能为空!")
|
||
private String sn;
|
||
|
||
/**
|
||
* 物管合同编号
|
||
*/
|
||
@NotBlank(message = "物管合同编号不能为空!")
|
||
private String pmSn;
|
||
|
||
/**
|
||
* 管理编号
|
||
*/
|
||
private String manageSn;
|
||
|
||
/**
|
||
* 合同状态
|
||
*/
|
||
private Status status;
|
||
|
||
|
||
/**
|
||
* 合同状态
|
||
*/
|
||
public enum Status implements IEnum<Integer> {
|
||
|
||
/**
|
||
* 草稿
|
||
*/
|
||
DRAFT("草稿", 0),
|
||
|
||
/**
|
||
* 待审批
|
||
*/
|
||
APPROVING("待审批", 1),
|
||
|
||
/**
|
||
* 已审批
|
||
*/
|
||
APPROVED("已审批", 2),
|
||
|
||
/**
|
||
* 已拒绝
|
||
*/
|
||
REFUSE("已拒绝", 3),
|
||
|
||
/**
|
||
* 执行中
|
||
*/
|
||
EXECUTING("执行中", 4),
|
||
|
||
/**
|
||
* 已作废
|
||
*/
|
||
VOIDED("已作废", 5),
|
||
|
||
|
||
/**
|
||
* 已到期
|
||
*/
|
||
OVERDUE("已到期", 6),
|
||
|
||
|
||
/**
|
||
* 已结束
|
||
*/
|
||
END("已结束", 7);
|
||
|
||
|
||
private String name;
|
||
private int value;
|
||
|
||
Status(String name, int value) {
|
||
this.name = name;
|
||
this.value = value;
|
||
}
|
||
|
||
@Override
|
||
public Integer getValue() {
|
||
return this.value;
|
||
}
|
||
|
||
public String getName() {
|
||
return this.name;
|
||
}
|
||
|
||
public static Status parse(Integer value) {
|
||
for (Status status : values()) {
|
||
if (status.getValue().equals(value)) {
|
||
return status;
|
||
}
|
||
}
|
||
return null;
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 合同类型(0-正式合同,1-意向合同)
|
||
*/
|
||
private Type type;
|
||
|
||
/**
|
||
* 合同类型
|
||
*/
|
||
public enum Type implements IEnum<Integer> {
|
||
|
||
/**
|
||
* 正式合同
|
||
*/
|
||
OFFICIAL("正式合同", 0),
|
||
|
||
/**
|
||
* 意向合同
|
||
*/
|
||
INTENTION("意向合同", 1);
|
||
|
||
|
||
private String name;
|
||
private int value;
|
||
|
||
Type(String name, int value) {
|
||
this.name = name;
|
||
this.value = value;
|
||
}
|
||
|
||
@Override
|
||
public Integer getValue() {
|
||
return this.value;
|
||
}
|
||
|
||
public String getName() {
|
||
return this.name;
|
||
}
|
||
|
||
public static Type parse(Integer value) {
|
||
for (Type type : values()) {
|
||
if (type.getValue().equals(value)) {
|
||
return type;
|
||
}
|
||
}
|
||
return null;
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 备注
|
||
*/
|
||
private String remark;
|
||
|
||
/**
|
||
* 需求开始时间
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date needStartDate;
|
||
|
||
/**
|
||
* 需求结束时间
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date needEndDate;
|
||
|
||
/**
|
||
* 租赁开始期限
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date startDate;
|
||
|
||
/**
|
||
* 租赁结束期限
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date endDate;
|
||
|
||
/**
|
||
* 账单收款日
|
||
*/
|
||
private Long receiveRentDay;
|
||
|
||
/**
|
||
* 租赁共几个月
|
||
*/
|
||
private Long totalMonths;
|
||
|
||
/**
|
||
* 签订日期
|
||
*/
|
||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||
private Date signDate;
|
||
|
||
/**
|
||
* 租赁方 0:公司租赁 2:个人租赁
|
||
*/
|
||
private Long lessorType;
|
||
|
||
/**
|
||
* 客户名称(企业名称)
|
||
*/
|
||
private String customerName;
|
||
|
||
/**
|
||
* 客户类型
|
||
*/
|
||
private Long customerType;
|
||
|
||
/**
|
||
* 所属行业
|
||
*/
|
||
private String sector;
|
||
|
||
/**
|
||
* 公司邮箱
|
||
*/
|
||
private String email;
|
||
|
||
/**
|
||
* 统一信用代码
|
||
*/
|
||
private String creditNo;
|
||
|
||
/**
|
||
* 法人
|
||
*/
|
||
private String operName;
|
||
|
||
/**
|
||
* 渠道名称
|
||
*/
|
||
private String channelName;
|
||
|
||
/**
|
||
* 联系电话
|
||
*/
|
||
private String phone;
|
||
|
||
/**
|
||
* 地址
|
||
*/
|
||
private String address;
|
||
|
||
/**
|
||
* 意向金
|
||
*/
|
||
private BigDecimal intentionMoney;
|
||
|
||
/**
|
||
* 管理费单价
|
||
*/
|
||
private BigDecimal managementFee;
|
||
|
||
/**
|
||
* 管理费单价单位(0-日计算,月计算)
|
||
*/
|
||
private String managementFeeUnit;
|
||
|
||
/**
|
||
* 日管理费
|
||
*/
|
||
private BigDecimal managementFeeIncreaseDay;
|
||
|
||
/**
|
||
* 月管理费
|
||
*/
|
||
private BigDecimal managementFeeIncreaseMonth;
|
||
|
||
/**
|
||
* 租金单价
|
||
*/
|
||
private BigDecimal rentPrice;
|
||
|
||
/**
|
||
* 租金单价单位(0-日计算,月计算)
|
||
*/
|
||
private String rentPriceUnit;
|
||
|
||
/**
|
||
* 日租金
|
||
*/
|
||
private BigDecimal rentIncreaseDay;
|
||
|
||
/**
|
||
* 月租金
|
||
*/
|
||
private BigDecimal rentIncreaseMonth;
|
||
|
||
/**
|
||
* 0-按固定租金,1-按实际天数
|
||
*/
|
||
private Long rentIncreaseWay;
|
||
|
||
/**
|
||
* 付款周期
|
||
*/
|
||
private Long paymentPeriod;
|
||
|
||
/**
|
||
* 押金
|
||
*/
|
||
private BigDecimal deposit;
|
||
|
||
/**
|
||
* 押几月
|
||
*/
|
||
private Long depositPeriod;
|
||
|
||
/**
|
||
* 押金滞纳金比例
|
||
*/
|
||
private BigDecimal depositOverduePercent;
|
||
|
||
/**
|
||
* 租金滞纳金比例
|
||
*/
|
||
private BigDecimal rentOverduePercent;
|
||
|
||
/**
|
||
* 邮编
|
||
*/
|
||
private String postCode;
|
||
|
||
/**
|
||
* 合同关联房间
|
||
*/
|
||
@TableField(exist = false)
|
||
private List<Room> customerContractRooms;
|
||
|
||
/**
|
||
* 合同关联账单
|
||
*/
|
||
@TableField(exist = false)
|
||
private List<CustomerContractBill> customerContractBills;
|
||
|
||
/**
|
||
* 合同关联其他账单
|
||
*/
|
||
@TableField(exist = false)
|
||
private List<CustomerContractBill> customerContractOtherBills;
|
||
|
||
|
||
@TableField(exist = false)
|
||
private Integer pageNum;
|
||
|
||
@TableField(exist = false)
|
||
private Integer pageSize;
|
||
|
||
/**
|
||
* 关联其他费用
|
||
*/
|
||
@TableField(exist = false)
|
||
private List<CustomerContractOther> customerContractOthers;
|
||
|
||
} |