ludc
2023-03-27 82a410d9ec7a5d15eed27e9990cff371feab43a1
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
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
package org.springblade.code.controller;
 
import com.vci.mdm.dto.*;
import com.vci.mdm.model.*;
import com.vci.mdm.pagemodel.*;
import com.vci.mdm.service.CodeDuckingServiceI;
import com.vci.mdm.service.CodeDuckingSyncServiceI;
import com.vci.mdm.service.DockingPreApplyDataServiceI;
import com.vci.mdm.service.DockingPreAttrMappingSeviceI;
import com.vci.starter.web.annotation.controller.VciUnCheckRight;
import com.vci.starter.web.constant.QueryOptionConstant;
import com.vci.starter.web.pagemodel.BaseQueryObject;
import com.vci.starter.web.pagemodel.BaseResult;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.util.ControllerUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;
 
import static com.vci.mdm.constant.MdmDuckingConstant.DATA_LOGE_OUT;
 
 
/**
 * 主数据编码通用集成控制器
 *
 * @author wangyi
 * @date 2022-03-20
 */
@RestController
@RequestMapping("/ducking")
class CodeDuckingController {
 
    /**
     * 集成服务
     */
    @Autowired
    private CodeDuckingServiceI codeDuckingServiceI;
 
    /**
     * 集成服务
     */
    @Autowired
    private CodeDuckingSyncServiceI codeDuckingSyncServiceI;
    /***
     * 集成属性操作层
     */
   @Autowired
    private DockingPreAttrMappingSeviceI dockingPreAttrMappingSeviceI;
 
   /**
     * 预申请接收集成数据
     */
    @Autowired
    private DockingPreApplyDataServiceI dockingPreApplyDataServiceI;
 
    public CodeDuckingController() {
    }
 
 
 
 
    /**
     * 修改 主题库分类
     * @param dockingPreApplyDataDTO 主题库分类数据传输对象
     * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
     */
    @PutMapping("/setDataClassId")
    public BaseResult<List<DockingPreApplyDataVO>> batchSetDataClassId(@RequestBody DockingPreApplyDataDTO dockingPreApplyDataDTO){
        List<DockingPreApplyDataVO> dataDTOList=  dockingPreApplyDataServiceI.batchSetDataClassId(dockingPreApplyDataDTO);
        return BaseResult.success(dataDTOList);
    }
 
    /***
     * 根据选择额预申请的数据勾选数据
     * @param codeClassifyOid
     * @param templateOid
     * @param btmType
     * @param dataOids
     * @return
     */
    @GetMapping("/gridApplyData")
    public DataGrid<Map<String,String>> gridApplyData(String codeClassifyOid,String templateOid,String btmType,String dataOids){
        return  dockingPreApplyDataServiceI.gridApplyData(codeClassifyOid,templateOid,btmType,dataOids);
    }
 
 
    /***
     * 根据选择额预申请的数据勾选数据
     *
     * @return
     */
    @PutMapping("/batchApplyDatas")
    public BaseResult batchApplyDatas(@RequestBody List<CodeOrderDTO> orderDTOs){
        return dockingPreApplyDataServiceI.batchApplyDatas(orderDTOs);
    }
 
