<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.ruoyi.basic.mapper.StandardTreeMapper">
|
<resultMap id="BaseResultMap" type="com.ruoyi.basic.pojo.StandardTree">
|
<id property="id" column="id" jdbcType="INTEGER"/>
|
<result property="factory" column="factory" jdbcType="VARCHAR"/>
|
<result property="laboratory" column="laboratory" jdbcType="VARCHAR"/>
|
<result property="sampleType" column="sample_type" jdbcType="VARCHAR"/>
|
<result property="sample" column="sample" jdbcType="VARCHAR"/>
|
<result property="model" column="model" jdbcType="VARCHAR"/>
|
<result property="createUser" column="create_user" jdbcType="INTEGER"/>
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
<result property="updateUser" column="update_user" jdbcType="INTEGER"/>
|
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
</resultMap>
|
|
<resultMap id="FactoryDto" type="com.ruoyi.basic.dto.FactoryDto">
|
<result property="label" column="factory"/>
|
<result property="value" column="factory"/>
|
<collection property="children" resultMap="LaboratoryDto"/>
|
</resultMap>
|
|
<resultMap id="LaboratoryDto" type="com.ruoyi.basic.dto.LaboratoryDto">
|
<result property="label" column="laboratory"/>
|
<result property="value" column="laboratory"/>
|
<collection property="children" resultMap="SampleTypeDto"/>
|
</resultMap>
|
|
<resultMap id="SampleTypeDto" type="com.ruoyi.basic.dto.SampleTypeDto">
|
<result property="label" column="sample_type"/>
|
<result property="value" column="sample_type"/>
|
<result property="sampleTypeId" column="sample_type_id"/>
|
<result property="sort" column="sort"/>
|
<result property="partNo" column="part_no"/>
|
<result property="sampleTypeEn" column="sample_type_en"/>
|
<collection property="children" resultMap="SampleDto"/>
|
</resultMap>
|
|
<resultMap id="SampleDto" type="com.ruoyi.basic.dto.SampleDto">
|
<result property="label" column="sample"/>
|
<result property="value" column="sample"/>
|
<result property="partNo" column="sample_part_no"/>
|
<result property="sampleEn" column="sample_en"/>
|
<collection property="children" resultMap="ModelDto"/>
|
</resultMap>
|
|
<resultMap id="ModelDto" type="com.ruoyi.basic.dto.ModelDto">
|
<result property="label" column="model"/>
|
<result property="value" column="model"/>
|
</resultMap>
|
|
<sql id="selectStandardTree">
|
sample sample2,
|
inspection_item,
|
inspection_item_en,
|
inspection_item_subclass,
|
inspection_item_subclass_en,
|
inspection_item_class,
|
inspection_item_class_en,
|
method,
|
son_laboratory,
|
unit,
|
ask_tell tell,
|
ask,
|
price,
|
man_hour,
|
man_hour_group,
|
man_day,
|
inspection_item_type,
|
inspection_value_type,
|
bsm,
|
template_id,
|
laboratory,
|
checkout_number,
|
section,
|
dic,
|
0 state,
|
#{model}
|
model,
|
#{sample}
|
sample,
|
#{trees}
|
tree,
|
id
|
structure_item_parameter_id,
|
radius_list,
|
rates
|
</sql>
|
|
<select id="selectStandardTreeList" resultMap="FactoryDto">
|
select '中天科技检测中心' factory,
|
l.laboratory_name laboratory,
|
sto.specimen_name sample_type,
|
p.name sample,
|
st.model,
|
sto.code,
|
sto.id sample_type_id,
|
sto.sort,
|
sto.specimen_name_en sample_type_en,
|
p.name_en sample_en
|
from laboratory l
|
left join structure_test_object sto on sto.laboratory_id = l.id
|
left join product p on p.object_id = sto.id
|
left join standard_tree st on st.sample_type = sto.specimen_name
|
and st.sample = p.name
|
order by l.id, CAST(sto.code AS DECIMAL), p.id, ISNULL(st.id), st.id
|
</select>
|
|
<select id="selectStandardProductById" resultType="com.ruoyi.basic.pojo.StandardProductList">
|
select inspection_item,
|
inspection_item_subclass,
|
laboratory,
|
son_laboratory,
|
unit,
|
price,
|
man_hour,
|
man_hour_group,
|
inspection_item_type,
|
inspection_value_type,
|
checkout_number,
|
section,
|
method,
|
man_day,
|
bsm,
|
template_id
|
from structure_item_parameter
|
where id = #{id}
|
</select>
|
<select id="getStandardProductListBySample" resultType="com.ruoyi.basic.pojo.StandardProductList">
|
select inspection_item,
|
inspection_item_subclass,
|
laboratory,
|
son_laboratory,
|
unit,
|
price,
|
man_hour,
|
man_hour_group,
|
inspection_item_type,
|
inspection_value_type,
|
checkout_number,
|
section,
|
method,
|
man_day,
|
sample,
|
bsm,
|
template_id,
|
dic,
|
ask,
|
ask_tell as tell
|
from structure_item_parameter sp
|
where sp.sample = #{sampleType}
|
or sp.sample = ''
|
or sp.sample = '[]'
|
</select>
|
<select id="getStandardMethodListBySample" resultType="com.ruoyi.basic.pojo.StandardMethodList">
|
select sm.code,sm.name,sm.remark from standard_method sm
|
left join structure_test_object sto on sm.structure_test_object_id = sto.id
|
where is_use = 1
|
and is_product = 1
|
<if test="sampleType != null">
|
and sto.specimen_name = #{sampleType}
|
</if>
|
</select>
|
<select id="selectStandardTreeList2" resultType="com.ruoyi.basic.pojo.StandardTree">
|
select '中天科技检测中心' factory,
|
l.laboratory_name laboratory,
|
sto.specimen_name sample_type,
|
p.name sample
|
from laboratory l
|
left join structure_test_object sto on sto.laboratory_id = l.id
|
left join product p on p.object_id = sto.id
|
left join standard_tree st on st.laboratory = l.laboratory_name
|
and st.sample_type = sto.specimen_name
|
and st.sample = p.name
|
where sto.specimen_name = #{sampleType}
|
group by sto.specimen_name
|
</select>
|
<select id="selectStandardProductListByTree" resultType="com.ruoyi.basic.pojo.StandardProductList">
|
select <include refid="selectStandardTree"/>
|
from structure_item_parameter
|
where (
|
sample is NULL
|
OR sample = ''
|
or sample = '[]'
|
OR sample LIKE CONCAT('%[', #{tree}, ']%')
|
)
|
and (laboratory is null
|
or laboratory = ''
|
or laboratory = #{laboratory})
|
order by inspection_item_class, inspection_item, id asc
|
</select>
|
|
<select id="selectStandardProductListByTree2" resultType="com.ruoyi.basic.pojo.StandardProductList">
|
select <include refid="selectStandardTree"/>
|
from structure_item_parameter
|
where sample LIKE CONCAT('%[', #{tree}, ']%')
|
and (laboratory is null
|
or laboratory = ''
|
or laboratory = #{laboratory})
|
order by inspection_item_class, inspection_item, id asc
|
</select>
|
|
<select id="getStandardTree2" resultMap="SampleTypeDto">
|
select sto.specimen_name sample_type,
|
p.name sample,
|
st.model
|
from structure_test_object sto
|
left join product p on p.object_id = sto.id
|
left join standard_tree st on st.sample_type = sto.specimen_name
|
and st.sample = p.name
|
</select>
|
|
<select id="getStandardTree3" resultType="com.ruoyi.basic.dto.SampleDto">
|
select model label,
|
model value
|
from standard_tree
|
where sample_type = #{sampleType}
|
and sample is null
|
</select>
|
|
<select id="getLaboratory" resultType="java.lang.String">
|
select l.laboratory_name
|
from structure_test_object sto
|
left join laboratory l on sto.laboratory_id = l.id
|
where sto.specimen_name = #{str}
|
</select>
|
<select id="getStructureItemParameterId" resultType="java.lang.Integer">
|
select id from structure_item_parameter
|
where sample like concat('%', #{sampleType}, '%')
|
and inspection_item = #{item}
|
<if test="itemChild != null and itemChild != ''">
|
and inspection_item_subclass = #{itemChild}
|
</if>
|
<if test="inspectionItemClass != null and inspectionItemClass != ''">
|
and inspection_item_class = #{inspectionItemClass}
|
</if>
|
<if test="itemChild == null or itemChild == ''">
|
and (inspection_item_subclass is null or inspection_item_subclass = '')
|
</if>
|
</select>
|
<select id="selectPList" resultType="com.ruoyi.basic.dto.ProductDto">
|
select p.name
|
from structure_test_object sto
|
left join product p on p.object_id = sto.id
|
where sto.specimen_name = #{name}
|
order by p.id
|
</select>
|
<select id="selSample" resultType="java.lang.String">
|
select name
|
from product
|
where name = #{name}
|
</select>
|
<select id="selectStandardTreeListByPartNo" resultMap="FactoryDto">
|
select '中天科技检测中心' factory,
|
l.laboratory_name laboratory,
|
sto.specimen_name sample_type,
|
p.name sample,
|
st.model,
|
CASE
|
WHEN p.id = (SELECT pp.product_id
|
FROM product_part pp
|
WHERE pp.part_no = #{partNo})
|
THEN #{partNo}
|
ELSE NULL
|
END AS sample_part_no,
|
CASE
|
WHEN sto.id = (SELECT sto.test_object_id
|
FROM structure_test_object_part sto
|
WHERE sto.part_no = #{partNo})
|
THEN #{partNo}
|
ELSE NULL
|
END AS part_no
|
from laboratory l
|
left join structure_test_object sto on sto.laboratory_id = l.id
|
left join product p on p.object_id = sto.id
|
left join standard_tree st on st.sample_type = sto.specimen_name
|
and st.sample = p.name
|
where (p.id = (select pp.product_id
|
from product_part pp
|
where pp.part_no = #{partNo})
|
or sto.id = (select sto.test_object_id
|
from structure_test_object_part sto
|
where sto.part_no = #{partNo}))
|
order by l.id, CAST(sto.code AS DECIMAL), p.id, ISNULL(st.id), st.id
|
</select>
|
</mapper>
|