From 11713839245ecb7483fd24b66d8462011b5c351e Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期二, 07 十一月 2023 17:31:26 +0800
Subject: [PATCH] Changes
---
zt/core/src/main/resources/template/index.vue.vm | 5
zt/core/src/main/java/com/zt/generator/data/DBUtil.java | 20 +
zt/core/src/main/resources/template/Controller.java.vm | 2
web/packages/views/pages/generator.vue | 12
modules/mainPart/src/main/java/com/zt/life/modules/project/controller/ProjectController.java | 4
zt/core/src/main/java/com/zt/generator/controller/SysGeneratorController.java | 33 ++
zt/core/src/main/java/com/zt/generator/utils/GenUtils.java | 10
modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml | 567 +++++++++++++++++++++++++++++++++++++++++++++++++++
zt/core/src/main/resources/template/add-or-update.vue.vm | 4
9 files changed, 639 insertions(+), 18 deletions(-)
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/ProjectController.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/ProjectController.java
index d28c818..ebaca06 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/ProjectController.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/controller/ProjectController.java
@@ -33,7 +33,7 @@
* @since 1.0.0 2023-11-07
*/
@RestController
-@RequestMapping("/project/")
+@RequestMapping("/project/Project/")
@Api(tags="project")
public class ProjectController {
@Autowired
@@ -46,7 +46,7 @@
@ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT),
@ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING),
@ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING),
- @ApiImplicitParam(name = "entrustUnitName", value = "濮旀墭鍗曚綅鍚嶇О", dataType = Constant.QT.STRING, format = "entrust_unit_name^LK"), @ApiImplicitParam(name = "developUnitName", value = "寮�鍙戝崟浣嶅悕绉�", dataType = Constant.QT.STRING, format = "develop_unit_name^LK"), @ApiImplicitParam(name = "software", value = "杞欢鍚嶇О", dataType = Constant.QT.STRING, format = "software^LK"), @ApiImplicitParam(name = "code", value = "椤圭洰缂栧彿", dataType = Constant.QT.STRING, format = "CODE^LK"), @ApiImplicitParam(name = "identity", value = "椤圭洰鏍囪瘑", dataType = Constant.QT.STRING, format = "IDENTITY^LK"), @ApiImplicitParam(name = "criticalLevel", value = "鍏抽敭绛夌骇", dataType = Constant.QT.STRING, format = "critical_level^EQ"), @ApiImplicitParam(name = "testLevel", value = "娴嬭瘯绾у埆", dataType = Constant.QT.STRING, format = "test_level^EQ") })
+ @ApiImplicitParam(name = "softwareName", value = "杞欢鍚嶇О", dataType = Constant.QT.STRING, format = "software_name^LK"), @ApiImplicitParam(name = "secretClass", value = "瀵嗙骇", dataType = Constant.QT.STRING, format = "secret_class^EQ"), @ApiImplicitParam(name = "criticalLevel", value = "鍏抽敭绛夌骇", dataType = Constant.QT.STRING, format = "critical_level^EQ"), @ApiImplicitParam(name = "testLevel", value = "娴嬭瘯绾у埆", dataType = Constant.QT.STRING, format = "test_level^EQ"), @ApiImplicitParam(name = "softwareType", value = "杞欢绫诲瀷", dataType = Constant.QT.STRING, format = "software_type^EQ"), @ApiImplicitParam(name = "isContract", value = "鏄惁绛剧讲鍚堝悓", dataType = Constant.QT.STRING, format = "is_contract^EQ") })
public PageResult<Project> page(@ApiIgnore @QueryParam QueryFilter queryFilter){
return PageResult.ok(projectService.page(queryFilter));
diff --git a/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml
new file mode 100644
index 0000000..193b598
--- /dev/null
+++ b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml
@@ -0,0 +1,567 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.zt.life.modules.maintain.newplan.dao.TaskCenterDao">
+ <delete id="deleteTable">
+ drop table ${tableName}
+ </delete>
+
+ <select id="page" resultType="com.zt.modules.workflow.model.WfRunTask">
+ SELECT
+ a.id,
+ a.prev_id,
+ a.prev_step_id,
+ a.flow_id,
+ a.step_id,
+ a.step_name,
+ a.biz_id,
+ a.title,
+ a.sender_id,
+ a.sender_name,
+ a.sender_time,
+ a.group_id,
+ a.receive_id,
+ a.receive_name,
+ a.receive_time,
+ a.open_time,
+ /* a.finish_time,*/
+ a.finish_time2,
+ a.comment,
+ a.is_sign,
+ a.sort,
+ a.note,
+ a.remark,
+ a.is_delete,
+ a.dept_id,
+ a.company_id,
+ a.tenant_id,
+ a.topic,
+ a.apply_user_id,
+ a.apply_time,
+/* a.apply_user,*/
+ a.step_marker,
+ /*--step_router,*/
+ a.flow_code,
+ a.group_id2,
+ a.finish_id,
+ a.finish_name,
+ a.biz_group_id,
+ a.opinion,
+ (case when status = 1 then '琚┏鍥�' else '' end) as statusName,
+ DateDiff(CURRENT_DATE,a.RECEIVE_TIME) as idleDays,
+ a.topic AS taskName,
+ a.step_name as taskType,
+ a.biz_id as id,
+ 0 as Product_id,
+ 0 as MAINTAIN_LEVEL,
+ 0 as YEAR,
+ a.RECEIVE_NAME as apply_user,
+ date_add(a.RECEIVE_TIME,interval 7 day) AS finishTime,
+ a.STEP_ID as APPROVE_STEP_ID,
+ a.STEP_MARKER,
+ a.FLOW_CODE,
+ a.APPLY_USER as taskPeople,
+ 2 code,
+ a.title as summary,
+ b.STEP_ROUTER,
+ b.STEP_ROUTER_ID
+ FROM DJ_WF_RUN_TASK a
+ left join DJ_WF_DEF_STEP b on a.step_id = b.id
+ WHERE a.is_delete =0 and a.status in (0,1)
+ AND a.RECEIVE_ID = #{userId}
+ <if test="projectId != null and projectId != ''">
+ and a.biz_group_id = #{projectId}
+ </if>
+ <if test="djxlSystem != null and djxlSystem != ''">
+ and a.FLOW_ID in (select id from dj_wf_def where system_type = #{djxlSystem})
+ </if>
+ ORDER BY a.receive_time DESC
+ </select>
+
+ <update id="pageDone_temp">
+ drop table if exists ${pageDone_temp1};
+ create table ${pageDone_temp1} as
+ SELECT * FROM (
+ SELECT
+ a1.id,
+ a1.title,
+ a1.topic,
+ a1.remark,
+ a1.biz_id,
+ a1.biz_group_id,
+ a1.flow_code,
+ a1.step_id,
+ a1.step_marker,
+ /*a.step_name as step_name_my,*/
+ a1.receive_name as sender_name,
+ a1.receive_time,
+ a1.finish_time as finish_time,
+ a1.status
+ FROM DJ_WF_RUN_TASK a1
+ WHERE a1.is_delete = 0
+ and (a1.receive_id=#{userId}
+ or EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
+ s2.is_delete=0 and s1.CODE in ('all','xtglybm')))
+ <if test="djxlSystem != null and djxlSystem != ''">
+ and a1.FLOW_ID in (select id from dj_wf_def where system_type = #{djxlSystem})
+ </if>
+
+ ) a2
+ where status in (20,10)
+ group by a2.biz_id,a2.flow_code,a2.step_id;
+
+ drop table if exists ${pageDone_temp2};
+ create table ${pageDone_temp2} as
+ select * from
+ (select
+ b1.prev_id,
+ b1.group_id,
+ b1.biz_id,
+ b1.flow_code,
+ b1.step_id,
+ b1.step_marker,
+ b1.step_name,
+ b1.receive_name,
+ b1.receive_time,
+ b1.status
+ from ${pageDone_temp1} a1,
+ DJ_WF_RUN_TASK b1
+ WHERE b1.is_delete = 0
+ and b1.status in(0,1,100)
+
+ and a1.biz_id = b1.biz_id
+ and a1.flow_code = b1.flow_code
+ order by b1.receive_time DESC
+ ) b2 group by biz_id,flow_code,step_id;
+ </update>
+
+ <select id="pageDone" resultType="com.zt.modules.workflow.model.WfRunTask">
+ SELECT
+ a.id,
+ a.title,
+ a.topic,
+ a.remark,
+ a.biz_id,
+ a.flow_code,
+ a.biz_group_id,
+ c.STEP_READ_ROUTER_ID,
+ a.sender_name,
+ a.finish_time,
+ b.prev_id,
+ b.step_marker,
+ b.step_name,
+ case when c.CAN_RECALL=1 and a.id=b.prev_id and c.step_no < d.step_no and d.step_no < 100
+ then 1 else 0 end as canRecall,
+ c.step_no as myStepNo,
+ d.step_no as curStepNo,
+ (select group_concat(DISTINCT receive_name) from ${pageDone_temp2} s where s.group_id=b.group_id limit 0,3) receive_name,
+ b.receive_time,
+ (case when a.status = 10 then '椹冲洖' else '' end) as statusName,
+ c.name as finishStepName,
+ a.sender_name as finishUserName
+ FROM ${pageDone_temp1} a
+ join ${pageDone_temp2} b on a.biz_id = b.biz_id and a.flow_code = b.flow_code
+ left join DJ_WF_DEF_STEP c on a.step_id = c.id
+ left join DJ_WF_DEF_STEP d on b.step_id = d.id
+ group by a.biz_id,a.flow_code,a.step_id
+ ORDER BY a.receive_time DESC
+ </select>
+
+ <select id="page2" resultType="com.zt.modules.workflow.model.WfRunTask">
+ SELECT
+ 0 as bizGroupId,
+ CONCAT(p.Name, '-', a.YEAR, '-', c.Dict_label ) AS topic,
+ case when a.CURRENT_STATE =1 then '鍔╃悊淇敼璁″垝' else '澶勯暱瀹℃壒璁″垝' end AS step_name,
+ case when a.CURRENT_STATE =1 then '椹冲洖' else '' end AS statusName,
+ a.id,
+ '80' STEP_ID,
+ case when a.CURRENT_STATE =1 then 'zl' else 'cz' end AS STEP_MARKER,
+ 'yearPlan' as FLOW_CODE,
+ u.nick_name as APPLY_USER,
+ 2 as code,
+ '骞村害淇悊璁″垝' as title,
+ '骞村害淇悊璁″垝' as remark,
+ a.create_date AS RECEIVE_TIME,
+ DateDiff(CURRENT_DATE,a.create_date) as idleDays
+ FROM
+ DJ_ZHGL_ANNUAL_PLAN a
+ LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id
+ LEFT JOIN DJ_SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value
+ AND dict_type_id IN(SELECT id FROM DJ_SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type')
+ LEFT JOIN SYS_USER u ON u.user_id = a.CREATOR
+ WHERE a.is_delete = 0
+ and (
+ (CURRENT_STATE = 1
+ and EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2
+ WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
+ s2.is_delete=0 and s1.CODE = 'zlbm')
+ ) or (
+ CURRENT_STATE = '5'
+ and EXISTS(SELECT 1 FROM dj_sys_role s1,dj_sys_role_user s2
+ WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
+ s2.is_delete=0 and s1.CODE = 'czbm')
+ )
+ )
+ order by a.update_date desc limit 0,1
+ </select>
+
+ <select id="pageDone2" resultType="com.zt.modules.workflow.model.WfRunTask">
+ select *,
+ case
+ when STEP_MARKER = 'zl' then '澶勯暱瀹℃牳'
+ when STEP_MARKER = 'cz' then '鍔╃悊缂栨姤'
+ else '澶勯暱瀹℃牳' end as finishStepName,
+ case
+ when STEP_MARKER = 'zl' then '澶勯暱'
+ when STEP_MARKER = 'cz' then '鍔╃悊'
+ else '澶勯暱' end as finishUserName
+ from (
+ SELECT 0 as bizGroupId,
+ CONCAT(p.Name, '-', a.YEAR, '-', c.Dict_label) AS topic,
+ case
+ when a.CURRENT_STATE = 1 then '鍔╃悊淇敼璁″垝'
+ when a.CURRENT_STATE = 5 then '澶勯暱瀹℃壒璁″垝'
+ else '瀹屾垚' end AS step_name,
+ case when a.CURRENT_STATE = 1 then '椹冲洖' else '' end AS statusName,
+ a.id,
+ '90' as STEP_ID,
+ case
+ when a.CURRENT_STATE = 1 then 'zl'
+ when a.CURRENT_STATE = 5 then 'cz'
+ else 'wc' end as STEP_MARKER,
+ a.id as bizId,
+ 'yearPlan2' as FLOW_CODE,
+ u.nick_name as APPLY_USER,
+ 2 as code,
+ '骞村害淇悊璁″垝' as title,
+ '骞村害淇悊璁″垝' as remark,
+ a.UPDATE_DATE AS RECEIVE_TIME,
+ case
+ when a.CURRENT_STATE = 1 then '鍔╃悊'
+ when a.CURRENT_STATE = 5 then '澶勯暱'
+ else '' end AS receiveName,
+ DateDiff(CURRENT_DATE, a.create_date) as idleDays
+ FROM DJ_ZHGL_ANNUAL_PLAN a
+ LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id
+ LEFT JOIN DJ_SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value
+ AND dict_type_id IN (SELECT id FROM DJ_SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type')
+ LEFT JOIN SYS_USER u ON u.user_id = a.UPDATER
+ WHERE a.is_delete = 0
+ and (
+ (CURRENT_STATE in (1, 10)
+ and EXISTS(SELECT 1
+ FROM dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE s2.IS_DELETE = 0
+ and s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'czbm')
+ )
+ or (
+ CURRENT_STATE in (5, 10)
+ and EXISTS(SELECT 1
+ FROM dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE s2.IS_DELETE = 0
+ and s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'zlbm')
+ )
+ or ( CURRENT_STATE in (1, 5, 10)
+ and EXISTS(SELECT 1
+ FROM dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s2.is_delete = 0
+ and s1.CODE in ('all', 'xtglybm'))
+ )
+ )
+ ) as c
+ order by c.RECEIVE_TIME desc
+ </select>
+
+<!--
+ <select id="page3" resultType="com.zt.modules.workflow.model.WfRunTask">
+ select
+ a.stepRouterId,
+ a.project_id as bizGroupId,
+ b.MODEL_NAME AS topic,
+ '鏃ヨ鍒�' as title,
+ plan_date as remark,
+ step_name,
+ a.id,
+ '0' STEP_ID,
+ a.STEP_MARKER,
+ 'rjhFlow' as FLOW_CODE,
+ c.user_name as APPLY_USER,
+ '' as code,
+ a.create_date AS RECEIVE_TIME,
+ DateDiff(CURRENT_DATE,a.create_date) as idleDays
+ from
+ (
+ SELECT
+ *,'rjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1648318473140449281' as stepRouterId
+ FROM
+ dj_wx_daily_plan
+ WHERE
+ IS_DELETE =0
+ and FLOW_Status = 'rjh_hz'
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'zcbm'
+ )
+ union
+ SELECT
+ *,'rjh_sh' as STEP_MARKER,'閮ㄩ棬闀垮鏍�' as STEP_Name,'1648318806923161601' as stepRouterId
+ FROM
+ dj_wx_daily_plan
+ WHERE
+ IS_DELETE =0
+ and FLOW_Status = 'rjh_sh'
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'ywzbm'
+ )
+ union
+ SELECT
+ *,'rjh_cjfk' as STEP_MARKER,'鍘傚鍙嶉鎯呭喌' as STEP_MARKER,'1648319132719919106' as stepRouterId
+ FROM
+ dj_wx_daily_plan
+ WHERE
+ IS_DELETE =0
+ and FLOW_Status = 'rjh_fk'
+ AND cjfk_Status = 0
+ AND MAINTAIN_UNIT = #{deptId}
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'cjbm'
+ )
+ union
+ SELECT
+ *,'rjh_tyfk' as STEP_MARKER,'鑹囧憳鍙嶉鍔╀慨鎯呭喌' as STEP_Name,'1648318988234534914' as stepRouterId
+ FROM
+ dj_wx_daily_plan
+ WHERE
+ IS_DELETE =0
+ and FLOW_Status = 'rjh_fk'
+ AND tyfk_Status = 0
+ AND REPAIR_PERSONNEL = #{userId}
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'tybm'
+ )
+ GROUP BY
+ project_id,
+ plan_date
+ ) a
+ left join dj_wx_project b on a.project_id = b.id
+ left join sys_user c on a.SUBMIT_PERSONNEL = c.user_id
+ </select>
+-->
+
+ <select id="page3" resultType="com.zt.modules.workflow.model.WfRunTask">
+ select
+ a.stepRouterId,
+ a.project_id as bizGroupId,
+ b.MODEL_NAME AS topic,
+ a.title,
+ a.remark,
+ step_name,
+ a.id,
+ '0' STEP_ID,
+ a.STEP_MARKER,
+ a.FLOW_CODE,
+ c.user_name as APPLY_USER,
+ '' as code,
+ a.create_date AS RECEIVE_TIME,
+ DateDiff(CURRENT_DATE,a.create_date) as idleDays
+ from
+ (
+ SELECT
+ id,project_id,create_date,SUBMIT_PERSONNEL,
+ '鏈堣鍒�' as title,
+ concat('鏈堣鍒� (', select_date, ')') as remark,
+ 'monthPlanFlow' as FLOW_CODE,
+ 'yjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1660911405324423170' as stepRouterId
+ FROM
+ dj_wx_weekly_month_plan
+ WHERE
+ IS_DELETE = 0
+ and PLAN_TYPE = 1
+ and FLOW_Status = 'yjh_hz'
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s1.IS_DELETE=0
+ AND s2.IS_DELETE=0
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'zcbm'
+ )
+ GROUP BY
+ project_id, select_date
+ union
+ SELECT
+ id,project_id,create_date,SUBMIT_PERSONNEL,
+ '鍛ㄨ鍒�' as title,
+ concat('鍛ㄨ鍒� (', select_date, ')') as remark,
+ 'weekPlanFlow' as FLOW_CODE,
+ 'zjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1660904721482895361' as stepRouterId
+ FROM
+ dj_wx_weekly_month_plan
+ WHERE
+ IS_DELETE = 0
+ and PLAN_TYPE = 0
+ and FLOW_Status = 'zjh_hz'
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s1.IS_DELETE=0
+ AND s2.IS_DELETE=0
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'zcbm'
+ )
+ GROUP BY
+ project_id, select_date
+ union
+ SELECT
+ id,project_id,create_date,SUBMIT_PERSONNEL,
+ '鏃ヨ鍒�' as title,
+ concat('鏃ヨ鍒� (', plan_date, ')') as remark,
+ 'rjhFlow' as FLOW_CODE,
+ 'rjh_hz' as STEP_MARKER,'鎬诲巶姹囨��' as STEP_Name,'1648318473140449281' as stepRouterId
+ FROM
+ dj_wx_daily_plan
+ WHERE
+ IS_DELETE = 0
+ and FLOW_Status = 'rjh_hz'
+ AND EXISTS (
+ SELECT
+ 1
+ FROM
+ dj_sys_role s1,
+ dj_sys_role_user s2
+ WHERE
+ s1.ID = s2.role_id
+ AND s1.IS_DELETE=0
+ AND s2.IS_DELETE=0
+ AND s2.USER_id = #{userId}
+ AND s1.CODE = 'zcbm'
+ )
+ GROUP BY
+ project_id, plan_date
+ ) a
+ left join dj_wx_project b on a.project_id = b.id
+ left join sys_user c on a.SUBMIT_PERSONNEL = c.user_id
+ </select>
+
+ <select id="getRowByProjectId" resultType="com.zt.modules.workflow.model.WfRunTask">
+ SELECT
+ a.id,
+ a.prev_id,
+ a.prev_step_id,
+ a.flow_id,
+ a.step_id,
+ a.step_name,
+ a.biz_id,
+ a.title,
+ a.sender_id,
+ a.sender_name,
+ a.sender_time,
+ a.group_id,
+ a.receive_id,
+ a.receive_name,
+ a.receive_time,
+ a.open_time,
+ a.finish_time,
+ a.finish_time2,
+ a.comment,
+ a.is_sign,
+ a.sort,
+ a.note,
+ a.remark,
+ a.is_delete,
+ a.dept_id,
+ a.company_id,
+ a.tenant_id,
+ a.topic,
+ a.apply_user_id,
+ a.apply_time,
+ a.apply_user,
+ a.step_marker,
+ /*--step_router,*/
+ a.flow_code,
+ a.group_id2,
+ a.finish_id,
+ a.finish_name,
+ a.biz_group_id,
+ a.opinion,
+ (case when status = 1 then '琚┏鍥�' else '' end) as statusName,
+ DateDiff(CURRENT_DATE,a.RECEIVE_TIME) as idleDays,
+ a.topic AS taskName,
+ a.step_name as taskType,
+ a.biz_id as id,
+ 0 as Product_id,
+ 0 as MAINTAIN_LEVEL,
+ 0 as YEAR,
+ a.RECEIVE_TIME AS finishTime,
+ a.STEP_ID as APPROVE_STEP_ID,
+ a.STEP_MARKER,
+ a.FLOW_CODE,
+ a.APPLY_USER as taskPeople,
+ 2 code,
+ a.title as summary,
+ b.STEP_ROUTER,
+ b.STEP_ROUTER_ID
+ FROM DJ_WF_RUN_TASK a
+ left join DJ_WF_DEF_STEP b on a.step_id = b.id
+ WHERE a.is_delete =0 and a.status in (0,1)
+ and a.topic=(select model_name from dj_wx_project where id=#{projectId})
+ and a.step_marker='jsfa_sc'
+ ORDER BY a.receive_time DESC limit 1
+ </select>
+
+ <update id="oneKeyDoneCy">
+ update dj_wf_run_task
+ set status=20, UPDATER=#{userId}, UPDATE_DATE=CURRENT_TIMESTAMP
+ where STEP_MARKER in('rjh_cy','zjh_cy','yjh_cy') and status=0 and RECEIVE_ID=#{userId}
+ </update>
+</mapper>
diff --git a/web/packages/views/pages/generator.vue b/web/packages/views/pages/generator.vue
index b9c071b..a04809b 100644
--- a/web/packages/views/pages/generator.vue
+++ b/web/packages/views/pages/generator.vue
@@ -3,8 +3,10 @@
<div class="mod-sys__generator">
<el-form :model="dataForm" label-width="80px" @keyup.enter.native="getDataList()">
<el-form-item>
- <el-input style="width: 30%;margin-right: 20px;" v-model="dataForm.tableName" placeholder="璇疯緭鍏ヨ〃鍚�"
- clearable></el-input>
+ 閫夋嫨鍔熻兘琛� <el-select v-model="dataForm.tableName">
+ <el-option v-for="item in tableList" :key="item.tableName" :label="item.tableName" :value="item.tableName">
+ </el-option>
+ </el-select>
<el-button @click="getTableInfo()">鏌ヨ</el-button>
</el-form-item>
</el-form>
@@ -48,7 +50,7 @@
<div v-show="dataForm.tableData.length > 0" style="height:300px;overflow-y: auto">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="200px">
- <el-form-item prop="className" label="瀹炰綋瀵硅薄鍚嶇О" style="width: 60%">
+ <el-form-item prop="className" label="瀹炰綋绫诲悕绉�" style="width: 60%">
<el-input v-model="dataForm.className" placeholder="璇疯緭鍏ョ敓鎴愮殑瀹炰綋瀵硅薄鍚嶇О"></el-input>
</el-form-item>
@@ -110,7 +112,8 @@
packName: 'com.zt.life.modules',
isPageFlag: true,
isExport: false,
- tableData: []
+ tableData: [],
+ tableList:[]
}
}
@@ -154,6 +157,7 @@
if (res.success) {
this.modules = res.data.modules
this.eqList = res.data.eqList
+ this.tableList = res.data.tableList
}
},
async getTableInfo() {
diff --git a/zt/core/src/main/java/com/zt/generator/controller/SysGeneratorController.java b/zt/core/src/main/java/com/zt/generator/controller/SysGeneratorController.java
index a609970..7024bd1 100644
--- a/zt/core/src/main/java/com/zt/generator/controller/SysGeneratorController.java
+++ b/zt/core/src/main/java/com/zt/generator/controller/SysGeneratorController.java
@@ -1,8 +1,8 @@
/**
* Copyright (c) 2018 浜轰汉寮�婧� All rights reserved.
- *
+ * <p>
* https://www.renren.io
- *
+ * <p>
* 鐗堟潈鎵�鏈夛紝渚垫潈蹇呯┒锛�
*/
@@ -66,6 +66,35 @@
eqList.add(json);
}
jsonObject.put("eqList", eqList);
+
+ DbProperties jdbc = queryJdbcProperties();
+
+ DataTable table = null;
+ Connection conn = null;
+ try {
+ // 娉ㄥ唽鏁版嵁搴撻┍鍔�
+ Class.forName(jdbc.getDriverClass());
+ Properties props = new Properties();
+ props.put("remarksReporting", "true");// 涓轰簡寰楀埌璇存槑
+ props.setProperty("user", jdbc.getUserName());
+ props.setProperty("password", jdbc.getPassWord());
+ // 鑾峰彇杩炴帴
+ conn = DriverManager.getConnection(jdbc.getUrl(), props);
+ table = DBUtil.getTableList(conn, false);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (conn != null) {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ jsonObject.put("tableList", table.toJSONArray());
return Result.ok(jsonObject);
}
diff --git a/zt/core/src/main/java/com/zt/generator/data/DBUtil.java b/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
index 1bc6b4f..bf5686f 100644
--- a/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
+++ b/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
@@ -26,6 +26,26 @@
}
return false;
}
+ public static DataTable getTableList(Connection conn, boolean closeFlag) {
+ try {
+ DatabaseMetaData dbm = conn.getMetaData();
+ String currentCatalog = conn.getCatalog();
+ ResultSet rs = dbm.getTables(currentCatalog, null, null, null);
+ DataTable dt = new DataTable(rs);
+ return dt;
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (closeFlag && conn != null) {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return null;
+ }
public static DataTable getColumnInfo(Connection conn, String tableName, boolean closeFlag) {
try {
diff --git a/zt/core/src/main/java/com/zt/generator/utils/GenUtils.java b/zt/core/src/main/java/com/zt/generator/utils/GenUtils.java
index 0dfe9a1..73f782c 100644
--- a/zt/core/src/main/java/com/zt/generator/utils/GenUtils.java
+++ b/zt/core/src/main/java/com/zt/generator/utils/GenUtils.java
@@ -140,14 +140,15 @@
}
map.put("pk", pkColumn);
map.put("package", packageName);
- map.put("className", className);
+ map.put("className", className); //瀹炰綋绫诲悕瀛�
// private ${className}Service ${classBean}Service;
- map.put("classBean", StringUtils.uncapitalize(className));
+ map.put("classBean", StringUtils.uncapitalize(className)); //瀹炰綋瀹炰緥鍚嶅瓧
// model bean鐨勫悕绉癷nsert(@RequestBody ${className} ${modelName})
- map.put("modelName", StringUtils.uncapitalize(className));
+ map.put("modelName", StringUtils.uncapitalize(className)); //妯″瀷鍚嶅瓧
// @RequestMapping("/${moduleName}/${pathName}")
String moduleName = packageName.substring(packageName.lastIndexOf(".") + 1, packageName.length());
- map.put("moduleName", moduleName);
+ map.put("moduleName", moduleName); //妯″潡鍚嶅瓧 鍖呭悕锛堢浉瀵硅矾寰勶級
+
String pathName = StrUtil.toSymbolCase(className, '/');// 椹煎嘲杞笅鍒掔嚎
if (pathName.indexOf(moduleName) == 0) {
pathName = pathName.substring(moduleName.length());
@@ -155,6 +156,7 @@
pathName = pathName.substring(1);
}
}
+
map.put("importPath", tableName.replaceAll("_", "-"));// url璇锋眰鐨�
map.put("pathName", pathName);// url璇锋眰鐨�
map.put("permName", pathName.replace("/", ":"));// 鏉冮檺鐨�
diff --git a/zt/core/src/main/resources/template/Controller.java.vm b/zt/core/src/main/resources/template/Controller.java.vm
index 36e974a..6233be0 100644
--- a/zt/core/src/main/resources/template/Controller.java.vm
+++ b/zt/core/src/main/resources/template/Controller.java.vm
@@ -39,7 +39,7 @@
* @since ${version} ${date}
*/
@RestController
-@RequestMapping("/${moduleName}/${pathName}")
+@RequestMapping("/${moduleName}/${className}/")
@Api(tags="${comments}")
public class ${className}Controller {
@Autowired
diff --git a/zt/core/src/main/resources/template/add-or-update.vue.vm b/zt/core/src/main/resources/template/add-or-update.vue.vm
index fb3afda..2955394 100644
--- a/zt/core/src/main/resources/template/add-or-update.vue.vm
+++ b/zt/core/src/main/resources/template/add-or-update.vue.vm
@@ -30,7 +30,7 @@
methods: {
// 鑾峰彇淇℃伅
async getInfo() {
- let res = await #[[this.$http.get(]]#`/${moduleName}/${pathName}/#[[${]]#this.dataForm.id}`)
+ let res = await #[[this.$http.get(]]#`/${moduleName}/${className}/#[[${]]#this.dataForm.id}`)
this.dataForm = {
...this.dataForm,
...res.data
@@ -38,7 +38,7 @@
},
// 琛ㄥ崟鎻愪氦
async formSubmit() {
- let res = await #[[this.$http]]#[!this.dataForm.id ? 'post' : 'put']('/${moduleName}/${pathName}/', this.dataForm)
+ let res = await #[[this.$http]]#[!this.dataForm.id ? 'post' : 'put']('/${moduleName}/${className}/', this.dataForm)
if (res.success) {
await this.$tip.success()
this.$refs.dialog.close()
diff --git a/zt/core/src/main/resources/template/index.vue.vm b/zt/core/src/main/resources/template/index.vue.vm
index 67593bd..fd112fc 100644
--- a/zt/core/src/main/resources/template/index.vue.vm
+++ b/zt/core/src/main/resources/template/index.vue.vm
@@ -1,7 +1,7 @@
<template>
<el-card shadow="never" class="aui-card--fill">
<div class="mod-${moduleName}-${modelName}}">
- <zt-table-wraper query-url="/${moduleName}/${pathName}/page" delete-url="/${moduleName}/${pathName}" v-slot="{ table }">
+ <zt-table-wraper query-url="/${moduleName}/${className}/page" delete-url="/${moduleName}/${className}" v-slot="{ table }">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()">
#foreach($column in $columns)
#if($column.isSelectColumn == 'true')
@@ -21,7 +21,7 @@
<zt-button type="delete" perm="${moduleName}:delete" @click="table.deleteHandle()"/>
</el-form-item>
</el-form>
- <el-table v-loading="table.dataLoading" :data="table.dataList" border @selection-change="table.selectionChangeHandle">
+ <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:70}" border @selection-change="table.selectionChangeHandle">
<el-table-column type="selection" width="40"/>
#foreach($column in $columns)
#if($column.isTableColumn == 'true')
@@ -32,7 +32,6 @@
#end
#end
#end
-
<zt-table-column-handle :table="table" edit-perm="${moduleName}:update" delete-perm="${moduleName}::delete"/>
</el-table>
<!-- 寮圭獥, 鏂板 / 淇敼 -->
--
Gitblit v1.9.1