调解系统修改

This commit is contained in:
18792927508
2024-04-02 15:56:40 +08:00
parent 08f4aca27c
commit 72026ee6f4
51 changed files with 3102 additions and 3242 deletions
@@ -34,7 +34,56 @@
<result column="mediation_agreement" jdbcType="LONGVARCHAR" property="mediationAgreement" />
<result column="is_reconci" jdbcType="INTEGER" property="isReconci" />
</resultMap>
<sql id="SELECT_LIST_QUERY">
FROM
ms_case_application c
JOIN ms_case_affiliate a ON c.id = a.case_appli_id
LEFT JOIN ms_sys_user u ON u.user_id = a.user_id
LEFT JOIN ms_sys_user u1 ON u1.user_id = c.mediator_id
LEFT JOIN ms_sys_user_role ur ON u.user_id = ur.user_id or u1.user_id = ur.user_id
LEFT JOIN ms_sys_role r ON r.role_id = ur.role_id or r.role_id = ur.role_id
LEFT JOIN ms_sys_dept d ON d.dept_id = a.applicant_dept_id
<where>
<!-- 调解员角色和申请人,被申,代理人-->
<if test = 'req.mediatorId != null and req.userId!=null'>
AND (c.mediator_id = #{req.mediatorId} or a.user_id=#{req.userId})
</if>
<!-- admin,财务,顾问,部门长查看所有案件,申请人,被申,代理人根据userId查-->
<if test = 'req.mediatorId == null and req.userId != null'>
AND (a.user_id=#{req.userId} )
</if>
<!-- 根据角色查询-->
<if test='roleIds != null and roleIds.size() > 0 '>
and r.role_id in
<foreach item='roleId' index='index' collection='roleIds' open='(' separator=',' close=')'>
#{roleId}
</foreach>
</if>
<!-- 角色相关的状态-->
<if test='caseFlowIds != null and caseFlowIds.size() > 0 '>
and c.case_flow_id in
<foreach item='flowId' index='index' collection='caseFlowIds' open='(' separator=',' close=')'>
#{flowId}
</foreach>
</if>
<!-- 案件状态id条件-->
<if test = 'req.caseFlowId != null'>
AND c.case_flow_id = #{req.caseFlowId}
</if>
<!-- 案件编号-->
<if test = 'req.caseNum != null and req.caseNum != "" '>
AND c.case_num = #{req.caseNum}
</if>
<!-- 时间-->
<if test = 'req.startTime != null and req.startTime != "" '>
and c.create_time &gt;= #{req.startTime}
</if>
<if test = 'req.endTime != null and req.endTime != "" '>
and c.create_time &lt;= #{req.endTime}
</if>
</where>
</sql>
<select id="listMediator" resultMap="BaseResultMap">
select mediator_id ,id ,case_status_name,case_flow_id from ms_case_application <where>
<if test = 'userIds!=null and userIds.size()>0'>
@@ -50,4 +99,64 @@
</if> -->
</where>
</select>
<select id="todoCount" resultType="com.ruoyi.wisdomarbitrate.domain.vo.mscase.CaseToDoCount">
SELECT c.case_flow_id caseFlowId,count(DISTINCT c.id) caseCount
<include refid="SELECT_LIST_QUERY"/>
group by c.case_flow_id
</select>
<select id="list" resultType="com.ruoyi.wisdomarbitrate.domain.vo.mscase.MsCaseApplicationVO">
select t.* from(
SELECT
c.id,c.media_result mediaResult,c.room_id roomId,0 AS pendingStatus,
c.case_flow_id caseFlowId,c.batch_number batchNumber,c.case_num caseNum,
u1.nick_name mediatorName,c.hear_date hearDate,c.case_status_name caseStatusName,c.create_time createTime,
c.mediation_method mediationMethod,
CASE c.mediation_method when 1 then '线上调解' when 2 then '线下调解' ELSE '' END mediationMethodName
<include refid="SELECT_LIST_QUERY"/>
GROUP BY
c.id
union
SELECT
c.id,c.media_result mediaResult,c.room_id roomId,1 AS pendingStatus,
c.case_flow_id caseFlowId,c.batch_number batchNumber,c.case_num caseNum,
u1.nick_name mediatorName,c.hear_date hearDate,c.case_status_name caseStatusName,c.create_time createTime,
c.mediation_method mediationMethod,
CASE c.mediation_method when 1 then '线上调解' when 2 then '线下调解' ELSE '' END mediationMethodName
FROM
ms_case_log_record r
join ms_case_application c on r.case_appli_id=c.id
JOIN ms_case_affiliate a ON c.id = a.case_appli_id
LEFT JOIN ms_sys_user u ON u.user_id = a.user_id
LEFT JOIN ms_sys_user u1 ON u1.user_id = c.mediator_id
LEFT JOIN ms_sys_dept d ON d.dept_id = a.applicant_dept_id
<where>
r.create_by=#{req.userName} and c.id not in ( SELECT c.id
<include refid="SELECT_LIST_QUERY"/>
)
<!-- 案件状态id条件-->
<if test = 'req.caseFlowId != null'>
AND c.case_flow_id = #{req.caseFlowId}
</if>
<!-- 案件编号-->
<if test = 'req.caseNum != null and req.caseNum != "" '>
AND c.case_num = #{req.caseNum}
</if>
<!-- 时间-->
<if test = 'req.startTime != null and req.startTime != "" '>
and c.create_time &gt;= #{req.startTime}
</if>
<if test = 'req.endTime != null and req.endTime != "" '>
and c.create_time &lt;= #{req.endTime}
</if>
</where>
GROUP BY
c.id
) t ORDER BY t.createTime desc,t.caseNum desc
</select>
</mapper>