package com.vci.ubcs.code.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.vci.ubcs.code.dto.DockingSystemConfigDTO; import com.vci.ubcs.code.dto.DockingSystemDTO; import com.vci.ubcs.code.dto.UpdateSysInfoStatusDTO; import com.vci.ubcs.code.entity.*; import com.vci.ubcs.code.service.*; import com.vci.ubcs.code.vo.pagemodel.*; import com.vci.ubcs.code.wrapper.*; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.util.UBCSSqlKeyword; import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; /** * 码段基础信息控制器 * * @author xiejun * @date 2023-05-31 */ @RestController @AllArgsConstructor @RequestMapping("/dockingManagement") @Api(value = "接口管理", tags = "编码相关接口管理信息") public class DockingManagementController { /*** * 集成系统管理服务 */ private final IDockingSystemService dockingSystemService; /*** * 集成接口配置服务 */ private final IDockingSystemConfigService dockingSystemConfigService; /*** * 待集管理配置服务 */ private final IDokingSysManaentService dokingSysManaentService; /*** * 同步集成服务 */ private final ICodeDuckingSyncService codeDuckingSyncService; /*@Value("${erp.item.btmName:XHDH}") private String ERP_ITEM_BTMNAME;*/ /**系统集成的系统信息列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 *@return 系统集成的系统信息显示对象列表 */ @GetMapping("/gridDockingSystem") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "condtionMap") public R> page(BaseQueryObject queryObject) { Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages = dockingSystemService.page(Condition.getPage(query),UBCSSqlKeyword.buildConditionByMapString(condtionMap)); return R.data(DockingSystemWrapper.build().pageVO(pages)); } /** * 增加 系统集成的系统信息 * @param dockingSystemDTO 系统集成的系统信息数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PostMapping( "/addSaveDockingSystem") public R addSaveDockingSystem(@RequestBody DockingSystemDTO dockingSystemDTO){ boolean res= dockingSystemService.addSave(dockingSystemDTO); return R.status(res); } /** * 修改 系统集成的系统信息 * @param dockingSystemDTO 系统集成的系统信息数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PutMapping("/editSaveDockingSystem") public R editSaveDockingSystem(@RequestBody DockingSystemDTO dockingSystemDTO){ DockingSystemVO dockingSystemVO = dockingSystemService.editSave(dockingSystemDTO); return R.data(dockingSystemVO); } /** * 删除系统集成的系统信息 * @param oids 系统集成的系统信息数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 */ @DeleteMapping( "/deleteSystemsById") public R deleteSystemsById( String oids) { try { return R.status(dockingSystemService.deleteDataById(oids)); }catch (VciBaseException e){ R.fail(e.getMessage()); } return R.success("操作成功"); } /** * 系统集成基础信息列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 系统集成基础信息显示对象列表 */ @GetMapping("/gridSystemConfig") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "dockingSystemConfig") public R> gridSystemConfig(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages= dockingSystemConfigService.page(condtionMap,query); return R.data(pages); } /** * 增加 系统集成基础信息 * @param systemConfigDTO 系统集成基础信息数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PostMapping( "/addSaveSystemConfig") public R addSaveSystemConfig(@RequestBody DockingSystemConfigDTO systemConfigDTO){ try { boolean res = dockingSystemConfigService.addSave(systemConfigDTO); return R.success("保存成功!"); }catch (Throwable e){ return R.fail("保存失败!"+e.getMessage()); } } /** * 增加 系统集成基础信息 * @param dockingSystemConfigDTO 系统集成基础信息数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PostMapping( "/editSystemConfig") public R editSystemConfig(@RequestBody DockingSystemConfigDTO dockingSystemConfigDTO){ try { boolean res = dockingSystemConfigService.editSave(dockingSystemConfigDTO); return R.success("保存成功!"); }catch (Throwable e){ return R.fail("保存失败!"); } } /** * 删除系统集成系统配置信息 * @param oids 系统集成基础信息数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 */ @DeleteMapping( "/deleteSystemConfigsById") public R deleteSystemConfigsById( String oids) { try { return R.status(dockingSystemConfigService.deleteDataById(oids)); }catch (VciBaseException e){ R.fail(e.getMessage()); } return R.success("操作成功"); } /*** * 接口信息是否启用/停用 * @param sysInfoStatusDTO * @return */ @PostMapping("/updateStatus") public R updateStatus(@RequestBody UpdateSysInfoStatusDTO sysInfoStatusDTO){ return dockingSystemConfigService.updateStatus(sysInfoStatusDTO); } /*** * 手动推送分类/数据 * @param dockingSystemConfigDTO * @return */ @PostMapping("/pushData") public R pushData(@RequestBody DockingSystemConfigDTO dockingSystemConfigDTO){ return dockingSystemConfigService.pushData(dockingSystemConfigDTO); } /** * 待集成数据 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 系统集成基础信息显示对象列表 */ @GetMapping("/gridDockingData") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "DockingDataVO") public R> gridDockingData(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages = dokingSysManaentService.gridDockingData(condtionMap,query); return R.data(pages); } /** * data列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 系统集成的系统信息显示对象列表 */ @GetMapping("/gridDockingTask") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "condtionMap") public R> gridDockingTask(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages = dokingSysManaentService.gridDockingTask(condtionMap,query); return R.data(pages); } /** * 推送数据集成日志列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 集成日志显示对象列表 */ @GetMapping("/gridLoge") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "DockingLogeVO") public R> gridLoge(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); if(queryObject.getOrder().equals("asc")){ query.setAscs(queryObject.getSort()); }else{ query.setDescs(queryObject.getSort()); } IPage pages = dokingSysManaentService.gridLoge(condtionMap,query); return R.data(pages); } /** * 接口param列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 集成日志显示对象列表 */ @GetMapping("/gridParam") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "dockingSysIntParam") public R>gridParam(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages = dokingSysManaentService.gridParam(condtionMap,query); return R.data(pages); } /** * 接口param列表 * @param queryObject 基础查询对象,包含查询条件,分页,排序等 * @return 集成日志显示对象列表 */ @GetMapping("/gridHeader") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "DockingSysIntHeaderVO") public R>gridHeader(BaseQueryObject queryObject){ Map condtionMap=queryObject.getConditionMap(); Query query=new Query(); if(CollectionUtils.isEmpty(condtionMap)){ condtionMap=new HashMap<>(); } query.setCurrent(queryObject.getPage()); query.setSize(queryObject.getLimit()); IPage pages=dokingSysManaentService.gridHeader(condtionMap,query); return R.data(pages); } /** *批量处理 * 必须要有分类oid和dataoid * @return */ @PostMapping("/sendData") public R sendData(String oid){ return codeDuckingSyncService.sendData(oid); } /*** * 项目型号代号查询同步 * @return */ @PostMapping("/searchItemDataForERP") public R searchItemDataForERP(String endDate){ try { codeDuckingSyncService.saveItemDataSyncScheduing(endDate); return R.success("同步成功"); }catch (Throwable e){ return R.fail("同步失败"); } } }