cuijian
2023-08-19 bdd0875d4b13a3f1ef472f64d4b6a95e0ef64b22
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
119
120
121
122
123
124
125
126
<?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="org.jeecg.modules.base.mapper.EnterpriseMapper">
    <select id="getEnterpriseVersionTree" resultType="org.jeecg.common.system.vo.SelectTreeModel">
        select
            id as "key",
            name as "title",
            parent_id as parentId,
            code as value
            from mom_base_enterprise
            where parent_id = #{pid} and version=#{version}
            and del_flag=0
    </select>
    <select id="getAllVersion" resultType="Integer">
        select
        version
        from mom_base_enterprise
        where del_flag = 0;
    </select>
    <select id="getEnterpriseListByIds" resultType="Map">
        select
        t1.id id,
        t1.code code,
        t1.name name,
        t1.version version,
        t1.create_by createBy,
        t1.create_time createTime,
        t1.update_by updateBy,
        t1.update_time updateTime,
        t1.remark remark,
        t1.status status,
        t2.name parentName,
        t3.version_status versionStatus
        from mom_base_enterprise t1
        left join (select * from mom_sys_data_version where del_flag=0) t3 on t1.data_version_id = t3.id
        left join (select * from mom_base_enterprise where del_flag=0) t2 on t1.parent_id = t2.id
        where t1.id in
              (
                  select id from (
                                     select t4.id,
                                            if(find_in_set(parent_id, @pids) > 0, @pids := concat(@pids, ',', id), -1) as ischild
                                     from (
                                              select id,parent_id from mom_base_enterprise where del_flag = 0
                                          ) t4,
                                          (select @pids := #{parentId}) t5
                                 ) t6 where ischild != -1)
        and t1.version = #{version}
        and t1.del_flag = 0
    </select>
    <select id="getAllChildrenIdByParentId" resultType="String">
        select
               id
        from  mom_base_enterprise
        where parent_id = #{parentId}
          and del_flag = 0
    </select>
    <select id="getEnterpriseList" resultType="Map">
        select
        t1.id id,
        t1.code code,
        t1.name name,
        t1.version version,
        t2.version_status versionStatus
        from mom_base_enterprise t1
                 left join (select * from mom_sys_data_version where business_type='集团架构' and del_flag=0) t2
                           on t1.data_version_id = t2.id
        where t1.del_flag=0
        and t2.version_status in('2','3')
        order by t1.version asc
    </select>
    <select id="getUsableVersion" resultType="Integer">
        select
           t1.version usableVersion
        from mom_base_enterprise t1
                 left join (select * from mom_sys_data_version where business_type='集团架构' and del_flag=0) t2
                           on t1.data_version_id = t2.id
        where t2.version_status='2'
        and t1.del_flag=0
    </select>
    <select id="getLastUsableList" resultType="org.jeecg.modules.base.entity.Enterprise">
        select
            t1.id id,
            t1.code code,
            t1.name name,
            t1.parent_id parentId,
            t1.remark remark,
            t1.version version,
            t1.data_version_id dataVersionId,
            t1.status status,
            t1.create_by createBy,
            t1.create_time createTime,
            t1.update_by  updateBy,
            t1.update_time updateTime
        from
            mom_base_enterprise t1
        left join
            (select * from  mom_sys_data_version where business_type='集团架构' and del_flag=0) t2
        on t1.data_version_id = t2.id
        where t1.del_flag = 0
        and
            t2.is_last_usable='1'
    </select>
    <select id="getUsableList" resultType="org.jeecg.modules.base.entity.Enterprise">
        select
            t1.id id,
            t1.code code,
            t1.name name,
            t1.parent_id parentId,
            t1.remark remark,
            t1.version version,
            t1.data_version_id dataVersionId,
            t1.status status,
            t1.create_by createBy,
            t1.create_time createTime,
            t1.update_by  updateBy,
            t1.update_time updateTime
        from mom_base_enterprise t1
                 left join (select * from mom_sys_data_version where business_type='集团架构' and del_flag=0) t2
                           on t1.data_version_id = t2.id
        where t2.version_status='2'
        and t1.del_flag=0
    </select>
    <select id="getUsableIdList" resultType="String">
        select business_id as id from mom_sys_data_version where business_type='集团架构' and version_status='2' and del_flag=0
    </select>
</mapper>