zss
2025-03-05 578bfcb3f58c5458d2c60fe37c3e56ebcda98e18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<?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.StandardProductListMapper">
 
    <resultMap id="BaseResultMap" type="com.ruoyi.basic.pojo.StandardProductList">
            <id property="id" column="id" jdbcType="INTEGER"/>
            <result property="inspectionItem" column="inspection_item" jdbcType="VARCHAR"/>
            <result property="inspectionItemSubclass" column="inspection_item_subclass" jdbcType="VARCHAR"/>
            <result property="laboratory" column="laboratory" jdbcType="VARCHAR"/>
            <result property="unit" column="unit" jdbcType="VARCHAR"/>
            <result property="price" column="price" jdbcType="DECIMAL"/>
            <result property="manHour" column="man_hour" jdbcType="INTEGER"/>
            <result property="manHourGroup" column="man_hour_group" jdbcType="VARCHAR"/>
            <result property="inspectionItemType" column="inspection_item_type" jdbcType="VARCHAR"/>
            <result property="inspectionValueType" column="inspection_value_type" jdbcType="VARCHAR"/>
            <result property="checkoutNumber" column="checkout_number" jdbcType="INTEGER"/>
            <result property="section" column="section" jdbcType="VARCHAR"/>
            <result property="method" column="method" jdbcType="VARCHAR"/>
            <result property="manDay" column="man_day" jdbcType="INTEGER"/>
            <result property="bsm" column="bsm" jdbcType="VARCHAR"/>
            <result property="ask" column="ask" jdbcType="VARCHAR"/>
            <result property="standardMethodListId" column="standard_method_list_id" jdbcType="INTEGER"/>
            <result property="createUser" column="create_user" jdbcType="INTEGER"/>
            <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
    </resultMap>
    <select id="standardProductListIPage" resultType="com.ruoyi.basic.pojo.StandardProductList">
        select spl.* from standard_product_list spl
        left join product p on spl.sample = p.name
        where standard_method_list_id = #{id}
        and tree like concat('%',#{tree},'%')
        <if test="laboratory != ''">
            and son_laboratory = #{laboratory}
        </if>
        <if test="insItem != ''">
            and inspection_item = #{insItem}
        </if>
        <if test="insItems != ''">
            and inspection_item_subclass = #{insItems}
        </if>
        order by p.id
        group by spl.id
    </select>
    <select id="getOne" resultType="com.ruoyi.basic.pojo.StandardProductList">
        select * from standard_product_list
        where standard_method_list_id = #{standardMethodListId}
        and inspection_item = #{inspectionItem}
        <if test="sample!=null">
            and sample = #{sample}
        </if>
        <if test="inspectionItemSubclass!=null">
            and inspection_item_subclass = #{inspectionItemSubclass}
        </if>
        <if test="inspectionItemSubclass == null">
            and (inspection_item_subclass is null or inspection_item_subclass = '')
        </if>
        <if test="model!=null">
            and model = #{model}
        </if>
        <if test="inspectionItemClass != null and inspectionItemClass != ''">
            and inspection_item_class = #{inspectionItemClass}
        </if>
    </select>
    <select id="selectDetail" resultType="com.ruoyi.basic.pojo.StandardProductList">
        select * from standard_product_list
        where standard_method_list_id = #{standardMethodListId}
        and state =#{state}
        and model=#{model}
        <if test="sampleType != null and sampleType != ''">
            and sample_type =#{sampleType}
        </if>
        <if test="sample != null and sample != ''">
            and sample =#{sample}
        </if>
            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>
    <select id="selectDetail2" resultType="com.ruoyi.basic.pojo.StandardProductList">
        select * from standard_product_list
        where standard_method_list_id = #{standardMethodListId}
          and state =#{state}
          and tree =#{tree}
        order by    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>
 
 
    <select id="getStandardProductByInsProduct" resultType="com.ruoyi.basic.vo.StandardProductVO">
        select
            CASE
                WHEN man_hour is null or man_hour='' THEN '0'
                ELSE man_hour
                END AS man_hour,
            man_hour_group,
            section
        from standard_product_list
        where (laboratory = #{laboratory} or laboratory is null or laboratory='')
          and sample_type = #{sampleType}
          and (sample = #{sample} or sample is null or sample='')
          and (model = #{model} or model is null or model='')
          and inspection_item=#{inspectionItem}
          and (inspection_item_subclass=#{inspectionItemSubclass} or inspection_item_subclass is null or inspection_item_subclass='')
          and (son_laboratory = #{sonLaboratory} or son_laboratory is null or son_laboratory='')
          and standard_method_list_id=#{standardMethodListId}
          and state=1
    </select>
</mapper>