package cn.cecep.talroad.vo.query.analysis;

import cn.cecep.talroad.domain.analysis.SRaRealTimeAnalysicComsitMonitor;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.cecep.talroad.common.core.domain.query.PageQuery;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigInteger;
import java.util.Date;


/**
 * 关联分析系统-企业生产过程分析-监测点位对比分析-分组关联点位对象 s_ra_real_time_analysic_comsit_monitor
 *
 * @author szhpt
 * @date 2023-07-14*/
@ApiModel(value = "关联分析系统-企业生产过程分析-监测点位对比分析-分组关联点位")
@EqualsAndHashCode(callSuper = false)
@Data
public class SRaRealTimeAnalysicComsitMonitorQuery extends PageQuery
{

    @ApiModelProperty(value = "主键")
    @JsonSerialize(using = ToStringSerializer.class)
    private BigInteger dataId;
    @ApiModelProperty(value = "分组表id")
    @JsonSerialize(using = ToStringSerializer.class)
    private BigInteger comsitId;
    @ApiModelProperty(value = "监测点id")
    private String monitorId;
    @ApiModelProperty(value = "创建时间")
    private String createTime;
    /**
     *
     * @Title: getQueryWrapper
     * @Description: 查询参数组装
     * @param: @return
     * @return: QueryWrapper<BasIndustry>
     * @throws
     */
    public static QueryWrapper<SRaRealTimeAnalysicComsitMonitor> createLambdaQueryWrapper(SRaRealTimeAnalysicComsitMonitorQuery query) {
        QueryWrapper<SRaRealTimeAnalysicComsitMonitor> wrapper = new QueryWrapper<>();
        wrapper.eq(ObjectUtil.isNotNull(query.getDataId()), "data_id", query.getDataId());
        wrapper.eq(ObjectUtil.isNotNull(query.getComsitId()), "comsit_id", query.getComsitId());
        wrapper.eq(ObjectUtil.isNotNull(query.getMonitorId()), "monitor_id", query.getMonitorId());
        wrapper.eq(ObjectUtil.isNotNull(query.getCreateTime()), "create_time", query.getCreateTime());
        return wrapper;
        }
}
