package com.kcim.dao.model;

import com.baomidou.mybatisplus.annotation.*;

import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * 空间成本管理
 * 
 * @author Wang.YS

 * @date 2023-10-17 15:35:58
 */
@Data
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
@TableName("com_space")
public class Space implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 主键
	 */
	@TableId
	private Integer id;
	/**
	 * 医院id
	 */
	private Long hospId;
	/**
	 * 空间代码
	 */
	private String code;
	/**
	 * 空间名称
	 */
	private String name;
	/**
	 * 父类代码
	 */
	private String parentCode;
	/**
	 * 空间分类 0 父类 1子类
	 */
	private Integer type;
	/**
	 * 折旧年限
	 */
	private BigDecimal depreciationYear;
	/**
	 * 建设成本
	 */
	private BigDecimal cost;
	/**
	 * 建设容积
	 */
	private BigDecimal volume;

	/**
	 * 每年折旧
	 */
	private BigDecimal costPerYear;
	/**
	 * 每分钟折旧
	 */
	private BigDecimal costPerMinute;
	/**
	 * 0 启用 1停用
	 */
	private Integer status;
	/**
	 * 停用时间
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private Date stopTime;
	/**
	 * 创建人
	 */
	@JsonIgnore
	private String createUser;
	/**
	 * 创建时间
	 */
	@JsonIgnore
	private Date createTime;
	/**
	 * 更新人
	 */
	@JsonIgnore
	private String updateUser;
	/**
	 * 更新时间
	 */
	@JsonIgnore
	private Date updateTime;
	/**
	 * 删除人
	 */
	@JsonIgnore
	private String deleteUser;
	/**
	 * 删除时间
	 */
	@JsonIgnore
	private Date deleteTime;
	/**
	 * 删除标志  0正常 1作废
	 */
	@JsonIgnore
	@TableLogic(value = "0",delval = "1")
	private Integer delFlag;

	@TableField(exist = false)
	private List<Space> childList;

}
