package com.prolog.rdc.tms.model.entity.message;

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

import lombok.Data;
import io.swagger.annotations.ApiModelProperty;
import com.prolog.framework.core.annotation.Id;
import com.prolog.framework.core.annotation.Column;
import com.prolog.framework.core.annotation.Table;

/**
*  Model
* <p>
* Copyright: Copyright (C) 2022 prolog-int, Inc. All rights reserved.
* <p>
* Company: 湖北普罗格科技股份有限公司
*
*
* @author hongbo.pan
* @since 2022-11-15 14:03:39
*/
@Data
@Table(value = "tms_message_config")
public class TmsMessageConfigModel implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "消息配置id")
    @Id
    @Column(value = "id")
    private Long id;

    @ApiModelProperty(value = "消息名称")
    @Column(value = "name")
    private String name;

    @ApiModelProperty(value = "消息类型MESSAGE_TYPE")
    @Column(value = "type")
    private String type;

    @ApiModelProperty(value = "推送类型MESSAGE_SEND_TYPE")
    @Column(value = "send_type")
    private String sendType;

    @ApiModelProperty(value = "状态：0停用 1启用")
    @Column(value = "status")
    private String status;

    @ApiModelProperty(value = "消息内容")
    @Column(value = "content")
    private String content;

    @ApiModelProperty(value = "满足条件")
    @Column(value = "condition_name")
    private String conditionName;

    @ApiModelProperty(value = "单号类型MESSAGE_ORDER_TYPE")
    @Column(value = "order_type")
    private String orderType;

    @ApiModelProperty(value = "通知类型")
    @Column(value = "notice_type")
    private String noticeType;

    @ApiModelProperty(value = "通知货主")
    @Column(value = "notice_cargoowner")
    private String noticeCargoowner;

    @ApiModelProperty(value = "通知发货方")
    @Column(value = "notice_shipper")
    private String noticeShipper;

    @ApiModelProperty(value = "通知收货方")
    @Column(value = "notice_consignee")
    private String noticeConsignee;

    @ApiModelProperty(value = "通知承运商")
    @Column(value = "notice_carrier")
    private String noticeCarrier;

    @ApiModelProperty(value = "通知司机")
    @Column(value = "notice_driver")
    private String noticeDriver;

    @ApiModelProperty(value = "企微webhook")
    @Column(value = "qw_webhook")
    private String qwWebhook;

    @ApiModelProperty(value = "钉钉webhook")
    @Column(value = "dd_webhook")
    private String ddWebhook;

    @ApiModelProperty(value = "企业ID")
    @Column(value = "enterprise_id")
    private Long enterpriseId;

    @ApiModelProperty(value = "企业名称")
    @Column(value = "enterprise_name")
    private String enterpriseName;

    @ApiModelProperty(value = "创建时间")
    @Column(value = "createtime")
    private Date createtime;

    @ApiModelProperty(value = "创建人")
    @Column(value = "createperson")
    private String createperson;

    @ApiModelProperty(value = "修改时间")
    @Column(value = "updatetime")
    private Date updatetime;

    @ApiModelProperty(value = "修改人")
    @Column(value = "updateperson")
    private String updateperson;

    @ApiModelProperty(value = "开始预警偏差")
    @Column(value = "alarm_start_offset")
    private Integer alarmStartOffset;

    @ApiModelProperty(value = "开始预警偏差单位")
    @Column(value = "alarm_start_offset_unit")
    private String alarmStartOffsetUnit;

    @ApiModelProperty(value = "结束预警偏差")
    @Column(value = "alarm_end_offset")
    private Integer alarmEndOffset;

    @ApiModelProperty(value = "结束预警偏差单位")
    @Column(value = "alarm_end_offset_unit")
    private String alarmEndOffsetUnit;

    @ApiModelProperty(value = "预警间隔")
    @Column(value = "alarm_interval")
    private Integer alarmInterval;

    @ApiModelProperty(value = "预警间隔单位")
    @Column(value = "alarm_interval_unit")
    private String alarmIntervalUnit;

    @ApiModelProperty(value = "语音播报")
    @Column(value = "alarm_voice")
    private String alarmVoice;

}
