From 924d018e6e6f15effbd272cead5dff67cd3b93a5 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期三, 23 八月 2023 16:22:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml |  151 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 150 insertions(+), 1 deletions(-)

diff --git a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
index 754f647..bb63097 100644
--- a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
+++ b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
@@ -11,7 +11,7 @@
         i.end_time endTime
         FROM inspection i
         INNER JOIN inspection_material im ON i.id = im.inspection_id
-        where (i.state = 1 AND TRUE = IFNULL(i.inspection_status, FALSE))
+        where (i.state = 1 AND i.inspection_status is NOT NULL and im.state=1)
         <if test="dto.beginDate!=null and dto.endDate!=null">
             DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
             AND #{dto.endDate}
@@ -23,5 +23,154 @@
         <if test="dto.supplier!=null and dto.supplier!=''">
             and im.supplier=#{dto.supplier}
         </if>
+        <if test="dto.sample!=null and dto.sample!=''">
+            and im.name=#{dto.sample}
+        </if>
+        <if test="dto.code!=null and dto.code!=''">
+            and i.code=#{dto.code}
+        </if>
     </select>
+    <select id="selectProjectionsByCondition" resultMap="ImInfoMap">
+        SELECT
+        im.id imId,
+        im.`name` imName,
+        i.inspection_status inspectionStatus,
+        i.start_time startTime,
+        i.end_time endTime,
+        ipr.id iprId,
+        ipr.`name` iprName,
+        ipr.test_state testState,
+        i.code iCode,
+        i.type type
+        FROM
+        inspection i,
+        inspection_material im,
+        inspection_product ipr
+        WHERE
+        i.id = im.inspection_id
+        AND im.id = ipr.inspection_material_id
+        AND  i.state = 1
+        AND im.state = 1
+        AND ipr.state = 1
+        AND i.inspection_status is NOT NULL
+        AND ipr.test_state is not null
+        AND ipr.test_state = 0
+        <if test="dto.beginDate!=null and dto.endDate!=null">
+            DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+            AND #{dto.endDate}
+            AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+        </if>
+        <if test="dto.type!=null">
+            and i.type=#{dto.type}
+        </if>
+        <if test="dto.supplier!=null and dto.supplier!=''">
+            and im.supplier=#{dto.supplier}
+        </if>
+        <if test="dto.sample!=null and dto.sample!=''">
+            and im.name=#{dto.sample}
+        </if>
+        <if test="dto.code!=null and dto.code!=''">
+            and i.code=#{dto.code}
+        </if>
+    </select>
+    <select id="selectProjection" resultMap="ImInfoMap">
+        SELECT
+        im.id imId
+        FROM
+        inspection i,
+        inspection_material im,
+        inspection_product ipr
+        WHERE
+        i.id = im.inspection_id
+        AND im.id = ipr.inspection_material_id
+        AND  i.state = 1
+        AND im.state = 1
+        AND ipr.state = 1
+        AND i.inspection_status is NOT NULL
+        AND ipr.test_state is not null
+        <if test="dto.beginDate!=null and dto.endDate!=null">
+            DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+            AND #{dto.endDate}
+            AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+        </if>
+        <if test="dto.type!=null">
+            and i.type=#{dto.type}
+        </if>
+        <if test="dto.supplier!=null and dto.supplier!=''">
+            and im.supplier=#{dto.supplier}
+        </if>
+        <if test="dto.sample!=null and dto.sample!=''">
+            and im.name=#{dto.sample}
+        </if>
+        <if test="dto.code!=null and dto.code!=''">
+            and i.code=#{dto.code}
+        </if>
+        and i.code in
+        <foreach collection="list" item="l" open="(" close=")" separator="," >
+            #{l.code}
+        </foreach>
+        and im.name in
+        <foreach collection="list" item="l" open="(" close=")" separator=",">
+            #{l.name}
+        </foreach>
+    </select>
+    <select id="selectTestSamp" resultType="java.util.Map">
+        SELECT i.id,
+        i.type,
+        im.`name`,
+        im.supplier,
+        i.inspection_status inspectionStatus,
+        i.start_time startTime,
+        i.end_time endTime
+        FROM inspection i
+        INNER JOIN inspection_material im ON i.id = im.inspection_id
+        where (i.state = 1 AND i.inspection_status is NOT NULL and im.state=1)
+        <if test="dto.beginDate!=null and dto.endDate!=null">
+            DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+            AND #{dto.endDate}
+            AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
+        </if>
+        <if test="dto.type!=null">
+            and i.type=#{dto.type}
+        </if>
+        <if test="dto.supplier!=null and dto.supplier!=''">
+            and im.supplier=#{dto.supplier}
+        </if>
+        <if test="dto.sample!=null and dto.sample!=''">
+            and im.name=#{dto.sample}
+        </if>
+        <if test="dto.code!=null and dto.code!=''">
+            and i.code=#{dto.code}
+        </if>
+    </select>
+    <select id="getSampleOptions" resultType="java.util.Map">
+        SELECT
+            i.id,
+            i.type,
+            im.`name` name,
+            im.supplier,
+            i.inspection_status inspectionStatus,
+            i.start_time startTime,
+            i.end_time endTime,
+            i.`code`
+        FROM
+            inspection i
+                INNER JOIN inspection_material im ON i.id = im.inspection_id
+        WHERE
+            ( i.state = 1 AND i.inspection_status IS NOT NULL AND im.state = 1 )
+    </select>
+
+    <resultMap id="ImInfoMap" type="com.yuanchu.limslaboratory.pojo.ImInfo">
+        <result property="imId" column="imId"/>
+        <result property="iCode" column="iCode"/>
+        <result property="imName" column="imName"/>
+        <result property="startTime" column="startTime"/>
+        <result property="endTime" column="endTime"/>
+        <result property="inspectionStatus" column="inspectionStatus"/>
+        <collection property="iprInfos" ofType="iprInfo">
+            <result property="iprId" column="iprId"/>
+            <result property="iprName" column="iprName"/>
+            <result property="testState" column="testState"/>
+        </collection>
+    </resultMap>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3