Browse Source

Merge branch 'dev/20220105_2.2.0_通用版_申诉驳回' into debug

zhanghang 3 years ago
parent
commit
b8f1cc6ad5

+ 98 - 28
report-service/src/main/resources/mapper/AppealExamineInfoMapper.xml

@@ -36,25 +36,61 @@
         a.is_reject,
         a.is_reject,
         a.mode_id
         a.mode_id
         FROM
         FROM
-        `med_appeal_info` a
-        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        (SELECT
+        *
+        FROM
+        med_appeal_info
         WHERE
         WHERE
-        a.hospital_id = b.hospital_id
-        AND a.is_deleted = 'N'
-        AND a.hospital_id = #{getComplaintRecordVO.hospitalId}
-        AND a.claimant_id = #{getComplaintRecordVO.complaintId}
+        1=1
         <if test="getComplaintRecordVO.complaintDateStart != null ">
         <if test="getComplaintRecordVO.complaintDateStart != null ">
-            <![CDATA[ AND a.gmt_create >= #{getComplaintRecordVO.complaintDateStart}]]>
+            <![CDATA[ AND gmt_create >= #{getComplaintRecordVO.complaintDateStart}]]>
         </if>
         </if>
         <if test="getComplaintRecordVO.complaintDateEnd != null ">
         <if test="getComplaintRecordVO.complaintDateEnd != null ">
-            <![CDATA[ AND a.gmt_create <= #{getComplaintRecordVO.complaintDateEnd}]]>
+            <![CDATA[ AND gmt_create <= #{getComplaintRecordVO.complaintDateEnd}]]>
         </if>
         </if>
         <if test="getComplaintRecordVO.modeName != null and getComplaintRecordVO.modeName != '' ">
         <if test="getComplaintRecordVO.modeName != null and getComplaintRecordVO.modeName != '' ">
-            <![CDATA[ AND a.mode_name = #{getComplaintRecordVO.modeName}]]>
+            <![CDATA[ AND mode_name = #{getComplaintRecordVO.modeName}]]>
         </if>
         </if>
         <if test="getComplaintRecordVO.operationType != null and getComplaintRecordVO.operationType != '' ">
         <if test="getComplaintRecordVO.operationType != null and getComplaintRecordVO.operationType != '' ">
-            <![CDATA[ AND a.appeal_operation_type = #{getComplaintRecordVO.operationType}]]>
+            <![CDATA[ AND appeal_operation_type = #{getComplaintRecordVO.operationType}]]>
         </if>
         </if>
+        AND
+        (gmt_create IN (
+        SELECT
+        max(gmt_create)
+        FROM
+        med_appeal_info
+        WHERE
+        cases_entry_id IS NOT NULL
+        AND hospital_id = #{getComplaintRecordVO.hospitalId}
+        AND claimant_id = #{getComplaintRecordVO.complaintId}
+        AND work_flow_node_id != 2
+        GROUP BY
+        hospital_id,
+        behospital_code,
+        cases_entry_id
+        )
+        OR
+        gmt_create IN (
+        SELECT
+        max(gmt_create)
+        FROM
+        med_appeal_info
+        WHERE
+        cases_entry_id IS NULL
+        AND hospital_id = #{getComplaintRecordVO.hospitalId}
+        AND appeal_operation_type = 2
+        AND claimant_id = #{getComplaintRecordVO.complaintId}
+        AND work_flow_node_id != 2
+        GROUP BY
+        hospital_id,
+        behospital_code,
+        appeal_explain
+        ))
+        ) a
+        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        WHERE
+        a.hospital_id = b.hospital_id
         <if test="getComplaintRecordVO.isPlacefile != null and getComplaintRecordVO.isPlacefile != '' ">
         <if test="getComplaintRecordVO.isPlacefile != null and getComplaintRecordVO.isPlacefile != '' ">
             <![CDATA[ AND b.is_placefile = #{getComplaintRecordVO.isPlacefile}]]>
             <![CDATA[ AND b.is_placefile = #{getComplaintRecordVO.isPlacefile}]]>
         </if>
         </if>
@@ -67,7 +103,7 @@
         ) a
         ) a
         LEFT JOIN med_appeal_examine_info c ON a.id = c.appeal_info_id
         LEFT JOIN med_appeal_examine_info c ON a.id = c.appeal_info_id
         WHERE
         WHERE
-        c.is_deleted = 'N'
+        1=1
         <if test="getComplaintRecordVO.state != null and getComplaintRecordVO.state != '' ">
         <if test="getComplaintRecordVO.state != null and getComplaintRecordVO.state != '' ">
             <![CDATA[ AND c.example_status = #{getComplaintRecordVO.state}]]>
             <![CDATA[ AND c.example_status = #{getComplaintRecordVO.state}]]>
         </if>
         </if>
@@ -108,35 +144,69 @@
         b.beh_dept_name,
         b.beh_dept_name,
         a.appeal_operation_type
         a.appeal_operation_type
         FROM
         FROM
-        med_appeal_info a
-        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        (
+        SELECT
+        *
+        FROM
+        `med_appeal_info`
         WHERE
         WHERE
-        a.is_deleted = 'N'
-        AND a.hospital_id = #{getAppealReviewVO.hospitalId}
-        AND a.hospital_id = b.hospital_id
-        AND a.check_id = #{getAppealReviewVO.appealId}
-        <if test="getAppealReviewVO.isPlacefile != null and getAppealReviewVO.isPlacefile != '' ">
-            <![CDATA[ AND b.is_placefile = #{getAppealReviewVO.isPlacefile}]]>
-        </if>
+        (
+        gmt_create IN (
+        SELECT
+        max(gmt_create)
+        FROM
+        med_appeal_info
+        WHERE
+        cases_entry_id IS NOT NULL
+        AND work_flow_node_id != 2
+        GROUP BY
+        hospital_id,
+        behospital_code,
+        cases_entry_id,
+        check_id
+        )
+        OR gmt_create IN (
+        SELECT
+        gmt_create
+        FROM
+        med_appeal_info
+        WHERE
+        cases_entry_id IS NULL
+        AND work_flow_node_id != 2
+        GROUP BY
+        appeal_explain,
+        check_id
+        )
+        )
+        AND hospital_id = #{getAppealReviewVO.hospitalId}
+        AND check_id = #{getAppealReviewVO.appealId}
         <if test="getAppealReviewVO.complaintDateStart != null ">
         <if test="getAppealReviewVO.complaintDateStart != null ">
-            <![CDATA[ AND a.gmt_create >= #{getAppealReviewVO.complaintDateStart}]]>
+            <![CDATA[ AND gmt_create >= #{getAppealReviewVO.complaintDateStart}]]>
         </if>
         </if>
         <if test="getAppealReviewVO.complaintDateEnd != null ">
         <if test="getAppealReviewVO.complaintDateEnd != null ">
-            <![CDATA[ AND a.gmt_create <= #{getAppealReviewVO.complaintDateEnd}]]>
-        </if>
-        <if test="getAppealReviewVO.deptName != null and getAppealReviewVO.deptName != '' ">
-            <![CDATA[ AND b.beh_dept_name = #{getAppealReviewVO.deptName}]]>
+            <![CDATA[ AND gmt_create <= #{getAppealReviewVO.complaintDateEnd}]]>
         </if>
         </if>
         <if test="getAppealReviewVO.modeName != null and getAppealReviewVO.modeName != '' ">
         <if test="getAppealReviewVO.modeName != null and getAppealReviewVO.modeName != '' ">
-            <![CDATA[ AND a.mode_name = #{getAppealReviewVO.modeName}]]>
+            <![CDATA[ AND mode_name = #{getAppealReviewVO.modeName}]]>
         </if>
         </if>
         <if test="getAppealReviewVO.operationType != null and getAppealReviewVO.operationType != '' ">
         <if test="getAppealReviewVO.operationType != null and getAppealReviewVO.operationType != '' ">
-            <![CDATA[ AND a.appeal_operation_type = #{getAppealReviewVO.operationType}]]>
+            <![CDATA[ AND appeal_operation_type = #{getAppealReviewVO.operationType}]]>
+        </if>
+        ) a
+        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        WHERE
+        a.hospital_id = b.hospital_id
+        <if test="getAppealReviewVO.isPlacefile != null and getAppealReviewVO.isPlacefile != '' ">
+            <![CDATA[ AND b.is_placefile = #{getAppealReviewVO.isPlacefile}]]>
+        </if>
+
+        <if test="getAppealReviewVO.deptName != null and getAppealReviewVO.deptName != '' ">
+            <![CDATA[ AND b.beh_dept_name = #{getAppealReviewVO.deptName}]]>
         </if>
         </if>
         ) a
         ) a
         LEFT JOIN med_appeal_examine_info c ON a.id = c.appeal_info_id
         LEFT JOIN med_appeal_examine_info c ON a.id = c.appeal_info_id
         WHERE
         WHERE
-        c.is_deleted = 'N'
+        1=1
         <if test="getAppealReviewVO.state != null and getAppealReviewVO.state != '' ">
         <if test="getAppealReviewVO.state != null and getAppealReviewVO.state != '' ">
             <![CDATA[ AND c.example_status = #{getAppealReviewVO.state}]]>
             <![CDATA[ AND c.example_status = #{getAppealReviewVO.state}]]>
         </if>
         </if>

+ 1 - 1
report-service/src/main/resources/mapper/AppealInfoMapper.xml

@@ -88,7 +88,7 @@
             AND mai.cases_entry_id = #{getAppealInfoVO.casesEntryId}
             AND mai.cases_entry_id = #{getAppealInfoVO.casesEntryId}
         </if>
         </if>
         <if test="getAppealInfoVO.appealExplain != null and getAppealInfoVO.appealExplain != '' ">
         <if test="getAppealInfoVO.appealExplain != null and getAppealInfoVO.appealExplain != '' ">
-            AND mai.appeal_explain = #{getAppealInfoVO.appealExplain}
+            AND appeal_operation_type = 2   AND mai.appeal_explain = #{getAppealInfoVO.appealExplain}
         </if>
         </if>
         ORDER BY
         ORDER BY
         mai.gmt_create
         mai.gmt_create