Fixiaobai
2023-08-18 aa423b168ac997db1b52cb4636498245f93a26a2
laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
@@ -40,8 +40,9 @@
        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, measure_person, create_Person, begin_Time, end_Time, planned_order_number, create_time
        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!=''">
@@ -58,6 +59,115 @@
            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"/>
@@ -67,6 +177,7 @@
        <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"/>