|
@@ -502,7 +502,9 @@
|
|
|
|
|
|
<!--获取资产业务已办列表-->
|
|
|
<select id="getAssetsTaskDoneList" resultType="com.dayou.vo.AssetsTaskDoneVO">
|
|
|
- SELECT (@i := @i + 1) AS id,
|
|
|
+ SELECT DISTINCT
|
|
|
+ # (@i := @i + 1) AS id,
|
|
|
+ instance.recordId AS id,
|
|
|
log.id AS logId,
|
|
|
user.name AS handlerName,
|
|
|
log.handler_id,
|
|
@@ -521,22 +523,56 @@
|
|
|
node.code AS nodeCode,
|
|
|
log.created AS finishTime,
|
|
|
instance.business_sub_id AS statementNo,
|
|
|
- (SELECT assets_name FROM assets_production WHERE assets_production.production_no = instance.business_sub_id) AS statementName,
|
|
|
- (SELECT assets_name FROM assets_production WHERE assets_production.production_no = instance.business_min_id) AS reportName,
|
|
|
- instance.business_min_id AS reportNo,
|
|
|
+ (SELECT assets_name FROM assets_production WHERE assets_production.production_no = instance.business_sub_id) AS
|
|
|
+ statementName,
|
|
|
+ (SELECT assets_name FROM assets_production WHERE assets_production.production_no = instance.business_min_id) AS
|
|
|
+ reportName,
|
|
|
+ instance.business_min_id AS reportNo,
|
|
|
instance.state AS instanceState,
|
|
|
instance.id AS instanceId,
|
|
|
instance.created AS startDate
|
|
|
- FROM (SELECT @i := 0) AS sort, work_flow_log AS log
|
|
|
+ FROM
|
|
|
+# (SELECT @i := 0) AS sort,
|
|
|
+ work_flow_log AS log
|
|
|
LEFT JOIN (SELECT work_flow_node_instance.id, node_id, business_id, state, business_sub_id,
|
|
|
- business_min_id,work_task_record.created
|
|
|
+ business_min_id,work_task_record.created,work_task_record.id AS recordId
|
|
|
FROM work_flow_node_instance,work_task_record
|
|
|
WHERE state = 'FINISHED'
|
|
|
AND work_flow_node_instance.id = work_task_record.instance_id
|
|
|
AND work_flow_node_instance.deleted = 0) AS instance ON log.instance_id = instance.id
|
|
|
LEFT JOIN (SELECT id, name, code FROM work_node WHERE deleted = 0) AS node ON node.id = instance.node_id
|
|
|
- LEFT JOIN (SELECT id, order_id, NAME FROM assets WHERE deleted = 0) AS assets ON assets.id = log.business_id
|
|
|
+ LEFT JOIN (SELECT id, order_id, name, department_id FROM assets WHERE deleted = 0) AS assets ON assets.id = log.business_id
|
|
|
LEFT JOIN user ON user.id = log.handler_id
|
|
|
+ <if test="assetsSelectDTO != null and assetsSelectDTO.selectByDepartment">
|
|
|
+ INNER JOIN (
|
|
|
+ SELECT DISTINCT
|
|
|
+ department.id,
|
|
|
+ department.parent_id,
|
|
|
+ user.id AS userId
|
|
|
+ FROM
|
|
|
+ USER,
|
|
|
+ post,
|
|
|
+ department,
|
|
|
+ user_post ,
|
|
|
+ work_task_record AS record
|
|
|
+ WHERE
|
|
|
+ USER.id = user_post.user_id
|
|
|
+ AND user_post.post_id = post.id
|
|
|
+ AND post.department_id = department.id
|
|
|
+ AND user_post.deleted = 0
|
|
|
+ ) AS department ON (department.id IN
|
|
|
+ <foreach collection="assetsSelectDTO.departmentIdList" index="index" item="item" open="(" separator=","
|
|
|
+ close=")">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ OR department.parent_id IN
|
|
|
+ <foreach collection="assetsSelectDTO.departmentIdList" index="index" item="item" open="(" separator=","
|
|
|
+ close=")">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ AND department.userId = log.handler_id
|
|
|
+ </if>
|
|
|
WHERE instance.id IS NOT NULL
|
|
|
AND log.business_type = 'ASSET_BUSINESS'
|
|
|
<if test="assetsSelectDTO != null and assetsSelectDTO.handlerId != null">
|
|
@@ -553,6 +589,9 @@
|
|
|
<if test="assetsSelectDTO != null and assetsSelectDTO.nodeCode != null">
|
|
|
AND node.code = #{assetsSelectDTO.nodeCode}
|
|
|
</if>
|
|
|
+ <if test="assetsSelectDTO != null and assetsSelectDTO.departmentId">
|
|
|
+ AND assets.department_id = #{assetsSelectDTO.departmentId}
|
|
|
+ </if>
|
|
|
ORDER BY log.created DESC
|
|
|
</select>
|
|
|
</mapper>
|