package com.yonge.cooleshow.admin.io.request.im;

import com.alibaba.fastjson.JSON;
import com.yonge.cooleshow.biz.dal.enums.im.EImReceiveType;
import com.yonge.cooleshow.biz.dal.enums.im.EImSendStatus;
import com.yonge.cooleshow.biz.dal.enums.im.EImSendType;
import com.yonge.toolset.base.page.QueryInfo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 客服群发
 * 2022-12-09 10:49:10
 */
@ApiModel(value = "CustomerServiceBatchSendingVo对象", description = "客服群发查询视图对象")
public class CustomerServiceBatchSendingVo {

    @ApiModel(" CustomerServiceBatchSendingQuery-客服群发")
    public static class CustomerServiceBatchSendingQuery extends QueryInfo {
    

        public String jsonString() {
            return JSON.toJSONString(this);
        }

        public static CustomerServiceBatchSendingQuery from(String json) {
            return JSON.parseObject(json, CustomerServiceBatchSendingQuery.class);
        }
    }
    
    @Data
    @ApiModel(" CustomerServiceBatchSending-客服群发")
    public static class CustomerServiceBatchSending {
    	
                
		@ApiModelProperty("主键ID") 
        private Long id;
                
		@ApiModelProperty("目标群体")
        private String targetGroup;
                
		@ApiModelProperty("发送声部")
        private String sendSubject;

        @ApiModelProperty("发送人数")
        private Integer sendNumber;

		@ApiModelProperty("接收人数")
        private Integer receiveNumber;
                
		@ApiModelProperty("目标人群")
        private EImReceiveType receiveType;
                
		@ApiModelProperty("发送方式")
        private EImSendType sendType;
                
		@ApiModelProperty("发送状态")
        private EImSendStatus sendStatus;
                
		@ApiModelProperty("发送时间")
        private Date sendTime;

        @ApiModelProperty("消息标题")
        private String condition;

		@ApiModelProperty("消息标题")
        private String title;
                
		@ApiModelProperty("文本消息")
        private String textMessage;
                
		@ApiModelProperty("图片消息")
        private String imgMessage;
                
		@ApiModelProperty("图片地址")
        private String imgUrl;
                
		@ApiModelProperty("创建用户")
        private Long createBy;
                
		@ApiModelProperty("创建时间")
        private Date createTime;

        @ApiModelProperty("客服人员")
        private String sender;
        @ApiModelProperty("客服联系方式")
        private String mobile;

        @ApiModelProperty("目标人群")
        private List<CustomerServiceReceiveVo.CustomerServiceReceive> receives;
                
                
        public String jsonString() {
            return JSON.toJSONString(this);
        }

        public static CustomerServiceBatchSending from(String json) {
            return JSON.parseObject(json, CustomerServiceBatchSending.class);
        }
    }
    
}