From c968f678ea03f7fd0a9071b63e60c144f63da380 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期一, 21 八月 2023 09:39:01 +0800
Subject: [PATCH] LIMS管理系统框架-开发8-21
---
laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml | 183 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 179 insertions(+), 4 deletions(-)
diff --git a/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml b/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
index ca6ab6b..f1af9c6 100644
--- a/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
@@ -3,9 +3,184 @@
<mapper namespace="com.yuanchu.limslaboratory.mapper.MeteringPlanMapper">
<select id="pagingQueryOfMeasurementLedger" resultType="map">
- SELECT i.`equipment_code`, i.`equipment_name`, i.`specifications_models`, m.`create_time`, m.`uncertainty`,
- m.`end_date`, i.`term_validity`, i.`storage_place`, i.`conditions`
- FROM instrument i, metrical_information m
- WHERE i.`id` = m.`instrument_id`
+ SELECT
+ i.`equipment_code` equipmentCode,
+ i.`equipment_name` equipmentName,
+ m.measurement_unit measurementUnit,
+ i.measuring_range measuringRange,
+ i.term_validity termValidity,
+ m.result result,
+ m.end_date endDate,
+ u.NAME name ,
+ m.`create_time` createTime,
+ m.code code
+ FROM
+ metrical_information m
+ LEFT JOIN `user` u ON u.id = m.user_id
+ LEFT JOIN instrument i ON i.`id` = m.`instrument_id`
+ WHERE 1=1
+ and (m.state=1 and i.state=1 and m.result is not null)
+ <if test="dto.code!=null and dto.code!=''">
+ and i.`equipment_code` like concat('%',#{dto.code},'%')
+ </if>
+ <if test="dto.name!=null and dto.name!=''">
+ and i.`equipment_name` like concat('%',#{dto.name},'%')
+ </if>
+ <if test="dto.name!=null and dto.name!=''">
+ and i.measurement_unit like concat('%',#{dto.unit},'%')
+ </if>
</select>
+
+ <select id="limitConditionMeteringPlan" resultMap="MeteringPlanAndInfoMap">
+ SELECT p.id id,
+ u.`name` createName,
+ p.planned_order_number plannedOrderNumber,
+ p.begin_time beginTime,
+ p.end_time endTime,
+ IF(IFNULL(i.result, 0) > 0, 1, 0) status,
+ (SELECT name FROM `user` u WHERE p.measure_person = u.id) measureName,
+ i.`code` iCode,
+ p.unit unit,
+ p.create_time createTime
+ FROM (SELECT id, unit ,measure_person, create_Person, begin_Time, end_Time, planned_order_number, create_time
+ from metering_plan
+ where 1=1
+ <if test="dto.plannedOrderNumber!=null and dto.plannedOrderNumber!=''">
+ and planned_order_number=#{plannedOrderNumber}
+ </if>
+ LIMIT #{limitPage.start},#{limitPage.end}) p
+ LEFT JOIN metrical_information i ON p.id = i.plan
+ LEFT JOIN `user` u ON p.create_Person = u.id
+ where 1 = 1
+ </select>
+ <select id="getTotal" resultType="java.util.Map">
+ select count(id) num from metering_plan where 1=1
+ <if test="dto.plannedOrderNumber!=null and dto.plannedOrderNumber!=''">
+ and planned_order_number=#{plannedOrderNumber}
+ </if>
+ </select>
+ <select id="getPlanMeasureInstrument"
+ resultMap="measureInsAndPlanMap">
+ SELECT m.planned_order_number plannedOrderNumber,
+ (SELECT NAME FROM USER WHERE id = m.measure_person) measureName,
+ m.begin_time beginTime,
+ m.end_time endTime,
+ m.unit unit,
+ u.`name` createName,
+ m.create_time createTime,
+ im.equipment_code equipmentCode,
+ im.equipment_name equipmentName,
+ im.measuring_range measuringRange,
+ im.term_validity termValidity,
+ im.result result,
+ im.end_date endDate,
+ im.imName imName,
+ im.create_time imCreateTime,
+ im.measurement_unit imUnit,
+ im.`code` imCode
+ FROM metering_plan m
+ LEFT JOIN `user` u ON m.create_Person = u.id
+ LEFT JOIN (
+ SELECT i.equipment_code,
+ i.equipment_name,
+ i.measuring_range,
+ i.term_validity,
+ im.result,
+ im.end_date,
+ (SELECT NAME FROM USER WHERE id = im.user_id) imName,
+ im.create_time,
+ im.measurement_unit,
+ im.`code`,
+ im.plan
+ FROM metrical_information im,
+ metering_plan m,
+ instrument i
+ WHERE im.instrument_id = i.id
+ and m.id = im.plan
+ and im.plan = #{id}
+ LIMIT #{limitPage.start}
+ , #{limitPage.end}
+ ) im ON m.id = im.plan
+ WHERE 1 = 1
+ AND m.id = #{id}
+ </select>
+ <select id="limitGetPlanMeasureInstrument" resultMap="MetricalInfoAndInsMap">
+ SELECT i.equipment_code equipmentCode,
+ i.equipment_name equipmentName,
+ i.measuring_range measuringRange,
+ i.term_validity termValidity,
+ im.result result,
+ im.end_date endDate,
+ (SELECT NAME FROM USER WHERE id = im.user_id) imName,
+ im.create_time imCreateTime,
+ im.measurement_unit imUnit,
+ im.`code` imCode
+ FROM metrical_information im,
+ metering_plan m,
+ instrument i
+ WHERE im.instrument_id = i.id
+ and m.id = im.plan
+ and im.plan = #{id} LIMIT #{limitPage.start}
+ , #{limitPage.end}
+ </select>
+ <select id="countPlanMeasurIns" resultType="java.util.Map">
+ SELECT count(im.id) total
+ FROM metrical_information im,
+ metering_plan m,
+ instrument i
+ WHERE im.instrument_id = i.id
+ and m.id = im.plan
+ and im.plan = #{id}
+ </select>
+
+ <resultMap id="MetricalInfoAndInsMap" type="MetricalInfoAndIns">
+ <result property="code" column="imCode"/>
+ <result property="measurementUnit" column="imUnit"/>
+ <result property="imCreateTime" column="imCreateTime"/>
+ <result property="measurementName" column="imName"/>
+ <result property="endDate" column="endDate"/>
+ <result property="result" column="result"/>
+ <result property="termValidity" column="termValidity"/>
+ <result property="measuringRange" column="measuringRange"/>
+ <result property="equipmentName" column="equipmentName"/>
+ <result property="equipmentCode" column="equipmentCode"/>
+ </resultMap>
+
+ <resultMap id="measureInsAndPlanMap" type="meteringPlanAndInfoAndIns">
+ <result property="id" column="id"/>
+ <result property="createPerson" column="createName"/>
+ <result property="beginTime" column="beginTime"/>
+ <result property="endTime" column="endTime"/>
+ <result property="plannedOrderNumber" column="plannedOrderNumber"/>
+ <result property="measurePerson" column="measureName"/>
+ <result property="createTime" column="createTime"/>
+ <result property="unit" column="unit"/>
+ <collection property="metricalInfoAndInsList" ofType="metricalInfoAndIns">
+ <result property="code" column="imCode"/>
+ <result property="measurementUnit" column="imUnit"/>
+ <result property="imCreateTime" column="imCreateTime"/>
+ <result property="measurementName" column="imName"/>
+ <result property="endDate" column="endDate"/>
+ <result property="result" column="result"/>
+ <result property="termValidity" column="termValidity"/>
+ <result property="measuringRange" column="measuringRange"/>
+ <result property="equipmentName" column="equipmentName"/>
+ <result property="equipmentCode" column="equipmentCode"/>
+ </collection>
+ </resultMap>
+
+ <resultMap id="MeteringPlanAndInfoMap" type="meteringPlanAndInfo">
+ <result property="id" column="id"/>
+ <result property="createPerson" column="createName"/>
+ <result property="beginTime" column="beginTime"/>
+ <result property="endTime" column="endTime"/>
+ <result property="plannedOrderNumber" column="plannedOrderNumber"/>
+ <result property="measurePerson" column="measureName"/>
+ <result property="createTime" column="createTime"/>
+ <result property="unit" column="unit"/>
+ <collection property="resultList" ofType="MetricalInformation">
+ <result property="code" column="iCode"/>
+ <result property="result" column="status"/>
+ </collection>
+ </resultMap>
</mapper>
--
Gitblit v1.9.3