You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
3.4 KiB
93 lines
3.4 KiB
<?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.ccsens.tall.persist.dao.IInputDocDao">
|
|
<resultMap id="ii" type="com.ccsens.tall.bean.vo.LwbsVo$SelByProjectIdToTasksVo">
|
|
<id property="id" column="id"/>
|
|
<result property="name" column="name"/>
|
|
<collection property="list" ofType="com.ccsens.tall.bean.vo.LwbsVo$SelByProjectIdToTaskVo">
|
|
<result column="beginTime" property="startTime"/>
|
|
<result column="endTime" property="endTime"/>
|
|
<result column="cha" property="cha"/>
|
|
<result column="milestone" property="milestone"/>
|
|
</collection>
|
|
</resultMap>
|
|
|
|
<resultMap id="DocAndFile" type="com.ccsens.tall.bean.vo.InputDocVo$DocOfTask">
|
|
<id property="docId" column="docId" />
|
|
<id property="docName" column="docName"/>
|
|
<result property="isUpload" column="isUpload"/>
|
|
<collection property="files" ofType="com.ccsens.tall.bean.vo.InputDocVo$File">
|
|
<id column="recordId" property="recordId" />
|
|
<result column="fileName" property="fileName"/>
|
|
<result column="fileUrl" property="fileUrl"/>
|
|
</collection>
|
|
</resultMap>
|
|
<select id="selectById" resultMap="ii">
|
|
SELECT
|
|
tptd.project_id AS id,
|
|
tptd.`name`,
|
|
tptd.description,
|
|
tptst.begin_time as beginTime,
|
|
tptst.end_time as endTime,
|
|
( tptst.end_time - tptst.begin_time ) / 1000 / 3600 AS cha,
|
|
tptd.milestone
|
|
FROM
|
|
t_pro_task_detail tptd,
|
|
t_pro_task_sub_time tptst
|
|
WHERE
|
|
tptd.`level` = 2
|
|
AND tptd.rec_status = 0
|
|
AND tptd.executor_role IN (
|
|
SELECT
|
|
tpmr.role_id
|
|
FROM
|
|
t_pro_member_role tpmr
|
|
WHERE
|
|
tpmr.rec_status = 0
|
|
AND tpmr.member_id IN ( SELECT id FROM t_pro_member tpm WHERE tpm.user_id = #{userId} AND tpm.rec_status = 0 )
|
|
)
|
|
AND tptst.task_detail_id = tptd.id
|
|
and tptst.begin_time<= #{param.startTime}
|
|
and tptst.end_time >= #{param.endTime}
|
|
<if test="param.id != null">
|
|
and tptd.project_id=#{param.id}
|
|
</if>
|
|
</select>
|
|
|
|
<select id="findDocByTask" resultMap="DocAndFile">
|
|
SELECT
|
|
tid.id AS docId,
|
|
tid.name AS docName,
|
|
tid.is_upload AS isUpload,
|
|
tir.id AS recordId,
|
|
tf.file_name AS fileName,
|
|
tf.visit_location AS fileUrl
|
|
|
|
FROM
|
|
t_pro_task_input_doc AS tid
|
|
LEFT JOIN t_pro_task_input_record AS tir ON tid.id = tir.input_doc_id
|
|
LEFT JOIN t_file AS tf ON tir.file_id = tf.id
|
|
WHERE
|
|
tid.task_detail_id = #{taskId}
|
|
AND tid.is_upload = 1
|
|
AND tid.rec_status = 0
|
|
AND tir.rec_status = 0
|
|
AND tf.rec_status = 0
|
|
</select>
|
|
|
|
<select id="viewDocHistory" resultType="com.ccsens.tall.bean.vo.InputDocVo$HistoryRecord">
|
|
SELECT
|
|
tir.id,
|
|
tf.file_name,
|
|
tf.visit_location,
|
|
tir.`status`
|
|
FROM
|
|
t_pro_task_input_record AS tir
|
|
LEFT JOIN t_file AS tf ON tir.file_id = tf.id
|
|
LEFT JOIN t_pro_task_input_doc AS tid ON tid.id = tir.input_doc_id
|
|
WHERE
|
|
tid.id = #{docId}
|
|
ORDER BY
|
|
tir.created_at DESC
|
|
</select>
|
|
</mapper>
|