From e7f7daae5d21ad2988cadd25b6987ca5e7ef8001 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期六, 09 九月 2023 09:51:20 +0800
Subject: [PATCH] 修改bug

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

diff --git a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
index 754f647..51f01da 100644
--- a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
+++ b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
@@ -11,9 +11,9 @@
         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 im.state=1)
         <if test="dto.beginDate!=null and dto.endDate!=null">
-            DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+            and 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>
@@ -23,5 +23,152 @@
         <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 im.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,
+        im.code imCode,
+        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">
+            and 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 im.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
+        <if test="dto.beginDate!=null and dto.endDate!=null">
+            and 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 im.code=#{dto.code}
+        </if>
+        and im.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 im.state=1)
+        <if test="dto.beginDate!=null and dto.endDate!=null">
+           and  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 im.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,
+            im.`code` code
+        FROM
+            inspection i
+                INNER JOIN inspection_material im ON i.id = im.inspection_id
+        WHERE
+            ( i.state = 1  AND im.state = 1 )
+    </select>
+
+    <resultMap id="ImInfoMap" type="com.yuanchu.limslaboratory.pojo.ImInfo">
+        <result property="imId" column="imId"/>
+        <result property="imCode" column="imCode"/>
+        <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