新增文件预览列表修复了任务显示ossId但是无法现在的情况

新增项目编号索引
This commit is contained in:
2025-05-20 09:11:45 +08:00
parent a0bc26ef3a
commit 1715aa3639
32 changed files with 592 additions and 175 deletions

View File

@@ -14,7 +14,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="beginTime" column="begin_time"/>
<result property="finishTime" column="finish_time"/>
<result property="content" column="content"/>
<result property="accessory" column="accessory"/>
<result property="remark" column="remark"/>
<result property="state" column="state"/>
<result property="createBy" column="create_by"/>
@@ -26,13 +25,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<collection property="taskItemVoList" ofType="com.ruoyi.oa.domain.vo.SysOaTaskItemVo" javaType="list">
<result property="itemId" column="item_id"/>
<result property="content" column="itemContent"/>
<result property="files" column="files"/>
<result property="signTime" column="sign_time"/>
<result property="status" column="itemStatus"/>
<result property="beginTime" column="itemBeginTime"/>
<result property="endTime" column="itemEndTime"/>
<result property="remark" column="itemRemark"/>
<result property="completedTime" column="itemCompletedTime"/>
<!-- ========== 附件列表:多对一 折叠 ========= -->
<collection property="itemFileList"
ofType="com.ruoyi.system.domain.SysOss"
javaType="java.util.ArrayList">
<result property="ossId" column="item_oss_id"/>
<result property="url" column="item_attach_url"/>
<result property="fileName" column="item_attach_file_name"/>
<result property="createBy" column="item_create_by"/>
<result property="isPublic" column="item_is_public"/>
<result property="ownerId" column="item_owner_id"/>
</collection>
</collection>
<!-- ========== 附件列表:多对一 折叠 ========= -->
<collection property="fileList"
ofType="com.ruoyi.system.domain.SysOss"
javaType="java.util.ArrayList">
<result property="ossId" column="oss_id"/>
<result property="url" column="attach_url"/>
<result property="fileName" column="attach_file_name"/>
<result property="createBy" column="create_by"/>
<result property="isPublic" column="is_public"/>
<result property="ownerId" column="owner_id"/>
</collection>
</resultMap>
@@ -60,13 +80,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sot.origin_finish_time,
sot.postponements,
sot.completed_time,
sot.content,
(
SELECT GROUP_CONCAT(so.url SEPARATOR ',')
FROM sys_oss so
WHERE FIND_IN_SET(so.oss_id, sot.accessory) > 0
) AS accessory,
CASE
WHEN sot.completed_time IS NULL
THEN DATEDIFF(
NOW(),
COALESCE(
sot.finish_time,
(SELECT a.end_time
FROM sys_oa_task_item a
WHERE a.task_id = sot.task_id
AND a.completed_time IS NULL
LIMIT 1)
)
)
ELSE 0
END AS overDays,
sot.rank_number,
sot.remark,
sot.task_rank,
@@ -83,19 +111,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
soti.item_id,
sop.project_num,
su1.nick_name AS createUserNickName,
su2.nick_name AS workerNickName,
CASE
WHEN sot.completed_time IS NULL
THEN DATEDIFF(NOW(), COALESCE(sot.finish_time, soti.end_time))
ELSE 0
END AS overDays,
(
SELECT GROUP_CONCAT(so.url SEPARATOR ',')
FROM sys_oss so
WHERE FIND_IN_SET(so.oss_id, soti.files) > 0
) AS files
su2.nick_name AS workerNickName
FROM sys_oa_task sot
LEFT JOIN sys_user su1 ON su1.user_id = sot.create_user_id
LEFT JOIN sys_user su2 ON su2.user_id = sot.worker_id
@@ -110,105 +126,101 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectDetailVoById" resultMap="SysOaTaskResult">
SELECT
sot.task_id,
sot.project_id,
sot.create_user_id,
sot.worker_id,
sot.task_title,
sot.task_type,
sot.task_grade,
SELECT sot.task_id,
sot.project_id,
sot.create_user_id,
sot.worker_id,
sot.task_title,
sot.task_type,
sot.task_grade,
COALESCE(
sot.finish_time,
(
SELECT a.end_time
COALESCE(
sot.finish_time,
(SELECT a.end_time
FROM sys_oa_task_item a
WHERE a.task_id = sot.task_id
AND a.completed_time IS NULL
LIMIT 1
)
) AS finish_time,
COALESCE(
sot.temp_time,
(
SELECT a.temp_time
LIMIT 1)
) AS finish_time,
COALESCE(
sot.temp_time,
(SELECT a.temp_time
FROM sys_oa_task_item a
WHERE a.task_id = sot.task_id
AND a.completed_time IS NULL
LIMIT 1
)
) AS temp_time,
LIMIT 1)
) AS temp_time,
sot.begin_time,
sot.origin_finish_time,
sot.postponements,
sot.completed_time,
sot.content,
su1.nick_name AS createUserNickName,
su2.nick_name AS workerNickName,
sot.begin_time,
sot.origin_finish_time,
sot.postponements,
sot.completed_time,
sot.content,
su1.nick_name AS createUserNickName,
su2.nick_name AS workerNickName,
(
SELECT GROUP_CONCAT(so.url SEPARATOR ',')
(SELECT GROUP_CONCAT(so.url SEPARATOR ',')
FROM sys_oss so
WHERE FIND_IN_SET(so.oss_id, sot.accessory) > 0
) AS accessory,
WHERE FIND_IN_SET(so.oss_id, sot.accessory) > 0) AS accessory,
sot.rank_number,
sot.remark,
sot.task_rank,
sot.state,
sot.time_gap,
sot.status,
sot.create_by,
sot.create_time,
sot.update_by,
sot.update_time,
sot.del_flag,
sot.own_rank,
sop.project_name,
sop.project_num,
sot.rank_number,
sot.remark,
sot.task_rank,
sot.state,
sot.time_gap,
sot.status,
sot.create_by,
sot.create_time,
sot.update_by,
sot.update_time,
sot.del_flag,
sot.own_rank,
sop.project_name,
sop.project_num,
soti.item_id,
soti.content AS itemContent,
soti.sign_time,
soti.status AS itemStatus,
soti.begin_time AS itemBeginTime,
soti.completed_time AS itemCompletedTime,
soti.end_time AS itemEndTime,
soti.remark AS itemRemark,
(
SELECT GROUP_CONCAT(so.url SEPARATOR ',')
FROM sys_oss so
WHERE FIND_IN_SET(so.oss_id, soti.files) > 0
) AS files,
CASE
WHEN sot.completed_time IS NULL
THEN DATEDIFF(
NOW(),
COALESCE(
sot.finish_time,
(
SELECT a.end_time
soti.item_id,
soti.content AS itemContent,
soti.sign_time,
soti.status AS itemStatus,
soti.begin_time AS itemBeginTime,
soti.completed_time AS itemCompletedTime,
soti.end_time AS itemEndTime,
soti.remark AS itemRemark,
CASE
WHEN sot.completed_time IS NULL
THEN DATEDIFF(
NOW(),
COALESCE(
sot.finish_time,
(SELECT a.end_time
FROM sys_oa_task_item a
WHERE a.task_id = sot.task_id
AND a.completed_time IS NULL
LIMIT 1
)
)
)
ELSE 0
END AS overDays
FROM sys_oa_task sot
LEFT JOIN sys_user su1 ON su1.user_id = sot.create_user_id
LEFT JOIN sys_user su2 ON su2.user_id = sot.worker_id
LEFT JOIN sys_oa_project sop ON sop.project_id = sot.project_id
LEFT JOIN sys_oa_task_item soti
ON soti.task_id = sot.task_id
LIMIT 1)
)
)
ELSE 0
END AS overDays,
so.oss_id AS oss_id,
so.url AS attach_url,
so.original_name AS attach_file_name, -- 如有需要
so.create_by,
so.is_public,
so.owner_id,
so2.oss_id AS item_oss_is,
so2.url AS item_attach_url,
so2.original_name AS item_attach_file_name, -- 如有需要
so2.create_by as item_create_by,
so2.is_public as item_is_public,
so2.owner_id as item_owner_id
FROM sys_oa_task sot
LEFT JOIN sys_user su1
ON su1.user_id = sot.create_user_id
LEFT JOIN sys_user su2 ON su2.user_id = sot.worker_id
LEFT JOIN sys_oa_project sop ON sop.project_id = sot.project_id
LEFT JOIN sys_oss so ON FIND_IN_SET(so.oss_id, sot.accessory)
LEFT JOIN sys_oa_task_item soti ON soti.task_id = sot.task_id
LEFT JOIN sys_oss so2 ON FIND_IN_SET(so2.oss_id, soti.files)
WHERE
sot.task_id = #{taskId}
AND sot.del_flag = '0'