package com.dsk.common.dtos;

import lombok.Data;

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

/**
 * 江西住建筛选实体
 *
 * @author lcl
 * @create 2021/8/30
 */
@Data
public class YitihuaAchievementQueryDto implements Serializable {

    //参建单位
    private String ename;
    //建设单位
    private String buildCorpName;
    //业绩类型 多个空格分隔
    private String achievementType;
    //项目分类 多个空格分隔
    private String projectType;
    //工程用途 多个空格分隔
    private String purposeStr;
    //建设性质 多个空格分隔
    private String nature;
    //招标方式 多个空格分隔
    private String tenderWay;
    //关键词（包含） 多个空格分隔
    private List<KeywordDto> keywords;
    //关键词（不包含） 多个空格分隔
    private String keywordNot;
    private String keywordNotType;

    //单项查询 关键词包含
    String singleKeywordIn;
    //单项查询 关键词不包含
    String singleKeywordOut;
    //单项查询 关键词包含体现节点
    String singleKeywordInNode;
    //单项查询 关键词不包含体现节点
    String singleKeywordOutNode;
    //是否截图体现公司和规模  yes   no
    Boolean isSingleReflect;
    //项目节点
    private String attributeStr;
    //项目节点类型 and/or
    private String attributeQueryType;
    //项目金额（最大）
    private Double endMoney;
    //项目金额（最小）
    private Double startMoney;
    //项目金额体现 多个空格分隔
    private String moneyStr;
    //中标金额
    private Double startTenderMoney;
    private Double endTenderMoney;
    //合同金额
    private Double startContractMoney;
    private Double endContractMoney;
    //施工许可金额
    private Double startLicenceMoney;
    private Double endLicenceMoney;
    //竣工验收实际造价
    private Double startCompletionMoney;
    private Double endCompletionMoney;
    //竣工备案实际造价
    private Double startCheckMoney;
    private Double endCheckMoney;
    //总投资
    private Double startInvest;
    private Double endInvest;
    //项目金额类型 and/or
    private String moneyQueryType;
    //项目面积（最大）
    private Double endArea;
    //项目面积（最小）
    private Double startArea;
    //项目面积体现 多个空格分隔
    private String areaStr;
    //招投标面积
    private Double startTenderArea;
    private Double endTenderArea;
    //施工许可面积
    private Double startLicenceArea;
    private Double endLicenceArea;
    //竣工验收面积
    private Double startCheckArea;
    private Double endCheckArea;
    //竣工验收备案面积
    private Double startCompletionArea;
    private Double endCompletionArea;
    //总面积
    private Double startTotalArea;
    private Double endTotalArea;
    //项目面积类型 and/or
    private String areaQueryType;
    //金额和面积类型 and/or
    private String moneyAndAreaQueryType;
    //项目经理节点 多个空格分隔
    private String pmStr;
    //项目经理类型 and/or
    private String pmQueryType;
    //中标时间（开始-结束）
    private Date startTenderTime;
    private Date endTenderTime;
    //合同签订时间（开始-结束）
    private Date startContractDate;
    private Date endContractDate;
    //许可时间（开始-结束）
    private Date startLicenceDate;
    private Date endLicenceDate;
    //备案开工时间（开始-结束）
    private Date startWorkDate;
    private Date endWorkDate;
    //竣工备案时间（开始-结束）
    private Date startCheckDate;
    private Date endCheckDate;
    //竣工备案时间未公示
    private String hasCheckDate;
    //实际开工时间（开始-结束）
    private Date startCheckWorkDate;
    private Date endCheckWorkDate;
    //竣工验收时间（开始-结束）
    private Date startCheckCheckDate;
    private Date endCheckCheckDate;
    //竣工验收时间未公示
    private String hasCheckCheckDate;
    //图审完成时间（开始-结束）
    private Date startCensorDate;
    private Date endCensorDate;
    //时间类型 and/or
    private String timeQueryType;
    //省
    private String divisionStr;
    //市
    private String cityStr;
    //区
    private String countyStr;

    private String province;//注册地 省级code 多个逗号隔开

    private String city;//注册地 市级code 多个逗号隔开

    private String county;//注册地 区级code 多个逗号隔开
    //业绩数量
    private Integer achievementCount;

    // 数据等级
    private String dataLevel;
    //招投标数据等级
    private String tenderDataLevel;
    //合同登记
    private String contractDataLevel;
    //施工许可
    private String licenceDataLevel;
    //竣工验收备案
    private String completionDataLevel;
    //项目主体
    private String projectDataLevel;
    //施工图审
    private String censorDataLevel;
    //竣工验收
    private String checkDataLevel;
    // 数据等级查询节点
    private String dataLevelStr;
    // 数据等级查询方式  同时具备  任意均可
    private String dataLevelQueryType;
    // 结构体系
    private String structure;
    //长度
    private Double startLength;
    //长度
    private Double endLength;
    //施工许可
    private Double startLicenceLength;
    private Double endLicenceLength;
    //竣工验收
    private Double startCheckCompletionLength;
    private Double endCheckCompletionLength;
    //竣工验收备案
    private Double startCompletionLength;
    private Double endCompletionLength;
    //长度体现节点
    private String lengthNode;
    //长度筛选类型 or/and
    private String lengthType;
    //跨度
    private Double startSpan;
    //跨度
    private Double endSpan;
    //施工许可
    private Double startLicenceSpan;
    private Double endLicenceSpan;
    //竣工验收
    private Double startCheckCompletionSpan;
    private Double endCheckCompletionSpan;
    //竣工验收备案
    private Double startCompletionSpan;
    private Double endCompletionSpan;
    //跨度体现节点
    private String spanNode;
    //跨度筛选类型 or/and
    private String spanType;
}
