Commit 3ea7a274 authored by 赵啸非's avatar 赵啸非

添加消息发送系统

parent 277cd703
......@@ -100,7 +100,10 @@
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-openfeign-core</artifactId>
</dependency>
</dependencies>
......
......@@ -73,7 +73,7 @@ ALTER TABLE mortals_xhx_role_auth ADD COLUMN `createUserName` varchar(50) C
-- ----------------------------
-- 2024-12-9 添加消息模板表与发送任务表
-- 2025-04-9 添加消息模板表与发送任务表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_message_template`;
CREATE TABLE `mortals_xhx_message_template` (
......@@ -102,22 +102,22 @@ CREATE TABLE `mortals_xhx_message_template` (
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='消息模板表';
-- ----------------------------
-- 2025-04-9 添加消息发送任务表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_message_task`;
CREATE TABLE `mortals_xhx_message_task` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`code` varchar(255) DEFAULT '' COMMENT '模板编码,唯一',
`template_id` bigint(20) DEFAULT NULL COMMENT '消息模板ID',
`app_name` varchar(64) DEFAULT NULL COMMENT '应用平台标识',
`msg_conf_id` bigint(20) DEFAULT NULL COMMENT '消息发送配置ID',
`site_id` bigint(20) DEFAULT NULL COMMENT '站点ID',
`site_name` varchar(255) DEFAULT NULL COMMENT '站点名称',
`site_code` varchar(255) DEFAULT NULL COMMENT '站点编码',
`recipient` varchar(64) DEFAULT NULL COMMENT '接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型(SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID)',
`parameters` varchar(64) DEFAULT NULL COMMENT '动态参数,用于替换消息模板中的占位符。例如:{"name": "张三", "code": "123456"}',
`channel` varchar(64) DEFAULT NULL COMMENT '消息发送渠道,例如 SMS(短信)、EMAIL(邮件)、PUSH(推送通知)',
`priority` tinyint(2) DEFAULT '0' COMMENT '优先级,用于在消息任务调度时区分重要性 (0.普通,1.优先,2.紧急)',
`site_name` varchar(64) DEFAULT NULL COMMENT '站点名称',
`site_code` varchar(64) DEFAULT NULL COMMENT '站点编码',
`recipient` varchar(64) DEFAULT NULL COMMENT '接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID',
`parameters` varchar(256) DEFAULT NULL COMMENT '动态参数,用于替换消息模板中的占位符。例如:{"name": "张三", "code": "123456"}',
`content` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '详细内容',
`priority` tinyint(2) DEFAULT '0' COMMENT '优先级 (0.普通,1.优先,2.紧急)',
`send_status` tinyint(2) DEFAULT '0' COMMENT '状态 (0.待发送,1.发送中,2.成功,3.失败)',
`retry_count` tinyint(2) DEFAULT '0' COMMENT '任务重试次数,记录任务失败后已尝试重新发送的次数。默认值为 0,用于防止无限重试。',
`retry_count` tinyint(2) DEFAULT '0' COMMENT '任务重试次数,默认值为 0,用于防止无限重试。',
`create_user_id` bigint(20) DEFAULT NULL COMMENT '创建用户',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
......@@ -129,8 +129,9 @@ CREATE TABLE `mortals_xhx_message_task` (
INDEX `idx_send_status`(`send_status`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='消息任务表';
DROP TABLE IF EXISTS `mortals_xhx_message_log`;
CREATE TABLE `mortals_xhx_message_log` (
DROP TABLE IF EXISTS `mortals_xhx_message_record`;
CREATE TABLE `mortals_xhx_message_record` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`code` varchar(255) DEFAULT '' COMMENT '模板编码,唯一',
`task_id` bigint(20) DEFAULT NULL COMMENT '任务ID',
......@@ -155,3 +156,140 @@ CREATE TABLE `mortals_xhx_message_log` (
INDEX `idx_app_name`(`app_name`) USING BTREE,
INDEX `idx_send_status`(`send_status`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='消息日志表';
-- ----------------------------
-- 2025-04-10 添加消息发送任务表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_message_task`;
CREATE TABLE `mortals_xhx_message_task` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`msg_conf_id` bigint(20) DEFAULT NULL COMMENT '消息发送配置ID',
`site_id` bigint(20) DEFAULT NULL COMMENT '站点ID',
`site_name` varchar(64) DEFAULT NULL COMMENT '站点名称',
`site_code` varchar(64) DEFAULT NULL COMMENT '站点编码',
`app_name` varchar(64) DEFAULT NULL COMMENT '应用平台标识',
`message_type` varchar(32) COMMENT '消息类型',
`msg_recipients` varchar(255) COMMENT '消息发送对象',
`channel` varchar(64) DEFAULT 'SMS' COMMENT '消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)',
`enabled` tinyint(1) DEFAULT '1' COMMENT '是否启用该发送服务(0.否,1.是)',
`alarm_time` datetime DEFAULT NULL COMMENT '提醒时间',
`recipient` varchar(64) DEFAULT NULL COMMENT '接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID',
`parameters` varchar(256) DEFAULT NULL COMMENT '动态参数,用于替换消息模板中的占位符。例如:{"name": "张三", "code": "123456"}',
`content` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '详细内容',
`priority` tinyint(2) DEFAULT '0' COMMENT '优先级 (0.普通,1.优先,2.紧急)',
`send_status` tinyint(2) DEFAULT '0' COMMENT '状态 (0.待发送,1.发送中,2.成功,3.失败)',
`send_time` datetime DEFAULT NULL COMMENT '发送时间',
`response` varchar(64) DEFAULT NULL COMMENT '返回的响应结果,记录发送的详细反馈信息',
`error_code` varchar(64) DEFAULT NULL COMMENT '错误代码,标识具体的失败原因。',
`error_msg` varchar(512) DEFAULT NULL COMMENT '错误描述信息,对 error_code 进行补充说明',
`retry_count` tinyint(2) DEFAULT '0' COMMENT '任务重试次数,默认值为 0,用于防止无限重试。',
`create_user_id` bigint(20) DEFAULT NULL COMMENT '创建用户',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_msg_conf_id`(`msg_conf_id`) USING BTREE,
INDEX `idx_site_id`(`site_id`) USING BTREE,
INDEX `idx_app_name`(`app_name`) USING BTREE,
INDEX `idx_send_status`(`send_status`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='消息任务表';
-- ----------------------------
-- 消息发送配置表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_message_config`;
CREATE TABLE mortals_xhx_message_config(
`id` bigint(20) AUTO_INCREMENT COMMENT '序号,主键,自增长',
`site_id` bigint(20) DEFAULT NULL COMMENT '站点ID',
`site_name` varchar(255) DEFAULT NULL COMMENT '站点名称',
`site_code` varchar(255) DEFAULT NULL COMMENT '站点编码',
`template_id` bigint(20) DEFAULT NULL COMMENT '短信消息模板ID',
`app_name` varchar(64) DEFAULT NULL COMMENT '应用平台标识',
`message_type` varchar(32) NOT NULL DEFAULT '等待超时预警' COMMENT '消息类型(等待超时预警,办理超时预警,差评预警)',
`recipient` varchar(64) DEFAULT NULL COMMENT '接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID',
`msg_recipients` varchar(255) DEFAULT NULL COMMENT '消息发送对象',
`channel` varchar(64) DEFAULT 'SMS' COMMENT '消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)',
`enabled` tinyint(1) DEFAULT '1' COMMENT '是否启用该发送服务(0.否,1.是)',
`remark` varchar(255) COMMENT '备注',
`create_user_id` bigint(20) NOT NULL COMMENT '创建用户',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user_id` bigint(20) COMMENT '更新用户',
`update_time` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='消息发送配置';
-- ----------------------------
-- 排号办理记录表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_dowork_records`;
CREATE TABLE `mortals_xhx_dowork_records` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`site_id` bigint(20) DEFAULT NULL COMMENT '站点Id',
`site_name` varchar(256) DEFAULT NULL COMMENT '站点名称',
`person_id` bigint(20) DEFAULT NULL COMMENT '个人信息ID',
`wait_id` bigint(20) DEFAULT NULL COMMENT '等待流水号ID',
`name` varchar(50) DEFAULT NULL COMMENT '姓名',
`contact` varchar(50) DEFAULT NULL COMMENT '联系方式',
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号码',
`bussiness_id` bigint(20) DEFAULT NULL COMMENT '业务Id',
`bussiness_name` varchar(255) DEFAULT NULL COMMENT '预约业务',
`window_num` varchar(255) DEFAULT NULL COMMENT '窗口编号',
`window_name` varchar(255) DEFAULT NULL COMMENT '窗口名称',
`workman` varchar(255) DEFAULT NULL COMMENT '工作人员名称',
`service` varchar(50) DEFAULT NULL COMMENT '办理业务',
`queueNo` varchar(20) DEFAULT NULL COMMENT '排队编号',
`take_time` datetime DEFAULT NULL COMMENT '排队开始时间',
`call_time` datetime DEFAULT NULL COMMENT '排队结束时间',
`end_time` datetime DEFAULT NULL COMMENT '办理结束时间',
`wait_time` int(4) DEFAULT NULL COMMENT '最终等待时长,秒',
`end_dure_time` int(4) DEFAULT NULL COMMENT '最终办理时长,秒',
`wait_dure_alarm_avl` int(4) DEFAULT '0' COMMENT '平均等待时间',
`end_dure_alarm_avl` int(4) DEFAULT '0' COMMENT '平均办理时间',
`process_status` varchar(20) DEFAULT '排队中' COMMENT '办理状态(排队中,办理中,接件结束)',
`remark` varchar(128) DEFAULT NULL COMMENT '备注',
`create_user_id` bigint(20) NOT NULL COMMENT '创建用户',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user_id` bigint(20) COMMENT '更新用户',
`update_time` datetime COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE ,
INDEX `idx_wait_id`(`wait_id`) USING BTREE,
INDEX `idx_site_id`(`site_id`) USING BTREE,
INDEX `idx_process_status`(`process_status`) USING BTREE,
INDEX `idx_bussiness_id`(`bussiness_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='排号办理记录表';
-- ----------------------------
-- 差评差评记录表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_cp_records`;
CREATE TABLE `mortals_xhx_cp_records` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`site_id` bigint(20) DEFAULT NULL COMMENT '站点Id',
`site_name` varchar(256) DEFAULT NULL COMMENT '站点名称',
`person_id` bigint(20) DEFAULT NULL COMMENT '个人信息ID',
`pj_id` bigint(20) DEFAULT NULL COMMENT '评价号ID与办理号id一致',
`name` varchar(50) DEFAULT NULL COMMENT '姓名',
`contact` varchar(50) DEFAULT NULL COMMENT '联系方式',
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号码',
`window_id` bigint(20) DEFAULT NULL COMMENT '窗口id',
`window_name` varchar(255) DEFAULT NULL COMMENT '窗口名称',
`bussiness_id` bigint(20) DEFAULT NULL COMMENT '业务Id',
`bussiness_name` varchar(255) DEFAULT NULL COMMENT '预约业务',
`section` varchar(128) DEFAULT NULL COMMENT '部门',
`flounum` varchar(128) DEFAULT NULL COMMENT '编号',
`assessment` varchar(32) DEFAULT NULL COMMENT '评价选项',
`type` varchar(32) DEFAULT NULL COMMENT '评价类型',
`content` varchar(255) DEFAULT NULL COMMENT '评价内容',
`source` varchar(18) DEFAULT NULL COMMENT '来源',
`pj_time` datetime DEFAULT NULL COMMENT '评价时间',
`create_user_id` bigint(20) NOT NULL COMMENT '创建用户',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user_id` bigint(20) COMMENT '更新用户',
`update_time` datetime COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_pj_id`(`pj_id`) USING BTREE,
INDEX `idx_site_id`(`site_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='差评差评记录表';
......@@ -189,7 +189,11 @@
<artifactId>DmJdbcDriver18</artifactId>
<version>8.1.1.193</version>
</dependency>
</dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
</dependencies>
<build>
<resources>
......
package com.mortals.xhx.busiz.req;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
/**
* 短信发送类
*
* @author:
* @date: 2022/9/7 14:35
*/
@Data
public class SmsThirdPartyReq {
/**
*
*/
@JSONField(serialize=false)
private Long alarmSmsSendId;
/**
* appid
*/
private String appid;
/**
* 手机号码
*/
private String phone;
/**
* 模板号
*/
private String type;
/**
* 内容
*/
private String json;
public static void main(String[] args) {
SmsThirdPartyReq smsThirdPartyReq = new SmsThirdPartyReq();
smsThirdPartyReq.setAlarmSmsSendId(0L);
smsThirdPartyReq.setAppid("12");
smsThirdPartyReq.setPhone("31");
smsThirdPartyReq.setType("123");
smsThirdPartyReq.setJson("13213");
System.out.println(JSON.toJSONString(smsThirdPartyReq));
}
}
package com.mortals.xhx.busiz.rsp;
import lombok.Data;
/**
* @author karlhoo
*/
@Data
public class ApiSmsResp<T> {
/**
* 结果编码
*/
private int code;
/**
* 结果描述
*/
private String message;
/**
* 响应数据
*/
private T data;
}
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
/**
* 差评信息
* @author: zxfei
* @date: 2025/4/3 16:39
*/
@Data
public class CpPersonInfo {
@JSONField(name = "id")
private Long pjId;
@JSONField(name = "siteid")
private Long siteId;
@JSONField(name = "peopleid")
private Long peopleId;
@JSONField(name = "option_id")
private String optionId;
@JSONField(name = "source")
private String source;
@JSONField(name = "queueid")
private String queueid;
@JSONField(name = "type")
private String type;
@JSONField(name = "window_name")
private String windowName;
@JSONField(name = "workman_name")
private String workmanName;
@JSONField(name = "workman_number")
private String workmanNumber;
@JSONField(name = "section")
private String section;
@JSONField(name = "business_name")
private String businessName;
@JSONField(name = "content")
private String content;
@JSONField(name = "flounum")
private String flounum;
@JSONField(name = "idcardData_PhotoFileName")
private String idcardDataPhotoFileName;
@JSONField(name = "create_time",format = "yyyy-MM-dd HH:mm:ss")
private Date cpTime;
}
\ No newline at end of file
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
@Data
public class EndPersonInfo {
@JSONField(name = "id")
private Long endId;
@JSONField(name = "endtime", format = "yyyy-MM-dd HH:mm:ss")
private Date endtime;
@JSONField(name = "avg_handle_time")
private Integer avgHandleTime;
}
\ No newline at end of file
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
@Data
public class FinPersonInfo {
@JSONField(name = "id")
private Long waitId;
@JSONField(name = "calltime", format = "yyyy-MM-dd HH:mm:ss")
private Date calltime;
/**
* 平均等待时长
*/
@JSONField(name = "avg_wait_time")
private Integer avgWaitTime;
@JSONField(name = "window_num")
private String windowNum;
@JSONField(name = "workman_name")
private String workmanName;
}
\ No newline at end of file
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
@Data
public class WaitPersonInfo {
@JSONField(name = "birthday")
private int birthday;
@JSONField(name = "business_name")
private String businessName;
@JSONField(name = "flownum")
private String flowNum;
@JSONField(name = "idcard_IDCardNo")
private String idcardIDCardNo;
@JSONField(name = "businessid")
private Long businessId;
@JSONField(name = "count")
private String count;
@JSONField(name = "idcard_Name")
private String idcardName;
@JSONField(name = "idcard_Address")
private String idcardAddress;
@JSONField(name = "idcard_Sex")
private String idcardSex;
@JSONField(name = "peopleid")
private String peopleId;
@JSONField(name = "phone")
private String phone;
@JSONField(name = "id")
private Long waitId;
@JSONField(name = "idcardData_PhotoFileName")
private String idcardDataPhotoFileName;
@JSONField(name = "taketime",format = "yyyy-MM-dd HH:mm:ss")
private Date takeTime;
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)枚举类
*
* @author zxfei
*/
public enum ChannelEnum {
短信("短信", "短信");
private String value;
private String desc;
ChannelEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static ChannelEnum getByValue(String value) {
for (ChannelEnum channelEnum : ChannelEnum.values()) {
if (channelEnum.getValue() == value) {
return channelEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (ChannelEnum item : ChannelEnum.values()) {
try {
boolean hasE = false;
for (String e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 是否启用该发送服务(0.否,1.是)枚举类
*
* @author zxfei
*/
public enum EnabledEnum {
(0, "否"),
(1, "是");
private Integer value;
private String desc;
EnabledEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
public Integer getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static EnabledEnum getByValue(Integer value) {
for (EnabledEnum enabledEnum : EnabledEnum.values()) {
if (enabledEnum.getValue() == value) {
return enabledEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(Integer... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (EnabledEnum item : EnabledEnum.values()) {
try {
boolean hasE = false;
for (Integer e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 消息类型(等待超时预警,办理超时预警,差评预警)枚举类
*
* @author zxfei
*/
public enum MessageTypeEnum {
等待超时预警("等待超时预警", "等待超时预警"),
办理超时预警("办理超时预警", "办理超时预警"),
差评预警("差评预警", "差评预警");
private String value;
private String desc;
MessageTypeEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static MessageTypeEnum getByValue(String value) {
for (MessageTypeEnum messageTypeEnum : MessageTypeEnum.values()) {
if (messageTypeEnum.getValue() == value) {
return messageTypeEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (MessageTypeEnum item : MessageTypeEnum.values()) {
try {
boolean hasE = false;
for (String e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 优先级 (0.普通,1.优先,2.紧急)枚举类
*
* @author zxfei
*/
public enum PriorityEnum {
普通(0, "普通"),
优先(1, "优先"),
紧急(2, "紧急");
private Integer value;
private String desc;
PriorityEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
public Integer getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static PriorityEnum getByValue(Integer value) {
for (PriorityEnum priorityEnum : PriorityEnum.values()) {
if (priorityEnum.getValue() == value) {
return priorityEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(Integer... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (PriorityEnum item : PriorityEnum.values()) {
try {
boolean hasE = false;
for (Integer e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)枚举类
*
* @author zxfei
*/
public enum ProcessStatusEnum {
排队中("排队中", "排队中"),
办理中("办理中", "办理中"),
办理结束("办理结束", "办理结束"),
接件结束("接件结束", "接件结束");
private String value;
private String desc;
ProcessStatusEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static ProcessStatusEnum getByValue(String value) {
for (ProcessStatusEnum processStatusEnum : ProcessStatusEnum.values()) {
if (processStatusEnum.getValue() == value) {
return processStatusEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (ProcessStatusEnum item : ProcessStatusEnum.values()) {
try {
boolean hasE = false;
for (String e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 状态 (0.待发送,1.发送中,2.成功,3.失败)枚举类
*
* @author zxfei
*/
public enum SendStatusEnum {
待发送(0, "待发送"),
发送中(1, "发送中"),
成功(2, "成功"),
失败(3, "失败");
private Integer value;
private String desc;
SendStatusEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
public Integer getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static SendStatusEnum getByValue(Integer value) {
for (SendStatusEnum sendStatusEnum : SendStatusEnum.values()) {
if (sendStatusEnum.getValue() == value) {
return sendStatusEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(Integer... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (SendStatusEnum item : SendStatusEnum.values()) {
try {
boolean hasE = false;
for (Integer e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
......@@ -14,4 +14,23 @@ public class RedisKey {
public static final String KEY_REFERERS_CACHE = "referers";
/**
* 排队等待人群
*/
public static final String KEY_WAITNUM_LIST_CACHE = "takeData";
/**
* 完成排队人群
*/
public static final String KEY_FIN_LIST_CACHE = "callData";
/**
* 完成业务办理人群
*/
public static final String KEY_FIN_DOWORK_LIST_CACHE = "endData";
/**
* 差评人群
*/
public static final String KEY_CP_LIST_CACHE = "cpData";
}
package com.mortals.xhx.common.utils;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.atomic.AtomicInteger;
@Slf4j
@Data
public class SmsQueueManager {
/**
* 响应队列
*/
public static Queue<MessageTaskEntity> respQueue = new ConcurrentLinkedQueue<>();
/**
* 待提交短信网关队列大小 加入队列时增加,取出队列时减少
*/
public static AtomicInteger sendQueueSize = new AtomicInteger(0);
/**
* 状态报告队列
*/
public static Queue<MessageTaskEntity> rptQueue = new ConcurrentLinkedQueue<>();
/**
* 状态报告更新队列
*/
public static Queue<MessageTaskEntity> rptUpdateQueue = new ConcurrentLinkedQueue<>();
/**
* 获取发送队列大小
*
* @return
*/
public static int getSendQueueSize() {
return sendQueueSize.get();
}
/**
* 取响应队列大小
*
* @return
*/
public static int getRespQueueSize() {
return respQueue.size();
}
/**
* 取出 响应
*
* @return
*/
public static MessageTaskEntity pollRespQueue() {
return respQueue.poll();
}
/**
* 放入响应
*
* @param SmsGateRespQueueEntity
*/
public static void offerRespQueue(MessageTaskEntity SmsGateRespQueueEntity) {
if (null == SmsGateRespQueueEntity) {
return;
}
respQueue.offer(SmsGateRespQueueEntity);
}
}
......@@ -34,6 +34,10 @@ public class ComsumerBurySaveService implements IApplicationStartedService {
@Override
public void start() {
Thread sendThread = new Thread(new Runnable() {
@Override
public void run() {
......
......@@ -27,7 +27,7 @@ public class DemoStartService implements IApplicationService {
@Override
public void start() {
ThreadPool.getInstance().init(6);
ThreadPool.getInstance().init(10);
logger.info("开始服务..[配置已加载完成,但部分框架还未初始化,比如:Kafka]");
}
......
......@@ -3,8 +3,12 @@ package com.mortals.xhx.daemon.applicationservice;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.net.NetUtil;
import com.mortals.framework.service.ICacheService;
import com.mortals.framework.util.ThreadPool;
import com.mortals.xhx.common.key.RedisKey;
import com.mortals.xhx.common.utils.CipherUtil;
import com.mortals.xhx.common.utils.SmsQueueManager;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.service.MessageTaskService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
......@@ -42,6 +46,10 @@ public class DemoStartedService implements IApplicationStartedService {
@Autowired
private ICacheService cacheService;
@Autowired
private MessageTaskService messageTaskService;
protected Boolean stopped = false;
@Override
public void start() {
......@@ -67,6 +75,27 @@ public class DemoStartedService implements IApplicationStartedService {
}
}
//启动短信发送响应更新线程
ThreadPool.getInstance().execute(() -> {
int waitTime = 1000;
while (!stopped) {
try {
MessageTaskEntity message = SmsQueueManager.pollRespQueue();
if (!ObjectUtils.isEmpty(message)) {
messageTaskService.update(message, null);
}
} catch (Exception e) {
if (!stopped) {
try {
Thread.sleep(waitTime);
} catch (InterruptedException e2) {
}
}
}
}
});
log.info("开始服务..[配置已加载完成,并且所有框架都已经初始化]");
}
......
package com.mortals.xhx.daemon.task;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICacheService;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.framework.util.DataUtil;
import com.mortals.xhx.busiz.rsp.wait.CpPersonInfo;
import com.mortals.xhx.busiz.rsp.wait.EndPersonInfo;
import com.mortals.xhx.busiz.rsp.wait.FinPersonInfo;
import com.mortals.xhx.busiz.rsp.wait.WaitPersonInfo;
import com.mortals.xhx.common.code.MessageTypeEnum;
import com.mortals.xhx.common.code.ProcessStatusEnum;
import com.mortals.xhx.common.key.RedisKey;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import com.mortals.xhx.module.cp.service.CpRecordsService;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import com.mortals.xhx.module.dowork.model.DoworkRecordsQuery;
import com.mortals.xhx.module.dowork.service.DoworkRecordsService;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import com.mortals.xhx.module.message.model.MessageConfigQuery;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.service.MessageConfigService;
import com.mortals.xhx.module.message.service.MessageTaskService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import static com.mortals.xhx.common.code.MessageTypeEnum.等待超时预警;
/**
* 同步取号等待人群与完成人群结果。
* 通过redis list 获取
*/
@Slf4j
@Service("SyncAppointWaitAndFinTask")
public class SyncAppointWaitAndFinTaskImpl implements ITaskExcuteService {
@Autowired
private ICacheService cacheService;
@Value("${php.host:''}")
private String host;
@Value("${php.redisDb:''}")
private Integer redisDb;
@Autowired
private DoworkRecordsService doworkRecordsService;
@Autowired
private MessageConfigService messageConfigService;
@Autowired
private MessageTaskService messageTaskService;
@Autowired
private CpRecordsService cpRecordsService;
@Override
public void excuteTask(ITask task) throws AppException {
log.info("同步今天等待用户任务");
syncWaitAndFinQueue();
}
private void syncWaitAndFinQueue() {
RedisTemplate<String, String> redisTemplate = cacheService.selectDbRedisTemplate(redisDb);
// cacheService.select(redisDb);//
List<WaitPersonInfo> waitPersonInfos = new ArrayList<>();
List<FinPersonInfo> finPersonInfos = new ArrayList<>();
List<EndPersonInfo> endPersonInfos = new ArrayList<>();
while (true) {
String value = redisTemplate.opsForList().leftPop(RedisKey.KEY_WAITNUM_LIST_CACHE, 5, TimeUnit.SECONDS);
WaitPersonInfo waitPersonInfo = JSON.parseObject(value, WaitPersonInfo.class);
if (ObjectUtils.isEmpty(waitPersonInfo)) {
break;
} else {
waitPersonInfos.add(waitPersonInfo);
}
}
while (true) {
String value = redisTemplate.opsForList().leftPop(RedisKey.KEY_FIN_LIST_CACHE, 5, TimeUnit.SECONDS);
FinPersonInfo finPersonInfo = JSON.parseObject(value, FinPersonInfo.class);
if (ObjectUtils.isEmpty(finPersonInfo)) {
break;
} else {
finPersonInfos.add(finPersonInfo);
}
}
while (true) {
String value = redisTemplate.opsForList().leftPop(RedisKey.KEY_FIN_DOWORK_LIST_CACHE, 5, TimeUnit.SECONDS);
EndPersonInfo endPersonInfo = JSON.parseObject(value, EndPersonInfo.class);
if (ObjectUtils.isEmpty(endPersonInfo)) {
break;
} else {
endPersonInfos.add(endPersonInfo);
}
}
List<CpPersonInfo> cpPersonInfos = new ArrayList<>();
while (true) {
String value = redisTemplate.opsForList().leftPop(RedisKey.KEY_CP_LIST_CACHE, 5, TimeUnit.SECONDS);
log.info("cp:{}", value);
CpPersonInfo cpPersonInfo = JSON.parseObject(value, CpPersonInfo.class);
log.info("cp obj:{}", JSON.toJSONString(cpPersonInfo));
if (ObjectUtils.isEmpty(cpPersonInfo)) {
break;
} else {
cpPersonInfos.add(cpPersonInfo);
}
}
if (!ObjectUtils.isEmpty(waitPersonInfos)) {
// log.info("waitPersonInfos:{}", JSON.toJSONString(waitPersonInfos));
List<DoworkRecordsEntity> recordsEntityList = waitPersonInfos.stream().map(item -> {
DoworkRecordsEntity careRecordsEntity = new DoworkRecordsEntity();
careRecordsEntity.initAttrValue();
careRecordsEntity.setName(item.getIdcardName());
careRecordsEntity.setContact(item.getPhone());
careRecordsEntity.setIdCard(item.getIdcardIDCardNo());
careRecordsEntity.setBussinessId(item.getBusinessId());
careRecordsEntity.setBussinessName(item.getBusinessName());
careRecordsEntity.setService(item.getBusinessName());
careRecordsEntity.setQueueNo(item.getFlowNum());
careRecordsEntity.setTakeTime(item.getTakeTime() == null ? new Date() : item.getTakeTime());
careRecordsEntity.setPersonId(DataUtil.converStr2Long(item.getPeopleId(), 0));
careRecordsEntity.setWaitId(item.getWaitId());
careRecordsEntity.setProcessStatus(ProcessStatusEnum.排队中.getValue());
careRecordsEntity.setCreateTime(new Date());
careRecordsEntity.setCreateUserName("system");
careRecordsEntity.setCreateUserId(1L);
return careRecordsEntity;
}).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(recordsEntityList)) {
log.info("保存记录数量,size:{}", recordsEntityList.size());
doworkRecordsService.save(recordsEntityList);
}
}
if (!ObjectUtils.isEmpty(finPersonInfos)) {
log.info("finPersonInfos:{}", JSON.toJSONString(finPersonInfos));
List<Long> waitIdList = finPersonInfos.stream().map(item -> item.getWaitId()).collect(Collectors.toList());
Map<Long, FinPersonInfo> waitMap = finPersonInfos.stream().collect(Collectors.toMap(x -> x.getWaitId(), y -> y, (o, n) -> n));
DoworkRecordsQuery careRecordsQuery = new DoworkRecordsQuery();
careRecordsQuery.setWaitIdList(waitIdList);
List<DoworkRecordsEntity> careRecordsEntities = doworkRecordsService.find(careRecordsQuery);
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
careRecordsEntities.forEach(item -> {
FinPersonInfo finPersonInfo = waitMap.get(item.getWaitId());
item.setProcessStatus(ProcessStatusEnum.办理中.getValue());
item.setCallTime(finPersonInfo.getCalltime());
Long diff = DateUtil.between(item.getTakeTime(), finPersonInfo.getCalltime(), DateUnit.SECOND);
if (!ObjectUtils.isEmpty(finPersonInfo.getAvgWaitTime())) {
int avgWait = finPersonInfo.getAvgWaitTime();
if (avgWait > 0
&& diff > avgWait) {
//todo 构造发送消息。
MessageTaskEntity messageTaskEntity = new MessageTaskEntity();
messageTaskEntity.initAttrValue();
double doTime = NumberUtil.div(Double.parseDouble((diff) + ""), 60, 1); // 保留1位小数,四舍五入
double upTime = NumberUtil.div(Double.parseDouble((diff - avgWait) + ""), 60, 1); // 保留1位小数,四舍五入
//业务:XX,流水号:XX,已超时
String alarmContent = String.format("业务:%s,流水号:%s,叫号等待时间为%.1f分钟,超过了平均等待时长%.1f分钟!",
item.getBussinessName(), item.getQueueNo(),
doTime, upTime);
Long siteId = item.getSiteId();
messageTaskEntity.setMessageType(等待超时预警.getValue());
messageTaskEntity.setSiteId(siteId);
messageTaskEntity.setContent(alarmContent);
buildMessageTask(messageTaskEntity);
messageTaskEntity.setAlarmTime(new Date());
messageTaskEntity.setCreateTime(new Date());
messageTaskEntity.setCreateUserId(1L);
messageTaskService.save(messageTaskEntity);
}
}
//判断是否大于平均等待时间,如果大于 则预警消息
item.setWaitTime(diff.intValue());
item.setWindowNum(finPersonInfo.getWindowNum());
item.setWorkman(finPersonInfo.getWorkmanName());
item.setUpdateTime(new Date());
item.setUpdateUserId(1L);
item.setUpdateUserName("system");
});
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
log.info("更新记录数量,size:{}", careRecordsEntities.size());
doworkRecordsService.update(careRecordsEntities);
}
}
}
if (!ObjectUtils.isEmpty(endPersonInfos)) {
log.info("endPersonInfos:{}", JSON.toJSONString(endPersonInfos));
List<Long> endIdList = endPersonInfos.stream().map(item -> item.getEndId()).collect(Collectors.toList());
Map<Long, EndPersonInfo> endMap = endPersonInfos.stream().collect(Collectors.toMap(x -> x.getEndId(), y -> y, (o, n) -> n));
DoworkRecordsQuery careRecordsQuery = new DoworkRecordsQuery();
careRecordsQuery.setWaitIdList(endIdList);
List<DoworkRecordsEntity> careRecordsEntities = doworkRecordsService.find(careRecordsQuery);
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
careRecordsEntities.forEach(item -> {
EndPersonInfo endPersonInfo = endMap.get(item.getWaitId());
item.setProcessStatus(ProcessStatusEnum.办理结束.getValue());
item.setEndTime(endPersonInfo.getEndtime());
Long diff = DateUtil.between(item.getCallTime(), endPersonInfo.getEndtime(), DateUnit.SECOND);
if (!ObjectUtils.isEmpty(endPersonInfo.getAvgHandleTime())) {
int avgWait = endPersonInfo.getAvgHandleTime();
if (avgWait > 0
&& diff > avgWait) {
//todo 构造发送消息。
double doTime = NumberUtil.div(Double.parseDouble((diff) + ""), 60, 1); // 保留1位小数,四舍五入
double upTime = NumberUtil.div(Double.parseDouble((diff - avgWait) + ""), 60, 1); // 保留1位小数,四舍五入
//业务:XX,流水号:XX,窗口:XX,工作人员:XX,已办理超时
String alarmContent = String.format("业务:%s,流水号:%s,窗口:%s,工作人员:%s,办理时间为%.1f分钟,超过了平均办理时长%.1f分钟!",
item.getBussinessName(), item.getQueueNo(),
item.getWindowName(), item.getWorkman(),
doTime, upTime);
MessageTaskEntity messageTaskEntity = new MessageTaskEntity();
messageTaskEntity.initAttrValue();
Long siteId = item.getSiteId();
messageTaskEntity.setMessageType(MessageTypeEnum.办理超时预警.getValue());
messageTaskEntity.setSiteId(siteId);
messageTaskEntity.setContent(alarmContent);
buildMessageTask(messageTaskEntity);
messageTaskEntity.setAlarmTime(new Date());
messageTaskEntity.setCreateTime(new Date());
messageTaskEntity.setCreateUserId(1L);
messageTaskService.save(messageTaskEntity);
}
}
item.setEndDureTime(diff.intValue());
item.setUpdateTime(new Date());
item.setUpdateUserId(1L);
item.setUpdateUserName("system");
});
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
log.info("更新办理结束记录数量,size:{}", careRecordsEntities.size());
doworkRecordsService.update(careRecordsEntities);
}
}
}
if (!ObjectUtils.isEmpty(cpPersonInfos)) {
log.info("cpPersonInfos:{}", JSON.toJSONString(cpPersonInfos));
for (CpPersonInfo cpPersonInfo : cpPersonInfos) {
CpRecordsEntity cpRecordsEntity = new CpRecordsEntity();
cpRecordsEntity.initAttrValue();
cpRecordsEntity.setSiteId(cpPersonInfo.getSiteId());
cpRecordsEntity.setPersonId(cpPersonInfo.getPeopleId());
cpRecordsEntity.setPjId(cpPersonInfo.getPjId());
cpRecordsEntity.setWindowName(cpPersonInfo.getWindowName());
cpRecordsEntity.setSection(cpPersonInfo.getSection());
cpRecordsEntity.setFlounum(cpPersonInfo.getFlounum());
cpRecordsEntity.setAssessment(cpPersonInfo.getOptionId());
cpRecordsEntity.setType(cpPersonInfo.getType());
cpRecordsEntity.setContent(cpPersonInfo.getContent());
cpRecordsEntity.setSource(cpPersonInfo.getSource());
cpRecordsEntity.setPjTime(cpPersonInfo.getCpTime());
cpRecordsEntity.setName(cpPersonInfo.getWorkmanName());
cpRecordsEntity.setBussinessName(cpRecordsEntity.getBussinessName());
cpRecordsEntity.setCreateTime(new Date());
cpRecordsEntity.setCreateUserId(1L);
cpRecordsService.save(cpRecordsEntity);
//发送差评消息 差评预警,业务:XX,流水号:XX,窗口:XX,工作人员:XX,收到一条差评
String alarmContent = String.format(
"业务:%s,流水号:%s,窗口:%s:,工作人员%s 发起:%s,评价内容:%s!",
cpRecordsEntity.getBussinessName(), cpRecordsEntity.getFlounum(),
cpRecordsEntity.getWindowName(), cpPersonInfo.getWorkmanName(),
cpPersonInfo.getOptionId(), cpPersonInfo.getContent());
MessageTaskEntity messageTaskEntity = new MessageTaskEntity();
messageTaskEntity.initAttrValue();
Long siteId = cpPersonInfo.getSiteId();
messageTaskEntity.setMessageType(MessageTypeEnum.差评预警.getValue());
messageTaskEntity.setSiteId(siteId);
messageTaskEntity.setContent(alarmContent);
buildMessageTask(messageTaskEntity);
messageTaskEntity.setAlarmTime(new Date());
messageTaskEntity.setCreateTime(new Date());
messageTaskEntity.setCreateUserId(1L);
messageTaskService.save(messageTaskEntity);
}
}
}
private void buildMessageTask(MessageTaskEntity messageTaskEntity) {
MessageConfigQuery messageConfigQuery = new MessageConfigQuery();
messageConfigQuery.setSiteId(messageTaskEntity.getSiteId());
messageConfigQuery.setMessageType(messageTaskEntity.getMessageType());
MessageConfigEntity messageConfigEntity = messageConfigService.selectOne(messageConfigQuery);
if (!ObjectUtils.isEmpty(messageConfigEntity)) {
messageConfigEntity.setAppName(messageTaskEntity.getAppName());
messageTaskEntity.setChannel(messageConfigEntity.getChannel());
messageTaskEntity.setMessageType(messageConfigEntity.getMessageType());
messageTaskEntity.setMsgConfId(messageConfigEntity.getId());
messageTaskEntity.setEnabled(messageTaskEntity.getEnabled());
messageTaskEntity.setRecipient(messageTaskEntity.getRecipient());
messageTaskEntity.setMsgRecipients(messageTaskEntity.getMsgRecipients());
}
}
@Override
public void stopTask(ITask task) throws AppException {
}
public static void main(String[] args) {
/*
Date date = new Date(); // 待判断的时间对象
List<CareConfigTimesEntity> timePeriodList = new ArrayList<>(); // 时间段列表
CareConfigTimesEntity careConfigTimesEntity = new CareConfigTimesEntity();
careConfigTimesEntity.setServiceTimeStart(DateUtil.parse("2023-04-19 09:00:00"));
careConfigTimesEntity.setServiceTimeEnd(DateUtil.parse("2023-04-19 10:00:00"));
timePeriodList.add(careConfigTimesEntity);
careConfigTimesEntity = new CareConfigTimesEntity();
careConfigTimesEntity.setServiceTimeStart(DateUtil.parse("2023-04-19 10:10:00"));
careConfigTimesEntity.setServiceTimeEnd(DateUtil.parse("2023-04-19 11:00:00"));
timePeriodList.add(careConfigTimesEntity);
boolean isIn = timePeriodList.stream()
.anyMatch((tp) -> (tp.getServiceTimeStart().equals(date) || tp.getServiceTimeStart().before(date))
&& (tp.getServiceTimeEnd().equals(date) || tp.getServiceTimeEnd().after(date)));
System.out.println(isIn);*/
String value = "{\"id\":\"76007\",\"peopleid\":\"0\",\"idcardData_PhotoFileName\":\"\",\"option_id\":\"不满意\",\"content_ids\":\"6,22\",\"pic_url\":\"\",\"sectionid\":\"424\",\"source\":\"安卓评价\",\"opinion\":\"\",\"siteid\":\"1\",\"windowid\":\"205\",\"queueid\":\"752197\",\"create_time\":\"2025-04-08 09:45:46\",\"update_time\":\"2025-04-08 09:45:46\",\"pjxt\":\"1\",\"workman_id\":\"1062\",\"device_id\":\"226\",\"evaluatestatus\":\"2\",\"evaluatetype\":\"1\",\"photobefor\":\"\",\"photoautograph\":\"\",\"picture\":\"\",\"process\":\"\",\"eyevaluate\":\"0\",\"type\":\"phpj\",\"hallid\":\"8\",\"devicenum\":\"08-00-27-E1-42-F7\",\"window_name\":\"行政审批窗口\",\"window_fronum\":\"2E32\",\"workman_name\":\"陈莹\",\"workman_number\":\"RS107\",\"section\":\"市人力资源社会保障局\",\"flounum\":\"EP005\",\"content\":\"等待时间长,服务态度差\",\"idcard_Name\":\"\",\"idcard_IDCardNo\":\"\",\"phone\":\"\"}";
log.info("cp:{}", value);
CpPersonInfo cpPersonInfo = JSON.parseObject(value, CpPersonInfo.class);
log.info("cp obj:{}", JSON.toJSONString(cpPersonInfo));
double result = NumberUtil.div(Double.parseDouble((63 - 53) + ""), 60, 1); // 保留1位小数,四舍五入
System.out.println(result);
}
}
package com.mortals.xhx.module.cp.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import java.util.List;
/**
* 差评差评记录Dao
* 差评差评记录 DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface CpRecordsDao extends ICRUDDao<CpRecordsEntity,Long>{
}
package com.mortals.xhx.module.cp.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.cp.dao.CpRecordsDao;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 差评差评记录DaoImpl DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
@Repository("cpRecordsDao")
public class CpRecordsDaoImpl extends BaseCRUDDaoMybatis<CpRecordsEntity,Long> implements CpRecordsDao {
}
package com.mortals.xhx.module.cp.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.cp.model.vo.CpRecordsVo;
import lombok.Data;
/**
* 差评差评记录实体对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class CpRecordsEntity extends CpRecordsVo {
private static final long serialVersionUID = 1L;
/**
* 站点Id
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
/**
* 个人信息ID
*/
private Long personId;
/**
* 评价号ID与办理号id一致
*/
private Long pjId;
/**
* 姓名
*/
private String name;
/**
* 联系方式
*/
private String contact;
/**
* 身份证号码
*/
private String idCard;
/**
* 窗口id
*/
private Long windowId;
/**
* 窗口名称
*/
private String windowName;
/**
* 部门
*/
private String section;
/**
* 编号
*/
private String flounum;
/**
* 评价选项
*/
private String assessment;
/**
* 评价类型
*/
private String type;
/**
* 评价内容
*/
private String content;
/**
* 来源
*/
private String source;
/**
* 评价时间
*/
private Date pjTime;
/**
* 业务Id
*/
private Long bussinessId;
/**
* 预约业务
*/
private String bussinessName;
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof CpRecordsEntity) {
CpRecordsEntity tmp = (CpRecordsEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.siteId = null;
this.siteName = "";
this.personId = null;
this.pjId = null;
this.name = "";
this.contact = "";
this.idCard = "";
this.windowId = null;
this.windowName = "";
this.section = "";
this.flounum = "";
this.assessment = "";
this.type = "";
this.content = "";
this.source = "";
this.pjTime = null;
this.bussinessId = null;
this.bussinessName = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.cp.model;
import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
/**
* 差评差评记录查询对象
*
* @author zxfei
* @date 2025-04-10
*/
public class CpRecordsQuery extends CpRecordsEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 开始 站点Id */
private Long siteIdStart;
/** 结束 站点Id */
private Long siteIdEnd;
/** 增加 站点Id */
private Long siteIdIncrement;
/** 站点Id列表 */
private List <Long> siteIdList;
/** 站点Id排除列表 */
private List <Long> siteIdNotList;
/** 站点名称 */
private List<String> siteNameList;
/** 站点名称排除列表 */
private List <String> siteNameNotList;
/** 开始 个人信息ID */
private Long personIdStart;
/** 结束 个人信息ID */
private Long personIdEnd;
/** 增加 个人信息ID */
private Long personIdIncrement;
/** 个人信息ID列表 */
private List <Long> personIdList;
/** 个人信息ID排除列表 */
private List <Long> personIdNotList;
/** 开始 评价号ID与办理号id一致 */
private Long pjIdStart;
/** 结束 评价号ID与办理号id一致 */
private Long pjIdEnd;
/** 增加 评价号ID与办理号id一致 */
private Long pjIdIncrement;
/** 评价号ID与办理号id一致列表 */
private List <Long> pjIdList;
/** 评价号ID与办理号id一致排除列表 */
private List <Long> pjIdNotList;
/** 姓名 */
private List<String> nameList;
/** 姓名排除列表 */
private List <String> nameNotList;
/** 联系方式 */
private List<String> contactList;
/** 联系方式排除列表 */
private List <String> contactNotList;
/** 身份证号码 */
private List<String> idCardList;
/** 身份证号码排除列表 */
private List <String> idCardNotList;
/** 开始 窗口id */
private Long windowIdStart;
/** 结束 窗口id */
private Long windowIdEnd;
/** 增加 窗口id */
private Long windowIdIncrement;
/** 窗口id列表 */
private List <Long> windowIdList;
/** 窗口id排除列表 */
private List <Long> windowIdNotList;
/** 窗口名称 */
private List<String> windowNameList;
/** 窗口名称排除列表 */
private List <String> windowNameNotList;
/** 部门 */
private List<String> sectionList;
/** 部门排除列表 */
private List <String> sectionNotList;
/** 编号 */
private List<String> flounumList;
/** 编号排除列表 */
private List <String> flounumNotList;
/** 评价选项 */
private List<String> assessmentList;
/** 评价选项排除列表 */
private List <String> assessmentNotList;
/** 评价类型 */
private List<String> typeList;
/** 评价类型排除列表 */
private List <String> typeNotList;
/** 评价内容 */
private List<String> contentList;
/** 评价内容排除列表 */
private List <String> contentNotList;
/** 来源 */
private List<String> sourceList;
/** 来源排除列表 */
private List <String> sourceNotList;
/** 开始 评价时间 */
private String pjTimeStart;
/** 结束 评价时间 */
private String pjTimeEnd;
/** 开始 创建用户 */
private Long createUserIdStart;
/** 结束 创建用户 */
private Long createUserIdEnd;
/** 增加 创建用户 */
private Long createUserIdIncrement;
/** 创建用户列表 */
private List <Long> createUserIdList;
/** 创建用户排除列表 */
private List <Long> createUserIdNotList;
/** 开始 创建时间 */
private String createTimeStart;
/** 结束 创建时间 */
private String createTimeEnd;
/** 开始 更新用户 */
private Long updateUserIdStart;
/** 结束 更新用户 */
private Long updateUserIdEnd;
/** 增加 更新用户 */
private Long updateUserIdIncrement;
/** 更新用户列表 */
private List <Long> updateUserIdList;
/** 更新用户排除列表 */
private List <Long> updateUserIdNotList;
/** 开始 更新时间 */
private String updateTimeStart;
/** 结束 更新时间 */
private String updateTimeEnd;
/** 开始 业务Id */
private Long bussinessIdStart;
/** 结束 业务Id */
private Long bussinessIdEnd;
/** 增加 业务Id */
private Long bussinessIdIncrement;
/** 业务Id列表 */
private List <Long> bussinessIdList;
/** 业务Id排除列表 */
private List <Long> bussinessIdNotList;
/** 预约业务 */
private List<String> bussinessNameList;
/** 预约业务排除列表 */
private List <String> bussinessNameNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CpRecordsQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<CpRecordsQuery> andConditionList;
public CpRecordsQuery(){}
/**
* 获取 开始 主键ID,主键,自增长
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 主键ID,主键,自增长
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 主键ID,主键,自增长
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 主键ID,主键,自增长
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 主键ID,主键,自增长
* @return idNotList
*/
public List<Long> getIdNotList(){
return this.idNotList;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public void setIdNotList(List<Long> idNotList){
this.idNotList = idNotList;
}
/**
* 获取 开始 站点Id
* @return siteIdStart
*/
public Long getSiteIdStart(){
return this.siteIdStart;
}
/**
* 设置 开始 站点Id
* @param siteIdStart
*/
public void setSiteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
}
/**
* 获取 结束 站点Id
* @return $siteIdEnd
*/
public Long getSiteIdEnd(){
return this.siteIdEnd;
}
/**
* 设置 结束 站点Id
* @param siteIdEnd
*/
public void setSiteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
}
/**
* 获取 增加 站点Id
* @return siteIdIncrement
*/
public Long getSiteIdIncrement(){
return this.siteIdIncrement;
}
/**
* 设置 增加 站点Id
* @param siteIdIncrement
*/
public void setSiteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
}
/**
* 获取 站点Id
* @return siteIdList
*/
public List<Long> getSiteIdList(){
return this.siteIdList;
}
/**
* 设置 站点Id
* @param siteIdList
*/
public void setSiteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
}
/**
* 获取 站点Id
* @return siteIdNotList
*/
public List<Long> getSiteIdNotList(){
return this.siteIdNotList;
}
/**
* 设置 站点Id
* @param siteIdNotList
*/
public void setSiteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
}
/**
* 获取 站点名称
* @return siteNameList
*/
public List<String> getSiteNameList(){
return this.siteNameList;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public void setSiteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
}
/**
* 获取 站点名称
* @return siteNameNotList
*/
public List<String> getSiteNameNotList(){
return this.siteNameNotList;
}
/**
* 设置 站点名称
* @param siteNameNotList
*/
public void setSiteNameNotList(List<String> siteNameNotList){
this.siteNameNotList = siteNameNotList;
}
/**
* 获取 开始 个人信息ID
* @return personIdStart
*/
public Long getPersonIdStart(){
return this.personIdStart;
}
/**
* 设置 开始 个人信息ID
* @param personIdStart
*/
public void setPersonIdStart(Long personIdStart){
this.personIdStart = personIdStart;
}
/**
* 获取 结束 个人信息ID
* @return $personIdEnd
*/
public Long getPersonIdEnd(){
return this.personIdEnd;
}
/**
* 设置 结束 个人信息ID
* @param personIdEnd
*/
public void setPersonIdEnd(Long personIdEnd){
this.personIdEnd = personIdEnd;
}
/**
* 获取 增加 个人信息ID
* @return personIdIncrement
*/
public Long getPersonIdIncrement(){
return this.personIdIncrement;
}
/**
* 设置 增加 个人信息ID
* @param personIdIncrement
*/
public void setPersonIdIncrement(Long personIdIncrement){
this.personIdIncrement = personIdIncrement;
}
/**
* 获取 个人信息ID
* @return personIdList
*/
public List<Long> getPersonIdList(){
return this.personIdList;
}
/**
* 设置 个人信息ID
* @param personIdList
*/
public void setPersonIdList(List<Long> personIdList){
this.personIdList = personIdList;
}
/**
* 获取 个人信息ID
* @return personIdNotList
*/
public List<Long> getPersonIdNotList(){
return this.personIdNotList;
}
/**
* 设置 个人信息ID
* @param personIdNotList
*/
public void setPersonIdNotList(List<Long> personIdNotList){
this.personIdNotList = personIdNotList;
}
/**
* 获取 开始 评价号ID与办理号id一致
* @return pjIdStart
*/
public Long getPjIdStart(){
return this.pjIdStart;
}
/**
* 设置 开始 评价号ID与办理号id一致
* @param pjIdStart
*/
public void setPjIdStart(Long pjIdStart){
this.pjIdStart = pjIdStart;
}
/**
* 获取 结束 评价号ID与办理号id一致
* @return $pjIdEnd
*/
public Long getPjIdEnd(){
return this.pjIdEnd;
}
/**
* 设置 结束 评价号ID与办理号id一致
* @param pjIdEnd
*/
public void setPjIdEnd(Long pjIdEnd){
this.pjIdEnd = pjIdEnd;
}
/**
* 获取 增加 评价号ID与办理号id一致
* @return pjIdIncrement
*/
public Long getPjIdIncrement(){
return this.pjIdIncrement;
}
/**
* 设置 增加 评价号ID与办理号id一致
* @param pjIdIncrement
*/
public void setPjIdIncrement(Long pjIdIncrement){
this.pjIdIncrement = pjIdIncrement;
}
/**
* 获取 评价号ID与办理号id一致
* @return pjIdList
*/
public List<Long> getPjIdList(){
return this.pjIdList;
}
/**
* 设置 评价号ID与办理号id一致
* @param pjIdList
*/
public void setPjIdList(List<Long> pjIdList){
this.pjIdList = pjIdList;
}
/**
* 获取 评价号ID与办理号id一致
* @return pjIdNotList
*/
public List<Long> getPjIdNotList(){
return this.pjIdNotList;
}
/**
* 设置 评价号ID与办理号id一致
* @param pjIdNotList
*/
public void setPjIdNotList(List<Long> pjIdNotList){
this.pjIdNotList = pjIdNotList;
}
/**
* 获取 姓名
* @return nameList
*/
public List<String> getNameList(){
return this.nameList;
}
/**
* 设置 姓名
* @param nameList
*/
public void setNameList(List<String> nameList){
this.nameList = nameList;
}
/**
* 获取 姓名
* @return nameNotList
*/
public List<String> getNameNotList(){
return this.nameNotList;
}
/**
* 设置 姓名
* @param nameNotList
*/
public void setNameNotList(List<String> nameNotList){
this.nameNotList = nameNotList;
}
/**
* 获取 联系方式
* @return contactList
*/
public List<String> getContactList(){
return this.contactList;
}
/**
* 设置 联系方式
* @param contactList
*/
public void setContactList(List<String> contactList){
this.contactList = contactList;
}
/**
* 获取 联系方式
* @return contactNotList
*/
public List<String> getContactNotList(){
return this.contactNotList;
}
/**
* 设置 联系方式
* @param contactNotList
*/
public void setContactNotList(List<String> contactNotList){
this.contactNotList = contactNotList;
}
/**
* 获取 身份证号码
* @return idCardList
*/
public List<String> getIdCardList(){
return this.idCardList;
}
/**
* 设置 身份证号码
* @param idCardList
*/
public void setIdCardList(List<String> idCardList){
this.idCardList = idCardList;
}
/**
* 获取 身份证号码
* @return idCardNotList
*/
public List<String> getIdCardNotList(){
return this.idCardNotList;
}
/**
* 设置 身份证号码
* @param idCardNotList
*/
public void setIdCardNotList(List<String> idCardNotList){
this.idCardNotList = idCardNotList;
}
/**
* 获取 开始 窗口id
* @return windowIdStart
*/
public Long getWindowIdStart(){
return this.windowIdStart;
}
/**
* 设置 开始 窗口id
* @param windowIdStart
*/
public void setWindowIdStart(Long windowIdStart){
this.windowIdStart = windowIdStart;
}
/**
* 获取 结束 窗口id
* @return $windowIdEnd
*/
public Long getWindowIdEnd(){
return this.windowIdEnd;
}
/**
* 设置 结束 窗口id
* @param windowIdEnd
*/
public void setWindowIdEnd(Long windowIdEnd){
this.windowIdEnd = windowIdEnd;
}
/**
* 获取 增加 窗口id
* @return windowIdIncrement
*/
public Long getWindowIdIncrement(){
return this.windowIdIncrement;
}
/**
* 设置 增加 窗口id
* @param windowIdIncrement
*/
public void setWindowIdIncrement(Long windowIdIncrement){
this.windowIdIncrement = windowIdIncrement;
}
/**
* 获取 窗口id
* @return windowIdList
*/
public List<Long> getWindowIdList(){
return this.windowIdList;
}
/**
* 设置 窗口id
* @param windowIdList
*/
public void setWindowIdList(List<Long> windowIdList){
this.windowIdList = windowIdList;
}
/**
* 获取 窗口id
* @return windowIdNotList
*/
public List<Long> getWindowIdNotList(){
return this.windowIdNotList;
}
/**
* 设置 窗口id
* @param windowIdNotList
*/
public void setWindowIdNotList(List<Long> windowIdNotList){
this.windowIdNotList = windowIdNotList;
}
/**
* 获取 窗口名称
* @return windowNameList
*/
public List<String> getWindowNameList(){
return this.windowNameList;
}
/**
* 设置 窗口名称
* @param windowNameList
*/
public void setWindowNameList(List<String> windowNameList){
this.windowNameList = windowNameList;
}
/**
* 获取 窗口名称
* @return windowNameNotList
*/
public List<String> getWindowNameNotList(){
return this.windowNameNotList;
}
/**
* 设置 窗口名称
* @param windowNameNotList
*/
public void setWindowNameNotList(List<String> windowNameNotList){
this.windowNameNotList = windowNameNotList;
}
/**
* 获取 部门
* @return sectionList
*/
public List<String> getSectionList(){
return this.sectionList;
}
/**
* 设置 部门
* @param sectionList
*/
public void setSectionList(List<String> sectionList){
this.sectionList = sectionList;
}
/**
* 获取 部门
* @return sectionNotList
*/
public List<String> getSectionNotList(){
return this.sectionNotList;
}
/**
* 设置 部门
* @param sectionNotList
*/
public void setSectionNotList(List<String> sectionNotList){
this.sectionNotList = sectionNotList;
}
/**
* 获取 编号
* @return flounumList
*/
public List<String> getFlounumList(){
return this.flounumList;
}
/**
* 设置 编号
* @param flounumList
*/
public void setFlounumList(List<String> flounumList){
this.flounumList = flounumList;
}
/**
* 获取 编号
* @return flounumNotList
*/
public List<String> getFlounumNotList(){
return this.flounumNotList;
}
/**
* 设置 编号
* @param flounumNotList
*/
public void setFlounumNotList(List<String> flounumNotList){
this.flounumNotList = flounumNotList;
}
/**
* 获取 评价选项
* @return assessmentList
*/
public List<String> getAssessmentList(){
return this.assessmentList;
}
/**
* 设置 评价选项
* @param assessmentList
*/
public void setAssessmentList(List<String> assessmentList){
this.assessmentList = assessmentList;
}
/**
* 获取 评价选项
* @return assessmentNotList
*/
public List<String> getAssessmentNotList(){
return this.assessmentNotList;
}
/**
* 设置 评价选项
* @param assessmentNotList
*/
public void setAssessmentNotList(List<String> assessmentNotList){
this.assessmentNotList = assessmentNotList;
}
/**
* 获取 评价类型
* @return typeList
*/
public List<String> getTypeList(){
return this.typeList;
}
/**
* 设置 评价类型
* @param typeList
*/
public void setTypeList(List<String> typeList){
this.typeList = typeList;
}
/**
* 获取 评价类型
* @return typeNotList
*/
public List<String> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 评价类型
* @param typeNotList
*/
public void setTypeNotList(List<String> typeNotList){
this.typeNotList = typeNotList;
}
/**
* 获取 评价内容
* @return contentList
*/
public List<String> getContentList(){
return this.contentList;
}
/**
* 设置 评价内容
* @param contentList
*/
public void setContentList(List<String> contentList){
this.contentList = contentList;
}
/**
* 获取 评价内容
* @return contentNotList
*/
public List<String> getContentNotList(){
return this.contentNotList;
}
/**
* 设置 评价内容
* @param contentNotList
*/
public void setContentNotList(List<String> contentNotList){
this.contentNotList = contentNotList;
}
/**
* 获取 来源
* @return sourceList
*/
public List<String> getSourceList(){
return this.sourceList;
}
/**
* 设置 来源
* @param sourceList
*/
public void setSourceList(List<String> sourceList){
this.sourceList = sourceList;
}
/**
* 获取 来源
* @return sourceNotList
*/
public List<String> getSourceNotList(){
return this.sourceNotList;
}
/**
* 设置 来源
* @param sourceNotList
*/
public void setSourceNotList(List<String> sourceNotList){
this.sourceNotList = sourceNotList;
}
/**
* 获取 开始 评价时间
* @return pjTimeStart
*/
public String getPjTimeStart(){
return this.pjTimeStart;
}
/**
* 设置 开始 评价时间
* @param pjTimeStart
*/
public void setPjTimeStart(String pjTimeStart){
this.pjTimeStart = pjTimeStart;
}
/**
* 获取 结束 评价时间
* @return pjTimeEnd
*/
public String getPjTimeEnd(){
return this.pjTimeEnd;
}
/**
* 设置 结束 评价时间
* @param pjTimeEnd
*/
public void setPjTimeEnd(String pjTimeEnd){
this.pjTimeEnd = pjTimeEnd;
}
/**
* 获取 开始 创建用户
* @return createUserIdStart
*/
public Long getCreateUserIdStart(){
return this.createUserIdStart;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public void setCreateUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
}
/**
* 获取 结束 创建用户
* @return $createUserIdEnd
*/
public Long getCreateUserIdEnd(){
return this.createUserIdEnd;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public void setCreateUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
}
/**
* 获取 增加 创建用户
* @return createUserIdIncrement
*/
public Long getCreateUserIdIncrement(){
return this.createUserIdIncrement;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public void setCreateUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
}
/**
* 获取 创建用户
* @return createUserIdList
*/
public List<Long> getCreateUserIdList(){
return this.createUserIdList;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public void setCreateUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
}
/**
* 获取 创建用户
* @return createUserIdNotList
*/
public List<Long> getCreateUserIdNotList(){
return this.createUserIdNotList;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public void setCreateUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 更新用户
* @return updateUserIdStart
*/
public Long getUpdateUserIdStart(){
return this.updateUserIdStart;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public void setUpdateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
}
/**
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
public Long getUpdateUserIdEnd(){
return this.updateUserIdEnd;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public void setUpdateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
}
/**
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
public Long getUpdateUserIdIncrement(){
return this.updateUserIdIncrement;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
}
/**
* 获取 更新用户
* @return updateUserIdList
*/
public List<Long> getUpdateUserIdList(){
return this.updateUserIdList;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public void setUpdateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
}
/**
* 获取 更新用户
* @return updateUserIdNotList
*/
public List<Long> getUpdateUserIdNotList(){
return this.updateUserIdNotList;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
}
/**
* 获取 开始 更新时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 更新时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 更新时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 更新时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 获取 开始 业务Id
* @return bussinessIdStart
*/
public Long getBussinessIdStart(){
return this.bussinessIdStart;
}
/**
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public void setBussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
}
/**
* 获取 结束 业务Id
* @return $bussinessIdEnd
*/
public Long getBussinessIdEnd(){
return this.bussinessIdEnd;
}
/**
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public void setBussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
}
/**
* 获取 增加 业务Id
* @return bussinessIdIncrement
*/
public Long getBussinessIdIncrement(){
return this.bussinessIdIncrement;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public void setBussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
}
/**
* 获取 业务Id
* @return bussinessIdList
*/
public List<Long> getBussinessIdList(){
return this.bussinessIdList;
}
/**
* 设置 业务Id
* @param bussinessIdList
*/
public void setBussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
}
/**
* 获取 业务Id
* @return bussinessIdNotList
*/
public List<Long> getBussinessIdNotList(){
return this.bussinessIdNotList;
}
/**
* 设置 业务Id
* @param bussinessIdNotList
*/
public void setBussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
}
/**
* 获取 预约业务
* @return bussinessNameList
*/
public List<String> getBussinessNameList(){
return this.bussinessNameList;
}
/**
* 设置 预约业务
* @param bussinessNameList
*/
public void setBussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
}
/**
* 获取 预约业务
* @return bussinessNameNotList
*/
public List<String> getBussinessNameNotList(){
return this.bussinessNameNotList;
}
/**
* 设置 预约业务
* @param bussinessNameNotList
*/
public void setBussinessNameNotList(List<String> bussinessNameNotList){
this.bussinessNameNotList = bussinessNameNotList;
}
/**
* 设置 主键ID,主键,自增长
* @param id
*/
public CpRecordsQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public CpRecordsQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public CpRecordsQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public CpRecordsQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public CpRecordsQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public CpRecordsQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 站点Id
* @param siteId
*/
public CpRecordsQuery siteId(Long siteId){
setSiteId(siteId);
return this;
}
/**
* 设置 开始 站点Id
* @param siteIdStart
*/
public CpRecordsQuery siteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
return this;
}
/**
* 设置 结束 站点Id
* @param siteIdEnd
*/
public CpRecordsQuery siteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
return this;
}
/**
* 设置 增加 站点Id
* @param siteIdIncrement
*/
public CpRecordsQuery siteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
return this;
}
/**
* 设置 站点Id
* @param siteIdList
*/
public CpRecordsQuery siteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
return this;
}
/**
* 设置 站点Id
* @param siteIdNotList
*/
public CpRecordsQuery siteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
return this;
}
/**
* 设置 站点名称
* @param siteName
*/
public CpRecordsQuery siteName(String siteName){
setSiteName(siteName);
return this;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public CpRecordsQuery siteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
return this;
}
/**
* 设置 个人信息ID
* @param personId
*/
public CpRecordsQuery personId(Long personId){
setPersonId(personId);
return this;
}
/**
* 设置 开始 个人信息ID
* @param personIdStart
*/
public CpRecordsQuery personIdStart(Long personIdStart){
this.personIdStart = personIdStart;
return this;
}
/**
* 设置 结束 个人信息ID
* @param personIdEnd
*/
public CpRecordsQuery personIdEnd(Long personIdEnd){
this.personIdEnd = personIdEnd;
return this;
}
/**
* 设置 增加 个人信息ID
* @param personIdIncrement
*/
public CpRecordsQuery personIdIncrement(Long personIdIncrement){
this.personIdIncrement = personIdIncrement;
return this;
}
/**
* 设置 个人信息ID
* @param personIdList
*/
public CpRecordsQuery personIdList(List<Long> personIdList){
this.personIdList = personIdList;
return this;
}
/**
* 设置 个人信息ID
* @param personIdNotList
*/
public CpRecordsQuery personIdNotList(List<Long> personIdNotList){
this.personIdNotList = personIdNotList;
return this;
}
/**
* 设置 评价号ID与办理号id一致
* @param pjId
*/
public CpRecordsQuery pjId(Long pjId){
setPjId(pjId);
return this;
}
/**
* 设置 开始 评价号ID与办理号id一致
* @param pjIdStart
*/
public CpRecordsQuery pjIdStart(Long pjIdStart){
this.pjIdStart = pjIdStart;
return this;
}
/**
* 设置 结束 评价号ID与办理号id一致
* @param pjIdEnd
*/
public CpRecordsQuery pjIdEnd(Long pjIdEnd){
this.pjIdEnd = pjIdEnd;
return this;
}
/**
* 设置 增加 评价号ID与办理号id一致
* @param pjIdIncrement
*/
public CpRecordsQuery pjIdIncrement(Long pjIdIncrement){
this.pjIdIncrement = pjIdIncrement;
return this;
}
/**
* 设置 评价号ID与办理号id一致
* @param pjIdList
*/
public CpRecordsQuery pjIdList(List<Long> pjIdList){
this.pjIdList = pjIdList;
return this;
}
/**
* 设置 评价号ID与办理号id一致
* @param pjIdNotList
*/
public CpRecordsQuery pjIdNotList(List<Long> pjIdNotList){
this.pjIdNotList = pjIdNotList;
return this;
}
/**
* 设置 姓名
* @param name
*/
public CpRecordsQuery name(String name){
setName(name);
return this;
}
/**
* 设置 姓名
* @param nameList
*/
public CpRecordsQuery nameList(List<String> nameList){
this.nameList = nameList;
return this;
}
/**
* 设置 联系方式
* @param contact
*/
public CpRecordsQuery contact(String contact){
setContact(contact);
return this;
}
/**
* 设置 联系方式
* @param contactList
*/
public CpRecordsQuery contactList(List<String> contactList){
this.contactList = contactList;
return this;
}
/**
* 设置 身份证号码
* @param idCard
*/
public CpRecordsQuery idCard(String idCard){
setIdCard(idCard);
return this;
}
/**
* 设置 身份证号码
* @param idCardList
*/
public CpRecordsQuery idCardList(List<String> idCardList){
this.idCardList = idCardList;
return this;
}
/**
* 设置 窗口id
* @param windowId
*/
public CpRecordsQuery windowId(Long windowId){
setWindowId(windowId);
return this;
}
/**
* 设置 开始 窗口id
* @param windowIdStart
*/
public CpRecordsQuery windowIdStart(Long windowIdStart){
this.windowIdStart = windowIdStart;
return this;
}
/**
* 设置 结束 窗口id
* @param windowIdEnd
*/
public CpRecordsQuery windowIdEnd(Long windowIdEnd){
this.windowIdEnd = windowIdEnd;
return this;
}
/**
* 设置 增加 窗口id
* @param windowIdIncrement
*/
public CpRecordsQuery windowIdIncrement(Long windowIdIncrement){
this.windowIdIncrement = windowIdIncrement;
return this;
}
/**
* 设置 窗口id
* @param windowIdList
*/
public CpRecordsQuery windowIdList(List<Long> windowIdList){
this.windowIdList = windowIdList;
return this;
}
/**
* 设置 窗口id
* @param windowIdNotList
*/
public CpRecordsQuery windowIdNotList(List<Long> windowIdNotList){
this.windowIdNotList = windowIdNotList;
return this;
}
/**
* 设置 窗口名称
* @param windowName
*/
public CpRecordsQuery windowName(String windowName){
setWindowName(windowName);
return this;
}
/**
* 设置 窗口名称
* @param windowNameList
*/
public CpRecordsQuery windowNameList(List<String> windowNameList){
this.windowNameList = windowNameList;
return this;
}
/**
* 设置 部门
* @param section
*/
public CpRecordsQuery section(String section){
setSection(section);
return this;
}
/**
* 设置 部门
* @param sectionList
*/
public CpRecordsQuery sectionList(List<String> sectionList){
this.sectionList = sectionList;
return this;
}
/**
* 设置 编号
* @param flounum
*/
public CpRecordsQuery flounum(String flounum){
setFlounum(flounum);
return this;
}
/**
* 设置 编号
* @param flounumList
*/
public CpRecordsQuery flounumList(List<String> flounumList){
this.flounumList = flounumList;
return this;
}
/**
* 设置 评价选项
* @param assessment
*/
public CpRecordsQuery assessment(String assessment){
setAssessment(assessment);
return this;
}
/**
* 设置 评价选项
* @param assessmentList
*/
public CpRecordsQuery assessmentList(List<String> assessmentList){
this.assessmentList = assessmentList;
return this;
}
/**
* 设置 评价类型
* @param type
*/
public CpRecordsQuery type(String type){
setType(type);
return this;
}
/**
* 设置 评价类型
* @param typeList
*/
public CpRecordsQuery typeList(List<String> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 评价内容
* @param content
*/
public CpRecordsQuery content(String content){
setContent(content);
return this;
}
/**
* 设置 评价内容
* @param contentList
*/
public CpRecordsQuery contentList(List<String> contentList){
this.contentList = contentList;
return this;
}
/**
* 设置 来源
* @param source
*/
public CpRecordsQuery source(String source){
setSource(source);
return this;
}
/**
* 设置 来源
* @param sourceList
*/
public CpRecordsQuery sourceList(List<String> sourceList){
this.sourceList = sourceList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public CpRecordsQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public CpRecordsQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public CpRecordsQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public CpRecordsQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public CpRecordsQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public CpRecordsQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public CpRecordsQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public CpRecordsQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public CpRecordsQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public CpRecordsQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public CpRecordsQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public CpRecordsQuery updateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
return this;
}
/**
* 设置 业务Id
* @param bussinessId
*/
public CpRecordsQuery bussinessId(Long bussinessId){
setBussinessId(bussinessId);
return this;
}
/**
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public CpRecordsQuery bussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
return this;
}
/**
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public CpRecordsQuery bussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
return this;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public CpRecordsQuery bussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
return this;
}
/**
* 设置 业务Id
* @param bussinessIdList
*/
public CpRecordsQuery bussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
return this;
}
/**
* 设置 业务Id
* @param bussinessIdNotList
*/
public CpRecordsQuery bussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
return this;
}
/**
* 设置 预约业务
* @param bussinessName
*/
public CpRecordsQuery bussinessName(String bussinessName){
setBussinessName(bussinessName);
return this;
}
/**
* 设置 预约业务
* @param bussinessNameList
*/
public CpRecordsQuery bussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<CpRecordsQuery> getOrConditionList(){
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<CpRecordsQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<CpRecordsQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<CpRecordsQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.cp.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/**
* 差评差评记录视图对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class CpRecordsVo extends BaseEntityLong {
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
package com.mortals.xhx.module.cp.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import com.mortals.xhx.module.cp.dao.CpRecordsDao;
/**
* CpRecordsService
*
* 差评差评记录 service接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface CpRecordsService extends ICRUDService<CpRecordsEntity,Long>{
CpRecordsDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.cp.service.impl;
import com.mortals.framework.model.PageInfo;
import org.springframework.beans.BeanUtils;
import java.util.function.Function;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.cp.dao.CpRecordsDao;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import com.mortals.xhx.module.cp.service.CpRecordsService;
import lombok.extern.slf4j.Slf4j;
/**
* CpRecordsService
* 差评差评记录 service实现
*
* @author zxfei
* @date 2025-04-10
*/
@Service("cpRecordsService")
@Slf4j
public class CpRecordsServiceImpl extends AbstractCRUDServiceImpl<CpRecordsDao, CpRecordsEntity, Long> implements CpRecordsService {
}
\ No newline at end of file
package com.mortals.xhx.module.cp.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.cp.model.CpRecordsEntity;
import com.mortals.xhx.module.cp.service.CpRecordsService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import com.mortals.xhx.common.code.*;
/**
*
* 差评差评记录
*
* @author zxfei
* @date 2025-04-10
*/
@RestController
@RequestMapping("cp/records")
public class CpRecordsController extends BaseCRUDJsonBodyMappingController<CpRecordsService,CpRecordsEntity,Long> {
@Autowired
private ParamService paramService;
public CpRecordsController(){
super.setModuleDesc( "差评差评记录");
}
@Override
protected void init(Map<String, Object> model, Context context) {
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import java.util.List;
/**
* 排号办理记录Dao
* 排号办理记录 DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface DoworkRecordsDao extends ICRUDDao<DoworkRecordsEntity,Long>{
}
package com.mortals.xhx.module.dowork.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.dowork.dao.DoworkRecordsDao;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 排号办理记录DaoImpl DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
@Repository("doworkRecordsDao")
public class DoworkRecordsDaoImpl extends BaseCRUDDaoMybatis<DoworkRecordsEntity,Long> implements DoworkRecordsDao {
}
package com.mortals.xhx.module.dowork.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.dowork.model.vo.DoworkRecordsVo;
import lombok.Data;
/**
* 排号办理记录实体对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class DoworkRecordsEntity extends DoworkRecordsVo {
private static final long serialVersionUID = 1L;
/**
* 站点Id
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
/**
* 个人信息ID
*/
private Long personId;
/**
* 等待流水号ID
*/
private Long waitId;
/**
* 姓名
*/
private String name;
/**
* 联系方式
*/
private String contact;
/**
* 身份证号码
*/
private String idCard;
/**
* 业务Id
*/
private Long bussinessId;
/**
* 预约业务
*/
private String bussinessName;
/**
* 窗口编号
*/
private String windowNum;
/**
* 窗口名称
*/
private String windowName;
/**
* 工作人员名称
*/
private String workman;
/**
* 办理业务
*/
private String service;
/**
* 排队编号
*/
private String queueNo;
/**
* 排队开始时间
*/
private Date takeTime;
/**
* 排队结束时间
*/
private Date callTime;
/**
* 办理结束时间
*/
private Date endTime;
/**
* 最终等待时长,秒
*/
private Integer waitTime;
/**
* 最终办理时长,秒
*/
private Integer endDureTime;
/**
* 平均等待时间
*/
private Integer waitDureAlarmAvl;
/**
* 平均办理时间
*/
private Integer endDureAlarmAvl;
/**
* 办理状态(排队中,办理中,接件结束)
*/
private String processStatus;
/**
* 备注
*/
private String remark;
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof DoworkRecordsEntity) {
DoworkRecordsEntity tmp = (DoworkRecordsEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.siteId = null;
this.siteName = "";
this.personId = null;
this.waitId = null;
this.name = "";
this.contact = "";
this.idCard = "";
this.bussinessId = null;
this.bussinessName = "";
this.windowNum = "";
this.windowName = "";
this.workman = "";
this.service = "";
this.queueNo = "";
this.takeTime = null;
this.callTime = null;
this.endTime = null;
this.waitTime = 0;
this.endDureTime = 0;
this.waitDureAlarmAvl = 0;
this.endDureAlarmAvl = 0;
this.processStatus = "排队中";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.model;
import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
/**
* 排号办理记录查询对象
*
* @author zxfei
* @date 2025-04-10
*/
public class DoworkRecordsQuery extends DoworkRecordsEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 开始 站点Id */
private Long siteIdStart;
/** 结束 站点Id */
private Long siteIdEnd;
/** 增加 站点Id */
private Long siteIdIncrement;
/** 站点Id列表 */
private List <Long> siteIdList;
/** 站点Id排除列表 */
private List <Long> siteIdNotList;
/** 站点名称 */
private List<String> siteNameList;
/** 站点名称排除列表 */
private List <String> siteNameNotList;
/** 开始 个人信息ID */
private Long personIdStart;
/** 结束 个人信息ID */
private Long personIdEnd;
/** 增加 个人信息ID */
private Long personIdIncrement;
/** 个人信息ID列表 */
private List <Long> personIdList;
/** 个人信息ID排除列表 */
private List <Long> personIdNotList;
/** 开始 等待流水号ID */
private Long waitIdStart;
/** 结束 等待流水号ID */
private Long waitIdEnd;
/** 增加 等待流水号ID */
private Long waitIdIncrement;
/** 等待流水号ID列表 */
private List <Long> waitIdList;
/** 等待流水号ID排除列表 */
private List <Long> waitIdNotList;
/** 姓名 */
private List<String> nameList;
/** 姓名排除列表 */
private List <String> nameNotList;
/** 联系方式 */
private List<String> contactList;
/** 联系方式排除列表 */
private List <String> contactNotList;
/** 身份证号码 */
private List<String> idCardList;
/** 身份证号码排除列表 */
private List <String> idCardNotList;
/** 开始 业务Id */
private Long bussinessIdStart;
/** 结束 业务Id */
private Long bussinessIdEnd;
/** 增加 业务Id */
private Long bussinessIdIncrement;
/** 业务Id列表 */
private List <Long> bussinessIdList;
/** 业务Id排除列表 */
private List <Long> bussinessIdNotList;
/** 预约业务 */
private List<String> bussinessNameList;
/** 预约业务排除列表 */
private List <String> bussinessNameNotList;
/** 窗口编号 */
private List<String> windowNumList;
/** 窗口编号排除列表 */
private List <String> windowNumNotList;
/** 窗口名称 */
private List<String> windowNameList;
/** 窗口名称排除列表 */
private List <String> windowNameNotList;
/** 工作人员名称 */
private List<String> workmanList;
/** 工作人员名称排除列表 */
private List <String> workmanNotList;
/** 办理业务 */
private List<String> serviceList;
/** 办理业务排除列表 */
private List <String> serviceNotList;
/** 排队编号 */
private List<String> queueNoList;
/** 排队编号排除列表 */
private List <String> queueNoNotList;
/** 开始 排队开始时间 */
private String takeTimeStart;
/** 结束 排队开始时间 */
private String takeTimeEnd;
/** 开始 排队结束时间 */
private String callTimeStart;
/** 结束 排队结束时间 */
private String callTimeEnd;
/** 开始 办理结束时间 */
private String endTimeStart;
/** 结束 办理结束时间 */
private String endTimeEnd;
/** 开始 最终等待时长,秒 */
private Integer waitTimeStart;
/** 结束 最终等待时长,秒 */
private Integer waitTimeEnd;
/** 增加 最终等待时长,秒 */
private Integer waitTimeIncrement;
/** 最终等待时长,秒列表 */
private List <Integer> waitTimeList;
/** 最终等待时长,秒排除列表 */
private List <Integer> waitTimeNotList;
/** 开始 最终办理时长,秒 */
private Integer endDureTimeStart;
/** 结束 最终办理时长,秒 */
private Integer endDureTimeEnd;
/** 增加 最终办理时长,秒 */
private Integer endDureTimeIncrement;
/** 最终办理时长,秒列表 */
private List <Integer> endDureTimeList;
/** 最终办理时长,秒排除列表 */
private List <Integer> endDureTimeNotList;
/** 开始 平均等待时间 */
private Integer waitDureAlarmAvlStart;
/** 结束 平均等待时间 */
private Integer waitDureAlarmAvlEnd;
/** 增加 平均等待时间 */
private Integer waitDureAlarmAvlIncrement;
/** 平均等待时间列表 */
private List <Integer> waitDureAlarmAvlList;
/** 平均等待时间排除列表 */
private List <Integer> waitDureAlarmAvlNotList;
/** 开始 平均办理时间 */
private Integer endDureAlarmAvlStart;
/** 结束 平均办理时间 */
private Integer endDureAlarmAvlEnd;
/** 增加 平均办理时间 */
private Integer endDureAlarmAvlIncrement;
/** 平均办理时间列表 */
private List <Integer> endDureAlarmAvlList;
/** 平均办理时间排除列表 */
private List <Integer> endDureAlarmAvlNotList;
/** 办理状态(排队中,办理中,接件结束) */
private List<String> processStatusList;
/** 办理状态(排队中,办理中,接件结束)排除列表 */
private List <String> processStatusNotList;
/** 备注 */
private List<String> remarkList;
/** 备注排除列表 */
private List <String> remarkNotList;
/** 开始 创建用户 */
private Long createUserIdStart;
/** 结束 创建用户 */
private Long createUserIdEnd;
/** 增加 创建用户 */
private Long createUserIdIncrement;
/** 创建用户列表 */
private List <Long> createUserIdList;
/** 创建用户排除列表 */
private List <Long> createUserIdNotList;
/** 开始 创建时间 */
private String createTimeStart;
/** 结束 创建时间 */
private String createTimeEnd;
/** 开始 更新用户 */
private Long updateUserIdStart;
/** 结束 更新用户 */
private Long updateUserIdEnd;
/** 增加 更新用户 */
private Long updateUserIdIncrement;
/** 更新用户列表 */
private List <Long> updateUserIdList;
/** 更新用户排除列表 */
private List <Long> updateUserIdNotList;
/** 开始 更新时间 */
private String updateTimeStart;
/** 结束 更新时间 */
private String updateTimeEnd;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<DoworkRecordsQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<DoworkRecordsQuery> andConditionList;
public DoworkRecordsQuery(){}
/**
* 获取 开始 主键ID,主键,自增长
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 主键ID,主键,自增长
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 主键ID,主键,自增长
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 主键ID,主键,自增长
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 主键ID,主键,自增长
* @return idNotList
*/
public List<Long> getIdNotList(){
return this.idNotList;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public void setIdNotList(List<Long> idNotList){
this.idNotList = idNotList;
}
/**
* 获取 开始 站点Id
* @return siteIdStart
*/
public Long getSiteIdStart(){
return this.siteIdStart;
}
/**
* 设置 开始 站点Id
* @param siteIdStart
*/
public void setSiteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
}
/**
* 获取 结束 站点Id
* @return $siteIdEnd
*/
public Long getSiteIdEnd(){
return this.siteIdEnd;
}
/**
* 设置 结束 站点Id
* @param siteIdEnd
*/
public void setSiteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
}
/**
* 获取 增加 站点Id
* @return siteIdIncrement
*/
public Long getSiteIdIncrement(){
return this.siteIdIncrement;
}
/**
* 设置 增加 站点Id
* @param siteIdIncrement
*/
public void setSiteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
}
/**
* 获取 站点Id
* @return siteIdList
*/
public List<Long> getSiteIdList(){
return this.siteIdList;
}
/**
* 设置 站点Id
* @param siteIdList
*/
public void setSiteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
}
/**
* 获取 站点Id
* @return siteIdNotList
*/
public List<Long> getSiteIdNotList(){
return this.siteIdNotList;
}
/**
* 设置 站点Id
* @param siteIdNotList
*/
public void setSiteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
}
/**
* 获取 站点名称
* @return siteNameList
*/
public List<String> getSiteNameList(){
return this.siteNameList;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public void setSiteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
}
/**
* 获取 站点名称
* @return siteNameNotList
*/
public List<String> getSiteNameNotList(){
return this.siteNameNotList;
}
/**
* 设置 站点名称
* @param siteNameNotList
*/
public void setSiteNameNotList(List<String> siteNameNotList){
this.siteNameNotList = siteNameNotList;
}
/**
* 获取 开始 个人信息ID
* @return personIdStart
*/
public Long getPersonIdStart(){
return this.personIdStart;
}
/**
* 设置 开始 个人信息ID
* @param personIdStart
*/
public void setPersonIdStart(Long personIdStart){
this.personIdStart = personIdStart;
}
/**
* 获取 结束 个人信息ID
* @return $personIdEnd
*/
public Long getPersonIdEnd(){
return this.personIdEnd;
}
/**
* 设置 结束 个人信息ID
* @param personIdEnd
*/
public void setPersonIdEnd(Long personIdEnd){
this.personIdEnd = personIdEnd;
}
/**
* 获取 增加 个人信息ID
* @return personIdIncrement
*/
public Long getPersonIdIncrement(){
return this.personIdIncrement;
}
/**
* 设置 增加 个人信息ID
* @param personIdIncrement
*/
public void setPersonIdIncrement(Long personIdIncrement){
this.personIdIncrement = personIdIncrement;
}
/**
* 获取 个人信息ID
* @return personIdList
*/
public List<Long> getPersonIdList(){
return this.personIdList;
}
/**
* 设置 个人信息ID
* @param personIdList
*/
public void setPersonIdList(List<Long> personIdList){
this.personIdList = personIdList;
}
/**
* 获取 个人信息ID
* @return personIdNotList
*/
public List<Long> getPersonIdNotList(){
return this.personIdNotList;
}
/**
* 设置 个人信息ID
* @param personIdNotList
*/
public void setPersonIdNotList(List<Long> personIdNotList){
this.personIdNotList = personIdNotList;
}
/**
* 获取 开始 等待流水号ID
* @return waitIdStart
*/
public Long getWaitIdStart(){
return this.waitIdStart;
}
/**
* 设置 开始 等待流水号ID
* @param waitIdStart
*/
public void setWaitIdStart(Long waitIdStart){
this.waitIdStart = waitIdStart;
}
/**
* 获取 结束 等待流水号ID
* @return $waitIdEnd
*/
public Long getWaitIdEnd(){
return this.waitIdEnd;
}
/**
* 设置 结束 等待流水号ID
* @param waitIdEnd
*/
public void setWaitIdEnd(Long waitIdEnd){
this.waitIdEnd = waitIdEnd;
}
/**
* 获取 增加 等待流水号ID
* @return waitIdIncrement
*/
public Long getWaitIdIncrement(){
return this.waitIdIncrement;
}
/**
* 设置 增加 等待流水号ID
* @param waitIdIncrement
*/
public void setWaitIdIncrement(Long waitIdIncrement){
this.waitIdIncrement = waitIdIncrement;
}
/**
* 获取 等待流水号ID
* @return waitIdList
*/
public List<Long> getWaitIdList(){
return this.waitIdList;
}
/**
* 设置 等待流水号ID
* @param waitIdList
*/
public void setWaitIdList(List<Long> waitIdList){
this.waitIdList = waitIdList;
}
/**
* 获取 等待流水号ID
* @return waitIdNotList
*/
public List<Long> getWaitIdNotList(){
return this.waitIdNotList;
}
/**
* 设置 等待流水号ID
* @param waitIdNotList
*/
public void setWaitIdNotList(List<Long> waitIdNotList){
this.waitIdNotList = waitIdNotList;
}
/**
* 获取 姓名
* @return nameList
*/
public List<String> getNameList(){
return this.nameList;
}
/**
* 设置 姓名
* @param nameList
*/
public void setNameList(List<String> nameList){
this.nameList = nameList;
}
/**
* 获取 姓名
* @return nameNotList
*/
public List<String> getNameNotList(){
return this.nameNotList;
}
/**
* 设置 姓名
* @param nameNotList
*/
public void setNameNotList(List<String> nameNotList){
this.nameNotList = nameNotList;
}
/**
* 获取 联系方式
* @return contactList
*/
public List<String> getContactList(){
return this.contactList;
}
/**
* 设置 联系方式
* @param contactList
*/
public void setContactList(List<String> contactList){
this.contactList = contactList;
}
/**
* 获取 联系方式
* @return contactNotList
*/
public List<String> getContactNotList(){
return this.contactNotList;
}
/**
* 设置 联系方式
* @param contactNotList
*/
public void setContactNotList(List<String> contactNotList){
this.contactNotList = contactNotList;
}
/**
* 获取 身份证号码
* @return idCardList
*/
public List<String> getIdCardList(){
return this.idCardList;
}
/**
* 设置 身份证号码
* @param idCardList
*/
public void setIdCardList(List<String> idCardList){
this.idCardList = idCardList;
}
/**
* 获取 身份证号码
* @return idCardNotList
*/
public List<String> getIdCardNotList(){
return this.idCardNotList;
}
/**
* 设置 身份证号码
* @param idCardNotList
*/
public void setIdCardNotList(List<String> idCardNotList){
this.idCardNotList = idCardNotList;
}
/**
* 获取 开始 业务Id
* @return bussinessIdStart
*/
public Long getBussinessIdStart(){
return this.bussinessIdStart;
}
/**
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public void setBussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
}
/**
* 获取 结束 业务Id
* @return $bussinessIdEnd
*/
public Long getBussinessIdEnd(){
return this.bussinessIdEnd;
}
/**
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public void setBussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
}
/**
* 获取 增加 业务Id
* @return bussinessIdIncrement
*/
public Long getBussinessIdIncrement(){
return this.bussinessIdIncrement;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public void setBussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
}
/**
* 获取 业务Id
* @return bussinessIdList
*/
public List<Long> getBussinessIdList(){
return this.bussinessIdList;
}
/**
* 设置 业务Id
* @param bussinessIdList
*/
public void setBussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
}
/**
* 获取 业务Id
* @return bussinessIdNotList
*/
public List<Long> getBussinessIdNotList(){
return this.bussinessIdNotList;
}
/**
* 设置 业务Id
* @param bussinessIdNotList
*/
public void setBussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
}
/**
* 获取 预约业务
* @return bussinessNameList
*/
public List<String> getBussinessNameList(){
return this.bussinessNameList;
}
/**
* 设置 预约业务
* @param bussinessNameList
*/
public void setBussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
}
/**
* 获取 预约业务
* @return bussinessNameNotList
*/
public List<String> getBussinessNameNotList(){
return this.bussinessNameNotList;
}
/**
* 设置 预约业务
* @param bussinessNameNotList
*/
public void setBussinessNameNotList(List<String> bussinessNameNotList){
this.bussinessNameNotList = bussinessNameNotList;
}
/**
* 获取 窗口编号
* @return windowNumList
*/
public List<String> getWindowNumList(){
return this.windowNumList;
}
/**
* 设置 窗口编号
* @param windowNumList
*/
public void setWindowNumList(List<String> windowNumList){
this.windowNumList = windowNumList;
}
/**
* 获取 窗口编号
* @return windowNumNotList
*/
public List<String> getWindowNumNotList(){
return this.windowNumNotList;
}
/**
* 设置 窗口编号
* @param windowNumNotList
*/
public void setWindowNumNotList(List<String> windowNumNotList){
this.windowNumNotList = windowNumNotList;
}
/**
* 获取 窗口名称
* @return windowNameList
*/
public List<String> getWindowNameList(){
return this.windowNameList;
}
/**
* 设置 窗口名称
* @param windowNameList
*/
public void setWindowNameList(List<String> windowNameList){
this.windowNameList = windowNameList;
}
/**
* 获取 窗口名称
* @return windowNameNotList
*/
public List<String> getWindowNameNotList(){
return this.windowNameNotList;
}
/**
* 设置 窗口名称
* @param windowNameNotList
*/
public void setWindowNameNotList(List<String> windowNameNotList){
this.windowNameNotList = windowNameNotList;
}
/**
* 获取 工作人员名称
* @return workmanList
*/
public List<String> getWorkmanList(){
return this.workmanList;
}
/**
* 设置 工作人员名称
* @param workmanList
*/
public void setWorkmanList(List<String> workmanList){
this.workmanList = workmanList;
}
/**
* 获取 工作人员名称
* @return workmanNotList
*/
public List<String> getWorkmanNotList(){
return this.workmanNotList;
}
/**
* 设置 工作人员名称
* @param workmanNotList
*/
public void setWorkmanNotList(List<String> workmanNotList){
this.workmanNotList = workmanNotList;
}
/**
* 获取 办理业务
* @return serviceList
*/
public List<String> getServiceList(){
return this.serviceList;
}
/**
* 设置 办理业务
* @param serviceList
*/
public void setServiceList(List<String> serviceList){
this.serviceList = serviceList;
}
/**
* 获取 办理业务
* @return serviceNotList
*/
public List<String> getServiceNotList(){
return this.serviceNotList;
}
/**
* 设置 办理业务
* @param serviceNotList
*/
public void setServiceNotList(List<String> serviceNotList){
this.serviceNotList = serviceNotList;
}
/**
* 获取 排队编号
* @return queueNoList
*/
public List<String> getQueueNoList(){
return this.queueNoList;
}
/**
* 设置 排队编号
* @param queueNoList
*/
public void setQueueNoList(List<String> queueNoList){
this.queueNoList = queueNoList;
}
/**
* 获取 排队编号
* @return queueNoNotList
*/
public List<String> getQueueNoNotList(){
return this.queueNoNotList;
}
/**
* 设置 排队编号
* @param queueNoNotList
*/
public void setQueueNoNotList(List<String> queueNoNotList){
this.queueNoNotList = queueNoNotList;
}
/**
* 获取 开始 排队开始时间
* @return takeTimeStart
*/
public String getTakeTimeStart(){
return this.takeTimeStart;
}
/**
* 设置 开始 排队开始时间
* @param takeTimeStart
*/
public void setTakeTimeStart(String takeTimeStart){
this.takeTimeStart = takeTimeStart;
}
/**
* 获取 结束 排队开始时间
* @return takeTimeEnd
*/
public String getTakeTimeEnd(){
return this.takeTimeEnd;
}
/**
* 设置 结束 排队开始时间
* @param takeTimeEnd
*/
public void setTakeTimeEnd(String takeTimeEnd){
this.takeTimeEnd = takeTimeEnd;
}
/**
* 获取 开始 排队结束时间
* @return callTimeStart
*/
public String getCallTimeStart(){
return this.callTimeStart;
}
/**
* 设置 开始 排队结束时间
* @param callTimeStart
*/
public void setCallTimeStart(String callTimeStart){
this.callTimeStart = callTimeStart;
}
/**
* 获取 结束 排队结束时间
* @return callTimeEnd
*/
public String getCallTimeEnd(){
return this.callTimeEnd;
}
/**
* 设置 结束 排队结束时间
* @param callTimeEnd
*/
public void setCallTimeEnd(String callTimeEnd){
this.callTimeEnd = callTimeEnd;
}
/**
* 获取 开始 办理结束时间
* @return endTimeStart
*/
public String getEndTimeStart(){
return this.endTimeStart;
}
/**
* 设置 开始 办理结束时间
* @param endTimeStart
*/
public void setEndTimeStart(String endTimeStart){
this.endTimeStart = endTimeStart;
}
/**
* 获取 结束 办理结束时间
* @return endTimeEnd
*/
public String getEndTimeEnd(){
return this.endTimeEnd;
}
/**
* 设置 结束 办理结束时间
* @param endTimeEnd
*/
public void setEndTimeEnd(String endTimeEnd){
this.endTimeEnd = endTimeEnd;
}
/**
* 获取 开始 最终等待时长,秒
* @return waitTimeStart
*/
public Integer getWaitTimeStart(){
return this.waitTimeStart;
}
/**
* 设置 开始 最终等待时长,秒
* @param waitTimeStart
*/
public void setWaitTimeStart(Integer waitTimeStart){
this.waitTimeStart = waitTimeStart;
}
/**
* 获取 结束 最终等待时长,秒
* @return $waitTimeEnd
*/
public Integer getWaitTimeEnd(){
return this.waitTimeEnd;
}
/**
* 设置 结束 最终等待时长,秒
* @param waitTimeEnd
*/
public void setWaitTimeEnd(Integer waitTimeEnd){
this.waitTimeEnd = waitTimeEnd;
}
/**
* 获取 增加 最终等待时长,秒
* @return waitTimeIncrement
*/
public Integer getWaitTimeIncrement(){
return this.waitTimeIncrement;
}
/**
* 设置 增加 最终等待时长,秒
* @param waitTimeIncrement
*/
public void setWaitTimeIncrement(Integer waitTimeIncrement){
this.waitTimeIncrement = waitTimeIncrement;
}
/**
* 获取 最终等待时长,秒
* @return waitTimeList
*/
public List<Integer> getWaitTimeList(){
return this.waitTimeList;
}
/**
* 设置 最终等待时长,秒
* @param waitTimeList
*/
public void setWaitTimeList(List<Integer> waitTimeList){
this.waitTimeList = waitTimeList;
}
/**
* 获取 最终等待时长,秒
* @return waitTimeNotList
*/
public List<Integer> getWaitTimeNotList(){
return this.waitTimeNotList;
}
/**
* 设置 最终等待时长,秒
* @param waitTimeNotList
*/
public void setWaitTimeNotList(List<Integer> waitTimeNotList){
this.waitTimeNotList = waitTimeNotList;
}
/**
* 获取 开始 最终办理时长,秒
* @return endDureTimeStart
*/
public Integer getEndDureTimeStart(){
return this.endDureTimeStart;
}
/**
* 设置 开始 最终办理时长,秒
* @param endDureTimeStart
*/
public void setEndDureTimeStart(Integer endDureTimeStart){
this.endDureTimeStart = endDureTimeStart;
}
/**
* 获取 结束 最终办理时长,秒
* @return $endDureTimeEnd
*/
public Integer getEndDureTimeEnd(){
return this.endDureTimeEnd;
}
/**
* 设置 结束 最终办理时长,秒
* @param endDureTimeEnd
*/
public void setEndDureTimeEnd(Integer endDureTimeEnd){
this.endDureTimeEnd = endDureTimeEnd;
}
/**
* 获取 增加 最终办理时长,秒
* @return endDureTimeIncrement
*/
public Integer getEndDureTimeIncrement(){
return this.endDureTimeIncrement;
}
/**
* 设置 增加 最终办理时长,秒
* @param endDureTimeIncrement
*/
public void setEndDureTimeIncrement(Integer endDureTimeIncrement){
this.endDureTimeIncrement = endDureTimeIncrement;
}
/**
* 获取 最终办理时长,秒
* @return endDureTimeList
*/
public List<Integer> getEndDureTimeList(){
return this.endDureTimeList;
}
/**
* 设置 最终办理时长,秒
* @param endDureTimeList
*/
public void setEndDureTimeList(List<Integer> endDureTimeList){
this.endDureTimeList = endDureTimeList;
}
/**
* 获取 最终办理时长,秒
* @return endDureTimeNotList
*/
public List<Integer> getEndDureTimeNotList(){
return this.endDureTimeNotList;
}
/**
* 设置 最终办理时长,秒
* @param endDureTimeNotList
*/
public void setEndDureTimeNotList(List<Integer> endDureTimeNotList){
this.endDureTimeNotList = endDureTimeNotList;
}
/**
* 获取 开始 平均等待时间
* @return waitDureAlarmAvlStart
*/
public Integer getWaitDureAlarmAvlStart(){
return this.waitDureAlarmAvlStart;
}
/**
* 设置 开始 平均等待时间
* @param waitDureAlarmAvlStart
*/
public void setWaitDureAlarmAvlStart(Integer waitDureAlarmAvlStart){
this.waitDureAlarmAvlStart = waitDureAlarmAvlStart;
}
/**
* 获取 结束 平均等待时间
* @return $waitDureAlarmAvlEnd
*/
public Integer getWaitDureAlarmAvlEnd(){
return this.waitDureAlarmAvlEnd;
}
/**
* 设置 结束 平均等待时间
* @param waitDureAlarmAvlEnd
*/
public void setWaitDureAlarmAvlEnd(Integer waitDureAlarmAvlEnd){
this.waitDureAlarmAvlEnd = waitDureAlarmAvlEnd;
}
/**
* 获取 增加 平均等待时间
* @return waitDureAlarmAvlIncrement
*/
public Integer getWaitDureAlarmAvlIncrement(){
return this.waitDureAlarmAvlIncrement;
}
/**
* 设置 增加 平均等待时间
* @param waitDureAlarmAvlIncrement
*/
public void setWaitDureAlarmAvlIncrement(Integer waitDureAlarmAvlIncrement){
this.waitDureAlarmAvlIncrement = waitDureAlarmAvlIncrement;
}
/**
* 获取 平均等待时间
* @return waitDureAlarmAvlList
*/
public List<Integer> getWaitDureAlarmAvlList(){
return this.waitDureAlarmAvlList;
}
/**
* 设置 平均等待时间
* @param waitDureAlarmAvlList
*/
public void setWaitDureAlarmAvlList(List<Integer> waitDureAlarmAvlList){
this.waitDureAlarmAvlList = waitDureAlarmAvlList;
}
/**
* 获取 平均等待时间
* @return waitDureAlarmAvlNotList
*/
public List<Integer> getWaitDureAlarmAvlNotList(){
return this.waitDureAlarmAvlNotList;
}
/**
* 设置 平均等待时间
* @param waitDureAlarmAvlNotList
*/
public void setWaitDureAlarmAvlNotList(List<Integer> waitDureAlarmAvlNotList){
this.waitDureAlarmAvlNotList = waitDureAlarmAvlNotList;
}
/**
* 获取 开始 平均办理时间
* @return endDureAlarmAvlStart
*/
public Integer getEndDureAlarmAvlStart(){
return this.endDureAlarmAvlStart;
}
/**
* 设置 开始 平均办理时间
* @param endDureAlarmAvlStart
*/
public void setEndDureAlarmAvlStart(Integer endDureAlarmAvlStart){
this.endDureAlarmAvlStart = endDureAlarmAvlStart;
}
/**
* 获取 结束 平均办理时间
* @return $endDureAlarmAvlEnd
*/
public Integer getEndDureAlarmAvlEnd(){
return this.endDureAlarmAvlEnd;
}
/**
* 设置 结束 平均办理时间
* @param endDureAlarmAvlEnd
*/
public void setEndDureAlarmAvlEnd(Integer endDureAlarmAvlEnd){
this.endDureAlarmAvlEnd = endDureAlarmAvlEnd;
}
/**
* 获取 增加 平均办理时间
* @return endDureAlarmAvlIncrement
*/
public Integer getEndDureAlarmAvlIncrement(){
return this.endDureAlarmAvlIncrement;
}
/**
* 设置 增加 平均办理时间
* @param endDureAlarmAvlIncrement
*/
public void setEndDureAlarmAvlIncrement(Integer endDureAlarmAvlIncrement){
this.endDureAlarmAvlIncrement = endDureAlarmAvlIncrement;
}
/**
* 获取 平均办理时间
* @return endDureAlarmAvlList
*/
public List<Integer> getEndDureAlarmAvlList(){
return this.endDureAlarmAvlList;
}
/**
* 设置 平均办理时间
* @param endDureAlarmAvlList
*/
public void setEndDureAlarmAvlList(List<Integer> endDureAlarmAvlList){
this.endDureAlarmAvlList = endDureAlarmAvlList;
}
/**
* 获取 平均办理时间
* @return endDureAlarmAvlNotList
*/
public List<Integer> getEndDureAlarmAvlNotList(){
return this.endDureAlarmAvlNotList;
}
/**
* 设置 平均办理时间
* @param endDureAlarmAvlNotList
*/
public void setEndDureAlarmAvlNotList(List<Integer> endDureAlarmAvlNotList){
this.endDureAlarmAvlNotList = endDureAlarmAvlNotList;
}
/**
* 获取 办理状态(排队中,办理中,接件结束)
* @return processStatusList
*/
public List<String> getProcessStatusList(){
return this.processStatusList;
}
/**
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusList
*/
public void setProcessStatusList(List<String> processStatusList){
this.processStatusList = processStatusList;
}
/**
* 获取 办理状态(排队中,办理中,接件结束)
* @return processStatusNotList
*/
public List<String> getProcessStatusNotList(){
return this.processStatusNotList;
}
/**
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusNotList
*/
public void setProcessStatusNotList(List<String> processStatusNotList){
this.processStatusNotList = processStatusNotList;
}
/**
* 获取 备注
* @return remarkList
*/
public List<String> getRemarkList(){
return this.remarkList;
}
/**
* 设置 备注
* @param remarkList
*/
public void setRemarkList(List<String> remarkList){
this.remarkList = remarkList;
}
/**
* 获取 备注
* @return remarkNotList
*/
public List<String> getRemarkNotList(){
return this.remarkNotList;
}
/**
* 设置 备注
* @param remarkNotList
*/
public void setRemarkNotList(List<String> remarkNotList){
this.remarkNotList = remarkNotList;
}
/**
* 获取 开始 创建用户
* @return createUserIdStart
*/
public Long getCreateUserIdStart(){
return this.createUserIdStart;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public void setCreateUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
}
/**
* 获取 结束 创建用户
* @return $createUserIdEnd
*/
public Long getCreateUserIdEnd(){
return this.createUserIdEnd;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public void setCreateUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
}
/**
* 获取 增加 创建用户
* @return createUserIdIncrement
*/
public Long getCreateUserIdIncrement(){
return this.createUserIdIncrement;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public void setCreateUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
}
/**
* 获取 创建用户
* @return createUserIdList
*/
public List<Long> getCreateUserIdList(){
return this.createUserIdList;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public void setCreateUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
}
/**
* 获取 创建用户
* @return createUserIdNotList
*/
public List<Long> getCreateUserIdNotList(){
return this.createUserIdNotList;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public void setCreateUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 更新用户
* @return updateUserIdStart
*/
public Long getUpdateUserIdStart(){
return this.updateUserIdStart;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public void setUpdateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
}
/**
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
public Long getUpdateUserIdEnd(){
return this.updateUserIdEnd;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public void setUpdateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
}
/**
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
public Long getUpdateUserIdIncrement(){
return this.updateUserIdIncrement;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
}
/**
* 获取 更新用户
* @return updateUserIdList
*/
public List<Long> getUpdateUserIdList(){
return this.updateUserIdList;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public void setUpdateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
}
/**
* 获取 更新用户
* @return updateUserIdNotList
*/
public List<Long> getUpdateUserIdNotList(){
return this.updateUserIdNotList;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
}
/**
* 获取 开始 更新时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 更新时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 更新时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 更新时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 设置 主键ID,主键,自增长
* @param id
*/
public DoworkRecordsQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public DoworkRecordsQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public DoworkRecordsQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public DoworkRecordsQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public DoworkRecordsQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public DoworkRecordsQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 站点Id
* @param siteId
*/
public DoworkRecordsQuery siteId(Long siteId){
setSiteId(siteId);
return this;
}
/**
* 设置 开始 站点Id
* @param siteIdStart
*/
public DoworkRecordsQuery siteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
return this;
}
/**
* 设置 结束 站点Id
* @param siteIdEnd
*/
public DoworkRecordsQuery siteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
return this;
}
/**
* 设置 增加 站点Id
* @param siteIdIncrement
*/
public DoworkRecordsQuery siteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
return this;
}
/**
* 设置 站点Id
* @param siteIdList
*/
public DoworkRecordsQuery siteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
return this;
}
/**
* 设置 站点Id
* @param siteIdNotList
*/
public DoworkRecordsQuery siteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
return this;
}
/**
* 设置 站点名称
* @param siteName
*/
public DoworkRecordsQuery siteName(String siteName){
setSiteName(siteName);
return this;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public DoworkRecordsQuery siteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
return this;
}
/**
* 设置 个人信息ID
* @param personId
*/
public DoworkRecordsQuery personId(Long personId){
setPersonId(personId);
return this;
}
/**
* 设置 开始 个人信息ID
* @param personIdStart
*/
public DoworkRecordsQuery personIdStart(Long personIdStart){
this.personIdStart = personIdStart;
return this;
}
/**
* 设置 结束 个人信息ID
* @param personIdEnd
*/
public DoworkRecordsQuery personIdEnd(Long personIdEnd){
this.personIdEnd = personIdEnd;
return this;
}
/**
* 设置 增加 个人信息ID
* @param personIdIncrement
*/
public DoworkRecordsQuery personIdIncrement(Long personIdIncrement){
this.personIdIncrement = personIdIncrement;
return this;
}
/**
* 设置 个人信息ID
* @param personIdList
*/
public DoworkRecordsQuery personIdList(List<Long> personIdList){
this.personIdList = personIdList;
return this;
}
/**
* 设置 个人信息ID
* @param personIdNotList
*/
public DoworkRecordsQuery personIdNotList(List<Long> personIdNotList){
this.personIdNotList = personIdNotList;
return this;
}
/**
* 设置 等待流水号ID
* @param waitId
*/
public DoworkRecordsQuery waitId(Long waitId){
setWaitId(waitId);
return this;
}
/**
* 设置 开始 等待流水号ID
* @param waitIdStart
*/
public DoworkRecordsQuery waitIdStart(Long waitIdStart){
this.waitIdStart = waitIdStart;
return this;
}
/**
* 设置 结束 等待流水号ID
* @param waitIdEnd
*/
public DoworkRecordsQuery waitIdEnd(Long waitIdEnd){
this.waitIdEnd = waitIdEnd;
return this;
}
/**
* 设置 增加 等待流水号ID
* @param waitIdIncrement
*/
public DoworkRecordsQuery waitIdIncrement(Long waitIdIncrement){
this.waitIdIncrement = waitIdIncrement;
return this;
}
/**
* 设置 等待流水号ID
* @param waitIdList
*/
public DoworkRecordsQuery waitIdList(List<Long> waitIdList){
this.waitIdList = waitIdList;
return this;
}
/**
* 设置 等待流水号ID
* @param waitIdNotList
*/
public DoworkRecordsQuery waitIdNotList(List<Long> waitIdNotList){
this.waitIdNotList = waitIdNotList;
return this;
}
/**
* 设置 姓名
* @param name
*/
public DoworkRecordsQuery name(String name){
setName(name);
return this;
}
/**
* 设置 姓名
* @param nameList
*/
public DoworkRecordsQuery nameList(List<String> nameList){
this.nameList = nameList;
return this;
}
/**
* 设置 联系方式
* @param contact
*/
public DoworkRecordsQuery contact(String contact){
setContact(contact);
return this;
}
/**
* 设置 联系方式
* @param contactList
*/
public DoworkRecordsQuery contactList(List<String> contactList){
this.contactList = contactList;
return this;
}
/**
* 设置 身份证号码
* @param idCard
*/
public DoworkRecordsQuery idCard(String idCard){
setIdCard(idCard);
return this;
}
/**
* 设置 身份证号码
* @param idCardList
*/
public DoworkRecordsQuery idCardList(List<String> idCardList){
this.idCardList = idCardList;
return this;
}
/**
* 设置 业务Id
* @param bussinessId
*/
public DoworkRecordsQuery bussinessId(Long bussinessId){
setBussinessId(bussinessId);
return this;
}
/**
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public DoworkRecordsQuery bussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
return this;
}
/**
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public DoworkRecordsQuery bussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
return this;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public DoworkRecordsQuery bussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
return this;
}
/**
* 设置 业务Id
* @param bussinessIdList
*/
public DoworkRecordsQuery bussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
return this;
}
/**
* 设置 业务Id
* @param bussinessIdNotList
*/
public DoworkRecordsQuery bussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
return this;
}
/**
* 设置 预约业务
* @param bussinessName
*/
public DoworkRecordsQuery bussinessName(String bussinessName){
setBussinessName(bussinessName);
return this;
}
/**
* 设置 预约业务
* @param bussinessNameList
*/
public DoworkRecordsQuery bussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
return this;
}
/**
* 设置 窗口编号
* @param windowNum
*/
public DoworkRecordsQuery windowNum(String windowNum){
setWindowNum(windowNum);
return this;
}
/**
* 设置 窗口编号
* @param windowNumList
*/
public DoworkRecordsQuery windowNumList(List<String> windowNumList){
this.windowNumList = windowNumList;
return this;
}
/**
* 设置 窗口名称
* @param windowName
*/
public DoworkRecordsQuery windowName(String windowName){
setWindowName(windowName);
return this;
}
/**
* 设置 窗口名称
* @param windowNameList
*/
public DoworkRecordsQuery windowNameList(List<String> windowNameList){
this.windowNameList = windowNameList;
return this;
}
/**
* 设置 工作人员名称
* @param workman
*/
public DoworkRecordsQuery workman(String workman){
setWorkman(workman);
return this;
}
/**
* 设置 工作人员名称
* @param workmanList
*/
public DoworkRecordsQuery workmanList(List<String> workmanList){
this.workmanList = workmanList;
return this;
}
/**
* 设置 办理业务
* @param service
*/
public DoworkRecordsQuery service(String service){
setService(service);
return this;
}
/**
* 设置 办理业务
* @param serviceList
*/
public DoworkRecordsQuery serviceList(List<String> serviceList){
this.serviceList = serviceList;
return this;
}
/**
* 设置 排队编号
* @param queueNo
*/
public DoworkRecordsQuery queueNo(String queueNo){
setQueueNo(queueNo);
return this;
}
/**
* 设置 排队编号
* @param queueNoList
*/
public DoworkRecordsQuery queueNoList(List<String> queueNoList){
this.queueNoList = queueNoList;
return this;
}
/**
* 设置 最终等待时长,秒
* @param waitTime
*/
public DoworkRecordsQuery waitTime(Integer waitTime){
setWaitTime(waitTime);
return this;
}
/**
* 设置 开始 最终等待时长,秒
* @param waitTimeStart
*/
public DoworkRecordsQuery waitTimeStart(Integer waitTimeStart){
this.waitTimeStart = waitTimeStart;
return this;
}
/**
* 设置 结束 最终等待时长,秒
* @param waitTimeEnd
*/
public DoworkRecordsQuery waitTimeEnd(Integer waitTimeEnd){
this.waitTimeEnd = waitTimeEnd;
return this;
}
/**
* 设置 增加 最终等待时长,秒
* @param waitTimeIncrement
*/
public DoworkRecordsQuery waitTimeIncrement(Integer waitTimeIncrement){
this.waitTimeIncrement = waitTimeIncrement;
return this;
}
/**
* 设置 最终等待时长,秒
* @param waitTimeList
*/
public DoworkRecordsQuery waitTimeList(List<Integer> waitTimeList){
this.waitTimeList = waitTimeList;
return this;
}
/**
* 设置 最终等待时长,秒
* @param waitTimeNotList
*/
public DoworkRecordsQuery waitTimeNotList(List<Integer> waitTimeNotList){
this.waitTimeNotList = waitTimeNotList;
return this;
}
/**
* 设置 最终办理时长,秒
* @param endDureTime
*/
public DoworkRecordsQuery endDureTime(Integer endDureTime){
setEndDureTime(endDureTime);
return this;
}
/**
* 设置 开始 最终办理时长,秒
* @param endDureTimeStart
*/
public DoworkRecordsQuery endDureTimeStart(Integer endDureTimeStart){
this.endDureTimeStart = endDureTimeStart;
return this;
}
/**
* 设置 结束 最终办理时长,秒
* @param endDureTimeEnd
*/
public DoworkRecordsQuery endDureTimeEnd(Integer endDureTimeEnd){
this.endDureTimeEnd = endDureTimeEnd;
return this;
}
/**
* 设置 增加 最终办理时长,秒
* @param endDureTimeIncrement
*/
public DoworkRecordsQuery endDureTimeIncrement(Integer endDureTimeIncrement){
this.endDureTimeIncrement = endDureTimeIncrement;
return this;
}
/**
* 设置 最终办理时长,秒
* @param endDureTimeList
*/
public DoworkRecordsQuery endDureTimeList(List<Integer> endDureTimeList){
this.endDureTimeList = endDureTimeList;
return this;
}
/**
* 设置 最终办理时长,秒
* @param endDureTimeNotList
*/
public DoworkRecordsQuery endDureTimeNotList(List<Integer> endDureTimeNotList){
this.endDureTimeNotList = endDureTimeNotList;
return this;
}
/**
* 设置 平均等待时间
* @param waitDureAlarmAvl
*/
public DoworkRecordsQuery waitDureAlarmAvl(Integer waitDureAlarmAvl){
setWaitDureAlarmAvl(waitDureAlarmAvl);
return this;
}
/**
* 设置 开始 平均等待时间
* @param waitDureAlarmAvlStart
*/
public DoworkRecordsQuery waitDureAlarmAvlStart(Integer waitDureAlarmAvlStart){
this.waitDureAlarmAvlStart = waitDureAlarmAvlStart;
return this;
}
/**
* 设置 结束 平均等待时间
* @param waitDureAlarmAvlEnd
*/
public DoworkRecordsQuery waitDureAlarmAvlEnd(Integer waitDureAlarmAvlEnd){
this.waitDureAlarmAvlEnd = waitDureAlarmAvlEnd;
return this;
}
/**
* 设置 增加 平均等待时间
* @param waitDureAlarmAvlIncrement
*/
public DoworkRecordsQuery waitDureAlarmAvlIncrement(Integer waitDureAlarmAvlIncrement){
this.waitDureAlarmAvlIncrement = waitDureAlarmAvlIncrement;
return this;
}
/**
* 设置 平均等待时间
* @param waitDureAlarmAvlList
*/
public DoworkRecordsQuery waitDureAlarmAvlList(List<Integer> waitDureAlarmAvlList){
this.waitDureAlarmAvlList = waitDureAlarmAvlList;
return this;
}
/**
* 设置 平均等待时间
* @param waitDureAlarmAvlNotList
*/
public DoworkRecordsQuery waitDureAlarmAvlNotList(List<Integer> waitDureAlarmAvlNotList){
this.waitDureAlarmAvlNotList = waitDureAlarmAvlNotList;
return this;
}
/**
* 设置 平均办理时间
* @param endDureAlarmAvl
*/
public DoworkRecordsQuery endDureAlarmAvl(Integer endDureAlarmAvl){
setEndDureAlarmAvl(endDureAlarmAvl);
return this;
}
/**
* 设置 开始 平均办理时间
* @param endDureAlarmAvlStart
*/
public DoworkRecordsQuery endDureAlarmAvlStart(Integer endDureAlarmAvlStart){
this.endDureAlarmAvlStart = endDureAlarmAvlStart;
return this;
}
/**
* 设置 结束 平均办理时间
* @param endDureAlarmAvlEnd
*/
public DoworkRecordsQuery endDureAlarmAvlEnd(Integer endDureAlarmAvlEnd){
this.endDureAlarmAvlEnd = endDureAlarmAvlEnd;
return this;
}
/**
* 设置 增加 平均办理时间
* @param endDureAlarmAvlIncrement
*/
public DoworkRecordsQuery endDureAlarmAvlIncrement(Integer endDureAlarmAvlIncrement){
this.endDureAlarmAvlIncrement = endDureAlarmAvlIncrement;
return this;
}
/**
* 设置 平均办理时间
* @param endDureAlarmAvlList
*/
public DoworkRecordsQuery endDureAlarmAvlList(List<Integer> endDureAlarmAvlList){
this.endDureAlarmAvlList = endDureAlarmAvlList;
return this;
}
/**
* 设置 平均办理时间
* @param endDureAlarmAvlNotList
*/
public DoworkRecordsQuery endDureAlarmAvlNotList(List<Integer> endDureAlarmAvlNotList){
this.endDureAlarmAvlNotList = endDureAlarmAvlNotList;
return this;
}
/**
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatus
*/
public DoworkRecordsQuery processStatus(String processStatus){
setProcessStatus(processStatus);
return this;
}
/**
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusList
*/
public DoworkRecordsQuery processStatusList(List<String> processStatusList){
this.processStatusList = processStatusList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public DoworkRecordsQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public DoworkRecordsQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public DoworkRecordsQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public DoworkRecordsQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public DoworkRecordsQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public DoworkRecordsQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public DoworkRecordsQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public DoworkRecordsQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public DoworkRecordsQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public DoworkRecordsQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public DoworkRecordsQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public DoworkRecordsQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public DoworkRecordsQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public DoworkRecordsQuery updateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<DoworkRecordsQuery> getOrConditionList(){
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<DoworkRecordsQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<DoworkRecordsQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<DoworkRecordsQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/**
* 排号办理记录视图对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class DoworkRecordsVo extends BaseEntityLong {
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import com.mortals.xhx.module.dowork.dao.DoworkRecordsDao;
/**
* DoworkRecordsService
*
* 排号办理记录 service接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface DoworkRecordsService extends ICRUDService<DoworkRecordsEntity,Long>{
DoworkRecordsDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.service.impl;
import com.mortals.framework.model.PageInfo;
import org.springframework.beans.BeanUtils;
import java.util.function.Function;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.dowork.dao.DoworkRecordsDao;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import com.mortals.xhx.module.dowork.service.DoworkRecordsService;
import lombok.extern.slf4j.Slf4j;
/**
* DoworkRecordsService
* 排号办理记录 service实现
*
* @author zxfei
* @date 2025-04-10
*/
@Service("doworkRecordsService")
@Slf4j
public class DoworkRecordsServiceImpl extends AbstractCRUDServiceImpl<DoworkRecordsDao, DoworkRecordsEntity, Long> implements DoworkRecordsService {
}
\ No newline at end of file
package com.mortals.xhx.module.dowork.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.dowork.model.DoworkRecordsEntity;
import com.mortals.xhx.module.dowork.service.DoworkRecordsService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import com.mortals.xhx.common.code.*;
/**
*
* 排号办理记录
*
* @author zxfei
* @date 2025-04-10
*/
@RestController
@RequestMapping("dowork/records")
public class DoworkRecordsController extends BaseCRUDJsonBodyMappingController<DoworkRecordsService,DoworkRecordsEntity,Long> {
@Autowired
private ParamService paramService;
public DoworkRecordsController(){
super.setModuleDesc( "排号办理记录");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "processStatus", ProcessStatusEnum.getEnumMap());
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import java.util.List;
/**
* 消息发送配置Dao
* 消息发送配置 DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface MessageConfigDao extends ICRUDDao<MessageConfigEntity,Long>{
}
package com.mortals.xhx.module.message.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import java.util.List;
/**
* 消息任务Dao
* 消息任务 DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface MessageTaskDao extends ICRUDDao<MessageTaskEntity,Long>{
}
package com.mortals.xhx.module.message.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.message.dao.MessageConfigDao;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 消息发送配置DaoImpl DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
@Repository("messageConfigDao")
public class MessageConfigDaoImpl extends BaseCRUDDaoMybatis<MessageConfigEntity,Long> implements MessageConfigDao {
}
package com.mortals.xhx.module.message.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.message.dao.MessageTaskDao;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 消息任务DaoImpl DAO接口
*
* @author zxfei
* @date 2025-04-10
*/
@Repository("messageTaskDao")
public class MessageTaskDaoImpl extends BaseCRUDDaoMybatis<MessageTaskEntity,Long> implements MessageTaskDao {
}
package com.mortals.xhx.module.message.model;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.message.model.vo.MessageConfigVo;
import lombok.Data;
/**
* 消息发送配置实体对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class MessageConfigEntity extends MessageConfigVo {
private static final long serialVersionUID = 1L;
/**
* 站点ID
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
/**
* 站点编码
*/
private String siteCode;
/**
* 短信消息模板ID
*/
private Long templateId;
/**
* 应用平台标识
*/
private String appName;
/**
* 消息类型(等待超时预警,办理超时预警,差评预警)
*/
private String messageType;
/**
* 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
*/
private String recipient;
/**
* 消息发送对象
*/
private String msgRecipients;
/**
* 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
*/
private String channel;
/**
* 是否启用该发送服务(0.否,1.是)
*/
private Integer enabled;
/**
* 备注
*/
private String remark;
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof MessageConfigEntity) {
MessageConfigEntity tmp = (MessageConfigEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.siteId = null;
this.siteName = "";
this.siteCode = "";
this.templateId = null;
this.appName = "";
this.messageType = "等待超时预警";
this.recipient = "";
this.msgRecipients = "";
this.channel = "SMS";
this.enabled = 1;
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.model;
import java.util.List;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
/**
* 消息发送配置查询对象
*
* @author zxfei
* @date 2025-04-10
*/
public class MessageConfigQuery extends MessageConfigEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
/** 结束 序号,主键,自增长 */
private Long idEnd;
/** 增加 序号,主键,自增长 */
private Long idIncrement;
/** 序号,主键,自增长列表 */
private List <Long> idList;
/** 序号,主键,自增长排除列表 */
private List <Long> idNotList;
/** 开始 站点ID */
private Long siteIdStart;
/** 结束 站点ID */
private Long siteIdEnd;
/** 增加 站点ID */
private Long siteIdIncrement;
/** 站点ID列表 */
private List <Long> siteIdList;
/** 站点ID排除列表 */
private List <Long> siteIdNotList;
/** 站点名称 */
private List<String> siteNameList;
/** 站点名称排除列表 */
private List <String> siteNameNotList;
/** 站点编码 */
private List<String> siteCodeList;
/** 站点编码排除列表 */
private List <String> siteCodeNotList;
/** 开始 短信消息模板ID */
private Long templateIdStart;
/** 结束 短信消息模板ID */
private Long templateIdEnd;
/** 增加 短信消息模板ID */
private Long templateIdIncrement;
/** 短信消息模板ID列表 */
private List <Long> templateIdList;
/** 短信消息模板ID排除列表 */
private List <Long> templateIdNotList;
/** 应用平台标识 */
private List<String> appNameList;
/** 应用平台标识排除列表 */
private List <String> appNameNotList;
/** 消息类型(等待超时预警,办理超时预警,差评预警) */
private List<String> messageTypeList;
/** 消息类型(等待超时预警,办理超时预警,差评预警)排除列表 */
private List <String> messageTypeNotList;
/** 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID */
private List<String> recipientList;
/** 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID排除列表 */
private List <String> recipientNotList;
/** 消息发送对象 */
private List<String> msgRecipientsList;
/** 消息发送对象排除列表 */
private List <String> msgRecipientsNotList;
/** 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知) */
private List<String> channelList;
/** 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)排除列表 */
private List <String> channelNotList;
/** 开始 是否启用该发送服务(0.否,1.是) */
private Integer enabledStart;
/** 结束 是否启用该发送服务(0.否,1.是) */
private Integer enabledEnd;
/** 增加 是否启用该发送服务(0.否,1.是) */
private Integer enabledIncrement;
/** 是否启用该发送服务(0.否,1.是)列表 */
private List <Integer> enabledList;
/** 是否启用该发送服务(0.否,1.是)排除列表 */
private List <Integer> enabledNotList;
/** 备注 */
private List<String> remarkList;
/** 备注排除列表 */
private List <String> remarkNotList;
/** 开始 创建用户 */
private Long createUserIdStart;
/** 结束 创建用户 */
private Long createUserIdEnd;
/** 增加 创建用户 */
private Long createUserIdIncrement;
/** 创建用户列表 */
private List <Long> createUserIdList;
/** 创建用户排除列表 */
private List <Long> createUserIdNotList;
/** 开始 创建时间 */
private String createTimeStart;
/** 结束 创建时间 */
private String createTimeEnd;
/** 开始 更新用户 */
private Long updateUserIdStart;
/** 结束 更新用户 */
private Long updateUserIdEnd;
/** 增加 更新用户 */
private Long updateUserIdIncrement;
/** 更新用户列表 */
private List <Long> updateUserIdList;
/** 更新用户排除列表 */
private List <Long> updateUserIdNotList;
/** 开始 更新时间 */
private String updateTimeStart;
/** 结束 更新时间 */
private String updateTimeEnd;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<MessageConfigQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<MessageConfigQuery> andConditionList;
public MessageConfigQuery(){}
/**
* 获取 开始 序号,主键,自增长
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 序号,主键,自增长
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 序号,主键,自增长
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 序号,主键,自增长
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 序号,主键,自增长
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 序号,主键,自增长
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 序号,主键,自增长
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 序号,主键,自增长
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 序号,主键,自增长
* @return idNotList
*/
public List<Long> getIdNotList(){
return this.idNotList;
}
/**
* 设置 序号,主键,自增长
* @param idNotList
*/
public void setIdNotList(List<Long> idNotList){
this.idNotList = idNotList;
}
/**
* 获取 开始 站点ID
* @return siteIdStart
*/
public Long getSiteIdStart(){
return this.siteIdStart;
}
/**
* 设置 开始 站点ID
* @param siteIdStart
*/
public void setSiteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
}
/**
* 获取 结束 站点ID
* @return $siteIdEnd
*/
public Long getSiteIdEnd(){
return this.siteIdEnd;
}
/**
* 设置 结束 站点ID
* @param siteIdEnd
*/
public void setSiteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
}
/**
* 获取 增加 站点ID
* @return siteIdIncrement
*/
public Long getSiteIdIncrement(){
return this.siteIdIncrement;
}
/**
* 设置 增加 站点ID
* @param siteIdIncrement
*/
public void setSiteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
}
/**
* 获取 站点ID
* @return siteIdList
*/
public List<Long> getSiteIdList(){
return this.siteIdList;
}
/**
* 设置 站点ID
* @param siteIdList
*/
public void setSiteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
}
/**
* 获取 站点ID
* @return siteIdNotList
*/
public List<Long> getSiteIdNotList(){
return this.siteIdNotList;
}
/**
* 设置 站点ID
* @param siteIdNotList
*/
public void setSiteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
}
/**
* 获取 站点名称
* @return siteNameList
*/
public List<String> getSiteNameList(){
return this.siteNameList;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public void setSiteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
}
/**
* 获取 站点名称
* @return siteNameNotList
*/
public List<String> getSiteNameNotList(){
return this.siteNameNotList;
}
/**
* 设置 站点名称
* @param siteNameNotList
*/
public void setSiteNameNotList(List<String> siteNameNotList){
this.siteNameNotList = siteNameNotList;
}
/**
* 获取 站点编码
* @return siteCodeList
*/
public List<String> getSiteCodeList(){
return this.siteCodeList;
}
/**
* 设置 站点编码
* @param siteCodeList
*/
public void setSiteCodeList(List<String> siteCodeList){
this.siteCodeList = siteCodeList;
}
/**
* 获取 站点编码
* @return siteCodeNotList
*/
public List<String> getSiteCodeNotList(){
return this.siteCodeNotList;
}
/**
* 设置 站点编码
* @param siteCodeNotList
*/
public void setSiteCodeNotList(List<String> siteCodeNotList){
this.siteCodeNotList = siteCodeNotList;
}
/**
* 获取 开始 短信消息模板ID
* @return templateIdStart
*/
public Long getTemplateIdStart(){
return this.templateIdStart;
}
/**
* 设置 开始 短信消息模板ID
* @param templateIdStart
*/
public void setTemplateIdStart(Long templateIdStart){
this.templateIdStart = templateIdStart;
}
/**
* 获取 结束 短信消息模板ID
* @return $templateIdEnd
*/
public Long getTemplateIdEnd(){
return this.templateIdEnd;
}
/**
* 设置 结束 短信消息模板ID
* @param templateIdEnd
*/
public void setTemplateIdEnd(Long templateIdEnd){
this.templateIdEnd = templateIdEnd;
}
/**
* 获取 增加 短信消息模板ID
* @return templateIdIncrement
*/
public Long getTemplateIdIncrement(){
return this.templateIdIncrement;
}
/**
* 设置 增加 短信消息模板ID
* @param templateIdIncrement
*/
public void setTemplateIdIncrement(Long templateIdIncrement){
this.templateIdIncrement = templateIdIncrement;
}
/**
* 获取 短信消息模板ID
* @return templateIdList
*/
public List<Long> getTemplateIdList(){
return this.templateIdList;
}
/**
* 设置 短信消息模板ID
* @param templateIdList
*/
public void setTemplateIdList(List<Long> templateIdList){
this.templateIdList = templateIdList;
}
/**
* 获取 短信消息模板ID
* @return templateIdNotList
*/
public List<Long> getTemplateIdNotList(){
return this.templateIdNotList;
}
/**
* 设置 短信消息模板ID
* @param templateIdNotList
*/
public void setTemplateIdNotList(List<Long> templateIdNotList){
this.templateIdNotList = templateIdNotList;
}
/**
* 获取 应用平台标识
* @return appNameList
*/
public List<String> getAppNameList(){
return this.appNameList;
}
/**
* 设置 应用平台标识
* @param appNameList
*/
public void setAppNameList(List<String> appNameList){
this.appNameList = appNameList;
}
/**
* 获取 应用平台标识
* @return appNameNotList
*/
public List<String> getAppNameNotList(){
return this.appNameNotList;
}
/**
* 设置 应用平台标识
* @param appNameNotList
*/
public void setAppNameNotList(List<String> appNameNotList){
this.appNameNotList = appNameNotList;
}
/**
* 获取 消息类型(等待超时预警,办理超时预警,差评预警)
* @return messageTypeList
*/
public List<String> getMessageTypeList(){
return this.messageTypeList;
}
/**
* 设置 消息类型(等待超时预警,办理超时预警,差评预警)
* @param messageTypeList
*/
public void setMessageTypeList(List<String> messageTypeList){
this.messageTypeList = messageTypeList;
}
/**
* 获取 消息类型(等待超时预警,办理超时预警,差评预警)
* @return messageTypeNotList
*/
public List<String> getMessageTypeNotList(){
return this.messageTypeNotList;
}
/**
* 设置 消息类型(等待超时预警,办理超时预警,差评预警)
* @param messageTypeNotList
*/
public void setMessageTypeNotList(List<String> messageTypeNotList){
this.messageTypeNotList = messageTypeNotList;
}
/**
* 获取 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @return recipientList
*/
public List<String> getRecipientList(){
return this.recipientList;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @param recipientList
*/
public void setRecipientList(List<String> recipientList){
this.recipientList = recipientList;
}
/**
* 获取 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @return recipientNotList
*/
public List<String> getRecipientNotList(){
return this.recipientNotList;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @param recipientNotList
*/
public void setRecipientNotList(List<String> recipientNotList){
this.recipientNotList = recipientNotList;
}
/**
* 获取 消息发送对象
* @return msgRecipientsList
*/
public List<String> getMsgRecipientsList(){
return this.msgRecipientsList;
}
/**
* 设置 消息发送对象
* @param msgRecipientsList
*/
public void setMsgRecipientsList(List<String> msgRecipientsList){
this.msgRecipientsList = msgRecipientsList;
}
/**
* 获取 消息发送对象
* @return msgRecipientsNotList
*/
public List<String> getMsgRecipientsNotList(){
return this.msgRecipientsNotList;
}
/**
* 设置 消息发送对象
* @param msgRecipientsNotList
*/
public void setMsgRecipientsNotList(List<String> msgRecipientsNotList){
this.msgRecipientsNotList = msgRecipientsNotList;
}
/**
* 获取 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @return channelList
*/
public List<String> getChannelList(){
return this.channelList;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelList
*/
public void setChannelList(List<String> channelList){
this.channelList = channelList;
}
/**
* 获取 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @return channelNotList
*/
public List<String> getChannelNotList(){
return this.channelNotList;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelNotList
*/
public void setChannelNotList(List<String> channelNotList){
this.channelNotList = channelNotList;
}
/**
* 获取 开始 是否启用该发送服务(0.否,1.是)
* @return enabledStart
*/
public Integer getEnabledStart(){
return this.enabledStart;
}
/**
* 设置 开始 是否启用该发送服务(0.否,1.是)
* @param enabledStart
*/
public void setEnabledStart(Integer enabledStart){
this.enabledStart = enabledStart;
}
/**
* 获取 结束 是否启用该发送服务(0.否,1.是)
* @return $enabledEnd
*/
public Integer getEnabledEnd(){
return this.enabledEnd;
}
/**
* 设置 结束 是否启用该发送服务(0.否,1.是)
* @param enabledEnd
*/
public void setEnabledEnd(Integer enabledEnd){
this.enabledEnd = enabledEnd;
}
/**
* 获取 增加 是否启用该发送服务(0.否,1.是)
* @return enabledIncrement
*/
public Integer getEnabledIncrement(){
return this.enabledIncrement;
}
/**
* 设置 增加 是否启用该发送服务(0.否,1.是)
* @param enabledIncrement
*/
public void setEnabledIncrement(Integer enabledIncrement){
this.enabledIncrement = enabledIncrement;
}
/**
* 获取 是否启用该发送服务(0.否,1.是)
* @return enabledList
*/
public List<Integer> getEnabledList(){
return this.enabledList;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledList
*/
public void setEnabledList(List<Integer> enabledList){
this.enabledList = enabledList;
}
/**
* 获取 是否启用该发送服务(0.否,1.是)
* @return enabledNotList
*/
public List<Integer> getEnabledNotList(){
return this.enabledNotList;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledNotList
*/
public void setEnabledNotList(List<Integer> enabledNotList){
this.enabledNotList = enabledNotList;
}
/**
* 获取 备注
* @return remarkList
*/
public List<String> getRemarkList(){
return this.remarkList;
}
/**
* 设置 备注
* @param remarkList
*/
public void setRemarkList(List<String> remarkList){
this.remarkList = remarkList;
}
/**
* 获取 备注
* @return remarkNotList
*/
public List<String> getRemarkNotList(){
return this.remarkNotList;
}
/**
* 设置 备注
* @param remarkNotList
*/
public void setRemarkNotList(List<String> remarkNotList){
this.remarkNotList = remarkNotList;
}
/**
* 获取 开始 创建用户
* @return createUserIdStart
*/
public Long getCreateUserIdStart(){
return this.createUserIdStart;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public void setCreateUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
}
/**
* 获取 结束 创建用户
* @return $createUserIdEnd
*/
public Long getCreateUserIdEnd(){
return this.createUserIdEnd;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public void setCreateUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
}
/**
* 获取 增加 创建用户
* @return createUserIdIncrement
*/
public Long getCreateUserIdIncrement(){
return this.createUserIdIncrement;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public void setCreateUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
}
/**
* 获取 创建用户
* @return createUserIdList
*/
public List<Long> getCreateUserIdList(){
return this.createUserIdList;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public void setCreateUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
}
/**
* 获取 创建用户
* @return createUserIdNotList
*/
public List<Long> getCreateUserIdNotList(){
return this.createUserIdNotList;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public void setCreateUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 更新用户
* @return updateUserIdStart
*/
public Long getUpdateUserIdStart(){
return this.updateUserIdStart;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public void setUpdateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
}
/**
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
public Long getUpdateUserIdEnd(){
return this.updateUserIdEnd;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public void setUpdateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
}
/**
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
public Long getUpdateUserIdIncrement(){
return this.updateUserIdIncrement;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
}
/**
* 获取 更新用户
* @return updateUserIdList
*/
public List<Long> getUpdateUserIdList(){
return this.updateUserIdList;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public void setUpdateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
}
/**
* 获取 更新用户
* @return updateUserIdNotList
*/
public List<Long> getUpdateUserIdNotList(){
return this.updateUserIdNotList;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
}
/**
* 获取 开始 更新时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 更新时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 更新时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 更新时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 设置 序号,主键,自增长
* @param id
*/
public MessageConfigQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 序号,主键,自增长
* @param idStart
*/
public MessageConfigQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 序号,主键,自增长
* @param idEnd
*/
public MessageConfigQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 序号,主键,自增长
* @param idIncrement
*/
public MessageConfigQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idList
*/
public MessageConfigQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idNotList
*/
public MessageConfigQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 站点ID
* @param siteId
*/
public MessageConfigQuery siteId(Long siteId){
setSiteId(siteId);
return this;
}
/**
* 设置 开始 站点ID
* @param siteIdStart
*/
public MessageConfigQuery siteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
return this;
}
/**
* 设置 结束 站点ID
* @param siteIdEnd
*/
public MessageConfigQuery siteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
return this;
}
/**
* 设置 增加 站点ID
* @param siteIdIncrement
*/
public MessageConfigQuery siteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
return this;
}
/**
* 设置 站点ID
* @param siteIdList
*/
public MessageConfigQuery siteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
return this;
}
/**
* 设置 站点ID
* @param siteIdNotList
*/
public MessageConfigQuery siteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
return this;
}
/**
* 设置 站点名称
* @param siteName
*/
public MessageConfigQuery siteName(String siteName){
setSiteName(siteName);
return this;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public MessageConfigQuery siteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
return this;
}
/**
* 设置 站点编码
* @param siteCode
*/
public MessageConfigQuery siteCode(String siteCode){
setSiteCode(siteCode);
return this;
}
/**
* 设置 站点编码
* @param siteCodeList
*/
public MessageConfigQuery siteCodeList(List<String> siteCodeList){
this.siteCodeList = siteCodeList;
return this;
}
/**
* 设置 短信消息模板ID
* @param templateId
*/
public MessageConfigQuery templateId(Long templateId){
setTemplateId(templateId);
return this;
}
/**
* 设置 开始 短信消息模板ID
* @param templateIdStart
*/
public MessageConfigQuery templateIdStart(Long templateIdStart){
this.templateIdStart = templateIdStart;
return this;
}
/**
* 设置 结束 短信消息模板ID
* @param templateIdEnd
*/
public MessageConfigQuery templateIdEnd(Long templateIdEnd){
this.templateIdEnd = templateIdEnd;
return this;
}
/**
* 设置 增加 短信消息模板ID
* @param templateIdIncrement
*/
public MessageConfigQuery templateIdIncrement(Long templateIdIncrement){
this.templateIdIncrement = templateIdIncrement;
return this;
}
/**
* 设置 短信消息模板ID
* @param templateIdList
*/
public MessageConfigQuery templateIdList(List<Long> templateIdList){
this.templateIdList = templateIdList;
return this;
}
/**
* 设置 短信消息模板ID
* @param templateIdNotList
*/
public MessageConfigQuery templateIdNotList(List<Long> templateIdNotList){
this.templateIdNotList = templateIdNotList;
return this;
}
/**
* 设置 应用平台标识
* @param appName
*/
public MessageConfigQuery appName(String appName){
setAppName(appName);
return this;
}
/**
* 设置 应用平台标识
* @param appNameList
*/
public MessageConfigQuery appNameList(List<String> appNameList){
this.appNameList = appNameList;
return this;
}
/**
* 设置 消息类型(等待超时预警,办理超时预警,差评预警)
* @param messageType
*/
public MessageConfigQuery messageType(String messageType){
setMessageType(messageType);
return this;
}
/**
* 设置 消息类型(等待超时预警,办理超时预警,差评预警)
* @param messageTypeList
*/
public MessageConfigQuery messageTypeList(List<String> messageTypeList){
this.messageTypeList = messageTypeList;
return this;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @param recipient
*/
public MessageConfigQuery recipient(String recipient){
setRecipient(recipient);
return this;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型SMS 为手机号,EMAIL 为邮箱,PUSH 为用户 ID
* @param recipientList
*/
public MessageConfigQuery recipientList(List<String> recipientList){
this.recipientList = recipientList;
return this;
}
/**
* 设置 消息发送对象
* @param msgRecipients
*/
public MessageConfigQuery msgRecipients(String msgRecipients){
setMsgRecipients(msgRecipients);
return this;
}
/**
* 设置 消息发送对象
* @param msgRecipientsList
*/
public MessageConfigQuery msgRecipientsList(List<String> msgRecipientsList){
this.msgRecipientsList = msgRecipientsList;
return this;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channel
*/
public MessageConfigQuery channel(String channel){
setChannel(channel);
return this;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelList
*/
public MessageConfigQuery channelList(List<String> channelList){
this.channelList = channelList;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabled
*/
public MessageConfigQuery enabled(Integer enabled){
setEnabled(enabled);
return this;
}
/**
* 设置 开始 是否启用该发送服务(0.否,1.是)
* @param enabledStart
*/
public MessageConfigQuery enabledStart(Integer enabledStart){
this.enabledStart = enabledStart;
return this;
}
/**
* 设置 结束 是否启用该发送服务(0.否,1.是)
* @param enabledEnd
*/
public MessageConfigQuery enabledEnd(Integer enabledEnd){
this.enabledEnd = enabledEnd;
return this;
}
/**
* 设置 增加 是否启用该发送服务(0.否,1.是)
* @param enabledIncrement
*/
public MessageConfigQuery enabledIncrement(Integer enabledIncrement){
this.enabledIncrement = enabledIncrement;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledList
*/
public MessageConfigQuery enabledList(List<Integer> enabledList){
this.enabledList = enabledList;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledNotList
*/
public MessageConfigQuery enabledNotList(List<Integer> enabledNotList){
this.enabledNotList = enabledNotList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public MessageConfigQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public MessageConfigQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public MessageConfigQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public MessageConfigQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public MessageConfigQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public MessageConfigQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public MessageConfigQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public MessageConfigQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public MessageConfigQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public MessageConfigQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public MessageConfigQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public MessageConfigQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public MessageConfigQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public MessageConfigQuery updateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<MessageConfigQuery> getOrConditionList(){
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<MessageConfigQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<MessageConfigQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<MessageConfigQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.model;
import java.util.List;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.message.model.vo.MessageTaskVo;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import lombok.Data;
/**
* 消息任务实体对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class MessageTaskEntity extends MessageTaskVo {
private static final long serialVersionUID = 1L;
/**
* 消息发送配置ID
*/
private Long msgConfId;
/**
* 站点ID
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
/**
* 站点编码
*/
private String siteCode;
/**
* 应用平台标识
*/
private String appName;
/**
* 消息类型
*/
private String messageType;
/**
* 消息发送对象
*/
private String msgRecipients;
/**
* 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
*/
private String channel;
/**
* 是否启用该发送服务(0.否,1.是)
*/
private Integer enabled;
/**
* 提醒时间
*/
private Date alarmTime;
/**
* 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
*/
private String recipient;
/**
* 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
*/
private String parameters;
/**
* 详细内容
*/
private String content;
/**
* 优先级 (0.普通,1.优先,2.紧急)
*/
private Integer priority;
/**
* 状态 (0.待发送,1.发送中,2.成功,3.失败)
*/
private Integer sendStatus;
/**
* 发送时间
*/
private Date sendTime;
/**
* 返回的响应结果,记录发送的详细反馈信息
*/
private String response;
/**
* 错误代码,标识具体的失败原因。
*/
private String errorCode;
/**
* 错误描述信息,对 error_code 进行补充说明
*/
private String errorMsg;
/**
* 任务重试次数,默认值为 0,用于防止无限重试。
*/
private Integer retryCount;
/**
* 消息发送配置信息
*/
private MessageConfigEntity messageConfigEntity=new MessageConfigEntity();
public MessageConfigEntity getMessageConfigEntity(){
return messageConfigEntity;
}
public void setMessageConfigEntity(MessageConfigEntity messageConfigEntity){
this.messageConfigEntity = messageConfigEntity;
}
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof MessageTaskEntity) {
MessageTaskEntity tmp = (MessageTaskEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.msgConfId = null;
this.siteId = null;
this.siteName = "";
this.siteCode = "";
this.appName = "";
this.messageType = "";
this.msgRecipients = "";
this.channel = "SMS";
this.enabled = 0;
this.alarmTime = null;
this.recipient = "";
this.parameters = "";
this.content = "";
this.priority = 0;
this.sendStatus = 0;
this.sendTime = null;
this.response = "";
this.errorCode = "";
this.errorMsg = "";
this.retryCount = 0;
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.model;
import java.util.List;
import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
/**
* 消息任务查询对象
*
* @author zxfei
* @date 2025-04-10
*/
public class MessageTaskQuery extends MessageTaskEntity {
/** 开始 id */
private Long idStart;
/** 结束 id */
private Long idEnd;
/** 增加 id */
private Long idIncrement;
/** id列表 */
private List <Long> idList;
/** id排除列表 */
private List <Long> idNotList;
/** 开始 消息发送配置ID */
private Long msgConfIdStart;
/** 结束 消息发送配置ID */
private Long msgConfIdEnd;
/** 增加 消息发送配置ID */
private Long msgConfIdIncrement;
/** 消息发送配置ID列表 */
private List <Long> msgConfIdList;
/** 消息发送配置ID排除列表 */
private List <Long> msgConfIdNotList;
/** 开始 站点ID */
private Long siteIdStart;
/** 结束 站点ID */
private Long siteIdEnd;
/** 增加 站点ID */
private Long siteIdIncrement;
/** 站点ID列表 */
private List <Long> siteIdList;
/** 站点ID排除列表 */
private List <Long> siteIdNotList;
/** 站点名称 */
private List<String> siteNameList;
/** 站点名称排除列表 */
private List <String> siteNameNotList;
/** 站点编码 */
private List<String> siteCodeList;
/** 站点编码排除列表 */
private List <String> siteCodeNotList;
/** 应用平台标识 */
private List<String> appNameList;
/** 应用平台标识排除列表 */
private List <String> appNameNotList;
/** 消息类型 */
private List<String> messageTypeList;
/** 消息类型排除列表 */
private List <String> messageTypeNotList;
/** 消息发送对象 */
private List<String> msgRecipientsList;
/** 消息发送对象排除列表 */
private List <String> msgRecipientsNotList;
/** 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知) */
private List<String> channelList;
/** 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)排除列表 */
private List <String> channelNotList;
/** 开始 是否启用该发送服务(0.否,1.是) */
private Integer enabledStart;
/** 结束 是否启用该发送服务(0.否,1.是) */
private Integer enabledEnd;
/** 增加 是否启用该发送服务(0.否,1.是) */
private Integer enabledIncrement;
/** 是否启用该发送服务(0.否,1.是)列表 */
private List <Integer> enabledList;
/** 是否启用该发送服务(0.否,1.是)排除列表 */
private List <Integer> enabledNotList;
/** 开始 提醒时间 */
private String alarmTimeStart;
/** 结束 提醒时间 */
private String alarmTimeEnd;
/** 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID */
private List<String> recipientList;
/** 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID排除列表 */
private List <String> recipientNotList;
/** 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“} */
private List<String> parametersList;
/** 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}排除列表 */
private List <String> parametersNotList;
/** 详细内容 */
private List<String> contentList;
/** 详细内容排除列表 */
private List <String> contentNotList;
/** 开始 优先级 (0.普通,1.优先,2.紧急) */
private Integer priorityStart;
/** 结束 优先级 (0.普通,1.优先,2.紧急) */
private Integer priorityEnd;
/** 增加 优先级 (0.普通,1.优先,2.紧急) */
private Integer priorityIncrement;
/** 优先级 (0.普通,1.优先,2.紧急)列表 */
private List <Integer> priorityList;
/** 优先级 (0.普通,1.优先,2.紧急)排除列表 */
private List <Integer> priorityNotList;
/** 开始 状态 (0.待发送,1.发送中,2.成功,3.失败) */
private Integer sendStatusStart;
/** 结束 状态 (0.待发送,1.发送中,2.成功,3.失败) */
private Integer sendStatusEnd;
/** 增加 状态 (0.待发送,1.发送中,2.成功,3.失败) */
private Integer sendStatusIncrement;
/** 状态 (0.待发送,1.发送中,2.成功,3.失败)列表 */
private List <Integer> sendStatusList;
/** 状态 (0.待发送,1.发送中,2.成功,3.失败)排除列表 */
private List <Integer> sendStatusNotList;
/** 开始 发送时间 */
private String sendTimeStart;
/** 结束 发送时间 */
private String sendTimeEnd;
/** 返回的响应结果,记录发送的详细反馈信息 */
private List<String> responseList;
/** 返回的响应结果,记录发送的详细反馈信息排除列表 */
private List <String> responseNotList;
/** 错误代码,标识具体的失败原因。 */
private List<String> errorCodeList;
/** 错误代码,标识具体的失败原因。排除列表 */
private List <String> errorCodeNotList;
/** 错误描述信息,对 error_code 进行补充说明 */
private List<String> errorMsgList;
/** 错误描述信息,对 error_code 进行补充说明排除列表 */
private List <String> errorMsgNotList;
/** 开始 任务重试次数,默认值为 0,用于防止无限重试。 */
private Integer retryCountStart;
/** 结束 任务重试次数,默认值为 0,用于防止无限重试。 */
private Integer retryCountEnd;
/** 增加 任务重试次数,默认值为 0,用于防止无限重试。 */
private Integer retryCountIncrement;
/** 任务重试次数,默认值为 0,用于防止无限重试。列表 */
private List <Integer> retryCountList;
/** 任务重试次数,默认值为 0,用于防止无限重试。排除列表 */
private List <Integer> retryCountNotList;
/** 开始 创建用户 */
private Long createUserIdStart;
/** 结束 创建用户 */
private Long createUserIdEnd;
/** 增加 创建用户 */
private Long createUserIdIncrement;
/** 创建用户列表 */
private List <Long> createUserIdList;
/** 创建用户排除列表 */
private List <Long> createUserIdNotList;
/** 开始 创建时间 */
private String createTimeStart;
/** 结束 创建时间 */
private String createTimeEnd;
/** 开始 更新时间 */
private String updateTimeStart;
/** 结束 更新时间 */
private String updateTimeEnd;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<MessageTaskQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<MessageTaskQuery> andConditionList;
public MessageTaskQuery(){}
/**
* 获取 开始 id
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 id
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 id
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 id
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 id
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 id
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 id
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 id
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 id
* @return idNotList
*/
public List<Long> getIdNotList(){
return this.idNotList;
}
/**
* 设置 id
* @param idNotList
*/
public void setIdNotList(List<Long> idNotList){
this.idNotList = idNotList;
}
/**
* 获取 开始 消息发送配置ID
* @return msgConfIdStart
*/
public Long getMsgConfIdStart(){
return this.msgConfIdStart;
}
/**
* 设置 开始 消息发送配置ID
* @param msgConfIdStart
*/
public void setMsgConfIdStart(Long msgConfIdStart){
this.msgConfIdStart = msgConfIdStart;
}
/**
* 获取 结束 消息发送配置ID
* @return $msgConfIdEnd
*/
public Long getMsgConfIdEnd(){
return this.msgConfIdEnd;
}
/**
* 设置 结束 消息发送配置ID
* @param msgConfIdEnd
*/
public void setMsgConfIdEnd(Long msgConfIdEnd){
this.msgConfIdEnd = msgConfIdEnd;
}
/**
* 获取 增加 消息发送配置ID
* @return msgConfIdIncrement
*/
public Long getMsgConfIdIncrement(){
return this.msgConfIdIncrement;
}
/**
* 设置 增加 消息发送配置ID
* @param msgConfIdIncrement
*/
public void setMsgConfIdIncrement(Long msgConfIdIncrement){
this.msgConfIdIncrement = msgConfIdIncrement;
}
/**
* 获取 消息发送配置ID
* @return msgConfIdList
*/
public List<Long> getMsgConfIdList(){
return this.msgConfIdList;
}
/**
* 设置 消息发送配置ID
* @param msgConfIdList
*/
public void setMsgConfIdList(List<Long> msgConfIdList){
this.msgConfIdList = msgConfIdList;
}
/**
* 获取 消息发送配置ID
* @return msgConfIdNotList
*/
public List<Long> getMsgConfIdNotList(){
return this.msgConfIdNotList;
}
/**
* 设置 消息发送配置ID
* @param msgConfIdNotList
*/
public void setMsgConfIdNotList(List<Long> msgConfIdNotList){
this.msgConfIdNotList = msgConfIdNotList;
}
/**
* 获取 开始 站点ID
* @return siteIdStart
*/
public Long getSiteIdStart(){
return this.siteIdStart;
}
/**
* 设置 开始 站点ID
* @param siteIdStart
*/
public void setSiteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
}
/**
* 获取 结束 站点ID
* @return $siteIdEnd
*/
public Long getSiteIdEnd(){
return this.siteIdEnd;
}
/**
* 设置 结束 站点ID
* @param siteIdEnd
*/
public void setSiteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
}
/**
* 获取 增加 站点ID
* @return siteIdIncrement
*/
public Long getSiteIdIncrement(){
return this.siteIdIncrement;
}
/**
* 设置 增加 站点ID
* @param siteIdIncrement
*/
public void setSiteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
}
/**
* 获取 站点ID
* @return siteIdList
*/
public List<Long> getSiteIdList(){
return this.siteIdList;
}
/**
* 设置 站点ID
* @param siteIdList
*/
public void setSiteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
}
/**
* 获取 站点ID
* @return siteIdNotList
*/
public List<Long> getSiteIdNotList(){
return this.siteIdNotList;
}
/**
* 设置 站点ID
* @param siteIdNotList
*/
public void setSiteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
}
/**
* 获取 站点名称
* @return siteNameList
*/
public List<String> getSiteNameList(){
return this.siteNameList;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public void setSiteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
}
/**
* 获取 站点名称
* @return siteNameNotList
*/
public List<String> getSiteNameNotList(){
return this.siteNameNotList;
}
/**
* 设置 站点名称
* @param siteNameNotList
*/
public void setSiteNameNotList(List<String> siteNameNotList){
this.siteNameNotList = siteNameNotList;
}
/**
* 获取 站点编码
* @return siteCodeList
*/
public List<String> getSiteCodeList(){
return this.siteCodeList;
}
/**
* 设置 站点编码
* @param siteCodeList
*/
public void setSiteCodeList(List<String> siteCodeList){
this.siteCodeList = siteCodeList;
}
/**
* 获取 站点编码
* @return siteCodeNotList
*/
public List<String> getSiteCodeNotList(){
return this.siteCodeNotList;
}
/**
* 设置 站点编码
* @param siteCodeNotList
*/
public void setSiteCodeNotList(List<String> siteCodeNotList){
this.siteCodeNotList = siteCodeNotList;
}
/**
* 获取 应用平台标识
* @return appNameList
*/
public List<String> getAppNameList(){
return this.appNameList;
}
/**
* 设置 应用平台标识
* @param appNameList
*/
public void setAppNameList(List<String> appNameList){
this.appNameList = appNameList;
}
/**
* 获取 应用平台标识
* @return appNameNotList
*/
public List<String> getAppNameNotList(){
return this.appNameNotList;
}
/**
* 设置 应用平台标识
* @param appNameNotList
*/
public void setAppNameNotList(List<String> appNameNotList){
this.appNameNotList = appNameNotList;
}
/**
* 获取 消息类型
* @return messageTypeList
*/
public List<String> getMessageTypeList(){
return this.messageTypeList;
}
/**
* 设置 消息类型
* @param messageTypeList
*/
public void setMessageTypeList(List<String> messageTypeList){
this.messageTypeList = messageTypeList;
}
/**
* 获取 消息类型
* @return messageTypeNotList
*/
public List<String> getMessageTypeNotList(){
return this.messageTypeNotList;
}
/**
* 设置 消息类型
* @param messageTypeNotList
*/
public void setMessageTypeNotList(List<String> messageTypeNotList){
this.messageTypeNotList = messageTypeNotList;
}
/**
* 获取 消息发送对象
* @return msgRecipientsList
*/
public List<String> getMsgRecipientsList(){
return this.msgRecipientsList;
}
/**
* 设置 消息发送对象
* @param msgRecipientsList
*/
public void setMsgRecipientsList(List<String> msgRecipientsList){
this.msgRecipientsList = msgRecipientsList;
}
/**
* 获取 消息发送对象
* @return msgRecipientsNotList
*/
public List<String> getMsgRecipientsNotList(){
return this.msgRecipientsNotList;
}
/**
* 设置 消息发送对象
* @param msgRecipientsNotList
*/
public void setMsgRecipientsNotList(List<String> msgRecipientsNotList){
this.msgRecipientsNotList = msgRecipientsNotList;
}
/**
* 获取 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @return channelList
*/
public List<String> getChannelList(){
return this.channelList;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelList
*/
public void setChannelList(List<String> channelList){
this.channelList = channelList;
}
/**
* 获取 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @return channelNotList
*/
public List<String> getChannelNotList(){
return this.channelNotList;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelNotList
*/
public void setChannelNotList(List<String> channelNotList){
this.channelNotList = channelNotList;
}
/**
* 获取 开始 是否启用该发送服务(0.否,1.是)
* @return enabledStart
*/
public Integer getEnabledStart(){
return this.enabledStart;
}
/**
* 设置 开始 是否启用该发送服务(0.否,1.是)
* @param enabledStart
*/
public void setEnabledStart(Integer enabledStart){
this.enabledStart = enabledStart;
}
/**
* 获取 结束 是否启用该发送服务(0.否,1.是)
* @return $enabledEnd
*/
public Integer getEnabledEnd(){
return this.enabledEnd;
}
/**
* 设置 结束 是否启用该发送服务(0.否,1.是)
* @param enabledEnd
*/
public void setEnabledEnd(Integer enabledEnd){
this.enabledEnd = enabledEnd;
}
/**
* 获取 增加 是否启用该发送服务(0.否,1.是)
* @return enabledIncrement
*/
public Integer getEnabledIncrement(){
return this.enabledIncrement;
}
/**
* 设置 增加 是否启用该发送服务(0.否,1.是)
* @param enabledIncrement
*/
public void setEnabledIncrement(Integer enabledIncrement){
this.enabledIncrement = enabledIncrement;
}
/**
* 获取 是否启用该发送服务(0.否,1.是)
* @return enabledList
*/
public List<Integer> getEnabledList(){
return this.enabledList;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledList
*/
public void setEnabledList(List<Integer> enabledList){
this.enabledList = enabledList;
}
/**
* 获取 是否启用该发送服务(0.否,1.是)
* @return enabledNotList
*/
public List<Integer> getEnabledNotList(){
return this.enabledNotList;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledNotList
*/
public void setEnabledNotList(List<Integer> enabledNotList){
this.enabledNotList = enabledNotList;
}
/**
* 获取 开始 提醒时间
* @return alarmTimeStart
*/
public String getAlarmTimeStart(){
return this.alarmTimeStart;
}
/**
* 设置 开始 提醒时间
* @param alarmTimeStart
*/
public void setAlarmTimeStart(String alarmTimeStart){
this.alarmTimeStart = alarmTimeStart;
}
/**
* 获取 结束 提醒时间
* @return alarmTimeEnd
*/
public String getAlarmTimeEnd(){
return this.alarmTimeEnd;
}
/**
* 设置 结束 提醒时间
* @param alarmTimeEnd
*/
public void setAlarmTimeEnd(String alarmTimeEnd){
this.alarmTimeEnd = alarmTimeEnd;
}
/**
* 获取 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @return recipientList
*/
public List<String> getRecipientList(){
return this.recipientList;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @param recipientList
*/
public void setRecipientList(List<String> recipientList){
this.recipientList = recipientList;
}
/**
* 获取 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @return recipientNotList
*/
public List<String> getRecipientNotList(){
return this.recipientNotList;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @param recipientNotList
*/
public void setRecipientNotList(List<String> recipientNotList){
this.recipientNotList = recipientNotList;
}
/**
* 获取 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @return parametersList
*/
public List<String> getParametersList(){
return this.parametersList;
}
/**
* 设置 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @param parametersList
*/
public void setParametersList(List<String> parametersList){
this.parametersList = parametersList;
}
/**
* 获取 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @return parametersNotList
*/
public List<String> getParametersNotList(){
return this.parametersNotList;
}
/**
* 设置 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @param parametersNotList
*/
public void setParametersNotList(List<String> parametersNotList){
this.parametersNotList = parametersNotList;
}
/**
* 获取 详细内容
* @return contentList
*/
public List<String> getContentList(){
return this.contentList;
}
/**
* 设置 详细内容
* @param contentList
*/
public void setContentList(List<String> contentList){
this.contentList = contentList;
}
/**
* 获取 详细内容
* @return contentNotList
*/
public List<String> getContentNotList(){
return this.contentNotList;
}
/**
* 设置 详细内容
* @param contentNotList
*/
public void setContentNotList(List<String> contentNotList){
this.contentNotList = contentNotList;
}
/**
* 获取 开始 优先级 (0.普通,1.优先,2.紧急)
* @return priorityStart
*/
public Integer getPriorityStart(){
return this.priorityStart;
}
/**
* 设置 开始 优先级 (0.普通,1.优先,2.紧急)
* @param priorityStart
*/
public void setPriorityStart(Integer priorityStart){
this.priorityStart = priorityStart;
}
/**
* 获取 结束 优先级 (0.普通,1.优先,2.紧急)
* @return $priorityEnd
*/
public Integer getPriorityEnd(){
return this.priorityEnd;
}
/**
* 设置 结束 优先级 (0.普通,1.优先,2.紧急)
* @param priorityEnd
*/
public void setPriorityEnd(Integer priorityEnd){
this.priorityEnd = priorityEnd;
}
/**
* 获取 增加 优先级 (0.普通,1.优先,2.紧急)
* @return priorityIncrement
*/
public Integer getPriorityIncrement(){
return this.priorityIncrement;
}
/**
* 设置 增加 优先级 (0.普通,1.优先,2.紧急)
* @param priorityIncrement
*/
public void setPriorityIncrement(Integer priorityIncrement){
this.priorityIncrement = priorityIncrement;
}
/**
* 获取 优先级 (0.普通,1.优先,2.紧急)
* @return priorityList
*/
public List<Integer> getPriorityList(){
return this.priorityList;
}
/**
* 设置 优先级 (0.普通,1.优先,2.紧急)
* @param priorityList
*/
public void setPriorityList(List<Integer> priorityList){
this.priorityList = priorityList;
}
/**
* 获取 优先级 (0.普通,1.优先,2.紧急)
* @return priorityNotList
*/
public List<Integer> getPriorityNotList(){
return this.priorityNotList;
}
/**
* 设置 优先级 (0.普通,1.优先,2.紧急)
* @param priorityNotList
*/
public void setPriorityNotList(List<Integer> priorityNotList){
this.priorityNotList = priorityNotList;
}
/**
* 获取 开始 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @return sendStatusStart
*/
public Integer getSendStatusStart(){
return this.sendStatusStart;
}
/**
* 设置 开始 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusStart
*/
public void setSendStatusStart(Integer sendStatusStart){
this.sendStatusStart = sendStatusStart;
}
/**
* 获取 结束 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @return $sendStatusEnd
*/
public Integer getSendStatusEnd(){
return this.sendStatusEnd;
}
/**
* 设置 结束 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusEnd
*/
public void setSendStatusEnd(Integer sendStatusEnd){
this.sendStatusEnd = sendStatusEnd;
}
/**
* 获取 增加 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @return sendStatusIncrement
*/
public Integer getSendStatusIncrement(){
return this.sendStatusIncrement;
}
/**
* 设置 增加 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusIncrement
*/
public void setSendStatusIncrement(Integer sendStatusIncrement){
this.sendStatusIncrement = sendStatusIncrement;
}
/**
* 获取 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @return sendStatusList
*/
public List<Integer> getSendStatusList(){
return this.sendStatusList;
}
/**
* 设置 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusList
*/
public void setSendStatusList(List<Integer> sendStatusList){
this.sendStatusList = sendStatusList;
}
/**
* 获取 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @return sendStatusNotList
*/
public List<Integer> getSendStatusNotList(){
return this.sendStatusNotList;
}
/**
* 设置 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusNotList
*/
public void setSendStatusNotList(List<Integer> sendStatusNotList){
this.sendStatusNotList = sendStatusNotList;
}
/**
* 获取 开始 发送时间
* @return sendTimeStart
*/
public String getSendTimeStart(){
return this.sendTimeStart;
}
/**
* 设置 开始 发送时间
* @param sendTimeStart
*/
public void setSendTimeStart(String sendTimeStart){
this.sendTimeStart = sendTimeStart;
}
/**
* 获取 结束 发送时间
* @return sendTimeEnd
*/
public String getSendTimeEnd(){
return this.sendTimeEnd;
}
/**
* 设置 结束 发送时间
* @param sendTimeEnd
*/
public void setSendTimeEnd(String sendTimeEnd){
this.sendTimeEnd = sendTimeEnd;
}
/**
* 获取 返回的响应结果,记录发送的详细反馈信息
* @return responseList
*/
public List<String> getResponseList(){
return this.responseList;
}
/**
* 设置 返回的响应结果,记录发送的详细反馈信息
* @param responseList
*/
public void setResponseList(List<String> responseList){
this.responseList = responseList;
}
/**
* 获取 返回的响应结果,记录发送的详细反馈信息
* @return responseNotList
*/
public List<String> getResponseNotList(){
return this.responseNotList;
}
/**
* 设置 返回的响应结果,记录发送的详细反馈信息
* @param responseNotList
*/
public void setResponseNotList(List<String> responseNotList){
this.responseNotList = responseNotList;
}
/**
* 获取 错误代码,标识具体的失败原因。
* @return errorCodeList
*/
public List<String> getErrorCodeList(){
return this.errorCodeList;
}
/**
* 设置 错误代码,标识具体的失败原因。
* @param errorCodeList
*/
public void setErrorCodeList(List<String> errorCodeList){
this.errorCodeList = errorCodeList;
}
/**
* 获取 错误代码,标识具体的失败原因。
* @return errorCodeNotList
*/
public List<String> getErrorCodeNotList(){
return this.errorCodeNotList;
}
/**
* 设置 错误代码,标识具体的失败原因。
* @param errorCodeNotList
*/
public void setErrorCodeNotList(List<String> errorCodeNotList){
this.errorCodeNotList = errorCodeNotList;
}
/**
* 获取 错误描述信息,对 error_code 进行补充说明
* @return errorMsgList
*/
public List<String> getErrorMsgList(){
return this.errorMsgList;
}
/**
* 设置 错误描述信息,对 error_code 进行补充说明
* @param errorMsgList
*/
public void setErrorMsgList(List<String> errorMsgList){
this.errorMsgList = errorMsgList;
}
/**
* 获取 错误描述信息,对 error_code 进行补充说明
* @return errorMsgNotList
*/
public List<String> getErrorMsgNotList(){
return this.errorMsgNotList;
}
/**
* 设置 错误描述信息,对 error_code 进行补充说明
* @param errorMsgNotList
*/
public void setErrorMsgNotList(List<String> errorMsgNotList){
this.errorMsgNotList = errorMsgNotList;
}
/**
* 获取 开始 任务重试次数,默认值为 0,用于防止无限重试。
* @return retryCountStart
*/
public Integer getRetryCountStart(){
return this.retryCountStart;
}
/**
* 设置 开始 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountStart
*/
public void setRetryCountStart(Integer retryCountStart){
this.retryCountStart = retryCountStart;
}
/**
* 获取 结束 任务重试次数,默认值为 0,用于防止无限重试。
* @return $retryCountEnd
*/
public Integer getRetryCountEnd(){
return this.retryCountEnd;
}
/**
* 设置 结束 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountEnd
*/
public void setRetryCountEnd(Integer retryCountEnd){
this.retryCountEnd = retryCountEnd;
}
/**
* 获取 增加 任务重试次数,默认值为 0,用于防止无限重试。
* @return retryCountIncrement
*/
public Integer getRetryCountIncrement(){
return this.retryCountIncrement;
}
/**
* 设置 增加 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountIncrement
*/
public void setRetryCountIncrement(Integer retryCountIncrement){
this.retryCountIncrement = retryCountIncrement;
}
/**
* 获取 任务重试次数,默认值为 0,用于防止无限重试。
* @return retryCountList
*/
public List<Integer> getRetryCountList(){
return this.retryCountList;
}
/**
* 设置 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountList
*/
public void setRetryCountList(List<Integer> retryCountList){
this.retryCountList = retryCountList;
}
/**
* 获取 任务重试次数,默认值为 0,用于防止无限重试。
* @return retryCountNotList
*/
public List<Integer> getRetryCountNotList(){
return this.retryCountNotList;
}
/**
* 设置 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountNotList
*/
public void setRetryCountNotList(List<Integer> retryCountNotList){
this.retryCountNotList = retryCountNotList;
}
/**
* 获取 开始 创建用户
* @return createUserIdStart
*/
public Long getCreateUserIdStart(){
return this.createUserIdStart;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public void setCreateUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
}
/**
* 获取 结束 创建用户
* @return $createUserIdEnd
*/
public Long getCreateUserIdEnd(){
return this.createUserIdEnd;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public void setCreateUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
}
/**
* 获取 增加 创建用户
* @return createUserIdIncrement
*/
public Long getCreateUserIdIncrement(){
return this.createUserIdIncrement;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public void setCreateUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
}
/**
* 获取 创建用户
* @return createUserIdList
*/
public List<Long> getCreateUserIdList(){
return this.createUserIdList;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public void setCreateUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
}
/**
* 获取 创建用户
* @return createUserIdNotList
*/
public List<Long> getCreateUserIdNotList(){
return this.createUserIdNotList;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public void setCreateUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 更新时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 更新时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 更新时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 更新时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 设置 id
* @param id
*/
public MessageTaskQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 id
* @param idStart
*/
public MessageTaskQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 id
* @param idEnd
*/
public MessageTaskQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 id
* @param idIncrement
*/
public MessageTaskQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 id
* @param idList
*/
public MessageTaskQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 id
* @param idNotList
*/
public MessageTaskQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 消息发送配置ID
* @param msgConfId
*/
public MessageTaskQuery msgConfId(Long msgConfId){
setMsgConfId(msgConfId);
return this;
}
/**
* 设置 开始 消息发送配置ID
* @param msgConfIdStart
*/
public MessageTaskQuery msgConfIdStart(Long msgConfIdStart){
this.msgConfIdStart = msgConfIdStart;
return this;
}
/**
* 设置 结束 消息发送配置ID
* @param msgConfIdEnd
*/
public MessageTaskQuery msgConfIdEnd(Long msgConfIdEnd){
this.msgConfIdEnd = msgConfIdEnd;
return this;
}
/**
* 设置 增加 消息发送配置ID
* @param msgConfIdIncrement
*/
public MessageTaskQuery msgConfIdIncrement(Long msgConfIdIncrement){
this.msgConfIdIncrement = msgConfIdIncrement;
return this;
}
/**
* 设置 消息发送配置ID
* @param msgConfIdList
*/
public MessageTaskQuery msgConfIdList(List<Long> msgConfIdList){
this.msgConfIdList = msgConfIdList;
return this;
}
/**
* 设置 消息发送配置ID
* @param msgConfIdNotList
*/
public MessageTaskQuery msgConfIdNotList(List<Long> msgConfIdNotList){
this.msgConfIdNotList = msgConfIdNotList;
return this;
}
/**
* 设置 站点ID
* @param siteId
*/
public MessageTaskQuery siteId(Long siteId){
setSiteId(siteId);
return this;
}
/**
* 设置 开始 站点ID
* @param siteIdStart
*/
public MessageTaskQuery siteIdStart(Long siteIdStart){
this.siteIdStart = siteIdStart;
return this;
}
/**
* 设置 结束 站点ID
* @param siteIdEnd
*/
public MessageTaskQuery siteIdEnd(Long siteIdEnd){
this.siteIdEnd = siteIdEnd;
return this;
}
/**
* 设置 增加 站点ID
* @param siteIdIncrement
*/
public MessageTaskQuery siteIdIncrement(Long siteIdIncrement){
this.siteIdIncrement = siteIdIncrement;
return this;
}
/**
* 设置 站点ID
* @param siteIdList
*/
public MessageTaskQuery siteIdList(List<Long> siteIdList){
this.siteIdList = siteIdList;
return this;
}
/**
* 设置 站点ID
* @param siteIdNotList
*/
public MessageTaskQuery siteIdNotList(List<Long> siteIdNotList){
this.siteIdNotList = siteIdNotList;
return this;
}
/**
* 设置 站点名称
* @param siteName
*/
public MessageTaskQuery siteName(String siteName){
setSiteName(siteName);
return this;
}
/**
* 设置 站点名称
* @param siteNameList
*/
public MessageTaskQuery siteNameList(List<String> siteNameList){
this.siteNameList = siteNameList;
return this;
}
/**
* 设置 站点编码
* @param siteCode
*/
public MessageTaskQuery siteCode(String siteCode){
setSiteCode(siteCode);
return this;
}
/**
* 设置 站点编码
* @param siteCodeList
*/
public MessageTaskQuery siteCodeList(List<String> siteCodeList){
this.siteCodeList = siteCodeList;
return this;
}
/**
* 设置 应用平台标识
* @param appName
*/
public MessageTaskQuery appName(String appName){
setAppName(appName);
return this;
}
/**
* 设置 应用平台标识
* @param appNameList
*/
public MessageTaskQuery appNameList(List<String> appNameList){
this.appNameList = appNameList;
return this;
}
/**
* 设置 消息类型
* @param messageType
*/
public MessageTaskQuery messageType(String messageType){
setMessageType(messageType);
return this;
}
/**
* 设置 消息类型
* @param messageTypeList
*/
public MessageTaskQuery messageTypeList(List<String> messageTypeList){
this.messageTypeList = messageTypeList;
return this;
}
/**
* 设置 消息发送对象
* @param msgRecipients
*/
public MessageTaskQuery msgRecipients(String msgRecipients){
setMsgRecipients(msgRecipients);
return this;
}
/**
* 设置 消息发送对象
* @param msgRecipientsList
*/
public MessageTaskQuery msgRecipientsList(List<String> msgRecipientsList){
this.msgRecipientsList = msgRecipientsList;
return this;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channel
*/
public MessageTaskQuery channel(String channel){
setChannel(channel);
return this;
}
/**
* 设置 消息发送渠道,SMS(短信)、EMAIL(邮件)、PUSH(推送通知)
* @param channelList
*/
public MessageTaskQuery channelList(List<String> channelList){
this.channelList = channelList;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabled
*/
public MessageTaskQuery enabled(Integer enabled){
setEnabled(enabled);
return this;
}
/**
* 设置 开始 是否启用该发送服务(0.否,1.是)
* @param enabledStart
*/
public MessageTaskQuery enabledStart(Integer enabledStart){
this.enabledStart = enabledStart;
return this;
}
/**
* 设置 结束 是否启用该发送服务(0.否,1.是)
* @param enabledEnd
*/
public MessageTaskQuery enabledEnd(Integer enabledEnd){
this.enabledEnd = enabledEnd;
return this;
}
/**
* 设置 增加 是否启用该发送服务(0.否,1.是)
* @param enabledIncrement
*/
public MessageTaskQuery enabledIncrement(Integer enabledIncrement){
this.enabledIncrement = enabledIncrement;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledList
*/
public MessageTaskQuery enabledList(List<Integer> enabledList){
this.enabledList = enabledList;
return this;
}
/**
* 设置 是否启用该发送服务(0.否,1.是)
* @param enabledNotList
*/
public MessageTaskQuery enabledNotList(List<Integer> enabledNotList){
this.enabledNotList = enabledNotList;
return this;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @param recipient
*/
public MessageTaskQuery recipient(String recipient){
setRecipient(recipient);
return this;
}
/**
* 设置 接收者信息,例如手机号、邮箱或用户 ID,具体格式依据模板类型,SMS 为手机号,EMAIL 为邮箱,PUSH 为用户ID
* @param recipientList
*/
public MessageTaskQuery recipientList(List<String> recipientList){
this.recipientList = recipientList;
return this;
}
/**
* 设置 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @param parameters
*/
public MessageTaskQuery parameters(String parameters){
setParameters(parameters);
return this;
}
/**
* 设置 动态参数,用于替换消息模板中的占位符。例如:{“name“: “张三“, “code“: “123456“}
* @param parametersList
*/
public MessageTaskQuery parametersList(List<String> parametersList){
this.parametersList = parametersList;
return this;
}
/**
* 设置 详细内容
* @param content
*/
public MessageTaskQuery content(String content){
setContent(content);
return this;
}
/**
* 设置 详细内容
* @param contentList
*/
public MessageTaskQuery contentList(List<String> contentList){
this.contentList = contentList;
return this;
}
/**
* 设置 优先级 (0.普通,1.优先,2.紧急)
* @param priority
*/
public MessageTaskQuery priority(Integer priority){
setPriority(priority);
return this;
}
/**
* 设置 开始 优先级 (0.普通,1.优先,2.紧急)
* @param priorityStart
*/
public MessageTaskQuery priorityStart(Integer priorityStart){
this.priorityStart = priorityStart;
return this;
}
/**
* 设置 结束 优先级 (0.普通,1.优先,2.紧急)
* @param priorityEnd
*/
public MessageTaskQuery priorityEnd(Integer priorityEnd){
this.priorityEnd = priorityEnd;
return this;
}
/**
* 设置 增加 优先级 (0.普通,1.优先,2.紧急)
* @param priorityIncrement
*/
public MessageTaskQuery priorityIncrement(Integer priorityIncrement){
this.priorityIncrement = priorityIncrement;
return this;
}
/**
* 设置 优先级 (0.普通,1.优先,2.紧急)
* @param priorityList
*/
public MessageTaskQuery priorityList(List<Integer> priorityList){
this.priorityList = priorityList;
return this;
}
/**
* 设置 优先级 (0.普通,1.优先,2.紧急)
* @param priorityNotList
*/
public MessageTaskQuery priorityNotList(List<Integer> priorityNotList){
this.priorityNotList = priorityNotList;
return this;
}
/**
* 设置 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatus
*/
public MessageTaskQuery sendStatus(Integer sendStatus){
setSendStatus(sendStatus);
return this;
}
/**
* 设置 开始 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusStart
*/
public MessageTaskQuery sendStatusStart(Integer sendStatusStart){
this.sendStatusStart = sendStatusStart;
return this;
}
/**
* 设置 结束 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusEnd
*/
public MessageTaskQuery sendStatusEnd(Integer sendStatusEnd){
this.sendStatusEnd = sendStatusEnd;
return this;
}
/**
* 设置 增加 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusIncrement
*/
public MessageTaskQuery sendStatusIncrement(Integer sendStatusIncrement){
this.sendStatusIncrement = sendStatusIncrement;
return this;
}
/**
* 设置 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusList
*/
public MessageTaskQuery sendStatusList(List<Integer> sendStatusList){
this.sendStatusList = sendStatusList;
return this;
}
/**
* 设置 状态 (0.待发送,1.发送中,2.成功,3.失败)
* @param sendStatusNotList
*/
public MessageTaskQuery sendStatusNotList(List<Integer> sendStatusNotList){
this.sendStatusNotList = sendStatusNotList;
return this;
}
/**
* 设置 返回的响应结果,记录发送的详细反馈信息
* @param response
*/
public MessageTaskQuery response(String response){
setResponse(response);
return this;
}
/**
* 设置 返回的响应结果,记录发送的详细反馈信息
* @param responseList
*/
public MessageTaskQuery responseList(List<String> responseList){
this.responseList = responseList;
return this;
}
/**
* 设置 错误代码,标识具体的失败原因。
* @param errorCode
*/
public MessageTaskQuery errorCode(String errorCode){
setErrorCode(errorCode);
return this;
}
/**
* 设置 错误代码,标识具体的失败原因。
* @param errorCodeList
*/
public MessageTaskQuery errorCodeList(List<String> errorCodeList){
this.errorCodeList = errorCodeList;
return this;
}
/**
* 设置 错误描述信息,对 error_code 进行补充说明
* @param errorMsg
*/
public MessageTaskQuery errorMsg(String errorMsg){
setErrorMsg(errorMsg);
return this;
}
/**
* 设置 错误描述信息,对 error_code 进行补充说明
* @param errorMsgList
*/
public MessageTaskQuery errorMsgList(List<String> errorMsgList){
this.errorMsgList = errorMsgList;
return this;
}
/**
* 设置 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCount
*/
public MessageTaskQuery retryCount(Integer retryCount){
setRetryCount(retryCount);
return this;
}
/**
* 设置 开始 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountStart
*/
public MessageTaskQuery retryCountStart(Integer retryCountStart){
this.retryCountStart = retryCountStart;
return this;
}
/**
* 设置 结束 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountEnd
*/
public MessageTaskQuery retryCountEnd(Integer retryCountEnd){
this.retryCountEnd = retryCountEnd;
return this;
}
/**
* 设置 增加 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountIncrement
*/
public MessageTaskQuery retryCountIncrement(Integer retryCountIncrement){
this.retryCountIncrement = retryCountIncrement;
return this;
}
/**
* 设置 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountList
*/
public MessageTaskQuery retryCountList(List<Integer> retryCountList){
this.retryCountList = retryCountList;
return this;
}
/**
* 设置 任务重试次数,默认值为 0,用于防止无限重试。
* @param retryCountNotList
*/
public MessageTaskQuery retryCountNotList(List<Integer> retryCountNotList){
this.retryCountNotList = retryCountNotList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public MessageTaskQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public MessageTaskQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public MessageTaskQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public MessageTaskQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public MessageTaskQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public MessageTaskQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<MessageTaskQuery> getOrConditionList(){
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<MessageTaskQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<MessageTaskQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<MessageTaskQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/**
* 消息发送配置视图对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class MessageConfigVo extends BaseEntityLong {
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
package com.mortals.xhx.module.message.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/**
* 消息任务视图对象
*
* @author zxfei
* @date 2025-04-10
*/
@Data
public class MessageTaskVo extends BaseEntityLong {
/** id列表 */
private List <Long> idList;
}
\ No newline at end of file
package com.mortals.xhx.module.message.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import com.mortals.xhx.module.message.dao.MessageConfigDao;
/**
* MessageConfigService
*
* 消息发送配置 service接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface MessageConfigService extends ICRUDService<MessageConfigEntity,Long>{
MessageConfigDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.message.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.dao.MessageTaskDao;
/**
* MessageTaskService
*
* 消息任务 service接口
*
* @author zxfei
* @date 2025-04-10
*/
public interface MessageTaskService extends ICRUDService<MessageTaskEntity,Long>{
MessageTaskDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.message.service.impl;
import com.mortals.framework.model.PageInfo;
import org.springframework.beans.BeanUtils;
import java.util.function.Function;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.message.dao.MessageConfigDao;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import com.mortals.xhx.module.message.service.MessageConfigService;
import lombok.extern.slf4j.Slf4j;
/**
* MessageConfigService
* 消息发送配置 service实现
*
* @author zxfei
* @date 2025-04-10
*/
@Service("messageConfigService")
@Slf4j
public class MessageConfigServiceImpl extends AbstractCRUDServiceImpl<MessageConfigDao, MessageConfigEntity, Long> implements MessageConfigService {
}
\ No newline at end of file
package com.mortals.xhx.module.message.service.impl;
import com.mortals.framework.model.PageInfo;
import org.springframework.beans.BeanUtils;
import java.util.Map;
import java.util.function.Function;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.message.dao.MessageTaskDao;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.service.MessageTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import com.mortals.xhx.module.message.model.MessageConfigQuery;
import com.mortals.xhx.module.message.service.MessageConfigService;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j;
/**
* MessageTaskService
* 消息任务 service实现
*
* @author zxfei
* @date 2025-04-10
*/
@Service("messageTaskService")
@Slf4j
public class MessageTaskServiceImpl extends AbstractCRUDServiceImpl<MessageTaskDao, MessageTaskEntity, Long> implements MessageTaskService {
@Autowired
private MessageConfigService messageConfigService;
@Override
protected void findAfter(MessageTaskEntity params,PageInfo pageInfo, Context context, List<MessageTaskEntity> list) throws AppException {
fillSubData(list);
super.findAfter(params,pageInfo, context, list);
}
@Override
protected void findAfter(MessageTaskEntity params, Context context, List<MessageTaskEntity> list) throws AppException {
fillSubData(list);
super.findAfter(params, context, list);
}
private void fillSubData(List<MessageTaskEntity> list) {
List<Long> idList = list.stream().map(i -> i.getMsgConfId()).collect(Collectors.toList());
if(ObjectUtils.isEmpty(idList)) return;
MessageConfigQuery messageConfigQuery = new MessageConfigQuery();
messageConfigQuery.setIdList(idList);
Map<Long, MessageConfigEntity> messageConfigMap = messageConfigService.find(messageConfigQuery).stream().collect(Collectors.toMap(MessageConfigEntity::getId, Function.identity(), (n1, n2) -> n1));
list.forEach(item -> item.setMessageConfigEntity(messageConfigMap.get(item.getId())));
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.message.model.MessageConfigEntity;
import com.mortals.xhx.module.message.service.MessageConfigService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import com.mortals.xhx.common.code.*;
/**
*
* 消息发送配置
*
* @author zxfei
* @date 2025-04-10
*/
@RestController
@RequestMapping("message/config")
public class MessageConfigController extends BaseCRUDJsonBodyMappingController<MessageConfigService,MessageConfigEntity,Long> {
@Autowired
private ParamService paramService;
public MessageConfigController(){
super.setModuleDesc( "消息发送配置");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "messageType", MessageTypeEnum.getEnumMap());
this.addDict(model, "channel", ChannelEnum.getEnumMap());
this.addDict(model, "enabled", EnabledEnum.getEnumMap());
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.message.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.service.MessageTaskService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
import com.mortals.xhx.common.code.*;
/**
*
* 消息任务
*
* @author zxfei
* @date 2025-04-10
*/
@RestController
@RequestMapping("message/task")
public class MessageTaskController extends BaseCRUDJsonBodyMappingController<MessageTaskService,MessageTaskEntity,Long> {
@Autowired
private ParamService paramService;
public MessageTaskController(){
super.setModuleDesc( "消息任务");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "channel", ChannelEnum.getEnumMap());
this.addDict(model, "enabled", EnabledEnum.getEnumMap());
this.addDict(model, "priority", PriorityEnum.getEnumMap());
this.addDict(model, "sendStatus", SendStatusEnum.getEnumMap());
this.addDict(model, "retryCount", RetryCountEnum.getEnumMap());
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.thread;
import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.util.AbstractThread;
import com.mortals.framework.util.ThreadPool;
import com.mortals.xhx.busiz.req.SmsThirdPartyReq;
import com.mortals.xhx.common.code.SendStatusEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.QueueKey;
import com.mortals.xhx.common.utils.SmsQueueManager;
import com.mortals.xhx.module.alarm.model.AlarmRecordsEntity;
import com.mortals.xhx.module.alarm.model.AlarmRecordsQuery;
import com.mortals.xhx.module.alarm.service.AlarmRecordsService;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import com.mortals.xhx.module.message.model.MessageTaskQuery;
import com.mortals.xhx.module.message.service.MessageTaskService;
import com.mortals.xhx.queue.*;
import com.mortals.xhx.utils.SpringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.connection.CorrelationData;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Value;
import java.util.Date;
import java.util.List;
/**
* 信息发送线程
*
* @author: zxfei
* @date: 2025/4/3 17:00
*/
@Slf4j
public class AlarmSendMsgThread extends AbstractThread {
private MessageTaskService messageTaskService;
private RabbitTemplate rabbitTemplate;
@Value("${sms.smsSendUrl:http://127.0.0.1:8089/api/index/index}")
private String smsSendUrl;
@Value("${sms.apiId:''}")
private String apiId;
public AlarmSendMsgThread() {
messageTaskService =SpringUtils.getBean(MessageTaskService.class);
rabbitTemplate = SpringUtils.getBean(RabbitTemplate.class);
}
@Override
protected int getSleepTime() {
return 60*1000;
}
@Override
protected void process() {
log.info("AlarmSendMsgThread process");
MessageTaskQuery messageTaskQuery = new MessageTaskQuery();
messageTaskQuery.setEnabled(YesNoEnum.YES.getValue());
messageTaskQuery.setSendStatus(SendStatusEnum.待发送.getValue());
List<MessageTaskEntity> messageTaskEntities = messageTaskService.find(messageTaskQuery);
//todo 后续添加多渠道发送 目前默认只发送短信通道
for (MessageTaskEntity messageTask : messageTaskEntities) {
SmsThirdPartyReq smsThirdPartyReq = new SmsThirdPartyReq();
smsThirdPartyReq.setAppid(apiId);
//模板号
smsThirdPartyReq.setType(messageTask.getMessageConfigEntity().getTemplateId()+"");
smsThirdPartyReq.setAlarmSmsSendId(messageTask.getId());
smsThirdPartyReq.setPhone(messageTask.getRecipient());
String[] json = new String[1];
json[0] = messageTask.getContent();
smsThirdPartyReq.setJson(JSONObject.toJSON(json).toString());
SendSmsTask sendSmsTask = new SendSmsTask(smsThirdPartyReq, smsSendUrl);
ThreadPool.getInstance().execute(sendSmsTask);
messageTask.setSendStatus(SendStatusEnum.发送中.getValue());
messageTask.setSendTime(new Date());
SmsQueueManager.offerRespQueue(messageTask);
}
/* List<AlarmRecordsEntity> alarmRecordsEntities = messageTaskService.find(new AlarmRecordsQuery().push(YesNoEnum.NO.getValue()));
for (AlarmRecordsEntity alarmRecordsEntity : alarmRecordsEntities) {
TbQueueMsgHeaders header = new DefaultTbQueueMsgHeaders();
header.put(MessageHeader.MESSAGETYPE, "alarm");
header.put(MessageHeader.TIMESTAMP, new Date().getTime() + "");
TbQueueMsg queueMsg = new DefaultTbQueueMsg(IdUtil.fastUUID(), alarmRecordsEntity.getAlarmContent(), header);
CorrelationData correlationData = new CorrelationData(IdUtil.fastSimpleUUID());
rabbitTemplate.convertAndSend(QueueKey.DEFAULT_EXCHANGE, QueueKey.ALARM_MSG_QUEUE, JSON.toJSONString(queueMsg), correlationData);
alarmRecordsEntity.setPush(YesNoEnum.YES.getValue());
alarmRecordsEntity.setUpdateTime(new Date());
messageTaskService.update(alarmRecordsEntity);
}*/
}
@Override
protected void threadClosed() {
super.close();
}
}
package com.mortals.xhx.thread;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.mortals.framework.util.HttpUtil;
import com.mortals.xhx.busiz.req.SmsThirdPartyReq;
import com.mortals.xhx.busiz.rsp.ApiSmsResp;
import com.mortals.xhx.common.code.SendStatusEnum;
import com.mortals.xhx.common.utils.SmsQueueManager;
import com.mortals.xhx.module.message.model.MessageTaskEntity;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import java.util.HashMap;
import java.util.Map;
import static com.mortals.framework.util.HttpUtil.HEADER_CONTENT_TYPE;
/**
* 短信发送任务
*
* @author: zxfei
* @date: 2022/4/28 10:56
* @description:
**/
@Slf4j
@AllArgsConstructor
public class SendSmsTask implements Runnable {
/**
* 短信消息
*/
private SmsThirdPartyReq smsThirdPartyReq;
/**
* 接口地址
*/
private String sendUrl;
@Override
public void run() {
String resp = null;
MessageTaskEntity messageTaskEntityResp = new MessageTaskEntity();
messageTaskEntityResp.setId(smsThirdPartyReq.getAlarmSmsSendId());
try {
Map<String, String> header = new HashMap<>();
header.put(HEADER_CONTENT_TYPE, "application/json");
resp = HttpUtil.doPost(sendUrl, header, JSON.toJSONString(smsThirdPartyReq));
ApiSmsResp<Void> apiSmsResp = JSON.parseObject(resp, new TypeReference<ApiSmsResp<Void>>() {
});
if (apiSmsResp.getCode() == 1) {
messageTaskEntityResp.setSendStatus(SendStatusEnum.成功.getValue());
} else {
messageTaskEntityResp.setSendStatus(SendStatusEnum.成功.getValue());
log.info("短信提交失败,req:{}, resp:{}", JSON.toJSONString(smsThirdPartyReq), resp);
}
//发送成功添加到响应队列,由线程批量更新
SmsQueueManager.offerRespQueue(messageTaskEntityResp);
log.debug("resp:{}", resp);
} catch (Exception e) {
messageTaskEntityResp.setSendStatus(SendStatusEnum.失败.getValue());
SmsQueueManager.offerRespQueue(messageTaskEntityResp); //todo
log.error("异常:", e);
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.cp.dao.ibatis.CpRecordsDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="CpRecordsEntity" id="CpRecordsEntity-Map">
<id property="id" column="id" />
<result property="siteId" column="site_id" />
<result property="siteName" column="site_name" />
<result property="personId" column="person_id" />
<result property="pjId" column="pj_id" />
<result property="name" column="name" />
<result property="contact" column="contact" />
<result property="idCard" column="id_card" />
<result property="windowId" column="window_id" />
<result property="windowName" column="window_name" />
<result property="section" column="section" />
<result property="flounum" column="flounum" />
<result property="assessment" column="assessment" />
<result property="type" column="type" />
<result property="content" column="content" />
<result property="source" column="source" />
<result property="pjTime" column="pj_time" />
<result property="createUserId" column="create_user_id" />
<result property="createTime" column="create_time" />
<result property="updateUserId" column="update_user_id" />
<result property="updateTime" column="update_time" />
<result property="bussinessId" column="bussiness_id" />
<result property="bussinessName" column="bussiness_name" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteId') or colPickMode == 1 and data.containsKey('siteId')))">
a.site_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteName') or colPickMode == 1 and data.containsKey('siteName')))">
a.site_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('personId') or colPickMode == 1 and data.containsKey('personId')))">
a.person_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('pjId') or colPickMode == 1 and data.containsKey('pjId')))">
a.pj_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('name') or colPickMode == 1 and data.containsKey('name')))">
a.name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('contact') or colPickMode == 1 and data.containsKey('contact')))">
a.contact,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('idCard') or colPickMode == 1 and data.containsKey('idCard')))">
a.id_card,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('windowId') or colPickMode == 1 and data.containsKey('windowId')))">
a.window_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('windowName') or colPickMode == 1 and data.containsKey('windowName')))">
a.window_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('section') or colPickMode == 1 and data.containsKey('section')))">
a.section,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('flounum') or colPickMode == 1 and data.containsKey('flounum')))">
a.flounum,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('assessment') or colPickMode == 1 and data.containsKey('assessment')))">
a.assessment,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('type') or colPickMode == 1 and data.containsKey('type')))">
a.type,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('content') or colPickMode == 1 and data.containsKey('content')))">
a.content,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('source') or colPickMode == 1 and data.containsKey('source')))">
a.source,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('pjTime') or colPickMode == 1 and data.containsKey('pjTime')))">
a.pj_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
a.create_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.create_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.update_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.update_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessId') or colPickMode == 1 and data.containsKey('bussinessId')))">
a.bussiness_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessName') or colPickMode == 1 and data.containsKey('bussinessName')))">
a.bussiness_name,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CpRecordsEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_cp_records
(site_id,site_name,person_id,pj_id,name,contact,id_card,window_id,window_name,section,flounum,assessment,type,content,source,pj_time,create_user_id,create_time,update_user_id,update_time,bussiness_id,bussiness_name)
VALUES
(#{siteId},#{siteName},#{personId},#{pjId},#{name},#{contact},#{idCard},#{windowId},#{windowName},#{section},#{flounum},#{assessment},#{type},#{content},#{source},#{pjTime},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{bussinessId},#{bussinessName})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_cp_records
(site_id,site_name,person_id,pj_id,name,contact,id_card,window_id,window_name,section,flounum,assessment,type,content,source,pj_time,create_user_id,create_time,update_user_id,update_time,bussiness_id,bussiness_name)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.siteId},#{item.siteName},#{item.personId},#{item.pjId},#{item.name},#{item.contact},#{item.idCard},#{item.windowId},#{item.windowName},#{item.section},#{item.flounum},#{item.assessment},#{item.type},#{item.content},#{item.source},#{item.pjTime},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.bussinessId},#{item.bussinessName})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_cp_records as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('siteId')) or (colPickMode==1 and !data.containsKey('siteId'))">
a.site_id=#{data.siteId},
</if>
<if test="(colPickMode==0 and data.containsKey('siteIdIncrement')) or (colPickMode==1 and !data.containsKey('siteIdIncrement'))">
a.site_id=ifnull(a.site_id,0) + #{data.siteIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('siteName')) or (colPickMode==1 and !data.containsKey('siteName'))">
a.site_name=#{data.siteName},
</if>
<if test="(colPickMode==0 and data.containsKey('personId')) or (colPickMode==1 and !data.containsKey('personId'))">
a.person_id=#{data.personId},
</if>
<if test="(colPickMode==0 and data.containsKey('personIdIncrement')) or (colPickMode==1 and !data.containsKey('personIdIncrement'))">
a.person_id=ifnull(a.person_id,0) + #{data.personIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('pjId')) or (colPickMode==1 and !data.containsKey('pjId'))">
a.pj_id=#{data.pjId},
</if>
<if test="(colPickMode==0 and data.containsKey('pjIdIncrement')) or (colPickMode==1 and !data.containsKey('pjIdIncrement'))">
a.pj_id=ifnull(a.pj_id,0) + #{data.pjIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('name')) or (colPickMode==1 and !data.containsKey('name'))">
a.name=#{data.name},
</if>
<if test="(colPickMode==0 and data.containsKey('contact')) or (colPickMode==1 and !data.containsKey('contact'))">
a.contact=#{data.contact},
</if>
<if test="(colPickMode==0 and data.containsKey('idCard')) or (colPickMode==1 and !data.containsKey('idCard'))">
a.id_card=#{data.idCard},
</if>
<if test="(colPickMode==0 and data.containsKey('windowId')) or (colPickMode==1 and !data.containsKey('windowId'))">
a.window_id=#{data.windowId},
</if>
<if test="(colPickMode==0 and data.containsKey('windowIdIncrement')) or (colPickMode==1 and !data.containsKey('windowIdIncrement'))">
a.window_id=ifnull(a.window_id,0) + #{data.windowIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('windowName')) or (colPickMode==1 and !data.containsKey('windowName'))">
a.window_name=#{data.windowName},
</if>
<if test="(colPickMode==0 and data.containsKey('section')) or (colPickMode==1 and !data.containsKey('section'))">
a.section=#{data.section},
</if>
<if test="(colPickMode==0 and data.containsKey('flounum')) or (colPickMode==1 and !data.containsKey('flounum'))">
a.flounum=#{data.flounum},
</if>
<if test="(colPickMode==0 and data.containsKey('assessment')) or (colPickMode==1 and !data.containsKey('assessment'))">
a.assessment=#{data.assessment},
</if>
<if test="(colPickMode==0 and data.containsKey('type')) or (colPickMode==1 and !data.containsKey('type'))">
a.type=#{data.type},
</if>
<if test="(colPickMode==0 and data.containsKey('content')) or (colPickMode==1 and !data.containsKey('content'))">
a.content=#{data.content},
</if>
<if test="(colPickMode==0 and data.containsKey('source')) or (colPickMode==1 and !data.containsKey('source'))">
a.source=#{data.source},
</if>
<if test="(colPickMode==0 and data.containsKey('pjTime')) or (colPickMode==1 and !data.containsKey('pjTime'))">
a.pj_time=#{data.pjTime},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserId')) or (colPickMode==1 and !data.containsKey('createUserId'))">
a.create_user_id=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.create_user_id=ifnull(a.create_user_id,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.create_time=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.update_user_id=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.update_user_id=ifnull(a.update_user_id,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.update_time=#{data.updateTime},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessId')) or (colPickMode==1 and !data.containsKey('bussinessId'))">
a.bussiness_id=#{data.bussinessId},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !data.containsKey('bussinessIdIncrement'))">
a.bussiness_id=ifnull(a.bussiness_id,0) + #{data.bussinessIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessName')) or (colPickMode==1 and !data.containsKey('bussinessName'))">
a.bussiness_name=#{data.bussinessName},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_cp_records as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="site_id=(case" suffix="ELSE site_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('siteId')) or (colPickMode==1 and !item.containsKey('siteId'))">
when a.id=#{item.id} then #{item.siteId}
</when>
<when test="(colPickMode==0 and item.containsKey('siteIdIncrement')) or (colPickMode==1 and !item.containsKey('siteIdIncrement'))">
when a.id=#{item.id} then ifnull(a.site_id,0) + #{item.siteIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="site_name=(case" suffix="ELSE site_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteName')) or (colPickMode==1 and !item.containsKey('siteName'))">
when a.id=#{item.id} then #{item.siteName}
</if>
</foreach>
</trim>
<trim prefix="person_id=(case" suffix="ELSE person_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('personId')) or (colPickMode==1 and !item.containsKey('personId'))">
when a.id=#{item.id} then #{item.personId}
</when>
<when test="(colPickMode==0 and item.containsKey('personIdIncrement')) or (colPickMode==1 and !item.containsKey('personIdIncrement'))">
when a.id=#{item.id} then ifnull(a.person_id,0) + #{item.personIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="pj_id=(case" suffix="ELSE pj_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('pjId')) or (colPickMode==1 and !item.containsKey('pjId'))">
when a.id=#{item.id} then #{item.pjId}
</when>
<when test="(colPickMode==0 and item.containsKey('pjIdIncrement')) or (colPickMode==1 and !item.containsKey('pjIdIncrement'))">
when a.id=#{item.id} then ifnull(a.pj_id,0) + #{item.pjIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="name=(case" suffix="ELSE name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('name')) or (colPickMode==1 and !item.containsKey('name'))">
when a.id=#{item.id} then #{item.name}
</if>
</foreach>
</trim>
<trim prefix="contact=(case" suffix="ELSE contact end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('contact')) or (colPickMode==1 and !item.containsKey('contact'))">
when a.id=#{item.id} then #{item.contact}
</if>
</foreach>
</trim>
<trim prefix="id_card=(case" suffix="ELSE id_card end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('idCard')) or (colPickMode==1 and !item.containsKey('idCard'))">
when a.id=#{item.id} then #{item.idCard}
</if>
</foreach>
</trim>
<trim prefix="window_id=(case" suffix="ELSE window_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('windowId')) or (colPickMode==1 and !item.containsKey('windowId'))">
when a.id=#{item.id} then #{item.windowId}
</when>
<when test="(colPickMode==0 and item.containsKey('windowIdIncrement')) or (colPickMode==1 and !item.containsKey('windowIdIncrement'))">
when a.id=#{item.id} then ifnull(a.window_id,0) + #{item.windowIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="window_name=(case" suffix="ELSE window_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('windowName')) or (colPickMode==1 and !item.containsKey('windowName'))">
when a.id=#{item.id} then #{item.windowName}
</if>
</foreach>
</trim>
<trim prefix="section=(case" suffix="ELSE section end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('section')) or (colPickMode==1 and !item.containsKey('section'))">
when a.id=#{item.id} then #{item.section}
</if>
</foreach>
</trim>
<trim prefix="flounum=(case" suffix="ELSE flounum end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('flounum')) or (colPickMode==1 and !item.containsKey('flounum'))">
when a.id=#{item.id} then #{item.flounum}
</if>
</foreach>
</trim>
<trim prefix="assessment=(case" suffix="ELSE assessment end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('assessment')) or (colPickMode==1 and !item.containsKey('assessment'))">
when a.id=#{item.id} then #{item.assessment}
</if>
</foreach>
</trim>
<trim prefix="type=(case" suffix="ELSE type end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('type')) or (colPickMode==1 and !item.containsKey('type'))">
when a.id=#{item.id} then #{item.type}
</if>
</foreach>
</trim>
<trim prefix="content=(case" suffix="ELSE content end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('content')) or (colPickMode==1 and !item.containsKey('content'))">
when a.id=#{item.id} then #{item.content}
</if>
</foreach>
</trim>
<trim prefix="source=(case" suffix="ELSE source end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('source')) or (colPickMode==1 and !item.containsKey('source'))">
when a.id=#{item.id} then #{item.source}
</if>
</foreach>
</trim>
<trim prefix="pj_time=(case" suffix="ELSE pj_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('pjTime')) or (colPickMode==1 and !item.containsKey('pjTime'))">
when a.id=#{item.id} then #{item.pjTime}
</if>
</foreach>
</trim>
<trim prefix="create_user_id=(case" suffix="ELSE create_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.id=#{item.id} then #{item.createUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.create_user_id,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="create_time=(case" suffix="ELSE create_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="update_user_id=(case" suffix="ELSE update_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.update_user_id,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="update_time=(case" suffix="ELSE update_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
<trim prefix="bussiness_id=(case" suffix="ELSE bussiness_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('bussinessId')) or (colPickMode==1 and !item.containsKey('bussinessId'))">
when a.id=#{item.id} then #{item.bussinessId}
</when>
<when test="(colPickMode==0 and item.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !item.containsKey('bussinessIdIncrement'))">
when a.id=#{item.id} then ifnull(a.bussiness_id,0) + #{item.bussinessIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="bussiness_name=(case" suffix="ELSE bussiness_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('bussinessName')) or (colPickMode==1 and !item.containsKey('bussinessName'))">
when a.id=#{item.id} then #{item.bussinessName}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="CpRecordsEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_cp_records as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete from mortals_xhx_cp_records as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_cp_records where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_cp_records where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_cp_records where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_cp_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="CpRecordsEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_cp_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
<include refid="_orderCols_"/>
</select>
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_cp_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</select>
<!-- 条件映射 -->
<sql id="_condition_">
<if test="condition != null and !condition.isEmpty()">
<!-- 条件映射-普通条件 -->
<include refid="_condition_param_">
<property name="_conditionParam_" value="condition"/>
<property name="_conditionType_" value="and"/>
</include>
<!-- 条件映射-集合之间使用AND,集合中元素使用OR-(list[0].1 or list[0].2) and (list[1].3 or list[1].4) -->
<if test="condition.containsKey('andConditionList') and !condition.andConditionList.isEmpty()">
and
<foreach collection="condition.andConditionList" open="(" close=")" index="index" item="andCondition" separator=" and ">
<trim prefixOverrides="or" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="andCondition"/>
<property name="_conditionType_" value="or"/>
</include>
</trim>
</foreach>
</if>
<!-- 条件映射-集合之间使用OR,集合中元素使用AND-(list[0].1 and list[0].2) or (list[1].3 and list[1].4) -->
<if test="condition.containsKey('orConditionList') and !condition.orConditionList.isEmpty()">
and
<foreach collection="condition.orConditionList" open="(" close=")" index="index" item="orCondition" separator=" or ">
<trim prefixOverrides="and" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="orCondition"/>
<property name="_conditionType_" value="and"/>
</include>
</trim>
</foreach>
</if>
</if>
</sql>
<!-- 条件映射-代参数 -->
<sql id="_condition_param_">
<bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="permissionSql != null and permissionSql != ''">
${permissionSql}
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null">
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
</if>
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('siteId')">
<if test="conditionParamRef.siteId != null ">
${_conditionType_} a.site_id = #{${_conditionParam_}.siteId}
</if>
<if test="conditionParamRef.siteId == null">
${_conditionType_} a.site_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
${_conditionType_} a.site_id in
<foreach collection="conditionParamRef.siteIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdNotList') and conditionParamRef.siteIdNotList.size() > 0">
${_conditionType_} a.site_id not in
<foreach collection="conditionParamRef.siteIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdStart') and conditionParamRef.siteIdStart != null">
${_conditionType_} a.site_id <![CDATA[ >= ]]> #{${_conditionParam_}.siteIdStart}
</if>
<if test="conditionParamRef.containsKey('siteIdEnd') and conditionParamRef.siteIdEnd != null">
${_conditionType_} a.site_id <![CDATA[ <= ]]> #{${_conditionParam_}.siteIdEnd}
</if>
<if test="conditionParamRef.containsKey('siteName')">
<if test="conditionParamRef.siteName != null and conditionParamRef.siteName != ''">
${_conditionType_} a.site_name like #{${_conditionParam_}.siteName}
</if>
<if test="conditionParamRef.siteName == null">
${_conditionType_} a.site_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteNameList') and conditionParamRef.siteNameList.size() > 0">
${_conditionType_} a.site_name in
<foreach collection="conditionParamRef.siteNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteNameNotList') and conditionParamRef.siteNameNotList.size() > 0">
${_conditionType_} a.site_name not in
<foreach collection="conditionParamRef.siteNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personId')">
<if test="conditionParamRef.personId != null ">
${_conditionType_} a.person_id = #{${_conditionParam_}.personId}
</if>
<if test="conditionParamRef.personId == null">
${_conditionType_} a.person_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
${_conditionType_} a.person_id in
<foreach collection="conditionParamRef.personIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personIdNotList') and conditionParamRef.personIdNotList.size() > 0">
${_conditionType_} a.person_id not in
<foreach collection="conditionParamRef.personIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personIdStart') and conditionParamRef.personIdStart != null">
${_conditionType_} a.person_id <![CDATA[ >= ]]> #{${_conditionParam_}.personIdStart}
</if>
<if test="conditionParamRef.containsKey('personIdEnd') and conditionParamRef.personIdEnd != null">
${_conditionType_} a.person_id <![CDATA[ <= ]]> #{${_conditionParam_}.personIdEnd}
</if>
<if test="conditionParamRef.containsKey('pjId')">
<if test="conditionParamRef.pjId != null ">
${_conditionType_} a.pj_id = #{${_conditionParam_}.pjId}
</if>
<if test="conditionParamRef.pjId == null">
${_conditionType_} a.pj_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('pjIdList') and conditionParamRef.pjIdList.size() > 0">
${_conditionType_} a.pj_id in
<foreach collection="conditionParamRef.pjIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('pjIdNotList') and conditionParamRef.pjIdNotList.size() > 0">
${_conditionType_} a.pj_id not in
<foreach collection="conditionParamRef.pjIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('pjIdStart') and conditionParamRef.pjIdStart != null">
${_conditionType_} a.pj_id <![CDATA[ >= ]]> #{${_conditionParam_}.pjIdStart}
</if>
<if test="conditionParamRef.containsKey('pjIdEnd') and conditionParamRef.pjIdEnd != null">
${_conditionType_} a.pj_id <![CDATA[ <= ]]> #{${_conditionParam_}.pjIdEnd}
</if>
<if test="conditionParamRef.containsKey('name')">
<if test="conditionParamRef.name != null and conditionParamRef.name != ''">
${_conditionType_} a.name like #{${_conditionParam_}.name}
</if>
<if test="conditionParamRef.name == null">
${_conditionType_} a.name is null
</if>
</if>
<if test="conditionParamRef.containsKey('nameList') and conditionParamRef.nameList.size() > 0">
${_conditionType_} a.name in
<foreach collection="conditionParamRef.nameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('nameNotList') and conditionParamRef.nameNotList.size() > 0">
${_conditionType_} a.name not in
<foreach collection="conditionParamRef.nameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contact')">
<if test="conditionParamRef.contact != null and conditionParamRef.contact != ''">
${_conditionType_} a.contact like #{${_conditionParam_}.contact}
</if>
<if test="conditionParamRef.contact == null">
${_conditionType_} a.contact is null
</if>
</if>
<if test="conditionParamRef.containsKey('contactList') and conditionParamRef.contactList.size() > 0">
${_conditionType_} a.contact in
<foreach collection="conditionParamRef.contactList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contactNotList') and conditionParamRef.contactNotList.size() > 0">
${_conditionType_} a.contact not in
<foreach collection="conditionParamRef.contactNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idCard')">
<if test="conditionParamRef.idCard != null and conditionParamRef.idCard != ''">
${_conditionType_} a.id_card like #{${_conditionParam_}.idCard}
</if>
<if test="conditionParamRef.idCard == null">
${_conditionType_} a.id_card is null
</if>
</if>
<if test="conditionParamRef.containsKey('idCardList') and conditionParamRef.idCardList.size() > 0">
${_conditionType_} a.id_card in
<foreach collection="conditionParamRef.idCardList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idCardNotList') and conditionParamRef.idCardNotList.size() > 0">
${_conditionType_} a.id_card not in
<foreach collection="conditionParamRef.idCardNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowId')">
<if test="conditionParamRef.windowId != null ">
${_conditionType_} a.window_id = #{${_conditionParam_}.windowId}
</if>
<if test="conditionParamRef.windowId == null">
${_conditionType_} a.window_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('windowIdList') and conditionParamRef.windowIdList.size() > 0">
${_conditionType_} a.window_id in
<foreach collection="conditionParamRef.windowIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowIdNotList') and conditionParamRef.windowIdNotList.size() > 0">
${_conditionType_} a.window_id not in
<foreach collection="conditionParamRef.windowIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowIdStart') and conditionParamRef.windowIdStart != null">
${_conditionType_} a.window_id <![CDATA[ >= ]]> #{${_conditionParam_}.windowIdStart}
</if>
<if test="conditionParamRef.containsKey('windowIdEnd') and conditionParamRef.windowIdEnd != null">
${_conditionType_} a.window_id <![CDATA[ <= ]]> #{${_conditionParam_}.windowIdEnd}
</if>
<if test="conditionParamRef.containsKey('windowName')">
<if test="conditionParamRef.windowName != null and conditionParamRef.windowName != ''">
${_conditionType_} a.window_name like #{${_conditionParam_}.windowName}
</if>
<if test="conditionParamRef.windowName == null">
${_conditionType_} a.window_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('windowNameList') and conditionParamRef.windowNameList.size() > 0">
${_conditionType_} a.window_name in
<foreach collection="conditionParamRef.windowNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowNameNotList') and conditionParamRef.windowNameNotList.size() > 0">
${_conditionType_} a.window_name not in
<foreach collection="conditionParamRef.windowNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('section')">
<if test="conditionParamRef.section != null and conditionParamRef.section != ''">
${_conditionType_} a.section like #{${_conditionParam_}.section}
</if>
<if test="conditionParamRef.section == null">
${_conditionType_} a.section is null
</if>
</if>
<if test="conditionParamRef.containsKey('sectionList') and conditionParamRef.sectionList.size() > 0">
${_conditionType_} a.section in
<foreach collection="conditionParamRef.sectionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sectionNotList') and conditionParamRef.sectionNotList.size() > 0">
${_conditionType_} a.section not in
<foreach collection="conditionParamRef.sectionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('flounum')">
<if test="conditionParamRef.flounum != null and conditionParamRef.flounum != ''">
${_conditionType_} a.flounum like #{${_conditionParam_}.flounum}
</if>
<if test="conditionParamRef.flounum == null">
${_conditionType_} a.flounum is null
</if>
</if>
<if test="conditionParamRef.containsKey('flounumList') and conditionParamRef.flounumList.size() > 0">
${_conditionType_} a.flounum in
<foreach collection="conditionParamRef.flounumList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('flounumNotList') and conditionParamRef.flounumNotList.size() > 0">
${_conditionType_} a.flounum not in
<foreach collection="conditionParamRef.flounumNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('assessment')">
<if test="conditionParamRef.assessment != null and conditionParamRef.assessment != ''">
${_conditionType_} a.assessment like #{${_conditionParam_}.assessment}
</if>
<if test="conditionParamRef.assessment == null">
${_conditionType_} a.assessment is null
</if>
</if>
<if test="conditionParamRef.containsKey('assessmentList') and conditionParamRef.assessmentList.size() > 0">
${_conditionType_} a.assessment in
<foreach collection="conditionParamRef.assessmentList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('assessmentNotList') and conditionParamRef.assessmentNotList.size() > 0">
${_conditionType_} a.assessment not in
<foreach collection="conditionParamRef.assessmentNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('type')">
<if test="conditionParamRef.type != null and conditionParamRef.type != ''">
${_conditionType_} a.type like #{${_conditionParam_}.type}
</if>
<if test="conditionParamRef.type == null">
${_conditionType_} a.type is null
</if>
</if>
<if test="conditionParamRef.containsKey('typeList') and conditionParamRef.typeList.size() > 0">
${_conditionType_} a.type in
<foreach collection="conditionParamRef.typeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('typeNotList') and conditionParamRef.typeNotList.size() > 0">
${_conditionType_} a.type not in
<foreach collection="conditionParamRef.typeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('content')">
<if test="conditionParamRef.content != null and conditionParamRef.content != ''">
${_conditionType_} a.content like #{${_conditionParam_}.content}
</if>
<if test="conditionParamRef.content == null">
${_conditionType_} a.content is null
</if>
</if>
<if test="conditionParamRef.containsKey('contentList') and conditionParamRef.contentList.size() > 0">
${_conditionType_} a.content in
<foreach collection="conditionParamRef.contentList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contentNotList') and conditionParamRef.contentNotList.size() > 0">
${_conditionType_} a.content not in
<foreach collection="conditionParamRef.contentNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('source')">
<if test="conditionParamRef.source != null and conditionParamRef.source != ''">
${_conditionType_} a.source like #{${_conditionParam_}.source}
</if>
<if test="conditionParamRef.source == null">
${_conditionType_} a.source is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceList') and conditionParamRef.sourceList.size() > 0">
${_conditionType_} a.source in
<foreach collection="conditionParamRef.sourceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceNotList') and conditionParamRef.sourceNotList.size() > 0">
${_conditionType_} a.source not in
<foreach collection="conditionParamRef.sourceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('pjTime')">
<if test="conditionParamRef.pjTime != null ">
${_conditionType_} a.pj_time = #{${_conditionParam_}.pjTime}
</if>
<if test="conditionParamRef.pjTime == null">
${_conditionType_} a.pj_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('pjTimeStart') and conditionParamRef.pjTimeStart != null and conditionParamRef.pjTimeStart!=''">
${_conditionType_} a.pj_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.pjTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('pjTimeEnd') and conditionParamRef.pjTimeEnd != null and conditionParamRef.pjTimeEnd!=''">
${_conditionType_} a.pj_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.pjTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createUserId')">
<if test="conditionParamRef.createUserId != null ">
${_conditionType_} a.create_user_id = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.create_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.create_user_id in
<foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
${_conditionType_} a.create_user_id not in
<foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
${_conditionType_} a.create_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.create_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.create_time = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.create_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.create_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.create_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.update_user_id = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.update_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.update_user_id in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
${_conditionType_} a.update_user_id not in
<foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.update_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.update_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.update_time = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.update_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.update_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.update_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('bussinessId')">
<if test="conditionParamRef.bussinessId != null ">
${_conditionType_} a.bussiness_id = #{${_conditionParam_}.bussinessId}
</if>
<if test="conditionParamRef.bussinessId == null">
${_conditionType_} a.bussiness_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
${_conditionType_} a.bussiness_id in
<foreach collection="conditionParamRef.bussinessIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdNotList') and conditionParamRef.bussinessIdNotList.size() > 0">
${_conditionType_} a.bussiness_id not in
<foreach collection="conditionParamRef.bussinessIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdStart') and conditionParamRef.bussinessIdStart != null">
${_conditionType_} a.bussiness_id <![CDATA[ >= ]]> #{${_conditionParam_}.bussinessIdStart}
</if>
<if test="conditionParamRef.containsKey('bussinessIdEnd') and conditionParamRef.bussinessIdEnd != null">
${_conditionType_} a.bussiness_id <![CDATA[ <= ]]> #{${_conditionParam_}.bussinessIdEnd}
</if>
<if test="conditionParamRef.containsKey('bussinessName')">
<if test="conditionParamRef.bussinessName != null and conditionParamRef.bussinessName != ''">
${_conditionType_} a.bussiness_name like #{${_conditionParam_}.bussinessName}
</if>
<if test="conditionParamRef.bussinessName == null">
${_conditionType_} a.bussiness_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessNameList') and conditionParamRef.bussinessNameList.size() > 0">
${_conditionType_} a.bussiness_name in
<foreach collection="conditionParamRef.bussinessNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessNameNotList') and conditionParamRef.bussinessNameNotList.size() > 0">
${_conditionType_} a.bussiness_name not in
<foreach collection="conditionParamRef.bussinessNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
field(a.personId,
<foreach collection="conditionParamRef.personIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('pjIdList') and conditionParamRef.pjIdList.size() > 0">
field(a.pjId,
<foreach collection="conditionParamRef.pjIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('windowIdList') and conditionParamRef.windowIdList.size() > 0">
field(a.windowId,
<foreach collection="conditionParamRef.windowIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
field(a.bussinessId,
<foreach collection="conditionParamRef.bussinessIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
a.${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
field(a.personId,
<foreach collection="conditionParamRef.personIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('pjIdList') and conditionParamRef.pjIdList.size() > 0">
field(a.pjId,
<foreach collection="conditionParamRef.pjIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('windowIdList') and conditionParamRef.windowIdList.size() > 0">
field(a.windowId,
<foreach collection="conditionParamRef.windowIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
field(a.bussinessId,
<foreach collection="conditionParamRef.bussinessIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteId')">
a.site_id
<if test='orderCol.siteId != null and "DESC".equalsIgnoreCase(orderCol.siteId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteName')">
a.site_name
<if test='orderCol.siteName != null and "DESC".equalsIgnoreCase(orderCol.siteName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('personId')">
a.person_id
<if test='orderCol.personId != null and "DESC".equalsIgnoreCase(orderCol.personId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('pjId')">
a.pj_id
<if test='orderCol.pjId != null and "DESC".equalsIgnoreCase(orderCol.pjId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('name')">
a.name
<if test='orderCol.name != null and "DESC".equalsIgnoreCase(orderCol.name)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('contact')">
a.contact
<if test='orderCol.contact != null and "DESC".equalsIgnoreCase(orderCol.contact)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('idCard')">
a.id_card
<if test='orderCol.idCard != null and "DESC".equalsIgnoreCase(orderCol.idCard)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('windowId')">
a.window_id
<if test='orderCol.windowId != null and "DESC".equalsIgnoreCase(orderCol.windowId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('windowName')">
a.window_name
<if test='orderCol.windowName != null and "DESC".equalsIgnoreCase(orderCol.windowName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('section')">
a.section
<if test='orderCol.section != null and "DESC".equalsIgnoreCase(orderCol.section)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('flounum')">
a.flounum
<if test='orderCol.flounum != null and "DESC".equalsIgnoreCase(orderCol.flounum)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('assessment')">
a.assessment
<if test='orderCol.assessment != null and "DESC".equalsIgnoreCase(orderCol.assessment)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('type')">
a.type
<if test='orderCol.type != null and "DESC".equalsIgnoreCase(orderCol.type)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('content')">
a.content
<if test='orderCol.content != null and "DESC".equalsIgnoreCase(orderCol.content)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('source')">
a.source
<if test='orderCol.source != null and "DESC".equalsIgnoreCase(orderCol.source)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('pjTime')">
a.pj_time
<if test='orderCol.pjTime != null and "DESC".equalsIgnoreCase(orderCol.pjTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createUserId')">
a.create_user_id
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.create_time
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.update_user_id
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.update_time
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessId')">
a.bussiness_id
<if test='orderCol.bussinessId != null and "DESC".equalsIgnoreCase(orderCol.bussinessId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessName')">
a.bussiness_name
<if test='orderCol.bussinessName != null and "DESC".equalsIgnoreCase(orderCol.bussinessName)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
<sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()">
GROUP BY
<trim suffixOverrides="," suffix="">
<foreach collection="groupList" open="" close="" index="index" item="item" separator=",">
${item}
</foreach>
</trim>
</if>
</sql>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.dowork.dao.ibatis.DoworkRecordsDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="DoworkRecordsEntity" id="DoworkRecordsEntity-Map">
<id property="id" column="id" />
<result property="siteId" column="site_id" />
<result property="siteName" column="site_name" />
<result property="personId" column="person_id" />
<result property="waitId" column="wait_id" />
<result property="name" column="name" />
<result property="contact" column="contact" />
<result property="idCard" column="id_card" />
<result property="bussinessId" column="bussiness_id" />
<result property="bussinessName" column="bussiness_name" />
<result property="windowNum" column="window_num" />
<result property="windowName" column="window_name" />
<result property="workman" column="workman" />
<result property="service" column="service" />
<result property="queueNo" column="queueNo" />
<result property="takeTime" column="take_time" />
<result property="callTime" column="call_time" />
<result property="endTime" column="end_time" />
<result property="waitTime" column="wait_time" />
<result property="endDureTime" column="end_dure_time" />
<result property="waitDureAlarmAvl" column="wait_dure_alarm_avl" />
<result property="endDureAlarmAvl" column="end_dure_alarm_avl" />
<result property="processStatus" column="process_status" />
<result property="remark" column="remark" />
<result property="createUserId" column="create_user_id" />
<result property="createTime" column="create_time" />
<result property="updateUserId" column="update_user_id" />
<result property="updateTime" column="update_time" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteId') or colPickMode == 1 and data.containsKey('siteId')))">
a.site_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteName') or colPickMode == 1 and data.containsKey('siteName')))">
a.site_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('personId') or colPickMode == 1 and data.containsKey('personId')))">
a.person_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('waitId') or colPickMode == 1 and data.containsKey('waitId')))">
a.wait_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('name') or colPickMode == 1 and data.containsKey('name')))">
a.name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('contact') or colPickMode == 1 and data.containsKey('contact')))">
a.contact,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('idCard') or colPickMode == 1 and data.containsKey('idCard')))">
a.id_card,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessId') or colPickMode == 1 and data.containsKey('bussinessId')))">
a.bussiness_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessName') or colPickMode == 1 and data.containsKey('bussinessName')))">
a.bussiness_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('windowNum') or colPickMode == 1 and data.containsKey('windowNum')))">
a.window_num,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('windowName') or colPickMode == 1 and data.containsKey('windowName')))">
a.window_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('workman') or colPickMode == 1 and data.containsKey('workman')))">
a.workman,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('service') or colPickMode == 1 and data.containsKey('service')))">
a.service,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('queueNo') or colPickMode == 1 and data.containsKey('queueNo')))">
a.queueNo,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('takeTime') or colPickMode == 1 and data.containsKey('takeTime')))">
a.take_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('callTime') or colPickMode == 1 and data.containsKey('callTime')))">
a.call_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('endTime') or colPickMode == 1 and data.containsKey('endTime')))">
a.end_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('waitTime') or colPickMode == 1 and data.containsKey('waitTime')))">
a.wait_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('endDureTime') or colPickMode == 1 and data.containsKey('endDureTime')))">
a.end_dure_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('waitDureAlarmAvl') or colPickMode == 1 and data.containsKey('waitDureAlarmAvl')))">
a.wait_dure_alarm_avl,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('endDureAlarmAvl') or colPickMode == 1 and data.containsKey('endDureAlarmAvl')))">
a.end_dure_alarm_avl,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('processStatus') or colPickMode == 1 and data.containsKey('processStatus')))">
a.process_status,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('remark') or colPickMode == 1 and data.containsKey('remark')))">
a.remark,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
a.create_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.create_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.update_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.update_time,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="DoworkRecordsEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_dowork_records
(site_id,site_name,person_id,wait_id,name,contact,id_card,bussiness_id,bussiness_name,window_num,window_name,workman,service,queueNo,take_time,call_time,end_time,wait_time,end_dure_time,wait_dure_alarm_avl,end_dure_alarm_avl,process_status,remark,create_user_id,create_time,update_user_id,update_time)
VALUES
(#{siteId},#{siteName},#{personId},#{waitId},#{name},#{contact},#{idCard},#{bussinessId},#{bussinessName},#{windowNum},#{windowName},#{workman},#{service},#{queueNo},#{takeTime},#{callTime},#{endTime},#{waitTime},#{endDureTime},#{waitDureAlarmAvl},#{endDureAlarmAvl},#{processStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_dowork_records
(site_id,site_name,person_id,wait_id,name,contact,id_card,bussiness_id,bussiness_name,window_num,window_name,workman,service,queueNo,take_time,call_time,end_time,wait_time,end_dure_time,wait_dure_alarm_avl,end_dure_alarm_avl,process_status,remark,create_user_id,create_time,update_user_id,update_time)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.siteId},#{item.siteName},#{item.personId},#{item.waitId},#{item.name},#{item.contact},#{item.idCard},#{item.bussinessId},#{item.bussinessName},#{item.windowNum},#{item.windowName},#{item.workman},#{item.service},#{item.queueNo},#{item.takeTime},#{item.callTime},#{item.endTime},#{item.waitTime},#{item.endDureTime},#{item.waitDureAlarmAvl},#{item.endDureAlarmAvl},#{item.processStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_dowork_records as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('siteId')) or (colPickMode==1 and !data.containsKey('siteId'))">
a.site_id=#{data.siteId},
</if>
<if test="(colPickMode==0 and data.containsKey('siteIdIncrement')) or (colPickMode==1 and !data.containsKey('siteIdIncrement'))">
a.site_id=ifnull(a.site_id,0) + #{data.siteIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('siteName')) or (colPickMode==1 and !data.containsKey('siteName'))">
a.site_name=#{data.siteName},
</if>
<if test="(colPickMode==0 and data.containsKey('personId')) or (colPickMode==1 and !data.containsKey('personId'))">
a.person_id=#{data.personId},
</if>
<if test="(colPickMode==0 and data.containsKey('personIdIncrement')) or (colPickMode==1 and !data.containsKey('personIdIncrement'))">
a.person_id=ifnull(a.person_id,0) + #{data.personIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('waitId')) or (colPickMode==1 and !data.containsKey('waitId'))">
a.wait_id=#{data.waitId},
</if>
<if test="(colPickMode==0 and data.containsKey('waitIdIncrement')) or (colPickMode==1 and !data.containsKey('waitIdIncrement'))">
a.wait_id=ifnull(a.wait_id,0) + #{data.waitIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('name')) or (colPickMode==1 and !data.containsKey('name'))">
a.name=#{data.name},
</if>
<if test="(colPickMode==0 and data.containsKey('contact')) or (colPickMode==1 and !data.containsKey('contact'))">
a.contact=#{data.contact},
</if>
<if test="(colPickMode==0 and data.containsKey('idCard')) or (colPickMode==1 and !data.containsKey('idCard'))">
a.id_card=#{data.idCard},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessId')) or (colPickMode==1 and !data.containsKey('bussinessId'))">
a.bussiness_id=#{data.bussinessId},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !data.containsKey('bussinessIdIncrement'))">
a.bussiness_id=ifnull(a.bussiness_id,0) + #{data.bussinessIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessName')) or (colPickMode==1 and !data.containsKey('bussinessName'))">
a.bussiness_name=#{data.bussinessName},
</if>
<if test="(colPickMode==0 and data.containsKey('windowNum')) or (colPickMode==1 and !data.containsKey('windowNum'))">
a.window_num=#{data.windowNum},
</if>
<if test="(colPickMode==0 and data.containsKey('windowName')) or (colPickMode==1 and !data.containsKey('windowName'))">
a.window_name=#{data.windowName},
</if>
<if test="(colPickMode==0 and data.containsKey('workman')) or (colPickMode==1 and !data.containsKey('workman'))">
a.workman=#{data.workman},
</if>
<if test="(colPickMode==0 and data.containsKey('service')) or (colPickMode==1 and !data.containsKey('service'))">
a.service=#{data.service},
</if>
<if test="(colPickMode==0 and data.containsKey('queueNo')) or (colPickMode==1 and !data.containsKey('queueNo'))">
a.queueNo=#{data.queueNo},
</if>
<if test="(colPickMode==0 and data.containsKey('takeTime')) or (colPickMode==1 and !data.containsKey('takeTime'))">
a.take_time=#{data.takeTime},
</if>
<if test="(colPickMode==0 and data.containsKey('callTime')) or (colPickMode==1 and !data.containsKey('callTime'))">
a.call_time=#{data.callTime},
</if>
<if test="(colPickMode==0 and data.containsKey('endTime')) or (colPickMode==1 and !data.containsKey('endTime'))">
a.end_time=#{data.endTime},
</if>
<if test="(colPickMode==0 and data.containsKey('waitTime')) or (colPickMode==1 and !data.containsKey('waitTime'))">
a.wait_time=#{data.waitTime},
</if>
<if test="(colPickMode==0 and data.containsKey('waitTimeIncrement')) or (colPickMode==1 and !data.containsKey('waitTimeIncrement'))">
a.wait_time=ifnull(a.wait_time,0) + #{data.waitTimeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('endDureTime')) or (colPickMode==1 and !data.containsKey('endDureTime'))">
a.end_dure_time=#{data.endDureTime},
</if>
<if test="(colPickMode==0 and data.containsKey('endDureTimeIncrement')) or (colPickMode==1 and !data.containsKey('endDureTimeIncrement'))">
a.end_dure_time=ifnull(a.end_dure_time,0) + #{data.endDureTimeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('waitDureAlarmAvl')) or (colPickMode==1 and !data.containsKey('waitDureAlarmAvl'))">
a.wait_dure_alarm_avl=#{data.waitDureAlarmAvl},
</if>
<if test="(colPickMode==0 and data.containsKey('waitDureAlarmAvlIncrement')) or (colPickMode==1 and !data.containsKey('waitDureAlarmAvlIncrement'))">
a.wait_dure_alarm_avl=ifnull(a.wait_dure_alarm_avl,0) + #{data.waitDureAlarmAvlIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('endDureAlarmAvl')) or (colPickMode==1 and !data.containsKey('endDureAlarmAvl'))">
a.end_dure_alarm_avl=#{data.endDureAlarmAvl},
</if>
<if test="(colPickMode==0 and data.containsKey('endDureAlarmAvlIncrement')) or (colPickMode==1 and !data.containsKey('endDureAlarmAvlIncrement'))">
a.end_dure_alarm_avl=ifnull(a.end_dure_alarm_avl,0) + #{data.endDureAlarmAvlIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('processStatus')) or (colPickMode==1 and !data.containsKey('processStatus'))">
a.process_status=#{data.processStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('remark')) or (colPickMode==1 and !data.containsKey('remark'))">
a.remark=#{data.remark},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserId')) or (colPickMode==1 and !data.containsKey('createUserId'))">
a.create_user_id=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.create_user_id=ifnull(a.create_user_id,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.create_time=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.update_user_id=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.update_user_id=ifnull(a.update_user_id,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.update_time=#{data.updateTime},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_dowork_records as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="site_id=(case" suffix="ELSE site_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('siteId')) or (colPickMode==1 and !item.containsKey('siteId'))">
when a.id=#{item.id} then #{item.siteId}
</when>
<when test="(colPickMode==0 and item.containsKey('siteIdIncrement')) or (colPickMode==1 and !item.containsKey('siteIdIncrement'))">
when a.id=#{item.id} then ifnull(a.site_id,0) + #{item.siteIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="site_name=(case" suffix="ELSE site_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteName')) or (colPickMode==1 and !item.containsKey('siteName'))">
when a.id=#{item.id} then #{item.siteName}
</if>
</foreach>
</trim>
<trim prefix="person_id=(case" suffix="ELSE person_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('personId')) or (colPickMode==1 and !item.containsKey('personId'))">
when a.id=#{item.id} then #{item.personId}
</when>
<when test="(colPickMode==0 and item.containsKey('personIdIncrement')) or (colPickMode==1 and !item.containsKey('personIdIncrement'))">
when a.id=#{item.id} then ifnull(a.person_id,0) + #{item.personIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="wait_id=(case" suffix="ELSE wait_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('waitId')) or (colPickMode==1 and !item.containsKey('waitId'))">
when a.id=#{item.id} then #{item.waitId}
</when>
<when test="(colPickMode==0 and item.containsKey('waitIdIncrement')) or (colPickMode==1 and !item.containsKey('waitIdIncrement'))">
when a.id=#{item.id} then ifnull(a.wait_id,0) + #{item.waitIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="name=(case" suffix="ELSE name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('name')) or (colPickMode==1 and !item.containsKey('name'))">
when a.id=#{item.id} then #{item.name}
</if>
</foreach>
</trim>
<trim prefix="contact=(case" suffix="ELSE contact end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('contact')) or (colPickMode==1 and !item.containsKey('contact'))">
when a.id=#{item.id} then #{item.contact}
</if>
</foreach>
</trim>
<trim prefix="id_card=(case" suffix="ELSE id_card end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('idCard')) or (colPickMode==1 and !item.containsKey('idCard'))">
when a.id=#{item.id} then #{item.idCard}
</if>
</foreach>
</trim>
<trim prefix="bussiness_id=(case" suffix="ELSE bussiness_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('bussinessId')) or (colPickMode==1 and !item.containsKey('bussinessId'))">
when a.id=#{item.id} then #{item.bussinessId}
</when>
<when test="(colPickMode==0 and item.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !item.containsKey('bussinessIdIncrement'))">
when a.id=#{item.id} then ifnull(a.bussiness_id,0) + #{item.bussinessIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="bussiness_name=(case" suffix="ELSE bussiness_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('bussinessName')) or (colPickMode==1 and !item.containsKey('bussinessName'))">
when a.id=#{item.id} then #{item.bussinessName}
</if>
</foreach>
</trim>
<trim prefix="window_num=(case" suffix="ELSE window_num end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('windowNum')) or (colPickMode==1 and !item.containsKey('windowNum'))">
when a.id=#{item.id} then #{item.windowNum}
</if>
</foreach>
</trim>
<trim prefix="window_name=(case" suffix="ELSE window_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('windowName')) or (colPickMode==1 and !item.containsKey('windowName'))">
when a.id=#{item.id} then #{item.windowName}
</if>
</foreach>
</trim>
<trim prefix="workman=(case" suffix="ELSE workman end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('workman')) or (colPickMode==1 and !item.containsKey('workman'))">
when a.id=#{item.id} then #{item.workman}
</if>
</foreach>
</trim>
<trim prefix="service=(case" suffix="ELSE service end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('service')) or (colPickMode==1 and !item.containsKey('service'))">
when a.id=#{item.id} then #{item.service}
</if>
</foreach>
</trim>
<trim prefix="queueNo=(case" suffix="ELSE queueNo end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('queueNo')) or (colPickMode==1 and !item.containsKey('queueNo'))">
when a.id=#{item.id} then #{item.queueNo}
</if>
</foreach>
</trim>
<trim prefix="take_time=(case" suffix="ELSE take_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('takeTime')) or (colPickMode==1 and !item.containsKey('takeTime'))">
when a.id=#{item.id} then #{item.takeTime}
</if>
</foreach>
</trim>
<trim prefix="call_time=(case" suffix="ELSE call_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('callTime')) or (colPickMode==1 and !item.containsKey('callTime'))">
when a.id=#{item.id} then #{item.callTime}
</if>
</foreach>
</trim>
<trim prefix="end_time=(case" suffix="ELSE end_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('endTime')) or (colPickMode==1 and !item.containsKey('endTime'))">
when a.id=#{item.id} then #{item.endTime}
</if>
</foreach>
</trim>
<trim prefix="wait_time=(case" suffix="ELSE wait_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('waitTime')) or (colPickMode==1 and !item.containsKey('waitTime'))">
when a.id=#{item.id} then #{item.waitTime}
</when>
<when test="(colPickMode==0 and item.containsKey('waitTimeIncrement')) or (colPickMode==1 and !item.containsKey('waitTimeIncrement'))">
when a.id=#{item.id} then ifnull(a.wait_time,0) + #{item.waitTimeIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="end_dure_time=(case" suffix="ELSE end_dure_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('endDureTime')) or (colPickMode==1 and !item.containsKey('endDureTime'))">
when a.id=#{item.id} then #{item.endDureTime}
</when>
<when test="(colPickMode==0 and item.containsKey('endDureTimeIncrement')) or (colPickMode==1 and !item.containsKey('endDureTimeIncrement'))">
when a.id=#{item.id} then ifnull(a.end_dure_time,0) + #{item.endDureTimeIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="wait_dure_alarm_avl=(case" suffix="ELSE wait_dure_alarm_avl end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('waitDureAlarmAvl')) or (colPickMode==1 and !item.containsKey('waitDureAlarmAvl'))">
when a.id=#{item.id} then #{item.waitDureAlarmAvl}
</when>
<when test="(colPickMode==0 and item.containsKey('waitDureAlarmAvlIncrement')) or (colPickMode==1 and !item.containsKey('waitDureAlarmAvlIncrement'))">
when a.id=#{item.id} then ifnull(a.wait_dure_alarm_avl,0) + #{item.waitDureAlarmAvlIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="end_dure_alarm_avl=(case" suffix="ELSE end_dure_alarm_avl end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('endDureAlarmAvl')) or (colPickMode==1 and !item.containsKey('endDureAlarmAvl'))">
when a.id=#{item.id} then #{item.endDureAlarmAvl}
</when>
<when test="(colPickMode==0 and item.containsKey('endDureAlarmAvlIncrement')) or (colPickMode==1 and !item.containsKey('endDureAlarmAvlIncrement'))">
when a.id=#{item.id} then ifnull(a.end_dure_alarm_avl,0) + #{item.endDureAlarmAvlIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="process_status=(case" suffix="ELSE process_status end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('processStatus')) or (colPickMode==1 and !item.containsKey('processStatus'))">
when a.id=#{item.id} then #{item.processStatus}
</if>
</foreach>
</trim>
<trim prefix="remark=(case" suffix="ELSE remark end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
when a.id=#{item.id} then #{item.remark}
</if>
</foreach>
</trim>
<trim prefix="create_user_id=(case" suffix="ELSE create_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.id=#{item.id} then #{item.createUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.create_user_id,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="create_time=(case" suffix="ELSE create_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="update_user_id=(case" suffix="ELSE update_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.update_user_id,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="update_time=(case" suffix="ELSE update_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="DoworkRecordsEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_dowork_records as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete from mortals_xhx_dowork_records as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_dowork_records where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_dowork_records where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_dowork_records where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_dowork_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="DoworkRecordsEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_dowork_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
<include refid="_orderCols_"/>
</select>
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_dowork_records as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</select>
<!-- 条件映射 -->
<sql id="_condition_">
<if test="condition != null and !condition.isEmpty()">
<!-- 条件映射-普通条件 -->
<include refid="_condition_param_">
<property name="_conditionParam_" value="condition"/>
<property name="_conditionType_" value="and"/>
</include>
<!-- 条件映射-集合之间使用AND,集合中元素使用OR-(list[0].1 or list[0].2) and (list[1].3 or list[1].4) -->
<if test="condition.containsKey('andConditionList') and !condition.andConditionList.isEmpty()">
and
<foreach collection="condition.andConditionList" open="(" close=")" index="index" item="andCondition" separator=" and ">
<trim prefixOverrides="or" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="andCondition"/>
<property name="_conditionType_" value="or"/>
</include>
</trim>
</foreach>
</if>
<!-- 条件映射-集合之间使用OR,集合中元素使用AND-(list[0].1 and list[0].2) or (list[1].3 and list[1].4) -->
<if test="condition.containsKey('orConditionList') and !condition.orConditionList.isEmpty()">
and
<foreach collection="condition.orConditionList" open="(" close=")" index="index" item="orCondition" separator=" or ">
<trim prefixOverrides="and" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="orCondition"/>
<property name="_conditionType_" value="and"/>
</include>
</trim>
</foreach>
</if>
</if>
</sql>
<!-- 条件映射-代参数 -->
<sql id="_condition_param_">
<bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="permissionSql != null and permissionSql != ''">
${permissionSql}
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null">
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
</if>
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('siteId')">
<if test="conditionParamRef.siteId != null ">
${_conditionType_} a.site_id = #{${_conditionParam_}.siteId}
</if>
<if test="conditionParamRef.siteId == null">
${_conditionType_} a.site_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
${_conditionType_} a.site_id in
<foreach collection="conditionParamRef.siteIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdNotList') and conditionParamRef.siteIdNotList.size() > 0">
${_conditionType_} a.site_id not in
<foreach collection="conditionParamRef.siteIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdStart') and conditionParamRef.siteIdStart != null">
${_conditionType_} a.site_id <![CDATA[ >= ]]> #{${_conditionParam_}.siteIdStart}
</if>
<if test="conditionParamRef.containsKey('siteIdEnd') and conditionParamRef.siteIdEnd != null">
${_conditionType_} a.site_id <![CDATA[ <= ]]> #{${_conditionParam_}.siteIdEnd}
</if>
<if test="conditionParamRef.containsKey('siteName')">
<if test="conditionParamRef.siteName != null and conditionParamRef.siteName != ''">
${_conditionType_} a.site_name like #{${_conditionParam_}.siteName}
</if>
<if test="conditionParamRef.siteName == null">
${_conditionType_} a.site_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteNameList') and conditionParamRef.siteNameList.size() > 0">
${_conditionType_} a.site_name in
<foreach collection="conditionParamRef.siteNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteNameNotList') and conditionParamRef.siteNameNotList.size() > 0">
${_conditionType_} a.site_name not in
<foreach collection="conditionParamRef.siteNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personId')">
<if test="conditionParamRef.personId != null ">
${_conditionType_} a.person_id = #{${_conditionParam_}.personId}
</if>
<if test="conditionParamRef.personId == null">
${_conditionType_} a.person_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
${_conditionType_} a.person_id in
<foreach collection="conditionParamRef.personIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personIdNotList') and conditionParamRef.personIdNotList.size() > 0">
${_conditionType_} a.person_id not in
<foreach collection="conditionParamRef.personIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('personIdStart') and conditionParamRef.personIdStart != null">
${_conditionType_} a.person_id <![CDATA[ >= ]]> #{${_conditionParam_}.personIdStart}
</if>
<if test="conditionParamRef.containsKey('personIdEnd') and conditionParamRef.personIdEnd != null">
${_conditionType_} a.person_id <![CDATA[ <= ]]> #{${_conditionParam_}.personIdEnd}
</if>
<if test="conditionParamRef.containsKey('waitId')">
<if test="conditionParamRef.waitId != null ">
${_conditionType_} a.wait_id = #{${_conditionParam_}.waitId}
</if>
<if test="conditionParamRef.waitId == null">
${_conditionType_} a.wait_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('waitIdList') and conditionParamRef.waitIdList.size() > 0">
${_conditionType_} a.wait_id in
<foreach collection="conditionParamRef.waitIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitIdNotList') and conditionParamRef.waitIdNotList.size() > 0">
${_conditionType_} a.wait_id not in
<foreach collection="conditionParamRef.waitIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitIdStart') and conditionParamRef.waitIdStart != null">
${_conditionType_} a.wait_id <![CDATA[ >= ]]> #{${_conditionParam_}.waitIdStart}
</if>
<if test="conditionParamRef.containsKey('waitIdEnd') and conditionParamRef.waitIdEnd != null">
${_conditionType_} a.wait_id <![CDATA[ <= ]]> #{${_conditionParam_}.waitIdEnd}
</if>
<if test="conditionParamRef.containsKey('name')">
<if test="conditionParamRef.name != null and conditionParamRef.name != ''">
${_conditionType_} a.name like #{${_conditionParam_}.name}
</if>
<if test="conditionParamRef.name == null">
${_conditionType_} a.name is null
</if>
</if>
<if test="conditionParamRef.containsKey('nameList') and conditionParamRef.nameList.size() > 0">
${_conditionType_} a.name in
<foreach collection="conditionParamRef.nameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('nameNotList') and conditionParamRef.nameNotList.size() > 0">
${_conditionType_} a.name not in
<foreach collection="conditionParamRef.nameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contact')">
<if test="conditionParamRef.contact != null and conditionParamRef.contact != ''">
${_conditionType_} a.contact like #{${_conditionParam_}.contact}
</if>
<if test="conditionParamRef.contact == null">
${_conditionType_} a.contact is null
</if>
</if>
<if test="conditionParamRef.containsKey('contactList') and conditionParamRef.contactList.size() > 0">
${_conditionType_} a.contact in
<foreach collection="conditionParamRef.contactList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contactNotList') and conditionParamRef.contactNotList.size() > 0">
${_conditionType_} a.contact not in
<foreach collection="conditionParamRef.contactNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idCard')">
<if test="conditionParamRef.idCard != null and conditionParamRef.idCard != ''">
${_conditionType_} a.id_card like #{${_conditionParam_}.idCard}
</if>
<if test="conditionParamRef.idCard == null">
${_conditionType_} a.id_card is null
</if>
</if>
<if test="conditionParamRef.containsKey('idCardList') and conditionParamRef.idCardList.size() > 0">
${_conditionType_} a.id_card in
<foreach collection="conditionParamRef.idCardList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idCardNotList') and conditionParamRef.idCardNotList.size() > 0">
${_conditionType_} a.id_card not in
<foreach collection="conditionParamRef.idCardNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessId')">
<if test="conditionParamRef.bussinessId != null ">
${_conditionType_} a.bussiness_id = #{${_conditionParam_}.bussinessId}
</if>
<if test="conditionParamRef.bussinessId == null">
${_conditionType_} a.bussiness_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
${_conditionType_} a.bussiness_id in
<foreach collection="conditionParamRef.bussinessIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdNotList') and conditionParamRef.bussinessIdNotList.size() > 0">
${_conditionType_} a.bussiness_id not in
<foreach collection="conditionParamRef.bussinessIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdStart') and conditionParamRef.bussinessIdStart != null">
${_conditionType_} a.bussiness_id <![CDATA[ >= ]]> #{${_conditionParam_}.bussinessIdStart}
</if>
<if test="conditionParamRef.containsKey('bussinessIdEnd') and conditionParamRef.bussinessIdEnd != null">
${_conditionType_} a.bussiness_id <![CDATA[ <= ]]> #{${_conditionParam_}.bussinessIdEnd}
</if>
<if test="conditionParamRef.containsKey('bussinessName')">
<if test="conditionParamRef.bussinessName != null and conditionParamRef.bussinessName != ''">
${_conditionType_} a.bussiness_name like #{${_conditionParam_}.bussinessName}
</if>
<if test="conditionParamRef.bussinessName == null">
${_conditionType_} a.bussiness_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessNameList') and conditionParamRef.bussinessNameList.size() > 0">
${_conditionType_} a.bussiness_name in
<foreach collection="conditionParamRef.bussinessNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessNameNotList') and conditionParamRef.bussinessNameNotList.size() > 0">
${_conditionType_} a.bussiness_name not in
<foreach collection="conditionParamRef.bussinessNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowNum')">
<if test="conditionParamRef.windowNum != null and conditionParamRef.windowNum != ''">
${_conditionType_} a.window_num like #{${_conditionParam_}.windowNum}
</if>
<if test="conditionParamRef.windowNum == null">
${_conditionType_} a.window_num is null
</if>
</if>
<if test="conditionParamRef.containsKey('windowNumList') and conditionParamRef.windowNumList.size() > 0">
${_conditionType_} a.window_num in
<foreach collection="conditionParamRef.windowNumList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowNumNotList') and conditionParamRef.windowNumNotList.size() > 0">
${_conditionType_} a.window_num not in
<foreach collection="conditionParamRef.windowNumNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowName')">
<if test="conditionParamRef.windowName != null and conditionParamRef.windowName != ''">
${_conditionType_} a.window_name like #{${_conditionParam_}.windowName}
</if>
<if test="conditionParamRef.windowName == null">
${_conditionType_} a.window_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('windowNameList') and conditionParamRef.windowNameList.size() > 0">
${_conditionType_} a.window_name in
<foreach collection="conditionParamRef.windowNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('windowNameNotList') and conditionParamRef.windowNameNotList.size() > 0">
${_conditionType_} a.window_name not in
<foreach collection="conditionParamRef.windowNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('workman')">
<if test="conditionParamRef.workman != null and conditionParamRef.workman != ''">
${_conditionType_} a.workman like #{${_conditionParam_}.workman}
</if>
<if test="conditionParamRef.workman == null">
${_conditionType_} a.workman is null
</if>
</if>
<if test="conditionParamRef.containsKey('workmanList') and conditionParamRef.workmanList.size() > 0">
${_conditionType_} a.workman in
<foreach collection="conditionParamRef.workmanList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('workmanNotList') and conditionParamRef.workmanNotList.size() > 0">
${_conditionType_} a.workman not in
<foreach collection="conditionParamRef.workmanNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('service')">
<if test="conditionParamRef.service != null and conditionParamRef.service != ''">
${_conditionType_} a.service like #{${_conditionParam_}.service}
</if>
<if test="conditionParamRef.service == null">
${_conditionType_} a.service is null
</if>
</if>
<if test="conditionParamRef.containsKey('serviceList') and conditionParamRef.serviceList.size() > 0">
${_conditionType_} a.service in
<foreach collection="conditionParamRef.serviceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('serviceNotList') and conditionParamRef.serviceNotList.size() > 0">
${_conditionType_} a.service not in
<foreach collection="conditionParamRef.serviceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('queueNo')">
<if test="conditionParamRef.queueNo != null and conditionParamRef.queueNo != ''">
${_conditionType_} a.queueNo like #{${_conditionParam_}.queueNo}
</if>
<if test="conditionParamRef.queueNo == null">
${_conditionType_} a.queueNo is null
</if>
</if>
<if test="conditionParamRef.containsKey('queueNoList') and conditionParamRef.queueNoList.size() > 0">
${_conditionType_} a.queueNo in
<foreach collection="conditionParamRef.queueNoList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('queueNoNotList') and conditionParamRef.queueNoNotList.size() > 0">
${_conditionType_} a.queueNo not in
<foreach collection="conditionParamRef.queueNoNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('takeTime')">
<if test="conditionParamRef.takeTime != null ">
${_conditionType_} a.take_time = #{${_conditionParam_}.takeTime}
</if>
<if test="conditionParamRef.takeTime == null">
${_conditionType_} a.take_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('takeTimeStart') and conditionParamRef.takeTimeStart != null and conditionParamRef.takeTimeStart!=''">
${_conditionType_} a.take_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.takeTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('takeTimeEnd') and conditionParamRef.takeTimeEnd != null and conditionParamRef.takeTimeEnd!=''">
${_conditionType_} a.take_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.takeTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('callTime')">
<if test="conditionParamRef.callTime != null ">
${_conditionType_} a.call_time = #{${_conditionParam_}.callTime}
</if>
<if test="conditionParamRef.callTime == null">
${_conditionType_} a.call_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('callTimeStart') and conditionParamRef.callTimeStart != null and conditionParamRef.callTimeStart!=''">
${_conditionType_} a.call_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.callTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('callTimeEnd') and conditionParamRef.callTimeEnd != null and conditionParamRef.callTimeEnd!=''">
${_conditionType_} a.call_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.callTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('endTime')">
<if test="conditionParamRef.endTime != null ">
${_conditionType_} a.end_time = #{${_conditionParam_}.endTime}
</if>
<if test="conditionParamRef.endTime == null">
${_conditionType_} a.end_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('endTimeStart') and conditionParamRef.endTimeStart != null and conditionParamRef.endTimeStart!=''">
${_conditionType_} a.end_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.endTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('endTimeEnd') and conditionParamRef.endTimeEnd != null and conditionParamRef.endTimeEnd!=''">
${_conditionType_} a.end_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.endTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('waitTime')">
<if test="conditionParamRef.waitTime != null ">
${_conditionType_} a.wait_time = #{${_conditionParam_}.waitTime}
</if>
<if test="conditionParamRef.waitTime == null">
${_conditionType_} a.wait_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('waitTimeList') and conditionParamRef.waitTimeList.size() > 0">
${_conditionType_} a.wait_time in
<foreach collection="conditionParamRef.waitTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitTimeNotList') and conditionParamRef.waitTimeNotList.size() > 0">
${_conditionType_} a.wait_time not in
<foreach collection="conditionParamRef.waitTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitTimeStart') and conditionParamRef.waitTimeStart != null">
${_conditionType_} a.wait_time <![CDATA[ >= ]]> #{${_conditionParam_}.waitTimeStart}
</if>
<if test="conditionParamRef.containsKey('waitTimeEnd') and conditionParamRef.waitTimeEnd != null">
${_conditionType_} a.wait_time <![CDATA[ <= ]]> #{${_conditionParam_}.waitTimeEnd}
</if>
<if test="conditionParamRef.containsKey('endDureTime')">
<if test="conditionParamRef.endDureTime != null ">
${_conditionType_} a.end_dure_time = #{${_conditionParam_}.endDureTime}
</if>
<if test="conditionParamRef.endDureTime == null">
${_conditionType_} a.end_dure_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('endDureTimeList') and conditionParamRef.endDureTimeList.size() > 0">
${_conditionType_} a.end_dure_time in
<foreach collection="conditionParamRef.endDureTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endDureTimeNotList') and conditionParamRef.endDureTimeNotList.size() > 0">
${_conditionType_} a.end_dure_time not in
<foreach collection="conditionParamRef.endDureTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endDureTimeStart') and conditionParamRef.endDureTimeStart != null">
${_conditionType_} a.end_dure_time <![CDATA[ >= ]]> #{${_conditionParam_}.endDureTimeStart}
</if>
<if test="conditionParamRef.containsKey('endDureTimeEnd') and conditionParamRef.endDureTimeEnd != null">
${_conditionType_} a.end_dure_time <![CDATA[ <= ]]> #{${_conditionParam_}.endDureTimeEnd}
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvl')">
<if test="conditionParamRef.waitDureAlarmAvl != null ">
${_conditionType_} a.wait_dure_alarm_avl = #{${_conditionParam_}.waitDureAlarmAvl}
</if>
<if test="conditionParamRef.waitDureAlarmAvl == null">
${_conditionType_} a.wait_dure_alarm_avl is null
</if>
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlList') and conditionParamRef.waitDureAlarmAvlList.size() > 0">
${_conditionType_} a.wait_dure_alarm_avl in
<foreach collection="conditionParamRef.waitDureAlarmAvlList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlNotList') and conditionParamRef.waitDureAlarmAvlNotList.size() > 0">
${_conditionType_} a.wait_dure_alarm_avl not in
<foreach collection="conditionParamRef.waitDureAlarmAvlNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlStart') and conditionParamRef.waitDureAlarmAvlStart != null">
${_conditionType_} a.wait_dure_alarm_avl <![CDATA[ >= ]]> #{${_conditionParam_}.waitDureAlarmAvlStart}
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlEnd') and conditionParamRef.waitDureAlarmAvlEnd != null">
${_conditionType_} a.wait_dure_alarm_avl <![CDATA[ <= ]]> #{${_conditionParam_}.waitDureAlarmAvlEnd}
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvl')">
<if test="conditionParamRef.endDureAlarmAvl != null ">
${_conditionType_} a.end_dure_alarm_avl = #{${_conditionParam_}.endDureAlarmAvl}
</if>
<if test="conditionParamRef.endDureAlarmAvl == null">
${_conditionType_} a.end_dure_alarm_avl is null
</if>
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlList') and conditionParamRef.endDureAlarmAvlList.size() > 0">
${_conditionType_} a.end_dure_alarm_avl in
<foreach collection="conditionParamRef.endDureAlarmAvlList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlNotList') and conditionParamRef.endDureAlarmAvlNotList.size() > 0">
${_conditionType_} a.end_dure_alarm_avl not in
<foreach collection="conditionParamRef.endDureAlarmAvlNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlStart') and conditionParamRef.endDureAlarmAvlStart != null">
${_conditionType_} a.end_dure_alarm_avl <![CDATA[ >= ]]> #{${_conditionParam_}.endDureAlarmAvlStart}
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlEnd') and conditionParamRef.endDureAlarmAvlEnd != null">
${_conditionType_} a.end_dure_alarm_avl <![CDATA[ <= ]]> #{${_conditionParam_}.endDureAlarmAvlEnd}
</if>
<if test="conditionParamRef.containsKey('processStatus')">
<if test="conditionParamRef.processStatus != null and conditionParamRef.processStatus != ''">
${_conditionType_} a.process_status like #{${_conditionParam_}.processStatus}
</if>
<if test="conditionParamRef.processStatus == null">
${_conditionType_} a.process_status is null
</if>
</if>
<if test="conditionParamRef.containsKey('processStatusList') and conditionParamRef.processStatusList.size() > 0">
${_conditionType_} a.process_status in
<foreach collection="conditionParamRef.processStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('processStatusNotList') and conditionParamRef.processStatusNotList.size() > 0">
${_conditionType_} a.process_status not in
<foreach collection="conditionParamRef.processStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('remark')">
<if test="conditionParamRef.remark != null and conditionParamRef.remark != ''">
${_conditionType_} a.remark like #{${_conditionParam_}.remark}
</if>
<if test="conditionParamRef.remark == null">
${_conditionType_} a.remark is null
</if>
</if>
<if test="conditionParamRef.containsKey('remarkList') and conditionParamRef.remarkList.size() > 0">
${_conditionType_} a.remark in
<foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('remarkNotList') and conditionParamRef.remarkNotList.size() > 0">
${_conditionType_} a.remark not in
<foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserId')">
<if test="conditionParamRef.createUserId != null ">
${_conditionType_} a.create_user_id = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.create_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.create_user_id in
<foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
${_conditionType_} a.create_user_id not in
<foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
${_conditionType_} a.create_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.create_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.create_time = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.create_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.create_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.create_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.update_user_id = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.update_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.update_user_id in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
${_conditionType_} a.update_user_id not in
<foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.update_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.update_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.update_time = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.update_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.update_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.update_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
field(a.personId,
<foreach collection="conditionParamRef.personIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitIdList') and conditionParamRef.waitIdList.size() > 0">
field(a.waitId,
<foreach collection="conditionParamRef.waitIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
field(a.bussinessId,
<foreach collection="conditionParamRef.bussinessIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitTimeList') and conditionParamRef.waitTimeList.size() > 0">
field(a.waitTime,
<foreach collection="conditionParamRef.waitTimeList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('endDureTimeList') and conditionParamRef.endDureTimeList.size() > 0">
field(a.endDureTime,
<foreach collection="conditionParamRef.endDureTimeList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlList') and conditionParamRef.waitDureAlarmAvlList.size() > 0">
field(a.waitDureAlarmAvl,
<foreach collection="conditionParamRef.waitDureAlarmAvlList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlList') and conditionParamRef.endDureAlarmAvlList.size() > 0">
field(a.endDureAlarmAvl,
<foreach collection="conditionParamRef.endDureAlarmAvlList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
a.${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('personIdList') and conditionParamRef.personIdList.size() > 0">
field(a.personId,
<foreach collection="conditionParamRef.personIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitIdList') and conditionParamRef.waitIdList.size() > 0">
field(a.waitId,
<foreach collection="conditionParamRef.waitIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
field(a.bussinessId,
<foreach collection="conditionParamRef.bussinessIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitTimeList') and conditionParamRef.waitTimeList.size() > 0">
field(a.waitTime,
<foreach collection="conditionParamRef.waitTimeList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('endDureTimeList') and conditionParamRef.endDureTimeList.size() > 0">
field(a.endDureTime,
<foreach collection="conditionParamRef.endDureTimeList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('waitDureAlarmAvlList') and conditionParamRef.waitDureAlarmAvlList.size() > 0">
field(a.waitDureAlarmAvl,
<foreach collection="conditionParamRef.waitDureAlarmAvlList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('endDureAlarmAvlList') and conditionParamRef.endDureAlarmAvlList.size() > 0">
field(a.endDureAlarmAvl,
<foreach collection="conditionParamRef.endDureAlarmAvlList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteId')">
a.site_id
<if test='orderCol.siteId != null and "DESC".equalsIgnoreCase(orderCol.siteId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteName')">
a.site_name
<if test='orderCol.siteName != null and "DESC".equalsIgnoreCase(orderCol.siteName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('personId')">
a.person_id
<if test='orderCol.personId != null and "DESC".equalsIgnoreCase(orderCol.personId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('waitId')">
a.wait_id
<if test='orderCol.waitId != null and "DESC".equalsIgnoreCase(orderCol.waitId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('name')">
a.name
<if test='orderCol.name != null and "DESC".equalsIgnoreCase(orderCol.name)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('contact')">
a.contact
<if test='orderCol.contact != null and "DESC".equalsIgnoreCase(orderCol.contact)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('idCard')">
a.id_card
<if test='orderCol.idCard != null and "DESC".equalsIgnoreCase(orderCol.idCard)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessId')">
a.bussiness_id
<if test='orderCol.bussinessId != null and "DESC".equalsIgnoreCase(orderCol.bussinessId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessName')">
a.bussiness_name
<if test='orderCol.bussinessName != null and "DESC".equalsIgnoreCase(orderCol.bussinessName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('windowNum')">
a.window_num
<if test='orderCol.windowNum != null and "DESC".equalsIgnoreCase(orderCol.windowNum)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('windowName')">
a.window_name
<if test='orderCol.windowName != null and "DESC".equalsIgnoreCase(orderCol.windowName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('workman')">
a.workman
<if test='orderCol.workman != null and "DESC".equalsIgnoreCase(orderCol.workman)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('service')">
a.service
<if test='orderCol.service != null and "DESC".equalsIgnoreCase(orderCol.service)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('queueNo')">
a.queueNo
<if test='orderCol.queueNo != null and "DESC".equalsIgnoreCase(orderCol.queueNo)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('takeTime')">
a.take_time
<if test='orderCol.takeTime != null and "DESC".equalsIgnoreCase(orderCol.takeTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('callTime')">
a.call_time
<if test='orderCol.callTime != null and "DESC".equalsIgnoreCase(orderCol.callTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('endTime')">
a.end_time
<if test='orderCol.endTime != null and "DESC".equalsIgnoreCase(orderCol.endTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('waitTime')">
a.wait_time
<if test='orderCol.waitTime != null and "DESC".equalsIgnoreCase(orderCol.waitTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('endDureTime')">
a.end_dure_time
<if test='orderCol.endDureTime != null and "DESC".equalsIgnoreCase(orderCol.endDureTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('waitDureAlarmAvl')">
a.wait_dure_alarm_avl
<if test='orderCol.waitDureAlarmAvl != null and "DESC".equalsIgnoreCase(orderCol.waitDureAlarmAvl)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('endDureAlarmAvl')">
a.end_dure_alarm_avl
<if test='orderCol.endDureAlarmAvl != null and "DESC".equalsIgnoreCase(orderCol.endDureAlarmAvl)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('processStatus')">
a.process_status
<if test='orderCol.processStatus != null and "DESC".equalsIgnoreCase(orderCol.processStatus)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('remark')">
a.remark
<if test='orderCol.remark != null and "DESC".equalsIgnoreCase(orderCol.remark)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createUserId')">
a.create_user_id
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.create_time
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.update_user_id
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.update_time
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
<sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()">
GROUP BY
<trim suffixOverrides="," suffix="">
<foreach collection="groupList" open="" close="" index="index" item="item" separator=",">
${item}
</foreach>
</trim>
</if>
</sql>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.message.dao.ibatis.MessageConfigDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="MessageConfigEntity" id="MessageConfigEntity-Map">
<id property="id" column="id" />
<result property="siteId" column="site_id" />
<result property="siteName" column="site_name" />
<result property="siteCode" column="site_code" />
<result property="templateId" column="template_id" />
<result property="appName" column="app_name" />
<result property="messageType" column="message_type" />
<result property="recipient" column="recipient" />
<result property="msgRecipients" column="msg_recipients" />
<result property="channel" column="channel" />
<result property="enabled" column="enabled" />
<result property="remark" column="remark" />
<result property="createUserId" column="create_user_id" />
<result property="createTime" column="create_time" />
<result property="updateUserId" column="update_user_id" />
<result property="updateTime" column="update_time" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteId') or colPickMode == 1 and data.containsKey('siteId')))">
a.site_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteName') or colPickMode == 1 and data.containsKey('siteName')))">
a.site_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteCode') or colPickMode == 1 and data.containsKey('siteCode')))">
a.site_code,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('templateId') or colPickMode == 1 and data.containsKey('templateId')))">
a.template_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appName') or colPickMode == 1 and data.containsKey('appName')))">
a.app_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('messageType') or colPickMode == 1 and data.containsKey('messageType')))">
a.message_type,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('recipient') or colPickMode == 1 and data.containsKey('recipient')))">
a.recipient,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('msgRecipients') or colPickMode == 1 and data.containsKey('msgRecipients')))">
a.msg_recipients,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('channel') or colPickMode == 1 and data.containsKey('channel')))">
a.channel,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('enabled') or colPickMode == 1 and data.containsKey('enabled')))">
a.enabled,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('remark') or colPickMode == 1 and data.containsKey('remark')))">
a.remark,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
a.create_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.create_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.update_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.update_time,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="MessageConfigEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_message_config
(site_id,site_name,site_code,template_id,app_name,message_type,recipient,msg_recipients,channel,enabled,remark,create_user_id,create_time,update_user_id,update_time)
VALUES
(#{siteId},#{siteName},#{siteCode},#{templateId},#{appName},#{messageType},#{recipient},#{msgRecipients},#{channel},#{enabled},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_message_config
(site_id,site_name,site_code,template_id,app_name,message_type,recipient,msg_recipients,channel,enabled,remark,create_user_id,create_time,update_user_id,update_time)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.siteId},#{item.siteName},#{item.siteCode},#{item.templateId},#{item.appName},#{item.messageType},#{item.recipient},#{item.msgRecipients},#{item.channel},#{item.enabled},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_message_config as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('siteId')) or (colPickMode==1 and !data.containsKey('siteId'))">
a.site_id=#{data.siteId},
</if>
<if test="(colPickMode==0 and data.containsKey('siteIdIncrement')) or (colPickMode==1 and !data.containsKey('siteIdIncrement'))">
a.site_id=ifnull(a.site_id,0) + #{data.siteIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('siteName')) or (colPickMode==1 and !data.containsKey('siteName'))">
a.site_name=#{data.siteName},
</if>
<if test="(colPickMode==0 and data.containsKey('siteCode')) or (colPickMode==1 and !data.containsKey('siteCode'))">
a.site_code=#{data.siteCode},
</if>
<if test="(colPickMode==0 and data.containsKey('templateId')) or (colPickMode==1 and !data.containsKey('templateId'))">
a.template_id=#{data.templateId},
</if>
<if test="(colPickMode==0 and data.containsKey('templateIdIncrement')) or (colPickMode==1 and !data.containsKey('templateIdIncrement'))">
a.template_id=ifnull(a.template_id,0) + #{data.templateIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('appName')) or (colPickMode==1 and !data.containsKey('appName'))">
a.app_name=#{data.appName},
</if>
<if test="(colPickMode==0 and data.containsKey('messageType')) or (colPickMode==1 and !data.containsKey('messageType'))">
a.message_type=#{data.messageType},
</if>
<if test="(colPickMode==0 and data.containsKey('recipient')) or (colPickMode==1 and !data.containsKey('recipient'))">
a.recipient=#{data.recipient},
</if>
<if test="(colPickMode==0 and data.containsKey('msgRecipients')) or (colPickMode==1 and !data.containsKey('msgRecipients'))">
a.msg_recipients=#{data.msgRecipients},
</if>
<if test="(colPickMode==0 and data.containsKey('channel')) or (colPickMode==1 and !data.containsKey('channel'))">
a.channel=#{data.channel},
</if>
<if test="(colPickMode==0 and data.containsKey('enabled')) or (colPickMode==1 and !data.containsKey('enabled'))">
a.enabled=#{data.enabled},
</if>
<if test="(colPickMode==0 and data.containsKey('enabledIncrement')) or (colPickMode==1 and !data.containsKey('enabledIncrement'))">
a.enabled=ifnull(a.enabled,0) + #{data.enabledIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('remark')) or (colPickMode==1 and !data.containsKey('remark'))">
a.remark=#{data.remark},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserId')) or (colPickMode==1 and !data.containsKey('createUserId'))">
a.create_user_id=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.create_user_id=ifnull(a.create_user_id,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.create_time=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.update_user_id=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.update_user_id=ifnull(a.update_user_id,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.update_time=#{data.updateTime},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_message_config as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="site_id=(case" suffix="ELSE site_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('siteId')) or (colPickMode==1 and !item.containsKey('siteId'))">
when a.id=#{item.id} then #{item.siteId}
</when>
<when test="(colPickMode==0 and item.containsKey('siteIdIncrement')) or (colPickMode==1 and !item.containsKey('siteIdIncrement'))">
when a.id=#{item.id} then ifnull(a.site_id,0) + #{item.siteIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="site_name=(case" suffix="ELSE site_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteName')) or (colPickMode==1 and !item.containsKey('siteName'))">
when a.id=#{item.id} then #{item.siteName}
</if>
</foreach>
</trim>
<trim prefix="site_code=(case" suffix="ELSE site_code end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteCode')) or (colPickMode==1 and !item.containsKey('siteCode'))">
when a.id=#{item.id} then #{item.siteCode}
</if>
</foreach>
</trim>
<trim prefix="template_id=(case" suffix="ELSE template_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('templateId')) or (colPickMode==1 and !item.containsKey('templateId'))">
when a.id=#{item.id} then #{item.templateId}
</when>
<when test="(colPickMode==0 and item.containsKey('templateIdIncrement')) or (colPickMode==1 and !item.containsKey('templateIdIncrement'))">
when a.id=#{item.id} then ifnull(a.template_id,0) + #{item.templateIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="app_name=(case" suffix="ELSE app_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('appName')) or (colPickMode==1 and !item.containsKey('appName'))">
when a.id=#{item.id} then #{item.appName}
</if>
</foreach>
</trim>
<trim prefix="message_type=(case" suffix="ELSE message_type end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('messageType')) or (colPickMode==1 and !item.containsKey('messageType'))">
when a.id=#{item.id} then #{item.messageType}
</if>
</foreach>
</trim>
<trim prefix="recipient=(case" suffix="ELSE recipient end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('recipient')) or (colPickMode==1 and !item.containsKey('recipient'))">
when a.id=#{item.id} then #{item.recipient}
</if>
</foreach>
</trim>
<trim prefix="msg_recipients=(case" suffix="ELSE msg_recipients end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('msgRecipients')) or (colPickMode==1 and !item.containsKey('msgRecipients'))">
when a.id=#{item.id} then #{item.msgRecipients}
</if>
</foreach>
</trim>
<trim prefix="channel=(case" suffix="ELSE channel end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('channel')) or (colPickMode==1 and !item.containsKey('channel'))">
when a.id=#{item.id} then #{item.channel}
</if>
</foreach>
</trim>
<trim prefix="enabled=(case" suffix="ELSE enabled end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('enabled')) or (colPickMode==1 and !item.containsKey('enabled'))">
when a.id=#{item.id} then #{item.enabled}
</when>
<when test="(colPickMode==0 and item.containsKey('enabledIncrement')) or (colPickMode==1 and !item.containsKey('enabledIncrement'))">
when a.id=#{item.id} then ifnull(a.enabled,0) + #{item.enabledIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="remark=(case" suffix="ELSE remark end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
when a.id=#{item.id} then #{item.remark}
</if>
</foreach>
</trim>
<trim prefix="create_user_id=(case" suffix="ELSE create_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.id=#{item.id} then #{item.createUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.create_user_id,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="create_time=(case" suffix="ELSE create_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="update_user_id=(case" suffix="ELSE update_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.update_user_id,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="update_time=(case" suffix="ELSE update_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="MessageConfigEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_message_config as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete from mortals_xhx_message_config as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_message_config where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_message_config where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_message_config where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_message_config as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="MessageConfigEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_message_config as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
<include refid="_orderCols_"/>
</select>
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_message_config as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</select>
<!-- 条件映射 -->
<sql id="_condition_">
<if test="condition != null and !condition.isEmpty()">
<!-- 条件映射-普通条件 -->
<include refid="_condition_param_">
<property name="_conditionParam_" value="condition"/>
<property name="_conditionType_" value="and"/>
</include>
<!-- 条件映射-集合之间使用AND,集合中元素使用OR-(list[0].1 or list[0].2) and (list[1].3 or list[1].4) -->
<if test="condition.containsKey('andConditionList') and !condition.andConditionList.isEmpty()">
and
<foreach collection="condition.andConditionList" open="(" close=")" index="index" item="andCondition" separator=" and ">
<trim prefixOverrides="or" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="andCondition"/>
<property name="_conditionType_" value="or"/>
</include>
</trim>
</foreach>
</if>
<!-- 条件映射-集合之间使用OR,集合中元素使用AND-(list[0].1 and list[0].2) or (list[1].3 and list[1].4) -->
<if test="condition.containsKey('orConditionList') and !condition.orConditionList.isEmpty()">
and
<foreach collection="condition.orConditionList" open="(" close=")" index="index" item="orCondition" separator=" or ">
<trim prefixOverrides="and" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="orCondition"/>
<property name="_conditionType_" value="and"/>
</include>
</trim>
</foreach>
</if>
</if>
</sql>
<!-- 条件映射-代参数 -->
<sql id="_condition_param_">
<bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="permissionSql != null and permissionSql != ''">
${permissionSql}
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null">
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
</if>
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('siteId')">
<if test="conditionParamRef.siteId != null ">
${_conditionType_} a.site_id = #{${_conditionParam_}.siteId}
</if>
<if test="conditionParamRef.siteId == null">
${_conditionType_} a.site_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
${_conditionType_} a.site_id in
<foreach collection="conditionParamRef.siteIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdNotList') and conditionParamRef.siteIdNotList.size() > 0">
${_conditionType_} a.site_id not in
<foreach collection="conditionParamRef.siteIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdStart') and conditionParamRef.siteIdStart != null">
${_conditionType_} a.site_id <![CDATA[ >= ]]> #{${_conditionParam_}.siteIdStart}
</if>
<if test="conditionParamRef.containsKey('siteIdEnd') and conditionParamRef.siteIdEnd != null">
${_conditionType_} a.site_id <![CDATA[ <= ]]> #{${_conditionParam_}.siteIdEnd}
</if>
<if test="conditionParamRef.containsKey('siteName')">
<if test="conditionParamRef.siteName != null and conditionParamRef.siteName != ''">
${_conditionType_} a.site_name like #{${_conditionParam_}.siteName}
</if>
<if test="conditionParamRef.siteName == null">
${_conditionType_} a.site_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteNameList') and conditionParamRef.siteNameList.size() > 0">
${_conditionType_} a.site_name in
<foreach collection="conditionParamRef.siteNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteNameNotList') and conditionParamRef.siteNameNotList.size() > 0">
${_conditionType_} a.site_name not in
<foreach collection="conditionParamRef.siteNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteCode')">
<if test="conditionParamRef.siteCode != null and conditionParamRef.siteCode != ''">
${_conditionType_} a.site_code like #{${_conditionParam_}.siteCode}
</if>
<if test="conditionParamRef.siteCode == null">
${_conditionType_} a.site_code is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteCodeList') and conditionParamRef.siteCodeList.size() > 0">
${_conditionType_} a.site_code in
<foreach collection="conditionParamRef.siteCodeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteCodeNotList') and conditionParamRef.siteCodeNotList.size() > 0">
${_conditionType_} a.site_code not in
<foreach collection="conditionParamRef.siteCodeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('templateId')">
<if test="conditionParamRef.templateId != null ">
${_conditionType_} a.template_id = #{${_conditionParam_}.templateId}
</if>
<if test="conditionParamRef.templateId == null">
${_conditionType_} a.template_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('templateIdList') and conditionParamRef.templateIdList.size() > 0">
${_conditionType_} a.template_id in
<foreach collection="conditionParamRef.templateIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('templateIdNotList') and conditionParamRef.templateIdNotList.size() > 0">
${_conditionType_} a.template_id not in
<foreach collection="conditionParamRef.templateIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('templateIdStart') and conditionParamRef.templateIdStart != null">
${_conditionType_} a.template_id <![CDATA[ >= ]]> #{${_conditionParam_}.templateIdStart}
</if>
<if test="conditionParamRef.containsKey('templateIdEnd') and conditionParamRef.templateIdEnd != null">
${_conditionType_} a.template_id <![CDATA[ <= ]]> #{${_conditionParam_}.templateIdEnd}
</if>
<if test="conditionParamRef.containsKey('appName')">
<if test="conditionParamRef.appName != null and conditionParamRef.appName != ''">
${_conditionType_} a.app_name like #{${_conditionParam_}.appName}
</if>
<if test="conditionParamRef.appName == null">
${_conditionType_} a.app_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('appNameList') and conditionParamRef.appNameList.size() > 0">
${_conditionType_} a.app_name in
<foreach collection="conditionParamRef.appNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('appNameNotList') and conditionParamRef.appNameNotList.size() > 0">
${_conditionType_} a.app_name not in
<foreach collection="conditionParamRef.appNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('messageType')">
<if test="conditionParamRef.messageType != null and conditionParamRef.messageType != ''">
${_conditionType_} a.message_type like #{${_conditionParam_}.messageType}
</if>
<if test="conditionParamRef.messageType == null">
${_conditionType_} a.message_type is null
</if>
</if>
<if test="conditionParamRef.containsKey('messageTypeList') and conditionParamRef.messageTypeList.size() > 0">
${_conditionType_} a.message_type in
<foreach collection="conditionParamRef.messageTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('messageTypeNotList') and conditionParamRef.messageTypeNotList.size() > 0">
${_conditionType_} a.message_type not in
<foreach collection="conditionParamRef.messageTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('recipient')">
<if test="conditionParamRef.recipient != null and conditionParamRef.recipient != ''">
${_conditionType_} a.recipient like #{${_conditionParam_}.recipient}
</if>
<if test="conditionParamRef.recipient == null">
${_conditionType_} a.recipient is null
</if>
</if>
<if test="conditionParamRef.containsKey('recipientList') and conditionParamRef.recipientList.size() > 0">
${_conditionType_} a.recipient in
<foreach collection="conditionParamRef.recipientList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('recipientNotList') and conditionParamRef.recipientNotList.size() > 0">
${_conditionType_} a.recipient not in
<foreach collection="conditionParamRef.recipientNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgRecipients')">
<if test="conditionParamRef.msgRecipients != null and conditionParamRef.msgRecipients != ''">
${_conditionType_} a.msg_recipients like #{${_conditionParam_}.msgRecipients}
</if>
<if test="conditionParamRef.msgRecipients == null">
${_conditionType_} a.msg_recipients is null
</if>
</if>
<if test="conditionParamRef.containsKey('msgRecipientsList') and conditionParamRef.msgRecipientsList.size() > 0">
${_conditionType_} a.msg_recipients in
<foreach collection="conditionParamRef.msgRecipientsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgRecipientsNotList') and conditionParamRef.msgRecipientsNotList.size() > 0">
${_conditionType_} a.msg_recipients not in
<foreach collection="conditionParamRef.msgRecipientsNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('channel')">
<if test="conditionParamRef.channel != null and conditionParamRef.channel != ''">
${_conditionType_} a.channel like #{${_conditionParam_}.channel}
</if>
<if test="conditionParamRef.channel == null">
${_conditionType_} a.channel is null
</if>
</if>
<if test="conditionParamRef.containsKey('channelList') and conditionParamRef.channelList.size() > 0">
${_conditionType_} a.channel in
<foreach collection="conditionParamRef.channelList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('channelNotList') and conditionParamRef.channelNotList.size() > 0">
${_conditionType_} a.channel not in
<foreach collection="conditionParamRef.channelNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabled')">
<if test="conditionParamRef.enabled != null ">
${_conditionType_} a.enabled = #{${_conditionParam_}.enabled}
</if>
<if test="conditionParamRef.enabled == null">
${_conditionType_} a.enabled is null
</if>
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
${_conditionType_} a.enabled in
<foreach collection="conditionParamRef.enabledList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabledNotList') and conditionParamRef.enabledNotList.size() > 0">
${_conditionType_} a.enabled not in
<foreach collection="conditionParamRef.enabledNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabledStart') and conditionParamRef.enabledStart != null">
${_conditionType_} a.enabled <![CDATA[ >= ]]> #{${_conditionParam_}.enabledStart}
</if>
<if test="conditionParamRef.containsKey('enabledEnd') and conditionParamRef.enabledEnd != null">
${_conditionType_} a.enabled <![CDATA[ <= ]]> #{${_conditionParam_}.enabledEnd}
</if>
<if test="conditionParamRef.containsKey('remark')">
<if test="conditionParamRef.remark != null and conditionParamRef.remark != ''">
${_conditionType_} a.remark like #{${_conditionParam_}.remark}
</if>
<if test="conditionParamRef.remark == null">
${_conditionType_} a.remark is null
</if>
</if>
<if test="conditionParamRef.containsKey('remarkList') and conditionParamRef.remarkList.size() > 0">
${_conditionType_} a.remark in
<foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('remarkNotList') and conditionParamRef.remarkNotList.size() > 0">
${_conditionType_} a.remark not in
<foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserId')">
<if test="conditionParamRef.createUserId != null ">
${_conditionType_} a.create_user_id = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.create_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.create_user_id in
<foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
${_conditionType_} a.create_user_id not in
<foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
${_conditionType_} a.create_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.create_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.create_time = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.create_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.create_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.create_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.update_user_id = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.update_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.update_user_id in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
${_conditionType_} a.update_user_id not in
<foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.update_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.update_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.update_time = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.update_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.update_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.update_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('templateIdList') and conditionParamRef.templateIdList.size() > 0">
field(a.templateId,
<foreach collection="conditionParamRef.templateIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
field(a.enabled,
<foreach collection="conditionParamRef.enabledList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
a.${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('templateIdList') and conditionParamRef.templateIdList.size() > 0">
field(a.templateId,
<foreach collection="conditionParamRef.templateIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
field(a.enabled,
<foreach collection="conditionParamRef.enabledList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteId')">
a.site_id
<if test='orderCol.siteId != null and "DESC".equalsIgnoreCase(orderCol.siteId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteName')">
a.site_name
<if test='orderCol.siteName != null and "DESC".equalsIgnoreCase(orderCol.siteName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteCode')">
a.site_code
<if test='orderCol.siteCode != null and "DESC".equalsIgnoreCase(orderCol.siteCode)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('templateId')">
a.template_id
<if test='orderCol.templateId != null and "DESC".equalsIgnoreCase(orderCol.templateId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appName')">
a.app_name
<if test='orderCol.appName != null and "DESC".equalsIgnoreCase(orderCol.appName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('messageType')">
a.message_type
<if test='orderCol.messageType != null and "DESC".equalsIgnoreCase(orderCol.messageType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('recipient')">
a.recipient
<if test='orderCol.recipient != null and "DESC".equalsIgnoreCase(orderCol.recipient)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('msgRecipients')">
a.msg_recipients
<if test='orderCol.msgRecipients != null and "DESC".equalsIgnoreCase(orderCol.msgRecipients)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('channel')">
a.channel
<if test='orderCol.channel != null and "DESC".equalsIgnoreCase(orderCol.channel)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('enabled')">
a.enabled
<if test='orderCol.enabled != null and "DESC".equalsIgnoreCase(orderCol.enabled)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('remark')">
a.remark
<if test='orderCol.remark != null and "DESC".equalsIgnoreCase(orderCol.remark)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createUserId')">
a.create_user_id
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.create_time
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.update_user_id
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.update_time
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
<sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()">
GROUP BY
<trim suffixOverrides="," suffix="">
<foreach collection="groupList" open="" close="" index="index" item="item" separator=",">
${item}
</foreach>
</trim>
</if>
</sql>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.message.dao.ibatis.MessageTaskDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="MessageTaskEntity" id="MessageTaskEntity-Map">
<id property="id" column="id" />
<result property="msgConfId" column="msg_conf_id" />
<result property="siteId" column="site_id" />
<result property="siteName" column="site_name" />
<result property="siteCode" column="site_code" />
<result property="appName" column="app_name" />
<result property="messageType" column="message_type" />
<result property="msgRecipients" column="msg_recipients" />
<result property="channel" column="channel" />
<result property="enabled" column="enabled" />
<result property="alarmTime" column="alarm_time" />
<result property="recipient" column="recipient" />
<result property="parameters" column="parameters" />
<result property="content" column="content" />
<result property="priority" column="priority" />
<result property="sendStatus" column="send_status" />
<result property="sendTime" column="send_time" />
<result property="response" column="response" />
<result property="errorCode" column="error_code" />
<result property="errorMsg" column="error_msg" />
<result property="retryCount" column="retry_count" />
<result property="createUserId" column="create_user_id" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('msgConfId') or colPickMode == 1 and data.containsKey('msgConfId')))">
a.msg_conf_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteId') or colPickMode == 1 and data.containsKey('siteId')))">
a.site_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteName') or colPickMode == 1 and data.containsKey('siteName')))">
a.site_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('siteCode') or colPickMode == 1 and data.containsKey('siteCode')))">
a.site_code,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('appName') or colPickMode == 1 and data.containsKey('appName')))">
a.app_name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('messageType') or colPickMode == 1 and data.containsKey('messageType')))">
a.message_type,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('msgRecipients') or colPickMode == 1 and data.containsKey('msgRecipients')))">
a.msg_recipients,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('channel') or colPickMode == 1 and data.containsKey('channel')))">
a.channel,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('enabled') or colPickMode == 1 and data.containsKey('enabled')))">
a.enabled,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('alarmTime') or colPickMode == 1 and data.containsKey('alarmTime')))">
a.alarm_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('recipient') or colPickMode == 1 and data.containsKey('recipient')))">
a.recipient,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('parameters') or colPickMode == 1 and data.containsKey('parameters')))">
a.parameters,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('content') or colPickMode == 1 and data.containsKey('content')))">
a.content,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('priority') or colPickMode == 1 and data.containsKey('priority')))">
a.priority,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sendStatus') or colPickMode == 1 and data.containsKey('sendStatus')))">
a.send_status,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sendTime') or colPickMode == 1 and data.containsKey('sendTime')))">
a.send_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('response') or colPickMode == 1 and data.containsKey('response')))">
a.response,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('errorCode') or colPickMode == 1 and data.containsKey('errorCode')))">
a.error_code,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('errorMsg') or colPickMode == 1 and data.containsKey('errorMsg')))">
a.error_msg,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('retryCount') or colPickMode == 1 and data.containsKey('retryCount')))">
a.retry_count,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
a.create_user_id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.create_time,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.update_time,
</if>
</trim>
</sql>
<!-- 子表所有列 -->
<sql id="_columns_sub">
<trim suffixOverrides="," suffix="">
b.id,b.site_id,b.site_name,b.site_code,b.template_id,b.app_name,b.message_type,b.recipient,b.msg_recipients,b.channel,b.enabled,b.remark,b.create_user_id,b.create_time,b.update_user_id,b.update_time,
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="MessageTaskEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_message_task
(msg_conf_id,site_id,site_name,site_code,app_name,message_type,msg_recipients,channel,enabled,alarm_time,recipient,parameters,content,priority,send_status,send_time,response,error_code,error_msg,retry_count,create_user_id,create_time,update_time)
VALUES
(#{msgConfId},#{siteId},#{siteName},#{siteCode},#{appName},#{messageType},#{msgRecipients},#{channel},#{enabled},#{alarmTime},#{recipient},#{parameters},#{content},#{priority},#{sendStatus},#{sendTime},#{response},#{errorCode},#{errorMsg},#{retryCount},#{createUserId},#{createTime},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_message_task
(msg_conf_id,site_id,site_name,site_code,app_name,message_type,msg_recipients,channel,enabled,alarm_time,recipient,parameters,content,priority,send_status,send_time,response,error_code,error_msg,retry_count,create_user_id,create_time,update_time)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.msgConfId},#{item.siteId},#{item.siteName},#{item.siteCode},#{item.appName},#{item.messageType},#{item.msgRecipients},#{item.channel},#{item.enabled},#{item.alarmTime},#{item.recipient},#{item.parameters},#{item.content},#{item.priority},#{item.sendStatus},#{item.sendTime},#{item.response},#{item.errorCode},#{item.errorMsg},#{item.retryCount},#{item.createUserId},#{item.createTime},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_message_task as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('msgConfId')) or (colPickMode==1 and !data.containsKey('msgConfId'))">
a.msg_conf_id=#{data.msgConfId},
</if>
<if test="(colPickMode==0 and data.containsKey('msgConfIdIncrement')) or (colPickMode==1 and !data.containsKey('msgConfIdIncrement'))">
a.msg_conf_id=ifnull(a.msg_conf_id,0) + #{data.msgConfIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('siteId')) or (colPickMode==1 and !data.containsKey('siteId'))">
a.site_id=#{data.siteId},
</if>
<if test="(colPickMode==0 and data.containsKey('siteIdIncrement')) or (colPickMode==1 and !data.containsKey('siteIdIncrement'))">
a.site_id=ifnull(a.site_id,0) + #{data.siteIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('siteName')) or (colPickMode==1 and !data.containsKey('siteName'))">
a.site_name=#{data.siteName},
</if>
<if test="(colPickMode==0 and data.containsKey('siteCode')) or (colPickMode==1 and !data.containsKey('siteCode'))">
a.site_code=#{data.siteCode},
</if>
<if test="(colPickMode==0 and data.containsKey('appName')) or (colPickMode==1 and !data.containsKey('appName'))">
a.app_name=#{data.appName},
</if>
<if test="(colPickMode==0 and data.containsKey('messageType')) or (colPickMode==1 and !data.containsKey('messageType'))">
a.message_type=#{data.messageType},
</if>
<if test="(colPickMode==0 and data.containsKey('msgRecipients')) or (colPickMode==1 and !data.containsKey('msgRecipients'))">
a.msg_recipients=#{data.msgRecipients},
</if>
<if test="(colPickMode==0 and data.containsKey('channel')) or (colPickMode==1 and !data.containsKey('channel'))">
a.channel=#{data.channel},
</if>
<if test="(colPickMode==0 and data.containsKey('enabled')) or (colPickMode==1 and !data.containsKey('enabled'))">
a.enabled=#{data.enabled},
</if>
<if test="(colPickMode==0 and data.containsKey('enabledIncrement')) or (colPickMode==1 and !data.containsKey('enabledIncrement'))">
a.enabled=ifnull(a.enabled,0) + #{data.enabledIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('alarmTime')) or (colPickMode==1 and !data.containsKey('alarmTime'))">
a.alarm_time=#{data.alarmTime},
</if>
<if test="(colPickMode==0 and data.containsKey('recipient')) or (colPickMode==1 and !data.containsKey('recipient'))">
a.recipient=#{data.recipient},
</if>
<if test="(colPickMode==0 and data.containsKey('parameters')) or (colPickMode==1 and !data.containsKey('parameters'))">
a.parameters=#{data.parameters},
</if>
<if test="(colPickMode==0 and data.containsKey('content')) or (colPickMode==1 and !data.containsKey('content'))">
a.content=#{data.content},
</if>
<if test="(colPickMode==0 and data.containsKey('priority')) or (colPickMode==1 and !data.containsKey('priority'))">
a.priority=#{data.priority},
</if>
<if test="(colPickMode==0 and data.containsKey('priorityIncrement')) or (colPickMode==1 and !data.containsKey('priorityIncrement'))">
a.priority=ifnull(a.priority,0) + #{data.priorityIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('sendStatus')) or (colPickMode==1 and !data.containsKey('sendStatus'))">
a.send_status=#{data.sendStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('sendStatusIncrement')) or (colPickMode==1 and !data.containsKey('sendStatusIncrement'))">
a.send_status=ifnull(a.send_status,0) + #{data.sendStatusIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('sendTime')) or (colPickMode==1 and !data.containsKey('sendTime'))">
a.send_time=#{data.sendTime},
</if>
<if test="(colPickMode==0 and data.containsKey('response')) or (colPickMode==1 and !data.containsKey('response'))">
a.response=#{data.response},
</if>
<if test="(colPickMode==0 and data.containsKey('errorCode')) or (colPickMode==1 and !data.containsKey('errorCode'))">
a.error_code=#{data.errorCode},
</if>
<if test="(colPickMode==0 and data.containsKey('errorMsg')) or (colPickMode==1 and !data.containsKey('errorMsg'))">
a.error_msg=#{data.errorMsg},
</if>
<if test="(colPickMode==0 and data.containsKey('retryCount')) or (colPickMode==1 and !data.containsKey('retryCount'))">
a.retry_count=#{data.retryCount},
</if>
<if test="(colPickMode==0 and data.containsKey('retryCountIncrement')) or (colPickMode==1 and !data.containsKey('retryCountIncrement'))">
a.retry_count=ifnull(a.retry_count,0) + #{data.retryCountIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserId')) or (colPickMode==1 and !data.containsKey('createUserId'))">
a.create_user_id=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.create_user_id=ifnull(a.create_user_id,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.create_time=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.update_time=#{data.updateTime},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_message_task as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="msg_conf_id=(case" suffix="ELSE msg_conf_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('msgConfId')) or (colPickMode==1 and !item.containsKey('msgConfId'))">
when a.id=#{item.id} then #{item.msgConfId}
</when>
<when test="(colPickMode==0 and item.containsKey('msgConfIdIncrement')) or (colPickMode==1 and !item.containsKey('msgConfIdIncrement'))">
when a.id=#{item.id} then ifnull(a.msg_conf_id,0) + #{item.msgConfIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="site_id=(case" suffix="ELSE site_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('siteId')) or (colPickMode==1 and !item.containsKey('siteId'))">
when a.id=#{item.id} then #{item.siteId}
</when>
<when test="(colPickMode==0 and item.containsKey('siteIdIncrement')) or (colPickMode==1 and !item.containsKey('siteIdIncrement'))">
when a.id=#{item.id} then ifnull(a.site_id,0) + #{item.siteIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="site_name=(case" suffix="ELSE site_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteName')) or (colPickMode==1 and !item.containsKey('siteName'))">
when a.id=#{item.id} then #{item.siteName}
</if>
</foreach>
</trim>
<trim prefix="site_code=(case" suffix="ELSE site_code end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('siteCode')) or (colPickMode==1 and !item.containsKey('siteCode'))">
when a.id=#{item.id} then #{item.siteCode}
</if>
</foreach>
</trim>
<trim prefix="app_name=(case" suffix="ELSE app_name end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('appName')) or (colPickMode==1 and !item.containsKey('appName'))">
when a.id=#{item.id} then #{item.appName}
</if>
</foreach>
</trim>
<trim prefix="message_type=(case" suffix="ELSE message_type end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('messageType')) or (colPickMode==1 and !item.containsKey('messageType'))">
when a.id=#{item.id} then #{item.messageType}
</if>
</foreach>
</trim>
<trim prefix="msg_recipients=(case" suffix="ELSE msg_recipients end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('msgRecipients')) or (colPickMode==1 and !item.containsKey('msgRecipients'))">
when a.id=#{item.id} then #{item.msgRecipients}
</if>
</foreach>
</trim>
<trim prefix="channel=(case" suffix="ELSE channel end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('channel')) or (colPickMode==1 and !item.containsKey('channel'))">
when a.id=#{item.id} then #{item.channel}
</if>
</foreach>
</trim>
<trim prefix="enabled=(case" suffix="ELSE enabled end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('enabled')) or (colPickMode==1 and !item.containsKey('enabled'))">
when a.id=#{item.id} then #{item.enabled}
</when>
<when test="(colPickMode==0 and item.containsKey('enabledIncrement')) or (colPickMode==1 and !item.containsKey('enabledIncrement'))">
when a.id=#{item.id} then ifnull(a.enabled,0) + #{item.enabledIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="alarm_time=(case" suffix="ELSE alarm_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('alarmTime')) or (colPickMode==1 and !item.containsKey('alarmTime'))">
when a.id=#{item.id} then #{item.alarmTime}
</if>
</foreach>
</trim>
<trim prefix="recipient=(case" suffix="ELSE recipient end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('recipient')) or (colPickMode==1 and !item.containsKey('recipient'))">
when a.id=#{item.id} then #{item.recipient}
</if>
</foreach>
</trim>
<trim prefix="parameters=(case" suffix="ELSE parameters end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('parameters')) or (colPickMode==1 and !item.containsKey('parameters'))">
when a.id=#{item.id} then #{item.parameters}
</if>
</foreach>
</trim>
<trim prefix="content=(case" suffix="ELSE content end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('content')) or (colPickMode==1 and !item.containsKey('content'))">
when a.id=#{item.id} then #{item.content}
</if>
</foreach>
</trim>
<trim prefix="priority=(case" suffix="ELSE priority end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('priority')) or (colPickMode==1 and !item.containsKey('priority'))">
when a.id=#{item.id} then #{item.priority}
</when>
<when test="(colPickMode==0 and item.containsKey('priorityIncrement')) or (colPickMode==1 and !item.containsKey('priorityIncrement'))">
when a.id=#{item.id} then ifnull(a.priority,0) + #{item.priorityIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="send_status=(case" suffix="ELSE send_status end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('sendStatus')) or (colPickMode==1 and !item.containsKey('sendStatus'))">
when a.id=#{item.id} then #{item.sendStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('sendStatusIncrement')) or (colPickMode==1 and !item.containsKey('sendStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.send_status,0) + #{item.sendStatusIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="send_time=(case" suffix="ELSE send_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sendTime')) or (colPickMode==1 and !item.containsKey('sendTime'))">
when a.id=#{item.id} then #{item.sendTime}
</if>
</foreach>
</trim>
<trim prefix="response=(case" suffix="ELSE response end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('response')) or (colPickMode==1 and !item.containsKey('response'))">
when a.id=#{item.id} then #{item.response}
</if>
</foreach>
</trim>
<trim prefix="error_code=(case" suffix="ELSE error_code end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('errorCode')) or (colPickMode==1 and !item.containsKey('errorCode'))">
when a.id=#{item.id} then #{item.errorCode}
</if>
</foreach>
</trim>
<trim prefix="error_msg=(case" suffix="ELSE error_msg end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('errorMsg')) or (colPickMode==1 and !item.containsKey('errorMsg'))">
when a.id=#{item.id} then #{item.errorMsg}
</if>
</foreach>
</trim>
<trim prefix="retry_count=(case" suffix="ELSE retry_count end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('retryCount')) or (colPickMode==1 and !item.containsKey('retryCount'))">
when a.id=#{item.id} then #{item.retryCount}
</when>
<when test="(colPickMode==0 and item.containsKey('retryCountIncrement')) or (colPickMode==1 and !item.containsKey('retryCountIncrement'))">
when a.id=#{item.id} then ifnull(a.retry_count,0) + #{item.retryCountIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="create_user_id=(case" suffix="ELSE create_user_id end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.id=#{item.id} then #{item.createUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.create_user_id,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="create_time=(case" suffix="ELSE create_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="update_time=(case" suffix="ELSE update_time end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="MessageTaskEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_message_task as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete from mortals_xhx_message_task as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_message_task where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_message_task where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_message_task where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_message_task as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="MessageTaskEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_message_task as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
<include refid="_orderCols_"/>
</select>
<!-- 获取子列表 -->
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_message_task as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</select>
<!-- 条件映射 -->
<sql id="_condition_">
<if test="condition != null and !condition.isEmpty()">
<!-- 条件映射-普通条件 -->
<include refid="_condition_param_">
<property name="_conditionParam_" value="condition"/>
<property name="_conditionType_" value="and"/>
</include>
<!-- 条件映射-集合之间使用AND,集合中元素使用OR-(list[0].1 or list[0].2) and (list[1].3 or list[1].4) -->
<if test="condition.containsKey('andConditionList') and !condition.andConditionList.isEmpty()">
and
<foreach collection="condition.andConditionList" open="(" close=")" index="index" item="andCondition" separator=" and ">
<trim prefixOverrides="or" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="andCondition"/>
<property name="_conditionType_" value="or"/>
</include>
</trim>
</foreach>
</if>
<!-- 条件映射-集合之间使用OR,集合中元素使用AND-(list[0].1 and list[0].2) or (list[1].3 and list[1].4) -->
<if test="condition.containsKey('orConditionList') and !condition.orConditionList.isEmpty()">
and
<foreach collection="condition.orConditionList" open="(" close=")" index="index" item="orCondition" separator=" or ">
<trim prefixOverrides="and" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="orCondition"/>
<property name="_conditionType_" value="and"/>
</include>
</trim>
</foreach>
</if>
</if>
</sql>
<!-- 条件映射-代参数 -->
<sql id="_condition_param_">
<bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="permissionSql != null and permissionSql != ''">
${permissionSql}
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null">
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
</if>
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('msgConfId')">
<if test="conditionParamRef.msgConfId != null ">
${_conditionType_} a.msg_conf_id = #{${_conditionParam_}.msgConfId}
</if>
<if test="conditionParamRef.msgConfId == null">
${_conditionType_} a.msg_conf_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('msgConfIdList') and conditionParamRef.msgConfIdList.size() > 0">
${_conditionType_} a.msg_conf_id in
<foreach collection="conditionParamRef.msgConfIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgConfIdNotList') and conditionParamRef.msgConfIdNotList.size() > 0">
${_conditionType_} a.msg_conf_id not in
<foreach collection="conditionParamRef.msgConfIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgConfIdStart') and conditionParamRef.msgConfIdStart != null">
${_conditionType_} a.msg_conf_id <![CDATA[ >= ]]> #{${_conditionParam_}.msgConfIdStart}
</if>
<if test="conditionParamRef.containsKey('msgConfIdEnd') and conditionParamRef.msgConfIdEnd != null">
${_conditionType_} a.msg_conf_id <![CDATA[ <= ]]> #{${_conditionParam_}.msgConfIdEnd}
</if>
<if test="conditionParamRef.containsKey('siteId')">
<if test="conditionParamRef.siteId != null ">
${_conditionType_} a.site_id = #{${_conditionParam_}.siteId}
</if>
<if test="conditionParamRef.siteId == null">
${_conditionType_} a.site_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
${_conditionType_} a.site_id in
<foreach collection="conditionParamRef.siteIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdNotList') and conditionParamRef.siteIdNotList.size() > 0">
${_conditionType_} a.site_id not in
<foreach collection="conditionParamRef.siteIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteIdStart') and conditionParamRef.siteIdStart != null">
${_conditionType_} a.site_id <![CDATA[ >= ]]> #{${_conditionParam_}.siteIdStart}
</if>
<if test="conditionParamRef.containsKey('siteIdEnd') and conditionParamRef.siteIdEnd != null">
${_conditionType_} a.site_id <![CDATA[ <= ]]> #{${_conditionParam_}.siteIdEnd}
</if>
<if test="conditionParamRef.containsKey('siteName')">
<if test="conditionParamRef.siteName != null and conditionParamRef.siteName != ''">
${_conditionType_} a.site_name like #{${_conditionParam_}.siteName}
</if>
<if test="conditionParamRef.siteName == null">
${_conditionType_} a.site_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteNameList') and conditionParamRef.siteNameList.size() > 0">
${_conditionType_} a.site_name in
<foreach collection="conditionParamRef.siteNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteNameNotList') and conditionParamRef.siteNameNotList.size() > 0">
${_conditionType_} a.site_name not in
<foreach collection="conditionParamRef.siteNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteCode')">
<if test="conditionParamRef.siteCode != null and conditionParamRef.siteCode != ''">
${_conditionType_} a.site_code like #{${_conditionParam_}.siteCode}
</if>
<if test="conditionParamRef.siteCode == null">
${_conditionType_} a.site_code is null
</if>
</if>
<if test="conditionParamRef.containsKey('siteCodeList') and conditionParamRef.siteCodeList.size() > 0">
${_conditionType_} a.site_code in
<foreach collection="conditionParamRef.siteCodeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('siteCodeNotList') and conditionParamRef.siteCodeNotList.size() > 0">
${_conditionType_} a.site_code not in
<foreach collection="conditionParamRef.siteCodeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('appName')">
<if test="conditionParamRef.appName != null and conditionParamRef.appName != ''">
${_conditionType_} a.app_name like #{${_conditionParam_}.appName}
</if>
<if test="conditionParamRef.appName == null">
${_conditionType_} a.app_name is null
</if>
</if>
<if test="conditionParamRef.containsKey('appNameList') and conditionParamRef.appNameList.size() > 0">
${_conditionType_} a.app_name in
<foreach collection="conditionParamRef.appNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('appNameNotList') and conditionParamRef.appNameNotList.size() > 0">
${_conditionType_} a.app_name not in
<foreach collection="conditionParamRef.appNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('messageType')">
<if test="conditionParamRef.messageType != null and conditionParamRef.messageType != ''">
${_conditionType_} a.message_type like #{${_conditionParam_}.messageType}
</if>
<if test="conditionParamRef.messageType == null">
${_conditionType_} a.message_type is null
</if>
</if>
<if test="conditionParamRef.containsKey('messageTypeList') and conditionParamRef.messageTypeList.size() > 0">
${_conditionType_} a.message_type in
<foreach collection="conditionParamRef.messageTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('messageTypeNotList') and conditionParamRef.messageTypeNotList.size() > 0">
${_conditionType_} a.message_type not in
<foreach collection="conditionParamRef.messageTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgRecipients')">
<if test="conditionParamRef.msgRecipients != null and conditionParamRef.msgRecipients != ''">
${_conditionType_} a.msg_recipients like #{${_conditionParam_}.msgRecipients}
</if>
<if test="conditionParamRef.msgRecipients == null">
${_conditionType_} a.msg_recipients is null
</if>
</if>
<if test="conditionParamRef.containsKey('msgRecipientsList') and conditionParamRef.msgRecipientsList.size() > 0">
${_conditionType_} a.msg_recipients in
<foreach collection="conditionParamRef.msgRecipientsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('msgRecipientsNotList') and conditionParamRef.msgRecipientsNotList.size() > 0">
${_conditionType_} a.msg_recipients not in
<foreach collection="conditionParamRef.msgRecipientsNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('channel')">
<if test="conditionParamRef.channel != null and conditionParamRef.channel != ''">
${_conditionType_} a.channel like #{${_conditionParam_}.channel}
</if>
<if test="conditionParamRef.channel == null">
${_conditionType_} a.channel is null
</if>
</if>
<if test="conditionParamRef.containsKey('channelList') and conditionParamRef.channelList.size() > 0">
${_conditionType_} a.channel in
<foreach collection="conditionParamRef.channelList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('channelNotList') and conditionParamRef.channelNotList.size() > 0">
${_conditionType_} a.channel not in
<foreach collection="conditionParamRef.channelNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabled')">
<if test="conditionParamRef.enabled != null ">
${_conditionType_} a.enabled = #{${_conditionParam_}.enabled}
</if>
<if test="conditionParamRef.enabled == null">
${_conditionType_} a.enabled is null
</if>
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
${_conditionType_} a.enabled in
<foreach collection="conditionParamRef.enabledList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabledNotList') and conditionParamRef.enabledNotList.size() > 0">
${_conditionType_} a.enabled not in
<foreach collection="conditionParamRef.enabledNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('enabledStart') and conditionParamRef.enabledStart != null">
${_conditionType_} a.enabled <![CDATA[ >= ]]> #{${_conditionParam_}.enabledStart}
</if>
<if test="conditionParamRef.containsKey('enabledEnd') and conditionParamRef.enabledEnd != null">
${_conditionType_} a.enabled <![CDATA[ <= ]]> #{${_conditionParam_}.enabledEnd}
</if>
<if test="conditionParamRef.containsKey('alarmTime')">
<if test="conditionParamRef.alarmTime != null ">
${_conditionType_} a.alarm_time = #{${_conditionParam_}.alarmTime}
</if>
<if test="conditionParamRef.alarmTime == null">
${_conditionType_} a.alarm_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('alarmTimeStart') and conditionParamRef.alarmTimeStart != null and conditionParamRef.alarmTimeStart!=''">
${_conditionType_} a.alarm_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('alarmTimeEnd') and conditionParamRef.alarmTimeEnd != null and conditionParamRef.alarmTimeEnd!=''">
${_conditionType_} a.alarm_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('recipient')">
<if test="conditionParamRef.recipient != null and conditionParamRef.recipient != ''">
${_conditionType_} a.recipient like #{${_conditionParam_}.recipient}
</if>
<if test="conditionParamRef.recipient == null">
${_conditionType_} a.recipient is null
</if>
</if>
<if test="conditionParamRef.containsKey('recipientList') and conditionParamRef.recipientList.size() > 0">
${_conditionType_} a.recipient in
<foreach collection="conditionParamRef.recipientList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('recipientNotList') and conditionParamRef.recipientNotList.size() > 0">
${_conditionType_} a.recipient not in
<foreach collection="conditionParamRef.recipientNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('parameters')">
<if test="conditionParamRef.parameters != null and conditionParamRef.parameters != ''">
${_conditionType_} a.parameters like #{${_conditionParam_}.parameters}
</if>
<if test="conditionParamRef.parameters == null">
${_conditionType_} a.parameters is null
</if>
</if>
<if test="conditionParamRef.containsKey('parametersList') and conditionParamRef.parametersList.size() > 0">
${_conditionType_} a.parameters in
<foreach collection="conditionParamRef.parametersList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('parametersNotList') and conditionParamRef.parametersNotList.size() > 0">
${_conditionType_} a.parameters not in
<foreach collection="conditionParamRef.parametersNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('content')">
<if test="conditionParamRef.content != null and conditionParamRef.content != ''">
${_conditionType_} a.content like #{${_conditionParam_}.content}
</if>
<if test="conditionParamRef.content == null">
${_conditionType_} a.content is null
</if>
</if>
<if test="conditionParamRef.containsKey('contentList') and conditionParamRef.contentList.size() > 0">
${_conditionType_} a.content in
<foreach collection="conditionParamRef.contentList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contentNotList') and conditionParamRef.contentNotList.size() > 0">
${_conditionType_} a.content not in
<foreach collection="conditionParamRef.contentNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('priority')">
<if test="conditionParamRef.priority != null ">
${_conditionType_} a.priority = #{${_conditionParam_}.priority}
</if>
<if test="conditionParamRef.priority == null">
${_conditionType_} a.priority is null
</if>
</if>
<if test="conditionParamRef.containsKey('priorityList') and conditionParamRef.priorityList.size() > 0">
${_conditionType_} a.priority in
<foreach collection="conditionParamRef.priorityList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('priorityNotList') and conditionParamRef.priorityNotList.size() > 0">
${_conditionType_} a.priority not in
<foreach collection="conditionParamRef.priorityNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('priorityStart') and conditionParamRef.priorityStart != null">
${_conditionType_} a.priority <![CDATA[ >= ]]> #{${_conditionParam_}.priorityStart}
</if>
<if test="conditionParamRef.containsKey('priorityEnd') and conditionParamRef.priorityEnd != null">
${_conditionType_} a.priority <![CDATA[ <= ]]> #{${_conditionParam_}.priorityEnd}
</if>
<if test="conditionParamRef.containsKey('sendStatus')">
<if test="conditionParamRef.sendStatus != null ">
${_conditionType_} a.send_status = #{${_conditionParam_}.sendStatus}
</if>
<if test="conditionParamRef.sendStatus == null">
${_conditionType_} a.send_status is null
</if>
</if>
<if test="conditionParamRef.containsKey('sendStatusList') and conditionParamRef.sendStatusList.size() > 0">
${_conditionType_} a.send_status in
<foreach collection="conditionParamRef.sendStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sendStatusNotList') and conditionParamRef.sendStatusNotList.size() > 0">
${_conditionType_} a.send_status not in
<foreach collection="conditionParamRef.sendStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sendStatusStart') and conditionParamRef.sendStatusStart != null">
${_conditionType_} a.send_status <![CDATA[ >= ]]> #{${_conditionParam_}.sendStatusStart}
</if>
<if test="conditionParamRef.containsKey('sendStatusEnd') and conditionParamRef.sendStatusEnd != null">
${_conditionType_} a.send_status <![CDATA[ <= ]]> #{${_conditionParam_}.sendStatusEnd}
</if>
<if test="conditionParamRef.containsKey('sendTime')">
<if test="conditionParamRef.sendTime != null ">
${_conditionType_} a.send_time = #{${_conditionParam_}.sendTime}
</if>
<if test="conditionParamRef.sendTime == null">
${_conditionType_} a.send_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('sendTimeStart') and conditionParamRef.sendTimeStart != null and conditionParamRef.sendTimeStart!=''">
${_conditionType_} a.send_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.sendTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('sendTimeEnd') and conditionParamRef.sendTimeEnd != null and conditionParamRef.sendTimeEnd!=''">
${_conditionType_} a.send_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.sendTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('response')">
<if test="conditionParamRef.response != null and conditionParamRef.response != ''">
${_conditionType_} a.response like #{${_conditionParam_}.response}
</if>
<if test="conditionParamRef.response == null">
${_conditionType_} a.response is null
</if>
</if>
<if test="conditionParamRef.containsKey('responseList') and conditionParamRef.responseList.size() > 0">
${_conditionType_} a.response in
<foreach collection="conditionParamRef.responseList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('responseNotList') and conditionParamRef.responseNotList.size() > 0">
${_conditionType_} a.response not in
<foreach collection="conditionParamRef.responseNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('errorCode')">
<if test="conditionParamRef.errorCode != null and conditionParamRef.errorCode != ''">
${_conditionType_} a.error_code like #{${_conditionParam_}.errorCode}
</if>
<if test="conditionParamRef.errorCode == null">
${_conditionType_} a.error_code is null
</if>
</if>
<if test="conditionParamRef.containsKey('errorCodeList') and conditionParamRef.errorCodeList.size() > 0">
${_conditionType_} a.error_code in
<foreach collection="conditionParamRef.errorCodeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('errorCodeNotList') and conditionParamRef.errorCodeNotList.size() > 0">
${_conditionType_} a.error_code not in
<foreach collection="conditionParamRef.errorCodeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('errorMsg')">
<if test="conditionParamRef.errorMsg != null and conditionParamRef.errorMsg != ''">
${_conditionType_} a.error_msg like #{${_conditionParam_}.errorMsg}
</if>
<if test="conditionParamRef.errorMsg == null">
${_conditionType_} a.error_msg is null
</if>
</if>
<if test="conditionParamRef.containsKey('errorMsgList') and conditionParamRef.errorMsgList.size() > 0">
${_conditionType_} a.error_msg in
<foreach collection="conditionParamRef.errorMsgList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('errorMsgNotList') and conditionParamRef.errorMsgNotList.size() > 0">
${_conditionType_} a.error_msg not in
<foreach collection="conditionParamRef.errorMsgNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('retryCount')">
<if test="conditionParamRef.retryCount != null ">
${_conditionType_} a.retry_count = #{${_conditionParam_}.retryCount}
</if>
<if test="conditionParamRef.retryCount == null">
${_conditionType_} a.retry_count is null
</if>
</if>
<if test="conditionParamRef.containsKey('retryCountList') and conditionParamRef.retryCountList.size() > 0">
${_conditionType_} a.retry_count in
<foreach collection="conditionParamRef.retryCountList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('retryCountNotList') and conditionParamRef.retryCountNotList.size() > 0">
${_conditionType_} a.retry_count not in
<foreach collection="conditionParamRef.retryCountNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('retryCountStart') and conditionParamRef.retryCountStart != null">
${_conditionType_} a.retry_count <![CDATA[ >= ]]> #{${_conditionParam_}.retryCountStart}
</if>
<if test="conditionParamRef.containsKey('retryCountEnd') and conditionParamRef.retryCountEnd != null">
${_conditionType_} a.retry_count <![CDATA[ <= ]]> #{${_conditionParam_}.retryCountEnd}
</if>
<if test="conditionParamRef.containsKey('createUserId')">
<if test="conditionParamRef.createUserId != null ">
${_conditionType_} a.create_user_id = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.create_user_id is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.create_user_id in
<foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
${_conditionType_} a.create_user_id not in
<foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
${_conditionType_} a.create_user_id <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.create_user_id <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.create_time = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.create_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.create_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.create_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.update_time = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.update_time is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.update_time <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.update_time <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('msgConfIdList') and conditionParamRef.msgConfIdList.size() > 0">
field(a.msgConfId,
<foreach collection="conditionParamRef.msgConfIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
field(a.enabled,
<foreach collection="conditionParamRef.enabledList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('priorityList') and conditionParamRef.priorityList.size() > 0">
field(a.priority,
<foreach collection="conditionParamRef.priorityList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('sendStatusList') and conditionParamRef.sendStatusList.size() > 0">
field(a.sendStatus,
<foreach collection="conditionParamRef.sendStatusList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('retryCountList') and conditionParamRef.retryCountList.size() > 0">
field(a.retryCount,
<foreach collection="conditionParamRef.retryCountList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
a.${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('msgConfIdList') and conditionParamRef.msgConfIdList.size() > 0">
field(a.msgConfId,
<foreach collection="conditionParamRef.msgConfIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('siteIdList') and conditionParamRef.siteIdList.size() > 0">
field(a.siteId,
<foreach collection="conditionParamRef.siteIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('enabledList') and conditionParamRef.enabledList.size() > 0">
field(a.enabled,
<foreach collection="conditionParamRef.enabledList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('priorityList') and conditionParamRef.priorityList.size() > 0">
field(a.priority,
<foreach collection="conditionParamRef.priorityList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('sendStatusList') and conditionParamRef.sendStatusList.size() > 0">
field(a.sendStatus,
<foreach collection="conditionParamRef.sendStatusList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('retryCountList') and conditionParamRef.retryCountList.size() > 0">
field(a.retryCount,
<foreach collection="conditionParamRef.retryCountList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('msgConfId')">
a.msg_conf_id
<if test='orderCol.msgConfId != null and "DESC".equalsIgnoreCase(orderCol.msgConfId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteId')">
a.site_id
<if test='orderCol.siteId != null and "DESC".equalsIgnoreCase(orderCol.siteId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteName')">
a.site_name
<if test='orderCol.siteName != null and "DESC".equalsIgnoreCase(orderCol.siteName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('siteCode')">
a.site_code
<if test='orderCol.siteCode != null and "DESC".equalsIgnoreCase(orderCol.siteCode)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('appName')">
a.app_name
<if test='orderCol.appName != null and "DESC".equalsIgnoreCase(orderCol.appName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('messageType')">
a.message_type
<if test='orderCol.messageType != null and "DESC".equalsIgnoreCase(orderCol.messageType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('msgRecipients')">
a.msg_recipients
<if test='orderCol.msgRecipients != null and "DESC".equalsIgnoreCase(orderCol.msgRecipients)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('channel')">
a.channel
<if test='orderCol.channel != null and "DESC".equalsIgnoreCase(orderCol.channel)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('enabled')">
a.enabled
<if test='orderCol.enabled != null and "DESC".equalsIgnoreCase(orderCol.enabled)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('alarmTime')">
a.alarm_time
<if test='orderCol.alarmTime != null and "DESC".equalsIgnoreCase(orderCol.alarmTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('recipient')">
a.recipient
<if test='orderCol.recipient != null and "DESC".equalsIgnoreCase(orderCol.recipient)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('parameters')">
a.parameters
<if test='orderCol.parameters != null and "DESC".equalsIgnoreCase(orderCol.parameters)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('content')">
a.content
<if test='orderCol.content != null and "DESC".equalsIgnoreCase(orderCol.content)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('priority')">
a.priority
<if test='orderCol.priority != null and "DESC".equalsIgnoreCase(orderCol.priority)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sendStatus')">
a.send_status
<if test='orderCol.sendStatus != null and "DESC".equalsIgnoreCase(orderCol.sendStatus)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sendTime')">
a.send_time
<if test='orderCol.sendTime != null and "DESC".equalsIgnoreCase(orderCol.sendTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('response')">
a.response
<if test='orderCol.response != null and "DESC".equalsIgnoreCase(orderCol.response)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('errorCode')">
a.error_code
<if test='orderCol.errorCode != null and "DESC".equalsIgnoreCase(orderCol.errorCode)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('errorMsg')">
a.error_msg
<if test='orderCol.errorMsg != null and "DESC".equalsIgnoreCase(orderCol.errorMsg)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('retryCount')">
a.retry_count
<if test='orderCol.retryCount != null and "DESC".equalsIgnoreCase(orderCol.retryCount)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createUserId')">
a.create_user_id
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.create_time
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.update_time
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
<sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()">
GROUP BY
<trim suffixOverrides="," suffix="">
<foreach collection="groupList" open="" close="" index="index" item="item" separator=",">
${item}
</foreach>
</trim>
</if>
</sql>
</mapper>
\ No newline at end of file
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###差评差评记录列表
POST {{baseUrl}}/cp/records/list
Content-Type: application/json
{
"page":1,
"size":10
}
###差评差评记录更新与保存
POST {{baseUrl}}/cp/records/save
Authorization: {{authToken}}
Content-Type: application/json
{
"siteId":243,
"siteName":"ceLNod",
"personId":519,
"pjId":939,
"name":"W91gAA",
"contact":"NDNB1S",
"idCard":"UOYSgk",
"windowId":981,
"windowName":"0fYwyA",
"section":"9GpWI4",
"flounum":"I2i6uz",
"assessment":"g7Gven",
"type":"u0UyMZ",
"content":"D3gaxG",
"source":"wIZQZt",
"pjTime":"1744214400000",
}
> {%
client.global.set("CpRecords_id", JSON.parse(response.body).data.id);
%}
###差评差评记录查看
GET {{baseUrl}}/cp/records/info?id=1
###差评差评记录编辑
GET {{baseUrl}}/cp/records/edit?id=1
Accept: application/json
###差评差评记录删除
GET {{baseUrl}}/cp/records/delete?id=1
Authorization: {{authToken}}
Accept: application/json
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###排号办理记录列表
POST {{baseUrl}}/dowork/records/list
Content-Type: application/json
{
"page":1,
"size":10
}
###排号办理记录更新与保存
POST {{baseUrl}}/dowork/records/save
Authorization: {{authToken}}
Content-Type: application/json
{
"siteId":873,
"siteName":"qfvvmX",
"personId":340,
"waitId":628,
"name":"9pkByv",
"contact":"vvX2rq",
"idCard":"qPy4Km",
"bussinessId":640,
"bussinessName":"74HAe0",
"windowNum":"WJnySk",
"windowName":"qPrxaB",
"workman":"p6gJ4W",
"service":"Tmv7D2",
"queueNo":"WKo5ZN",
"takeTime":"1744214400000",
"callTime":"1744214400000",
"endTime":"1744214400000",
"waitTime":881,
"endDureTime":921,
"waitDureAlarmAvl":0,
"endDureAlarmAvl":0,
"processStatus":"排队中",
"remark":"nOCFck",
}
> {%
client.global.set("DoworkRecords_id", JSON.parse(response.body).data.id);
%}
###排号办理记录查看
GET {{baseUrl}}/dowork/records/info?id=1
###排号办理记录编辑
GET {{baseUrl}}/dowork/records/edit?id=1
Accept: application/json
###排号办理记录删除
GET {{baseUrl}}/dowork/records/delete?id=1
Authorization: {{authToken}}
Accept: application/json
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###消息发送配置列表
POST {{baseUrl}}/message/config/list
Content-Type: application/json
{
"page":1,
"size":10
}
###消息发送配置更新与保存
POST {{baseUrl}}/message/config/save
Authorization: {{authToken}}
Content-Type: application/json
{
"siteId":845,
"siteName":"y8huIE",
"siteCode":"nAzU0p",
"templateId":483,
"appName":"fXKHfy",
"messageType":"等待超时预警",
"recipient":"Q4rtix",
"msgRecipients":"rbVWfh",
"channel":"SMS",
"enabled":1,
"remark":"V13NGS",
}
> {%
client.global.set("MessageConfig_id", JSON.parse(response.body).data.id);
%}
###消息发送配置查看
GET {{baseUrl}}/message/config/info?id=1
###消息发送配置编辑
GET {{baseUrl}}/message/config/edit?id=1
Accept: application/json
###消息发送配置删除
GET {{baseUrl}}/message/config/delete?id=1
Authorization: {{authToken}}
Accept: application/json
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###消息任务列表
POST {{baseUrl}}/message/task/list
Content-Type: application/json
{
"page":1,
"size":10
}
###消息任务更新与保存
POST {{baseUrl}}/message/task/save
Authorization: {{authToken}}
Content-Type: application/json
{
"msgConfId":490,
"siteId":479,
"siteName":"ksPazI",
"siteCode":"uzgQyp",
"appName":"LK5LKd",
"messageType":"uDNxfJ",
"msgRecipients":"Nlw8Oj",
"channel":"SMS",
"enabled":1,
"alarmTime":"1744214400000",
"recipient":"4wwMMW",
"parameters":"nHW7rr",
"content":"K8fMLr",
"priority":0,
"sendStatus":0,
"sendTime":"1744214400000",
"response":"ems8ag",
"errorCode":"HoBj4l",
"errorMsg":"WrAOiN",
"retryCount":0,
}
> {%
client.global.set("MessageTask_id", JSON.parse(response.body).data.id);
%}
###消息任务查看
GET {{baseUrl}}/message/task/info?id=1
###消息任务编辑
GET {{baseUrl}}/message/task/edit?id=1
Accept: application/json
###消息任务删除
GET {{baseUrl}}/message/task/delete?id=1
Authorization: {{authToken}}
Accept: application/json
......@@ -143,6 +143,10 @@
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
</dependency>
</dependencies>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment