Compare commits

..

61 Commits

Author SHA1 Message Date
b5f2251bcc feat(bpm): 添加发起人自选任务分配规则类型- 删除旧的字典数据项 "bpm_task_assign_rule_type" 中值为 "35" 的记录
- 插入新的字典数据项,定义 "发起人自选" 作为任务分配规则类型
- 设置新插入项的排序、标签、状态和样式属性- 添加备注信息说明该规则类型的用途
- 记录创建与更新时间和操作人信息
2025-10-31 14:41:26 +08:00
7cd4800f9d fix(lowcode): 更新数据库同步状态配置- 将多个表的IS_DB_SYNC字段设置为'N'- 影响的表包括: lc_item_result, lc_training_plan, lc_training_record, lc_work_item, lc_work_item_issus
- 此更改确保这些表不会自动同步到数据库
2025-10-31 10:58:44 +08:00
a3952adef5 工作协同sql提交 2025-10-31 10:31:19 +08:00
29405df6e1 外协人员 工作地点导入问题修复2 2025-10-30 19:19:49 +08:00
5231209ec1 Merge remote-tracking branch 'origin/dev' into dev 2025-10-30 19:10:42 +08:00
f054657c14 外协人员 工作地点导入问题修复 2025-10-30 19:10:14 +08:00
75dd44d117 chore(sql): 更新数据库表同步状态- 将多个表的IS_DB_SYNC字段设置为'N'
- 影响的表包括: lc_drill_plan, lc_outside_license,
  lc_outside_person, lc_risk_hazard_manage,
  lc_risk_identify_assessment, lc_training_plan, lc_training_plan_area, lc_training_record
2025-10-30 17:59:02 +08:00
0b80a81f58 chore(sql):为BPM流程实例扩展表添加ASSIGNEE字段
- 设置当前模式为LOWCODE_MASTER
- 新增ASSIGNEE字段以支持达梦数据库
- 添加字段存在性检查逻辑
2025-10-30 17:25:42 +08:00
b378ee10f4 20251030 sql提交 2025-10-30 17:09:43 +08:00
222aa709ec feat(database):为BPM流程实例扩展表新增处理人字段
- 新增ASSIGNEE字段用于存储流程处理人信息
- 添加达梦数据库字段存在性检查逻辑
- 实现字段重复添加保护机制- 提供字段添加成功与已存在两种提示信息
- 使用PL/SQL块确保脚本执行安全性
2025-10-30 15:24:30 +08:00
892012e41b feat(bpm):自选审批人 添加用户功能
- 在 BpmTaskAssignRuleTypeEnum 中新增 USER_SELECT 类型- 更新 BpmTaskAssignRuleDO 实体类,支持 USER_SELECT 类型的处理逻辑
- 在 BpmTaskAssignRuleServiceImpl 中实现用户自选审批人的验证和计算逻辑- 新增 calculateTaskCandidateUsersByUserSelect 方法,从流程变量中获取用户自选的审批人
-修复 BpmUserTaskActivityBehavior 中随机选择用户时的类型转换问题- 移除 BpmProcessInstanceExtDO 中 assignee 字段的 exist = false 配置
2025-10-30 15:21:48 +08:00
091ceb3619 Merge branch 'dev-bpm' into dev
# Conflicts:
#	jeelowcode-service/jeelowcode-service-bpm-biz/src/main/java/com/jeelowcode/service/bpm/service/impl/BpmProcessInstanceCopyServiceImpl.java
2025-10-27 11:35:16 +08:00
6ce3ba89c6 feat(bpm): 实现流程抄送推送待办功能
- 新增待办系统推送逻辑
- 集成 PortalRequest 和用户信息服务
- 构造并发送抄送待办请求
- 添加异常处理和日志记录- 支持创建人、接收人和发起人信息获取
- 实现待办消息的 PC 端跳转链接配置
2025-10-27 11:17:16 +08:00
b82ee9bbe5 fix(bpm): 修正流程实例复制查询条件字段名- 将 BpmProcessInstanceCopyMapper 中的 createTime 查询条件字段更正为 searchCreateTime
- 更新 BpmProcessInstanceCopyMyPageReqVO 中的 createTime 字段名为 searchCreateTime- 确保前后端查询参数字段一致性,避免因字段不匹配导致查询失败
2025-10-27 10:22:41 +08:00
3c01a72dad fix(bpm):修复流程实例创建者昵称设置错误
- 修正了创建者昵称设置的目标对象,从user改为copy对象- 确保流程实例复制页面正确显示创建者昵称- 保持与其他用户相关信息设置逻辑的一致性
2025-10-27 09:51:22 +08:00
9ac1584494 feat(bpm): 修改抄送用户字段名为options
- 将BpmProcessInstanceCopyCreateReqVO中的userIds字段重命名为options
- 更新BpmProcessInstanceCopyServiceImpl中使用该字段的代码逻辑
2025-10-27 09:40:05 +08:00
a0e768d210 feat(bpm): 支持批量创建抄送流程实例
- 引入 Collectors 类以支持流式处理
- 将单个抄送流程创建改为批量创建
-为每个用户 ID 生成独立的抄送记录
- 使用 insertBatch 方法提高插入效率
-保持原有字段设置逻辑不变
- 修复可能的空指针异常风险
2025-10-27 09:10:10 +08:00
0b30837b8a 文件上传方案修改 2025-10-24 11:34:26 +08:00
33675312cd Excel导出下拉方案调整 2025-10-24 11:07:59 +08:00
1bcd07c0c8 fix(lowcode): 更新数据库表同步状态- 将多个业务表的IS_DB_SYNC字段设置为'N'
- 涉及受限空间作业、钻井任务等15张表- 确保这些表不会被自动同步到低代码平台
- 防止因数据结构不一致导致的同步异常
2025-10-23 18:07:11 +08:00
af7b56c858 feat(sql): 更新基础安全信息表单字段配置
- 删除旧的表单字段数据
- 添加新的表单字段记录
- 更新字段默认值和类型定义
- 调整字段排序和长度设置
- 优化字段备注和主键标识
- 修复字段为空和数据库存储配置
2025-10-23 17:39:37 +08:00
7c47c55ec4 fix(sql):修正字段查询配置中的列名大小写问题
- 将 QUERY_CONFIG 中的 filter_Auth 字段统一调整为 FILTER_AUTH
- 确保所有插入语句使用一致的大写字段命名
- 删除并重新插入低代码表单字段查询配置数据- 保持字段 web 配置与数据库查询配置同步更新
2025-10-23 17:02:50 +08:00
fbb0b53048 Merge remote-tracking branch 'origin/dev' into dev 2025-10-23 16:48:39 +08:00
ea8799d873 更新字段大小写 2025-10-23 16:48:33 +08:00
13c8c5dc89 Merge remote-tracking branch 'origin/dev' into dev 2025-10-23 16:46:42 +08:00
70e214c1d8 fix(lc_accident_incident): 更新表单字段长度及更新时间
- 修改 direct_cause 和 indirect_cause 字段长度为1024
- 统一更新所有字段的 UPDATE_TIME 为 '2025-10-23 16:38:23'- 保持其他字段定义不变,仅调整字段长度与更新时间戳
2025-10-23 16:46:08 +08:00
5dc2ed592f 20251023 sql提交 2025-10-23 16:44:48 +08:00
c49f34d228 feat(bpm): 添加流程实例抄送功能
- 新增抄送用户编号数组字段
- 添加抄送原因校验规则
- 完善抄送请求VO结构定义
- 增加Swagger文档注解说明- 实现抄送用户不能为空的校验逻辑
2025-10-23 16:28:24 +08:00
ae98bc9dbc feat(lowcode): 更新安全基础资料表单配置与脚本
- 更新了JS增强脚本中的日期时间戳
-优化了一级和二级分类字典数据的请求参数,设置pageNo为1,pageSize为-1- 移除了二级分类过滤逻辑中的调试日志输出
- 调整了表单设计器中部分字段的布局与样式配置- 更新了表单初始化及提交前处理逻辑,增强数据关联性与准确性
2025-10-23 11:37:20 +08:00
c2d1afb92d 上传文件名使用UUID名称 2025-10-22 16:40:29 +08:00
342ac32890 feat(sql): 更新事故事件表单配置并移除旧记录
- 删除与 lc_accident_incident 表相关的旧 DESFORM 记录
- 移除了原有的 DESFORM 插入语句,避免重复初始化
-保留了表单字段和布局的详细配置信息
- 确保表单样式和国际化配置保持不变
2025-10-22 15:42:43 +08:00
993b08ad04 fix(infra):修复文件上传路径生成逻辑- 移除文件路径中不必要的UUID生成
- 直接使用原始文件名构建文件存储路径- 解决信创环境下中文文件名乱码问题
- 确保文件名唯一性由fileService统一处理- 避免因路径不一致导致的文件访问异常
2025-10-21 21:43:44 +08:00
8c531dd46a fix(infra):修复文件上传路径生成逻辑
- 修改文件名生成方式,使用UUID确保唯一性
-保留原文件扩展名,避免文件类型丢失
- 确保文件路径包含完整文件名和扩展名
2025-10-21 18:59:10 +08:00
f38f4fd49a feat(sql): 更新事故事件表单设计及字段配置- 删除旧的表单设计记录
- 新增事故事件表单设计,包含基础信息、相关文件等布局组
- 配置发生地点、事件等级、直接原因、间接原因等字段- 设置表单样式及国际化配置- 添加上传附件功能支持
- 调整表单字段显示逻辑与校验规则
2025-10-21 18:48:46 +08:00
12d7d251ed feat(lowcode): 新增外协人员持证管理表单设计
- 插入新的表单设计数据到 LOWCODE_DESFORM 表- 设置表单名称为“外协人员持证管理”
- 配置表单字段包括人员姓名、证书类型、证书编号等
- 添加基础信息分组布局及样式定义
- 更新 LOWCODE_DBFORM 表中标记数据库同步状态为否
2025-10-21 17:24:28 +08:00
636a1491bb feat(file):优化文件上传逻辑并解决中文乱码问题
- 引入 Hutool 工具类处理文件名唯一性和扩展名提取
- 使用 UUID 重命名文件,避免信创环境下的中文乱码问题- 调整租户、日期和用户路径结构以支持更细粒度的文件管理
- 统一代码格式,增强可读性与维护性
-修复潜在空指针异常风险点- 完善接口文档描述信息一致性
2025-10-21 16:55:00 +08:00
07b9e113ad feat(biz): 新增风险隐患待办取消功能- 在 IPortalTodoService 接口中新增 pushCancelRiskHazardWorkflow 方法
- 在 PortalTodoController 中新增 DELETE 接口用于取消待办推送
- 在 PortalTodoServiceImpl 中实现待办取消逻辑,包括参数构建与异常处理
- 引入 DeleteRequestInfoDTO用于封装删除请求参数
- 对接 PortalRequest 删除接口,实现待办信息的取消推送- 增加对风险隐患数据存在性和 PortalRequest 配置的校验逻辑
2025-10-21 15:44:29 +08:00
3029f8f2de feat:事故事件数据库配置 2025-10-21 14:54:42 +08:00
713e0876f5 fix(frame): 注释掉查询参数过滤逻辑
- 注释掉 FrameServiceImpl 中对查询参数的遍历过滤逻辑- 避免因参数过滤导致的查询条件丢失问题
2025-10-21 14:41:35 +08:00
c6b15afbe2 外协持证管理 sql提交 2025-10-21 14:36:45 +08:00
7222811573 Merge remote-tracking branch 'origin/dev' into dev 2025-10-21 14:16:46 +08:00
3d0b599825 引入外协人员操作 2025-10-21 14:16:34 +08:00
756b491778 feat(sql): 更新基础安全信息表字段类型
- 将 visible_dept 字段类型为 Text从 String 改
- 重新生成字段字典配置数据
- 调整字段长度和显示属性
2025-10-21 13:07:29 +08:00
c86b7a1753 refactor(dept):优化部门数据权限规则逻辑
- 引入 GreaterThan 表达式支持 FIND_IN_SET 函数判断
- 将原有的 IN 表达式替换为基于 FIND_IN_SET 的大于比较
- 支持多部门 ID 的逐个条件构建与组合-保持原有 OR 条件拼接逻辑不变
- 增强部门权限匹配的灵活性和准确性
2025-10-21 08:27:13 +08:00
f3810d3126 refactor(dept):优化部门数据权限规则生成逻辑- 移除无用的GreaterThan导入
- 简化条件判断中的空格格式
- 使用InExpression替代FIND_IN_SET函数提高查询效率-保持代码风格一致性和可读性
2025-10-20 20:50:35 +08:00
136c2fa5aa feat:安全基础资料更新 2025-10-20 16:56:57 +08:00
8558ff726e feat(datapermission):优化部门数据权限规则生成逻辑
- 引入 GreaterThan 表达式支持更灵活的条件构建
- 使用 FIND_IN_SET 函数替换原有的 IN 表达式实现
- 支持多部门 ID 的逐个条件拼接,提升查询准确性
-保留原有括号包装与 OR 连接逻辑确保语义一致
- 统一代码缩进风格增强可读性
2025-10-20 16:00:44 +08:00
8840eccf41 chore(config): 调整日志配置文件路径及级别
- 修改日志文件存储路径为用户主目录下 logs 文件夹
- 设置多个 Mapper 和框架类的日志级别为 ERROR
- 禁用不必要的日志打印以提升性能
- 统一生产环境与办公环境的日志配置格式
2025-10-17 21:22:39 +08:00
56d20938de fix(lowcode): 更新数据库表同步状态- 将多个风险相关表的IS_DB_SYNC字段设置为'N'- 涉及的表包括: lc_risk_hazard_manage, lc_confined_space_operation,
lc_fire_operation, lc_high_operation, lc_land_operation, lc_lifting_operation, lc_outside_person,  lc_risk_identify_assessment, lc_temporary_power_operation
2025-10-17 19:09:48 +08:00
183b3b826f fix:优化文件目录 2025-10-17 18:47:07 +08:00
635c58531f 2025-11-17sql提交 2025-10-17 18:41:12 +08:00
338819d156 脚本提交 2025-10-17 18:14:00 +08:00
9ac3315d96 Merge remote-tracking branch 'origin/dev' into dev 2025-10-17 18:13:17 +08:00
c41954247b 脚本提交 2025-10-17 18:13:10 +08:00
4c215a72c0 fix(risk):修复发送整改通知的空实现问题
- 添加空实现逻辑以满足当前业务需求- 避免无效调用继续执行后续流程
- 保留逻辑原有风险数据查询
2025-10-17 17:14:34 +08:00
08ced58a54 增加自定义导出 2025-10-17 16:55:49 +08:00
80f635e26b Merge remote-tracking branch 'origin/dev' into dev 2025-10-17 16:17:53 +08:00
7369ac93eb LOWCODE_DBFORM_FIELD_QUERY 重新提交 2025-10-17 16:17:00 +08:00
5dadac1a55 feat(system): 新增通过昵称获取用户列表接口- 在 ApiAdminUserApiImpl 中实现 getUserListByNickname 方法
- 在 IApiAdminUserApi 接口中定义 getUserListByNickname 方法
- 优化 RiskServiceImpl 中的风险隐患待办推送逻辑- 新增 PortalTodoService 实现待办系统接口- 新增 PortalTodoController 提供待办相关接口- 引入 PortalRequest 进行待办信息推送- 使用 Base64 编码待办流程ID
- 添加待办状态和查看类型的常量定义
- 实现风险隐患待办完成推送功能
- 重构 sendNotify2Corrective 方法以支持待办推送- 移除旧的通知发送服务依赖
- 添加空实现 sendNotify2Check 方法注释说明
- 优化用户信息获取逻辑
- 增强风险隐患数据查询方法
- 添加必要的工具类导入和集合操作支持
2025-10-17 15:48:56 +08:00
af08e91a45 增加不受控文件 2025-10-17 11:41:54 +08:00
c3a5f4df4f 推送测试 2025-10-17 11:24:24 +08:00
142 changed files with 23133 additions and 152 deletions

View File

@@ -6,7 +6,7 @@ insert into "LOWCODE_FRAME"."LOWCODE_DBFORM"("ID", "TENANT_ID", "CREATE_USER", "
}`,
}', 'index,border,height,header,menu', '', '{"singleStyle":"default","singleCardSpan":"","expandShowNum":null,"expandMode":"","searchStyle":"default"}', 'update');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JAVA" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_risk_hazard_manage');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JAVA"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "BUTTON_CODE", "JAVA_TYPE", "JAVA_CLASS_URL", "ONLINE_SCRIPT", "ACTIVE_STATUS", "REMARK", "LIST_RESULT_HANDLE_TYPE", "SORT") values(1971469436042924034, 1, 1, '2025-09-26 14:58:36', 100, null, null, 0, 1963446160885366786, 'import', 'class', 'com.jeelowcode.module.biz.enhance.BeforeRiskExportEnhance', '', 'Y', '', '0', 1);
@@ -358,42 +358,42 @@ insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID",
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1976483572317454339, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_confirm_people_id', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_risk_hazard_manage');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224386, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'id', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224387, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'parkName', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224388, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-09-04 14:31:27', 1, 1963446160885366786, 'park_code', 'N', 'N', 'EQ', '', '', null, null);
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224389, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_area', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224390, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_item', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224391, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_content', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224392, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_date', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224393, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_people', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224394, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_problem', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224395, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_action', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224396, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_confirm_people', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224397, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_charge_people', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224398, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_period', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224399, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'risk_level', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224400, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'remarks', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224401, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_status', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224402, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'tenant_id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224403, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_user', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224404, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_time', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224405, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_dept', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224406, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'update_user', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224407, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'update_time', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963446160990224408, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'is_deleted', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963518653792862210, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'actual_corrective_date', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963518653792862211, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'actual_corrective_action', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1963518653792862212, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'file_list', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1971412768013709314, 1, 1, '2025-09-26 11:13:26', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'parkId', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972123385968226306, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'billNo', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972123385968226307, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'source', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972123385968226308, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'companyName', 'Y', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972123385968226309, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'companyId', 'Y', 'Y', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972181971033456642, 1, 1, '2025-09-28 14:09:58', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'sync_Id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1972181971033456643, 1, 1, '2025-09-28 14:09:58', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'source_Id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1976483572388757506, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_people_id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1976483572388757507, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_charge_people_id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "filter_Auth", "FILTER_AUTH") values(1976483572388757508, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_confirm_people_id', 'N', 'N', 'EQ', '', '', null, '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224386, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'id', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224387, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'parkName', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224388, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-09-04 14:31:27', 1, 1963446160885366786, 'park_code', 'N', 'N', 'EQ', '', '', null);
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224389, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_area', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224390, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_item', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224391, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_content', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224392, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_date', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224393, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_people', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224394, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_problem', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224395, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_action', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224396, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_confirm_people', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224397, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_charge_people', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224398, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_period', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224399, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'risk_level', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224400, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'remarks', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224401, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_status', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224402, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'tenant_id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224403, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224404, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224405, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'create_dept', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224406, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'update_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224407, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'update_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963446160990224408, 1, 1, '2025-09-04 11:36:59', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'is_deleted', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963518653792862210, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'actual_corrective_date', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963518653792862211, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'actual_corrective_action', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1963518653792862212, 1, 1, '2025-09-04 16:25:02', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'file_list', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1971412768013709314, 1, 1, '2025-09-26 11:13:26', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'parkId', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972123385968226306, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'billNo', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972123385968226307, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'source', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972123385968226308, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'companyName', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972123385968226309, 1, 1, '2025-09-28 10:17:10', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'companyId', 'Y', 'Y', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972181971033456642, 1, 1, '2025-09-28 14:09:58', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'sync_Id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1972181971033456643, 1, 1, '2025-09-28 14:09:58', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'source_Id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1976483572388757506, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'check_people_id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1976483572388757507, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_charge_people_id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1976483572388757508, 1, 1, '2025-10-10 11:03:00', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'corrective_confirm_people_id', 'N', 'N', 'EQ', '', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_risk_hazard_manage');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1963446160969252866, 1, 1, '2025-09-04 11:36:58', 100, null, '2025-10-16 11:14:38', 0, 1963446160885366786, 'id', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {

View File

@@ -0,0 +1,21 @@
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_TYPE" where type in
('hazardType','riskLevelType');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('危险有害因素类别', 'hazardType', 0, '', '1', '2025-10-16 16:00:53', '1', '2025-10-16 16:00:53', 0, '1970-01-01 00:00:00');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('风险程度', 'riskLevelType', 0, '', '1', '2025-10-16 15:58:03', '1', '2025-10-16 15:58:03', 0, '1970-01-01 00:00:00');
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_DATA" where DICT_TYPE in
('hazardType','riskLevelType');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '', '1', 'riskLevelType', 0, '', '', '', '1', '2025-10-16 15:59:28', '1', '2025-10-16 15:59:28', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '一般', '2', 'riskLevelType', 0, '', '', '', '1', '2025-10-16 15:59:40', '1', '2025-10-16 15:59:40', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '较大', '3', 'riskLevelType', 0, '', '', '', '1', '2025-10-16 15:59:48', '1', '2025-10-16 15:59:48', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '', '4', 'riskLevelType', 0, '', '', '', '1', '2025-10-16 16:00:00', '1', '2025-10-16 16:00:00', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '人的因素', '1', 'hazardType', 0, '', '', '', '1', '2025-10-16 16:01:14', '1', '2025-10-16 16:01:14', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '物的因素', '2', 'hazardType', 0, '', '', '', '1', '2025-10-16 16:01:22', '1', '2025-10-16 16:01:22', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '环境因素', '3', 'hazardType', 0, '', '', '', '1', '2025-10-16 16:01:30', '1', '2025-10-16 16:01:30', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '重大', '5', 'riskLevelType', 0, '', '', '', '1', '2025-10-16 17:24:25', '1', '2025-10-16 17:24:25', 0);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
update "LOWCODE_FRAME"."LOWCODE_DBFORM"
set IS_DB_SYNC='N'
where TABLE_NAME in ('lc_risk_hazard_manage', 'lc_confined_space_operation',
'lc_fire_operation', 'lc_high_operation', 'lc_land_operation',
'lc_lifting_operation', 'lc_outside_person',
'lc_risk_identify_assessment', 'lc_temporary_power_operation');

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,21 @@
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_TYPE" where type in
('licenseType','outpersonStatus');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('证书类型', 'licenseType', 0, '', '1', '2025-10-17 14:47:47', '1', '2025-10-17 14:47:47', 0, '1970-01-01 00:00:00');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('外协人员状态', 'outpersonStatus', 0, '', '1', '2025-10-20 10:32:38', '1', '2025-10-20 10:32:38', 0, '1970-01-01 00:00:00');
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_DATA" where DICT_TYPE in
('licenseType','outpersonStatus');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '健康证', '1', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:05', '1', '2025-10-17 14:48:05', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '安全管理和作业人员证', '2', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:18', '1', '2025-10-17 14:48:18', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '电梯维修证', '3', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:25', '1', '2025-10-17 14:48:25', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '高压电工证', '4', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:34', '1', '2025-10-17 14:48:34', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '低压电工证', '5', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:45', '1', '2025-10-17 14:48:45', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '消防设施操作员证', '6', 'licenseType', 0, '', '', '', '1', '2025-10-17 14:48:52', '1', '2025-10-17 14:48:52', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '待入项', '0', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:03', '1', '2025-10-20 10:33:03', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已入项', '1', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:10', '1', '2025-10-20 10:33:10', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已出项', '2', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:16', '1', '2025-10-20 10:33:16', 0);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,14 @@
update "LOWCODE_FRAME"."LOWCODE_DBFORM"
set IS_DB_SYNC='N'
where TABLE_NAME in (
'lc_confined_space_operation',
'lc_drill_task', 'lc_emergency_plan',
'lc_exam_plan', 'lc_exam_record',
'lc_fire_operation', 'lc_high_operation',
'lc_land_operation', 'lc_lifting_operation',
'lc_outside_license', 'lc_outside_person',
'lc_risk_hazard_manage',
'lc_risk_identity_assessment',
'lc_temporary_power_operation',
'lc_training_plan', 'lc_training_record'
);

View File

@@ -0,0 +1,23 @@
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_TYPE" where type in
('ApproveStatusEnum','outpersonStatus');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('审批状态', 'ApproveStatusEnum', 0, '', '1', '2025-10-30 15:12:45', '1', '2025-10-30 15:12:45', 0, '1970-01-01 00:00:00');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('外协人员状态', 'outpersonStatus', 0, '', '1', '2025-10-20 10:32:38', '1', '2025-10-20 10:32:38', 0, '1970-01-01 00:00:00');
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_DATA" where DICT_TYPE in
('ApproveStatusEnum','outpersonStatus');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '待入项', '待入项', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:03', '1', '2025-10-30 15:52:21', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已入项', '已入项', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:10', '1', '2025-10-30 15:52:26', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已出项', '已出项', 'outpersonStatus', 0, '', '', '', '1', '2025-10-20 10:33:16', '1', '2025-10-30 15:52:30', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '未发起', '0', 'ApproveStatusEnum', 0, '', '', '', '1', '2025-10-30 15:13:05', '1', '2025-10-30 15:13:05', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '审批中', '1', 'ApproveStatusEnum', 0, '', '', '', '1', '2025-10-30 15:13:12', '1', '2025-10-30 15:13:12', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已审批', '2', 'ApproveStatusEnum', 0, '', '', '', '1', '2025-10-30 15:13:18', '1', '2025-10-30 15:13:18', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已驳回', '3', 'ApproveStatusEnum', 0, '', '', '', '1', '2025-10-30 15:13:25', '1', '2025-10-30 15:13:25', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已作废', '4', 'ApproveStatusEnum', 0, '', '', '', '1', '2025-10-30 15:13:30', '1', '2025-10-30 15:13:30', 0);

View File

@@ -0,0 +1,22 @@
-- 达梦数据库新增字段脚本
-- 功能为表BPM_PROCESS_INSTANCE_EXT新增ASSIGNEE字段
SET SCHEMA LOWCODE_MASTER;
-- 检查字段是否已存在
DECLARE
v_column_count NUMBER;
BEGIN
-- 查询系统表检查字段是否存在
SELECT COUNT(*) INTO v_column_count
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'BPM_PROCESS_INSTANCE_EXT'
AND COLUMN_NAME = 'ASSIGNEE';
-- 如果字段不存在,则执行添加操作
IF v_column_count = 0 THEN
EXECUTE IMMEDIATE 'ALTER TABLE BPM_PROCESS_INSTANCE_EXT ADD ASSIGNEE TEXT';
DBMS_OUTPUT.PUT_LINE('字段ASSIGNEE添加成功');
ELSE
DBMS_OUTPUT.PUT_LINE('字段ASSIGNEE已存在无需重复添加');
END IF;
END;
/

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,200 @@
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area';
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "TABLE_NAME", "TABLE_DESCRIBE", "TABLE_TYPE", "TABLE_CLASSIFY", "TABLE_ID_TYPE", "TABLE_SELECT", "IS_DB_SYNC", "IS_DES_FORM", "SUB_TABLE_MAPPING", "SUB_TABLE_SORT", "SUB_TABLE_TITLE", "THEME_TEMPLATE", "DESFORM_WEB_ID", "TREE_STYLE", "TREE_MODE", "TREE_LABEL_FIELD", "OPERATE_MENU_STYLE", "MAX_MENU_NUM", "FORM_STYLE", "SUB_TABLE_LIST_STR", "VIEW_DEFAULT_FIELD", "GROUP_DBFORM_ID", "ORDERBY_CONFIG", "WHERE_CONFIG", "DATA_CONFIG", "BASIC_FUNCTION", "BASIC_CONFIG", "TABLE_CONFIG", "DATA_SOURCES_CONFIG", "TABLE_STYLE", "IMPORT_DUPLICATE_TYPE") values(1967477428945199105, 1, 1, '2025-09-15 14:35:48', 100, 1, '2025-10-30 16:29:42', 0, 'lc_training_plan_area', '培训计划下发范围明细', 4, 1, 'NATIVE', 'multiple', 'Y', 'N', 'many', 1, '下发范围明细', 'normal', null, 'default', 'default', '', 'more', 1, 2, '', 'N', 1963432149124177923, '[{"order":"desc","column":"id"}]', null, 'page,initDataReq,authFalse', 'addBtn,editBtn,viewBtn,delBtn,batchDelBtn,importBtn,exportBtn', '', 'height,header,menu,index,border,rollBottom', '', '{"singleStyle":"default","searchStyle":"default"}', 'update');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JAVA" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497217, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', '主键', 128, 0, '', 'BigInt', '', 'Y', 'N', 1, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497218, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', '计划ID', 128, 0, '', 'BigInt', '', 'N', 'Y', 2, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497219, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', '下发部门ID', 128, 0, '', 'Integer', '', 'N', 'Y', 3, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497220, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', '接收部门', 128, 0, '', 'String', '', 'N', 'Y', 4, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497221, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', '责任人ID', 128, 0, '', 'BigInt', '', 'N', 'Y', 5, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497222, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', '责任人', 128, 0, '', 'String', '', 'N', 'Y', 6, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497223, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', '完成状态ID', 128, 0, '', 'Integer', '', 'N', 'Y', 7, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497224, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', '完成状态', 128, 0, '', 'String', '', 'N', 'Y', 8, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497225, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', '完成时间', 128, 0, '', 'Date', '', 'N', 'Y', 9, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497226, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', '租户编号', 128, 0, '', 'BigInt', '', 'N', 'Y', 10, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497227, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', '创建人', 128, 0, '', 'BigInt', '', 'N', 'Y', 11, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497228, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', '创建时间', 128, 0, '', 'DateTime', '', 'N', 'Y', 12, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497229, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', '创建部门id', 128, 0, '', 'BigInt', '', 'N', 'Y', 13, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497230, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', '更新人', 128, 0, '', 'BigInt', '', 'N', 'Y', 14, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497231, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', '更新时间', 128, 0, '', 'DateTime', '', 'N', 'Y', 15, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1967477429167497232, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', '是否删除', 2, 0, '0', 'Integer', '', 'N', 'Y', 16, 'Y');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212418, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212419, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212420, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212421, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212422, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212423, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212424, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212425, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212426, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212427, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212428, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212429, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212430, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212431, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212432, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1967477429377212433, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', '', '', '', '', '', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515585, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515586, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515587, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515588, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515589, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515590, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515591, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515592, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515593, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515594, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515595, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515596, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515597, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515598, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515599, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1967477429448515600, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', 'N', 'N', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515613, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515614, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', 'lc_training_plan', 'id');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515615, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515616, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515617, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515618, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515619, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515620, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515621, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515622, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515623, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515624, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515625, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515626, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515627, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1967477429448515628, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818780, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818781, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818782, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818783, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818784, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818785, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818786, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818787, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818788, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818789, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818790, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818791, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818792, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818793, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818794, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1967477429519818795, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', 'Y', 'N', 'EQ', '', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818753, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'id', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''主键'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818754, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'planId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''计划ID'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818755, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''下发部门ID'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818756, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'deptName', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''接收部门'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818757, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''责任人ID'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818758, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'userName', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''责任人'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818759, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatus', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成状态ID'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818760, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateStatusName', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成状态'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818761, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'complateDate', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成时间'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818762, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'tenant_id', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''租户编号'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818763, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_user', 'Y', 'N', 'N', 'N', 'N', 'N', 'userSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建人'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818764, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_time', 'Y', 'N', 'N', 'N', 'N', 'N', 'date', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建时间'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818765, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'create_dept', 'Y', 'N', 'N', 'N', 'N', 'N', 'deptSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建部门id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818766, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_user', 'Y', 'N', 'N', 'N', 'N', 'N', 'userSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''更新人'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818767, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'update_time', 'Y', 'N', 'N', 'N', 'N', 'N', 'date', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''更新时间'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1967477429519818768, 1, 1, '2025-09-15 14:35:48', 100, null, '2025-10-30 16:29:42', 0, 1967477428945199105, 'is_deleted', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''是否删除'',
//English
''en'': '''',
}');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_BUTTON" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
delete from "LOWCODE_FRAME"."LOWCODE_DESFORM" where id in (select desform_web_id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JS" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_SQL" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_training_plan_area');

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
UPDATE LOWCODE_MASTER.lc_outside_person set workPlaceName=(SELECT CAMPUS_NAME from LOWCODE_MASTER.campus_info WHERE CAMPUS_ID=LOWCODE_MASTER.lc_outside_person.workPlaceId );

View File

@@ -0,0 +1,8 @@
update "LOWCODE_FRAME"."LOWCODE_DBFORM"
set IS_DB_SYNC='N'
where TABLE_NAME in (
'lc_drill_plan', 'lc_outside_license',
'lc_outside_person', 'lc_risk_hazard_manage',
'lc_risk_identify_assessment', 'lc_training_plan',
'lc_training_plan_area', 'lc_training_record'
);

View File

@@ -0,0 +1,2 @@
DELETE FROM "LOWCODE_MASTER"."SYSTEM_DICT_DATA" WHERE DICT_TYPE = 'bpm_task_assign_rule_type' AND "VALUE" = '35';
INSERT INTO "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(35, '发起人自选', '35', 'bpm_task_assign_rule_type', 0, 'info', '', '任务分配规则的类型 - 发起人自选', '1', '2025-10-27 11:47:39', '1', '2025-10-27 11:48:18', 0);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,200 @@
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus';
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "TABLE_NAME", "TABLE_DESCRIBE", "TABLE_TYPE", "TABLE_CLASSIFY", "TABLE_ID_TYPE", "TABLE_SELECT", "IS_DB_SYNC", "IS_DES_FORM", "SUB_TABLE_MAPPING", "SUB_TABLE_SORT", "SUB_TABLE_TITLE", "THEME_TEMPLATE", "DESFORM_WEB_ID", "TREE_STYLE", "TREE_MODE", "TREE_LABEL_FIELD", "OPERATE_MENU_STYLE", "MAX_MENU_NUM", "FORM_STYLE", "SUB_TABLE_LIST_STR", "VIEW_DEFAULT_FIELD", "GROUP_DBFORM_ID", "ORDERBY_CONFIG", "WHERE_CONFIG", "DATA_CONFIG", "BASIC_FUNCTION", "BASIC_CONFIG", "TABLE_CONFIG", "DATA_SOURCES_CONFIG", "TABLE_STYLE", "IMPORT_DUPLICATE_TYPE") values(1983373030249795586, 1, 1, '2025-10-29 11:19:14', 100, 1, '2025-10-29 15:31:33', 0, 'lc_work_item_issus', '工作事项下发表', 4, 1, 'NATIVE', 'multiple', 'Y', 'N', 'many', 1, '工作事项下发', 'normal', null, 'default', 'default', '', 'more', 1, 2, '', 'N', 1960949902852292609, '[{"order":"desc","column":"id"}]', null, 'page,initDataReq,authFalse', 'addBtn,editBtn,viewBtn', '', 'height,header,menu,index,border,rollBottom', '', '{"singleStyle":"default","singleCardSpan":"","expandShowNum":null,"expandMode":"","searchStyle":"default"}', 'update');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JAVA" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681665, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', '主键', 128, 0, '', 'BigInt', '', 'Y', 'N', 1, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681666, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', '工作事项Id', 128, 0, '', 'BigInt', '', 'N', 'Y', 2, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681667, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', '部门名称', 128, 0, '', 'String', '', 'N', 'Y', 3, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681668, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', '部门Id', 128, 0, '', 'BigInt', '', 'N', 'Y', 4, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681669, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', '负责人名称', 128, 0, '', 'String', '', 'N', 'Y', 5, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681670, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', '负责人Id', 128, 0, '', 'String', '', 'N', 'Y', 6, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681671, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', '完成状态Id', 128, 0, '', 'Integer', '', 'N', 'Y', 7, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681672, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', '完成状态', 128, 0, '', 'String', '', 'N', 'Y', 8, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681673, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', '完成时间_', 128, 0, '', 'DateTime', '', 'N', 'Y', 9, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681674, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', '租户编号', 128, 0, '', 'BigInt', '', 'N', 'Y', 10, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681675, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', '创建人', 128, 0, '', 'BigInt', '', 'N', 'Y', 11, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681676, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', '创建时间', 128, 0, '', 'DateTime', '', 'N', 'Y', 12, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681677, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', '创建部门id', 128, 0, '', 'BigInt', '', 'N', 'Y', 13, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681678, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', '更新人', 128, 0, '', 'BigInt', '', 'N', 'Y', 14, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681679, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', '更新时间', 128, 0, '', 'DateTime', '', 'N', 'Y', 15, 'Y');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "FIELD_NAME", "FIELD_LEN", "FIELD_POINT_LEN", "FIELD_DEFAULT_VAL", "FIELD_TYPE", "FIELD_REMARK", "IS_PRIMARY_KEY", "IS_NULL", "SORT_NUM", "IS_DB") values(1983373030333681680, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', '是否删除', 2, 0, '0', 'Integer', '', 'N', 'Y', 16, 'Y');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819010, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819011, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819012, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819013, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819014, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819015, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819016, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819017, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819018, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819019, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819020, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819021, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819022, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819023, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819024, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', '', '', '', '', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_DICT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "DICT_TYPE", "DICT_CODE", "DICT_TABLE", "DICT_TEXT", "DICT_TABLE_COLUMN", "DICT_TEXT_FORMATTER", "DICT_TABLE_SEARCH") values(1983373030379819025, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', '', '', '', '', '', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762050, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762051, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762052, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762053, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762054, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762055, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762056, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762057, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762058, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', 'Y', 'Y', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762059, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762060, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762061, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762062, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762063, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762064, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', 'N', 'N', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_EXPORT"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_IMPORT", "IS_EXPORT", "IMPORT_EXAMPLE_TXT", "IS_IMPORT_DUPLICATE") values(1983373030421762065, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', 'N', 'N', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648130, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648131, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', 'lc_work_item', 'id');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648132, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648133, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648134, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648135, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648136, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648137, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648138, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648139, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648140, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648141, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648142, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648143, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648144, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_FOREIGNKEY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "MAIN_TABLE", "MAIN_FIELD") values(1983373030505648145, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922818, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922819, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922820, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922821, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922822, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922823, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922824, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922825, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922826, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922827, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', 'N', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922828, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922829, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922830, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922831, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922832, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', 'Y', 'N', 'EQ', '', '', '');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_QUERY"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "QUERY_IS_DB", "QUERY_IS_WEB", "QUERY_MODE", "QUERY_CONFIG", "QUERY_DEFAULT_VAL", "FILTER_AUTH") values(1983373030597922833, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', 'Y', 'N', 'EQ', '', '', '');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785473, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'id', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''主键'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785474, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'workItemId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''工作事项Id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785475, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptName', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''部门名称'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785476, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'deptId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''部门Id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785477, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeName', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''负责人名称'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785478, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'chargeId', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''负责人Id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785479, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatus', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成状态Id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785480, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateStatusName', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成状态'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785481, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'complateDate', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''完成时间_'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785482, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'tenant_id', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''租户编号'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785483, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_user', 'Y', 'N', 'N', 'N', 'N', 'N', 'userSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建人'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785484, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_time', 'Y', 'N', 'N', 'N', 'N', 'N', 'date', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建时间'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785485, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'create_dept', 'Y', 'N', 'N', 'N', 'N', 'N', 'deptSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''创建部门id'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785486, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_user', 'Y', 'N', 'N', 'N', 'N', 'N', 'userSelect', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''更新人'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785487, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'update_time', 'Y', 'N', 'N', 'N', 'N', 'N', 'date', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''更新时间'',
//English
''en'': '''',
}');
insert into "LOWCODE_FRAME"."LOWCODE_DBFORM_FIELD_WEB"("ID", "TENANT_ID", "CREATE_USER", "CREATE_TIME", "CREATE_DEPT", "UPDATE_USER", "UPDATE_TIME", "IS_DELETED", "DBFORM_ID", "FIELD_CODE", "IS_DB_SELECT", "IS_SHOW_LIST", "IS_SHOW_FORM", "IS_SHOW_COLUMN", "IS_SHOW_SORT", "IS_REQUIRED", "CONTROL_TYPE", "CONTROLS_CONFIG", "CELL_WIDTH", "CELL_WIDTH_TYPE", "VERIFY_CONFIG", "FORMAT_CONFIG", "LABEL_I18N") values(1983373030551785488, 1, 1, '2025-10-29 11:19:14', 100, null, '2025-10-29 15:31:33', 0, 1983373030249795586, 'is_deleted', 'Y', 'N', 'N', 'N', 'N', 'N', 'input', '', '', 'min', '', '{"formatType":"","formatJson":{"sql":{},"java":{},"fun":""}}', 'return {
//简体中文
''zh-CN'': ''是否删除'',
//English
''en'': '''',
}');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_BUTTON" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
delete from "LOWCODE_FRAME"."LOWCODE_DESFORM" where id in (select desform_web_id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_JS" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');
delete from "LOWCODE_FRAME"."LOWCODE_DBFORM_ENHANCE_SQL" where dbform_id in (select id from "LOWCODE_FRAME"."LOWCODE_DBFORM" where TABLE_NAME = 'lc_work_item_issus');

View File

@@ -0,0 +1,19 @@
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_TYPE" where type in
('workItemType','itemResultType');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('事项结果状态', 'itemResultType', 0, '', '1', '2025-10-29 14:43:15', '1', '2025-10-29 14:43:15', 0, '1970-01-01 00:00:00');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_TYPE"("NAME", "TYPE", "STATUS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED", "DELETED_TIME") values('工作事项状态', 'workItemType', 0, '', '1', '2025-10-29 11:08:54', '1', '2025-10-29 11:08:54', 0, '1970-01-01 00:00:00');
delete
from "LOWCODE_MASTER"."SYSTEM_DICT_DATA" where DICT_TYPE in
('workItemType','itemResultType');
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '未开始', '1', 'workItemType', 0, 'default', '', '', '1', '2025-10-29 11:09:46', '1', '2025-10-29 11:09:46', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '进行中', '2', 'workItemType', 0, 'primary', '', '', '1', '2025-10-29 11:10:06', '1', '2025-10-29 11:10:06', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已完成', '3', 'workItemType', 0, 'success', '', '', '1', '2025-10-29 11:10:22', '1', '2025-10-29 11:10:22', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '已完成', '1', 'itemResultType', 0, 'success', '', '', '1', '2025-10-29 14:43:43', '1', '2025-10-29 14:43:43', 0);
insert into "LOWCODE_MASTER"."SYSTEM_DICT_DATA"("SORT", "LABEL", "VALUE", "DICT_TYPE", "STATUS", "COLOR_TYPE", "CSS_CLASS", "REMARK", "CREATOR", "CREATE_TIME", "UPDATER", "UPDATE_TIME", "DELETED") values(0, '未完成', '2', 'itemResultType', 0, 'default', '', '', '1', '2025-10-29 14:43:56', '1', '2025-10-29 14:43:56', 0);

View File

@@ -0,0 +1,6 @@
update "LOWCODE_FRAME"."LOWCODE_DBFORM"
set IS_DB_SYNC='N'
where TABLE_NAME in (
'lc_item_result', 'lc_training_plan', 'lc_training_record',
'lc_work_item', 'lc_work_item_issus'
);

View File

@@ -40,7 +40,15 @@ spring:
logging:
file:
name: /data/mjkj/webapp/mjkj_jeelowcode/webapp/logs/${spring.application.name}.log # 日志文件名,全路径
name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
level:
com.jeelowcode.core.framework.mapper.LogApiMapper: ERROR #日志入库不需要打印
com.jeelowcode.core.framework.mapper.LogApiErrorMapper: ERROR #日志入库不需要打印
com.jeelowcode.service.system.mapper.OperateLogMapper: error #日志入库不需要打印
org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR
org.mybatis.spring.mapper.ClassPathMapperScanner: error
de.codecentric: error
--- #################### 芋道相关配置 ####################
# 芋道配置项,设置当前项目所有自定义的配置

View File

@@ -40,7 +40,14 @@ spring:
logging:
file:
name: /data/mjkj/webapp/mjkj_jeelowcode/webapp/logs/${spring.application.name}.log # 日志文件名,全路径
name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
level:
com.jeelowcode.core.framework.mapper.LogApiMapper: ERROR #日志入库不需要打印
com.jeelowcode.core.framework.mapper.LogApiErrorMapper: ERROR #日志入库不需要打印
com.jeelowcode.service.system.mapper.OperateLogMapper: error #日志入库不需要打印
org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR
org.mybatis.spring.mapper.ClassPathMapperScanner: error
de.codecentric: error
--- #################### 芋道相关配置 ####################
# 芋道配置项,设置当前项目所有自定义的配置

View File

@@ -216,6 +216,7 @@ public class FrameWorkAdapter implements IJeeLowCodeAdapter {
public List<JeeLowCodeDept> getDeptList(JeeLowCodeDeptParam param) {
String deptName = param.getDeptName();//部门名称搜索
int outCondition=-1;
String type = Func.isEmpty(param.getType()) ? "all" : param.getType();
List<Long> deptIdList = new ArrayList<>();//部门id列表,为空则查所有
if (Func.equals(type, "now")) {//本级
@@ -226,15 +227,22 @@ public class FrameWorkAdapter implements IJeeLowCodeAdapter {
deptIdList = this.getChildDeptIdList(this.getOnlineUserDeptId(),false);
} else if (Func.equals(type, "direct_sub")) {//直接下级
deptIdList = this.getDirectChildDeptIdList(this.getOnlineUserDeptId());
}else if (Func.equals(type, "out")) {//外协单位
// 外协单位IS_INTERNAL=0
// 当选择为外协单位时 条件为不等于1
// 当没有选择 外协单位时 条件为不等于-1
outCondition=1;
}
List<Long> finalDeptIdList = deptIdList;
int finalOutCondition = outCondition;
SqlInfoQueryWrapper.Wrapper wrapper = SqlHelper.getQueryWrapper()
.select("id", "parent_id", "name")
.setTableName("system_dept")
.setWhere(where -> {
where.in(Func.isNotEmpty(finalDeptIdList), "id", finalDeptIdList);
where.like(FuncBase.isNotEmpty(deptName), "name", deptName);
where.ne("IS_INTERNAL", finalOutCondition);
where.eq("deleted", 0);
})
.orderByAsc("sort")

View File

@@ -0,0 +1,35 @@
package com.jeelowcode.core.framework.config.btncommand.button;
import com.jeelowcode.core.framework.config.btncommand.receiver.IButtonCommandReceiver;
import com.jeelowcode.core.framework.params.model.ExcelModel;
import com.jeelowcode.core.framework.params.model.TableModel;
/**
* 具体命令-新增按钮命令
*/
public class CustomButtonCommand implements IButtonCommand<TableModel> {
//命令执行者
private IButtonCommandReceiver<TableModel> recevier;
/**
* 绑定执行者
* @param recevier 执行者
*/
public CustomButtonCommand(IButtonCommandReceiver recevier) {
this.recevier = recevier;
}
/**
* 执行命令
* @return
*/
@Override
public TableModel execute() {
TableModel receiver = recevier.receiver();
return receiver;
}
}

View File

@@ -0,0 +1,70 @@
package com.jeelowcode.core.framework.config.btncommand.receiver;
import cn.hutool.json.JSONObject;
import com.jeelowcode.core.framework.entity.FormEntity;
import com.jeelowcode.core.framework.params.model.TableModel;
import com.jeelowcode.framework.utils.adapter.IJeeLowCodeAdapter;
import com.jeelowcode.framework.utils.model.ResultDataModel;
import com.jeelowcode.framework.utils.tool.CollectionUtil;
import com.jeelowcode.framework.utils.tool.spring.SpringUtils;
import com.jeelowcode.core.framework.config.btncommand.param.ButtonParamExport;
import com.jeelowcode.core.framework.params.model.ExcelModel;
import com.jeelowcode.core.framework.params.vo.role.DbFormRoleFieldVo;
import com.jeelowcode.core.framework.service.IDbFormRoleService;
import com.jeelowcode.core.framework.service.IExcelService;
import com.jeelowcode.core.framework.service.IFormService;
import com.jeelowcode.core.framework.service.IFrameService;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 新增自定义执行者
*/
public class ButtonReceiverCustom extends ButtonReceiverBase implements IButtonCommandReceiver<TableModel> {
private String pluginKey;
private ButtonParamExport param;
public ButtonReceiverCustom(ButtonParamExport param) {
this.param = param;
}
/**
* 执行命令
*
* @return
*/
@Override
public TableModel receiver() {
IFormService formService = SpringUtils.getBean(IFormService.class);
IFrameService frameService = SpringUtils.getBean(IFrameService.class);
Long dbFormId = param.getDbFormId();
Map<String, Object> params = param.getParams();
FormEntity formEntity = formService.getFormEntityById(dbFormId);
//人员信息自定义导出后刷新是否背调状态为是
if (formEntity.getTableName().toLowerCase().equals("lc_outside_person")) {
ResultDataModel model = frameService.getExportDataList(dbFormId, params);
List<JSONObject> records = model.getRecords().stream()
.map(recordMap -> new JSONObject(recordMap))
.collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(records)) {
for (JSONObject record : records) {
record.set("isValidate", "");
}
frameService.editBatchData(dbFormId, records);
}
}
return new TableModel(formEntity.getTableName(), formEntity.getTableDescribe());
}
}

View File

@@ -15,6 +15,7 @@ import com.jeelowcode.core.framework.entity.FormFieldWebEntity;
import com.jeelowcode.core.framework.params.model.ExcelImportResultModel;
import com.jeelowcode.core.framework.params.model.ExcelModel;
import com.jeelowcode.core.framework.params.model.ExcelTemplateModel;
import com.jeelowcode.core.framework.params.model.TableModel;
import com.jeelowcode.core.framework.params.vo.FormEntityPageVo;
import com.jeelowcode.core.framework.service.IFormService;
import com.jeelowcode.core.framework.utils.Func;
@@ -280,6 +281,25 @@ public class BaseController {
return excelModel;
}
//导出Excel数据后(自定义拓展)
protected void afterExportExcelData(Long dbformId, Map<String, Object> params ){
//封装参数
ButtonParamExport buttonParam = new ButtonParamExport();
buttonParam.setDbFormId(dbformId);
buttonParam.setParams(params);
//执行者绑定参数
//执行者绑定参数
IButtonCommandReceiver receiver = new ButtonReceiverCustom(buttonParam);
//执行者和命令绑定
CustomButtonCommand command = new CustomButtonCommand(receiver);
//创建调用者
ButtonInvoker<TableModel> invoker = new ButtonInvoker();
invoker.setButtonCommand(command);//调用者设置命令
invoker.executeCommand();//调用者下发命令
}
//导入Excel数据
protected ExcelImportResultModel importExcelData(ButtonParamImport buttonParam){
//执行者绑定参数

View File

@@ -87,6 +87,19 @@ public class ExcelController extends BaseController {
JeeLowCodeExcelUtils.exportExcel(rsp, excelModel.getSheetName(), excelModel.getHeadTitleMap(), excelModel.getDataMapList());
}
@PreAuthorize("@ss.hasPermission('jeelowcode:dbform-data:export:'+#dbformId)")
@ApiOperationSupport(order = 2)
@Operation(tags = "Excel模块",summary = "导出Excel数据")
@PostMapping({"/exportExcelCustom/{dbformId}"})
public void exportExcelDataCustom(@PathVariable("dbformId") Long dbformId, HttpServletRequest req, HttpServletResponse rsp) {
Map<String, Object> params = FuncWeb.getParameterBodyMap(req);
ExcelModel excelModel = super.exportExcelData(dbformId, params);
super.afterExportExcelData(dbformId, params);
//导出
JeeLowCodeExcelUtils.exportExcel(rsp, excelModel.getSheetName(), excelModel.getHeadTitleMap(), excelModel.getDataMapList());
}
@PreAuthorize("@ss.hasPermission('jeelowcode:dbform-data:import:'+#dbformId)")
@ApiOperationSupport(order = 3)
@Operation(tags = "Excel模块",summary = "导入Excel数据")

View File

@@ -620,7 +620,7 @@ public class FrameServiceImpl implements IFrameService {
handleResult = "FAIL";
} catch (Exception e) {
e.printStackTrace();
errorReason = "数据格式有误";
errorReason = "数据格式有误"+e.toString();
handleResult = "FAIL";
}
String redisKeyData = "excel:import_data:task_" + fieldId + ":" + handleResult + ":" + entity.getId();
@@ -1114,11 +1114,11 @@ public class FrameServiceImpl implements IFrameService {
queryWrapper.select(select, aliasFlag);
queryWrapper.setWhere(where -> {
where.eq("is_deleted", 0);
params.forEach((key, value) -> {
if(select.contains(key)){
where.eq(key, value);
}
});
// params.forEach((key, value) -> {
// if(select.contains(key)){
// where.eq(key, value);
// }
// });
}).build();
} else {//显示表-视图
String dataSourcesConfigJsonStr = formEntity.getDataSourcesConfig();

View File

@@ -5,8 +5,19 @@ package com.jeelowcode.framework.excel.handler;
import com.alibaba.excel.write.handler.SheetWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.streaming.SXSSFSheet;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
*
@@ -15,6 +26,12 @@ public class CustomSheetWriteHandler implements SheetWriteHandler {
private static final Integer COLUMN = 26;
private Map<Integer, List<String>> dropDownData;
public CustomSheetWriteHandler(Map<Integer, List<String>> dropDownData){
this.dropDownData = dropDownData;
}
@Override
public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
for (int i = 0; i < COLUMN; i++) {
@@ -26,5 +43,25 @@ public class CustomSheetWriteHandler implements SheetWriteHandler {
// i为列一整列设置为文本格式
sxssfSheet.setDefaultColumnStyle(i, cellStyle);
}
for (Map.Entry<Integer, List<String>> entry : dropDownData.entrySet()){
if(entry.getValue().size()>=10){
String[] selectValues = entry.getValue().toArray(new String[entry.getValue().size()]);
/* 解决办法从这里开始 */
//获取一个workbook
Workbook workbook = writeWorkbookHolder.getWorkbook();
//定义sheet的名称
String hiddenName = "hidden"+entry.getKey();
//1.创建一个隐藏的sheet 名称为 hidden
Sheet hidden = workbook.createSheet(hiddenName);
//2.循环赋值(为了防止下拉框的行数与隐藏域的行数相对应,将隐藏域加到结束行之后)
for (int i = 0, length = selectValues.length; i < length; i++) {
// 3:表示你开始的行数 3表示 你开始的列数
hidden.createRow( i).createCell(0).setCellValue(selectValues[i]);
}
workbook.setSheetHidden(workbook.getSheetIndex(hidden), true);
}
}
}
}

View File

@@ -81,6 +81,7 @@ public class RowFormatSetTextHandler implements CellWriteHandler {
cellData.setOriginCellStyle(cellStyle);
}
/**
* 单元格样式
*/
@@ -110,7 +111,15 @@ public class RowFormatSetTextHandler implements CellWriteHandler {
String[] dropdownOptionsArray = dropdownOptionList.toArray(new String[0]);
// 创建下拉列表的约束
DataValidationConstraint constraint = helper.createExplicitListConstraint(dropdownOptionsArray);
DataValidationConstraint constraint;//= helper.createExplicitListConstraint(dropdownOptionsArray);
if (dropdownOptionsArray.length < 10) {
// 直接设置下拉选
constraint = helper.createExplicitListConstraint(dropdownOptionsArray);
} else {
// 联动到另外一个 sheet
//这里如果识别到大于等于10行不管数据量有多少
constraint = helper.createFormulaListConstraint("hidden"+firstCol+"!$A$1:$A$"+dropdownOptionList.size());
}
// 设置下拉列表应用的单元格区域例如第2行到最后一行的第2列
int firstRow = 1; // 通常Excel中第一行是1这里假设第一行为表头

View File

@@ -93,7 +93,7 @@ public class ExcelExportUtils {
rowFormatSetTextHandler.setDropdownOptionsMap(dropdownOptionsMap);
EasyExcel.write(response.getOutputStream())
.registerWriteHandler(rowFormatSetTextHandler)
.registerWriteHandler(new CustomSheetWriteHandler())// 初始化单元格为文本格式
.registerWriteHandler(new CustomSheetWriteHandler(dropdownOptionsMap))// 初始化单元格为文本格式
.registerWriteHandler(new CustomColumnWidthStyleStrategy())// 单元格宽度
.registerWriteHandler(CellStyleUtils.getCellStyleStrategy())// 单元格样式
.head(head)
@@ -145,7 +145,7 @@ public class ExcelExportUtils {
WriteSheet writeSheet = EasyExcel.writerSheet(sheetName)
.head(head)
.registerWriteHandler(rowFormatSetTextHandler)
.registerWriteHandler(new CustomSheetWriteHandler())
.registerWriteHandler(new CustomSheetWriteHandler(dropdownOptionsMap))
.registerWriteHandler(new CustomColumnWidthStyleStrategy())
.registerWriteHandler(CellStyleUtils.getCellStyleStrategy())
.build();

View File

@@ -0,0 +1,16 @@
package com.jeelowcode.framework.plus.build;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import net.sf.jsqlparser.JSQLParserException;
/**
*
* @param <T> 返回值
*/
public interface ISQLExpression<T> {
//解析器
T interpret(SQLInterpretContext contextT) throws JSQLParserException;
}

View File

@@ -0,0 +1,225 @@
package com.jeelowcode.framework.plus.build.build;
import com.jeelowcode.framework.exception.JeeLowCodeException;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.*;
import com.jeelowcode.framework.plus.build.build.dql.*;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.*;
import java.util.stream.Collectors;
/**
* 多条件
*/
public class AndExpression implements ISQLExpression<List<SqlFormatModel>> {
private ISQLExpression[] expressions;
public AndExpression(ISQLExpression... expressions) {
this.expressions = expressions;
}
public AndExpression(List<ISQLExpression> expressionList) {
expressions =new ISQLExpression[expressionList.size()];
for (int i = 0; i < expressionList.size(); i++) {
ISQLExpression expression = expressionList.get(i);
expressions[i]=expression;
}
}
/**
* ddl允许多个dql只允许一个
* @param context
* @return
* @throws JSQLParserException
*/
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
List<SqlFormatModel> sqlFormatModelList = this.getDDL(context);
if (FuncBase.isNotEmpty(sqlFormatModelList)) {
return sqlFormatModelList;
}
SqlFormatModel sqlFormatModel = this.getDQL(context);
return Collections.singletonList(sqlFormatModel);
}
//获取ddl
private List<SqlFormatModel> getDDL(SQLInterpretContext context) throws JSQLParserException {
List<ISQLExpression> ddlList = Arrays.stream(expressions)
.filter(expression -> expression instanceof BuildAlter
|| expression instanceof BuildCreateIndex
|| expression instanceof BuildCreateTable
|| expression instanceof BuildDrop
|| expression instanceof BuildComment
|| expression instanceof BuildPrimaryKey
|| expression instanceof BuildDdl)
.collect(Collectors.toList());
if (FuncBase.isEmpty(ddlList)) {
return null;
}
List<SqlFormatModel> resultModelList=new ArrayList<>();
for (ISQLExpression<SqlFormatModel> expression : ddlList) {
Object obj= expression.interpret(context);
if (FuncBase.isEmpty(obj)) {
continue;
}
if(obj instanceof SqlFormatModel){
resultModelList.add((SqlFormatModel)obj);
}else if(obj instanceof List){
resultModelList.addAll((List<SqlFormatModel>)obj);
}
}
return resultModelList;
}
private SqlFormatModel getDQL(SQLInterpretContext context) throws JSQLParserException {
List<ISQLExpression> expressionList = this.getDQLExpression();
if (FuncBase.isEmpty(expressionList)) {
throw new JeeLowCodeException("表达式为空");
}
String sql = "";
Map<String, Object> dataMap = new LinkedHashMap<>();
int step = 0;
for (ISQLExpression expression : expressionList) {//buildselect buildwhere buidlorderby
SqlFormatModel sqlFormatModel = (SqlFormatModel) expression.interpret(context);
String tmpSql = sqlFormatModel.getSql();
Map<String, Object> tmpMap = sqlFormatModel.getDataMap();
if (FuncBase.isEmpty(tmpMap)) {
sql += " " + tmpSql;
continue;
}
// 首先将entrySet中的元素复制到一个列表中
List<Map.Entry<String, Object>> entrieList = new ArrayList<>(tmpMap.entrySet());
Collections.reverse(entrieList);
for (Map.Entry<String, Object> entry : entrieList) {
step++;
String key = entry.getKey(); // 获取键
Object value = entry.getValue(); // 获取值
String newKey = "JEELOWCODE_MPGENVAL" + step;
// 执行你的替换逻辑
tmpSql = tmpSql.replace("#{ew.paramNameValuePairs." + key+"," , "#{" +context.getPreSymbol()+ newKey+"," );
tmpSql = tmpSql.replace("#{ew.paramNameValuePairs." + key+"}" , "#{" +context.getPreSymbol()+ newKey+"}" );
dataMap.put("JEELOWCODE_MPGENVAL" + step, value);
}
sql += " " + tmpSql;
}
return new SqlFormatModel(sql, dataMap);
}
//获取dql 排序后的表达式
private List<ISQLExpression> getDQLExpression() {
List<ISQLExpression> dqllList = Arrays.stream(expressions)
.filter(expression -> expression instanceof BuildSelect
|| expression instanceof BuildJoin
|| expression instanceof BuildWhere
|| expression instanceof BuildGroupBy
|| expression instanceof BuildHaving
|| expression instanceof BuildOrderBy
|| expression instanceof BuildInsert
|| expression instanceof BuildUpdate
|| expression instanceof BuildDelete)
.collect(Collectors.toList());
if (FuncBase.isEmpty(dqllList)) {
return null;
}
//只有一个,不用排序
if(FuncBase.isNotEmpty(dqllList) && dqllList.size()==1){
return dqllList;
}
//排序
List<ISQLExpression> sortList = new ArrayList<>();
//下面是dql,需要安装sql标准查询的格式来凭接
ISQLExpression tmpSelect = null;
List<ISQLExpression> tmpJoinList = new ArrayList<>();
ISQLExpression tmpWhere = null;
ISQLExpression tmpGroupBy = null;
ISQLExpression tmpOrderBy = null;
ISQLExpression tmpHaving = null;
ISQLExpression tmpInsert = null;
ISQLExpression tmpUpdate = null;
ISQLExpression tmpDelete = null;
for (ISQLExpression expression : expressions) {
if (expression instanceof BuildSelect) {
tmpSelect = expression;
} else if (expression instanceof BuildJoin) {
tmpJoinList.add(expression);//因为会多个
} else if (expression instanceof BuildWhere) {
tmpWhere = expression;
} else if (expression instanceof BuildGroupBy) {
tmpGroupBy = expression;
} else if (expression instanceof BuildHaving) {
tmpHaving = expression;
} else if (expression instanceof BuildOrderBy) {
tmpOrderBy = expression;
} else if (expression instanceof BuildInsert) {
tmpInsert = expression;
} else if (expression instanceof BuildUpdate) {
tmpUpdate = expression;
} else if (expression instanceof BuildDelete) {
tmpDelete = expression;
}
}
//如果是insert类的话则直接返回
if (FuncBase.isNotEmpty(tmpInsert)) {
sortList.add(tmpInsert);
return sortList;
}
//如果是update 和 delete select 都可以带where
if (FuncBase.isNotEmpty(tmpSelect)) {
sortList.add(tmpSelect);
} else if (FuncBase.isNotEmpty(tmpUpdate)) {
sortList.add(tmpUpdate);
} else if (FuncBase.isNotEmpty(tmpDelete)) {
sortList.add(tmpDelete);
} else {
throw new JeeLowCodeException("表达式必须有BuildSelect/BuildUpdate/BuildDelete");
}
//第一个
ISQLExpression firstExpression = sortList.get(0);
if (firstExpression instanceof BuildSelect && FuncBase.isNotEmpty(tmpJoinList)) {//必须是select的情况下才能inner join
sortList.addAll(tmpJoinList);
}
//后面是带 where
if (FuncBase.isNotEmpty(tmpWhere)) {
sortList.add(tmpWhere);
}
if (firstExpression instanceof BuildSelect && FuncBase.isNotEmpty(tmpGroupBy)) {//必须是select的情况下才有group by
sortList.add(tmpGroupBy);
if (FuncBase.isNotEmpty(tmpHaving)) {
sortList.add(tmpHaving);
}
}
if (firstExpression instanceof BuildSelect && FuncBase.isNotEmpty(tmpOrderBy)) {//必须是select的情况下才有order by
sortList.add(tmpOrderBy);
}
return sortList;
}
}

View File

@@ -0,0 +1,612 @@
package com.jeelowcode.framework.plus.build.build;
import com.jeelowcode.framework.plus.build.build.dql.*;
import com.jeelowcode.framework.plus.build.buildmodel.dql.*;
/**
* @author JX
* @create 2024-07-03 10:16
* @dedescription:
*/
public class TestBuild {
/* @Test
public void testBuildSelect() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
*//* .setColumns("id", "name")*//*
.setTableName("tbl_student")
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setSelectModel(selectModel);
BuildSelect buildSelect = new BuildSelect();
SqlFormatModel interpret = buildSelect.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildOrderBy() throws JSQLParserException {
SqlInfoOrderModel build = SqlInfoOrderModel.builder()
.setOrderByAsc("id","name")
.setOrderByDesc("age")
.setOrderByAsc("sex")
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setOrderModel(build);
BuildOrderBy buildOrderBy=new BuildOrderBy();
SqlFormatModel interpret = buildOrderBy.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildGroupBy() throws JSQLParserException {
SqlInfoGroupModel build = SqlInfoGroupModel.builder()
.setColumns("name", "age")
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setGroupModel(build);
BuildGroupBy buildGroupBy=new BuildGroupBy();
SqlFormatModel interpret = buildGroupBy.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildWhere() throws JSQLParserException {
SqlInfoWhereModel build = SqlInfoWhereModel.builder()
.gt("id", 12)
.ge("age", 18)
.ne("name", "张三")
.between("height",18,30)
.in("a.id",1,2,3,4,5)
.like("name","张三")
.buildWhere();
SQLInterpretContext context = new SQLInterpretContext();
context.setWhereModel(build);
BuildWhere buildWhere=new BuildWhere();
SqlFormatModel interpret = buildWhere.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildDelete() throws JSQLParserException {
SqlInfoDeleteModel build = SqlInfoDeleteModel.builder()
.setTableName("tbl_student")
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setDeleteModel(build);
BuildDelete buildDelete=new BuildDelete();
SqlFormatModel interpret = buildDelete.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildRealDelete() throws JSQLParserException {
SqlInfoDeleteModel build = SqlInfoDeleteModel.builder()
.setTableName("tbl_student",true)
.build();
SQLInterpretContext context = new SQLInterpretContext();
BuildDelete buildDelete=new BuildDelete();
context.setDeleteModel(build);
SqlFormatModel interpret = buildDelete.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildInsert() throws JSQLParserException {
Map<String,Object> addMap=new HashMap<>();
addMap.put("age",18);
addMap.put("name","张三");
SqlInfoInsertModel build = SqlInfoInsertModel.builder()
.setTableName("tbl_student")
.addColumn("id", 123)
.addMap(addMap)
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setInsertModel(build);
BuildInsert buildInsert=new BuildInsert();
SqlFormatModel interpret = buildInsert.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildUpdate() throws JSQLParserException {
Map<String,Object> updateMap=new HashMap<>();
updateMap.put("age",18);
updateMap.put("name","张三");
SqlInfoUpdateModel build = SqlInfoUpdateModel.builder()
.setTableName("tbl_student")
.addColumn("id", 123)
.addMap(updateMap)
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setUpdateModel(build);
BuildUpdate buildUpdate=new BuildUpdate();
SqlFormatModel interpret = buildUpdate.interpret(context);
System.out.println(FuncBase.json2Str(interpret));
}
@Test
public void testBuildAlter_AddColumn() throws JSQLParserException {
*//*
TableFieldModel fieldModel = new TableFieldModel();
fieldModel.setFieldCode("name");
fieldModel.setFieldType("varchar(128)");
fieldModel.setCommentSql("年龄");
SqlInfoAlterModel model = SqlInfoAlterModel.builder()
.setTableName("tbl_student")
.buildAddColumn(fieldModel);
SQLInterpretContext context = new SQLInterpretContext();
context.setAlterModel(model);
BuildAlter build=new BuildAlter();
SqlFormatModel interpret = build.interpret(context);
System.out.println(Func.json2Str(interpret));*//*
}
@Test
public void testBuildAlter_updaateColumn() throws JSQLParserException {
*//*TableFieldModel fieldModel = new TableFieldModel();
fieldModel.setFieldCode("name");
fieldModel.setFieldType("varchar(128)");
fieldModel.setCommentSql("年龄");
SqlInfoAlterModel model = SqlInfoAlterModel.builder()
.setTableName("tbl_student")
.buildUpdateColum(fieldModel);
SQLInterpretContext context = new SQLInterpretContext();
context.setAlterModel(model);
BuildAlter build=new BuildAlter();
SqlFormatModel interpret = build.interpret(context);
System.out.println(Func.json2Str(interpret));*//*
}
@Test
public void testBuildDrop_dropTable() throws JSQLParserException {
SqlInfoDropModel model = SqlInfoDropModel.builder()
.buildDropTable("","tbl_student");
SQLInterpretContext context = new SQLInterpretContext();
context.setDropModel(model);
BuildDrop build=new BuildDrop();
List<SqlFormatModel> sqlFormatModelList = build.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildDrop_dropColumn() throws JSQLParserException {
SqlInfoDropModel model = SqlInfoDropModel.builder()
.buildDropColumn("","tbl_student","name");
SQLInterpretContext context = new SQLInterpretContext();
context.setDropModel(model);
BuildDrop build=new BuildDrop();
List<SqlFormatModel> sqlFormatModelList = build.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildDrop_dropIndex() throws JSQLParserException {
SqlInfoDropModel model = SqlInfoDropModel.builder()
.buildDropIndex("","tbl_student","ind_name");
SQLInterpretContext context = new SQLInterpretContext();
context.setDropModel(model);
BuildDrop build=new BuildDrop();
List<SqlFormatModel> sqlFormatModelList = build.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildCreate() throws JSQLParserException {
List<FieldModel> buildTableFieldModelList=new ArrayList<>();
FieldModel idModel = new FieldModel();
idModel.setFieldCode("id");
idModel.setFieldName("id");
idModel.setFieldLen(12);
idModel.setFieldPointLen(0);
idModel.setFieldType(JeeLowCodeFieldTypeEnum.BIGINT);
idModel.setIsPrimaryKey("Y");
idModel.setIsNull("N");
FieldModel nameModel = new FieldModel();
nameModel.setFieldCode("name");
nameModel.setFieldName("姓名");
nameModel.setFieldLen(12);
nameModel.setFieldPointLen(0);
nameModel.setFieldType(JeeLowCodeFieldTypeEnum.STRING);
nameModel.setIsPrimaryKey("N");
nameModel.setIsNull("Y");
buildTableFieldModelList.add(idModel);
buildTableFieldModelList.add(nameModel);
SqlInfoCreateModel model = SqlInfoCreateModel.builder()
.setTableName("tbl_student")
.setTableOptions(buildTableFieldModelList)
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setCreateModel(model);
BuildCreateTable build=new BuildCreateTable();
List<SqlFormatModel> sqlFormatModelList = build.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildCreateIndex() throws JSQLParserException {
SqlInfoCreateIndexModel model = SqlInfoCreateIndexModel.builder()
.setTableName("tbl_student")
.setIndexName("ind_aa")
.setIndexFieldCodeList(FuncBase.toStrList("name,age"))
.build();
SQLInterpretContext context = new SQLInterpretContext();
context.setCreateIndexModel(model);
BuildCreateIndex build=new BuildCreateIndex();
List<SqlFormatModel> sqlFormatModelList = build.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildAndUpdateExpression() throws JSQLParserException {
//构建update语句
Map<String,Object> updateMap=new HashMap<>();
updateMap.put("age",18);
updateMap.put("name","张三");
SqlInfoUpdateModel build = SqlInfoUpdateModel.builder()
.setTableName("tbl_student")
.addColumn("id", 123)
.addMap(updateMap)
.build();
SQLInterpretContext context = new SQLInterpretContext();
BuildUpdate buildUpdate=new BuildUpdate();
context.setUpdateModel(build);
//构建where语句
SqlInfoWhereModel whereModel = SqlInfoWhereModel.builder()
.ge("age",18)
.like("name","张三")
.buildWhere();
context.setWhereModel(whereModel);
BuildWhere buildWhere=new BuildWhere();
//update语句+where语句
AndExpression expression=new AndExpression(buildUpdate,buildWhere);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildSelectExpression() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("name", "age")
.setTableName("tbl_student")
.build();
SQLInterpretContext contextSelect = new SQLInterpretContext();
contextSelect.setSelectModel(selectModel);
BuildSelect buildSelect = new BuildSelect();
*//* SqlInfoWhereModel whereOrModel = SqlInfoWhereModel.builder()
.ge("age", 18)
.or()
.le("age",10)
.build();
SQLInterpretContext<SqlInfoWhereModel> contextWhereOr = new SQLInterpretContext<>(whereOrModel);
BuildWhere buildWhereOr=new BuildWhere(contextWhereOr);*//*
*//* SqlInfoWhereModel whereOrModel2 = SqlInfoWhereModel.builder()
.le("age", 182)
.notLike("name", "张三2")
.or(buildWhereOr)
.build();
SQLInterpretContext<SqlInfoWhereModel> contextWhereOr2 = new SQLInterpretContext<>(whereOrModel2);
BuildWhere buildWhereOr2=new BuildWhere(contextWhereOr2);*//*
SqlInfoWhereModel whereAndModel = SqlInfoWhereModel.builder()// 18<x<65
.ge("age", 18)
.le("age",65)
.buildWhere();
SQLInterpretContext contextWhereAnd = new SQLInterpretContext();
contextWhereAnd.setWhereModel(whereAndModel);
BuildWhere buildWhereAnd=new BuildWhere();
buildWhereAnd.setContext(contextWhereAnd);
SqlInfoWhereModel whereModel = SqlInfoWhereModel.builder()
.gt("id", 12)
//.or(buildWhereOr)
//.or(buildWhereOr2)
.eq("na","历史")
.buildWhere();
SQLInterpretContext contextWhere = new SQLInterpretContext();
contextWhere.setWhereModel(whereModel);
BuildWhere buildWhere=new BuildWhere();
buildWhere.setContext(contextWhere);
SqlInfoGroupModel groupByModel = SqlInfoGroupModel.builder()
.setColumns("name", "age")
.build();
SQLInterpretContext contextGroupBy = new SQLInterpretContext();
BuildGroupBy buildGroupBy=new BuildGroupBy();
SqlInfoOrderModel orderByModel = SqlInfoOrderModel.builder()
.setOrderByAsc("age")
.build();
SQLInterpretContext contextOrderBy = new SQLInterpretContext();
BuildOrderBy buildOrderBy=new BuildOrderBy();
SQLInterpretContext context = new SQLInterpretContext();
context.setWhereModel(whereModel);
context.setSelectModel(selectModel);
context.setOrderModel(orderByModel);
context.setGroupModel(groupByModel);
//update语句+where语句
AndExpression expression=new AndExpression(buildWhere,buildSelect,buildOrderBy,buildGroupBy);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildSelectAllExpression() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("name", "age")
.setTableName("tbl_student")
.build();
SQLInterpretContext contextSelect = new SQLInterpretContext();
BuildSelect buildSelect = new BuildSelect();
contextSelect.setSelectModel(selectModel);
//
AndExpression expression=new AndExpression(buildSelect);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(contextSelect);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildHavingExpression() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("name", "count( id ) AS cou")
.setTableName("system_dept")
.build();
BuildSelect buildSelect = new BuildSelect();
SqlInfoHavingModel havingModel = SqlInfoConditionModel.builder()
.gt("cou", 1)
.likeLeft("name", "财务部门")
.buildHaving();
SQLInterpretContext contextHaving = new SQLInterpretContext();
contextHaving.setHavingModel(havingModel);
BuildHaving buildHaving=new BuildHaving();
buildHaving.setContext(contextHaving);
SqlInfoGroupModel groupByModel = SqlInfoGroupModel.builder()
.setColumns("name")
.build();
SQLInterpretContext contextGroupBy = new SQLInterpretContext();
BuildGroupBy buildGroupBy=new BuildGroupBy();
SqlInfoOrderModel orderByModel = SqlInfoOrderModel.builder()
.setOrderByAsc("cou")
.build();
SQLInterpretContext contextOrderBy = new SQLInterpretContext();
BuildOrderBy buildOrderBy=new BuildOrderBy();
SQLInterpretContext context = new SQLInterpretContext();
context.setSelectModel(selectModel);
context.setGroupModel(groupByModel);
context.setOrderModel(orderByModel);
context.setHavingModel(havingModel);
//update语句+where语句
AndExpression expression=new AndExpression(buildGroupBy,buildSelect,buildOrderBy,buildHaving);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testBuildJoinExpression() throws JSQLParserException {
///主表
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("a.*","b.*","c.*")
.setTableName("tbl_a","a")
.build();
SQLInterpretContext contextSelect = new SQLInterpretContext();
BuildSelect buildSelect = new BuildSelect();
//B表
SqlInfoJoinModel joinModelB = SqlInfoJoinModel.builder()
.innerJoin()
.joinTable("tbl_b", "b")
.on("a.id", "b.a_id")
.build();
SQLInterpretContext contextJoinB = new SQLInterpretContext();
BuildJoin buildJsonB = new BuildJoin();
//C表
SqlInfoJoinModel joinModelC = SqlInfoJoinModel.builder()
.innerJoin()
.joinTable("tbl_c", "c")
.on("b.id", "c.b_id")
.build();
SQLInterpretContext contextJoinC = new SQLInterpretContext();
BuildJoin buildJsonC = new BuildJoin();
SQLInterpretContext context = new SQLInterpretContext();
context.setSelectModel(selectModel);
context.setJoinModel(joinModelB);
//update语句+where语句
AndExpression expression=new AndExpression(buildSelect,buildJsonB,buildJsonC);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testHavingAndOrExpression() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("name", "count( id ) AS cou")
.setTableName("system_dept")
.build();
BuildSelect buildSelect = new BuildSelect();
SqlInfoHavingModel havingModel = SqlInfoConditionModel.builder()
.gt("cou", 1)
.likeLeft("name", "财务部门")
.and( andTest ->{
andTest.eq("status", 1)
.or( orTest ->{
orTest.ne("id", 1);
});
})
.buildHaving();
SQLInterpretContext contextHaving = new SQLInterpretContext();
contextHaving.setHavingModel(havingModel);
BuildHaving buildHaving=new BuildHaving();
buildHaving.setContext(contextHaving);
SqlInfoGroupModel groupByModel = SqlInfoGroupModel.builder()
.setColumns("name")
.build();
SQLInterpretContext contextGroupBy = new SQLInterpretContext();
BuildGroupBy buildGroupBy=new BuildGroupBy();
SQLInterpretContext context = new SQLInterpretContext();
context.setSelectModel(selectModel);
context.setGroupModel(groupByModel);
context.setHavingModel(havingModel);
//update语句+where语句
AndExpression expression=new AndExpression(buildGroupBy,buildSelect,buildHaving);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}
@Test
public void testWhereAndOrExpression() throws JSQLParserException {
SqlInfoSelectModel selectModel = SqlInfoSelectModel.builder()
.setColumns("name", "age")
.setTableName("tbl_student")
.build();
SQLInterpretContext contextSelect = new SQLInterpretContext();
contextSelect.setSelectModel(selectModel);
BuildSelect buildSelect = new BuildSelect();
SqlInfoWhereModel whereModel = SqlInfoWhereModel.builder()
.gt("id", 12)
.and(andTest ->{
andTest.eq("name","李四")
.or(orTest ->{
orTest.eq("name", "张三");
});
})
.eq("na","历史")
.buildWhere();
SQLInterpretContext contextWhere = new SQLInterpretContext();
contextWhere.setWhereModel(whereModel);
BuildWhere buildWhere=new BuildWhere();
buildWhere.setContext(contextWhere);
SqlInfoGroupModel groupByModel = SqlInfoGroupModel.builder()
.setColumns("name", "age")
.build();
SQLInterpretContext contextGroupBy = new SQLInterpretContext();
BuildGroupBy buildGroupBy=new BuildGroupBy();
SqlInfoOrderModel orderByModel = SqlInfoOrderModel.builder()
.setOrderByAsc("age")
.build();
SQLInterpretContext contextOrderBy = new SQLInterpretContext();
BuildOrderBy buildOrderBy=new BuildOrderBy();
SQLInterpretContext context = new SQLInterpretContext();
context.setWhereModel(whereModel);
context.setSelectModel(selectModel);
context.setOrderModel(orderByModel);
context.setGroupModel(groupByModel);
AndExpression expression=new AndExpression(buildWhere,buildSelect,buildOrderBy,buildGroupBy);
List<SqlFormatModel> sqlFormatModelList = expression.interpret(context);
System.out.println(FuncBase.json2Str(sqlFormatModelList));
}*/
}

View File

@@ -0,0 +1,94 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoAlterModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.ddl.alter.JeeLowCodeAlterTable;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.enums.JeeLowCodeFieldTypeEnum;
import com.jeelowcode.framework.utils.tool.StringPool;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
/**
* 修改表相关
*/
public class BuildAlter implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
SqlInfoAlterModel alterModel = context.getAlterModel();
if(FuncBase.isEmpty(alterModel)){
return null;
}
//存在自定义ddl
List<String> executeDdlList = alterModel.getExecuteDdlList();
if(FuncBase.isNotEmpty(executeDdlList)){
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
String ddl="";
switch (alterModel.getAlterType()) {
case ADD_COLUMN:
ddl = getAddColumnDDL(context.getSchemaName(),alterModel.getTableName(),alterModel.getFieldModel(),dbColunmTypes);
break;
case UPDATE_COLUMN:
ddl = getModifyColumnDDL(context.getSchemaName(),alterModel.getTableName(),alterModel.getFieldModel(),dbColunmTypes);
break;
}
return PlusUtils.ddl2SqlFormatModel(ddl);
}
//获取增加字段ddl
private String getAddColumnDDL(String schemaName,String tableName, FieldModel fieldModel, DbColunmTypesEntity dbColunmTypes) {
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
tableName= FuncBase.concatSymbol(tableName,symbol,upperFlag);
schemaName= FuncBase.concatSymbol(schemaName,symbol);
JeeLowCodeFieldTypeEnum fieldTypeEnum = fieldModel.getFieldType();
DbColunmTypesEntity.TypeEntity typeEntity = PlusUtils.jeelowCodeType2DbType(fieldTypeEnum, dbColunmTypes);
String fieldType = PlusUtils.getDbType(fieldTypeEnum, typeEntity.getDbType(), fieldModel.getFieldLen(), fieldModel.getFieldPointLen(),typeEntity.getDbMaxLen());
String defaultValSql = PlusUtils.getDefaultValSql(fieldModel.getFieldDefaultVal(), fieldModel.getIsNull(),fieldModel.getDbNowIsNull());
String fieldCode = FuncBase.concatSymbol(fieldModel.getFieldCode(),symbol,upperFlag);
JeeLowCodeAlterTable alterTable = new JeeLowCodeAlterTable();
alterTable.setTableName(schemaName+ StringPool.DOT+tableName);
alterTable.addCoulumn(fieldCode, fieldType, defaultValSql);
String ddl = alterTable.getFullSQL();
return ddl;
}
//修改字段
private String getModifyColumnDDL(String schemaName,String tableName, FieldModel fieldModel, DbColunmTypesEntity dbColunmTypes) {
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
tableName=FuncBase.concatSymbol(tableName,symbol,upperFlag);
schemaName= FuncBase.concatSymbol(schemaName,symbol);
JeeLowCodeFieldTypeEnum fieldTypeEnum = fieldModel.getFieldType();
DbColunmTypesEntity.TypeEntity typeEntity = PlusUtils.jeelowCodeType2DbType(fieldTypeEnum, dbColunmTypes);
String fieldType = PlusUtils.getDbType(fieldTypeEnum, typeEntity.getDbType(), fieldModel.getFieldLen(), fieldModel.getFieldPointLen(),typeEntity.getDbMaxLen());
String defaultValSql = PlusUtils.getDefaultValSql(fieldModel.getFieldDefaultVal(), fieldModel.getIsNull(),fieldModel.getDbNowIsNull());
String fieldCode = fieldModel.getFieldCode();
JeeLowCodeAlterTable alterTable = new JeeLowCodeAlterTable();
alterTable.setTableName(schemaName+ StringPool.DOT+tableName);
alterTable.modifyColumn(FuncBase.concatSymbol(fieldCode,symbol,upperFlag), fieldType, defaultValSql);
return alterTable.getFullSQL();
}
}

View File

@@ -0,0 +1,95 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoCommentModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.ArrayList;
import java.util.List;
/**
* 备注 相关
*/
public class BuildComment implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoCommentModel commentModel = context.getCommentModel();
if (FuncBase.isEmpty(commentModel)) {
return null;
}
//存在自定义ddl
List<String> executeDdlList = commentModel.getExecuteDdlList();
if (FuncBase.isNotEmpty(executeDdlList)) {
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
String schemaName = FuncBase.concatSymbol(context.getSchemaName(), symbol);
String tableName = FuncBase.concatSymbol(commentModel.getTableName(), symbol, upperFlag);
String tableAlias = commentModel.getTableAlias();
List<FieldModel> fieldModelList = commentModel.getFieldModelList();
List<String> ddlList = new ArrayList<>();
String tableDdl = this.tableComment(schemaName, tableName, tableAlias);
if (FuncBase.isNotEmpty(tableDdl)) {
ddlList.add(tableDdl);
}
List<String> columnDdlList = this.columnComment(dbColunmTypes, schemaName, tableName, fieldModelList);
if (FuncBase.isNotEmpty(columnDdlList)) {
ddlList.addAll(columnDdlList);
}
return PlusUtils.ddl2SqlFormatModel(ddlList);
}
/**
* 表备注
*
* @return
*/
private String tableComment(String schemaName, String tableName, String tableAlias) {
if (FuncBase.isEmpty(tableAlias)) {
return null;
}
String str = "COMMENT ON TABLE %s.%s IS '%s';";
String ddl = String.format(str, schemaName, tableName, tableAlias);
return ddl;
}
private List<String> columnComment(DbColunmTypesEntity dbColunmTypes, String schemaName, String tableName, List<FieldModel> fieldModelList) {
if (FuncBase.isEmpty(fieldModelList)) {
return null;
}
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
List<String> ddlList = new ArrayList<>();
for (FieldModel fieldModel : fieldModelList) {
String fieldCode = FuncBase.concatSymbol(fieldModel.getFieldCode(), symbol, upperFlag);
String fieldName = fieldModel.getFieldName();
String str = "COMMENT ON COLUMN %s.%s.%s IS '%s';";
String ddl = String.format(str, schemaName, tableName, fieldCode, fieldName);
ddlList.add(ddl);
}
return ddlList;
}
}

View File

@@ -0,0 +1,63 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoCreateIndexModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
import java.util.stream.Collectors;
/***
* 索引相关
*/
public class BuildCreateIndex implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoCreateIndexModel model = context.getCreateIndexModel();
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
if(FuncBase.isEmpty(model)){
return null;
}
//存在自定义ddl
List<String> executeDdlList = model.getExecuteDdlList();
if(FuncBase.isNotEmpty(executeDdlList)){
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
String tableName = FuncBase.concatSymbol(model.getTableName(),symbol,upperFlag);
String indexName = FuncBase.concatSymbol(model.getIndexName(),symbol,upperFlag);
String indexType = model.getIndexType();
String schemaName = FuncBase.concatSymbol(context.getSchemaName(),symbol);
List<String> indexFieldCodeList = model.getIndexFieldCodeList();
List<String> list = indexFieldCodeList.stream()
.map(key -> FuncBase.concatSymbol( key , symbol,upperFlag))
.collect(Collectors.toList());
String str = "CREATE INDEX %s ON %s.%s (%s)";
if(FuncBase.isNotEmpty(indexType) && "UNIQUE".equals(indexType.toUpperCase())){//唯一
str = "CREATE UNIQUE INDEX %s ON %s.%s (%s)";
}
String ddl = String.format(str, indexName, schemaName,tableName, String.join(",", list));
return PlusUtils.ddl2SqlFormatModel(ddl);
}
}

View File

@@ -0,0 +1,81 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoCreateModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.ddl.create.JeeLowCodeCreateTable;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.enums.JeeLowCodeFieldTypeEnum;
import com.jeelowcode.framework.utils.tool.StringPool;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
/**
* 建表相关
*/
public class BuildCreateTable implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
SqlInfoCreateModel creteModel = context.getCreateModel();
if(FuncBase.isEmpty(creteModel)){
return null;
}
//存在自定义ddl
List<String> executeDdlList = creteModel.getExecuteDdlList();
if(FuncBase.isNotEmpty(executeDdlList)){
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
String tableName = creteModel.getTableName();
String schemaName = context.getSchemaName();
List<FieldModel> tableOptions = creteModel.getTableOptions();
String ddl = this.getDDL(schemaName,tableName, tableOptions, dbColunmTypes);
return PlusUtils.ddl2SqlFormatModel(ddl);
}
/**
* 获取ddl
*
* @param tableName
* @param tableOptions
* @param dbColunmTypes
* @return
*/
public String getDDL(String schemaName,String tableName, List<FieldModel> tableOptions, DbColunmTypesEntity dbColunmTypes) {
Boolean upperFlag = dbColunmTypes.getUpperFlag();
String symbol = dbColunmTypes.getSymbol();
JeeLowCodeCreateTable createTable = new JeeLowCodeCreateTable();
tableName=FuncBase.concatSymbol(tableName,symbol,upperFlag);
schemaName=FuncBase.concatSymbol(schemaName,symbol);
for (int i = 0; i < tableOptions.size(); i++) {
FieldModel fieldModel = tableOptions.get(i);
String fieldCode = FuncBase.concatSymbol(fieldModel.getFieldCode(),symbol,upperFlag);
JeeLowCodeFieldTypeEnum fieldTypeEnum = fieldModel.getFieldType();
//类型
DbColunmTypesEntity.TypeEntity typeEntity = PlusUtils.jeelowCodeType2DbType(fieldTypeEnum, dbColunmTypes);
Integer dbMaxLen = typeEntity.getDbMaxLen();
if(dbMaxLen < fieldModel.getFieldLen()){
fieldModel.setFieldLen(dbMaxLen);
}
String fieldType = PlusUtils.getDbType(fieldTypeEnum, typeEntity.getDbType(), fieldModel.getFieldLen(), fieldModel.getFieldPointLen(),typeEntity.getDbMaxLen());
String defaultValSql = PlusUtils.getDefaultValSql(fieldModel.getFieldDefaultVal(), fieldModel.getIsNull(),null);
createTable.addCoulumn(fieldCode, fieldType, defaultValSql);
}
createTable.setTableName(schemaName+ StringPool.DOT+tableName);//表名称
String ddl = createTable.getDDL();
return ddl;
}
}

View File

@@ -0,0 +1,35 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoDdlModel;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
/**
* 通用DDL
*/
public class BuildDdl implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoDdlModel ddlModel = context.getDdlModel();
if (FuncBase.isEmpty(ddlModel)) {
return null;
}
//存在自定义ddl
List<String> executeDdlList = ddlModel.getExecuteDdlList();
if (FuncBase.isEmpty(executeDdlList)) {
return null;
}
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
}

View File

@@ -0,0 +1,104 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoDropModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.ddl.alter.JeeLowCodeAlterTable;
import com.jeelowcode.framework.plus.core.ddl.drop.JeeLowCodeDropTable;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.tool.StringPool;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
/**
* 删除表,字段,索引
*/
public class BuildDrop implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoDropModel dropModel = context.getDropModel();
if (FuncBase.isEmpty(dropModel)) {
return null;
}
//存在自定义ddl
List<String> executeDdlList = dropModel.getExecuteDdlList();
if(FuncBase.isNotEmpty(executeDdlList)){
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
String tableName = FuncBase.concatSymbol(dropModel.getTableName(), symbol, upperFlag);
String indexName = FuncBase.concatSymbol(dropModel.getIndexName(), symbol, upperFlag);
String cloumnCode = FuncBase.concatSymbol(dropModel.getCloumnCode(), symbol, upperFlag);
String schemaName = FuncBase.concatSymbol(context.getSchemaName(), symbol);
String ddl = "";
switch (dropModel.getDropType()) {
case DROP_TABLE:
ddl = this.dropTable(schemaName, tableName);
break;
case DROP_COLUMN:
ddl = this.dropColumn(schemaName, tableName, cloumnCode,dropModel.getCloumnFormat());
break;
case DROP_INDEX:
ddl = this.dropIndex(schemaName, indexName);
break;
}
return PlusUtils.ddl2SqlFormatModel(ddl);
}
/**
* 删除表
*
* @param schemaName
* @param tableName
* @return
*/
private String dropTable(String schemaName, String tableName) {
JeeLowCodeDropTable dropTable = new JeeLowCodeDropTable();
dropTable.setTableName(schemaName + StringPool.DOT + tableName);
return dropTable.getFullSQL();
}
/**
* 删除字段
*
* @param schemaName
* @param tableName
* @param cloumnCode
* @return
*/
private String dropColumn(String schemaName, String tableName, String cloumnCode,String cloumnFormat) {
if(FuncBase.isNotEmpty(cloumnFormat)){
cloumnCode =String.format(cloumnFormat,cloumnCode);
}
JeeLowCodeAlterTable dropColumn = new JeeLowCodeAlterTable();
dropColumn.setTableName(schemaName + StringPool.DOT + tableName);
dropColumn.dropColumn(cloumnCode);
return dropColumn.getFullSQL();
}
/**
* 删除索引
* @param schemaName
* @param indexName
* @return
*/
private String dropIndex(String schemaName, String indexName) {
String str = "DROP INDEX %s.%s";
String ddl = String.format(str, schemaName, indexName);
return ddl;
}
}

View File

@@ -0,0 +1,56 @@
package com.jeelowcode.framework.plus.build.build.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.SqlInfoPrimaryKeyModel;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.utils.PlusUtils;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
import java.util.List;
import java.util.stream.Collectors;
/**
* 主键相关
*/
public class BuildPrimaryKey implements ISQLExpression<List<SqlFormatModel>> {
@Override
public List<SqlFormatModel> interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoPrimaryKeyModel primaryKeyModel = context.getPrimaryKeyModel();
if (FuncBase.isEmpty(primaryKeyModel)) {
return null;
}
//存在自定义ddl
List<String> executeDdlList = primaryKeyModel.getExecuteDdlList();
if(FuncBase.isNotEmpty(executeDdlList)){
return PlusUtils.ddl2SqlFormatModel(executeDdlList);
}
DbColunmTypesEntity dbColunmTypes = context.getDbColunmTypes();
String symbol = dbColunmTypes.getSymbol();
Boolean upperFlag = dbColunmTypes.getUpperFlag();
String tableName = FuncBase.concatSymbol(primaryKeyModel.getTableName(),symbol,upperFlag);
String schemaName = FuncBase.concatSymbol(context.getSchemaName(),symbol);
List<String> tmpkeyList = primaryKeyModel.getKeyList();
if(FuncBase.isEmpty(tmpkeyList)){
return null;
}
List<String> keyList = tmpkeyList.stream()
.map(key -> FuncBase.concatSymbol( key , symbol,upperFlag))
.collect(Collectors.toList());
String str="ALTER TABLE %s.%s ADD PRIMARY KEY(%s)";
String ddl = String.format(str,schemaName,tableName,String.join(",",keyList));
return PlusUtils.ddl2SqlFormatModel(ddl);
}
}

View File

@@ -0,0 +1,345 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.buildmodel.ExpressionModel;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoConditionModel;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoHavingModel;
import com.jeelowcode.framework.plus.core.dql.select.JeeLowCodeQueryWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
/**
* @author JX
* @create 2024-07-29 16:00
* @dedescription:
*/
public class BuildCondition {
public JeeLowCodeQueryWrapper<Object> wrapper = new JeeLowCodeQueryWrapper();
public SQLInterpretContext context;
public SqlFormatModel context2Condition(SqlInfoConditionModel conditionModel){
List<ExpressionModel> expressions =conditionModel.getExpressions();
expressions.forEach(expressionModel -> {
SqlInfoConditionModel.WhereType whereType = expressionModel.getWhereType();
String column = expressionModel.getColumn();
Object[] value = expressionModel.getValue();
switch (whereType) {
case GT://>
gt(column, value);
break;
case GE://>=
ge(column, value);
break;
case NE:// !=
ne(column, value);
break;
case EQ:// =
eq(column, value);
break;
case LT://<
lt(column, value);
break;
case LE://<=
le(column, value);
break;
case BETWEEN:
between(column, value);
break;
case NOT_BETWEEN:
notbetween(column, value);
break;
case IN:
in(column, value);
break;
case NOT_IN:
notIn(column, value);
break;
case LIKE:
like(column, value);
break;
case NOT_LIKE:
notLike(column, value);
break;
case LIKE_LEFT:
likeLeft(column, value);
break;
case NOT_LIKE_LEFT:
notLikeLeft(column, value);
break;
case LIKE_RIGHT:
likeRight(column, value);
break;
case NOT_LIKE_RIGHT:
notLikeRight(column, value);
break;
case IS_NULL:
isNull(column);
break;
case IS_NOT_NULL:
isNotNull(column);
break;
case OR:
or();
break;
case OR_BUILD:
orBuild((Consumer<SqlInfoConditionModel.Builder>) value[0]);
break;
case AND_BUILD:
andBuild((Consumer<SqlInfoConditionModel.Builder>) value[0]);
break;
case APPLY:
apply(column);
break;
}
});
String sqlStr = "";
if(conditionModel instanceof SqlInfoHavingModel){
sqlStr=wrapper.getHavingCustomSqlSegment();
}else{
sqlStr=wrapper.getCustomSqlSegment();
}
Map<String, Object> paramNameValuePairs = wrapper.getParamNameValuePairs();
SqlFormatModel sqlFormatModel = new SqlFormatModel(sqlStr, paramNameValuePairs);
return sqlFormatModel;
}
public void gt(String column, Object[] value) {
wrapper.gt(column, value[0]);
return;
}
public void ge(String column, Object[] value) {
wrapper.ge(column, value[0]);
return;
}
public void ne(String column, Object[] value) {
wrapper.ne(column, value[0]);
return;
}
public void eq(String column, Object[] value) {
wrapper.eq(column, value[0]);
return;
}
public void between(String column, Object[] value) {
Object value1=value[0];
Object value2=value[1];
wrapper.between(column, value1, value2);
return;
}
public void notbetween(String column,Object[] value) {
Object value1=value[0];
Object value2=value[1];
wrapper.notBetween(column, value1, value2);
return;
}
public void in(String column, Object[] value) {
if(value.length>1){
wrapper.in(column, value);
return;
}
Object obj = value[0];
if(obj instanceof List){
List<Object> objList=(List)value[0];
wrapper.in(column, objList);
}else{
wrapper.in(column, obj);
}
return;
}
public void notIn(String column, Object[] value) {
if(value.length>1){
wrapper.notIn(column, value);
return;
}
Object obj = value[0];
if(obj instanceof List){
List<Object> objList=(List)value[0];
wrapper.notIn(column, objList);
}else{
wrapper.notIn(column, obj);
}
return;
}
public void like(String column, Object[] value) {
wrapper.like(column, value[0]);
return;
}
public void notLike(String column, Object[] value) {
wrapper.notLike(column, value[0]);
return;
}
public void likeLeft(String column, Object[] value) {
wrapper.likeLeft(column, value[0]);
return;
}
public void notLikeLeft(String column, Object[] value) {
wrapper.notLikeLeft(column, value[0]);
return;
}
public void likeRight(String column, Object[] value) {
wrapper.likeRight(column, value[0]);
return;
}
public void notLikeRight(String column, Object[] value) {
wrapper.notLikeRight(column, value[0]);
return;
}
public void lt(String column, Object[] value) {
wrapper.lt(column, value[0]);
return;
}
public void le(String column, Object[] value) {
wrapper.le(column, value[0]);
return;
}
public void isNull(String column) {
wrapper.isNull(column);
return;
}
public void isNotNull(String column) {
wrapper.isNotNull(column);
return;
}
public void apply(String column) {
wrapper.apply(column);
return;
}
public void or() {
wrapper.or();
return;
}
public void orBuild(Consumer<SqlInfoConditionModel.Builder> condition) {
try{
SqlInfoConditionModel.Builder builder = new SqlInfoConditionModel.Builder();
condition.accept(builder);
SqlInfoConditionModel<BuildCondition> build = builder.build();
BuildCondition buildCondition = new BuildCondition();
SqlFormatModel sqlFormatModel = buildCondition.context2Condition(build);
String tmpSql = sqlFormatModel.getSql();
tmpSql=tmpSql.substring(6);
Map<String, Object> tmpMap = sqlFormatModel.getDataMap();
if (FuncBase.isEmpty(tmpMap)) {//没有参数的情况下
String newSql=String.format("( 1!=1 OR %s) ",tmpSql);
wrapper.apply(newSql);
return;
}
//存在参数的情况下
List<Map.Entry<String, Object>> entrieList = new ArrayList<>(tmpMap.entrySet());
Collections.reverse(entrieList);
int step=0;
Object[] objects=new Object[entrieList.size()];
// 然后,从列表的末尾开始遍历
for (Map.Entry<String, Object> entry : entrieList) {
String key = entry.getKey(); // 获取键
Object value = entry.getValue(); // 获取值
// 执行你的替换逻辑
tmpSql = tmpSql.replace("#{"+ FuncBase.PARAM_NAME_VALUE_PAIRS+"." + key + "}", "{"+step+"}");
objects[step]=value;
step++;
}
String newSql=String.format(" ( 1!=1 OR %s) ",tmpSql);//1!=1 兼容语法
wrapper.apply(newSql,objects);
}catch (Exception e){
}
return;
}
public void andBuild(Consumer<SqlInfoConditionModel.Builder> condition) {
try{
SqlInfoConditionModel.Builder builder = new SqlInfoConditionModel.Builder();
condition.accept(builder);
SqlInfoConditionModel<BuildCondition> build = builder.build();
BuildCondition buildCondition = new BuildCondition();
SqlFormatModel sqlFormatModel = buildCondition.context2Condition(build);
String tmpSql = sqlFormatModel.getSql();
tmpSql=tmpSql.substring(6);
Map<String, Object> tmpMap = sqlFormatModel.getDataMap();
if (FuncBase.isEmpty(tmpMap)) {//没有参数的情况下
String newSql=String.format("(%s) ",tmpSql);
wrapper.apply(newSql);
return;
}
//存在参数的情况下
List<Map.Entry<String, Object>> entrieList = new ArrayList<>(tmpMap.entrySet());
Collections.reverse(entrieList);
int step=0;
Object[] objects=new Object[entrieList.size()];
// 然后,从列表的末尾开始遍历
for (Map.Entry<String, Object> entry : entrieList) {
String key = entry.getKey(); // 获取键
Object value = entry.getValue(); // 获取值
// 执行你的替换逻辑
tmpSql = tmpSql.replace("#{"+ FuncBase.PARAM_NAME_VALUE_PAIRS+"." + key + "}", "{"+step+"}");
objects[step]=value;
step++;
}
String newSql=String.format(" (%s) ",tmpSql);
wrapper.apply(newSql,objects);
}catch (Exception e){
}
return;
}
public JeeLowCodeQueryWrapper<Object> getWrapper() {
return wrapper;
}
public void setWrapper(JeeLowCodeQueryWrapper<Object> wrapper) {
this.wrapper = wrapper;
}
public SQLInterpretContext getContext() {
return this.context;
}
public void setContext(SQLInterpretContext context) {
this.context = context;
}
}

View File

@@ -0,0 +1,52 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoDeleteModel;
import com.jeelowcode.framework.plus.core.dql.update.JeeLowCodeUpdateWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import java.util.Map;
/**
* 构建 删除 语句
*/
public class BuildDelete implements ISQLExpression<SqlFormatModel> {
public SqlFormatModel interpret(SQLInterpretContext context){
SqlInfoDeleteModel sqlInfo = context.getDeleteModel();
String tableName = sqlInfo.getTableName();
Boolean isReal = sqlInfo.getReal();
SqlFormatModel sqlFormatModel;
if (isReal){//真实删除
String sql = "Delete from " + tableName;
sqlFormatModel = new SqlFormatModel(sql);
}else {//逻辑删除
JeeLowCodeUpdateWrapper updateWrapper = new JeeLowCodeUpdateWrapper<>();
updateWrapper.set("is_deleted",-1);
String sqlSet = updateWrapper.getSqlSet();
Map<String,Object> paramNameValuePairs = updateWrapper.getParamNameValuePairs();
//处理null值
for (Map.Entry<String,Object> entry : paramNameValuePairs.entrySet()) {
Object value = entry.getValue();
if(FuncBase.isEmpty(value)){
entry.setValue(null);
}
}
String sql = "update " + tableName + " set " + sqlSet ;
sqlFormatModel = new SqlFormatModel(sql, paramNameValuePairs);
}
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,35 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoGroupModel;
import com.jeelowcode.framework.plus.core.dql.select.JeeLowCodeQueryWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
import java.util.Arrays;
/**
* group by
*/
public class BuildGroupBy implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoGroupModel sqlInfo = context.getGroupModel();
String[] columns = sqlInfo.getColumns();
JeeLowCodeQueryWrapper wrapper=new JeeLowCodeQueryWrapper();
wrapper.groupBy(Arrays.asList(columns));
String groupByStr = wrapper.getCustomSqlSegment();
return new SqlFormatModel(groupByStr);
}
}

View File

@@ -0,0 +1,27 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoHavingModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
/**
* having 相关
*/
public class BuildHaving extends BuildCondition implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoHavingModel havingModel = context.getHavingModel();
SqlFormatModel sqlFormatModel = super.context2Condition(havingModel);
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,70 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoInsertModel;
import com.jeelowcode.framework.plus.core.dql.insert.JeeLowCodeInsertWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 构建 insert 语句
*/
public class BuildInsert implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context){
SqlInfoInsertModel sqlInfo = context.getInsertModel();
String tableName = sqlInfo.getTableName();
Map<String, Object> insertMap = sqlInfo.getInsertMap();
JeeLowCodeInsertWrapper insertWrapper = new JeeLowCodeInsertWrapper<>();
for (Map.Entry<String, Object> entry : insertMap.entrySet()) {
insertWrapper.set(entry.getKey(),entry.getValue());
}
//封装
String sqlSet = insertWrapper.getSqlSet();
String customSqlSegment = insertWrapper.getCustomSqlSegment();
Map<String, Object> paramNameValuePairs = insertWrapper.getParamNameValuePairs();
for (Map.Entry<String,Object> entry : paramNameValuePairs.entrySet()) {
Object value = entry.getValue();
if(FuncBase.isEmpty(value)){
entry.setValue(null);
}
}
List<String> fieldList=new ArrayList<>();
List<String> valueList=new ArrayList<>();
List<String> setList = FuncBase.toStrList(sqlSet);
for(String set:setList){
String[] split = set.split("=");
String field=split[0];
String value=split[1];
fieldList.add(field);
if(!insertMap.containsKey(field)){//不存在,指定jdbc类型不然oracle报错
value=value.substring(0,value.length()-1)+",jdbcType=VARCHAR}";
}else if(FuncBase.isEmpty(insertMap.get(field))){//为空,指定jdbc类型不然oracle报错
value=value.substring(0,value.length()-1)+",jdbcType=VARCHAR}";
}
valueList.add(value);
}
String sql = "insert into " + tableName + "(%s) VALUE(%s) ";
String finalSql = String.format(sql, String.join(",", fieldList), String.join(",", valueList));
SqlFormatModel sqlFormatModel = new SqlFormatModel(finalSql,paramNameValuePairs);
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,44 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoJoinModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
/**
* left join ,inner join ,right join相关
*/
public class BuildJoin implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoJoinModel model = context.getJoinModel();
SqlInfoJoinModel.JoinType joinType = model.getJoinType();
String onStr = model.getOnStr();
String tableName = model.getTableName();
String joinSymbolStr="";
switch (joinType) {
case LEFT_JOIN:
joinSymbolStr = "LEFT JOIN";
break;
case RIGHT_JOIN:
joinSymbolStr = "RIGHT JOIN";
break;
case INNER_JOIN:
joinSymbolStr = "INNER JOIN";
break;
}
String sql= joinSymbolStr+" "+tableName+" on "+onStr;
SqlFormatModel sqlFormatModel = new SqlFormatModel(sql);
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,40 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoOrderModel;
import com.jeelowcode.framework.plus.core.dql.select.JeeLowCodeQueryWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
import java.util.*;
/**
* 排序
*/
public class BuildOrderBy implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
JeeLowCodeQueryWrapper wrapper=new JeeLowCodeQueryWrapper();
SqlInfoOrderModel sqlInfoOrderModel = context.getOrderModel();
List<SqlInfoOrderModel.OrderByModel> orderModels = sqlInfoOrderModel.getOrderByList();
orderModels.forEach(orderModel -> {
String[] columns = orderModel.getColumns();//列
boolean isAsc = orderModel.isAsc();
wrapper.orderBy(true,isAsc, Arrays.asList(columns));
});
String orderByStr = wrapper.getCustomSqlSegment();
return new SqlFormatModel(orderByStr);
}
}

View File

@@ -0,0 +1,27 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoPublicModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
/**
* 通用sql
*/
public class BuildPublicSql implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoPublicModel sqlInfo = context.getPublicModel();
String sql = sqlInfo.getSql();//获取原有的sql
return new SqlFormatModel(sql);
}
}

View File

@@ -0,0 +1,42 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoSelectModel;
import com.jeelowcode.framework.plus.core.dql.select.JeeLowCodeQueryWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import net.sf.jsqlparser.JSQLParserException;
/**
* 查询相关
*/
public class BuildSelect implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoSelectModel sqlInfo = context.getSelectModel();
String[] columns = sqlInfo.getColumns();//查询列
String tableName = sqlInfo.getTableName();//查询表
if(FuncBase.isEmpty(columns)){
columns = new String[]{"*"};
}
JeeLowCodeQueryWrapper wrapper=new JeeLowCodeQueryWrapper();
wrapper.select(columns);
String sqlSelect = wrapper.getSqlSelect();
String sql = "select " + sqlSelect + " from " + tableName;
return new SqlFormatModel(sql);
}
}

View File

@@ -0,0 +1,70 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoUpdateModel;
import com.jeelowcode.framework.plus.core.dql.update.JeeLowCodeUpdateWrapper;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import java.util.*;
/**
* 构建 update 语句
*/
public class BuildUpdate implements ISQLExpression<SqlFormatModel> {
@Override
public SqlFormatModel interpret(SQLInterpretContext context){
SqlInfoUpdateModel sqlInfo = context.getUpdateModel();
String tableName = sqlInfo.getTableName();
JeeLowCodeUpdateWrapper updateWrapper = new JeeLowCodeUpdateWrapper(tableName);
Map<String, Object> updateMap = sqlInfo.getUpdateMap();
updateMap.forEach((k,v)->{
updateWrapper.set(k,v);
});
String sqlSet = updateWrapper.getSqlSet();
Map<String,Object> paramNameValuePairs = updateWrapper.getParamNameValuePairs();
String newSqlSet="";
List<String> setList = FuncBase.toStrList(sqlSet);
for(String set:setList){
String[] split = set.split("=");
String field=split[0];
String value=split[1];
if(!updateMap.containsKey(field)){//不存在,指定jdbc类型不然oracle报错
value=value.substring(0,value.length()-1)+",jdbcType=VARCHAR}";
}else if(FuncBase.isEmpty(updateMap.get(field))){//为空,指定jdbc类型不然oracle报错
value=value.substring(0,value.length()-1)+",jdbcType=VARCHAR}";
}
if(FuncBase.isEmpty(newSqlSet)){
newSqlSet=field+"="+value;
}else{
newSqlSet+=","+field+"="+value;
}
}
//处理null值
for (Map.Entry<String,Object> entry : paramNameValuePairs.entrySet()) {
Object value = entry.getValue();
if(FuncBase.isEmpty(value)){
entry.setValue(null);
}
}
String sql = "update " + tableName + " set " + newSqlSet ;
SqlFormatModel sqlFormatModel = new SqlFormatModel(sql, paramNameValuePairs);
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,34 @@
package com.jeelowcode.framework.plus.build.build.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.buildmodel.SQLInterpretContext;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoWhereModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import net.sf.jsqlparser.JSQLParserException;
/**
* 构建where语句相关
*/
public class BuildWhere extends BuildCondition implements ISQLExpression<SqlFormatModel> {
public BuildWhere() {
}
public BuildWhere(SQLInterpretContext context){
super.context = context;
}
@Override
public SqlFormatModel interpret(SQLInterpretContext context) throws JSQLParserException {
SqlInfoWhereModel whereModel = context.getWhereModel();
SqlFormatModel sqlFormatModel = super.context2Condition(whereModel);
return sqlFormatModel;
}
}

View File

@@ -0,0 +1,35 @@
package com.jeelowcode.framework.plus.build.buildmodel;
import com.jeelowcode.framework.plus.build.buildmodel.dql.SqlInfoConditionModel;
public class ExpressionModel {
private SqlInfoConditionModel.WhereType whereType;
private String column;
private Object[] value;
public SqlInfoConditionModel.WhereType getWhereType() {
return whereType;
}
public void setWhereType(SqlInfoConditionModel.WhereType whereType) {
this.whereType = whereType;
}
public String getColumn() {
return column;
}
public void setColumn(String column) {
this.column = column;
}
public Object[] getValue() {
return value;
}
public void setValue(Object[] value) {
this.value = value;
}
}

View File

@@ -0,0 +1,245 @@
package com.jeelowcode.framework.plus.build.buildmodel;
import com.jeelowcode.framework.plus.build.buildmodel.dql.*;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.*;
import com.jeelowcode.framework.plus.build.buildmodel.ddl.*;
import com.jeelowcode.framework.plus.entity.DbColunmTypesEntity;
import com.jeelowcode.framework.plus.build.buildmodel.dql.*;
/**
* @author JX
* @create 2024-07-23 9:07
* @dedescription:
*/
public class SQLInterpretContext {
private String preSymbol="ew.";
private String schemaName;
private Boolean tenantIgnore;
private SqlInfoInsertModel insertModel;
private SqlInfoDeleteModel deleteModel;
private SqlInfoAlterModel alterModel;
private SqlInfoSelectModel selectModel;
private SqlInfoCreateModel createModel;
private SqlInfoCreateIndexModel createIndexModel;
private SqlInfoUpdateModel updateModel;
private SqlInfoDropModel dropModel;
private SqlInfoWhereModel whereModel;
private SqlInfoOrderModel orderModel;
private SqlInfoGroupModel groupModel;
private SqlInfoHavingModel havingModel;
private SqlInfoJoinModel joinModel;
private ExpressionModel expressionModel;
private DbColunmTypesEntity dbColunmTypes;
private SqlInfoCommentModel commentModel;
private SqlInfoPrimaryKeyModel primaryKeyModel;
private SqlInfoDdlModel ddlModel;
private SqlInfoPublicModel publicModel;
public SQLInterpretContext(String schemaName) {
this.schemaName = schemaName;
}
///===========================================================================
public String getSchemaName() {
return schemaName;
}
public void setSchemaName(String schemaName) {
this.schemaName = schemaName;
}
public SqlInfoInsertModel getInsertModel() {
return insertModel;
}
public void setInsertModel(SqlInfoInsertModel insertModel) {
this.insertModel = insertModel;
}
public SqlInfoDeleteModel getDeleteModel() {
return deleteModel;
}
public void setDeleteModel(SqlInfoDeleteModel deleteModel) {
this.deleteModel = deleteModel;
}
public SqlInfoAlterModel getAlterModel() {
return alterModel;
}
public void setAlterModel(SqlInfoAlterModel alterModel) {
this.alterModel = alterModel;
}
public SqlInfoSelectModel getSelectModel() {
return selectModel;
}
public void setSelectModel(SqlInfoSelectModel selectModel) {
this.selectModel = selectModel;
}
public SqlInfoCreateModel getCreateModel() {
return createModel;
}
public void setCreateModel(SqlInfoCreateModel createModel) {
this.createModel = createModel;
}
public SqlInfoCreateIndexModel getCreateIndexModel() {
return createIndexModel;
}
public void setCreateIndexModel(SqlInfoCreateIndexModel createIndexModel) {
this.createIndexModel = createIndexModel;
}
public SqlInfoUpdateModel getUpdateModel() {
return updateModel;
}
public void setUpdateModel(SqlInfoUpdateModel updateModel) {
this.updateModel = updateModel;
}
public SqlInfoDropModel getDropModel() {
return dropModel;
}
public void setDropModel(SqlInfoDropModel dropModel) {
this.dropModel = dropModel;
}
public SqlInfoWhereModel getWhereModel() {
return whereModel;
}
public void setWhereModel(SqlInfoWhereModel whereModel) {
this.whereModel = whereModel;
}
public SqlInfoOrderModel getOrderModel() {
return orderModel;
}
public void setOrderModel(SqlInfoOrderModel orderModel) {
this.orderModel = orderModel;
}
public SqlInfoGroupModel getGroupModel() {
return groupModel;
}
public void setGroupModel(SqlInfoGroupModel groupModel) {
this.groupModel = groupModel;
}
public SqlInfoHavingModel getHavingModel() {
return havingModel;
}
public void setHavingModel(SqlInfoHavingModel havingModel) {
this.havingModel = havingModel;
}
public SqlInfoJoinModel getJoinModel() {
return joinModel;
}
public void setJoinModel(SqlInfoJoinModel joinModel) {
this.joinModel = joinModel;
}
public ExpressionModel getExpressionModel() {
return expressionModel;
}
public void setExpressionModel(ExpressionModel expressionModel) {
this.expressionModel = expressionModel;
}
public DbColunmTypesEntity getDbColunmTypes() {
return dbColunmTypes;
}
public void setDbColunmTypes(DbColunmTypesEntity dbColunmTypes) {
this.dbColunmTypes = dbColunmTypes;
}
public SqlInfoCommentModel getCommentModel() {
return commentModel;
}
public void setCommentModel(SqlInfoCommentModel commentModel) {
this.commentModel = commentModel;
}
public SqlInfoPrimaryKeyModel getPrimaryKeyModel() {
return primaryKeyModel;
}
public void setPrimaryKeyModel(SqlInfoPrimaryKeyModel primaryKeyModel) {
this.primaryKeyModel = primaryKeyModel;
}
public SqlInfoDdlModel getDdlModel() {
return ddlModel;
}
public void setDdlModel(SqlInfoDdlModel ddlModel) {
this.ddlModel = ddlModel;
}
public String getPreSymbol() {
return preSymbol;
}
public void setPreSymbol(String preSymbol) {
this.preSymbol = preSymbol;
}
public SqlInfoPublicModel getPublicModel() {
return publicModel;
}
public void setPublicModel(SqlInfoPublicModel publicModel) {
this.publicModel = publicModel;
}
public Boolean getTenantIgnore() {
return tenantIgnore;
}
public void setTenantIgnore(Boolean tenantIgnore) {
this.tenantIgnore = tenantIgnore;
}
}

View File

@@ -0,0 +1,22 @@
package com.jeelowcode.framework.plus.build.buildmodel;
import com.jeelowcode.framework.plus.build.ISQLExpression;
/**
* 自定义 model
*/
public class SqlInfoBaseModel {
ISQLExpression sqlExpression;
public ISQLExpression getSqlExpression() {
return sqlExpression;
}
public void setSqlExpression(ISQLExpression sqlExpression) {
this.sqlExpression = sqlExpression;
}
}

View File

@@ -0,0 +1,35 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.buildmodel.SqlInfoBaseModel;
/**
* 数据库字段列表
*/
public class FieldCommentModel extends SqlInfoBaseModel {
private String fieldCode;//字段
private String fieldName;//字段名称
public FieldCommentModel(String fieldCode, String fieldName) {
this.fieldCode = fieldCode;
this.fieldName = fieldName;
}
public String getFieldCode() {
return fieldCode;
}
public void setFieldCode(String fieldCode) {
this.fieldCode = fieldCode;
}
public String getFieldName() {
return fieldName;
}
public void setFieldName(String fieldName) {
this.fieldName = fieldName;
}
}

View File

@@ -0,0 +1,90 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildAlter;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-06 11:45
* @dedescription:
*/
public class SqlInfoAlterModel<T> extends SqlInfoBaseDdlModel {
private AlterType alterType;//操作类型
private String tableName;//表名称
//addColumn
private FieldModel fieldModel;//字段属性
private SqlInfoAlterModel(){}
public enum AlterType{
ADD_COLUMN, //增加字段
UPDATE_COLUMN //修改字段
}
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoAlterModel alterModel = new SqlInfoAlterModel();
ISQLExpression<List<SqlFormatModel>> alterExpression = new BuildAlter();
public Builder setTableName(String tableName){
alterModel.tableName = tableName;
return this;
}
//增加字段
public SqlInfoAlterModel<BuildAlter> buildAddColumn(FieldModel fieldModel){
alterModel.alterType = AlterType.ADD_COLUMN;
alterModel.fieldModel =fieldModel;
alterModel.setSqlExpression(alterExpression);
return alterModel;
}
//更新字段
public SqlInfoAlterModel<BuildAlter> buildUpdateColum(FieldModel fieldModel){
alterModel.alterType = AlterType.UPDATE_COLUMN;
alterModel.fieldModel =fieldModel;
alterModel.setSqlExpression(alterExpression);
return alterModel;
}
}
public AlterType getAlterType() {
return alterType;
}
public void setAlterType(AlterType alterType) {
this.alterType = alterType;
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public FieldModel getFieldModel() {
return fieldModel;
}
public void setFieldModel(FieldModel fieldModel) {
this.fieldModel = fieldModel;
}
}

View File

@@ -0,0 +1,25 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.buildmodel.SqlInfoBaseModel;
import java.util.List;
/**
* DDL 公共
* @param
*/
public class SqlInfoBaseDdlModel extends SqlInfoBaseModel {
//优先级最高,有值则只运行这里
private List<String> executeDdlList;
public List<String> getExecuteDdlList() {
return executeDdlList;
}
public void setExecuteDdlList(List<String> executeDdlList) {
this.executeDdlList = executeDdlList;
}
}

View File

@@ -0,0 +1,67 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildComment;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-06 11:45
* @dedescription:
*/
public class SqlInfoCommentModel<T> extends SqlInfoBaseDdlModel {
String tableName;
String tableAlias;
List<FieldModel> fieldModelList;
private SqlInfoCommentModel(){}
//构建表备注
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoCommentModel model = new SqlInfoCommentModel();
ISQLExpression<List<SqlFormatModel>> commentExpression = new BuildComment();
public Builder setTableName(String tableName){
model.tableName = tableName;
return this;
}
public Builder setTableAlias(String tableAlias){
model.tableAlias = tableAlias;
return this;
}
public Builder setfieldModelList(List<FieldModel> fieldModelList){
model.fieldModelList = fieldModelList;
return this;
}
//增加字段
public SqlInfoCommentModel<BuildComment> build(){
model.setSqlExpression(commentExpression);
return model;
}
}
public String getTableName() {
return tableName;
}
public String getTableAlias() {
return tableAlias;
}
public List<FieldModel> getFieldModelList() {
return fieldModelList;
}
}

View File

@@ -0,0 +1,94 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildCreateIndex;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-05 17:09
* @dedescription:
*/
public class SqlInfoCreateIndexModel<T> extends SqlInfoBaseDdlModel {
String tableName;//表
//index
private String indexName;//索引名称
private String indexType;//索引类型
private List<String> indexFieldCodeList;//索引值
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoCreateIndexModel sqlInfoCreateModel = new SqlInfoCreateIndexModel();
ISQLExpression<List<SqlFormatModel>> expression = new BuildCreateIndex();
public Builder setTableName(String tableName) {
sqlInfoCreateModel.tableName = tableName;
return this;
}
public Builder setIndexName(String indexName) {
sqlInfoCreateModel.indexName = indexName;
return this;
}
public Builder setIndexFieldCodeList(List<String> indexFieldCodeList) {
sqlInfoCreateModel.indexFieldCodeList = indexFieldCodeList;
return this;
}
public Builder setIndexType(String indexType) {
sqlInfoCreateModel.indexType = indexType;
return this;
}
public SqlInfoCreateIndexModel<BuildCreateIndex> build() {
ISQLExpression<List<SqlFormatModel>> expression = new BuildCreateIndex();
sqlInfoCreateModel.setSqlExpression(expression);
return sqlInfoCreateModel;
}
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public String getIndexName() {
return indexName;
}
public void setIndexName(String indexName) {
this.indexName = indexName;
}
public List<String> getIndexFieldCodeList() {
return indexFieldCodeList;
}
public void setIndexFieldCodeList(List<String> indexFieldCodeList) {
this.indexFieldCodeList = indexFieldCodeList;
}
public String getIndexType() {
return indexType;
}
public void setIndexType(String indexType) {
this.indexType = indexType;
}
}

View File

@@ -0,0 +1,62 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildCreateTable;
import com.jeelowcode.framework.plus.entity.FieldModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-05 17:09
* @dedescription:
*/
public class SqlInfoCreateModel<T> extends SqlInfoBaseDdlModel {
String tableName;//表
List<FieldModel> tableOptions;
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoCreateModel sqlInfoCreateModel = new SqlInfoCreateModel();
ISQLExpression<List<SqlFormatModel>> createTableExpression = new BuildCreateTable();
public Builder setTableName(String tableName) {
sqlInfoCreateModel.tableName = tableName;
return this;
}
public Builder setTableOptions(List<FieldModel> tableOptions) {
sqlInfoCreateModel.tableOptions = tableOptions;
return this;
}
public SqlInfoCreateModel<BuildCreateTable> build() {
sqlInfoCreateModel.setSqlExpression(createTableExpression);
return sqlInfoCreateModel;
}
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public List<FieldModel> getTableOptions() {
return tableOptions;
}
public void setTableOptions(List<FieldModel> tableOptions) {
this.tableOptions = tableOptions;
}
}

View File

@@ -0,0 +1,100 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildDdl;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*/
public class SqlInfoDdlModel<T> extends SqlInfoBaseDdlModel {
private DdlType type;//操作类型
private Map<String,Object> map;//参数
private SqlInfoDdlModel(){}
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoDdlModel ddlModel = new SqlInfoDdlModel();
ISQLExpression<List<SqlFormatModel>> expression = new BuildDdl();
public SqlInfoDdlModel<BuildDdl> buildIndexExist(String tableName,String indexName){
Map<String,Object> map=new HashMap<>();
map.put("tableName",tableName);
map.put("indexName",indexName);
ddlModel.type= DdlType.INDEX_EXIST;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
public SqlInfoDdlModel<BuildDdl> buildIndexAllByTable(String tableName){
Map<String,Object> map=new HashMap<>();
map.put("tableName",tableName);
ddlModel.type= DdlType.INDEX_ALL;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
public SqlInfoDdlModel<BuildDdl> buildTableExist(String tableName){
Map<String,Object> map=new HashMap<>();
map.put("tableName",tableName);
ddlModel.type= DdlType.TABLE_EXIST;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
public SqlInfoDdlModel<BuildDdl> buildGetAllTableName(){
Map<String,Object> map=new HashMap<>();
ddlModel.type= DdlType.ALL_TABLE_NAME;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
public SqlInfoDdlModel<BuildDdl> buildFieldComment(String tableName){
Map<String,Object> map=new HashMap<>();
map.put("tableName",tableName);
ddlModel.type= DdlType.TABLE_FIELD_COMMENT;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
public SqlInfoDdlModel<BuildDdl> buildTableComment(String tableName){
Map<String,Object> map=new HashMap<>();
map.put("tableName",tableName);
ddlModel.type= DdlType.TABLE_COMMENT;
ddlModel.map=map;
ddlModel.setSqlExpression(expression);
return ddlModel;
}
}
public enum DdlType{
INDEX_EXIST,//索引是否存在
INDEX_ALL,//所有索引
TABLE_EXIST,//表名是否存在
ALL_TABLE_NAME,//所有表名
TABLE_COMMENT,//表备注
TABLE_FIELD_COMMENT;//表字段备注
}
public DdlType getType() {
return type;
}
public Map<String, Object> getMap() {
return map;
}
}

View File

@@ -0,0 +1,109 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildDrop;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-06 11:45
* @dedescription:
*/
public class SqlInfoDropModel<T> extends SqlInfoBaseDdlModel {
private DropType dropType;//操作类型
String tableName;//表
private String cloumnCode;//字段
private String cloumnFormat;//格式化
private String indexName;//索引名称
private SqlInfoDropModel(){}
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoDropModel dropModel = new SqlInfoDropModel();
ISQLExpression<List<SqlFormatModel>> expression = new BuildDrop();
public SqlInfoDropModel<BuildDrop> buildDropTable(String tableName){
dropModel.tableName = tableName;
dropModel.dropType = DropType.DROP_TABLE;
dropModel.setSqlExpression(expression);
return dropModel;
}
public SqlInfoDropModel<BuildDrop> buildDropColumn(String tableName,String column){
dropModel.tableName = tableName;
dropModel.cloumnCode=column;
dropModel.dropType = DropType.DROP_COLUMN;
dropModel.setSqlExpression(expression);
return dropModel;
}
public SqlInfoDropModel<BuildDrop> buildDropIndex(String tableName,String indexName){
dropModel.tableName = tableName;
dropModel.dropType = DropType.DROP_INDEX;
dropModel.indexName=indexName;
dropModel.setSqlExpression(expression);
return dropModel;
}
}
public enum DropType{
DROP_TABLE, //删除表
DROP_COLUMN, //删除字段
DROP_INDEX //删除索引
}
public DropType getDropType() {
return dropType;
}
public void setDropType(DropType dropType) {
this.dropType = dropType;
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public String getCloumnCode() {
return cloumnCode;
}
public void setCloumnCode(String cloumnCode) {
this.cloumnCode = cloumnCode;
}
public String getIndexName() {
return indexName;
}
public void setIndexName(String indexName) {
this.indexName = indexName;
}
public String getCloumnFormat() {
return cloumnFormat;
}
public void setCloumnFormat(String cloumnFormat) {
this.cloumnFormat = cloumnFormat;
}
}

View File

@@ -0,0 +1,61 @@
package com.jeelowcode.framework.plus.build.buildmodel.ddl;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.ddl.BuildPrimaryKey;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import java.util.List;
/**
* @author JX
* @create 2024-07-05 17:09
* @dedescription:
*/
public class SqlInfoPrimaryKeyModel<T> extends SqlInfoBaseDdlModel {
String tableName;//表
List<String> keyList;
public static Builder builder(){
return new Builder();
}
public static class Builder{
private SqlInfoPrimaryKeyModel sqlInfoCreateModel = new SqlInfoPrimaryKeyModel();
ISQLExpression<List<SqlFormatModel>> primaryKeyExpression = new BuildPrimaryKey();
public Builder setTableName(String tableName) {
sqlInfoCreateModel.tableName = tableName;
return this;
}
public Builder setPrimaryKey(List<String> keyList) {
sqlInfoCreateModel.keyList = keyList;
return this;
}
public SqlInfoPrimaryKeyModel build() {
sqlInfoCreateModel.setSqlExpression(primaryKeyExpression);
return sqlInfoCreateModel;
}
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public List<String> getKeyList() {
return keyList;
}
public void setKeyList(List<String> keyList) {
this.keyList = keyList;
}
}

View File

@@ -0,0 +1,246 @@
package com.jeelowcode.framework.plus.build.buildmodel.dql;
import com.jeelowcode.framework.plus.build.ISQLExpression;
import com.jeelowcode.framework.plus.build.build.dql.BuildCondition;
import com.jeelowcode.framework.plus.build.build.dql.BuildHaving;
import com.jeelowcode.framework.plus.build.build.dql.BuildWhere;
import com.jeelowcode.framework.plus.build.buildmodel.ExpressionModel;
import com.jeelowcode.framework.plus.build.buildmodel.SqlInfoBaseModel;
import com.jeelowcode.framework.plus.core.model.SqlFormatModel;
import com.jeelowcode.framework.utils.utils.FuncBase;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
/**
* @author JX
* @create 2024-07-30 10:17
* @dedescription:
*/
public class SqlInfoConditionModel<T> extends SqlInfoBaseModel {
private List<ExpressionModel> expressions = new ArrayList<>();
public static SqlInfoConditionModel.Builder builder() {
return new SqlInfoConditionModel.Builder();
}
public static class Builder {
private SqlInfoConditionModel conditionModel = new SqlInfoConditionModel();
public SqlInfoConditionModel.Builder gt(String column, Object value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.GT, column, value));
return this;
}
public SqlInfoConditionModel.Builder ge(String column, Object value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.GE, column, value));
return this;
}
public SqlInfoConditionModel.Builder ne(String column, Object value) {
if (FuncBase.isEmpty(value)) {
return this;
}
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NE, column, value));
return this;
}
public SqlInfoConditionModel.Builder eq(String column, Object value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.EQ, column, value));
return this;
}
public SqlInfoConditionModel.Builder lt(String column, Object value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.LT, column, value));
return this;
}
public SqlInfoConditionModel.Builder le(String column, Object value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.LE, column, value));
return this;
}
public SqlInfoConditionModel.Builder between(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.BETWEEN, column, value));
return this;
}
public SqlInfoConditionModel.Builder notbetween(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NOT_BETWEEN, column, value));
return this;
}
public SqlInfoConditionModel.Builder in(boolean condition, String column, Object... value) {
if (!condition) {
return this;
}
return this.in(column, value);
}
public SqlInfoConditionModel.Builder in(String column, Object... value) {
if (FuncBase.isEmpty(value)) {
return this;
}
Object valueTmp = value[0];
if (FuncBase.isEmpty(valueTmp)) {
return this;
}
if (value.length == 1) {
if (valueTmp instanceof List) {
List<Object> tmpList = (List<Object>) valueTmp;
if (tmpList.size() == 1) {
this.eq(column, tmpList.get(0));
return this;
}
}
}
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.IN, column, value));
return this;
}
public SqlInfoConditionModel.Builder notIn(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NOT_IN, column, value));
return this;
}
public SqlInfoConditionModel.Builder like(boolean condition, String column, Object... value) {
if (!condition) {
return this;
}
return like(column, value);
}
public SqlInfoConditionModel.Builder like(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.LIKE, column, value));
return this;
}
public SqlInfoConditionModel.Builder notLike(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NOT_LIKE, column, value));
return this;
}
public SqlInfoConditionModel.Builder likeLeft(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.LIKE_LEFT, column, value));
return this;
}
public SqlInfoConditionModel.Builder notLikeLeft(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NOT_LIKE_LEFT, column, value));
return this;
}
public SqlInfoConditionModel.Builder likeRight(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.LIKE_RIGHT, column, value));
return this;
}
public SqlInfoConditionModel.Builder notLikeRight(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.NOT_LIKE_RIGHT, column, value));
return this;
}
public SqlInfoConditionModel.Builder isNull(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.IS_NULL, column, value));
return this;
}
public SqlInfoConditionModel.Builder isNotNull(String column, Object... value) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.IS_NOT_NULL, column, value));
return this;
}
public SqlInfoConditionModel.Builder apply(String apply) {
conditionModel.expressions.add(buildExpression(WhereType.APPLY, apply, null));
return this;
}
public SqlInfoConditionModel.Builder or() {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.OR, null, null));
return this;
}
public SqlInfoConditionModel.Builder or(Consumer<SqlInfoConditionModel.Builder> orBuilderConsumer) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.OR_BUILD, null, orBuilderConsumer));
return this;
}
public SqlInfoConditionModel.Builder and(Consumer<SqlInfoConditionModel.Builder> andBuilderConsumer) {
conditionModel.expressions.add(buildExpression(SqlInfoConditionModel.WhereType.AND_BUILD, null, andBuilderConsumer));
return this;
}
public SqlInfoWhereModel<BuildWhere> buildWhere() {
ISQLExpression<SqlFormatModel> expression = new BuildWhere();
SqlInfoWhereModel whereModel = new SqlInfoWhereModel();
List<ExpressionModel> expressions = conditionModel.getExpressions();
whereModel.setExpressions(expressions);
whereModel.setSqlExpression(expression);
return whereModel;
}
public SqlInfoHavingModel<BuildHaving> buildHaving() {
ISQLExpression<SqlFormatModel> expression = new BuildHaving();
SqlInfoHavingModel havingModel = new SqlInfoHavingModel();
List<ExpressionModel> expressions = conditionModel.getExpressions();
havingModel.setExpressions(expressions);
havingModel.setSqlExpression(expression);
return havingModel;
}
public SqlInfoConditionModel<BuildCondition> build() {
return conditionModel;
}
}
public List<ExpressionModel> getExpressions() {
return expressions;
}
public enum WhereType {
GT, //>
GE, //>=
NE, //!=
EQ, //=
LT, //<
LE, //<=
BETWEEN,
NOT_BETWEEN,
IN,
NOT_IN,
LIKE,
NOT_LIKE,
LIKE_LEFT,
NOT_LIKE_LEFT,
LIKE_RIGHT,
NOT_LIKE_RIGHT,
IS_NULL,
IS_NOT_NULL,
OR,
OR_BUILD,
AND_BUILD,
APPLY
}
private static ExpressionModel buildExpression(SqlInfoConditionModel.WhereType whereType, String column, Object... value) {
ExpressionModel expression = new ExpressionModel();
expression.setWhereType(whereType);
expression.setColumn(column);
expression.setValue(value);
return expression;
}
public void setExpressions(List<ExpressionModel> expressions) {
this.expressions = expressions;
}
}

Some files were not shown because too many files have changed in this diff Show More