cuilei
6 天以前 b0ec9895cde2519bc085ac40acbeea89ae8b6f9d
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
package org.jeecg.modules.system.service;
 
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.model.MdcProductionTreeModel;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.system.vo.MdcProOptionsVo;
 
import java.util.List;
import java.util.Map;
 
/**
 * @Description: 产线表
 * @Author: liuS
 * @Date: 2023-03-23
 * @Version: V1.0
 */
public interface IMdcProductionService extends IService<MdcProduction> {
 
    /**
     * 查询所有产线信息,并分节点进行显示
     */
    List<MdcProductionTreeModel> queryTreeList();
 
    /**
     * 查询所有产线信息,并分节点进行显示(添加系统配置)
     */
    List<MdcProductionTreeModel> queryTreeListByConfig();
 
    /**
     * 查询所有产线信息,并分节点进行显示
     */
    List<MdcProductionTreeModel> queryTreeList(String ids);
 
    /**
     * 查询所有部门DepartId信息,并分节点进行显示
     */
    List<ProductionIdModel> queryProductionIdTreeList();
 
    /**
     * 根据关键字搜索相关的产线数据
     */
    List<MdcProductionTreeModel> searchByKeyWord(String keyWord);
 
    /**
     * 保存产线数据
     */
    void saveProductionData(MdcProduction mdcProduction);
 
    /**
     * 更新产线数据
     */
    boolean updateProductionDataById(MdcProduction mdcProduction);
 
    /**
     * 根据产线id删除并删除其可能存在的子级产线
     */
    boolean delete(String id);
 
    /**
     * 根据产线id批量删除并删除其可能存在的子级产线
     */
    void deleteBatchWithChildren(List<String> ids);
 
    /**
     * 获取下级产线
     */
    List<MdcProduction> queryProdByPid(String pid);
 
    /**
     * 递归查询所有子节点
     */
    List<MdcProduction> recursionChildrenByPid(String pid);
 
    /**
     * 根据用户id获取产线下拉树选项
     */
    List<ProductionIdModel> loadProductionTreeOptions(String userId);
 
    /**
     * 递归查询所有子节点
     */
    List<String> recursionChildren(String productionId);
 
    /**
     * 根据用户id和车间id获取用户拥有的车间id
     *
     * @param userId
     * @param productionId
     * @return
     */
    String findFirstProduction(String userId, String productionId);
 
    /**
     * 根据用户id查询用户工段权限
     */
    String findThreeProductionId(String userId);
 
    /**
     *  查询所有父节点和本节点名称
     * @param id
     * @return
     */
    List<String> findListParentTreeAll(String id);
 
    /**
     *  查询所有父节点名称
     * @param parentId
     * @param stringList
     * @return
     */
    List<String> findListParentTree(String parentId,List<String> stringList);
 
    /**
     * 获取用户所在的部门
     * @param userId
     * @return
     */
    Map<String, MdcProduction> getUserAssignedDepart(String userId);
 
    /**
     * 通过一组id获取部门
     * @param ids
     * @return
     */
    List<String> findAllProductionIds(List<String> ids);
 
    /**
     * 获取某个节点所有上级节点的id
     * @param parentId 父节点 id
     * @param idList 接收结果集
     * @return
     */
    List<String> findParentIdsForProduction(String parentId, List<String> idList);
 
    /**
     * 查询所有产线信息,并分节点进行显示
     */
    List<MdcProductionTreeModel> queryTreeListByMdc(String ids);
 
    /**
     * 查询所有产线信息,并分节点进行显示
     */
    List<MdcProductionTreeModel> queryTreeListByMdc();
 
    /**
     * 查询子节点
     * @param mdcProductionIds
     * @return
     */
    List<String> findChildren(List<String> mdcProductionIds);
 
    /**
     * 根据用户id获取产线(中心)或班组下拉选项
     * @param userId
     * @param productionId
     * @return
     */
    List<MdcProOptionsVo> loadProductionOptions(String userId, String productionId);
 
    List<MdcProduction> findMdcPros(String userId, String productionId);
 
    /**
     *
     * @param userId
     * @param productionId
     * @return
     */
    List<MdcProOptionsVo> loadTeamOptions(String userId, String productionId);
 
    /**
     *
     * @param userId
     * @param allProductionIds
     * @return
     */
    List<String> findProIdsByUId(String userId, List<String> allProductionIds);
 
    /**
     *
     * @param productionId
     * @return
     */
    List<String> findChildByProId(String productionId);
 
}