| | |
| | | "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="com.yuanchu.mom.mapper.StructureItemParameterMapper"> |
| | | <delete id="removeNoSample"> |
| | | delete from structure_item_parameter where sample like concat('%',#{sample},'%') |
| | | delete |
| | | from structure_item_parameter |
| | | where sample like concat('%', #{sample}, '%') |
| | | </delete> |
| | | <select id="selectItemParameterList" resultType="com.yuanchu.mom.pojo.StructureItemParameter"> |
| | | select id, |
| | | select * from (select A.id, |
| | | inspection_item, |
| | | inspection_item_en, |
| | | inspection_item_subclass, |
| | |
| | | inspection_item_type, |
| | | checkout_number, |
| | | section, |
| | | create_user, |
| | | update_user, |
| | | create_time, |
| | | update_time, |
| | | A.create_user, |
| | | A.update_user, |
| | | A.create_time, |
| | | A.update_time, |
| | | method, |
| | | man_day, |
| | | bsm, |
| | |
| | | ask, |
| | | ask_tell, |
| | | inspection_item_class, |
| | | inspection_item_class_en |
| | | from structure_item_parameter |
| | | inspection_item_class_en, |
| | | code |
| | | from (select *, |
| | | CASE |
| | | WHEN INSTR(sample, ',') > 0 THEN |
| | | SUBSTRING_INDEX(SUBSTRING_INDEX(sample, '","', 1), '"', -1) |
| | | when sample = '[""]' then null |
| | | when sample = '[]' then null |
| | | ELSE |
| | | TRIM(BOTH '["]' FROM SUBSTRING_INDEX(REPLACE(sample, '[["', ''), '"]]', 1)) |
| | | END AS samples |
| | | from structure_item_parameter) A |
| | | left join structure_test_object sto on samples = specimen_name |
| | | <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> |
| | | ${ew.customSqlSegment} |
| | | </if> |
| | | </if>)B |
| | | order by CASE |
| | | WHEN code IS NULL THEN 1 |
| | | ELSE 0 |
| | | END, |
| | | CAST(code AS UNSIGNED), |
| | | case when man_hour_group is NULL then 1 |
| | | when man_hour_group ='' then 1 else 0 end, |
| | | CASE |
| | | WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 如果以数字开头,则按照数字大小排序 |
| | | WHEN man_hour_group REGEXP '[0-9]+' THEN CAST(SUBSTRING(man_hour_group, 2)AS UNSIGNED) END -- 提取字母后面的数字部分 |
| | | ,id asc |
| | | </select> |
| | | |
| | | <resultMap id="getInsProductions" type="map"> |
| | | <result property="name" column="inspection_item"/> |
| | | <result property="name" column="sample"/> |
| | | <collection property="children" resultMap="seProInsListByIdmaps" javaType="List"/> |
| | | </resultMap> |
| | | <resultMap id="seProInsListByIdmaps" type="map"> |
| | | <result property="name" column="inspection_item"/> |
| | | <collection property="children" resultMap="seProInsListByIdmaps2" javaType="List"/> |
| | | </resultMap> |
| | | <resultMap id="seProInsListByIdmaps2" type="map"> |
| | | <id property="id" column="id"/> |
| | | <result property="name" column="subclass"/> |
| | | </resultMap> |
| | | <select id="getInsProduction" resultMap="getInsProductions"> |
| | | select id, inspection_item, |
| | | case when inspection_item_subclass='' then inspection_item |
| | | else inspection_item_subclass end as subclass |
| | | from structure_item_parameter |
| | | WITH expanded_sample AS ( |
| | | SELECT |
| | | id, |
| | | CASE |
| | | WHEN INSTR(sample, '","') > 0 THEN |
| | | SUBSTRING_INDEX(SUBSTRING_INDEX(sample, '","', 1), '"', -1) |
| | | when sample = '[]' then '*' |
| | | WHEN INSTR(sample, '"],["') > 0 THEN |
| | | TRIM(BOTH '["]' FROM SUBSTRING_INDEX(SUBSTRING_INDEX(sample, '"],["', 1), '"', -1)) |
| | | ELSE |
| | | TRIM(BOTH '["]' FROM SUBSTRING_INDEX(REPLACE(sample, '[["', ''), '"]]', 1)) |
| | | END |
| | | AS component1, |
| | | CASE |
| | | WHEN INSTR(sample, '"],["') > 0 THEN |
| | | TRIM(BOTH '["]' FROM SUBSTRING_INDEX(SUBSTRING_INDEX(sample, '"],["', -1), '"', 1)) |
| | | ELSE |
| | | NULL |
| | | END AS component2, |
| | | inspection_item, |
| | | CASE |
| | | WHEN inspection_item_subclass IS NULL THEN inspection_item |
| | | ELSE inspection_item_subclass |
| | | END AS subclass |
| | | FROM |
| | | structure_item_parameter |
| | | ) |
| | | SELECT |
| | | id, |
| | | CASE |
| | | WHEN component1 IS NOT NULL THEN component1 |
| | | ELSE '*' |
| | | END AS sample, |
| | | inspection_item, |
| | | subclass |
| | | FROM |
| | | expanded_sample |
| | | UNION ALL |
| | | SELECT |
| | | id, |
| | | component2 AS sample, |
| | | inspection_item, |
| | | subclass |
| | | FROM |
| | | expanded_sample |
| | | WHERE |
| | | component2 IS NOT NULL; |
| | | </select> |
| | | <select id="getItemTree" resultMap="itemDto"> |
| | | select sto.id sId,sto.specimen_name sName,p.id pId,p.name pName from structure_test_object sto |
| | | left join product p on p.object_id = sto.id |
| | | select sto.id sId, sto.specimen_name sName, p.id pId, p.name pName |
| | | from structure_test_object sto |
| | | left join product p on p.object_id = sto.id |
| | | </select> |
| | | |
| | | <resultMap id="itemDto" type="com.yuanchu.mom.dto.TestItemDto"> |