package com.ruoyi.system.domain.company; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.utils.DateUtils; import lombok.Data; import org.apache.commons.math3.distribution.LogNormalDistribution; import reactor.util.annotation.Nullable; import java.text.ParseException; import java.util.Date; @Data @TableName("com_company_info") public class CompanyInfo { public final static String ID = "ID"; public final static String COMPANY_NAME = "COMPANY_NAME"; public final static String COMPANY_DIRECTOR = "COMPANY_DIRECTOR"; public final static String CERTIFICATE_NUM = "CERTIFICATE_NUM"; public final static String VALIDITY_DATE_START = "VALIDITY_DATE_START"; public final static String VALIDITY_DATE_END = "VALIDITY_DATE_END"; public final static String MAJOR_HAZARD_SOURCES = "MAJOR_HAZARD_SOURCES"; public final static String COMPANY_CITY = "COMPANY_CITY"; public final static String COMPANY_INFO = "COMPANY_INFO"; public final static String KEYNOTE_GREAT_SITUATION = "KEYNOTE_GREAT_SITUATION"; public final static String SAFETY_PRODUCTION_LICENSE_SITUATION = "SAFETY_PRODUCTION_LICENSE_SITUATION"; public final static String MAIN_SAFETY_RISKS = "MAIN_SAFETY_RISKS"; public final static String CURRENT_PROBLEMS = "CURRENT_PROBLEMS"; public final static String SAFETY_RISK_CONTROL_MEASURES = "SAFETY_RISK_CONTROL_MEASURES"; public final static String CREATE_TIME = "CREATE_TIME"; public final static String CREATE_BY = "CREATE_BY"; public final static String UPDATE_TIME = "UPDATE_TIME"; public final static String UPDATE_BY = "UPDATE_BY"; public final static String IS_DELETE = "IS_DELETE"; /** * 主键id */ @TableId @JsonSerialize( using = ToStringSerializer.class ) private Long id; /** * 企业名称 */ @Excel(name = "企业名称") private String companyName; /** * 企业负责人 */ @Excel(name = "企业负责人") private String companyDirector; /** * 证书编号 */ @Excel(name = "证书编号") private String certificateNum; @Excel(name = "有效期起始时间", dateFormat = "yyyy-MM-dd") @JsonFormat(pattern = "YYYY-MM-dd", timezone = "GMT+8") private Date validityDateStart; @Excel(name = "有效期截至时间", dateFormat = "yyyy-MM-dd") @JsonFormat(pattern = "YYYY-MM-dd", timezone = "GMT+8") private Date validityDateEnd; /** * 重大危险源数量 */ @Excel(name = "重大危险源数量") private Integer majorHazardSources; /** * 企业所在城市州 */ // @Excel(name = "所在城市") private String companyCity; @Excel(name = "所在地州市(州市)") @TableField(exist = false) private String city; @Excel(name = "所在地州市(区县)") @TableField(exist = false) private String area; /** * 企业简介 */ @Excel(name = "企业基本情况") private String companyInfo; /** * “两重点一重大”情况 */ @Excel(name = "“两重点一重大”情况") private String keynoteGreatSituation; /** * 安全生产情况 */ @Excel(name = "安全生产情况") private String safetyProductionLicenseSituation; /** * 主要安全风险 */ @Excel(name = "主要安全风险") private String mainSafetyRisks; /** * 当前存在问题 */ @Excel(name = "当前存在问题") private String currentProblems; /** * 安全风险主要控制措施 */ @Excel(name = "安全风险主要控制措施") private String safetyRiskControlMeasures; private String companyImage; private String businessLicense; private String securityCertificate; /** * 创建时间 */ private Date createTime; /** * 创建人 */ private String createBy; /** * 更新时间 */ private Date updateTime; /** * 更新人 */ private String updateBy; /** * 是否删除 */ private Integer isDelete; /** * 是否到期 */ @TableField(exist = false) private Boolean isExpire; public String getIdStr() { return String.valueOf(this.id); } public Boolean getIsExpire() { try { return this.validityDateEnd == null ? false : DateUtils.parseDate((DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, this.validityDateEnd) + " 23:59:59"),DateUtils.YYYY_MM_DD_HH_MM_SS).before(new Date()); } catch (ParseException e) { return false; } } }