    /**
     * 集成预申请列表-已反码
     * @param baseQueryObject
     * ducking/gridPreDataFinish
     * @return
     */
    @GetMapping("/gridPreDataFinishNum")
    public DataGrid<DockingPreApplyDataVO> gridDockingPreApplyDataFinishNum(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        baseQueryObject.addCondition("num", QueryOptionConstant.ISNOTNULL);
        DataGrid<DockingPreApplyDataVO> dockingPreApplyDataVODataGrid = dockingPreApplyDataServiceI.gridDockingPreApplyData(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
        return dockingPreApplyDataVODataGrid;
    }
 
    /**
     * 集成预申请列表-已处理
     * @param baseQueryObject
     * ducking/gridPreDataFinish
     * @return
     */
    @GetMapping("/gridPreDataFinish")
    public DataGrid<DockingPreApplyDataVO> gridDockingPreApplyDataFinish(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        baseQueryObject.addCondition("classifyoid", QueryOptionConstant.ISNOTNULL);
        DataGrid<DockingPreApplyDataVO> dockingPreApplyDataVODataGrid = dockingPreApplyDataServiceI.gridDockingPreApplyData(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
        return dockingPreApplyDataVODataGrid;
    }
 
    /**
     * 集成预申请列表-未完成
     * @param baseQueryObject
     * ducking/gridPreDataUnFinish
     * @return
     */
    @GetMapping("/gridPreDataUnFinish")
    public DataGrid<DockingPreApplyDataVO> gridPreDataUnFinish(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        baseQueryObject.addCondition("num", "null");
        return dockingPreApplyDataServiceI.gridDockingPreApplyData(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
 
    /**
     * 批量处理预申请编码
     * 必须要有分类oid和dataoid
     * @return
     */
    @PostMapping("/applyData")
    public BaseResult applyData(@RequestBody List<PreApplyCodeOrderDTO> preApplyCodeOrderDTOList){
        return dockingPreApplyDataServiceI.applyData(preApplyCodeOrderDTOList);
    }
 
    /**
     * 集成预申请列表-查询数据详细信息
     * @param dockingPreApplyDataDTO
     * @return
     */
    @GetMapping("/datainfo")
    @VciUnCheckRight
    public BaseResult datainfo(DockingPreApplyDataDTO dockingPreApplyDataDTO){
        return dockingPreApplyDataServiceI.getDataInfoMap(dockingPreApplyDataDTO);
    }
 
    /**
     * data列表
     * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成的系统信息显示对象列表
     */
    @GetMapping("/gridData")
    public DataGrid<DockingDataDO> gridData(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        return codeDuckingServiceI.gridData(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
 
    /**
     * data列表
     * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成的系统信息显示对象列表
     */
    @GetMapping("/gridTask")
    public DataGrid<DockingTaskDO> gridTask(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        return codeDuckingServiceI.gridTask(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
 
    /**
     * 推送数据集成日志列表
     * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等
     * @return 集成日志显示对象列表
     */
    @GetMapping("/gridLoge")
    public DataGrid<DockingLogeDO> gridLoge(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
            Map<String, String>  queryMap = baseQueryObject.getConditionMap();
            queryMap.put("type",DATA_LOGE_OUT);
        }
        return codeDuckingServiceI.gridLoge(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
 
    /**
     * 接口param列表
     * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等
     * @return 集成日志显示对象列表
     */
    @GetMapping("/gridHeader")
    public DataGrid<SysIntHeaderDO> gridParam(BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
            Map<String, String>  queryMap = baseQueryObject.getConditionMap();
            queryMap.put("type",DATA_LOGE_OUT);
        }
        return codeDuckingServiceI.gridHeader(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
    /**
     *批量处理
     * 必须要有分类oid和dataoid
     * @return
     */
    @PostMapping("/sendData")
    public  BaseResult sendData(String oid){
 
        return codeDuckingSyncServiceI.sendData(oid);
    }
 
    /***
     * 初始化属性配置组件
     * @param sourceClsfId 分类oid
     * @param type  //1:无人机;2:420
     * @param templateOid 模板oid,多个以,分开的
     * @param baseQueryObject //查询对象
     * @return
     */
    @GetMapping("/gridAttrMapping")
    public DataGrid<DockingPreAttrMappingVO> gridAttrMappings(String sourceClsfId,String templateOid,int type, BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
        return dockingPreAttrMappingSeviceI.gridAttrMappings(sourceClsfId,type,baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
 
    /***
     * 属性取值范围获取
     * @param attrOid 属性oid
     * @param type //1:无人机;2:420
     * @param baseQueryObject /查询对象
     * @return
     */
    @GetMapping("/gridAttrRanges")
    public DataGrid<DockingPreAttrRangeVO> gridAttrRanges(String attrOid,int type,BaseQueryObject baseQueryObject){
        if(baseQueryObject == null){
            baseQueryObject = new BaseQueryObject();
        }
         return dockingPreAttrMappingSeviceI.gridAttrRanges(attrOid,type,baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper());
    }
    /**
     * 保存属性映射配置组件
     * @param dockingPreAttrMappingDTOS 属性映射配置数据传输对象
     * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
     */
    @PostMapping( "/batchAddSave")
    public BaseResult<List<DockingPreAttrMappingVO>> batchSave(@RequestBody List<DockingPreAttrMappingDTO> dockingPreAttrMappingDTOS){
       List<DockingPreAttrMappingVO> dockingPreAttrRangeVOS= dockingPreAttrMappingSeviceI.batchAddSave(dockingPreAttrMappingDTOS);
        return BaseResult.success(dockingPreAttrRangeVOS);
    }
 
    /**
     * 下载错误的文件信息
     * @param uuid 唯一标识
     * @param response 响应对象
     * @throws IOException 抛出异常
     */
    @GetMapping("/downloadErrorFile")
    public void downloadErrorFile(String uuid, HttpServletResponse response) throws IOException {
        ControllerUtil.downloadErrorFile(response,uuid);
    }
}