Commit d15dc085 authored by taosim's avatar taosim

应标功能

parent 4c36796a
/*
Navicat Premium Data Transfer
Source Server : localhost
Source Server Type : MySQL
Source Server Version : 80016
Source Host : localhost:3306
Source Schema : etl-platform
Target Server Type : MySQL
Target Server Version : 80016
File Encoding : 65001
Date: 15/07/2023 20:47:13
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for base_rule
-- ----------------------------
DROP TABLE IF EXISTS `base_rule`;
CREATE TABLE `base_rule` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则名称',
`testItem` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检测对象',
`indicators` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '检测指标(1.规范性,2.一致性,3.正确性,4.及时性)',
`type` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)',
`content` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则内容',
`description` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则描述',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据公共规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of base_rule
-- ----------------------------
INSERT INTO `base_rule` VALUES (1, '规则名称', '检测对象', '1', '1', '<p>规则描述</p>', '规则描述', '', NULL, '2023-07-15 19:39:03', NULL, NULL);
-- ----------------------------
-- Table structure for data_quality_analysis
-- ----------------------------
DROP TABLE IF EXISTS `data_quality_analysis`;
CREATE TABLE `data_quality_analysis` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`taskName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称',
`taskDescription` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务描述',
`dataSourceName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '原表',
`sourceField` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源字字段',
`targetTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '目标表',
`targetField` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '目标字段',
`type` char(2) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '分析类型(0.对比分析,1.列分析,11.列基本分析)',
`analysisObject` json NULL COMMENT '分析对象',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)',
`executionsNumber` int(10) NOT NULL DEFAULT 0 COMMENT '执行次数',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据质量分析' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for data_source
-- ----------------------------
DROP TABLE IF EXISTS `data_source`;
CREATE TABLE `data_source` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceSystem` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '来源系统',
`type` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)',
`ip` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'ip',
`port` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '端口',
`serverName` varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '服务名称',
`userName` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名',
`password` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.停用,1.启用)',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据源' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of data_source
-- ----------------------------
INSERT INTO `data_source` VALUES (2, '测试', '宜宾政务', '1', '127.0.0.1', '3306', '政务服务', 'root', '123456', '0', '', NULL, '2023-07-15 19:21:13', NULL, NULL);
-- ----------------------------
-- Table structure for database_rule
-- ----------------------------
DROP TABLE IF EXISTS `database_rule`;
CREATE TABLE `database_rule` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则名称',
`source` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源表',
`type` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)',
`expression` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'SQL表达式',
`prerequisite` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'SQL过滤条件',
`level` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '等级(1.一般,2.重要,3.严重)',
`weights` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '权重(1.一般,2.重要,3.关键指标,4.重要指标)',
`description` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '规则描述',
`dataType` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '1' COMMENT '类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.停用,1.启用)',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据库规则' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of database_rule
-- ----------------------------
INSERT INTO `database_rule` VALUES (1, '规则名称', '数据源名称', '源表', '2', '规则类型', '规则类型', '1', '1', '规则描述', '1', '1', '', NULL, '2023-07-15 18:26:12', NULL, '2023-07-15 19:41:31');
-- ----------------------------
-- Table structure for line_analysis
-- ----------------------------
DROP TABLE IF EXISTS `line_analysis`;
CREATE TABLE `line_analysis` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`taskName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称',
`taskDescription` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务描述',
`dataSourceName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源表',
`analysisObject` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分析对象',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)',
`executionsNumber` int(10) NOT NULL DEFAULT 0 COMMENT '执行次数',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据质量分析' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of line_analysis
-- ----------------------------
INSERT INTO `line_analysis` VALUES (1, '任务名称', '任务名称', '任务名称', '任务名称', '任务名称', '0', 0, '任务名称', NULL, '2023-07-15 20:41:48', NULL, NULL);
-- ----------------------------
-- Table structure for mortals_xhx_area
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_area`;
CREATE TABLE `mortals_xhx_area` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键,自增长',
`parentId` bigint(20) NULL DEFAULT NULL COMMENT '上级区域ID',
`name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区域名称',
`level` tinyint(4) NULL DEFAULT NULL COMMENT '区域级别,按所处树的节点层次',
`code` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区域编码,按全国省市编码',
`contactsPeople` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区域负责人',
`contactsMobile` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区域负责人电话',
`childSize` int(11) NULL DEFAULT 0 COMMENT '子区域数量,默认0',
`maxChildId` int(11) NULL DEFAULT 0 COMMENT '子区域的最大ID,默认0',
`status` tinyint(4) NULL DEFAULT 1 COMMENT '状态,0停用,1启用',
`remark` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户ID',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '区域信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_dept
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_dept`;
CREATE TABLE `mortals_xhx_dept` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`parentId` bigint(20) NULL DEFAULT NULL COMMENT '父id',
`ancestors` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '祖级列表',
`deptName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '部门名称',
`deptStatus` tinyint(2) NOT NULL DEFAULT 1 COMMENT '部门状态(0.停用,1.启用)',
`orderNum` int(4) NOT NULL DEFAULT 0 COMMENT '顺序',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `deptStatus`(`deptStatus`) USING BTREE,
INDEX `orderNum`(`orderNum`) USING BTREE,
INDEX `createUserId`(`createUserId`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '部门信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_idgenerator
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_idgenerator`;
CREATE TABLE `mortals_xhx_idgenerator` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`idType` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'id类型',
`idMaxValue` bigint(20) UNSIGNED NOT NULL COMMENT 'id值',
`remark` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '备注',
`versionNum` bigint(20) UNSIGNED NOT NULL DEFAULT 0 COMMENT '版本号,默认0',
`gmtModify` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '最后修改时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '主键Id生成器' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_idgenerator
-- ----------------------------
INSERT INTO `mortals_xhx_idgenerator` VALUES (1, 'INFO_VERSION_KEY', 1, '基础信息版本号生成因子', 0, '2019-04-18 18:00:00');
-- ----------------------------
-- Table structure for mortals_xhx_menu
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_menu`;
CREATE TABLE `mortals_xhx_menu` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '菜单ID,主键,自增长',
`name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '菜单名称',
`url` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '连接地址',
`parentId` bigint(20) NULL DEFAULT NULL COMMENT '父菜单ID,一级菜单的该字段值为-1',
`orderId` int(11) NULL DEFAULT NULL COMMENT '排序编号',
`status` tinyint(2) NULL DEFAULT 1 COMMENT '菜单状态,0:禁用,1:启用,默认1',
`linkType` tinyint(2) NULL DEFAULT 0 COMMENT '链接方式,0:普通,1:弹出,2:脚本(JavaScript),默认0',
`groupId` int(11) NULL DEFAULT 1 COMMENT '分组编号,使用菜单分隔符按该值分隔,默认1',
`groupName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`imgPath` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '主菜单图标,主菜单图标的css样式名',
`buttonImgPath` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '按钮图标,按钮图标的css样式名',
`imgCommPath` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '常用菜单图标,常用菜单图标的css样式名',
`commMenu` tinyint(2) NULL DEFAULT 0 COMMENT '是否常用菜单,0:非常用,1:常用,默认0',
`menuType` tinyint(2) NULL DEFAULT 0 COMMENT '菜单类型,0:主菜单,1:非主菜单(功能操作组),默认0',
`authType` tinyint(2) NULL DEFAULT 3 COMMENT '权限类型,0:无限制,1:无需登录查看,2:需要登录查看,3:需要角色权限查看,默认3',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 9114 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '菜单信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_menu
-- ----------------------------
INSERT INTO `mortals_xhx_menu` VALUES (91, '平台配置管理', '', 0, 9999, 1, 0, 0, NULL, 'setting', '', '', 0, 0, 3, NULL, NULL, '');
INSERT INTO `mortals_xhx_menu` VALUES (9001, '主页', '/index', 90, 10, 1, 0, 1, NULL, '', NULL, NULL, 0, 0, 3, '2019-02-19 16:08:09', 1, 'admin');
INSERT INTO `mortals_xhx_menu` VALUES (9101, '用户信息', '/user/list', 91, 10, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9102, '角色信息', '/role/list', 91, 20, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9104, '菜单信息', '/menu/list', 91, 40, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9105, '参数信息', '/param/list', 91, 50, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9106, '任务信息', '/task/list', 91, 60, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9107, '操作日志', '/oper/log/list', 91, 70, 1, 0, 0, NULL, NULL, NULL, NULL, 0, 0, 3, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9114, '数据质量分析', '/data/quality/analysis/list', 0, 1, 0, 0, 0, '', 'refresh', NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9115, '数据质量查探-数据定时探查', '/scheduled/task/list', 9120, 3, 1, 0, 0, '0', NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9116, '数据定时查探详情', '/scheduled/task/detail/list', 0, 1, 0, 0, 0, '', NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9117, '数据公共规则', '/base/rule/list', 0, 1, 0, 0, 0, '', NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9118, '数据库规则-数据规则库配置', '/database/rule/list', 9120, 5, 1, 0, 0, '0', NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9119, '数据源', '/data/source/list', 91, 1, 1, 0, 0, '', NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9120, '数据质量治理', '', 0, 2, 1, 0, 1, NULL, 'refresh', NULL, NULL, 0, 0, 3, '2023-07-15 16:35:15', NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9122, '数据质量查探-数据对比分析', '/quality/analysis/list', 9120, 1, 1, 0, 1, NULL, NULL, NULL, NULL, 0, 0, 3, '2023-07-15 19:26:40', NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9123, '数据质量查探-列分析 ', '/line/analysis/list', 9120, 2, 1, 0, 1, NULL, NULL, NULL, NULL, 0, 0, 3, '2023-07-15 19:28:43', NULL, NULL);
INSERT INTO `mortals_xhx_menu` VALUES (9124, ' 数据规则库-公共规则库', '/base/rule/list', 9120, 4, 1, 0, 1, NULL, NULL, NULL, NULL, 0, 0, 3, '2023-07-15 19:34:00', NULL, NULL);
-- ----------------------------
-- Table structure for mortals_xhx_notice
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_notice`;
CREATE TABLE `mortals_xhx_notice` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`title` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '标题',
`noticeType` tinyint(2) NULL DEFAULT 0 COMMENT '公告类型(0.通知,1.公告)',
`pubDeptId` bigint(20) NULL DEFAULT NULL COMMENT '发布部门id',
`pubDeptName` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '发布部门名称',
`viewPersion` tinyint(2) NOT NULL DEFAULT 0 COMMENT '查看人员(0.全部学员,1.部分学员)',
`top` tinyint(2) NOT NULL DEFAULT 0 COMMENT '是否置顶(0.否,1.是)',
`readRequest` tinyint(2) NOT NULL DEFAULT 0 COMMENT '已读要求(0. 学员进入公告详情即标记为已读)',
`noticeContent` mediumtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '公告内容',
`filePath` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公告文件路径',
`fileName` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公告文件名称',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `title`(`title`) USING BTREE,
INDEX `createUserId`(`createUserId`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '学习公告' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_notice_study
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_notice_study`;
CREATE TABLE `mortals_xhx_notice_study` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`noticeId` bigint(20) NULL DEFAULT NULL COMMENT '公告id',
`noticetType` tinyint(2) NULL DEFAULT 0 COMMENT '公告类型(0.通知,1.公告,2.行业知识,3.通用知识)',
`title` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '公告标题',
`userId` bigint(20) NULL DEFAULT NULL COMMENT '用户id',
`userName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名称',
`deptName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '所属部门',
`noticeStatus` tinyint(2) NOT NULL DEFAULT 0 COMMENT '状态(0.未读,1.已读)',
`top` tinyint(2) NOT NULL DEFAULT 0 COMMENT '是否置顶(0.否,1.是)',
`viewTime` datetime(0) NOT NULL COMMENT '查看时间',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `noticeStatus`(`noticeStatus`) USING BTREE,
INDEX `createUserId`(`createUserId`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '公告学习人员' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_oper_log
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_oper_log`;
CREATE TABLE `mortals_xhx_oper_log` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`platformMark` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '平台标识',
`userId` bigint(20) NULL DEFAULT NULL COMMENT '用户id',
`userName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名称',
`loginName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户登录名',
`requestUrl` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '请求地址',
`content` varchar(2000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作内容,记录操作具体信息,如修改前修改或的数据',
`ip` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作IP地址',
`logDate` datetime(0) NULL DEFAULT NULL COMMENT '操作时间',
`operType` tinyint(2) NULL DEFAULT NULL COMMENT '操作类型,0:新增,1:修改,2:删除',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '操作日志' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_oper_log
-- ----------------------------
INSERT INTO `mortals_xhx_oper_log` VALUES (1, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 14:28:41', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (2, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 15:29:52', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (3, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:04:23', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (4, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:07:40', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (5, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:08:32', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (6, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:12:39', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (7, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:13:04', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (8, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:13:13', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (9, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:15:56', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (10, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:23:42', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (11, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:24:56', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (12, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 16:29:07', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (13, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 17:34:45', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (14, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 17:53:21', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (15, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 18:09:10', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (16, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 18:10:13', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (17, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 18:50:22', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (18, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 18:52:22', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (19, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 19:24:13', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (20, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '0:0:0:0:0:0:0:1', '2023-07-15 20:13:30', NULL);
INSERT INTO `mortals_xhx_oper_log` VALUES (21, 'etl-manager', 1, '系统管理员', 'admin', '/etl/login/login', '用户登录系统成功!', '127.0.0.1', '2023-07-15 20:43:59', NULL);
-- ----------------------------
-- Table structure for mortals_xhx_param
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_param`;
CREATE TABLE `mortals_xhx_param` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参数名称',
`firstOrganize` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '一级组织,如:平台配置',
`secondOrganize` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '二级组织,如:基础配置',
`paramKey` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参数键,全局唯一',
`paramValue` varchar(2000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参数值',
`validStatus` tinyint(2) NULL DEFAULT 1 COMMENT '参数有效状态,0:禁用,1:启用,默认1',
`modStatus` tinyint(2) NULL DEFAULT 4 COMMENT '参数修改状态,0:隐藏,1:页面仅查看,2:页面可修改,3:页面可删除,4:页面可修改删除,默认4',
`displayType` tinyint(2) NULL DEFAULT 0 COMMENT '展现类型,0:普通文本框,1:多行文本框,2:开关,3:块输入框,默认:0',
`remark` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 33 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '参数信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_param
-- ----------------------------
INSERT INTO `mortals_xhx_param` VALUES (1, '项目类型', 'Project', 'projectType', '0', '法律法规', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (2, '项目类型', 'Project', 'projectType', '1', '业务知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (3, '项目类型', 'Project', 'projectType', '2', '行业知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (4, '项目类型', 'Project', 'projectType', '3', '通用知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (5, '是否置顶', 'Project', 'top', '0', '否', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (6, '是否置顶', 'Project', 'top', '1', '是', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (7, '已读要求', 'Project', 'readRequest', '0', '学员进入学习项目详情即标记为已读', 1, 4, 0, 'readRequest', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (8, '项目类型', 'ProjectStudy', 'projectType', '0', '法律法规', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (9, '项目类型', 'ProjectStudy', 'projectType', '1', '业务知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (10, '项目类型', 'ProjectStudy', 'projectType', '2', '行业知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (11, '项目类型', 'ProjectStudy', 'projectType', '3', '通用知识', 1, 4, 0, 'projectType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (12, '学习状态', 'ProjectStudy', 'studyStatus', '0', '未学习', 1, 4, 0, 'studyStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (13, '学习状态', 'ProjectStudy', 'studyStatus', '1', '已学习', 1, 4, 0, 'studyStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (14, '是否置顶', 'ProjectStudy', 'top', '0', '否', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (15, '是否置顶', 'ProjectStudy', 'top', '1', '是', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (16, '公告类型', 'Notice', 'noticeType', '0', '通知', 1, 4, 0, 'noticeType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (17, '公告类型', 'Notice', 'noticeType', '1', '公告', 1, 4, 0, 'noticeType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (18, '查看人员', 'Notice', 'viewPersion', '0', '全部学员', 1, 4, 0, 'viewPersion', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (19, '查看人员', 'Notice', 'viewPersion', '1', '部分学员', 1, 4, 0, 'viewPersion', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (20, '是否置顶', 'Notice', 'top', '0', '否', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (21, '是否置顶', 'Notice', 'top', '1', '是', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (22, '已读要求', 'Notice', 'readRequest', '0', '学员进入公告详情即标记为已读', 1, 4, 0, 'readRequest', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (23, '公告类型', 'NoticeStudy', 'noticetType', '0', '通知', 1, 4, 0, 'noticetType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (24, '公告类型', 'NoticeStudy', 'noticetType', '1', '公告', 1, 4, 0, 'noticetType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (25, '公告类型', 'NoticeStudy', 'noticetType', '2', '行业知识', 1, 4, 0, 'noticetType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (26, '公告类型', 'NoticeStudy', 'noticetType', '3', '通用知识', 1, 4, 0, 'noticetType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (27, '状态', 'NoticeStudy', 'noticeStatus', '0', '未读', 1, 4, 0, 'noticeStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (28, '状态', 'NoticeStudy', 'noticeStatus', '1', '已读', 1, 4, 0, 'noticeStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (29, '是否置顶', 'NoticeStudy', 'top', '0', '否', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (30, '是否置顶', 'NoticeStudy', 'top', '1', '是', 1, 4, 0, 'top', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (31, '部门状态', 'Dept', 'deptStatus', '0', '停用', 1, 4, 0, 'deptStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (32, '部门状态', 'Dept', 'deptStatus', '1', '启用', 1, 4, 0, 'deptStatus', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (84, '数据源类型', 'DataSource', 'type', '1', 'MySQL', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (85, '数据源类型', 'DataSource', 'type', '2', 'SQLServer', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (86, '数据源类型', 'DataSource', 'type', '3', 'Oracle', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (87, '数据源类型', 'DataSource', 'type', '4', 'PostgreSQL', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (88, '数据源类型', 'DataSource', 'type', '5', 'MongoDB', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (89, '数据源类型', 'DataSource', 'type', '6', 'Redis', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (90, '数据源类型', 'DataSource', 'type', '7', '其他', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (91, '任务状态', 'DataSource', 'statuses', '0', '停用', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (92, '任务状态', 'DataSource', 'statuses', '1', '启用', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (93, '规则类型', 'DatabaseRule', 'type', '1', 'SQL规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (94, '规则类型', 'DatabaseRule', 'type', '2', '正则规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (95, '规则类型', 'DatabaseRule', 'type', '3', '值域规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (96, '规则类型', 'DatabaseRule', 'type', '4', '标准包', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (97, '等级', 'DatabaseRule', 'level', '1', '一般', 1, 4, 0, 'level', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (98, '等级', 'DatabaseRule', 'level', '2', '重要', 1, 4, 0, 'level', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (99, '等级', 'DatabaseRule', 'level', '3', '严重', 1, 4, 0, 'level', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (100, '权重', 'DatabaseRule', 'weights', '1', '一般', 1, 4, 0, 'weights', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (101, '权重', 'DatabaseRule', 'weights', '2', '重要', 1, 4, 0, 'weights', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (102, '权重', 'DatabaseRule', 'weights', '3', '关键指标', 1, 4, 0, 'weights', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (103, '权重', 'DatabaseRule', 'weights', '4', '重要指标', 1, 4, 0, 'weights', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (104, '类型', 'DatabaseRule', 'type', '1', '规范性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (105, '类型', 'DatabaseRule', 'type', '2', '一致性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (106, '类型', 'DatabaseRule', 'type', '3', '准确性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (107, '类型', 'DatabaseRule', 'type', '4', '及时性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (108, '类型', 'DatabaseRule', 'type', '5', '关联性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (109, '类型', 'DatabaseRule', 'type', '6', '完整性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (110, '类型', 'DatabaseRule', 'type', '7', '7.重复性', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (111, '任务状态', 'DatabaseRule', 'statuses', '0', '停用', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (112, '任务状态', 'DatabaseRule', 'statuses', '1', '启用', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (113, '检测指标', 'BaseRule', 'indicators', '1', '规范性', 1, 4, 0, 'indicators', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (114, '检测指标', 'BaseRule', 'indicators', '2', '一致性', 1, 4, 0, 'indicators', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (115, '检测指标', 'BaseRule', 'indicators', '3', '正确性', 1, 4, 0, 'indicators', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (116, '检测指标', 'BaseRule', 'indicators', '4', '及时性', 1, 4, 0, 'indicators', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (117, '规则类型', 'BaseRule', 'type', '1', 'SQL规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (118, '规则类型', 'BaseRule', 'type', '2', '正则规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (119, '规则类型', 'BaseRule', 'type', '3', '值域规则', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (120, '规则类型', 'BaseRule', 'type', '4', '标准包', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (121, '定时类型', 'ScheduledTask', 'type', '1', '年', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (122, '定时类型', 'ScheduledTask', 'type', '2', '月', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (123, '定时类型', 'ScheduledTask', 'type', '3', '日', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (124, '任务状态', 'ScheduledTask', 'statuses', '0', '新建', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (125, '任务状态', 'ScheduledTask', 'statuses', '1', '执行中', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (126, '任务状态', 'ScheduledTask', 'statuses', '2', '执行成功', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (127, '任务状态', 'ScheduledTask', 'statuses', '3', '执行失败', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (128, '分析类型', 'DataQualityAnalysis', 'type', '0', '对比分析', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (129, '分析类型', 'DataQualityAnalysis', 'type', '1', '列分析', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (130, '分析类型', 'DataQualityAnalysis', 'type', '11', '列基本分析', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (131, '任务状态', 'DataQualityAnalysis', 'statuses', '0', '新建', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (132, '任务状态', 'DataQualityAnalysis', 'statuses', '1', '执行中', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (133, '任务状态', 'DataQualityAnalysis', 'statuses', '2', '执行成功', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (134, '任务状态', 'DataQualityAnalysis', 'statuses', '3', '执行失败', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (135, '任务状态', 'QualityAnalysis', 'statuses', '0', '新建', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (136, '任务状态', 'QualityAnalysis', 'statuses', '1', '执行中', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (137, '任务状态', 'QualityAnalysis', 'statuses', '2', '执行成功', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (138, '任务状态', 'QualityAnalysis', 'statuses', '3', '执行失败', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (139, '任务状态', 'LineAnalysis', 'statuses', '0', '新建', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (140, '任务状态', 'LineAnalysis', 'statuses', '1', '执行中', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (141, '任务状态', 'LineAnalysis', 'statuses', '2', '执行成功', 1, 4, 0, 'statuses', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (142, '任务状态', 'LineAnalysis', 'statuses', '3', '执行失败', 1, 4, 0, 'statuses', NULL, NULL, NULL);
-- ----------------------------
-- Table structure for mortals_xhx_project
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_project`;
CREATE TABLE `mortals_xhx_project` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`title` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '标题',
`projectType` tinyint(2) NULL DEFAULT 0 COMMENT '项目类型(0.法律法规,1.业务知识,2.行业知识,3.通用知识)',
`projectStartTime` datetime(0) NOT NULL COMMENT '开始时间',
`projectEndTime` datetime(0) NOT NULL COMMENT '结束时间',
`top` tinyint(2) NOT NULL DEFAULT 0 COMMENT '是否置顶(0.否,1.是)',
`readRequest` tinyint(2) NOT NULL DEFAULT 0 COMMENT '已读要求(0. 学员进入学习项目详情即标记为已读)',
`studyContent` mediumtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '学习内容',
`filePath` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '文件路径',
`fileName` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '文件名称',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `title`(`title`) USING BTREE,
INDEX `projectType`(`projectType`) USING BTREE,
INDEX `createUserId`(`createUserId`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '学习项目' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_project_study
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_project_study`;
CREATE TABLE `mortals_xhx_project_study` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`projectId` bigint(20) NULL DEFAULT NULL COMMENT '项目id',
`projectType` tinyint(2) NULL DEFAULT 0 COMMENT '项目类型(0.法律法规,1.业务知识,2.行业知识,3.通用知识)',
`title` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '项目名称',
`userId` bigint(20) NULL DEFAULT NULL COMMENT '用户id',
`userName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名称',
`deptName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '所属部门',
`studyStatus` tinyint(2) NOT NULL DEFAULT 0 COMMENT '学习状态(0.未学习,1.已学习)',
`top` tinyint(2) NOT NULL DEFAULT 0 COMMENT '是否置顶(0.否,1.是)',
`studyTime` datetime(0) NOT NULL COMMENT '学习时间',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `title`(`title`) USING BTREE,
INDEX `studyStatus`(`studyStatus`) USING BTREE,
INDEX `createUserId`(`createUserId`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '项目学习人员' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_resource
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_resource`;
CREATE TABLE `mortals_xhx_resource` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '菜单ID,主键,自增长',
`name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '名称',
`url` varchar(2000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '连接地址,多个地址以逗号分隔',
`authType` tinyint(2) NULL DEFAULT 3 COMMENT '权限类型,0:无限制,1:无需登录查看,2:需要登录查看,3:需要角色权限查看,默认3',
`sourceType` tinyint(2) NULL DEFAULT 0 COMMENT '资源类型,0:系统资源,1:开放资源,默认0',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
`userType` tinyint(2) NULL DEFAULT NULL COMMENT '用户类型,0:系统用户 1:代理商用户 2:品牌商用户',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 150014 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '资源信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_resource
-- ----------------------------
INSERT INTO `mortals_xhx_resource` VALUES (101001, '系统管理-菜单管理-查看', '/menu/list,/menu/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101002, '系统管理-菜单管理-维护', '/menu/add,/menu/edit,/menu/delete,/menu/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101003, '系统管理-角色管理-查看', '/role/list,/role/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101004, '系统管理-角色管理-维护', '/role/add,/role/edit,/role/save,/role/delete,/role/auth/list,/role/auth/distributionSource,/role/user/distributionUser,/user/list,/role/user/list,/role/user/distributionUser', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101005, '系统管理-用户管理-查看', '/user/list,/user/view,/role/roleNameByUserId', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101006, '系统管理-用户管理-维护', '/user/add,/user/edit,/user/delete,/user/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101007, '系统管理-任务设置-查看', '/task/list,/task/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101008, '系统管理-任务设置-维护', '/task/add,/task/edit,/task/delete,/task/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101009, '系统管理-参数设置-查看', '/param/list,/param/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101010, '系统管理-参数设置-维护', '/param/add,/param/edit,/param/delete,/param/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101011, '系统管理-资源管理-查看', '/resource/list,/resource/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101012, '系统管理-资源管理-维护', '/resource/add,/resource/edit,/resource/delete,/resource/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101013, '系统管理-操作日志-查看', '/oper/log/list,/oper/log/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101014, '系统管理-区域管理-查看', '/area/list,/area/view', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (101015, '系统管理-区域管理-维护', '/area/add,/area/edit,/area/delete,/area/save', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150000, '控制台-主页', '/index', 3, 0, '2019-06-01 13:04:18', 1, '系统管理员', NULL);
INSERT INTO `mortals_xhx_resource` VALUES (150001, '公共资源', '/area/list', 2, 0, '2019-06-01 23:56:55', 1, '系统管理员', NULL);
INSERT INTO `mortals_xhx_resource` VALUES (150002, '学习项目-菜单管理-查看', '/project/list,/project/view,/project/info,/project/export,/project/exportExcel,/project/downloadTemplate,/project/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150003, '学习项目-菜单管理-维护', '/project/add,/project/edit,/project/delete,/project/logicDelete,/project/save,/project/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150004, '项目学习人员-菜单管理-查看', '/project/study/list,/project/study/view,/project/study/info,/project/study/export,/project/study/exportExcel,/project/study/downloadTemplate,/project/study/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150005, '项目学习人员-菜单管理-维护', '/project/study/add,/project/study/edit,/project/study/delete,/project/study/logicDelete,/project/study/save,/project/study/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150006, '学习公告-菜单管理-查看', '/notice/list,/notice/view,/notice/info,/notice/export,/notice/exportExcel,/notice/downloadTemplate,/notice/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150007, '学习公告-菜单管理-维护', '/notice/add,/notice/edit,/notice/delete,/notice/logicDelete,/notice/save,/notice/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150008, '公告学习人员-菜单管理-查看', '/notice/study/list,/notice/study/view,/notice/study/info,/notice/study/export,/notice/study/exportExcel,/notice/study/downloadTemplate,/notice/study/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150009, '公告学习人员-菜单管理-维护', '/notice/study/add,/notice/study/edit,/notice/study/delete,/notice/study/logicDelete,/notice/study/save,/notice/study/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150010, '部门信息-菜单管理-查看', '/dept/list,/dept/view,/dept/info,/dept/export,/dept/exportExcel,/dept/downloadTemplate,/dept/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150011, '部门信息-菜单管理-维护', '/dept/add,/dept/edit,/dept/delete,/dept/logicDelete,/dept/save,/dept/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150012, '学习统计-菜单管理-查看', '/study/stat/list,/study/stat/view,/study/stat/info,/study/stat/export,/study/stat/exportExcel,/study/stat/downloadTemplate,/study/stat/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150013, '学习统计-菜单管理-维护', '/study/stat/add,/study/stat/edit,/study/stat/delete,/study/stat/logicDelete,/study/stat/save,/study/stat/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150014, '数据质量分析-菜单管理-查看', '/data/quality/analysis/list,/data/quality/analysis/view,/data/quality/analysis/info,/data/quality/analysis/export,/data/quality/analysis/exportExcel,/data/quality/analysis/downloadTemplate,/data/quality/analysis/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150015, '数据质量分析-菜单管理-维护', '/data/quality/analysis/add,/data/quality/analysis/edit,/data/quality/analysis/delete,/data/quality/analysis/logicDelete,/data/quality/analysis/save,/data/quality/analysis/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150016, '数据定时查探-菜单管理-查看', '/scheduled/task/list,/scheduled/task/view,/scheduled/task/info,/scheduled/task/export,/scheduled/task/exportExcel,/scheduled/task/downloadTemplate,/scheduled/task/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150017, '数据定时查探-菜单管理-维护', '/scheduled/task/add,/scheduled/task/edit,/scheduled/task/delete,/scheduled/task/logicDelete,/scheduled/task/save,/scheduled/task/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150018, '数据定时查探详情-菜单管理-查看', '/scheduled/task/detail/list,/scheduled/task/detail/view,/scheduled/task/detail/info,/scheduled/task/detail/export,/scheduled/task/detail/exportExcel,/scheduled/task/detail/downloadTemplate,/scheduled/task/detail/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150019, '数据定时查探详情-菜单管理-维护', '/scheduled/task/detail/add,/scheduled/task/detail/edit,/scheduled/task/detail/delete,/scheduled/task/detail/logicDelete,/scheduled/task/detail/save,/scheduled/task/detail/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150020, '数据公共规则-菜单管理-查看', '/base/rule/list,/base/rule/view,/base/rule/info,/base/rule/export,/base/rule/exportExcel,/base/rule/downloadTemplate,/base/rule/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150021, '数据公共规则-菜单管理-维护', '/base/rule/add,/base/rule/edit,/base/rule/delete,/base/rule/logicDelete,/base/rule/save,/base/rule/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150022, '数据库规则-菜单管理-查看', '/database/rule/list,/database/rule/view,/database/rule/info,/database/rule/export,/database/rule/exportExcel,/database/rule/downloadTemplate,/database/rule/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150023, '数据库规则-菜单管理-维护', '/database/rule/add,/database/rule/edit,/database/rule/delete,/database/rule/logicDelete,/database/rule/save,/database/rule/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150024, '数据源-菜单管理-查看', '/data/source/list,/data/source/view,/data/source/info,/data/source/export,/data/source/exportExcel,/data/source/downloadTemplate,/data/source/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (150025, '数据源-菜单管理-维护', '/data/source/add,/data/source/edit,/data/source/delete,/data/source/logicDelete,/data/source/save,/data/source/importData', 3, 0, NULL, NULL, NULL, 0);
-- ----------------------------
-- Table structure for mortals_xhx_role
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_role`;
CREATE TABLE `mortals_xhx_role` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '角色名称',
`remark` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`roleType` tinyint(2) NULL DEFAULT 2 COMMENT '角色类型,0:系统内置角色(不可删除),1:默认系统角色,2:普通角色,默认2',
`customerId` bigint(20) NULL DEFAULT NULL COMMENT '归属客户ID',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
`userType` tinyint(2) NULL DEFAULT NULL COMMENT '用户类型,0:系统用户 1:代理商用户 2:品牌商用户',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '角色信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_role
-- ----------------------------
INSERT INTO `mortals_xhx_role` VALUES (1, '管理员', '类似admin', 0, NULL, '2019-03-04 11:41:06', 1, 'admin', NULL);
-- ----------------------------
-- Table structure for mortals_xhx_role_auth
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_role_auth`;
CREATE TABLE `mortals_xhx_role_auth` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`roleId` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
`resourceId` bigint(20) NULL DEFAULT NULL COMMENT '资源ID',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '角色资源权限' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_role_user
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_role_user`;
CREATE TABLE `mortals_xhx_role_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`roleId` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
`userId` bigint(20) NULL DEFAULT NULL COMMENT '用户ID',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '角色用户' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_site
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_site`;
CREATE TABLE `mortals_xhx_site` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID,主键,自增长',
`siteName` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '站点名',
`parentId` bigint(11) NOT NULL COMMENT '父级id',
`ancestors` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '' COMMENT '祖级列表,逗号分隔',
`address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '地址',
`mobile` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '电话',
`introduce` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '单位介绍',
`workday1` tinyint(1) NULL DEFAULT NULL COMMENT '周一 1上班 0不上',
`workday2` tinyint(1) NULL DEFAULT NULL COMMENT '周二 1上班 0不上',
`workday3` tinyint(1) NULL DEFAULT NULL COMMENT '周三 1上班 0不上',
`workday4` tinyint(1) NULL DEFAULT NULL COMMENT '周四 1上班 0不上',
`workday5` tinyint(1) NULL DEFAULT NULL COMMENT '周五 1上班 0不上',
`workday6` tinyint(1) NULL DEFAULT NULL COMMENT '周六 1上班 0不上',
`workday7` tinyint(1) NULL DEFAULT NULL COMMENT '周日 1上班 0不上',
`number` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '站点编号',
`summary` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '中心介绍',
`orderNum` int(9) NULL DEFAULT 0 COMMENT '排序字段',
`status` tinyint(2) NULL DEFAULT 1 COMMENT '站点状态 ,0,停用,1,正常 默认1',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '变更时间',
`updateUser` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '变更用户loginName',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`createUser` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '创建用户loginName',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '站点信息表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_study_stat
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_study_stat`;
CREATE TABLE `mortals_xhx_study_stat` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`siteId` bigint(20) NULL DEFAULT NULL COMMENT '站点Id,来源基础服务平台',
`projectTotalCount` int(9) NULL DEFAULT 0 COMMENT '题目总数',
`projectAddCount` int(9) NULL DEFAULT 0 COMMENT '昨日新增项目数量',
`studyPersonCount` int(9) NULL DEFAULT 0 COMMENT '学习人数数量',
`studyPersonRatio` double(6, 2) NULL DEFAULT 0.00 COMMENT '学习率',
`unStudyPersonCount` int(9) NOT NULL DEFAULT 0 COMMENT '未学习人数数量',
`unStudyPersonRatio` double(6, 2) NOT NULL DEFAULT 0.00 COMMENT '未学习率',
`pushTotalCount` int(9) NOT NULL DEFAULT 0 COMMENT '今日消息推送数量',
`pushAddCount` int(9) NOT NULL DEFAULT 0 COMMENT '昨日新增减少数量',
`year` int(9) NOT NULL COMMENT '年',
`month` int(9) NOT NULL COMMENT '月',
`day` int(9) NOT NULL COMMENT '日',
`createTime` datetime(0) NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `siteId`(`siteId`) USING BTREE,
INDEX `projectTotalCount`(`projectTotalCount`) USING BTREE,
INDEX `projectAddCount`(`projectAddCount`) USING BTREE,
INDEX `unStudyPersonCount`(`unStudyPersonCount`) USING BTREE,
INDEX `unStudyPersonRatio`(`unStudyPersonRatio`) USING BTREE,
INDEX `pushTotalCount`(`pushTotalCount`) USING BTREE,
INDEX `pushAddCount`(`pushAddCount`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '学习统计' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_table_index
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_table_index`;
CREATE TABLE `mortals_xhx_table_index` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '菜单ID,主键,自增长',
`tableName` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '表名称',
`tableMark` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '表标识',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '分表索引信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_task
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_task`;
CREATE TABLE `mortals_xhx_task` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '序号,主键,自增长',
`name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '任务名称',
`taskKey` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '任务关键字,区分任务执行流程',
`status` tinyint(2) NULL DEFAULT 0 COMMENT '任务状态,0:未启动,1:执行中,默认0',
`excuteService` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '任务执行服务',
`excuteParam` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '任务执行参数',
`excuteHost` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '任务执行主机,为空表示不限制任务的执行主机,多个用逗号分隔',
`excuteStrategy` tinyint(2) NULL DEFAULT 1 COMMENT '执行策略,1:按日,2:按周,3:按月,4:按间隔时间,默认1',
`excuteDate` int(11) NULL DEFAULT 0 COMMENT '执行日期,按日:则为0;按周:则为1-7;按月:则为:1-31;按间隔时间:则为间隔时间,单位:秒;默认0',
`excuteTime` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '00' COMMENT '执行时间,格式:HH:mm,默认:00:00',
`remark` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`lastExcuteHost` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后执行主机',
`lastExcuteTime` datetime(0) NULL DEFAULT NULL COMMENT '最后执行时间',
`interimExcuteStatus` tinyint(2) NULL DEFAULT 0 COMMENT '临时执行状态,0:未启用,1:立即执行并保留,2:立即执行并删除,默认0',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '任务信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_task
-- ----------------------------
INSERT INTO `mortals_xhx_task` VALUES (2, '分表创建任务', 'tableIndexService', 0, 'tableIndexService', NULL, NULL, 1, 0, '00:30', NULL, '192.168.1.106', '2021-08-18 00:30:01', 0, '2021-08-12 11:07:23', 1, '系统管理员');
-- ----------------------------
-- Table structure for mortals_xhx_uploadfile
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_uploadfile`;
CREATE TABLE `mortals_xhx_uploadfile` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID,主键,自增长',
`fileName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '文件名称',
`filePath` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '文件路径',
`fileType` tinyint(2) NULL DEFAULT NULL COMMENT '文件类型,1 excel ,2 img,3 zip, 4 pdf',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUser` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '上传文件' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_user
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_user`;
CREATE TABLE `mortals_xhx_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID,主键,自增长',
`loginName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录名',
`loginPwd` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录密码,使用md5双次加密',
`loginLimitAddress` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录限制地址,多个IP地址用逗号分隔,可以使用IP段匹配,如:172.17.*非空:则只能该值内的IP可以登录',
`realName` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名',
`mobile` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户手机号',
`phone` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户联系电话',
`email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户邮箱',
`qq` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'QQ号码',
`userType` tinyint(2) NULL DEFAULT NULL COMMENT '用户类型(0.系统用户,1.后台管理,2.工作人员)',
`deptId` bigint(20) NULL DEFAULT NULL COMMENT '用户所属部门id',
`deptName` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属部门名称',
`siteIds` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属站点id,多个逗号分隔',
`areaCodes` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属区域code,多个逗号分隔',
`status` tinyint(2) NULL DEFAULT NULL COMMENT '用户状态(0.停用,1.正常,2.冻结,3.销户,4.离职)',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
`lastLoginTime` datetime(0) NULL DEFAULT NULL COMMENT '最后一次登录时间',
`lastLoginAddress` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后一次登录地址',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用户信息业务' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of mortals_xhx_user
-- ----------------------------
INSERT INTO `mortals_xhx_user` VALUES (1, 'admin', '43442676c74ae59f219c2d87fd6bad52', NULL, '系统管理员', '13808095770', NULL, NULL, NULL, 0, NULL, NULL, '', '', 1, '2022-06-02 09:12:26', 1, 'admin', '2022-06-02 09:12:26', '127.0.0.1');
-- ----------------------------
-- Table structure for mortals_xhx_valid_code
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_valid_code`;
CREATE TABLE `mortals_xhx_valid_code` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '菜单ID,主键,自增长',
`code` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '验证码',
`url` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '校验地址,email校验使用',
`mobile` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '校验手机号',
`email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '校验邮箱',
`type` tinyint(2) NULL DEFAULT 0 COMMENT '校验方式,0:图片校验,1:手机校验,2:邮箱校验,默认0',
`sessionId` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '会话ID',
`ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'IP地址',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`lapseTime` datetime(0) NULL DEFAULT NULL COMMENT '失效时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '验证码信息' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for quality_analysis
-- ----------------------------
DROP TABLE IF EXISTS `quality_analysis`;
CREATE TABLE `quality_analysis` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`taskName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称',
`taskDescription` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务描述',
`dataSourceName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源表',
`sourceField` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源字段',
`targetTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '目标表',
`targetField` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '目标字段',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)',
`executionsNumber` int(10) NOT NULL DEFAULT 0 COMMENT '执行次数',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据质量分析' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of quality_analysis
-- ----------------------------
INSERT INTO `quality_analysis` VALUES (1, '质量分析', '质量分析', '质量分析', '质量分析', '质量分析', '质量分析', '质量分析', '0', 0, '', NULL, '2023-07-15 20:40:55', NULL, NULL);
-- ----------------------------
-- Table structure for scheduled_task
-- ----------------------------
DROP TABLE IF EXISTS `scheduled_task`;
CREATE TABLE `scheduled_task` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`taskName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称',
`taskDescription` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务描述',
`dataSourceName` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '数据源名称',
`sourceTable` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '源表',
`sourceField` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '依据字段',
`type` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '定时类型(1.年,2.月,3.日)',
`startTime` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '开始时间',
`endTime` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '结束时间',
`statuses` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据定时查探' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of scheduled_task
-- ----------------------------
INSERT INTO `scheduled_task` VALUES (1, '任务名称', '任务描述', '数据源名称', '源表', '依据字段', '3', '开始时间', '结束时间', '1', '备注', NULL, '2023-07-15 18:12:04', NULL, '2023-07-15 18:12:50');
-- ----------------------------
-- Table structure for scheduled_task_detail
-- ----------------------------
DROP TABLE IF EXISTS `scheduled_task_detail`;
CREATE TABLE `scheduled_task_detail` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID,主键,自增长',
`taskId` bigint(20) NOT NULL COMMENT '任务主键',
`startTime` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '开始时间',
`endTime` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '结束时间',
`number` int(10) NOT NULL COMMENT '数据量',
`remark` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`updateUserId` bigint(20) NULL DEFAULT NULL COMMENT '更新用户',
`updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '数据定时查探详情' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
No preview for this file type
...@@ -40,9 +40,7 @@ ...@@ -40,9 +40,7 @@
"vue-router": "3.4.9", "vue-router": "3.4.9",
"vue-template-compiler": "^2.6.14", "vue-template-compiler": "^2.6.14",
"vue2-org-tree": "^1.3.5", "vue2-org-tree": "^1.3.5",
"vuex": "3.6.0", "vuex": "3.6.0"
"jwt-decode": "3.1.2"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "4.4.6", "@vue/cli-plugin-babel": "4.4.6",
......
...@@ -5,7 +5,7 @@ import cookie from './cookie'; ...@@ -5,7 +5,7 @@ import cookie from './cookie';
import httpErrorHandler from './httpErrorHandler'; import httpErrorHandler from './httpErrorHandler';
const instance = axios.create({ const instance = axios.create({
baseURL: '/study', baseURL: '/etl',
headers: { headers: {
post: { post: {
'Content-Type': 'application/json;charset=UTF-8', 'Content-Type': 'application/json;charset=UTF-8',
......
...@@ -70,7 +70,7 @@ export default { ...@@ -70,7 +70,7 @@ export default {
const type = urlArray.pop(); const type = urlArray.pop();
group.unshift({ group.unshift({
name: "政务在线考试学习系统" name: "政务BIG DATA数据治理系统"
}) })
if(types[type]) { if(types[type]) {
group.push({ group.push({
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<i class="el-icon-menu" @click='showMobileMenu=!showMobileMenu'> </i> <i class="el-icon-menu" @click='showMobileMenu=!showMobileMenu'> </i>
<router-link to="/"> <router-link to="/">
<img src="../assets/images/logo.png" style="margin-bottom:5px" height="40" alt=""> <img src="../assets/images/logo.png" style="margin-bottom:5px" height="40" alt="">
<b style="color:white;font-size:18px;">&nbsp;&nbsp;&nbsp; 政务在线考试学习系统 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b> <b style="color:white;font-size:18px;">&nbsp;&nbsp;&nbsp; 政务BIG DATA数据治理系统 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b>
</router-link> </router-link>
</div> </div>
......
...@@ -42,6 +42,14 @@ const router = new Router({ ...@@ -42,6 +42,14 @@ const router = new Router({
//模块配置 //模块配置
...restBuilder('dept', 'dept'), ...restBuilder('dept', 'dept'),
...restBuilder('scheduled/task', 'scheduled/task'),
...restBuilder('database/rule', 'database/rule'),
...restBuilder('base/rule', 'base/rule'),
...restBuilder('data/source', 'data/source'),
...restBuilder('quality/analysis', 'quality/analysis'),
...restBuilder('line/analysis', 'line/analysis'),
//以下为基础路由配置 //以下为基础路由配置
builder('blank', 'blank'), builder('blank', 'blank'),
......
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="规则名称" prop="name" v-model="form.name" placeholder="请输入规则名称"/>
<Field label="检测对象" prop="testItem" v-model="form.testItem" placeholder="请输入检测对象"/>
<Field label="检测指标" prop="indicators" v-model="form.indicators" type="select" :enumData="dict.indicators" placeholder="请选择检测指标"/>
<Field label="规则类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择规则类型"/>
<Field label="规则内容"><editor v-model="form.content" :min-height="256"/></Field>
<Field label="规则描述" prop="description" v-model="form.description" type="textarea" placeholder="请输入规则描述"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
import Editor from '@/components/Editor';
export default {
mixins: [form],
components: {
dialogShow ,
Editor,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据公共规则",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
name: [
{required: true,message: "请输入规则名称", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
testItem: [
{required: true,message: "请输入检测对象", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
indicators: [
{required: true,message: "请输入检测指标", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
type: [
{required: true,message: "请输入规则类型", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
content: [
{required: true,message: "请输入规则内容", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
description: [
{required: true,message: "请输入规则描述", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="base/rule/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据公共规则";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "base/rule/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据公共规则";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="base/rule/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据公共规则详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
name : "",
testItem : "",
indicators : "",
type : "",
content : "",
description : "",
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "BaseRuleList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "规则名称", prop: "name"},
{label: "检测对象", prop: "testItem"},
{label: "检测指标", prop: "indicators", formatter: this.formatter},
{label: "规则类型", prop: "type" , formatter: this.formatter},
{label: "规则描述", prop: "description"},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="规则名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.name}}
</el-descriptions-item>
<el-descriptions-item label="检测对象" label-class-name="labelClass" content-class-name="contentClass">
{{form.testItem}}
</el-descriptions-item>
<el-descriptions-item label="检测指标" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("indicators", form.indicators) }}
</el-descriptions-item>
<el-descriptions-item label="规则类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("type", form.type) }}
</el-descriptions-item>
<el-descriptions-item label="规则内容" label-class-name="labelClass" content-class-name="contentClass">
<editor v-model="form.content" :min-height="256"/>
</el-descriptions-item>
<el-descriptions-item label="规则描述" label-class-name="labelClass" content-class-name="contentClass">
{{form.description}}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
import Editor from '@/components/Editor';
export default {
mixins: [view],
components: {
Editor,
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="数据源名称" prop="name" v-model="form.name" placeholder="请输入数据源名称"/>
<Field label="来源系统" prop="sourceSystem" v-model="form.sourceSystem" placeholder="请输入来源系统"/>
<Field label="数据源类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择数据源类型"/>
<Field label="ip" prop="ip" v-model="form.ip" placeholder="请输入ip"/>
<Field label="端口" prop="port" v-model="form.port" placeholder="请输入端口"/>
<Field label="服务名称" prop="serverName" v-model="form.serverName" placeholder="请输入服务名称"/>
<Field label="用户名" prop="userName" v-model="form.userName" placeholder="请输入用户名"/>
<Field label="密码" type="password" prop="password" v-model="form.password" placeholder="请输入密码"/>
<Field label="状态" prop="statuses" v-model="form.statuses" type="radio" :enumData="dict.statuses" />
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据源",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
name: [
{required: true,message: "请输入数据源名称", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
sourceSystem: [
{required: true,message: "请输入来源系统", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
type: [
{required: true,message: "请输入数据源类型", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
ip: [
{required: true,message: "请输入ip", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
port: [
{required: true,message: "请输入端口", trigger: "blur" },
{max: 8,message: "最多只能录入8个字符",trigger: "blur",},
],
serverName: [
{required: true,message: "请输入服务名称", trigger: "blur" },
{max: 16,message: "最多只能录入16个字符",trigger: "blur",},
],
userName: [
{required: true,message: "请输入用户名", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
password: [
{required: true,message: "请输入密码", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="data/source/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据源";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "data/source/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据源";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="data/source/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据源详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
name : "",
sourceSystem : "",
type : "",
ip : "",
port : "",
serverName : "",
userName : "",
password : "",
statuses : "0",
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData"/>
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "DataSourceList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
value: true,
config: {
search: [],
columns: [
{type: "selection", width: 60},
{type: "index", label: "序号", width: 50},
{label: "数据源名称", prop: "name"},
{label: "来源系统", prop: "sourceSystem"},
{label: "数据源类型", prop: "type", formatter: this.formatter,},
{label: "ip", prop: "ip"},
{label: "端口", prop: "port"},
{label: "服务名称", prop: "serverName"},
{label: "用户名", prop: "userName"},
{
label: "状态", prop: "statuses", formatter: this.formatter
},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView}
onDel={this.toDel}/>
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="数据源名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.name}}
</el-descriptions-item>
<el-descriptions-item label="来源系统" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceSystem}}
</el-descriptions-item>
<el-descriptions-item label="数据源类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("type", form.type) }}
</el-descriptions-item>
<el-descriptions-item label="ip" label-class-name="labelClass" content-class-name="contentClass">
{{form.ip}}
</el-descriptions-item>
<el-descriptions-item label="端口" label-class-name="labelClass" content-class-name="contentClass">
{{form.port}}
</el-descriptions-item>
<el-descriptions-item label="服务名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.serverName}}
</el-descriptions-item>
<el-descriptions-item label="用户名" label-class-name="labelClass" content-class-name="contentClass">
{{form.userName}}
</el-descriptions-item>
<el-descriptions-item label="密码" label-class-name="labelClass" content-class-name="contentClass">
{{form.password}}
</el-descriptions-item>
<el-descriptions-item label="任务状态" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("statuses", form.statuses) }}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="规则名称" prop="name" v-model="form.name" placeholder="请输入规则名称"/>
<Field label="数据源名称" prop="source" v-model="form.source" placeholder="请输入数据源名称"/>
<Field label="源表" prop="sourceTable" v-model="form.sourceTable" type="textarea" placeholder="请输入源表"/>
<Field label="规则类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择规则类型"/>
<Field label="SQL表达式" prop="expression" v-model="form.expression" type="textarea" placeholder="请输入SQL表达式"/>
<Field label="SQL过滤条件" prop="prerequisite" v-model="form.prerequisite" type="textarea" placeholder="请输入SQL过滤条件"/>
<Field label="等级" prop="level" v-model="form.level" type="select" :enumData="dict.level" placeholder="请选择等级"/>
<Field label="权重" prop="weights" v-model="form.weights" type="select" :enumData="dict.weights" placeholder="请选择权重"/>
<Field label="规则描述" prop="description" v-model="form.description" type="textarea" placeholder="请输入规则描述"/>
<Field label="类型" prop="dataType" v-model="form.dataType" type="select" :enumData="dict.dataType" placeholder="请选择类型"/>
<Field label="任务状态" prop="statuses" v-model="form.statuses" type="radio" :enumData="dict.statuses" />
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据库规则",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
name: [
{required: true,message: "请输入规则名称", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
source: [
{required: true,message: "请输入数据源名称", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
sourceTable: [
{required: true,message: "请输入源表", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
type: [
{required: true,message: "请输入规则类型", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
expression: [
{required: true,message: "请输入SQL表达式", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
prerequisite: [
{required: true,message: "请输入SQL过滤条件", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
level: [
{required: true,message: "请输入等级", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
weights: [
{required: true,message: "请输入权重", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
description: [
{required: true,message: "请输入规则描述", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",},
],
dataType: [
{required: true,message: "请输入类型", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="database/rule/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据库规则";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "database/rule/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据库规则";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="database/rule/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据库规则详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
name : "",
source : "",
sourceTable : "",
type : "",
expression : "",
prerequisite : "",
level : "",
weights : "",
description : "",
dataType : "1",
statuses : "0",
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "DatabaseRuleList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "规则名称", prop: "name"},
{label: "数据源名称", prop: "source"},
{label: "源表", prop: "sourceTable"},
{label: "规则类型", prop: "type", formatter: this.formatter},
{label: "等级", prop: "level", formatter: this.formatter},
{label: "权重", prop: "weights", formatter: this.formatter},
{label: "规则描述", prop: "description"},
{label: "任务状态", prop: "statuses", formatter: this.formatter},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="规则名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.name}}
</el-descriptions-item>
<el-descriptions-item label="数据源名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.source}}
</el-descriptions-item>
<el-descriptions-item label="源表" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceTable}}
</el-descriptions-item>
<el-descriptions-item label="规则类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("type", form.type) }}
</el-descriptions-item>
<el-descriptions-item label="SQL表达式" label-class-name="labelClass" content-class-name="contentClass">
{{form.expression}}
</el-descriptions-item>
<el-descriptions-item label="SQL过滤条件" label-class-name="labelClass" content-class-name="contentClass">
{{form.prerequisite}}
</el-descriptions-item>
<el-descriptions-item label="等级" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("level", form.level) }}
</el-descriptions-item>
<el-descriptions-item label="权重" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("weights", form.weights) }}
</el-descriptions-item>
<el-descriptions-item label="规则描述" label-class-name="labelClass" content-class-name="contentClass">
{{form.description}}
</el-descriptions-item>
<el-descriptions-item label="类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("dataType", form.dataType) }}
</el-descriptions-item>
<el-descriptions-item label="任务状态" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("statuses", form.statuses) }}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="任务名称" prop="taskName" v-model="form.taskName" type="textarea" placeholder="请输入任务名称"/>
<Field label="任务描述" prop="taskDescription" v-model="form.taskDescription" type="textarea" placeholder="请输入任务描述"/>
<Field label="数据源名称" prop="dataSourceName" v-model="form.dataSourceName" type="textarea" placeholder="请输入数据源名称"/>
<Field label="源表" prop="sourceTable" v-model="form.sourceTable" type="textarea" placeholder="请输入源表"/>
<Field label="分析对象" prop="analysisObject" v-model="form.analysisObject" type="textarea" placeholder="请输入分析对象"/>
<Field label="任务状态" prop="statuses" v-model="form.statuses" type="select" :enumData="dict.statuses" placeholder="请选择任务状态"/>
<Field label="执行次数" prop="executionsNumber" v-model="form.executionsNumber" placeholder="请输入执行次数"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据质量分析",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
taskName: [
{required: true,message: "请输入任务名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
taskDescription: [
{required: true,message: "请输入任务描述", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",},
],
dataSourceName: [
{required: true,message: "请输入数据源名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
sourceTable: [
{required: true,message: "请输入源表", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
executionsNumber: [
{required: true,message: "请输入执行次数", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="line/analysis/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据质量分析";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "line/analysis/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据质量分析";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="line/analysis/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据质量分析详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
taskName : "",
taskDescription : "",
dataSourceName : "",
sourceTable : "",
analysisObject : "",
statuses : "0",
executionsNumber : 0,
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "LineAnalysisList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "任务名称", prop: "taskName"},
{label: "数据源名称", prop: "dataSourceName"},
{label: "源表", prop: "sourceTable"},
{label: "任务状态", prop: "statuses", formatter: this.formatter},
{label: "执行次数", prop: "executionsNumber"},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="任务名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskName}}
</el-descriptions-item>
<el-descriptions-item label="任务描述" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskDescription}}
</el-descriptions-item>
<el-descriptions-item label="数据源名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.dataSourceName}}
</el-descriptions-item>
<el-descriptions-item label="源表" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceTable}}
</el-descriptions-item>
<el-descriptions-item label="分析对象" label-class-name="labelClass" content-class-name="contentClass">
{{form.analysisObject}}
</el-descriptions-item>
<el-descriptions-item label="任务状态" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("statuses", form.statuses) }}
</el-descriptions-item>
<el-descriptions-item label="执行次数" label-class-name="labelClass" content-class-name="contentClass">
{{form.executionsNumber}}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class="page page-login flex flex-v"> <div class="page page-login flex flex-v">
<div class="form-wrap flex flex-1"> <div class="form-wrap flex flex-1">
<el-form @submit.prevent='onSubmit' ref="form" :model="form" label-width="80px" size="small"> <el-form @submit.prevent='onSubmit' ref="form" :model="form" label-width="80px" size="small">
<h1>政务学习平台</h1> <h1>数据治理系统</h1>
<el-form-item label="用户名"> <el-form-item label="用户名">
<el-input v-model="form.loginName"></el-input> <el-input v-model="form.loginName"></el-input>
</el-form-item> </el-form-item>
......
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="任务名称" prop="taskName" v-model="form.taskName" type="textarea" placeholder="请输入任务名称"/>
<Field label="任务描述" prop="taskDescription" v-model="form.taskDescription" type="textarea" placeholder="请输入任务描述"/>
<Field label="数据源名称" prop="dataSourceName" v-model="form.dataSourceName" type="textarea" placeholder="请输入数据源名称"/>
<Field label="源表" prop="sourceTable" v-model="form.sourceTable" type="textarea" placeholder="请输入源表"/>
<Field label="源字段" prop="sourceField" v-model="form.sourceField" type="textarea" placeholder="请输入源字段"/>
<Field label="目标表" prop="targetTable" v-model="form.targetTable" type="textarea" placeholder="请输入目标表"/>
<Field label="目标字段" prop="targetField" v-model="form.targetField" type="textarea" placeholder="请输入目标字段"/>
<Field label="任务状态" prop="statuses" v-model="form.statuses" type="select" :enumData="dict.statuses" placeholder="请选择任务状态"/>
<Field label="执行次数" prop="executionsNumber" v-model="form.executionsNumber" placeholder="请输入执行次数"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据质量分析",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
taskName: [
{required: true,message: "请输入任务名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
taskDescription: [
{required: true,message: "请输入任务描述", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",},
],
dataSourceName: [
{required: true,message: "请输入数据源名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
sourceTable: [
{required: true,message: "请输入源表", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
sourceField: [
{required: true,message: "请输入源字段", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
targetTable: [
{required: true,message: "请输入目标表", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
targetField: [
{required: true,message: "请输入目标字段", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
executionsNumber: [
{required: true,message: "请输入执行次数", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="quality/analysis/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据质量分析";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "quality/analysis/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据质量分析";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="quality/analysis/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据质量分析详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
taskName : "",
taskDescription : "",
dataSourceName : "",
sourceTable : "",
sourceField : "",
targetTable : "",
targetField : "",
statuses : "0",
executionsNumber : 0,
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "QualityAnalysisList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "任务名称", prop: "taskName"},
{label: "数据源名称", prop: "dataSourceName"},
{label: "源表", prop: "sourceTable"},
{label: "源字段", prop: "sourceField"},
{label: "目标表", prop: "targetTable"},
{label: "目标字段", prop: "targetField"},
{label: "任务状态", prop: "statuses",formatter: this.formatter},
{label: "执行次数", prop: "executionsNumber"},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="任务名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskName}}
</el-descriptions-item>
<el-descriptions-item label="任务描述" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskDescription}}
</el-descriptions-item>
<el-descriptions-item label="数据源名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.dataSourceName}}
</el-descriptions-item>
<el-descriptions-item label="源表" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceTable}}
</el-descriptions-item>
<el-descriptions-item label="源字段" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceField}}
</el-descriptions-item>
<el-descriptions-item label="目标表" label-class-name="labelClass" content-class-name="contentClass">
{{form.targetTable}}
</el-descriptions-item>
<el-descriptions-item label="目标字段" label-class-name="labelClass" content-class-name="contentClass">
{{form.targetField}}
</el-descriptions-item>
<el-descriptions-item label="任务状态" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("statuses", form.statuses) }}
</el-descriptions-item>
<el-descriptions-item label="执行次数" label-class-name="labelClass" content-class-name="contentClass">
{{form.executionsNumber}}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="任务主键" prop="taskId" v-model="form.taskId" placeholder="请输入任务主键"/>
<Field label="开始时间" prop="startTime" v-model="form.startTime" placeholder="请输入开始时间"/>
<Field label="结束时间" prop="endTime" v-model="form.endTime" placeholder="请输入结束时间"/>
<Field label="数据量" prop="number" v-model="form.number" placeholder="请输入数据量"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据定时查探详情",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
startTime: [
{required: true,message: "请输入开始时间", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
endTime: [
{required: true,message: "请输入结束时间", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
number: [
{required: true,message: "请输入数据量", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="scheduled/task/detail/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据定时查探详情";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "scheduled/task/detail/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据定时查探详情";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="scheduled/task/detail/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据定时查探详情详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
taskId : null,
startTime : "",
endTime : "",
number : null,
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "ScheduledTaskDetailList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "开始时间", prop: "startTime"},
{label: "结束时间", prop: "endTime"},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="任务主键" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskId}}
</el-descriptions-item>
<el-descriptions-item label="开始时间" label-class-name="labelClass" content-class-name="contentClass">
{{form.startTime}}
</el-descriptions-item>
<el-descriptions-item label="结束时间" label-class-name="labelClass" content-class-name="contentClass">
{{form.endTime}}
</el-descriptions-item>
<el-descriptions-item label="数据量" label-class-name="labelClass" content-class-name="contentClass">
{{form.number}}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
<template>
<!-- 弹出框表单 -->
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="任务名称" prop="taskName" v-model="form.taskName" type="textarea" placeholder="请输入任务名称"/>
<Field label="任务描述" prop="taskDescription" v-model="form.taskDescription" type="textarea" placeholder="请输入任务描述"/>
<Field label="数据源名称" prop="dataSourceName" v-model="form.dataSourceName" type="textarea" placeholder="请输入数据源名称"/>
<Field label="源表" prop="sourceTable" v-model="form.sourceTable" type="textarea" placeholder="请输入源表"/>
<Field label="依据字段" prop="sourceField" v-model="form.sourceField" type="textarea" placeholder="请输入依据字段"/>
<Field label="定时类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择定时类型"/>
<Field label="开始时间" prop="startTime" v-model="form.startTime" placeholder="请输入开始时间"/>
<Field label="结束时间" prop="endTime" v-model="form.endTime" placeholder="请输入结束时间"/>
<Field label="任务状态" prop="statuses" v-model="form.statuses" type="select" :enumData="dict.statuses" placeholder="请选择任务状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import form from "@/assets/mixins/formdialog";
import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
},
data() {
return {
// 遮罩层
loading: true,
// 弹出层标题
title: "数据定时查探",
// 是否显示弹出层
open: false,
toString:[
],
// 表单校验
rules: {
taskName: [
{required: true,message: "请输入任务名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
taskDescription: [
{required: true,message: "请输入任务描述", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",},
],
dataSourceName: [
{required: true,message: "请输入数据源名称", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
sourceTable: [
{required: true,message: "请输入源表", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
sourceField: [
{required: true,message: "请输入依据字段", trigger: "blur" },
{max: 256,message: "最多只能录入256个字符",trigger: "blur",},
],
type: [
{required: true,message: "请输入定时类型", trigger: "blur" },
{max: 1,message: "最多只能录入1个字符",trigger: "blur",},
],
startTime: [
{required: true,message: "请输入开始时间", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
endTime: [
{required: true,message: "请输入结束时间", trigger: "blur" },
{max: 32,message: "最多只能录入32个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="scheduled/task/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改数据定时查探";
},
/** 新增 */
add(row) {
this.reset()
this.urls.currUrl = "scheduled/task/add";
this.getData();
this.pageInfo.type="add"
this.title = "新增数据定时查探";
},
/** 查看*/
view(row) {
this.reset()
this.query = { id: row.id };
this.urls.currUrl ="scheduled/task/view";
this.getData();
this.pageInfo.type="view"
this.title = "数据定时查探详细";
},
/**取消按钮 */
cancel() {
this.open = false;
},
/**获取数据后弹框 */
afterRender(data) {
this.open = true;
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
},
// 表单重置
reset() {
this.form = {
taskName : "",
taskDescription : "",
dataSourceName : "",
sourceTable : "",
sourceField : "",
type : "",
startTime : "",
endTime : "",
statuses : "0",
remark : "",
};
this.resetForm("form");
},
resetForm(refName) {
if (this.$refs[refName]) {
this.$refs[refName].resetFields();
}
},
},
};
</script>
<template>
<div class="page">
<LayoutTable :data="tableData" :config="tableConfig">
</LayoutTable>
<dialog-show ref="dialogform" @ok="getData" />
</div>
</template>
<script>
/** 表单弹出框模式需引入 */
import dialogShow from "./dialogshow";
import table from "@/assets/mixins/table";
export default {
name: "ScheduledTaskList",
components: {
dialogShow
},
mixins: [table],
created() {
},
methods: {
/** 重写新增方法 */
toAdd(row) {
this.$refs.dialogform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.dialogform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.dialogform.view(row);
},
},
data() {
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "任务名称", prop: "taskName"},
{label: "数据源名称", prop: "dataSourceName"},
{label: "源表", prop: "sourceTable"},
{label: "依据字段", prop: "sourceField"},
{label: "定时类型", prop: "type", formatter: this.formatter},
{label: "开始时间", prop: "startTime"},
{label: "结束时间", prop: "endTime"},
{label: "任务状态", prop: "statuses", formatter: this.formatter},
{label: "创建时间", prop: "createTime", formatter: this.formatterDate},
{
label: "操作",
width: 240,
formatter: row => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
);
}
}
]
}
};
}
};
</script>
\ No newline at end of file
<template>
<layout-view>
<el-descriptions :title="title" :column="column" :size="size" :colon="false" border>
<template slot="title">
<i class="el-icon-tickets"></i>
基本详细信息
</template>
<template slot="extra">
<el-button type="primary" @click="$router.go(-1)" size="small">返回</el-button>
</template>
<el-descriptions-item label="任务名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskName}}
</el-descriptions-item>
<el-descriptions-item label="任务描述" label-class-name="labelClass" content-class-name="contentClass">
{{form.taskDescription}}
</el-descriptions-item>
<el-descriptions-item label="数据源名称" label-class-name="labelClass" content-class-name="contentClass">
{{form.dataSourceName}}
</el-descriptions-item>
<el-descriptions-item label="源表" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceTable}}
</el-descriptions-item>
<el-descriptions-item label="依据字段" label-class-name="labelClass" content-class-name="contentClass">
{{form.sourceField}}
</el-descriptions-item>
<el-descriptions-item label="定时类型" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("type", form.type) }}
</el-descriptions-item>
<el-descriptions-item label="开始时间" label-class-name="labelClass" content-class-name="contentClass">
{{form.startTime}}
</el-descriptions-item>
<el-descriptions-item label="结束时间" label-class-name="labelClass" content-class-name="contentClass">
{{form.endTime}}
</el-descriptions-item>
<el-descriptions-item label="任务状态" label-class-name="labelClass" content-class-name="contentClass">
{{ util_formatters("statuses", form.statuses) }}
</el-descriptions-item>
<el-descriptions-item label="备注" label-class-name="labelClass" content-class-name="contentClass">
{{form.remark}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<script>
import view from "@/assets/mixins/view";
export default {
mixins: [view],
components: {
},
methods: {
},
data() {
return {
size:"small",
column:2,
toString:[
],
toArrays: [
],
toDate: [
]
}
}
}
</script>
<style lang="less">
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</style>
\ No newline at end of file
...@@ -16,8 +16,8 @@ module.exports = { ...@@ -16,8 +16,8 @@ module.exports = {
port: 8086, port: 8086,
hot: true,//自动保存 hot: true,//自动保存
proxy: { proxy: {
'/attendance': { '/etl': {
target: 'http://127.0.0.1:17500', target: 'http://127.0.0.1:17300',
changeOrigin: true, changeOrigin: true,
secure: false, secure: false,
cookieDomainRewrite: 'localhost', cookieDomainRewrite: 'localhost',
......
...@@ -24,14 +24,14 @@ ...@@ -24,14 +24,14 @@
<profiles.active>develop</profiles.active> <profiles.active>develop</profiles.active>
<profiles.server.port>17600</profiles.server.port> <profiles.server.port>17600</profiles.server.port>
<profiles.server.path>/etl</profiles.server.path> <profiles.server.path>/etl</profiles.server.path>
<profiles.nacos.server-addr>127.0.0.1:8848</profiles.nacos.server-addr> <profiles.nacos.server-addr>nacos.scsmile.cn:80</profiles.nacos.server-addr>
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group> <profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace> <profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.log.path>/mortals/app/logs</profiles.log.path> <profiles.log.path>/mortals/app/logs</profiles.log.path>
<profiles.log.level>info</profiles.log.level> <profiles.log.level>info</profiles.log.level>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
<package.environment>serve</package.environment> <package.environment>serve</package.environment>
<skipUi>false</skipUi> <skipUi>true</skipUi>
</properties> </properties>
</profile> </profile>
<profile> <profile>
......
...@@ -122,19 +122,6 @@ public class UploadController extends BaseController { ...@@ -122,19 +122,6 @@ public class UploadController extends BaseController {
} }
} }
/**
* 通用文件删除
*
* @param fileName 文件名称
*/
@GetMapping("fileupload/{fileName}")
public void fileDel(@PathVariable(value="fileName") String fileName, HttpServletResponse response) {
try {
//uploadService.uploadDownload(fileName, response);
} catch (Exception e) {
log.error("下载文件失败:", e);
}
}
} }
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)枚举类
*
* @author zxfei
*/
public enum IndicatorsEnum {
规范性("1", "规范性"),
一致性("2", "一致性"),
正确性("3", "正确性"),
及时性("4", "及时性");
private String value;
private String desc;
IndicatorsEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static IndicatorsEnum getByValue(String value) {
for (IndicatorsEnum indicatorsEnum : IndicatorsEnum.values()) {
if (indicatorsEnum.getValue() == value) {
return indicatorsEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (IndicatorsEnum item : IndicatorsEnum.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;
/**
* 等级(1.一般,2.重要,3.严重)枚举类
*
* @author zxfei
*/
public enum LevelEnum {
一般("1", "一般"),
重要("2", "重要"),
严重("3", "严重");
private String value;
private String desc;
LevelEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static LevelEnum getByValue(String value) {
for (LevelEnum levelEnum : LevelEnum.values()) {
if (levelEnum.getValue() == value) {
return levelEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (LevelEnum item : LevelEnum.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 StatusesEnum {
新建("0", "新建"),
执行中("1", "执行中"),
执行成功("2", "执行成功"),
执行失败("3", "执行失败");
private String value;
private String desc;
StatusesEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static StatusesEnum getByValue(String value) {
for (StatusesEnum statusesEnum : StatusesEnum.values()) {
if (statusesEnum.getValue() == value) {
return statusesEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (StatusesEnum item : StatusesEnum.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.列分析,11.列基本分析)枚举类
*
* @author zxfei
*/
public enum TypeEnum {
比分析("0", "对比分析"),
分析("1", "列分析"),
列基本分析("11", "列基本分析");
private String value;
private String desc;
TypeEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static TypeEnum getByValue(String value) {
for (TypeEnum typeEnum : TypeEnum.values()) {
if (typeEnum.getValue() == value) {
return typeEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (TypeEnum item : TypeEnum.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;
/**
* 权重(1.一般,2.重要,3.关键指标,4.重要指标)枚举类
*
* @author zxfei
*/
public enum WeightsEnum {
一般("1", "一般"),
重要("2", "重要"),
关键指标("3", "关键指标"),
重要指标("4", "重要指标");
private String value;
private String desc;
WeightsEnum(String value, String desc) {
this.value = value;
this.desc = desc;
}
public String getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static WeightsEnum getByValue(String value) {
for (WeightsEnum weightsEnum : WeightsEnum.values()) {
if (weightsEnum.getValue() == value) {
return weightsEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(String... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (WeightsEnum item : WeightsEnum.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.module.base.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
import java.util.List;
/**
* 数据公共规则Dao
* 数据公共规则 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface BaseRuleDao extends ICRUDDao<BaseRuleEntity,Long>{
}
package com.mortals.xhx.module.base.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.base.dao.BaseRuleDao;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据公共规则DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("baseRuleDao")
public class BaseRuleDaoImpl extends BaseCRUDDaoMybatis<BaseRuleEntity,Long> implements BaseRuleDao {
}
package com.mortals.xhx.module.base.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.base.model.vo.BaseRuleVo;
import lombok.Data;
/**
* 数据公共规则实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class BaseRuleEntity extends BaseRuleVo {
private static final long serialVersionUID = 1L;
/**
* 规则名称
*/
@Excel(name = "规则名称")
private String name;
/**
* 检测对象
*/
@Excel(name = "检测对象")
private String testItem;
/**
* 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
*/
@Excel(name = "检测指标", readConverterExp = "1=规范性,2.一致性,3.正确性,4.及时性")
private String indicators;
/**
* 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
*/
@Excel(name = "规则类型", readConverterExp = "1=SQL规则,2.正则规则,3.值域规则,4.标准包")
private String type;
/**
* 规则内容
*/
@Excel(name = "规则内容")
private String content;
/**
* 规则描述
*/
@Excel(name = "规则描述")
private String description;
/**
* 备注
*/
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 BaseRuleEntity) {
BaseRuleEntity tmp = (BaseRuleEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.name = "";
this.testItem = "";
this.indicators = "";
this.type = "";
this.content = "";
this.description = "";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.base.model;
import java.util.List;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
/**
* 数据公共规则查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class BaseRuleQuery extends BaseRuleEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 规则名称 */
private List<String> nameList;
/** 规则名称排除列表 */
private List <String> nameNotList;
/** 检测对象 */
private List<String> testItemList;
/** 检测对象排除列表 */
private List <String> testItemNotList;
/** 检测指标(1.规范性,2.一致性,3.正确性,4.及时性) */
private List<String> indicatorsList;
/** 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)排除列表 */
private List <String> indicatorsNotList;
/** 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包) */
private List<String> typeList;
/** 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)排除列表 */
private List <String> typeNotList;
/** 规则内容 */
private List<String> contentList;
/** 规则内容排除列表 */
private List <String> contentNotList;
/** 规则描述 */
private List<String> descriptionList;
/** 规则描述排除列表 */
private List <String> descriptionNotList;
/** 备注 */
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<BaseRuleQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<BaseRuleQuery> andConditionList;
public BaseRuleQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 规则名称
* @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 testItemList
*/
public List<String> getTestItemList(){
return this.testItemList;
}
/**
* 设置 检测对象
* @param testItemList
*/
public void setTestItemList(List<String> testItemList){
this.testItemList = testItemList;
}
/**
* 获取 检测对象
* @return testItemNotList
*/
public List<String> getTestItemNotList(){
return this.testItemNotList;
}
/**
* 设置 检测对象
* @param testItemNotList
*/
public void setTestItemNotList(List<String> testItemNotList){
this.testItemNotList = testItemNotList;
}
/**
* 获取 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @return indicatorsList
*/
public List<String> getIndicatorsList(){
return this.indicatorsList;
}
/**
* 设置 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @param indicatorsList
*/
public void setIndicatorsList(List<String> indicatorsList){
this.indicatorsList = indicatorsList;
}
/**
* 获取 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @return indicatorsNotList
*/
public List<String> getIndicatorsNotList(){
return this.indicatorsNotList;
}
/**
* 设置 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @param indicatorsNotList
*/
public void setIndicatorsNotList(List<String> indicatorsNotList){
this.indicatorsNotList = indicatorsNotList;
}
/**
* 获取 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @return typeList
*/
public List<String> getTypeList(){
return this.typeList;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param typeList
*/
public void setTypeList(List<String> typeList){
this.typeList = typeList;
}
/**
* 获取 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @return typeNotList
*/
public List<String> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @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 descriptionList
*/
public List<String> getDescriptionList(){
return this.descriptionList;
}
/**
* 设置 规则描述
* @param descriptionList
*/
public void setDescriptionList(List<String> descriptionList){
this.descriptionList = descriptionList;
}
/**
* 获取 规则描述
* @return descriptionNotList
*/
public List<String> getDescriptionNotList(){
return this.descriptionNotList;
}
/**
* 设置 规则描述
* @param descriptionNotList
*/
public void setDescriptionNotList(List<String> descriptionNotList){
this.descriptionNotList = descriptionNotList;
}
/**
* 获取 备注
* @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 BaseRuleQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public BaseRuleQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public BaseRuleQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public BaseRuleQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public BaseRuleQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public BaseRuleQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 规则名称
* @param name
*/
public BaseRuleQuery name(String name){
setName(name);
return this;
}
/**
* 设置 规则名称
* @param nameList
*/
public BaseRuleQuery nameList(List<String> nameList){
this.nameList = nameList;
return this;
}
/**
* 设置 检测对象
* @param testItem
*/
public BaseRuleQuery testItem(String testItem){
setTestItem(testItem);
return this;
}
/**
* 设置 检测对象
* @param testItemList
*/
public BaseRuleQuery testItemList(List<String> testItemList){
this.testItemList = testItemList;
return this;
}
/**
* 设置 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @param indicators
*/
public BaseRuleQuery indicators(String indicators){
setIndicators(indicators);
return this;
}
/**
* 设置 检测指标(1.规范性,2.一致性,3.正确性,4.及时性)
* @param indicatorsList
*/
public BaseRuleQuery indicatorsList(List<String> indicatorsList){
this.indicatorsList = indicatorsList;
return this;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param type
*/
public BaseRuleQuery type(String type){
setType(type);
return this;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param typeList
*/
public BaseRuleQuery typeList(List<String> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 规则内容
* @param content
*/
public BaseRuleQuery content(String content){
setContent(content);
return this;
}
/**
* 设置 规则内容
* @param contentList
*/
public BaseRuleQuery contentList(List<String> contentList){
this.contentList = contentList;
return this;
}
/**
* 设置 规则描述
* @param description
*/
public BaseRuleQuery description(String description){
setDescription(description);
return this;
}
/**
* 设置 规则描述
* @param descriptionList
*/
public BaseRuleQuery descriptionList(List<String> descriptionList){
this.descriptionList = descriptionList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public BaseRuleQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public BaseRuleQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public BaseRuleQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public BaseRuleQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public BaseRuleQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public BaseRuleQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public BaseRuleQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public BaseRuleQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public BaseRuleQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public BaseRuleQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public BaseRuleQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public BaseRuleQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public BaseRuleQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public BaseRuleQuery 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<BaseRuleQuery> 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<BaseRuleQuery> 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<BaseRuleQuery> 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<BaseRuleQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.base.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
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 2023-07-15
*/
@Data
public class BaseRuleVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.base.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
import com.mortals.xhx.module.base.dao.BaseRuleDao;
/**
* BaseRuleService
*
* 数据公共规则 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface BaseRuleService extends ICRUDService<BaseRuleEntity,Long>{
BaseRuleDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.base.service.impl;
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.base.dao.BaseRuleDao;
import com.mortals.xhx.module.base.model.BaseRuleEntity;
import com.mortals.xhx.module.base.service.BaseRuleService;
import lombok.extern.slf4j.Slf4j;
/**
* BaseRuleService
* 数据公共规则 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("baseRuleService")
@Slf4j
public class BaseRuleServiceImpl extends AbstractCRUDServiceImpl<BaseRuleDao, BaseRuleEntity, Long> implements BaseRuleService {
}
\ No newline at end of file
package com.mortals.xhx.module.base.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.base.model.BaseRuleEntity;
import com.mortals.xhx.module.base.service.BaseRuleService;
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.*;
/**
*
* 数据公共规则
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("base/rule")
public class BaseRuleController extends BaseCRUDJsonBodyMappingController<BaseRuleService,BaseRuleEntity,Long> {
@Autowired
private ParamService paramService;
public BaseRuleController(){
super.setModuleDesc( "数据公共规则");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "indicators", paramService.getParamBySecondOrganize("BaseRule","indicators"));
this.addDict(model, "type", paramService.getParamBySecondOrganize("BaseRule","type"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.data.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.data.model.DataSourceEntity;
import java.util.List;
/**
* 数据源Dao
* 数据源 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface DataSourceDao extends ICRUDDao<DataSourceEntity,Long>{
}
package com.mortals.xhx.module.data.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.data.dao.DataSourceDao;
import com.mortals.xhx.module.data.model.DataSourceEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据源DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("dataSourceDao")
public class DataSourceDaoImpl extends BaseCRUDDaoMybatis<DataSourceEntity,Long> implements DataSourceDao {
}
package com.mortals.xhx.module.data.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.data.model.vo.DataSourceVo;
import lombok.Data;
/**
* 数据源实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class DataSourceEntity extends DataSourceVo {
private static final long serialVersionUID = 1L;
/**
* 数据源名称
*/
@Excel(name = "数据源名称")
private String name;
/**
* 来源系统
*/
@Excel(name = "来源系统")
private String sourceSystem;
/**
* 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
*/
@Excel(name = "数据源类型", readConverterExp = "1=MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他")
private String type;
/**
* ip
*/
@Excel(name = "ip")
private String ip;
/**
* 端口
*/
@Excel(name = "端口")
private String port;
/**
* 服务名称
*/
@Excel(name = "服务名称")
private String serverName;
/**
* 用户名
*/
@Excel(name = "用户名")
private String userName;
/**
* 密码
*/
@Excel(name = "密码")
private String password;
/**
* 任务状态(0.停用,1.启用)
*/
@Excel(name = "任务状态", readConverterExp = "0=停用,1.启用")
private String statuses;
/**
* 备注
*/
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 DataSourceEntity) {
DataSourceEntity tmp = (DataSourceEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.name = "";
this.sourceSystem = "";
this.type = "";
this.ip = "";
this.port = "";
this.serverName = "";
this.userName = "";
this.password = "";
this.statuses = "0";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.data.model;
import java.util.List;
import com.mortals.xhx.module.data.model.DataSourceEntity;
/**
* 数据源查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class DataSourceQuery extends DataSourceEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 数据源名称 */
private List<String> nameList;
/** 数据源名称排除列表 */
private List <String> nameNotList;
/** 来源系统 */
private List<String> sourceSystemList;
/** 来源系统排除列表 */
private List <String> sourceSystemNotList;
/** 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他) */
private List<String> typeList;
/** 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)排除列表 */
private List <String> typeNotList;
/** ip */
private List<String> ipList;
/** ip排除列表 */
private List <String> ipNotList;
/** 端口 */
private List<String> portList;
/** 端口排除列表 */
private List <String> portNotList;
/** 服务名称 */
private List<String> serverNameList;
/** 服务名称排除列表 */
private List <String> serverNameNotList;
/** 用户名 */
private List<String> userNameList;
/** 用户名排除列表 */
private List <String> userNameNotList;
/** 密码 */
private List<String> passwordList;
/** 密码排除列表 */
private List <String> passwordNotList;
/** 任务状态(0.停用,1.启用) */
private List<String> statusesList;
/** 任务状态(0.停用,1.启用)排除列表 */
private List <String> statusesNotList;
/** 备注 */
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<DataSourceQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<DataSourceQuery> andConditionList;
public DataSourceQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 数据源名称
* @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 sourceSystemList
*/
public List<String> getSourceSystemList(){
return this.sourceSystemList;
}
/**
* 设置 来源系统
* @param sourceSystemList
*/
public void setSourceSystemList(List<String> sourceSystemList){
this.sourceSystemList = sourceSystemList;
}
/**
* 获取 来源系统
* @return sourceSystemNotList
*/
public List<String> getSourceSystemNotList(){
return this.sourceSystemNotList;
}
/**
* 设置 来源系统
* @param sourceSystemNotList
*/
public void setSourceSystemNotList(List<String> sourceSystemNotList){
this.sourceSystemNotList = sourceSystemNotList;
}
/**
* 获取 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @return typeList
*/
public List<String> getTypeList(){
return this.typeList;
}
/**
* 设置 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @param typeList
*/
public void setTypeList(List<String> typeList){
this.typeList = typeList;
}
/**
* 获取 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @return typeNotList
*/
public List<String> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @param typeNotList
*/
public void setTypeNotList(List<String> typeNotList){
this.typeNotList = typeNotList;
}
/**
* 获取 ip
* @return ipList
*/
public List<String> getIpList(){
return this.ipList;
}
/**
* 设置 ip
* @param ipList
*/
public void setIpList(List<String> ipList){
this.ipList = ipList;
}
/**
* 获取 ip
* @return ipNotList
*/
public List<String> getIpNotList(){
return this.ipNotList;
}
/**
* 设置 ip
* @param ipNotList
*/
public void setIpNotList(List<String> ipNotList){
this.ipNotList = ipNotList;
}
/**
* 获取 端口
* @return portList
*/
public List<String> getPortList(){
return this.portList;
}
/**
* 设置 端口
* @param portList
*/
public void setPortList(List<String> portList){
this.portList = portList;
}
/**
* 获取 端口
* @return portNotList
*/
public List<String> getPortNotList(){
return this.portNotList;
}
/**
* 设置 端口
* @param portNotList
*/
public void setPortNotList(List<String> portNotList){
this.portNotList = portNotList;
}
/**
* 获取 服务名称
* @return serverNameList
*/
public List<String> getServerNameList(){
return this.serverNameList;
}
/**
* 设置 服务名称
* @param serverNameList
*/
public void setServerNameList(List<String> serverNameList){
this.serverNameList = serverNameList;
}
/**
* 获取 服务名称
* @return serverNameNotList
*/
public List<String> getServerNameNotList(){
return this.serverNameNotList;
}
/**
* 设置 服务名称
* @param serverNameNotList
*/
public void setServerNameNotList(List<String> serverNameNotList){
this.serverNameNotList = serverNameNotList;
}
/**
* 获取 用户名
* @return userNameList
*/
public List<String> getUserNameList(){
return this.userNameList;
}
/**
* 设置 用户名
* @param userNameList
*/
public void setUserNameList(List<String> userNameList){
this.userNameList = userNameList;
}
/**
* 获取 用户名
* @return userNameNotList
*/
public List<String> getUserNameNotList(){
return this.userNameNotList;
}
/**
* 设置 用户名
* @param userNameNotList
*/
public void setUserNameNotList(List<String> userNameNotList){
this.userNameNotList = userNameNotList;
}
/**
* 获取 密码
* @return passwordList
*/
public List<String> getPasswordList(){
return this.passwordList;
}
/**
* 设置 密码
* @param passwordList
*/
public void setPasswordList(List<String> passwordList){
this.passwordList = passwordList;
}
/**
* 获取 密码
* @return passwordNotList
*/
public List<String> getPasswordNotList(){
return this.passwordNotList;
}
/**
* 设置 密码
* @param passwordNotList
*/
public void setPasswordNotList(List<String> passwordNotList){
this.passwordNotList = passwordNotList;
}
/**
* 获取 任务状态(0.停用,1.启用)
* @return statusesList
*/
public List<String> getStatusesList(){
return this.statusesList;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesList
*/
public void setStatusesList(List<String> statusesList){
this.statusesList = statusesList;
}
/**
* 获取 任务状态(0.停用,1.启用)
* @return statusesNotList
*/
public List<String> getStatusesNotList(){
return this.statusesNotList;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesNotList
*/
public void setStatusesNotList(List<String> statusesNotList){
this.statusesNotList = statusesNotList;
}
/**
* 获取 备注
* @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 DataSourceQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public DataSourceQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public DataSourceQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public DataSourceQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public DataSourceQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public DataSourceQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 数据源名称
* @param name
*/
public DataSourceQuery name(String name){
setName(name);
return this;
}
/**
* 设置 数据源名称
* @param nameList
*/
public DataSourceQuery nameList(List<String> nameList){
this.nameList = nameList;
return this;
}
/**
* 设置 来源系统
* @param sourceSystem
*/
public DataSourceQuery sourceSystem(String sourceSystem){
setSourceSystem(sourceSystem);
return this;
}
/**
* 设置 来源系统
* @param sourceSystemList
*/
public DataSourceQuery sourceSystemList(List<String> sourceSystemList){
this.sourceSystemList = sourceSystemList;
return this;
}
/**
* 设置 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @param type
*/
public DataSourceQuery type(String type){
setType(type);
return this;
}
/**
* 设置 数据源类型(1.MySQL,2.SQLServer,3.Oracle,4.PostgreSQL,5.MongoDB,6.Redis,7.其他)
* @param typeList
*/
public DataSourceQuery typeList(List<String> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 ip
* @param ip
*/
public DataSourceQuery ip(String ip){
setIp(ip);
return this;
}
/**
* 设置 ip
* @param ipList
*/
public DataSourceQuery ipList(List<String> ipList){
this.ipList = ipList;
return this;
}
/**
* 设置 端口
* @param port
*/
public DataSourceQuery port(String port){
setPort(port);
return this;
}
/**
* 设置 端口
* @param portList
*/
public DataSourceQuery portList(List<String> portList){
this.portList = portList;
return this;
}
/**
* 设置 服务名称
* @param serverName
*/
public DataSourceQuery serverName(String serverName){
setServerName(serverName);
return this;
}
/**
* 设置 服务名称
* @param serverNameList
*/
public DataSourceQuery serverNameList(List<String> serverNameList){
this.serverNameList = serverNameList;
return this;
}
/**
* 设置 用户名
* @param userName
*/
public DataSourceQuery userName(String userName){
setUserName(userName);
return this;
}
/**
* 设置 用户名
* @param userNameList
*/
public DataSourceQuery userNameList(List<String> userNameList){
this.userNameList = userNameList;
return this;
}
/**
* 设置 密码
* @param password
*/
public DataSourceQuery password(String password){
setPassword(password);
return this;
}
/**
* 设置 密码
* @param passwordList
*/
public DataSourceQuery passwordList(List<String> passwordList){
this.passwordList = passwordList;
return this;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statuses
*/
public DataSourceQuery statuses(String statuses){
setStatuses(statuses);
return this;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesList
*/
public DataSourceQuery statusesList(List<String> statusesList){
this.statusesList = statusesList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public DataSourceQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public DataSourceQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public DataSourceQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public DataSourceQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public DataSourceQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public DataSourceQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public DataSourceQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public DataSourceQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public DataSourceQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public DataSourceQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public DataSourceQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public DataSourceQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public DataSourceQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public DataSourceQuery 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<DataSourceQuery> 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<DataSourceQuery> 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<DataSourceQuery> 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<DataSourceQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.data.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.data.model.DataSourceEntity;
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 2023-07-15
*/
@Data
public class DataSourceVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.data.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.data.model.DataSourceEntity;
import com.mortals.xhx.module.data.dao.DataSourceDao;
/**
* DataSourceService
*
* 数据源 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface DataSourceService extends ICRUDService<DataSourceEntity,Long>{
DataSourceDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.data.service.impl;
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.data.dao.DataSourceDao;
import com.mortals.xhx.module.data.model.DataSourceEntity;
import com.mortals.xhx.module.data.service.DataSourceService;
import lombok.extern.slf4j.Slf4j;
/**
* DataSourceService
* 数据源 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("dataSourceService")
@Slf4j
public class DataSourceServiceImpl extends AbstractCRUDServiceImpl<DataSourceDao, DataSourceEntity, Long> implements DataSourceService {
}
\ No newline at end of file
package com.mortals.xhx.module.data.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.data.model.DataSourceEntity;
import com.mortals.xhx.module.data.service.DataSourceService;
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.*;
/**
*
* 数据源
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("data/source")
public class DataSourceController extends BaseCRUDJsonBodyMappingController<DataSourceService,DataSourceEntity,Long> {
@Autowired
private ParamService paramService;
public DataSourceController(){
super.setModuleDesc( "数据源");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("DataSource","type"));
this.addDict(model, "statuses", paramService.getParamBySecondOrganize("DataSource","statuses"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.database.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
import java.util.List;
/**
* 数据库规则Dao
* 数据库规则 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface DatabaseRuleDao extends ICRUDDao<DatabaseRuleEntity,Long>{
}
package com.mortals.xhx.module.database.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.database.dao.DatabaseRuleDao;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据库规则DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("databaseRuleDao")
public class DatabaseRuleDaoImpl extends BaseCRUDDaoMybatis<DatabaseRuleEntity,Long> implements DatabaseRuleDao {
}
package com.mortals.xhx.module.database.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.database.model.vo.DatabaseRuleVo;
import lombok.Data;
/**
* 数据库规则实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class DatabaseRuleEntity extends DatabaseRuleVo {
private static final long serialVersionUID = 1L;
/**
* 规则名称
*/
@Excel(name = "规则名称")
private String name;
/**
* 数据源名称
*/
@Excel(name = "数据源名称")
private String source;
/**
* 源表
*/
@Excel(name = "源表")
private String sourceTable;
/**
* 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
*/
@Excel(name = "规则类型", readConverterExp = "1=SQL规则,2.正则规则,3.值域规则,4.标准包")
private String type;
/**
* SQL表达式
*/
@Excel(name = "SQL表达式")
private String expression;
/**
* SQL过滤条件
*/
@Excel(name = "SQL过滤条件")
private String prerequisite;
/**
* 等级(1.一般,2.重要,3.严重)
*/
@Excel(name = "等级", readConverterExp = "1=一般,2.重要,3.严重")
private String level;
/**
* 权重(1.一般,2.重要,3.关键指标,4.重要指标)
*/
@Excel(name = "权重", readConverterExp = "1=一般,2.重要,3.关键指标,4.重要指标")
private String weights;
/**
* 规则描述
*/
@Excel(name = "规则描述")
private String description;
/**
* 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
*/
@Excel(name = "类型", readConverterExp = "1=规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性")
private String dataType;
/**
* 任务状态(0.停用,1.启用)
*/
@Excel(name = "任务状态", readConverterExp = "0=停用,1.启用")
private String statuses;
/**
* 备注
*/
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 DatabaseRuleEntity) {
DatabaseRuleEntity tmp = (DatabaseRuleEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.name = "";
this.source = "";
this.sourceTable = "";
this.type = "";
this.expression = "";
this.prerequisite = "";
this.level = "";
this.weights = "";
this.description = "";
this.dataType = "1";
this.statuses = "0";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.database.model;
import java.util.List;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
/**
* 数据库规则查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class DatabaseRuleQuery extends DatabaseRuleEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 规则名称 */
private List<String> nameList;
/** 规则名称排除列表 */
private List <String> nameNotList;
/** 数据源名称 */
private List<String> sourceList;
/** 数据源名称排除列表 */
private List <String> sourceNotList;
/** 源表 */
private List<String> sourceTableList;
/** 源表排除列表 */
private List <String> sourceTableNotList;
/** 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包) */
private List<String> typeList;
/** 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)排除列表 */
private List <String> typeNotList;
/** SQL表达式 */
private List<String> expressionList;
/** SQL表达式排除列表 */
private List <String> expressionNotList;
/** SQL过滤条件 */
private List<String> prerequisiteList;
/** SQL过滤条件排除列表 */
private List <String> prerequisiteNotList;
/** 等级(1.一般,2.重要,3.严重) */
private List<String> levelList;
/** 等级(1.一般,2.重要,3.严重)排除列表 */
private List <String> levelNotList;
/** 权重(1.一般,2.重要,3.关键指标,4.重要指标) */
private List<String> weightsList;
/** 权重(1.一般,2.重要,3.关键指标,4.重要指标)排除列表 */
private List <String> weightsNotList;
/** 规则描述 */
private List<String> descriptionList;
/** 规则描述排除列表 */
private List <String> descriptionNotList;
/** 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性) */
private List<String> dataTypeList;
/** 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)排除列表 */
private List <String> dataTypeNotList;
/** 任务状态(0.停用,1.启用) */
private List<String> statusesList;
/** 任务状态(0.停用,1.启用)排除列表 */
private List <String> statusesNotList;
/** 备注 */
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<DatabaseRuleQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<DatabaseRuleQuery> andConditionList;
public DatabaseRuleQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 规则名称
* @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 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 sourceTableList
*/
public List<String> getSourceTableList(){
return this.sourceTableList;
}
/**
* 设置 源表
* @param sourceTableList
*/
public void setSourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
}
/**
* 获取 源表
* @return sourceTableNotList
*/
public List<String> getSourceTableNotList(){
return this.sourceTableNotList;
}
/**
* 设置 源表
* @param sourceTableNotList
*/
public void setSourceTableNotList(List<String> sourceTableNotList){
this.sourceTableNotList = sourceTableNotList;
}
/**
* 获取 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @return typeList
*/
public List<String> getTypeList(){
return this.typeList;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param typeList
*/
public void setTypeList(List<String> typeList){
this.typeList = typeList;
}
/**
* 获取 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @return typeNotList
*/
public List<String> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param typeNotList
*/
public void setTypeNotList(List<String> typeNotList){
this.typeNotList = typeNotList;
}
/**
* 获取 SQL表达式
* @return expressionList
*/
public List<String> getExpressionList(){
return this.expressionList;
}
/**
* 设置 SQL表达式
* @param expressionList
*/
public void setExpressionList(List<String> expressionList){
this.expressionList = expressionList;
}
/**
* 获取 SQL表达式
* @return expressionNotList
*/
public List<String> getExpressionNotList(){
return this.expressionNotList;
}
/**
* 设置 SQL表达式
* @param expressionNotList
*/
public void setExpressionNotList(List<String> expressionNotList){
this.expressionNotList = expressionNotList;
}
/**
* 获取 SQL过滤条件
* @return prerequisiteList
*/
public List<String> getPrerequisiteList(){
return this.prerequisiteList;
}
/**
* 设置 SQL过滤条件
* @param prerequisiteList
*/
public void setPrerequisiteList(List<String> prerequisiteList){
this.prerequisiteList = prerequisiteList;
}
/**
* 获取 SQL过滤条件
* @return prerequisiteNotList
*/
public List<String> getPrerequisiteNotList(){
return this.prerequisiteNotList;
}
/**
* 设置 SQL过滤条件
* @param prerequisiteNotList
*/
public void setPrerequisiteNotList(List<String> prerequisiteNotList){
this.prerequisiteNotList = prerequisiteNotList;
}
/**
* 获取 等级(1.一般,2.重要,3.严重)
* @return levelList
*/
public List<String> getLevelList(){
return this.levelList;
}
/**
* 设置 等级(1.一般,2.重要,3.严重)
* @param levelList
*/
public void setLevelList(List<String> levelList){
this.levelList = levelList;
}
/**
* 获取 等级(1.一般,2.重要,3.严重)
* @return levelNotList
*/
public List<String> getLevelNotList(){
return this.levelNotList;
}
/**
* 设置 等级(1.一般,2.重要,3.严重)
* @param levelNotList
*/
public void setLevelNotList(List<String> levelNotList){
this.levelNotList = levelNotList;
}
/**
* 获取 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @return weightsList
*/
public List<String> getWeightsList(){
return this.weightsList;
}
/**
* 设置 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @param weightsList
*/
public void setWeightsList(List<String> weightsList){
this.weightsList = weightsList;
}
/**
* 获取 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @return weightsNotList
*/
public List<String> getWeightsNotList(){
return this.weightsNotList;
}
/**
* 设置 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @param weightsNotList
*/
public void setWeightsNotList(List<String> weightsNotList){
this.weightsNotList = weightsNotList;
}
/**
* 获取 规则描述
* @return descriptionList
*/
public List<String> getDescriptionList(){
return this.descriptionList;
}
/**
* 设置 规则描述
* @param descriptionList
*/
public void setDescriptionList(List<String> descriptionList){
this.descriptionList = descriptionList;
}
/**
* 获取 规则描述
* @return descriptionNotList
*/
public List<String> getDescriptionNotList(){
return this.descriptionNotList;
}
/**
* 设置 规则描述
* @param descriptionNotList
*/
public void setDescriptionNotList(List<String> descriptionNotList){
this.descriptionNotList = descriptionNotList;
}
/**
* 获取 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @return dataTypeList
*/
public List<String> getDataTypeList(){
return this.dataTypeList;
}
/**
* 设置 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @param dataTypeList
*/
public void setDataTypeList(List<String> dataTypeList){
this.dataTypeList = dataTypeList;
}
/**
* 获取 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @return dataTypeNotList
*/
public List<String> getDataTypeNotList(){
return this.dataTypeNotList;
}
/**
* 设置 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @param dataTypeNotList
*/
public void setDataTypeNotList(List<String> dataTypeNotList){
this.dataTypeNotList = dataTypeNotList;
}
/**
* 获取 任务状态(0.停用,1.启用)
* @return statusesList
*/
public List<String> getStatusesList(){
return this.statusesList;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesList
*/
public void setStatusesList(List<String> statusesList){
this.statusesList = statusesList;
}
/**
* 获取 任务状态(0.停用,1.启用)
* @return statusesNotList
*/
public List<String> getStatusesNotList(){
return this.statusesNotList;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesNotList
*/
public void setStatusesNotList(List<String> statusesNotList){
this.statusesNotList = statusesNotList;
}
/**
* 获取 备注
* @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 DatabaseRuleQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public DatabaseRuleQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public DatabaseRuleQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public DatabaseRuleQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public DatabaseRuleQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public DatabaseRuleQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 规则名称
* @param name
*/
public DatabaseRuleQuery name(String name){
setName(name);
return this;
}
/**
* 设置 规则名称
* @param nameList
*/
public DatabaseRuleQuery nameList(List<String> nameList){
this.nameList = nameList;
return this;
}
/**
* 设置 数据源名称
* @param source
*/
public DatabaseRuleQuery source(String source){
setSource(source);
return this;
}
/**
* 设置 数据源名称
* @param sourceList
*/
public DatabaseRuleQuery sourceList(List<String> sourceList){
this.sourceList = sourceList;
return this;
}
/**
* 设置 源表
* @param sourceTable
*/
public DatabaseRuleQuery sourceTable(String sourceTable){
setSourceTable(sourceTable);
return this;
}
/**
* 设置 源表
* @param sourceTableList
*/
public DatabaseRuleQuery sourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
return this;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param type
*/
public DatabaseRuleQuery type(String type){
setType(type);
return this;
}
/**
* 设置 规则类型(1.SQL规则,2.正则规则,3.值域规则,4.标准包)
* @param typeList
*/
public DatabaseRuleQuery typeList(List<String> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 SQL表达式
* @param expression
*/
public DatabaseRuleQuery expression(String expression){
setExpression(expression);
return this;
}
/**
* 设置 SQL表达式
* @param expressionList
*/
public DatabaseRuleQuery expressionList(List<String> expressionList){
this.expressionList = expressionList;
return this;
}
/**
* 设置 SQL过滤条件
* @param prerequisite
*/
public DatabaseRuleQuery prerequisite(String prerequisite){
setPrerequisite(prerequisite);
return this;
}
/**
* 设置 SQL过滤条件
* @param prerequisiteList
*/
public DatabaseRuleQuery prerequisiteList(List<String> prerequisiteList){
this.prerequisiteList = prerequisiteList;
return this;
}
/**
* 设置 等级(1.一般,2.重要,3.严重)
* @param level
*/
public DatabaseRuleQuery level(String level){
setLevel(level);
return this;
}
/**
* 设置 等级(1.一般,2.重要,3.严重)
* @param levelList
*/
public DatabaseRuleQuery levelList(List<String> levelList){
this.levelList = levelList;
return this;
}
/**
* 设置 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @param weights
*/
public DatabaseRuleQuery weights(String weights){
setWeights(weights);
return this;
}
/**
* 设置 权重(1.一般,2.重要,3.关键指标,4.重要指标)
* @param weightsList
*/
public DatabaseRuleQuery weightsList(List<String> weightsList){
this.weightsList = weightsList;
return this;
}
/**
* 设置 规则描述
* @param description
*/
public DatabaseRuleQuery description(String description){
setDescription(description);
return this;
}
/**
* 设置 规则描述
* @param descriptionList
*/
public DatabaseRuleQuery descriptionList(List<String> descriptionList){
this.descriptionList = descriptionList;
return this;
}
/**
* 设置 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @param dataType
*/
public DatabaseRuleQuery dataType(String dataType){
setDataType(dataType);
return this;
}
/**
* 设置 类型(1.规范性,2.一致性,3.准确性,4.及时性,5.关联性,6.完整性,7.重复性)
* @param dataTypeList
*/
public DatabaseRuleQuery dataTypeList(List<String> dataTypeList){
this.dataTypeList = dataTypeList;
return this;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statuses
*/
public DatabaseRuleQuery statuses(String statuses){
setStatuses(statuses);
return this;
}
/**
* 设置 任务状态(0.停用,1.启用)
* @param statusesList
*/
public DatabaseRuleQuery statusesList(List<String> statusesList){
this.statusesList = statusesList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public DatabaseRuleQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public DatabaseRuleQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public DatabaseRuleQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public DatabaseRuleQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public DatabaseRuleQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public DatabaseRuleQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public DatabaseRuleQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public DatabaseRuleQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public DatabaseRuleQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public DatabaseRuleQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public DatabaseRuleQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public DatabaseRuleQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public DatabaseRuleQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public DatabaseRuleQuery 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<DatabaseRuleQuery> 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<DatabaseRuleQuery> 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<DatabaseRuleQuery> 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<DatabaseRuleQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.database.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
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 2023-07-15
*/
@Data
public class DatabaseRuleVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.database.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
import com.mortals.xhx.module.database.dao.DatabaseRuleDao;
/**
* DatabaseRuleService
*
* 数据库规则 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface DatabaseRuleService extends ICRUDService<DatabaseRuleEntity,Long>{
DatabaseRuleDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.database.service.impl;
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.database.dao.DatabaseRuleDao;
import com.mortals.xhx.module.database.model.DatabaseRuleEntity;
import com.mortals.xhx.module.database.service.DatabaseRuleService;
import lombok.extern.slf4j.Slf4j;
/**
* DatabaseRuleService
* 数据库规则 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("databaseRuleService")
@Slf4j
public class DatabaseRuleServiceImpl extends AbstractCRUDServiceImpl<DatabaseRuleDao, DatabaseRuleEntity, Long> implements DatabaseRuleService {
}
\ No newline at end of file
package com.mortals.xhx.module.database.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.database.model.DatabaseRuleEntity;
import com.mortals.xhx.module.database.service.DatabaseRuleService;
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.*;
/**
*
* 数据库规则
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("database/rule")
public class DatabaseRuleController extends BaseCRUDJsonBodyMappingController<DatabaseRuleService,DatabaseRuleEntity,Long> {
@Autowired
private ParamService paramService;
public DatabaseRuleController(){
super.setModuleDesc( "数据库规则");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("DatabaseRule","type"));
this.addDict(model, "level", paramService.getParamBySecondOrganize("DatabaseRule","level"));
this.addDict(model, "weights", paramService.getParamBySecondOrganize("DatabaseRule","weights"));
this.addDict(model, "dataType", paramService.getParamBySecondOrganize("DatabaseRule","dataType"));
this.addDict(model, "statuses", paramService.getParamBySecondOrganize("DatabaseRule","statuses"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.line.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
import java.util.List;
/**
* 数据质量分析Dao
* 数据质量分析 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface LineAnalysisDao extends ICRUDDao<LineAnalysisEntity,Long>{
}
package com.mortals.xhx.module.line.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.line.dao.LineAnalysisDao;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据质量分析DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("lineAnalysisDao")
public class LineAnalysisDaoImpl extends BaseCRUDDaoMybatis<LineAnalysisEntity,Long> implements LineAnalysisDao {
}
package com.mortals.xhx.module.line.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.line.model.vo.LineAnalysisVo;
import lombok.Data;
/**
* 数据质量分析实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class LineAnalysisEntity extends LineAnalysisVo {
private static final long serialVersionUID = 1L;
/**
* 任务名称
*/
@Excel(name = "任务名称")
private String taskName;
/**
* 任务描述
*/
@Excel(name = "任务描述")
private String taskDescription;
/**
* 数据源名称
*/
@Excel(name = "数据源名称")
private String dataSourceName;
/**
* 源表
*/
@Excel(name = "源表")
private String sourceTable;
/**
* 分析对象
*/
@Excel(name = "分析对象")
private String analysisObject;
/**
* 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
*/
@Excel(name = "任务状态", readConverterExp = "0=新建,1.执行中,2.执行成功,3.执行失败")
private String statuses;
/**
* 执行次数
*/
@Excel(name = "执行次数")
private Integer executionsNumber;
/**
* 备注
*/
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 LineAnalysisEntity) {
LineAnalysisEntity tmp = (LineAnalysisEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.taskName = "";
this.taskDescription = "";
this.dataSourceName = "";
this.sourceTable = "";
this.analysisObject = "";
this.statuses = "0";
this.executionsNumber = 0;
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.line.model;
import java.util.List;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
/**
* 数据质量分析查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class LineAnalysisQuery extends LineAnalysisEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 任务名称 */
private List<String> taskNameList;
/** 任务名称排除列表 */
private List <String> taskNameNotList;
/** 任务描述 */
private List<String> taskDescriptionList;
/** 任务描述排除列表 */
private List <String> taskDescriptionNotList;
/** 数据源名称 */
private List<String> dataSourceNameList;
/** 数据源名称排除列表 */
private List <String> dataSourceNameNotList;
/** 源表 */
private List<String> sourceTableList;
/** 源表排除列表 */
private List <String> sourceTableNotList;
/** 分析对象 */
private List<String> analysisObjectList;
/** 分析对象排除列表 */
private List <String> analysisObjectNotList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败) */
private List<String> statusesList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)排除列表 */
private List <String> statusesNotList;
/** 开始 执行次数 */
private Integer executionsNumberStart;
/** 结束 执行次数 */
private Integer executionsNumberEnd;
/** 增加 执行次数 */
private Integer executionsNumberIncrement;
/** 执行次数列表 */
private List <Integer> executionsNumberList;
/** 执行次数排除列表 */
private List <Integer> executionsNumberNotList;
/** 备注 */
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<LineAnalysisQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<LineAnalysisQuery> andConditionList;
public LineAnalysisQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 任务名称
* @return taskNameList
*/
public List<String> getTaskNameList(){
return this.taskNameList;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public void setTaskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
}
/**
* 获取 任务名称
* @return taskNameNotList
*/
public List<String> getTaskNameNotList(){
return this.taskNameNotList;
}
/**
* 设置 任务名称
* @param taskNameNotList
*/
public void setTaskNameNotList(List<String> taskNameNotList){
this.taskNameNotList = taskNameNotList;
}
/**
* 获取 任务描述
* @return taskDescriptionList
*/
public List<String> getTaskDescriptionList(){
return this.taskDescriptionList;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public void setTaskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
}
/**
* 获取 任务描述
* @return taskDescriptionNotList
*/
public List<String> getTaskDescriptionNotList(){
return this.taskDescriptionNotList;
}
/**
* 设置 任务描述
* @param taskDescriptionNotList
*/
public void setTaskDescriptionNotList(List<String> taskDescriptionNotList){
this.taskDescriptionNotList = taskDescriptionNotList;
}
/**
* 获取 数据源名称
* @return dataSourceNameList
*/
public List<String> getDataSourceNameList(){
return this.dataSourceNameList;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public void setDataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
}
/**
* 获取 数据源名称
* @return dataSourceNameNotList
*/
public List<String> getDataSourceNameNotList(){
return this.dataSourceNameNotList;
}
/**
* 设置 数据源名称
* @param dataSourceNameNotList
*/
public void setDataSourceNameNotList(List<String> dataSourceNameNotList){
this.dataSourceNameNotList = dataSourceNameNotList;
}
/**
* 获取 源表
* @return sourceTableList
*/
public List<String> getSourceTableList(){
return this.sourceTableList;
}
/**
* 设置 源表
* @param sourceTableList
*/
public void setSourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
}
/**
* 获取 源表
* @return sourceTableNotList
*/
public List<String> getSourceTableNotList(){
return this.sourceTableNotList;
}
/**
* 设置 源表
* @param sourceTableNotList
*/
public void setSourceTableNotList(List<String> sourceTableNotList){
this.sourceTableNotList = sourceTableNotList;
}
/**
* 获取 分析对象
* @return analysisObjectList
*/
public List<String> getAnalysisObjectList(){
return this.analysisObjectList;
}
/**
* 设置 分析对象
* @param analysisObjectList
*/
public void setAnalysisObjectList(List<String> analysisObjectList){
this.analysisObjectList = analysisObjectList;
}
/**
* 获取 分析对象
* @return analysisObjectNotList
*/
public List<String> getAnalysisObjectNotList(){
return this.analysisObjectNotList;
}
/**
* 设置 分析对象
* @param analysisObjectNotList
*/
public void setAnalysisObjectNotList(List<String> analysisObjectNotList){
this.analysisObjectNotList = analysisObjectNotList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesList
*/
public List<String> getStatusesList(){
return this.statusesList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public void setStatusesList(List<String> statusesList){
this.statusesList = statusesList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesNotList
*/
public List<String> getStatusesNotList(){
return this.statusesNotList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesNotList
*/
public void setStatusesNotList(List<String> statusesNotList){
this.statusesNotList = statusesNotList;
}
/**
* 获取 开始 执行次数
* @return executionsNumberStart
*/
public Integer getExecutionsNumberStart(){
return this.executionsNumberStart;
}
/**
* 设置 开始 执行次数
* @param executionsNumberStart
*/
public void setExecutionsNumberStart(Integer executionsNumberStart){
this.executionsNumberStart = executionsNumberStart;
}
/**
* 获取 结束 执行次数
* @return $executionsNumberEnd
*/
public Integer getExecutionsNumberEnd(){
return this.executionsNumberEnd;
}
/**
* 设置 结束 执行次数
* @param executionsNumberEnd
*/
public void setExecutionsNumberEnd(Integer executionsNumberEnd){
this.executionsNumberEnd = executionsNumberEnd;
}
/**
* 获取 增加 执行次数
* @return executionsNumberIncrement
*/
public Integer getExecutionsNumberIncrement(){
return this.executionsNumberIncrement;
}
/**
* 设置 增加 执行次数
* @param executionsNumberIncrement
*/
public void setExecutionsNumberIncrement(Integer executionsNumberIncrement){
this.executionsNumberIncrement = executionsNumberIncrement;
}
/**
* 获取 执行次数
* @return executionsNumberList
*/
public List<Integer> getExecutionsNumberList(){
return this.executionsNumberList;
}
/**
* 设置 执行次数
* @param executionsNumberList
*/
public void setExecutionsNumberList(List<Integer> executionsNumberList){
this.executionsNumberList = executionsNumberList;
}
/**
* 获取 执行次数
* @return executionsNumberNotList
*/
public List<Integer> getExecutionsNumberNotList(){
return this.executionsNumberNotList;
}
/**
* 设置 执行次数
* @param executionsNumberNotList
*/
public void setExecutionsNumberNotList(List<Integer> executionsNumberNotList){
this.executionsNumberNotList = executionsNumberNotList;
}
/**
* 获取 备注
* @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 LineAnalysisQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public LineAnalysisQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public LineAnalysisQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public LineAnalysisQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public LineAnalysisQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public LineAnalysisQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 任务名称
* @param taskName
*/
public LineAnalysisQuery taskName(String taskName){
setTaskName(taskName);
return this;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public LineAnalysisQuery taskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
return this;
}
/**
* 设置 任务描述
* @param taskDescription
*/
public LineAnalysisQuery taskDescription(String taskDescription){
setTaskDescription(taskDescription);
return this;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public LineAnalysisQuery taskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
return this;
}
/**
* 设置 数据源名称
* @param dataSourceName
*/
public LineAnalysisQuery dataSourceName(String dataSourceName){
setDataSourceName(dataSourceName);
return this;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public LineAnalysisQuery dataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
return this;
}
/**
* 设置 源表
* @param sourceTable
*/
public LineAnalysisQuery sourceTable(String sourceTable){
setSourceTable(sourceTable);
return this;
}
/**
* 设置 源表
* @param sourceTableList
*/
public LineAnalysisQuery sourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
return this;
}
/**
* 设置 分析对象
* @param analysisObject
*/
public LineAnalysisQuery analysisObject(String analysisObject){
setAnalysisObject(analysisObject);
return this;
}
/**
* 设置 分析对象
* @param analysisObjectList
*/
public LineAnalysisQuery analysisObjectList(List<String> analysisObjectList){
this.analysisObjectList = analysisObjectList;
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statuses
*/
public LineAnalysisQuery statuses(String statuses){
setStatuses(statuses);
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public LineAnalysisQuery statusesList(List<String> statusesList){
this.statusesList = statusesList;
return this;
}
/**
* 设置 执行次数
* @param executionsNumber
*/
public LineAnalysisQuery executionsNumber(Integer executionsNumber){
setExecutionsNumber(executionsNumber);
return this;
}
/**
* 设置 开始 执行次数
* @param executionsNumberStart
*/
public LineAnalysisQuery executionsNumberStart(Integer executionsNumberStart){
this.executionsNumberStart = executionsNumberStart;
return this;
}
/**
* 设置 结束 执行次数
* @param executionsNumberEnd
*/
public LineAnalysisQuery executionsNumberEnd(Integer executionsNumberEnd){
this.executionsNumberEnd = executionsNumberEnd;
return this;
}
/**
* 设置 增加 执行次数
* @param executionsNumberIncrement
*/
public LineAnalysisQuery executionsNumberIncrement(Integer executionsNumberIncrement){
this.executionsNumberIncrement = executionsNumberIncrement;
return this;
}
/**
* 设置 执行次数
* @param executionsNumberList
*/
public LineAnalysisQuery executionsNumberList(List<Integer> executionsNumberList){
this.executionsNumberList = executionsNumberList;
return this;
}
/**
* 设置 执行次数
* @param executionsNumberNotList
*/
public LineAnalysisQuery executionsNumberNotList(List<Integer> executionsNumberNotList){
this.executionsNumberNotList = executionsNumberNotList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public LineAnalysisQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public LineAnalysisQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public LineAnalysisQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public LineAnalysisQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public LineAnalysisQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public LineAnalysisQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public LineAnalysisQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public LineAnalysisQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public LineAnalysisQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public LineAnalysisQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public LineAnalysisQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public LineAnalysisQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public LineAnalysisQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public LineAnalysisQuery 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<LineAnalysisQuery> 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<LineAnalysisQuery> 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<LineAnalysisQuery> 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<LineAnalysisQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.line.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
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 2023-07-15
*/
@Data
public class LineAnalysisVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.line.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
import com.mortals.xhx.module.line.dao.LineAnalysisDao;
/**
* LineAnalysisService
*
* 数据质量分析 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface LineAnalysisService extends ICRUDService<LineAnalysisEntity,Long>{
LineAnalysisDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.line.service.impl;
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.line.dao.LineAnalysisDao;
import com.mortals.xhx.module.line.model.LineAnalysisEntity;
import com.mortals.xhx.module.line.service.LineAnalysisService;
import lombok.extern.slf4j.Slf4j;
/**
* LineAnalysisService
* 数据质量分析 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("lineAnalysisService")
@Slf4j
public class LineAnalysisServiceImpl extends AbstractCRUDServiceImpl<LineAnalysisDao, LineAnalysisEntity, Long> implements LineAnalysisService {
}
\ No newline at end of file
package com.mortals.xhx.module.line.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.line.model.LineAnalysisEntity;
import com.mortals.xhx.module.line.service.LineAnalysisService;
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.*;
/**
*
* 数据质量分析
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("line/analysis")
public class LineAnalysisController extends BaseCRUDJsonBodyMappingController<LineAnalysisService,LineAnalysisEntity,Long> {
@Autowired
private ParamService paramService;
public LineAnalysisController(){
super.setModuleDesc( "数据质量分析");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "statuses", paramService.getParamBySecondOrganize("LineAnalysis","statuses"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.quality.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
import java.util.List;
/**
* 数据质量分析Dao
* 数据质量分析 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface QualityAnalysisDao extends ICRUDDao<QualityAnalysisEntity,Long>{
}
package com.mortals.xhx.module.quality.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.quality.dao.QualityAnalysisDao;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据质量分析DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("qualityAnalysisDao")
public class QualityAnalysisDaoImpl extends BaseCRUDDaoMybatis<QualityAnalysisEntity,Long> implements QualityAnalysisDao {
}
package com.mortals.xhx.module.quality.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.quality.model.vo.QualityAnalysisVo;
import lombok.Data;
/**
* 数据质量分析实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class QualityAnalysisEntity extends QualityAnalysisVo {
private static final long serialVersionUID = 1L;
/**
* 任务名称
*/
@Excel(name = "任务名称")
private String taskName;
/**
* 任务描述
*/
@Excel(name = "任务描述")
private String taskDescription;
/**
* 数据源名称
*/
@Excel(name = "数据源名称")
private String dataSourceName;
/**
* 源表
*/
@Excel(name = "源表")
private String sourceTable;
/**
* 源字段
*/
@Excel(name = "源字段")
private String sourceField;
/**
* 目标表
*/
@Excel(name = "目标表")
private String targetTable;
/**
* 目标字段
*/
@Excel(name = "目标字段")
private String targetField;
/**
* 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
*/
@Excel(name = "任务状态", readConverterExp = "0=新建,1.执行中,2.执行成功,3.执行失败")
private String statuses;
/**
* 执行次数
*/
@Excel(name = "执行次数")
private Integer executionsNumber;
/**
* 备注
*/
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 QualityAnalysisEntity) {
QualityAnalysisEntity tmp = (QualityAnalysisEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.taskName = "";
this.taskDescription = "";
this.dataSourceName = "";
this.sourceTable = "";
this.sourceField = "";
this.targetTable = "";
this.targetField = "";
this.statuses = "0";
this.executionsNumber = 0;
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.quality.model;
import java.util.List;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
/**
* 数据质量分析查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class QualityAnalysisQuery extends QualityAnalysisEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 任务名称 */
private List<String> taskNameList;
/** 任务名称排除列表 */
private List <String> taskNameNotList;
/** 任务描述 */
private List<String> taskDescriptionList;
/** 任务描述排除列表 */
private List <String> taskDescriptionNotList;
/** 数据源名称 */
private List<String> dataSourceNameList;
/** 数据源名称排除列表 */
private List <String> dataSourceNameNotList;
/** 源表 */
private List<String> sourceTableList;
/** 源表排除列表 */
private List <String> sourceTableNotList;
/** 源字段 */
private List<String> sourceFieldList;
/** 源字段排除列表 */
private List <String> sourceFieldNotList;
/** 目标表 */
private List<String> targetTableList;
/** 目标表排除列表 */
private List <String> targetTableNotList;
/** 目标字段 */
private List<String> targetFieldList;
/** 目标字段排除列表 */
private List <String> targetFieldNotList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败) */
private List<String> statusesList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)排除列表 */
private List <String> statusesNotList;
/** 开始 执行次数 */
private Integer executionsNumberStart;
/** 结束 执行次数 */
private Integer executionsNumberEnd;
/** 增加 执行次数 */
private Integer executionsNumberIncrement;
/** 执行次数列表 */
private List <Integer> executionsNumberList;
/** 执行次数排除列表 */
private List <Integer> executionsNumberNotList;
/** 备注 */
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<QualityAnalysisQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<QualityAnalysisQuery> andConditionList;
public QualityAnalysisQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 任务名称
* @return taskNameList
*/
public List<String> getTaskNameList(){
return this.taskNameList;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public void setTaskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
}
/**
* 获取 任务名称
* @return taskNameNotList
*/
public List<String> getTaskNameNotList(){
return this.taskNameNotList;
}
/**
* 设置 任务名称
* @param taskNameNotList
*/
public void setTaskNameNotList(List<String> taskNameNotList){
this.taskNameNotList = taskNameNotList;
}
/**
* 获取 任务描述
* @return taskDescriptionList
*/
public List<String> getTaskDescriptionList(){
return this.taskDescriptionList;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public void setTaskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
}
/**
* 获取 任务描述
* @return taskDescriptionNotList
*/
public List<String> getTaskDescriptionNotList(){
return this.taskDescriptionNotList;
}
/**
* 设置 任务描述
* @param taskDescriptionNotList
*/
public void setTaskDescriptionNotList(List<String> taskDescriptionNotList){
this.taskDescriptionNotList = taskDescriptionNotList;
}
/**
* 获取 数据源名称
* @return dataSourceNameList
*/
public List<String> getDataSourceNameList(){
return this.dataSourceNameList;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public void setDataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
}
/**
* 获取 数据源名称
* @return dataSourceNameNotList
*/
public List<String> getDataSourceNameNotList(){
return this.dataSourceNameNotList;
}
/**
* 设置 数据源名称
* @param dataSourceNameNotList
*/
public void setDataSourceNameNotList(List<String> dataSourceNameNotList){
this.dataSourceNameNotList = dataSourceNameNotList;
}
/**
* 获取 源表
* @return sourceTableList
*/
public List<String> getSourceTableList(){
return this.sourceTableList;
}
/**
* 设置 源表
* @param sourceTableList
*/
public void setSourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
}
/**
* 获取 源表
* @return sourceTableNotList
*/
public List<String> getSourceTableNotList(){
return this.sourceTableNotList;
}
/**
* 设置 源表
* @param sourceTableNotList
*/
public void setSourceTableNotList(List<String> sourceTableNotList){
this.sourceTableNotList = sourceTableNotList;
}
/**
* 获取 源字段
* @return sourceFieldList
*/
public List<String> getSourceFieldList(){
return this.sourceFieldList;
}
/**
* 设置 源字段
* @param sourceFieldList
*/
public void setSourceFieldList(List<String> sourceFieldList){
this.sourceFieldList = sourceFieldList;
}
/**
* 获取 源字段
* @return sourceFieldNotList
*/
public List<String> getSourceFieldNotList(){
return this.sourceFieldNotList;
}
/**
* 设置 源字段
* @param sourceFieldNotList
*/
public void setSourceFieldNotList(List<String> sourceFieldNotList){
this.sourceFieldNotList = sourceFieldNotList;
}
/**
* 获取 目标表
* @return targetTableList
*/
public List<String> getTargetTableList(){
return this.targetTableList;
}
/**
* 设置 目标表
* @param targetTableList
*/
public void setTargetTableList(List<String> targetTableList){
this.targetTableList = targetTableList;
}
/**
* 获取 目标表
* @return targetTableNotList
*/
public List<String> getTargetTableNotList(){
return this.targetTableNotList;
}
/**
* 设置 目标表
* @param targetTableNotList
*/
public void setTargetTableNotList(List<String> targetTableNotList){
this.targetTableNotList = targetTableNotList;
}
/**
* 获取 目标字段
* @return targetFieldList
*/
public List<String> getTargetFieldList(){
return this.targetFieldList;
}
/**
* 设置 目标字段
* @param targetFieldList
*/
public void setTargetFieldList(List<String> targetFieldList){
this.targetFieldList = targetFieldList;
}
/**
* 获取 目标字段
* @return targetFieldNotList
*/
public List<String> getTargetFieldNotList(){
return this.targetFieldNotList;
}
/**
* 设置 目标字段
* @param targetFieldNotList
*/
public void setTargetFieldNotList(List<String> targetFieldNotList){
this.targetFieldNotList = targetFieldNotList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesList
*/
public List<String> getStatusesList(){
return this.statusesList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public void setStatusesList(List<String> statusesList){
this.statusesList = statusesList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesNotList
*/
public List<String> getStatusesNotList(){
return this.statusesNotList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesNotList
*/
public void setStatusesNotList(List<String> statusesNotList){
this.statusesNotList = statusesNotList;
}
/**
* 获取 开始 执行次数
* @return executionsNumberStart
*/
public Integer getExecutionsNumberStart(){
return this.executionsNumberStart;
}
/**
* 设置 开始 执行次数
* @param executionsNumberStart
*/
public void setExecutionsNumberStart(Integer executionsNumberStart){
this.executionsNumberStart = executionsNumberStart;
}
/**
* 获取 结束 执行次数
* @return $executionsNumberEnd
*/
public Integer getExecutionsNumberEnd(){
return this.executionsNumberEnd;
}
/**
* 设置 结束 执行次数
* @param executionsNumberEnd
*/
public void setExecutionsNumberEnd(Integer executionsNumberEnd){
this.executionsNumberEnd = executionsNumberEnd;
}
/**
* 获取 增加 执行次数
* @return executionsNumberIncrement
*/
public Integer getExecutionsNumberIncrement(){
return this.executionsNumberIncrement;
}
/**
* 设置 增加 执行次数
* @param executionsNumberIncrement
*/
public void setExecutionsNumberIncrement(Integer executionsNumberIncrement){
this.executionsNumberIncrement = executionsNumberIncrement;
}
/**
* 获取 执行次数
* @return executionsNumberList
*/
public List<Integer> getExecutionsNumberList(){
return this.executionsNumberList;
}
/**
* 设置 执行次数
* @param executionsNumberList
*/
public void setExecutionsNumberList(List<Integer> executionsNumberList){
this.executionsNumberList = executionsNumberList;
}
/**
* 获取 执行次数
* @return executionsNumberNotList
*/
public List<Integer> getExecutionsNumberNotList(){
return this.executionsNumberNotList;
}
/**
* 设置 执行次数
* @param executionsNumberNotList
*/
public void setExecutionsNumberNotList(List<Integer> executionsNumberNotList){
this.executionsNumberNotList = executionsNumberNotList;
}
/**
* 获取 备注
* @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 QualityAnalysisQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public QualityAnalysisQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public QualityAnalysisQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public QualityAnalysisQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public QualityAnalysisQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public QualityAnalysisQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 任务名称
* @param taskName
*/
public QualityAnalysisQuery taskName(String taskName){
setTaskName(taskName);
return this;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public QualityAnalysisQuery taskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
return this;
}
/**
* 设置 任务描述
* @param taskDescription
*/
public QualityAnalysisQuery taskDescription(String taskDescription){
setTaskDescription(taskDescription);
return this;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public QualityAnalysisQuery taskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
return this;
}
/**
* 设置 数据源名称
* @param dataSourceName
*/
public QualityAnalysisQuery dataSourceName(String dataSourceName){
setDataSourceName(dataSourceName);
return this;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public QualityAnalysisQuery dataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
return this;
}
/**
* 设置 源表
* @param sourceTable
*/
public QualityAnalysisQuery sourceTable(String sourceTable){
setSourceTable(sourceTable);
return this;
}
/**
* 设置 源表
* @param sourceTableList
*/
public QualityAnalysisQuery sourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
return this;
}
/**
* 设置 源字段
* @param sourceField
*/
public QualityAnalysisQuery sourceField(String sourceField){
setSourceField(sourceField);
return this;
}
/**
* 设置 源字段
* @param sourceFieldList
*/
public QualityAnalysisQuery sourceFieldList(List<String> sourceFieldList){
this.sourceFieldList = sourceFieldList;
return this;
}
/**
* 设置 目标表
* @param targetTable
*/
public QualityAnalysisQuery targetTable(String targetTable){
setTargetTable(targetTable);
return this;
}
/**
* 设置 目标表
* @param targetTableList
*/
public QualityAnalysisQuery targetTableList(List<String> targetTableList){
this.targetTableList = targetTableList;
return this;
}
/**
* 设置 目标字段
* @param targetField
*/
public QualityAnalysisQuery targetField(String targetField){
setTargetField(targetField);
return this;
}
/**
* 设置 目标字段
* @param targetFieldList
*/
public QualityAnalysisQuery targetFieldList(List<String> targetFieldList){
this.targetFieldList = targetFieldList;
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statuses
*/
public QualityAnalysisQuery statuses(String statuses){
setStatuses(statuses);
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public QualityAnalysisQuery statusesList(List<String> statusesList){
this.statusesList = statusesList;
return this;
}
/**
* 设置 执行次数
* @param executionsNumber
*/
public QualityAnalysisQuery executionsNumber(Integer executionsNumber){
setExecutionsNumber(executionsNumber);
return this;
}
/**
* 设置 开始 执行次数
* @param executionsNumberStart
*/
public QualityAnalysisQuery executionsNumberStart(Integer executionsNumberStart){
this.executionsNumberStart = executionsNumberStart;
return this;
}
/**
* 设置 结束 执行次数
* @param executionsNumberEnd
*/
public QualityAnalysisQuery executionsNumberEnd(Integer executionsNumberEnd){
this.executionsNumberEnd = executionsNumberEnd;
return this;
}
/**
* 设置 增加 执行次数
* @param executionsNumberIncrement
*/
public QualityAnalysisQuery executionsNumberIncrement(Integer executionsNumberIncrement){
this.executionsNumberIncrement = executionsNumberIncrement;
return this;
}
/**
* 设置 执行次数
* @param executionsNumberList
*/
public QualityAnalysisQuery executionsNumberList(List<Integer> executionsNumberList){
this.executionsNumberList = executionsNumberList;
return this;
}
/**
* 设置 执行次数
* @param executionsNumberNotList
*/
public QualityAnalysisQuery executionsNumberNotList(List<Integer> executionsNumberNotList){
this.executionsNumberNotList = executionsNumberNotList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public QualityAnalysisQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public QualityAnalysisQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public QualityAnalysisQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public QualityAnalysisQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public QualityAnalysisQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public QualityAnalysisQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public QualityAnalysisQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public QualityAnalysisQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public QualityAnalysisQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public QualityAnalysisQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public QualityAnalysisQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public QualityAnalysisQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public QualityAnalysisQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public QualityAnalysisQuery 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<QualityAnalysisQuery> 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<QualityAnalysisQuery> 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<QualityAnalysisQuery> 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<QualityAnalysisQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.quality.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
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 2023-07-15
*/
@Data
public class QualityAnalysisVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.quality.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
import com.mortals.xhx.module.quality.dao.QualityAnalysisDao;
/**
* QualityAnalysisService
*
* 数据质量分析 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface QualityAnalysisService extends ICRUDService<QualityAnalysisEntity,Long>{
QualityAnalysisDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.quality.service.impl;
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.quality.dao.QualityAnalysisDao;
import com.mortals.xhx.module.quality.model.QualityAnalysisEntity;
import com.mortals.xhx.module.quality.service.QualityAnalysisService;
import lombok.extern.slf4j.Slf4j;
/**
* QualityAnalysisService
* 数据质量分析 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("qualityAnalysisService")
@Slf4j
public class QualityAnalysisServiceImpl extends AbstractCRUDServiceImpl<QualityAnalysisDao, QualityAnalysisEntity, Long> implements QualityAnalysisService {
}
\ No newline at end of file
package com.mortals.xhx.module.quality.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.quality.model.QualityAnalysisEntity;
import com.mortals.xhx.module.quality.service.QualityAnalysisService;
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.*;
/**
*
* 数据质量分析
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("quality/analysis")
public class QualityAnalysisController extends BaseCRUDJsonBodyMappingController<QualityAnalysisService,QualityAnalysisEntity,Long> {
@Autowired
private ParamService paramService;
public QualityAnalysisController(){
super.setModuleDesc( "数据质量分析");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "statuses", paramService.getParamBySecondOrganize("QualityAnalysis","statuses"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
import java.util.List;
/**
* 数据定时查探Dao
* 数据定时查探 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface ScheduledTaskDao extends ICRUDDao<ScheduledTaskEntity,Long>{
}
package com.mortals.xhx.module.scheduled.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
import java.util.List;
/**
* 数据定时查探详情Dao
* 数据定时查探详情 DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface ScheduledTaskDetailDao extends ICRUDDao<ScheduledTaskDetailEntity,Long>{
}
package com.mortals.xhx.module.scheduled.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.scheduled.dao.ScheduledTaskDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据定时查探DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("scheduledTaskDao")
public class ScheduledTaskDaoImpl extends BaseCRUDDaoMybatis<ScheduledTaskEntity,Long> implements ScheduledTaskDao {
}
package com.mortals.xhx.module.scheduled.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.scheduled.dao.ScheduledTaskDetailDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 数据定时查探详情DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-15
*/
@Repository("scheduledTaskDetailDao")
public class ScheduledTaskDetailDaoImpl extends BaseCRUDDaoMybatis<ScheduledTaskDetailEntity,Long> implements ScheduledTaskDetailDao {
}
package com.mortals.xhx.module.scheduled.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.scheduled.model.vo.ScheduledTaskDetailVo;
import lombok.Data;
/**
* 数据定时查探详情实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class ScheduledTaskDetailEntity extends ScheduledTaskDetailVo {
private static final long serialVersionUID = 1L;
/**
* 任务主键
*/
private Long taskId;
/**
* 开始时间
*/
@Excel(name = "开始时间")
private String startTime;
/**
* 结束时间
*/
@Excel(name = "结束时间")
private String endTime;
/**
* 数据量
*/
@Excel(name = "数据量")
private Integer number;
/**
* 备注
*/
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 ScheduledTaskDetailEntity) {
ScheduledTaskDetailEntity tmp = (ScheduledTaskDetailEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.taskId = -1L;
this.startTime = "";
this.endTime = "";
this.number = -1;
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.model;
import java.util.List;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
/**
* 数据定时查探详情查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class ScheduledTaskDetailQuery extends ScheduledTaskDetailEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 开始 任务主键 */
private Long taskIdStart;
/** 结束 任务主键 */
private Long taskIdEnd;
/** 增加 任务主键 */
private Long taskIdIncrement;
/** 任务主键列表 */
private List <Long> taskIdList;
/** 任务主键排除列表 */
private List <Long> taskIdNotList;
/** 开始时间 */
private List<String> startTimeList;
/** 开始时间排除列表 */
private List <String> startTimeNotList;
/** 结束时间 */
private List<String> endTimeList;
/** 结束时间排除列表 */
private List <String> endTimeNotList;
/** 开始 数据量 */
private Integer numberStart;
/** 结束 数据量 */
private Integer numberEnd;
/** 增加 数据量 */
private Integer numberIncrement;
/** 数据量列表 */
private List <Integer> numberList;
/** 数据量排除列表 */
private List <Integer> numberNotList;
/** 备注 */
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<ScheduledTaskDetailQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<ScheduledTaskDetailQuery> andConditionList;
public ScheduledTaskDetailQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 开始 任务主键
* @return taskIdStart
*/
public Long getTaskIdStart(){
return this.taskIdStart;
}
/**
* 设置 开始 任务主键
* @param taskIdStart
*/
public void setTaskIdStart(Long taskIdStart){
this.taskIdStart = taskIdStart;
}
/**
* 获取 结束 任务主键
* @return $taskIdEnd
*/
public Long getTaskIdEnd(){
return this.taskIdEnd;
}
/**
* 设置 结束 任务主键
* @param taskIdEnd
*/
public void setTaskIdEnd(Long taskIdEnd){
this.taskIdEnd = taskIdEnd;
}
/**
* 获取 增加 任务主键
* @return taskIdIncrement
*/
public Long getTaskIdIncrement(){
return this.taskIdIncrement;
}
/**
* 设置 增加 任务主键
* @param taskIdIncrement
*/
public void setTaskIdIncrement(Long taskIdIncrement){
this.taskIdIncrement = taskIdIncrement;
}
/**
* 获取 任务主键
* @return taskIdList
*/
public List<Long> getTaskIdList(){
return this.taskIdList;
}
/**
* 设置 任务主键
* @param taskIdList
*/
public void setTaskIdList(List<Long> taskIdList){
this.taskIdList = taskIdList;
}
/**
* 获取 任务主键
* @return taskIdNotList
*/
public List<Long> getTaskIdNotList(){
return this.taskIdNotList;
}
/**
* 设置 任务主键
* @param taskIdNotList
*/
public void setTaskIdNotList(List<Long> taskIdNotList){
this.taskIdNotList = taskIdNotList;
}
/**
* 获取 开始时间
* @return startTimeList
*/
public List<String> getStartTimeList(){
return this.startTimeList;
}
/**
* 设置 开始时间
* @param startTimeList
*/
public void setStartTimeList(List<String> startTimeList){
this.startTimeList = startTimeList;
}
/**
* 获取 开始时间
* @return startTimeNotList
*/
public List<String> getStartTimeNotList(){
return this.startTimeNotList;
}
/**
* 设置 开始时间
* @param startTimeNotList
*/
public void setStartTimeNotList(List<String> startTimeNotList){
this.startTimeNotList = startTimeNotList;
}
/**
* 获取 结束时间
* @return endTimeList
*/
public List<String> getEndTimeList(){
return this.endTimeList;
}
/**
* 设置 结束时间
* @param endTimeList
*/
public void setEndTimeList(List<String> endTimeList){
this.endTimeList = endTimeList;
}
/**
* 获取 结束时间
* @return endTimeNotList
*/
public List<String> getEndTimeNotList(){
return this.endTimeNotList;
}
/**
* 设置 结束时间
* @param endTimeNotList
*/
public void setEndTimeNotList(List<String> endTimeNotList){
this.endTimeNotList = endTimeNotList;
}
/**
* 获取 开始 数据量
* @return numberStart
*/
public Integer getNumberStart(){
return this.numberStart;
}
/**
* 设置 开始 数据量
* @param numberStart
*/
public void setNumberStart(Integer numberStart){
this.numberStart = numberStart;
}
/**
* 获取 结束 数据量
* @return $numberEnd
*/
public Integer getNumberEnd(){
return this.numberEnd;
}
/**
* 设置 结束 数据量
* @param numberEnd
*/
public void setNumberEnd(Integer numberEnd){
this.numberEnd = numberEnd;
}
/**
* 获取 增加 数据量
* @return numberIncrement
*/
public Integer getNumberIncrement(){
return this.numberIncrement;
}
/**
* 设置 增加 数据量
* @param numberIncrement
*/
public void setNumberIncrement(Integer numberIncrement){
this.numberIncrement = numberIncrement;
}
/**
* 获取 数据量
* @return numberList
*/
public List<Integer> getNumberList(){
return this.numberList;
}
/**
* 设置 数据量
* @param numberList
*/
public void setNumberList(List<Integer> numberList){
this.numberList = numberList;
}
/**
* 获取 数据量
* @return numberNotList
*/
public List<Integer> getNumberNotList(){
return this.numberNotList;
}
/**
* 设置 数据量
* @param numberNotList
*/
public void setNumberNotList(List<Integer> numberNotList){
this.numberNotList = numberNotList;
}
/**
* 获取 备注
* @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 ScheduledTaskDetailQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public ScheduledTaskDetailQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public ScheduledTaskDetailQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public ScheduledTaskDetailQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public ScheduledTaskDetailQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public ScheduledTaskDetailQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 任务主键
* @param taskId
*/
public ScheduledTaskDetailQuery taskId(Long taskId){
setTaskId(taskId);
return this;
}
/**
* 设置 开始 任务主键
* @param taskIdStart
*/
public ScheduledTaskDetailQuery taskIdStart(Long taskIdStart){
this.taskIdStart = taskIdStart;
return this;
}
/**
* 设置 结束 任务主键
* @param taskIdEnd
*/
public ScheduledTaskDetailQuery taskIdEnd(Long taskIdEnd){
this.taskIdEnd = taskIdEnd;
return this;
}
/**
* 设置 增加 任务主键
* @param taskIdIncrement
*/
public ScheduledTaskDetailQuery taskIdIncrement(Long taskIdIncrement){
this.taskIdIncrement = taskIdIncrement;
return this;
}
/**
* 设置 任务主键
* @param taskIdList
*/
public ScheduledTaskDetailQuery taskIdList(List<Long> taskIdList){
this.taskIdList = taskIdList;
return this;
}
/**
* 设置 任务主键
* @param taskIdNotList
*/
public ScheduledTaskDetailQuery taskIdNotList(List<Long> taskIdNotList){
this.taskIdNotList = taskIdNotList;
return this;
}
/**
* 设置 开始时间
* @param startTime
*/
public ScheduledTaskDetailQuery startTime(String startTime){
setStartTime(startTime);
return this;
}
/**
* 设置 开始时间
* @param startTimeList
*/
public ScheduledTaskDetailQuery startTimeList(List<String> startTimeList){
this.startTimeList = startTimeList;
return this;
}
/**
* 设置 结束时间
* @param endTime
*/
public ScheduledTaskDetailQuery endTime(String endTime){
setEndTime(endTime);
return this;
}
/**
* 设置 结束时间
* @param endTimeList
*/
public ScheduledTaskDetailQuery endTimeList(List<String> endTimeList){
this.endTimeList = endTimeList;
return this;
}
/**
* 设置 数据量
* @param number
*/
public ScheduledTaskDetailQuery number(Integer number){
setNumber(number);
return this;
}
/**
* 设置 开始 数据量
* @param numberStart
*/
public ScheduledTaskDetailQuery numberStart(Integer numberStart){
this.numberStart = numberStart;
return this;
}
/**
* 设置 结束 数据量
* @param numberEnd
*/
public ScheduledTaskDetailQuery numberEnd(Integer numberEnd){
this.numberEnd = numberEnd;
return this;
}
/**
* 设置 增加 数据量
* @param numberIncrement
*/
public ScheduledTaskDetailQuery numberIncrement(Integer numberIncrement){
this.numberIncrement = numberIncrement;
return this;
}
/**
* 设置 数据量
* @param numberList
*/
public ScheduledTaskDetailQuery numberList(List<Integer> numberList){
this.numberList = numberList;
return this;
}
/**
* 设置 数据量
* @param numberNotList
*/
public ScheduledTaskDetailQuery numberNotList(List<Integer> numberNotList){
this.numberNotList = numberNotList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public ScheduledTaskDetailQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public ScheduledTaskDetailQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public ScheduledTaskDetailQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public ScheduledTaskDetailQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public ScheduledTaskDetailQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public ScheduledTaskDetailQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public ScheduledTaskDetailQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public ScheduledTaskDetailQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public ScheduledTaskDetailQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public ScheduledTaskDetailQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public ScheduledTaskDetailQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public ScheduledTaskDetailQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public ScheduledTaskDetailQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public ScheduledTaskDetailQuery 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<ScheduledTaskDetailQuery> 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<ScheduledTaskDetailQuery> 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<ScheduledTaskDetailQuery> 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<ScheduledTaskDetailQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.scheduled.model.vo.ScheduledTaskVo;
import lombok.Data;
/**
* 数据定时查探实体对象
*
* @author zxfei
* @date 2023-07-15
*/
@Data
public class ScheduledTaskEntity extends ScheduledTaskVo {
private static final long serialVersionUID = 1L;
/**
* 任务名称
*/
@Excel(name = "任务名称")
private String taskName;
/**
* 任务描述
*/
@Excel(name = "任务描述")
private String taskDescription;
/**
* 数据源名称
*/
@Excel(name = "数据源名称")
private String dataSourceName;
/**
* 源表
*/
@Excel(name = "源表")
private String sourceTable;
/**
* 依据字段
*/
@Excel(name = "依据字段")
private String sourceField;
/**
* 定时类型(1.年,2.月,3.日)
*/
@Excel(name = "定时类型", readConverterExp = "1=年,2.月,3.日")
private String type;
/**
* 开始时间
*/
@Excel(name = "开始时间")
private String startTime;
/**
* 结束时间
*/
@Excel(name = "结束时间")
private String endTime;
/**
* 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
*/
@Excel(name = "任务状态", readConverterExp = "0=新建,1.执行中,2.执行成功,3.执行失败")
private String statuses;
/**
* 备注
*/
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 ScheduledTaskEntity) {
ScheduledTaskEntity tmp = (ScheduledTaskEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.taskName = "";
this.taskDescription = "";
this.dataSourceName = "";
this.sourceTable = "";
this.sourceField = "";
this.type = "";
this.startTime = "";
this.endTime = "";
this.statuses = "0";
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.model;
import java.util.List;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
/**
* 数据定时查探查询对象
*
* @author zxfei
* @date 2023-07-15
*/
public class ScheduledTaskQuery extends ScheduledTaskEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
/** 结束 主键ID,主键,自增长 */
private Long idEnd;
/** 增加 主键ID,主键,自增长 */
private Long idIncrement;
/** 主键ID,主键,自增长列表 */
private List <Long> idList;
/** 主键ID,主键,自增长排除列表 */
private List <Long> idNotList;
/** 任务名称 */
private List<String> taskNameList;
/** 任务名称排除列表 */
private List <String> taskNameNotList;
/** 任务描述 */
private List<String> taskDescriptionList;
/** 任务描述排除列表 */
private List <String> taskDescriptionNotList;
/** 数据源名称 */
private List<String> dataSourceNameList;
/** 数据源名称排除列表 */
private List <String> dataSourceNameNotList;
/** 源表 */
private List<String> sourceTableList;
/** 源表排除列表 */
private List <String> sourceTableNotList;
/** 依据字段 */
private List<String> sourceFieldList;
/** 依据字段排除列表 */
private List <String> sourceFieldNotList;
/** 定时类型(1.年,2.月,3.日) */
private List<String> typeList;
/** 定时类型(1.年,2.月,3.日)排除列表 */
private List <String> typeNotList;
/** 开始时间 */
private List<String> startTimeList;
/** 开始时间排除列表 */
private List <String> startTimeNotList;
/** 结束时间 */
private List<String> endTimeList;
/** 结束时间排除列表 */
private List <String> endTimeNotList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败) */
private List<String> statusesList;
/** 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)排除列表 */
private List <String> statusesNotList;
/** 备注 */
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<ScheduledTaskQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<ScheduledTaskQuery> andConditionList;
public ScheduledTaskQuery(){}
/**
* 获取 开始 主键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;
}
/**
* 获取 任务名称
* @return taskNameList
*/
public List<String> getTaskNameList(){
return this.taskNameList;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public void setTaskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
}
/**
* 获取 任务名称
* @return taskNameNotList
*/
public List<String> getTaskNameNotList(){
return this.taskNameNotList;
}
/**
* 设置 任务名称
* @param taskNameNotList
*/
public void setTaskNameNotList(List<String> taskNameNotList){
this.taskNameNotList = taskNameNotList;
}
/**
* 获取 任务描述
* @return taskDescriptionList
*/
public List<String> getTaskDescriptionList(){
return this.taskDescriptionList;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public void setTaskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
}
/**
* 获取 任务描述
* @return taskDescriptionNotList
*/
public List<String> getTaskDescriptionNotList(){
return this.taskDescriptionNotList;
}
/**
* 设置 任务描述
* @param taskDescriptionNotList
*/
public void setTaskDescriptionNotList(List<String> taskDescriptionNotList){
this.taskDescriptionNotList = taskDescriptionNotList;
}
/**
* 获取 数据源名称
* @return dataSourceNameList
*/
public List<String> getDataSourceNameList(){
return this.dataSourceNameList;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public void setDataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
}
/**
* 获取 数据源名称
* @return dataSourceNameNotList
*/
public List<String> getDataSourceNameNotList(){
return this.dataSourceNameNotList;
}
/**
* 设置 数据源名称
* @param dataSourceNameNotList
*/
public void setDataSourceNameNotList(List<String> dataSourceNameNotList){
this.dataSourceNameNotList = dataSourceNameNotList;
}
/**
* 获取 源表
* @return sourceTableList
*/
public List<String> getSourceTableList(){
return this.sourceTableList;
}
/**
* 设置 源表
* @param sourceTableList
*/
public void setSourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
}
/**
* 获取 源表
* @return sourceTableNotList
*/
public List<String> getSourceTableNotList(){
return this.sourceTableNotList;
}
/**
* 设置 源表
* @param sourceTableNotList
*/
public void setSourceTableNotList(List<String> sourceTableNotList){
this.sourceTableNotList = sourceTableNotList;
}
/**
* 获取 依据字段
* @return sourceFieldList
*/
public List<String> getSourceFieldList(){
return this.sourceFieldList;
}
/**
* 设置 依据字段
* @param sourceFieldList
*/
public void setSourceFieldList(List<String> sourceFieldList){
this.sourceFieldList = sourceFieldList;
}
/**
* 获取 依据字段
* @return sourceFieldNotList
*/
public List<String> getSourceFieldNotList(){
return this.sourceFieldNotList;
}
/**
* 设置 依据字段
* @param sourceFieldNotList
*/
public void setSourceFieldNotList(List<String> sourceFieldNotList){
this.sourceFieldNotList = sourceFieldNotList;
}
/**
* 获取 定时类型(1.年,2.月,3.日)
* @return typeList
*/
public List<String> getTypeList(){
return this.typeList;
}
/**
* 设置 定时类型(1.年,2.月,3.日)
* @param typeList
*/
public void setTypeList(List<String> typeList){
this.typeList = typeList;
}
/**
* 获取 定时类型(1.年,2.月,3.日)
* @return typeNotList
*/
public List<String> getTypeNotList(){
return this.typeNotList;
}
/**
* 设置 定时类型(1.年,2.月,3.日)
* @param typeNotList
*/
public void setTypeNotList(List<String> typeNotList){
this.typeNotList = typeNotList;
}
/**
* 获取 开始时间
* @return startTimeList
*/
public List<String> getStartTimeList(){
return this.startTimeList;
}
/**
* 设置 开始时间
* @param startTimeList
*/
public void setStartTimeList(List<String> startTimeList){
this.startTimeList = startTimeList;
}
/**
* 获取 开始时间
* @return startTimeNotList
*/
public List<String> getStartTimeNotList(){
return this.startTimeNotList;
}
/**
* 设置 开始时间
* @param startTimeNotList
*/
public void setStartTimeNotList(List<String> startTimeNotList){
this.startTimeNotList = startTimeNotList;
}
/**
* 获取 结束时间
* @return endTimeList
*/
public List<String> getEndTimeList(){
return this.endTimeList;
}
/**
* 设置 结束时间
* @param endTimeList
*/
public void setEndTimeList(List<String> endTimeList){
this.endTimeList = endTimeList;
}
/**
* 获取 结束时间
* @return endTimeNotList
*/
public List<String> getEndTimeNotList(){
return this.endTimeNotList;
}
/**
* 设置 结束时间
* @param endTimeNotList
*/
public void setEndTimeNotList(List<String> endTimeNotList){
this.endTimeNotList = endTimeNotList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesList
*/
public List<String> getStatusesList(){
return this.statusesList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public void setStatusesList(List<String> statusesList){
this.statusesList = statusesList;
}
/**
* 获取 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @return statusesNotList
*/
public List<String> getStatusesNotList(){
return this.statusesNotList;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesNotList
*/
public void setStatusesNotList(List<String> statusesNotList){
this.statusesNotList = statusesNotList;
}
/**
* 获取 备注
* @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 ScheduledTaskQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 主键ID,主键,自增长
* @param idStart
*/
public ScheduledTaskQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 主键ID,主键,自增长
* @param idEnd
*/
public ScheduledTaskQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 主键ID,主键,自增长
* @param idIncrement
*/
public ScheduledTaskQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idList
*/
public ScheduledTaskQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 主键ID,主键,自增长
* @param idNotList
*/
public ScheduledTaskQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 任务名称
* @param taskName
*/
public ScheduledTaskQuery taskName(String taskName){
setTaskName(taskName);
return this;
}
/**
* 设置 任务名称
* @param taskNameList
*/
public ScheduledTaskQuery taskNameList(List<String> taskNameList){
this.taskNameList = taskNameList;
return this;
}
/**
* 设置 任务描述
* @param taskDescription
*/
public ScheduledTaskQuery taskDescription(String taskDescription){
setTaskDescription(taskDescription);
return this;
}
/**
* 设置 任务描述
* @param taskDescriptionList
*/
public ScheduledTaskQuery taskDescriptionList(List<String> taskDescriptionList){
this.taskDescriptionList = taskDescriptionList;
return this;
}
/**
* 设置 数据源名称
* @param dataSourceName
*/
public ScheduledTaskQuery dataSourceName(String dataSourceName){
setDataSourceName(dataSourceName);
return this;
}
/**
* 设置 数据源名称
* @param dataSourceNameList
*/
public ScheduledTaskQuery dataSourceNameList(List<String> dataSourceNameList){
this.dataSourceNameList = dataSourceNameList;
return this;
}
/**
* 设置 源表
* @param sourceTable
*/
public ScheduledTaskQuery sourceTable(String sourceTable){
setSourceTable(sourceTable);
return this;
}
/**
* 设置 源表
* @param sourceTableList
*/
public ScheduledTaskQuery sourceTableList(List<String> sourceTableList){
this.sourceTableList = sourceTableList;
return this;
}
/**
* 设置 依据字段
* @param sourceField
*/
public ScheduledTaskQuery sourceField(String sourceField){
setSourceField(sourceField);
return this;
}
/**
* 设置 依据字段
* @param sourceFieldList
*/
public ScheduledTaskQuery sourceFieldList(List<String> sourceFieldList){
this.sourceFieldList = sourceFieldList;
return this;
}
/**
* 设置 定时类型(1.年,2.月,3.日)
* @param type
*/
public ScheduledTaskQuery type(String type){
setType(type);
return this;
}
/**
* 设置 定时类型(1.年,2.月,3.日)
* @param typeList
*/
public ScheduledTaskQuery typeList(List<String> typeList){
this.typeList = typeList;
return this;
}
/**
* 设置 开始时间
* @param startTime
*/
public ScheduledTaskQuery startTime(String startTime){
setStartTime(startTime);
return this;
}
/**
* 设置 开始时间
* @param startTimeList
*/
public ScheduledTaskQuery startTimeList(List<String> startTimeList){
this.startTimeList = startTimeList;
return this;
}
/**
* 设置 结束时间
* @param endTime
*/
public ScheduledTaskQuery endTime(String endTime){
setEndTime(endTime);
return this;
}
/**
* 设置 结束时间
* @param endTimeList
*/
public ScheduledTaskQuery endTimeList(List<String> endTimeList){
this.endTimeList = endTimeList;
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statuses
*/
public ScheduledTaskQuery statuses(String statuses){
setStatuses(statuses);
return this;
}
/**
* 设置 任务状态(0.新建,1.执行中,2.执行成功,3.执行失败)
* @param statusesList
*/
public ScheduledTaskQuery statusesList(List<String> statusesList){
this.statusesList = statusesList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public ScheduledTaskQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public ScheduledTaskQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public ScheduledTaskQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public ScheduledTaskQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public ScheduledTaskQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public ScheduledTaskQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public ScheduledTaskQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public ScheduledTaskQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public ScheduledTaskQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public ScheduledTaskQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public ScheduledTaskQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public ScheduledTaskQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public ScheduledTaskQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public ScheduledTaskQuery 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<ScheduledTaskQuery> 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<ScheduledTaskQuery> 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<ScheduledTaskQuery> 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<ScheduledTaskQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
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 2023-07-15
*/
@Data
public class ScheduledTaskDetailVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
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 2023-07-15
*/
@Data
public class ScheduledTaskVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
import com.mortals.xhx.module.scheduled.dao.ScheduledTaskDetailDao;
/**
* ScheduledTaskDetailService
*
* 数据定时查探详情 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface ScheduledTaskDetailService extends ICRUDService<ScheduledTaskDetailEntity,Long>{
ScheduledTaskDetailDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
import com.mortals.xhx.module.scheduled.dao.ScheduledTaskDao;
/**
* ScheduledTaskService
*
* 数据定时查探 service接口
*
* @author zxfei
* @date 2023-07-15
*/
public interface ScheduledTaskService extends ICRUDService<ScheduledTaskEntity,Long>{
ScheduledTaskDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.service.impl;
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.scheduled.dao.ScheduledTaskDetailDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskDetailEntity;
import com.mortals.xhx.module.scheduled.service.ScheduledTaskDetailService;
import lombok.extern.slf4j.Slf4j;
/**
* ScheduledTaskDetailService
* 数据定时查探详情 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("scheduledTaskDetailService")
@Slf4j
public class ScheduledTaskDetailServiceImpl extends AbstractCRUDServiceImpl<ScheduledTaskDetailDao, ScheduledTaskDetailEntity, Long> implements ScheduledTaskDetailService {
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.service.impl;
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.scheduled.dao.ScheduledTaskDao;
import com.mortals.xhx.module.scheduled.model.ScheduledTaskEntity;
import com.mortals.xhx.module.scheduled.service.ScheduledTaskService;
import lombok.extern.slf4j.Slf4j;
/**
* ScheduledTaskService
* 数据定时查探 service实现
*
* @author zxfei
* @date 2023-07-15
*/
@Service("scheduledTaskService")
@Slf4j
public class ScheduledTaskServiceImpl extends AbstractCRUDServiceImpl<ScheduledTaskDao, ScheduledTaskEntity, Long> implements ScheduledTaskService {
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.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.scheduled.model.ScheduledTaskEntity;
import com.mortals.xhx.module.scheduled.service.ScheduledTaskService;
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.*;
/**
*
* 数据定时查探
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("scheduled/task")
public class ScheduledTaskController extends BaseCRUDJsonBodyMappingController<ScheduledTaskService,ScheduledTaskEntity,Long> {
@Autowired
private ParamService paramService;
public ScheduledTaskController(){
super.setModuleDesc( "数据定时查探");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("ScheduledTask","type"));
this.addDict(model, "statuses", paramService.getParamBySecondOrganize("ScheduledTask","statuses"));
super.init(model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.scheduled.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.scheduled.model.ScheduledTaskDetailEntity;
import com.mortals.xhx.module.scheduled.service.ScheduledTaskDetailService;
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.*;
/**
*
* 数据定时查探详情
*
* @author zxfei
* @date 2023-07-15
*/
@RestController
@RequestMapping("scheduled/task/detail")
public class ScheduledTaskDetailController extends BaseCRUDJsonBodyMappingController<ScheduledTaskDetailService,ScheduledTaskDetailEntity,Long> {
@Autowired
private ParamService paramService;
public ScheduledTaskDetailController(){
super.setModuleDesc( "数据定时查探详情");
}
@Override
protected void init(Map<String, Object> model, Context context) {
super.init(model, context);
}
}
\ 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.base.dao.ibatis.BaseRuleDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="BaseRuleEntity" id="BaseRuleEntity-Map">
<id property="id" column="id" />
<result property="name" column="name" />
<result property="testItem" column="testItem" />
<result property="indicators" column="indicators" />
<result property="type" column="type" />
<result property="content" column="content" />
<result property="description" column="description" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('name') or colPickMode == 1 and data.containsKey('name')))">
a.name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('testItem') or colPickMode == 1 and data.containsKey('testItem')))">
a.testItem,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('indicators') or colPickMode == 1 and data.containsKey('indicators')))">
a.indicators,
</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('description') or colPickMode == 1 and data.containsKey('description')))">
a.description,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="BaseRuleEntity" useGeneratedKeys="true" keyProperty="id">
insert into base_rule
(name,testItem,indicators,type,content,description,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{name},#{testItem},#{indicators},#{type},#{content},#{description},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into base_rule
(name,testItem,indicators,type,content,description,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.name},#{item.testItem},#{item.indicators},#{item.type},#{item.content},#{item.description},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update base_rule as a
set
<trim suffixOverrides="," suffix="">
<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('testItem')) or (colPickMode==1 and !data.containsKey('testItem'))">
a.testItem=#{data.testItem},
</if>
<if test="(colPickMode==0 and data.containsKey('indicators')) or (colPickMode==1 and !data.containsKey('indicators'))">
a.indicators=#{data.indicators},
</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('description')) or (colPickMode==1 and !data.containsKey('description'))">
a.description=#{data.description},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 base_rule as a
<trim prefix="set" suffixOverrides=",">
<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="testItem=(case" suffix="ELSE testItem end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('testItem')) or (colPickMode==1 and !item.containsKey('testItem'))">
when a.id=#{item.id} then #{item.testItem}
</if>
</foreach>
</trim>
<trim prefix="indicators=(case" suffix="ELSE indicators end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('indicators')) or (colPickMode==1 and !item.containsKey('indicators'))">
when a.id=#{item.id} then #{item.indicators}
</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="description=(case" suffix="ELSE description end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('description')) or (colPickMode==1 and !item.containsKey('description'))">
when a.id=#{item.id} then #{item.description}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="BaseRuleEntity-Map">
select <include refid="_columns"/>
from base_rule as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from base_rule as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from base_rule where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from base_rule where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from base_rule 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 base_rule as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="BaseRuleEntity-Map">
select <include refid="_columns"/>
from base_rule 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 base_rule 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="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('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('testItem')">
<if test="conditionParamRef.testItem != null and conditionParamRef.testItem != ''">
${_conditionType_} a.testItem like #{${_conditionParam_}.testItem}
</if>
<if test="conditionParamRef.testItem == null">
${_conditionType_} a.testItem is null
</if>
</if>
<if test="conditionParamRef.containsKey('testItemList') and conditionParamRef.testItemList.size() > 0">
${_conditionType_} a.testItem in
<foreach collection="conditionParamRef.testItemList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('testItemNotList') and conditionParamRef.testItemNotList.size() > 0">
${_conditionType_} a.testItem not in
<foreach collection="conditionParamRef.testItemNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('indicators')">
<if test="conditionParamRef.indicators != null and conditionParamRef.indicators != ''">
${_conditionType_} a.indicators like #{${_conditionParam_}.indicators}
</if>
<if test="conditionParamRef.indicators == null">
${_conditionType_} a.indicators is null
</if>
</if>
<if test="conditionParamRef.containsKey('indicatorsList') and conditionParamRef.indicatorsList.size() > 0">
${_conditionType_} a.indicators in
<foreach collection="conditionParamRef.indicatorsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('indicatorsNotList') and conditionParamRef.indicatorsNotList.size() > 0">
${_conditionType_} a.indicators not in
<foreach collection="conditionParamRef.indicatorsNotList" 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('description')">
<if test="conditionParamRef.description != null and conditionParamRef.description != ''">
${_conditionType_} a.description like #{${_conditionParam_}.description}
</if>
<if test="conditionParamRef.description == null">
${_conditionType_} a.description is null
</if>
</if>
<if test="conditionParamRef.containsKey('descriptionList') and conditionParamRef.descriptionList.size() > 0">
${_conditionType_} a.description in
<foreach collection="conditionParamRef.descriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('descriptionNotList') and conditionParamRef.descriptionNotList.size() > 0">
${_conditionType_} a.description not in
<foreach collection="conditionParamRef.descriptionNotList" 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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('name')">
a.name
<if test='orderCol.name != null and "DESC".equalsIgnoreCase(orderCol.name)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('testItem')">
a.testItem
<if test='orderCol.testItem != null and "DESC".equalsIgnoreCase(orderCol.testItem)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('indicators')">
a.indicators
<if test='orderCol.indicators != null and "DESC".equalsIgnoreCase(orderCol.indicators)'>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('description')">
a.description
<if test='orderCol.description != null and "DESC".equalsIgnoreCase(orderCol.description)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.data.dao.ibatis.DataQualityAnalysisDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="DataQualityAnalysisEntity" id="DataQualityAnalysisEntity-Map">
<id property="id" column="id" />
<result property="taskName" column="taskName" />
<result property="taskDescription" column="taskDescription" />
<result property="dataSourceName" column="dataSourceName" />
<result property="sourceTable" column="sourceTable" />
<result property="sourceField" column="sourceField" />
<result property="targetTable" column="targetTable" />
<result property="targetField" column="targetField" />
<result property="type" column="type" />
<result property="analysisObject" column="analysisObject" />
<result property="statuses" column="statuses" />
<result property="executionsNumber" column="executionsNumber" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('taskName') or colPickMode == 1 and data.containsKey('taskName')))">
a.taskName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('taskDescription') or colPickMode == 1 and data.containsKey('taskDescription')))">
a.taskDescription,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('dataSourceName') or colPickMode == 1 and data.containsKey('dataSourceName')))">
a.dataSourceName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceTable') or colPickMode == 1 and data.containsKey('sourceTable')))">
a.sourceTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceField') or colPickMode == 1 and data.containsKey('sourceField')))">
a.sourceField,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('targetTable') or colPickMode == 1 and data.containsKey('targetTable')))">
a.targetTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('targetField') or colPickMode == 1 and data.containsKey('targetField')))">
a.targetField,
</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('analysisObject') or colPickMode == 1 and data.containsKey('analysisObject')))">
a.analysisObject,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('executionsNumber') or colPickMode == 1 and data.containsKey('executionsNumber')))">
a.executionsNumber,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="DataQualityAnalysisEntity" useGeneratedKeys="true" keyProperty="id">
insert into data_quality_analysis
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,targetTable,targetField,type,analysisObject,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{taskName},#{taskDescription},#{dataSourceName},#{sourceTable},#{sourceField},#{targetTable},#{targetField},#{type},#{analysisObject},#{statuses},#{executionsNumber},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into data_quality_analysis
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,targetTable,targetField,type,analysisObject,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.taskName},#{item.taskDescription},#{item.dataSourceName},#{item.sourceTable},#{item.sourceField},#{item.targetTable},#{item.targetField},#{item.type},#{item.analysisObject},#{item.statuses},#{item.executionsNumber},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update data_quality_analysis as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('taskName')) or (colPickMode==1 and !data.containsKey('taskName'))">
a.taskName=#{data.taskName},
</if>
<if test="(colPickMode==0 and data.containsKey('taskDescription')) or (colPickMode==1 and !data.containsKey('taskDescription'))">
a.taskDescription=#{data.taskDescription},
</if>
<if test="(colPickMode==0 and data.containsKey('dataSourceName')) or (colPickMode==1 and !data.containsKey('dataSourceName'))">
a.dataSourceName=#{data.dataSourceName},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceTable')) or (colPickMode==1 and !data.containsKey('sourceTable'))">
a.sourceTable=#{data.sourceTable},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceField')) or (colPickMode==1 and !data.containsKey('sourceField'))">
a.sourceField=#{data.sourceField},
</if>
<if test="(colPickMode==0 and data.containsKey('targetTable')) or (colPickMode==1 and !data.containsKey('targetTable'))">
a.targetTable=#{data.targetTable},
</if>
<if test="(colPickMode==0 and data.containsKey('targetField')) or (colPickMode==1 and !data.containsKey('targetField'))">
a.targetField=#{data.targetField},
</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('analysisObject')) or (colPickMode==1 and !data.containsKey('analysisObject'))">
a.analysisObject=#{data.analysisObject},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumber')) or (colPickMode==1 and !data.containsKey('executionsNumber'))">
a.executionsNumber=#{data.executionsNumber},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !data.containsKey('executionsNumberIncrement'))">
a.executionsNumber=ifnull(a.executionsNumber,0) + #{data.executionsNumberIncrement},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 data_quality_analysis as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="taskName=(case" suffix="ELSE taskName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskName')) or (colPickMode==1 and !item.containsKey('taskName'))">
when a.id=#{item.id} then #{item.taskName}
</if>
</foreach>
</trim>
<trim prefix="taskDescription=(case" suffix="ELSE taskDescription end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskDescription')) or (colPickMode==1 and !item.containsKey('taskDescription'))">
when a.id=#{item.id} then #{item.taskDescription}
</if>
</foreach>
</trim>
<trim prefix="dataSourceName=(case" suffix="ELSE dataSourceName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('dataSourceName')) or (colPickMode==1 and !item.containsKey('dataSourceName'))">
when a.id=#{item.id} then #{item.dataSourceName}
</if>
</foreach>
</trim>
<trim prefix="sourceTable=(case" suffix="ELSE sourceTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceTable')) or (colPickMode==1 and !item.containsKey('sourceTable'))">
when a.id=#{item.id} then #{item.sourceTable}
</if>
</foreach>
</trim>
<trim prefix="sourceField=(case" suffix="ELSE sourceField end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceField')) or (colPickMode==1 and !item.containsKey('sourceField'))">
when a.id=#{item.id} then #{item.sourceField}
</if>
</foreach>
</trim>
<trim prefix="targetTable=(case" suffix="ELSE targetTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('targetTable')) or (colPickMode==1 and !item.containsKey('targetTable'))">
when a.id=#{item.id} then #{item.targetTable}
</if>
</foreach>
</trim>
<trim prefix="targetField=(case" suffix="ELSE targetField end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('targetField')) or (colPickMode==1 and !item.containsKey('targetField'))">
when a.id=#{item.id} then #{item.targetField}
</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="analysisObject=(case" suffix="ELSE analysisObject end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('analysisObject')) or (colPickMode==1 and !item.containsKey('analysisObject'))">
when a.id=#{item.id} then #{item.analysisObject}
</if>
</foreach>
</trim>
<trim prefix="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</if>
</foreach>
</trim>
<trim prefix="executionsNumber=(case" suffix="ELSE executionsNumber end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('executionsNumber')) or (colPickMode==1 and !item.containsKey('executionsNumber'))">
when a.id=#{item.id} then #{item.executionsNumber}
</when>
<when test="(colPickMode==0 and item.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !item.containsKey('executionsNumberIncrement'))">
when a.id=#{item.id} then ifnull(a.executionsNumber,0) + #{item.executionsNumberIncrement}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="DataQualityAnalysisEntity-Map">
select <include refid="_columns"/>
from data_quality_analysis as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from data_quality_analysis as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from data_quality_analysis where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from data_quality_analysis where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from data_quality_analysis 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 data_quality_analysis as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="DataQualityAnalysisEntity-Map">
select <include refid="_columns"/>
from data_quality_analysis 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 data_quality_analysis 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="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('taskName')">
<if test="conditionParamRef.taskName != null and conditionParamRef.taskName != ''">
${_conditionType_} a.taskName like #{${_conditionParam_}.taskName}
</if>
<if test="conditionParamRef.taskName == null">
${_conditionType_} a.taskName is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskNameList') and conditionParamRef.taskNameList.size() > 0">
${_conditionType_} a.taskName in
<foreach collection="conditionParamRef.taskNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskNameNotList') and conditionParamRef.taskNameNotList.size() > 0">
${_conditionType_} a.taskName not in
<foreach collection="conditionParamRef.taskNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescription')">
<if test="conditionParamRef.taskDescription != null and conditionParamRef.taskDescription != ''">
${_conditionType_} a.taskDescription like #{${_conditionParam_}.taskDescription}
</if>
<if test="conditionParamRef.taskDescription == null">
${_conditionType_} a.taskDescription is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionList') and conditionParamRef.taskDescriptionList.size() > 0">
${_conditionType_} a.taskDescription in
<foreach collection="conditionParamRef.taskDescriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionNotList') and conditionParamRef.taskDescriptionNotList.size() > 0">
${_conditionType_} a.taskDescription not in
<foreach collection="conditionParamRef.taskDescriptionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceName')">
<if test="conditionParamRef.dataSourceName != null and conditionParamRef.dataSourceName != ''">
${_conditionType_} a.dataSourceName like #{${_conditionParam_}.dataSourceName}
</if>
<if test="conditionParamRef.dataSourceName == null">
${_conditionType_} a.dataSourceName is null
</if>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameList') and conditionParamRef.dataSourceNameList.size() > 0">
${_conditionType_} a.dataSourceName in
<foreach collection="conditionParamRef.dataSourceNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameNotList') and conditionParamRef.dataSourceNameNotList.size() > 0">
${_conditionType_} a.dataSourceName not in
<foreach collection="conditionParamRef.dataSourceNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTable')">
<if test="conditionParamRef.sourceTable != null and conditionParamRef.sourceTable != ''">
${_conditionType_} a.sourceTable like #{${_conditionParam_}.sourceTable}
</if>
<if test="conditionParamRef.sourceTable == null">
${_conditionType_} a.sourceTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceTableList') and conditionParamRef.sourceTableList.size() > 0">
${_conditionType_} a.sourceTable in
<foreach collection="conditionParamRef.sourceTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTableNotList') and conditionParamRef.sourceTableNotList.size() > 0">
${_conditionType_} a.sourceTable not in
<foreach collection="conditionParamRef.sourceTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceField')">
<if test="conditionParamRef.sourceField != null and conditionParamRef.sourceField != ''">
${_conditionType_} a.sourceField like #{${_conditionParam_}.sourceField}
</if>
<if test="conditionParamRef.sourceField == null">
${_conditionType_} a.sourceField is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceFieldList') and conditionParamRef.sourceFieldList.size() > 0">
${_conditionType_} a.sourceField in
<foreach collection="conditionParamRef.sourceFieldList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceFieldNotList') and conditionParamRef.sourceFieldNotList.size() > 0">
${_conditionType_} a.sourceField not in
<foreach collection="conditionParamRef.sourceFieldNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetTable')">
<if test="conditionParamRef.targetTable != null and conditionParamRef.targetTable != ''">
${_conditionType_} a.targetTable like #{${_conditionParam_}.targetTable}
</if>
<if test="conditionParamRef.targetTable == null">
${_conditionType_} a.targetTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('targetTableList') and conditionParamRef.targetTableList.size() > 0">
${_conditionType_} a.targetTable in
<foreach collection="conditionParamRef.targetTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetTableNotList') and conditionParamRef.targetTableNotList.size() > 0">
${_conditionType_} a.targetTable not in
<foreach collection="conditionParamRef.targetTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetField')">
<if test="conditionParamRef.targetField != null and conditionParamRef.targetField != ''">
${_conditionType_} a.targetField like #{${_conditionParam_}.targetField}
</if>
<if test="conditionParamRef.targetField == null">
${_conditionType_} a.targetField is null
</if>
</if>
<if test="conditionParamRef.containsKey('targetFieldList') and conditionParamRef.targetFieldList.size() > 0">
${_conditionType_} a.targetField in
<foreach collection="conditionParamRef.targetFieldList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetFieldNotList') and conditionParamRef.targetFieldNotList.size() > 0">
${_conditionType_} a.targetField not in
<foreach collection="conditionParamRef.targetFieldNotList" 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('analysisObject')">
<if test="conditionParamRef.analysisObject != null and conditionParamRef.analysisObject != ''">
${_conditionType_} a.analysisObject like #{${_conditionParam_}.analysisObject}
</if>
<if test="conditionParamRef.analysisObject == null">
${_conditionType_} a.analysisObject is null
</if>
</if>
<if test="conditionParamRef.containsKey('analysisObjectList') and conditionParamRef.analysisObjectList.size() > 0">
${_conditionType_} a.analysisObject in
<foreach collection="conditionParamRef.analysisObjectList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('analysisObjectNotList') and conditionParamRef.analysisObjectNotList.size() > 0">
${_conditionType_} a.analysisObject not in
<foreach collection="conditionParamRef.analysisObjectNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumber')">
<if test="conditionParamRef.executionsNumber != null ">
${_conditionType_} a.executionsNumber = #{${_conditionParam_}.executionsNumber}
</if>
<if test="conditionParamRef.executionsNumber == null">
${_conditionType_} a.executionsNumber is null
</if>
</if>
<if test="conditionParamRef.containsKey('executionsNumberList') and conditionParamRef.executionsNumberList.size() > 0">
${_conditionType_} a.executionsNumber in
<foreach collection="conditionParamRef.executionsNumberList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberNotList') and conditionParamRef.executionsNumberNotList.size() > 0">
${_conditionType_} a.executionsNumber not in
<foreach collection="conditionParamRef.executionsNumberNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberStart') and conditionParamRef.executionsNumberStart != null">
${_conditionType_} a.executionsNumber <![CDATA[ >= ]]> #{${_conditionParam_}.executionsNumberStart}
</if>
<if test="conditionParamRef.containsKey('executionsNumberEnd') and conditionParamRef.executionsNumberEnd != null">
${_conditionType_} a.executionsNumber <![CDATA[ <= ]]> #{${_conditionParam_}.executionsNumberEnd}
</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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('taskName')">
a.taskName
<if test='orderCol.taskName != null and "DESC".equalsIgnoreCase(orderCol.taskName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('taskDescription')">
a.taskDescription
<if test='orderCol.taskDescription != null and "DESC".equalsIgnoreCase(orderCol.taskDescription)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('dataSourceName')">
a.dataSourceName
<if test='orderCol.dataSourceName != null and "DESC".equalsIgnoreCase(orderCol.dataSourceName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceTable')">
a.sourceTable
<if test='orderCol.sourceTable != null and "DESC".equalsIgnoreCase(orderCol.sourceTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceField')">
a.sourceField
<if test='orderCol.sourceField != null and "DESC".equalsIgnoreCase(orderCol.sourceField)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('targetTable')">
a.targetTable
<if test='orderCol.targetTable != null and "DESC".equalsIgnoreCase(orderCol.targetTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('targetField')">
a.targetField
<if test='orderCol.targetField != null and "DESC".equalsIgnoreCase(orderCol.targetField)'>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('analysisObject')">
a.analysisObject
<if test='orderCol.analysisObject != null and "DESC".equalsIgnoreCase(orderCol.analysisObject)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('executionsNumber')">
a.executionsNumber
<if test='orderCol.executionsNumber != null and "DESC".equalsIgnoreCase(orderCol.executionsNumber)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.data.dao.ibatis.DataSourceDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="DataSourceEntity" id="DataSourceEntity-Map">
<id property="id" column="id" />
<result property="name" column="name" />
<result property="sourceSystem" column="sourceSystem" />
<result property="type" column="type" />
<result property="ip" column="ip" />
<result property="port" column="port" />
<result property="serverName" column="serverName" />
<result property="userName" column="userName" />
<result property="password" column="password" />
<result property="statuses" column="statuses" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('name') or colPickMode == 1 and data.containsKey('name')))">
a.name,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceSystem') or colPickMode == 1 and data.containsKey('sourceSystem')))">
a.sourceSystem,
</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('ip') or colPickMode == 1 and data.containsKey('ip')))">
a.ip,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('port') or colPickMode == 1 and data.containsKey('port')))">
a.port,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('serverName') or colPickMode == 1 and data.containsKey('serverName')))">
a.serverName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('userName') or colPickMode == 1 and data.containsKey('userName')))">
a.userName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('password') or colPickMode == 1 and data.containsKey('password')))">
a.password,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="DataSourceEntity" useGeneratedKeys="true" keyProperty="id">
insert into data_source
(name,sourceSystem,type,ip,port,serverName,userName,password,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{name},#{sourceSystem},#{type},#{ip},#{port},#{serverName},#{userName},#{password},#{statuses},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into data_source
(name,sourceSystem,type,ip,port,serverName,userName,password,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.name},#{item.sourceSystem},#{item.type},#{item.ip},#{item.port},#{item.serverName},#{item.userName},#{item.password},#{item.statuses},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update data_source as a
set
<trim suffixOverrides="," suffix="">
<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('sourceSystem')) or (colPickMode==1 and !data.containsKey('sourceSystem'))">
a.sourceSystem=#{data.sourceSystem},
</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('ip')) or (colPickMode==1 and !data.containsKey('ip'))">
a.ip=#{data.ip},
</if>
<if test="(colPickMode==0 and data.containsKey('port')) or (colPickMode==1 and !data.containsKey('port'))">
a.port=#{data.port},
</if>
<if test="(colPickMode==0 and data.containsKey('serverName')) or (colPickMode==1 and !data.containsKey('serverName'))">
a.serverName=#{data.serverName},
</if>
<if test="(colPickMode==0 and data.containsKey('userName')) or (colPickMode==1 and !data.containsKey('userName'))">
a.userName=#{data.userName},
</if>
<if test="(colPickMode==0 and data.containsKey('password')) or (colPickMode==1 and !data.containsKey('password'))">
a.password=#{data.password},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 data_source as a
<trim prefix="set" suffixOverrides=",">
<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="sourceSystem=(case" suffix="ELSE sourceSystem end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceSystem')) or (colPickMode==1 and !item.containsKey('sourceSystem'))">
when a.id=#{item.id} then #{item.sourceSystem}
</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="ip=(case" suffix="ELSE ip end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('ip')) or (colPickMode==1 and !item.containsKey('ip'))">
when a.id=#{item.id} then #{item.ip}
</if>
</foreach>
</trim>
<trim prefix="port=(case" suffix="ELSE port end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('port')) or (colPickMode==1 and !item.containsKey('port'))">
when a.id=#{item.id} then #{item.port}
</if>
</foreach>
</trim>
<trim prefix="serverName=(case" suffix="ELSE serverName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('serverName')) or (colPickMode==1 and !item.containsKey('serverName'))">
when a.id=#{item.id} then #{item.serverName}
</if>
</foreach>
</trim>
<trim prefix="userName=(case" suffix="ELSE userName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('userName')) or (colPickMode==1 and !item.containsKey('userName'))">
when a.id=#{item.id} then #{item.userName}
</if>
</foreach>
</trim>
<trim prefix="password=(case" suffix="ELSE password end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('password')) or (colPickMode==1 and !item.containsKey('password'))">
when a.id=#{item.id} then #{item.password}
</if>
</foreach>
</trim>
<trim prefix="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="DataSourceEntity-Map">
select <include refid="_columns"/>
from data_source as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from data_source as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from data_source where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from data_source where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from data_source 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 data_source as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="DataSourceEntity-Map">
select <include refid="_columns"/>
from data_source 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 data_source 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="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('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('sourceSystem')">
<if test="conditionParamRef.sourceSystem != null and conditionParamRef.sourceSystem != ''">
${_conditionType_} a.sourceSystem like #{${_conditionParam_}.sourceSystem}
</if>
<if test="conditionParamRef.sourceSystem == null">
${_conditionType_} a.sourceSystem is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceSystemList') and conditionParamRef.sourceSystemList.size() > 0">
${_conditionType_} a.sourceSystem in
<foreach collection="conditionParamRef.sourceSystemList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceSystemNotList') and conditionParamRef.sourceSystemNotList.size() > 0">
${_conditionType_} a.sourceSystem not in
<foreach collection="conditionParamRef.sourceSystemNotList" 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('ip')">
<if test="conditionParamRef.ip != null and conditionParamRef.ip != ''">
${_conditionType_} a.ip like #{${_conditionParam_}.ip}
</if>
<if test="conditionParamRef.ip == null">
${_conditionType_} a.ip is null
</if>
</if>
<if test="conditionParamRef.containsKey('ipList') and conditionParamRef.ipList.size() > 0">
${_conditionType_} a.ip in
<foreach collection="conditionParamRef.ipList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('ipNotList') and conditionParamRef.ipNotList.size() > 0">
${_conditionType_} a.ip not in
<foreach collection="conditionParamRef.ipNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('port')">
<if test="conditionParamRef.port != null and conditionParamRef.port != ''">
${_conditionType_} a.port like #{${_conditionParam_}.port}
</if>
<if test="conditionParamRef.port == null">
${_conditionType_} a.port is null
</if>
</if>
<if test="conditionParamRef.containsKey('portList') and conditionParamRef.portList.size() > 0">
${_conditionType_} a.port in
<foreach collection="conditionParamRef.portList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('portNotList') and conditionParamRef.portNotList.size() > 0">
${_conditionType_} a.port not in
<foreach collection="conditionParamRef.portNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('serverName')">
<if test="conditionParamRef.serverName != null and conditionParamRef.serverName != ''">
${_conditionType_} a.serverName like #{${_conditionParam_}.serverName}
</if>
<if test="conditionParamRef.serverName == null">
${_conditionType_} a.serverName is null
</if>
</if>
<if test="conditionParamRef.containsKey('serverNameList') and conditionParamRef.serverNameList.size() > 0">
${_conditionType_} a.serverName in
<foreach collection="conditionParamRef.serverNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('serverNameNotList') and conditionParamRef.serverNameNotList.size() > 0">
${_conditionType_} a.serverName not in
<foreach collection="conditionParamRef.serverNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('userName')">
<if test="conditionParamRef.userName != null and conditionParamRef.userName != ''">
${_conditionType_} a.userName like #{${_conditionParam_}.userName}
</if>
<if test="conditionParamRef.userName == null">
${_conditionType_} a.userName is null
</if>
</if>
<if test="conditionParamRef.containsKey('userNameList') and conditionParamRef.userNameList.size() > 0">
${_conditionType_} a.userName in
<foreach collection="conditionParamRef.userNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('userNameNotList') and conditionParamRef.userNameNotList.size() > 0">
${_conditionType_} a.userName not in
<foreach collection="conditionParamRef.userNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('password')">
<if test="conditionParamRef.password != null and conditionParamRef.password != ''">
${_conditionType_} a.password like #{${_conditionParam_}.password}
</if>
<if test="conditionParamRef.password == null">
${_conditionType_} a.password is null
</if>
</if>
<if test="conditionParamRef.containsKey('passwordList') and conditionParamRef.passwordList.size() > 0">
${_conditionType_} a.password in
<foreach collection="conditionParamRef.passwordList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('passwordNotList') and conditionParamRef.passwordNotList.size() > 0">
${_conditionType_} a.password not in
<foreach collection="conditionParamRef.passwordNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" 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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('name')">
a.name
<if test='orderCol.name != null and "DESC".equalsIgnoreCase(orderCol.name)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceSystem')">
a.sourceSystem
<if test='orderCol.sourceSystem != null and "DESC".equalsIgnoreCase(orderCol.sourceSystem)'>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('ip')">
a.ip
<if test='orderCol.ip != null and "DESC".equalsIgnoreCase(orderCol.ip)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('port')">
a.port
<if test='orderCol.port != null and "DESC".equalsIgnoreCase(orderCol.port)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('serverName')">
a.serverName
<if test='orderCol.serverName != null and "DESC".equalsIgnoreCase(orderCol.serverName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('userName')">
a.userName
<if test='orderCol.userName != null and "DESC".equalsIgnoreCase(orderCol.userName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('password')">
a.password
<if test='orderCol.password != null and "DESC".equalsIgnoreCase(orderCol.password)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.database.dao.ibatis.DatabaseRuleDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="DatabaseRuleEntity" id="DatabaseRuleEntity-Map">
<id property="id" column="id" />
<result property="name" column="name" />
<result property="source" column="source" />
<result property="sourceTable" column="sourceTable" />
<result property="type" column="type" />
<result property="expression" column="expression" />
<result property="prerequisite" column="prerequisite" />
<result property="level" column="level" />
<result property="weights" column="weights" />
<result property="description" column="description" />
<result property="dataType" column="dataType" />
<result property="statuses" column="statuses" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('name') or colPickMode == 1 and data.containsKey('name')))">
a.name,
</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('sourceTable') or colPickMode == 1 and data.containsKey('sourceTable')))">
a.sourceTable,
</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('expression') or colPickMode == 1 and data.containsKey('expression')))">
a.expression,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('prerequisite') or colPickMode == 1 and data.containsKey('prerequisite')))">
a.prerequisite,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('level') or colPickMode == 1 and data.containsKey('level')))">
a.level,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('weights') or colPickMode == 1 and data.containsKey('weights')))">
a.weights,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('description') or colPickMode == 1 and data.containsKey('description')))">
a.description,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('dataType') or colPickMode == 1 and data.containsKey('dataType')))">
a.dataType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="DatabaseRuleEntity" useGeneratedKeys="true" keyProperty="id">
insert into database_rule
(name,source,sourceTable,type,expression,prerequisite,level,weights,description,dataType,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{name},#{source},#{sourceTable},#{type},#{expression},#{prerequisite},#{level},#{weights},#{description},#{dataType},#{statuses},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into database_rule
(name,source,sourceTable,type,expression,prerequisite,level,weights,description,dataType,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.name},#{item.source},#{item.sourceTable},#{item.type},#{item.expression},#{item.prerequisite},#{item.level},#{item.weights},#{item.description},#{item.dataType},#{item.statuses},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update database_rule as a
set
<trim suffixOverrides="," suffix="">
<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('source')) or (colPickMode==1 and !data.containsKey('source'))">
a.source=#{data.source},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceTable')) or (colPickMode==1 and !data.containsKey('sourceTable'))">
a.sourceTable=#{data.sourceTable},
</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('expression')) or (colPickMode==1 and !data.containsKey('expression'))">
a.expression=#{data.expression},
</if>
<if test="(colPickMode==0 and data.containsKey('prerequisite')) or (colPickMode==1 and !data.containsKey('prerequisite'))">
a.prerequisite=#{data.prerequisite},
</if>
<if test="(colPickMode==0 and data.containsKey('level')) or (colPickMode==1 and !data.containsKey('level'))">
a.level=#{data.level},
</if>
<if test="(colPickMode==0 and data.containsKey('weights')) or (colPickMode==1 and !data.containsKey('weights'))">
a.weights=#{data.weights},
</if>
<if test="(colPickMode==0 and data.containsKey('description')) or (colPickMode==1 and !data.containsKey('description'))">
a.description=#{data.description},
</if>
<if test="(colPickMode==0 and data.containsKey('dataType')) or (colPickMode==1 and !data.containsKey('dataType'))">
a.dataType=#{data.dataType},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 database_rule as a
<trim prefix="set" suffixOverrides=",">
<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="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="sourceTable=(case" suffix="ELSE sourceTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceTable')) or (colPickMode==1 and !item.containsKey('sourceTable'))">
when a.id=#{item.id} then #{item.sourceTable}
</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="expression=(case" suffix="ELSE expression end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('expression')) or (colPickMode==1 and !item.containsKey('expression'))">
when a.id=#{item.id} then #{item.expression}
</if>
</foreach>
</trim>
<trim prefix="prerequisite=(case" suffix="ELSE prerequisite end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('prerequisite')) or (colPickMode==1 and !item.containsKey('prerequisite'))">
when a.id=#{item.id} then #{item.prerequisite}
</if>
</foreach>
</trim>
<trim prefix="level=(case" suffix="ELSE level end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('level')) or (colPickMode==1 and !item.containsKey('level'))">
when a.id=#{item.id} then #{item.level}
</if>
</foreach>
</trim>
<trim prefix="weights=(case" suffix="ELSE weights end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('weights')) or (colPickMode==1 and !item.containsKey('weights'))">
when a.id=#{item.id} then #{item.weights}
</if>
</foreach>
</trim>
<trim prefix="description=(case" suffix="ELSE description end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('description')) or (colPickMode==1 and !item.containsKey('description'))">
when a.id=#{item.id} then #{item.description}
</if>
</foreach>
</trim>
<trim prefix="dataType=(case" suffix="ELSE dataType end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('dataType')) or (colPickMode==1 and !item.containsKey('dataType'))">
when a.id=#{item.id} then #{item.dataType}
</if>
</foreach>
</trim>
<trim prefix="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="DatabaseRuleEntity-Map">
select <include refid="_columns"/>
from database_rule as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from database_rule as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from database_rule where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from database_rule where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from database_rule 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 database_rule as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="DatabaseRuleEntity-Map">
select <include refid="_columns"/>
from database_rule 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 database_rule 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="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('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('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('sourceTable')">
<if test="conditionParamRef.sourceTable != null and conditionParamRef.sourceTable != ''">
${_conditionType_} a.sourceTable like #{${_conditionParam_}.sourceTable}
</if>
<if test="conditionParamRef.sourceTable == null">
${_conditionType_} a.sourceTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceTableList') and conditionParamRef.sourceTableList.size() > 0">
${_conditionType_} a.sourceTable in
<foreach collection="conditionParamRef.sourceTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTableNotList') and conditionParamRef.sourceTableNotList.size() > 0">
${_conditionType_} a.sourceTable not in
<foreach collection="conditionParamRef.sourceTableNotList" 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('expression')">
<if test="conditionParamRef.expression != null and conditionParamRef.expression != ''">
${_conditionType_} a.expression like #{${_conditionParam_}.expression}
</if>
<if test="conditionParamRef.expression == null">
${_conditionType_} a.expression is null
</if>
</if>
<if test="conditionParamRef.containsKey('expressionList') and conditionParamRef.expressionList.size() > 0">
${_conditionType_} a.expression in
<foreach collection="conditionParamRef.expressionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('expressionNotList') and conditionParamRef.expressionNotList.size() > 0">
${_conditionType_} a.expression not in
<foreach collection="conditionParamRef.expressionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('prerequisite')">
<if test="conditionParamRef.prerequisite != null and conditionParamRef.prerequisite != ''">
${_conditionType_} a.prerequisite like #{${_conditionParam_}.prerequisite}
</if>
<if test="conditionParamRef.prerequisite == null">
${_conditionType_} a.prerequisite is null
</if>
</if>
<if test="conditionParamRef.containsKey('prerequisiteList') and conditionParamRef.prerequisiteList.size() > 0">
${_conditionType_} a.prerequisite in
<foreach collection="conditionParamRef.prerequisiteList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('prerequisiteNotList') and conditionParamRef.prerequisiteNotList.size() > 0">
${_conditionType_} a.prerequisite not in
<foreach collection="conditionParamRef.prerequisiteNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('level')">
<if test="conditionParamRef.level != null and conditionParamRef.level != ''">
${_conditionType_} a.level like #{${_conditionParam_}.level}
</if>
<if test="conditionParamRef.level == null">
${_conditionType_} a.level is null
</if>
</if>
<if test="conditionParamRef.containsKey('levelList') and conditionParamRef.levelList.size() > 0">
${_conditionType_} a.level in
<foreach collection="conditionParamRef.levelList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('levelNotList') and conditionParamRef.levelNotList.size() > 0">
${_conditionType_} a.level not in
<foreach collection="conditionParamRef.levelNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('weights')">
<if test="conditionParamRef.weights != null and conditionParamRef.weights != ''">
${_conditionType_} a.weights like #{${_conditionParam_}.weights}
</if>
<if test="conditionParamRef.weights == null">
${_conditionType_} a.weights is null
</if>
</if>
<if test="conditionParamRef.containsKey('weightsList') and conditionParamRef.weightsList.size() > 0">
${_conditionType_} a.weights in
<foreach collection="conditionParamRef.weightsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('weightsNotList') and conditionParamRef.weightsNotList.size() > 0">
${_conditionType_} a.weights not in
<foreach collection="conditionParamRef.weightsNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('description')">
<if test="conditionParamRef.description != null and conditionParamRef.description != ''">
${_conditionType_} a.description like #{${_conditionParam_}.description}
</if>
<if test="conditionParamRef.description == null">
${_conditionType_} a.description is null
</if>
</if>
<if test="conditionParamRef.containsKey('descriptionList') and conditionParamRef.descriptionList.size() > 0">
${_conditionType_} a.description in
<foreach collection="conditionParamRef.descriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('descriptionNotList') and conditionParamRef.descriptionNotList.size() > 0">
${_conditionType_} a.description not in
<foreach collection="conditionParamRef.descriptionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataType')">
<if test="conditionParamRef.dataType != null and conditionParamRef.dataType != ''">
${_conditionType_} a.dataType like #{${_conditionParam_}.dataType}
</if>
<if test="conditionParamRef.dataType == null">
${_conditionType_} a.dataType is null
</if>
</if>
<if test="conditionParamRef.containsKey('dataTypeList') and conditionParamRef.dataTypeList.size() > 0">
${_conditionType_} a.dataType in
<foreach collection="conditionParamRef.dataTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataTypeNotList') and conditionParamRef.dataTypeNotList.size() > 0">
${_conditionType_} a.dataType not in
<foreach collection="conditionParamRef.dataTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" 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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('name')">
a.name
<if test='orderCol.name != null and "DESC".equalsIgnoreCase(orderCol.name)'>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('sourceTable')">
a.sourceTable
<if test='orderCol.sourceTable != null and "DESC".equalsIgnoreCase(orderCol.sourceTable)'>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('expression')">
a.expression
<if test='orderCol.expression != null and "DESC".equalsIgnoreCase(orderCol.expression)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('prerequisite')">
a.prerequisite
<if test='orderCol.prerequisite != null and "DESC".equalsIgnoreCase(orderCol.prerequisite)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('level')">
a.level
<if test='orderCol.level != null and "DESC".equalsIgnoreCase(orderCol.level)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('weights')">
a.weights
<if test='orderCol.weights != null and "DESC".equalsIgnoreCase(orderCol.weights)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('description')">
a.description
<if test='orderCol.description != null and "DESC".equalsIgnoreCase(orderCol.description)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('dataType')">
a.dataType
<if test='orderCol.dataType != null and "DESC".equalsIgnoreCase(orderCol.dataType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.line.dao.ibatis.LineAnalysisDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="LineAnalysisEntity" id="LineAnalysisEntity-Map">
<id property="id" column="id" />
<result property="taskName" column="taskName" />
<result property="taskDescription" column="taskDescription" />
<result property="dataSourceName" column="dataSourceName" />
<result property="sourceTable" column="sourceTable" />
<result property="analysisObject" column="analysisObject" />
<result property="statuses" column="statuses" />
<result property="executionsNumber" column="executionsNumber" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('taskName') or colPickMode == 1 and data.containsKey('taskName')))">
a.taskName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('taskDescription') or colPickMode == 1 and data.containsKey('taskDescription')))">
a.taskDescription,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('dataSourceName') or colPickMode == 1 and data.containsKey('dataSourceName')))">
a.dataSourceName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceTable') or colPickMode == 1 and data.containsKey('sourceTable')))">
a.sourceTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('analysisObject') or colPickMode == 1 and data.containsKey('analysisObject')))">
a.analysisObject,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('executionsNumber') or colPickMode == 1 and data.containsKey('executionsNumber')))">
a.executionsNumber,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="LineAnalysisEntity" useGeneratedKeys="true" keyProperty="id">
insert into line_analysis
(taskName,taskDescription,dataSourceName,sourceTable,analysisObject,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{taskName},#{taskDescription},#{dataSourceName},#{sourceTable},#{analysisObject},#{statuses},#{executionsNumber},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into line_analysis
(taskName,taskDescription,dataSourceName,sourceTable,analysisObject,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.taskName},#{item.taskDescription},#{item.dataSourceName},#{item.sourceTable},#{item.analysisObject},#{item.statuses},#{item.executionsNumber},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update line_analysis as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('taskName')) or (colPickMode==1 and !data.containsKey('taskName'))">
a.taskName=#{data.taskName},
</if>
<if test="(colPickMode==0 and data.containsKey('taskDescription')) or (colPickMode==1 and !data.containsKey('taskDescription'))">
a.taskDescription=#{data.taskDescription},
</if>
<if test="(colPickMode==0 and data.containsKey('dataSourceName')) or (colPickMode==1 and !data.containsKey('dataSourceName'))">
a.dataSourceName=#{data.dataSourceName},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceTable')) or (colPickMode==1 and !data.containsKey('sourceTable'))">
a.sourceTable=#{data.sourceTable},
</if>
<if test="(colPickMode==0 and data.containsKey('analysisObject')) or (colPickMode==1 and !data.containsKey('analysisObject'))">
a.analysisObject=#{data.analysisObject},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumber')) or (colPickMode==1 and !data.containsKey('executionsNumber'))">
a.executionsNumber=#{data.executionsNumber},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !data.containsKey('executionsNumberIncrement'))">
a.executionsNumber=ifnull(a.executionsNumber,0) + #{data.executionsNumberIncrement},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 line_analysis as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="taskName=(case" suffix="ELSE taskName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskName')) or (colPickMode==1 and !item.containsKey('taskName'))">
when a.id=#{item.id} then #{item.taskName}
</if>
</foreach>
</trim>
<trim prefix="taskDescription=(case" suffix="ELSE taskDescription end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskDescription')) or (colPickMode==1 and !item.containsKey('taskDescription'))">
when a.id=#{item.id} then #{item.taskDescription}
</if>
</foreach>
</trim>
<trim prefix="dataSourceName=(case" suffix="ELSE dataSourceName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('dataSourceName')) or (colPickMode==1 and !item.containsKey('dataSourceName'))">
when a.id=#{item.id} then #{item.dataSourceName}
</if>
</foreach>
</trim>
<trim prefix="sourceTable=(case" suffix="ELSE sourceTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceTable')) or (colPickMode==1 and !item.containsKey('sourceTable'))">
when a.id=#{item.id} then #{item.sourceTable}
</if>
</foreach>
</trim>
<trim prefix="analysisObject=(case" suffix="ELSE analysisObject end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('analysisObject')) or (colPickMode==1 and !item.containsKey('analysisObject'))">
when a.id=#{item.id} then #{item.analysisObject}
</if>
</foreach>
</trim>
<trim prefix="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</if>
</foreach>
</trim>
<trim prefix="executionsNumber=(case" suffix="ELSE executionsNumber end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('executionsNumber')) or (colPickMode==1 and !item.containsKey('executionsNumber'))">
when a.id=#{item.id} then #{item.executionsNumber}
</when>
<when test="(colPickMode==0 and item.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !item.containsKey('executionsNumberIncrement'))">
when a.id=#{item.id} then ifnull(a.executionsNumber,0) + #{item.executionsNumberIncrement}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="LineAnalysisEntity-Map">
select <include refid="_columns"/>
from line_analysis as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from line_analysis as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from line_analysis where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from line_analysis where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from line_analysis 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 line_analysis as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="LineAnalysisEntity-Map">
select <include refid="_columns"/>
from line_analysis 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 line_analysis 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="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('taskName')">
<if test="conditionParamRef.taskName != null and conditionParamRef.taskName != ''">
${_conditionType_} a.taskName like #{${_conditionParam_}.taskName}
</if>
<if test="conditionParamRef.taskName == null">
${_conditionType_} a.taskName is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskNameList') and conditionParamRef.taskNameList.size() > 0">
${_conditionType_} a.taskName in
<foreach collection="conditionParamRef.taskNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskNameNotList') and conditionParamRef.taskNameNotList.size() > 0">
${_conditionType_} a.taskName not in
<foreach collection="conditionParamRef.taskNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescription')">
<if test="conditionParamRef.taskDescription != null and conditionParamRef.taskDescription != ''">
${_conditionType_} a.taskDescription like #{${_conditionParam_}.taskDescription}
</if>
<if test="conditionParamRef.taskDescription == null">
${_conditionType_} a.taskDescription is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionList') and conditionParamRef.taskDescriptionList.size() > 0">
${_conditionType_} a.taskDescription in
<foreach collection="conditionParamRef.taskDescriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionNotList') and conditionParamRef.taskDescriptionNotList.size() > 0">
${_conditionType_} a.taskDescription not in
<foreach collection="conditionParamRef.taskDescriptionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceName')">
<if test="conditionParamRef.dataSourceName != null and conditionParamRef.dataSourceName != ''">
${_conditionType_} a.dataSourceName like #{${_conditionParam_}.dataSourceName}
</if>
<if test="conditionParamRef.dataSourceName == null">
${_conditionType_} a.dataSourceName is null
</if>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameList') and conditionParamRef.dataSourceNameList.size() > 0">
${_conditionType_} a.dataSourceName in
<foreach collection="conditionParamRef.dataSourceNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameNotList') and conditionParamRef.dataSourceNameNotList.size() > 0">
${_conditionType_} a.dataSourceName not in
<foreach collection="conditionParamRef.dataSourceNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTable')">
<if test="conditionParamRef.sourceTable != null and conditionParamRef.sourceTable != ''">
${_conditionType_} a.sourceTable like #{${_conditionParam_}.sourceTable}
</if>
<if test="conditionParamRef.sourceTable == null">
${_conditionType_} a.sourceTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceTableList') and conditionParamRef.sourceTableList.size() > 0">
${_conditionType_} a.sourceTable in
<foreach collection="conditionParamRef.sourceTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTableNotList') and conditionParamRef.sourceTableNotList.size() > 0">
${_conditionType_} a.sourceTable not in
<foreach collection="conditionParamRef.sourceTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('analysisObject')">
<if test="conditionParamRef.analysisObject != null and conditionParamRef.analysisObject != ''">
${_conditionType_} a.analysisObject like #{${_conditionParam_}.analysisObject}
</if>
<if test="conditionParamRef.analysisObject == null">
${_conditionType_} a.analysisObject is null
</if>
</if>
<if test="conditionParamRef.containsKey('analysisObjectList') and conditionParamRef.analysisObjectList.size() > 0">
${_conditionType_} a.analysisObject in
<foreach collection="conditionParamRef.analysisObjectList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('analysisObjectNotList') and conditionParamRef.analysisObjectNotList.size() > 0">
${_conditionType_} a.analysisObject not in
<foreach collection="conditionParamRef.analysisObjectNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumber')">
<if test="conditionParamRef.executionsNumber != null ">
${_conditionType_} a.executionsNumber = #{${_conditionParam_}.executionsNumber}
</if>
<if test="conditionParamRef.executionsNumber == null">
${_conditionType_} a.executionsNumber is null
</if>
</if>
<if test="conditionParamRef.containsKey('executionsNumberList') and conditionParamRef.executionsNumberList.size() > 0">
${_conditionType_} a.executionsNumber in
<foreach collection="conditionParamRef.executionsNumberList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberNotList') and conditionParamRef.executionsNumberNotList.size() > 0">
${_conditionType_} a.executionsNumber not in
<foreach collection="conditionParamRef.executionsNumberNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberStart') and conditionParamRef.executionsNumberStart != null">
${_conditionType_} a.executionsNumber <![CDATA[ >= ]]> #{${_conditionParam_}.executionsNumberStart}
</if>
<if test="conditionParamRef.containsKey('executionsNumberEnd') and conditionParamRef.executionsNumberEnd != null">
${_conditionType_} a.executionsNumber <![CDATA[ <= ]]> #{${_conditionParam_}.executionsNumberEnd}
</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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('taskName')">
a.taskName
<if test='orderCol.taskName != null and "DESC".equalsIgnoreCase(orderCol.taskName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('taskDescription')">
a.taskDescription
<if test='orderCol.taskDescription != null and "DESC".equalsIgnoreCase(orderCol.taskDescription)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('dataSourceName')">
a.dataSourceName
<if test='orderCol.dataSourceName != null and "DESC".equalsIgnoreCase(orderCol.dataSourceName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceTable')">
a.sourceTable
<if test='orderCol.sourceTable != null and "DESC".equalsIgnoreCase(orderCol.sourceTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('analysisObject')">
a.analysisObject
<if test='orderCol.analysisObject != null and "DESC".equalsIgnoreCase(orderCol.analysisObject)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('executionsNumber')">
a.executionsNumber
<if test='orderCol.executionsNumber != null and "DESC".equalsIgnoreCase(orderCol.executionsNumber)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.quality.dao.ibatis.QualityAnalysisDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="QualityAnalysisEntity" id="QualityAnalysisEntity-Map">
<id property="id" column="id" />
<result property="taskName" column="taskName" />
<result property="taskDescription" column="taskDescription" />
<result property="dataSourceName" column="dataSourceName" />
<result property="sourceTable" column="sourceTable" />
<result property="sourceField" column="sourceField" />
<result property="targetTable" column="targetTable" />
<result property="targetField" column="targetField" />
<result property="statuses" column="statuses" />
<result property="executionsNumber" column="executionsNumber" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('taskName') or colPickMode == 1 and data.containsKey('taskName')))">
a.taskName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('taskDescription') or colPickMode == 1 and data.containsKey('taskDescription')))">
a.taskDescription,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('dataSourceName') or colPickMode == 1 and data.containsKey('dataSourceName')))">
a.dataSourceName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceTable') or colPickMode == 1 and data.containsKey('sourceTable')))">
a.sourceTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceField') or colPickMode == 1 and data.containsKey('sourceField')))">
a.sourceField,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('targetTable') or colPickMode == 1 and data.containsKey('targetTable')))">
a.targetTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('targetField') or colPickMode == 1 and data.containsKey('targetField')))">
a.targetField,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('executionsNumber') or colPickMode == 1 and data.containsKey('executionsNumber')))">
a.executionsNumber,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="QualityAnalysisEntity" useGeneratedKeys="true" keyProperty="id">
insert into quality_analysis
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,targetTable,targetField,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{taskName},#{taskDescription},#{dataSourceName},#{sourceTable},#{sourceField},#{targetTable},#{targetField},#{statuses},#{executionsNumber},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into quality_analysis
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,targetTable,targetField,statuses,executionsNumber,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.taskName},#{item.taskDescription},#{item.dataSourceName},#{item.sourceTable},#{item.sourceField},#{item.targetTable},#{item.targetField},#{item.statuses},#{item.executionsNumber},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update quality_analysis as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('taskName')) or (colPickMode==1 and !data.containsKey('taskName'))">
a.taskName=#{data.taskName},
</if>
<if test="(colPickMode==0 and data.containsKey('taskDescription')) or (colPickMode==1 and !data.containsKey('taskDescription'))">
a.taskDescription=#{data.taskDescription},
</if>
<if test="(colPickMode==0 and data.containsKey('dataSourceName')) or (colPickMode==1 and !data.containsKey('dataSourceName'))">
a.dataSourceName=#{data.dataSourceName},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceTable')) or (colPickMode==1 and !data.containsKey('sourceTable'))">
a.sourceTable=#{data.sourceTable},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceField')) or (colPickMode==1 and !data.containsKey('sourceField'))">
a.sourceField=#{data.sourceField},
</if>
<if test="(colPickMode==0 and data.containsKey('targetTable')) or (colPickMode==1 and !data.containsKey('targetTable'))">
a.targetTable=#{data.targetTable},
</if>
<if test="(colPickMode==0 and data.containsKey('targetField')) or (colPickMode==1 and !data.containsKey('targetField'))">
a.targetField=#{data.targetField},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumber')) or (colPickMode==1 and !data.containsKey('executionsNumber'))">
a.executionsNumber=#{data.executionsNumber},
</if>
<if test="(colPickMode==0 and data.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !data.containsKey('executionsNumberIncrement'))">
a.executionsNumber=ifnull(a.executionsNumber,0) + #{data.executionsNumberIncrement},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 quality_analysis as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="taskName=(case" suffix="ELSE taskName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskName')) or (colPickMode==1 and !item.containsKey('taskName'))">
when a.id=#{item.id} then #{item.taskName}
</if>
</foreach>
</trim>
<trim prefix="taskDescription=(case" suffix="ELSE taskDescription end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskDescription')) or (colPickMode==1 and !item.containsKey('taskDescription'))">
when a.id=#{item.id} then #{item.taskDescription}
</if>
</foreach>
</trim>
<trim prefix="dataSourceName=(case" suffix="ELSE dataSourceName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('dataSourceName')) or (colPickMode==1 and !item.containsKey('dataSourceName'))">
when a.id=#{item.id} then #{item.dataSourceName}
</if>
</foreach>
</trim>
<trim prefix="sourceTable=(case" suffix="ELSE sourceTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceTable')) or (colPickMode==1 and !item.containsKey('sourceTable'))">
when a.id=#{item.id} then #{item.sourceTable}
</if>
</foreach>
</trim>
<trim prefix="sourceField=(case" suffix="ELSE sourceField end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceField')) or (colPickMode==1 and !item.containsKey('sourceField'))">
when a.id=#{item.id} then #{item.sourceField}
</if>
</foreach>
</trim>
<trim prefix="targetTable=(case" suffix="ELSE targetTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('targetTable')) or (colPickMode==1 and !item.containsKey('targetTable'))">
when a.id=#{item.id} then #{item.targetTable}
</if>
</foreach>
</trim>
<trim prefix="targetField=(case" suffix="ELSE targetField end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('targetField')) or (colPickMode==1 and !item.containsKey('targetField'))">
when a.id=#{item.id} then #{item.targetField}
</if>
</foreach>
</trim>
<trim prefix="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</if>
</foreach>
</trim>
<trim prefix="executionsNumber=(case" suffix="ELSE executionsNumber end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('executionsNumber')) or (colPickMode==1 and !item.containsKey('executionsNumber'))">
when a.id=#{item.id} then #{item.executionsNumber}
</when>
<when test="(colPickMode==0 and item.containsKey('executionsNumberIncrement')) or (colPickMode==1 and !item.containsKey('executionsNumberIncrement'))">
when a.id=#{item.id} then ifnull(a.executionsNumber,0) + #{item.executionsNumberIncrement}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="QualityAnalysisEntity-Map">
select <include refid="_columns"/>
from quality_analysis as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from quality_analysis as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from quality_analysis where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from quality_analysis where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from quality_analysis 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 quality_analysis as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="QualityAnalysisEntity-Map">
select <include refid="_columns"/>
from quality_analysis 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 quality_analysis 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="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('taskName')">
<if test="conditionParamRef.taskName != null and conditionParamRef.taskName != ''">
${_conditionType_} a.taskName like #{${_conditionParam_}.taskName}
</if>
<if test="conditionParamRef.taskName == null">
${_conditionType_} a.taskName is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskNameList') and conditionParamRef.taskNameList.size() > 0">
${_conditionType_} a.taskName in
<foreach collection="conditionParamRef.taskNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskNameNotList') and conditionParamRef.taskNameNotList.size() > 0">
${_conditionType_} a.taskName not in
<foreach collection="conditionParamRef.taskNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescription')">
<if test="conditionParamRef.taskDescription != null and conditionParamRef.taskDescription != ''">
${_conditionType_} a.taskDescription like #{${_conditionParam_}.taskDescription}
</if>
<if test="conditionParamRef.taskDescription == null">
${_conditionType_} a.taskDescription is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionList') and conditionParamRef.taskDescriptionList.size() > 0">
${_conditionType_} a.taskDescription in
<foreach collection="conditionParamRef.taskDescriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionNotList') and conditionParamRef.taskDescriptionNotList.size() > 0">
${_conditionType_} a.taskDescription not in
<foreach collection="conditionParamRef.taskDescriptionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceName')">
<if test="conditionParamRef.dataSourceName != null and conditionParamRef.dataSourceName != ''">
${_conditionType_} a.dataSourceName like #{${_conditionParam_}.dataSourceName}
</if>
<if test="conditionParamRef.dataSourceName == null">
${_conditionType_} a.dataSourceName is null
</if>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameList') and conditionParamRef.dataSourceNameList.size() > 0">
${_conditionType_} a.dataSourceName in
<foreach collection="conditionParamRef.dataSourceNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameNotList') and conditionParamRef.dataSourceNameNotList.size() > 0">
${_conditionType_} a.dataSourceName not in
<foreach collection="conditionParamRef.dataSourceNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTable')">
<if test="conditionParamRef.sourceTable != null and conditionParamRef.sourceTable != ''">
${_conditionType_} a.sourceTable like #{${_conditionParam_}.sourceTable}
</if>
<if test="conditionParamRef.sourceTable == null">
${_conditionType_} a.sourceTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceTableList') and conditionParamRef.sourceTableList.size() > 0">
${_conditionType_} a.sourceTable in
<foreach collection="conditionParamRef.sourceTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTableNotList') and conditionParamRef.sourceTableNotList.size() > 0">
${_conditionType_} a.sourceTable not in
<foreach collection="conditionParamRef.sourceTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceField')">
<if test="conditionParamRef.sourceField != null and conditionParamRef.sourceField != ''">
${_conditionType_} a.sourceField like #{${_conditionParam_}.sourceField}
</if>
<if test="conditionParamRef.sourceField == null">
${_conditionType_} a.sourceField is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceFieldList') and conditionParamRef.sourceFieldList.size() > 0">
${_conditionType_} a.sourceField in
<foreach collection="conditionParamRef.sourceFieldList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceFieldNotList') and conditionParamRef.sourceFieldNotList.size() > 0">
${_conditionType_} a.sourceField not in
<foreach collection="conditionParamRef.sourceFieldNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetTable')">
<if test="conditionParamRef.targetTable != null and conditionParamRef.targetTable != ''">
${_conditionType_} a.targetTable like #{${_conditionParam_}.targetTable}
</if>
<if test="conditionParamRef.targetTable == null">
${_conditionType_} a.targetTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('targetTableList') and conditionParamRef.targetTableList.size() > 0">
${_conditionType_} a.targetTable in
<foreach collection="conditionParamRef.targetTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetTableNotList') and conditionParamRef.targetTableNotList.size() > 0">
${_conditionType_} a.targetTable not in
<foreach collection="conditionParamRef.targetTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetField')">
<if test="conditionParamRef.targetField != null and conditionParamRef.targetField != ''">
${_conditionType_} a.targetField like #{${_conditionParam_}.targetField}
</if>
<if test="conditionParamRef.targetField == null">
${_conditionType_} a.targetField is null
</if>
</if>
<if test="conditionParamRef.containsKey('targetFieldList') and conditionParamRef.targetFieldList.size() > 0">
${_conditionType_} a.targetField in
<foreach collection="conditionParamRef.targetFieldList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('targetFieldNotList') and conditionParamRef.targetFieldNotList.size() > 0">
${_conditionType_} a.targetField not in
<foreach collection="conditionParamRef.targetFieldNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumber')">
<if test="conditionParamRef.executionsNumber != null ">
${_conditionType_} a.executionsNumber = #{${_conditionParam_}.executionsNumber}
</if>
<if test="conditionParamRef.executionsNumber == null">
${_conditionType_} a.executionsNumber is null
</if>
</if>
<if test="conditionParamRef.containsKey('executionsNumberList') and conditionParamRef.executionsNumberList.size() > 0">
${_conditionType_} a.executionsNumber in
<foreach collection="conditionParamRef.executionsNumberList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberNotList') and conditionParamRef.executionsNumberNotList.size() > 0">
${_conditionType_} a.executionsNumber not in
<foreach collection="conditionParamRef.executionsNumberNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('executionsNumberStart') and conditionParamRef.executionsNumberStart != null">
${_conditionType_} a.executionsNumber <![CDATA[ >= ]]> #{${_conditionParam_}.executionsNumberStart}
</if>
<if test="conditionParamRef.containsKey('executionsNumberEnd') and conditionParamRef.executionsNumberEnd != null">
${_conditionType_} a.executionsNumber <![CDATA[ <= ]]> #{${_conditionParam_}.executionsNumberEnd}
</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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('taskName')">
a.taskName
<if test='orderCol.taskName != null and "DESC".equalsIgnoreCase(orderCol.taskName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('taskDescription')">
a.taskDescription
<if test='orderCol.taskDescription != null and "DESC".equalsIgnoreCase(orderCol.taskDescription)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('dataSourceName')">
a.dataSourceName
<if test='orderCol.dataSourceName != null and "DESC".equalsIgnoreCase(orderCol.dataSourceName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceTable')">
a.sourceTable
<if test='orderCol.sourceTable != null and "DESC".equalsIgnoreCase(orderCol.sourceTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceField')">
a.sourceField
<if test='orderCol.sourceField != null and "DESC".equalsIgnoreCase(orderCol.sourceField)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('targetTable')">
a.targetTable
<if test='orderCol.targetTable != null and "DESC".equalsIgnoreCase(orderCol.targetTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('targetField')">
a.targetField
<if test='orderCol.targetField != null and "DESC".equalsIgnoreCase(orderCol.targetField)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('executionsNumber')">
a.executionsNumber
<if test='orderCol.executionsNumber != null and "DESC".equalsIgnoreCase(orderCol.executionsNumber)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.scheduled.dao.ibatis.ScheduledTaskDetailDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="ScheduledTaskDetailEntity" id="ScheduledTaskDetailEntity-Map">
<id property="id" column="id" />
<result property="taskId" column="taskId" />
<result property="startTime" column="startTime" />
<result property="endTime" column="endTime" />
<result property="number" column="number" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('taskId') or colPickMode == 1 and data.containsKey('taskId')))">
a.taskId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('startTime') or colPickMode == 1 and data.containsKey('startTime')))">
a.startTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('endTime') or colPickMode == 1 and data.containsKey('endTime')))">
a.endTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('number') or colPickMode == 1 and data.containsKey('number')))">
a.number,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="ScheduledTaskDetailEntity" useGeneratedKeys="true" keyProperty="id">
insert into scheduled_task_detail
(taskId,startTime,endTime,number,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{taskId},#{startTime},#{endTime},#{number},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into scheduled_task_detail
(taskId,startTime,endTime,number,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.taskId},#{item.startTime},#{item.endTime},#{item.number},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update scheduled_task_detail as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('taskId')) or (colPickMode==1 and !data.containsKey('taskId'))">
a.taskId=#{data.taskId},
</if>
<if test="(colPickMode==0 and data.containsKey('taskIdIncrement')) or (colPickMode==1 and !data.containsKey('taskIdIncrement'))">
a.taskId=ifnull(a.taskId,0) + #{data.taskIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('startTime')) or (colPickMode==1 and !data.containsKey('startTime'))">
a.startTime=#{data.startTime},
</if>
<if test="(colPickMode==0 and data.containsKey('endTime')) or (colPickMode==1 and !data.containsKey('endTime'))">
a.endTime=#{data.endTime},
</if>
<if test="(colPickMode==0 and data.containsKey('number')) or (colPickMode==1 and !data.containsKey('number'))">
a.number=#{data.number},
</if>
<if test="(colPickMode==0 and data.containsKey('numberIncrement')) or (colPickMode==1 and !data.containsKey('numberIncrement'))">
a.number=ifnull(a.number,0) + #{data.numberIncrement},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 scheduled_task_detail as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="taskId=(case" suffix="ELSE taskId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('taskId')) or (colPickMode==1 and !item.containsKey('taskId'))">
when a.id=#{item.id} then #{item.taskId}
</when>
<when test="(colPickMode==0 and item.containsKey('taskIdIncrement')) or (colPickMode==1 and !item.containsKey('taskIdIncrement'))">
when a.id=#{item.id} then ifnull(a.taskId,0) + #{item.taskIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="startTime=(case" suffix="ELSE startTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('startTime')) or (colPickMode==1 and !item.containsKey('startTime'))">
when a.id=#{item.id} then #{item.startTime}
</if>
</foreach>
</trim>
<trim prefix="endTime=(case" suffix="ELSE endTime 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="number=(case" suffix="ELSE number end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('number')) or (colPickMode==1 and !item.containsKey('number'))">
when a.id=#{item.id} then #{item.number}
</when>
<when test="(colPickMode==0 and item.containsKey('numberIncrement')) or (colPickMode==1 and !item.containsKey('numberIncrement'))">
when a.id=#{item.id} then ifnull(a.number,0) + #{item.numberIncrement}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="ScheduledTaskDetailEntity-Map">
select <include refid="_columns"/>
from scheduled_task_detail as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from scheduled_task_detail as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from scheduled_task_detail where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from scheduled_task_detail where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from scheduled_task_detail 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 scheduled_task_detail as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="ScheduledTaskDetailEntity-Map">
select <include refid="_columns"/>
from scheduled_task_detail 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 scheduled_task_detail 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="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('taskId')">
<if test="conditionParamRef.taskId != null ">
${_conditionType_} a.taskId = #{${_conditionParam_}.taskId}
</if>
<if test="conditionParamRef.taskId == null">
${_conditionType_} a.taskId is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskIdList') and conditionParamRef.taskIdList.size() > 0">
${_conditionType_} a.taskId in
<foreach collection="conditionParamRef.taskIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskIdNotList') and conditionParamRef.taskIdNotList.size() > 0">
${_conditionType_} a.taskId not in
<foreach collection="conditionParamRef.taskIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskIdStart') and conditionParamRef.taskIdStart != null">
${_conditionType_} a.taskId <![CDATA[ >= ]]> #{${_conditionParam_}.taskIdStart}
</if>
<if test="conditionParamRef.containsKey('taskIdEnd') and conditionParamRef.taskIdEnd != null">
${_conditionType_} a.taskId <![CDATA[ <= ]]> #{${_conditionParam_}.taskIdEnd}
</if>
<if test="conditionParamRef.containsKey('startTime')">
<if test="conditionParamRef.startTime != null and conditionParamRef.startTime != ''">
${_conditionType_} a.startTime like #{${_conditionParam_}.startTime}
</if>
<if test="conditionParamRef.startTime == null">
${_conditionType_} a.startTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('startTimeList') and conditionParamRef.startTimeList.size() > 0">
${_conditionType_} a.startTime in
<foreach collection="conditionParamRef.startTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('startTimeNotList') and conditionParamRef.startTimeNotList.size() > 0">
${_conditionType_} a.startTime not in
<foreach collection="conditionParamRef.startTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endTime')">
<if test="conditionParamRef.endTime != null and conditionParamRef.endTime != ''">
${_conditionType_} a.endTime like #{${_conditionParam_}.endTime}
</if>
<if test="conditionParamRef.endTime == null">
${_conditionType_} a.endTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('endTimeList') and conditionParamRef.endTimeList.size() > 0">
${_conditionType_} a.endTime in
<foreach collection="conditionParamRef.endTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endTimeNotList') and conditionParamRef.endTimeNotList.size() > 0">
${_conditionType_} a.endTime not in
<foreach collection="conditionParamRef.endTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('number')">
<if test="conditionParamRef.number != null ">
${_conditionType_} a.number = #{${_conditionParam_}.number}
</if>
<if test="conditionParamRef.number == null">
${_conditionType_} a.number is null
</if>
</if>
<if test="conditionParamRef.containsKey('numberList') and conditionParamRef.numberList.size() > 0">
${_conditionType_} a.number in
<foreach collection="conditionParamRef.numberList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('numberNotList') and conditionParamRef.numberNotList.size() > 0">
${_conditionType_} a.number not in
<foreach collection="conditionParamRef.numberNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('numberStart') and conditionParamRef.numberStart != null">
${_conditionType_} a.number <![CDATA[ >= ]]> #{${_conditionParam_}.numberStart}
</if>
<if test="conditionParamRef.containsKey('numberEnd') and conditionParamRef.numberEnd != null">
${_conditionType_} a.number <![CDATA[ <= ]]> #{${_conditionParam_}.numberEnd}
</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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('taskId')">
a.taskId
<if test='orderCol.taskId != null and "DESC".equalsIgnoreCase(orderCol.taskId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('startTime')">
a.startTime
<if test='orderCol.startTime != null and "DESC".equalsIgnoreCase(orderCol.startTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('endTime')">
a.endTime
<if test='orderCol.endTime != null and "DESC".equalsIgnoreCase(orderCol.endTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('number')">
a.number
<if test='orderCol.number != null and "DESC".equalsIgnoreCase(orderCol.number)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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.scheduled.dao.ibatis.ScheduledTaskDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="ScheduledTaskEntity" id="ScheduledTaskEntity-Map">
<id property="id" column="id" />
<result property="taskName" column="taskName" />
<result property="taskDescription" column="taskDescription" />
<result property="dataSourceName" column="dataSourceName" />
<result property="sourceTable" column="sourceTable" />
<result property="sourceField" column="sourceField" />
<result property="type" column="type" />
<result property="startTime" column="startTime" />
<result property="endTime" column="endTime" />
<result property="statuses" column="statuses" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</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('taskName') or colPickMode == 1 and data.containsKey('taskName')))">
a.taskName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('taskDescription') or colPickMode == 1 and data.containsKey('taskDescription')))">
a.taskDescription,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('dataSourceName') or colPickMode == 1 and data.containsKey('dataSourceName')))">
a.dataSourceName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceTable') or colPickMode == 1 and data.containsKey('sourceTable')))">
a.sourceTable,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('sourceField') or colPickMode == 1 and data.containsKey('sourceField')))">
a.sourceField,
</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('startTime') or colPickMode == 1 and data.containsKey('startTime')))">
a.startTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('endTime') or colPickMode == 1 and data.containsKey('endTime')))">
a.endTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('statuses') or colPickMode == 1 and data.containsKey('statuses')))">
a.statuses,
</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.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="ScheduledTaskEntity" useGeneratedKeys="true" keyProperty="id">
insert into scheduled_task
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,type,startTime,endTime,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
(#{taskName},#{taskDescription},#{dataSourceName},#{sourceTable},#{sourceField},#{type},#{startTime},#{endTime},#{statuses},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into scheduled_task
(taskName,taskDescription,dataSourceName,sourceTable,sourceField,type,startTime,endTime,statuses,remark,createUserId,createTime,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.taskName},#{item.taskDescription},#{item.dataSourceName},#{item.sourceTable},#{item.sourceField},#{item.type},#{item.startTime},#{item.endTime},#{item.statuses},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update scheduled_task as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('taskName')) or (colPickMode==1 and !data.containsKey('taskName'))">
a.taskName=#{data.taskName},
</if>
<if test="(colPickMode==0 and data.containsKey('taskDescription')) or (colPickMode==1 and !data.containsKey('taskDescription'))">
a.taskDescription=#{data.taskDescription},
</if>
<if test="(colPickMode==0 and data.containsKey('dataSourceName')) or (colPickMode==1 and !data.containsKey('dataSourceName'))">
a.dataSourceName=#{data.dataSourceName},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceTable')) or (colPickMode==1 and !data.containsKey('sourceTable'))">
a.sourceTable=#{data.sourceTable},
</if>
<if test="(colPickMode==0 and data.containsKey('sourceField')) or (colPickMode==1 and !data.containsKey('sourceField'))">
a.sourceField=#{data.sourceField},
</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('startTime')) or (colPickMode==1 and !data.containsKey('startTime'))">
a.startTime=#{data.startTime},
</if>
<if test="(colPickMode==0 and data.containsKey('endTime')) or (colPickMode==1 and !data.containsKey('endTime'))">
a.endTime=#{data.endTime},
</if>
<if test="(colPickMode==0 and data.containsKey('statuses')) or (colPickMode==1 and !data.containsKey('statuses'))">
a.statuses=#{data.statuses},
</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.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{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 scheduled_task as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="taskName=(case" suffix="ELSE taskName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskName')) or (colPickMode==1 and !item.containsKey('taskName'))">
when a.id=#{item.id} then #{item.taskName}
</if>
</foreach>
</trim>
<trim prefix="taskDescription=(case" suffix="ELSE taskDescription end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('taskDescription')) or (colPickMode==1 and !item.containsKey('taskDescription'))">
when a.id=#{item.id} then #{item.taskDescription}
</if>
</foreach>
</trim>
<trim prefix="dataSourceName=(case" suffix="ELSE dataSourceName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('dataSourceName')) or (colPickMode==1 and !item.containsKey('dataSourceName'))">
when a.id=#{item.id} then #{item.dataSourceName}
</if>
</foreach>
</trim>
<trim prefix="sourceTable=(case" suffix="ELSE sourceTable end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceTable')) or (colPickMode==1 and !item.containsKey('sourceTable'))">
when a.id=#{item.id} then #{item.sourceTable}
</if>
</foreach>
</trim>
<trim prefix="sourceField=(case" suffix="ELSE sourceField end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('sourceField')) or (colPickMode==1 and !item.containsKey('sourceField'))">
when a.id=#{item.id} then #{item.sourceField}
</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="startTime=(case" suffix="ELSE startTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('startTime')) or (colPickMode==1 and !item.containsKey('startTime'))">
when a.id=#{item.id} then #{item.startTime}
</if>
</foreach>
</trim>
<trim prefix="endTime=(case" suffix="ELSE endTime 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="statuses=(case" suffix="ELSE statuses end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('statuses')) or (colPickMode==1 and !item.containsKey('statuses'))">
when a.id=#{item.id} then #{item.statuses}
</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="createUserId=(case" suffix="ELSE createUserId 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.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime 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="updateUserId=(case" suffix="ELSE updateUserId 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.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime 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="ScheduledTaskEntity-Map">
select <include refid="_columns"/>
from scheduled_task as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from scheduled_task as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from scheduled_task where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from scheduled_task where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from scheduled_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 scheduled_task as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="ScheduledTaskEntity-Map">
select <include refid="_columns"/>
from scheduled_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 scheduled_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="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('taskName')">
<if test="conditionParamRef.taskName != null and conditionParamRef.taskName != ''">
${_conditionType_} a.taskName like #{${_conditionParam_}.taskName}
</if>
<if test="conditionParamRef.taskName == null">
${_conditionType_} a.taskName is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskNameList') and conditionParamRef.taskNameList.size() > 0">
${_conditionType_} a.taskName in
<foreach collection="conditionParamRef.taskNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskNameNotList') and conditionParamRef.taskNameNotList.size() > 0">
${_conditionType_} a.taskName not in
<foreach collection="conditionParamRef.taskNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescription')">
<if test="conditionParamRef.taskDescription != null and conditionParamRef.taskDescription != ''">
${_conditionType_} a.taskDescription like #{${_conditionParam_}.taskDescription}
</if>
<if test="conditionParamRef.taskDescription == null">
${_conditionType_} a.taskDescription is null
</if>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionList') and conditionParamRef.taskDescriptionList.size() > 0">
${_conditionType_} a.taskDescription in
<foreach collection="conditionParamRef.taskDescriptionList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('taskDescriptionNotList') and conditionParamRef.taskDescriptionNotList.size() > 0">
${_conditionType_} a.taskDescription not in
<foreach collection="conditionParamRef.taskDescriptionNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceName')">
<if test="conditionParamRef.dataSourceName != null and conditionParamRef.dataSourceName != ''">
${_conditionType_} a.dataSourceName like #{${_conditionParam_}.dataSourceName}
</if>
<if test="conditionParamRef.dataSourceName == null">
${_conditionType_} a.dataSourceName is null
</if>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameList') and conditionParamRef.dataSourceNameList.size() > 0">
${_conditionType_} a.dataSourceName in
<foreach collection="conditionParamRef.dataSourceNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('dataSourceNameNotList') and conditionParamRef.dataSourceNameNotList.size() > 0">
${_conditionType_} a.dataSourceName not in
<foreach collection="conditionParamRef.dataSourceNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTable')">
<if test="conditionParamRef.sourceTable != null and conditionParamRef.sourceTable != ''">
${_conditionType_} a.sourceTable like #{${_conditionParam_}.sourceTable}
</if>
<if test="conditionParamRef.sourceTable == null">
${_conditionType_} a.sourceTable is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceTableList') and conditionParamRef.sourceTableList.size() > 0">
${_conditionType_} a.sourceTable in
<foreach collection="conditionParamRef.sourceTableList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceTableNotList') and conditionParamRef.sourceTableNotList.size() > 0">
${_conditionType_} a.sourceTable not in
<foreach collection="conditionParamRef.sourceTableNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceField')">
<if test="conditionParamRef.sourceField != null and conditionParamRef.sourceField != ''">
${_conditionType_} a.sourceField like #{${_conditionParam_}.sourceField}
</if>
<if test="conditionParamRef.sourceField == null">
${_conditionType_} a.sourceField is null
</if>
</if>
<if test="conditionParamRef.containsKey('sourceFieldList') and conditionParamRef.sourceFieldList.size() > 0">
${_conditionType_} a.sourceField in
<foreach collection="conditionParamRef.sourceFieldList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('sourceFieldNotList') and conditionParamRef.sourceFieldNotList.size() > 0">
${_conditionType_} a.sourceField not in
<foreach collection="conditionParamRef.sourceFieldNotList" 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('startTime')">
<if test="conditionParamRef.startTime != null and conditionParamRef.startTime != ''">
${_conditionType_} a.startTime like #{${_conditionParam_}.startTime}
</if>
<if test="conditionParamRef.startTime == null">
${_conditionType_} a.startTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('startTimeList') and conditionParamRef.startTimeList.size() > 0">
${_conditionType_} a.startTime in
<foreach collection="conditionParamRef.startTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('startTimeNotList') and conditionParamRef.startTimeNotList.size() > 0">
${_conditionType_} a.startTime not in
<foreach collection="conditionParamRef.startTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endTime')">
<if test="conditionParamRef.endTime != null and conditionParamRef.endTime != ''">
${_conditionType_} a.endTime like #{${_conditionParam_}.endTime}
</if>
<if test="conditionParamRef.endTime == null">
${_conditionType_} a.endTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('endTimeList') and conditionParamRef.endTimeList.size() > 0">
${_conditionType_} a.endTime in
<foreach collection="conditionParamRef.endTimeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('endTimeNotList') and conditionParamRef.endTimeNotList.size() > 0">
${_conditionType_} a.endTime not in
<foreach collection="conditionParamRef.endTimeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statuses')">
<if test="conditionParamRef.statuses != null and conditionParamRef.statuses != ''">
${_conditionType_} a.statuses like #{${_conditionParam_}.statuses}
</if>
<if test="conditionParamRef.statuses == null">
${_conditionType_} a.statuses is null
</if>
</if>
<if test="conditionParamRef.containsKey('statusesList') and conditionParamRef.statusesList.size() > 0">
${_conditionType_} a.statuses in
<foreach collection="conditionParamRef.statusesList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('statusesNotList') and conditionParamRef.statusesNotList.size() > 0">
${_conditionType_} a.statuses not in
<foreach collection="conditionParamRef.statusesNotList" 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.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId 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.createUserId 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.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![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.createTime <![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.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId 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.updateUserId 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.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![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.updateTime <![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
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<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('taskName')">
a.taskName
<if test='orderCol.taskName != null and "DESC".equalsIgnoreCase(orderCol.taskName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('taskDescription')">
a.taskDescription
<if test='orderCol.taskDescription != null and "DESC".equalsIgnoreCase(orderCol.taskDescription)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('dataSourceName')">
a.dataSourceName
<if test='orderCol.dataSourceName != null and "DESC".equalsIgnoreCase(orderCol.dataSourceName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceTable')">
a.sourceTable
<if test='orderCol.sourceTable != null and "DESC".equalsIgnoreCase(orderCol.sourceTable)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('sourceField')">
a.sourceField
<if test='orderCol.sourceField != null and "DESC".equalsIgnoreCase(orderCol.sourceField)'>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('startTime')">
a.startTime
<if test='orderCol.startTime != null and "DESC".equalsIgnoreCase(orderCol.startTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('endTime')">
a.endTime
<if test='orderCol.endTime != null and "DESC".equalsIgnoreCase(orderCol.endTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('statuses')">
a.statuses
<if test='orderCol.statuses != null and "DESC".equalsIgnoreCase(orderCol.statuses)'>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.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<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
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