From 56226cabe11a36e5684b53022caccd2682812f61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B1=AA=E4=BA=91=E6=98=8A?= Date: Wed, 1 Jul 2020 19:33:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/api/iservice/busi/ISysRoleService.java | 14 +- .../controller/base/PressureTestController.java | 180 +++++++++++++++++++++ .../controller/busi/SysEnumController.java | 10 +- .../controller/busi/SysRoleController.java | 94 ++++++----- .../controller/cloud/WhiteCloudController.java | 1 - .../apiservice/mq/MdmDataSyncQueueReceiver.java | 3 +- .../core/apiservice/schedulejob/DemoJob.java | 2 +- .../serviceimpl/base/SysLogMongoService.java | 13 +- .../serviceimpl/busi/SysRoleService.java | 34 ++-- .../src/main/resources/application.properties | 2 +- .../src/main/resources/log4j2-spring.xml | 4 +- .../serviceimpl/busi/SysToolServiceTest.java | 44 +++++ 12 files changed, 320 insertions(+), 81 deletions(-) create mode 100644 modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/PressureTestController.java create mode 100644 modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolServiceTest.java diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysRoleService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysRoleService.java index 0c502ac..fc8672d 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysRoleService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysRoleService.java @@ -147,12 +147,12 @@ public interface ISysRoleService extends ICacheCrudService { // @ApiOperation(value = "查信角色信息",notes = "查询角色信息(分页/组合)") ListPager querySysRole(SysRole role, List idList, Pager pager); -// -// /*** -// * 检查角色唯一性 -// * @param role 角色信息 -// */ -// @ApiOperation(value = "角色唯一检查") -// void checkSysRoleOnly(SysRole role); + + /*** + * 检查角色唯一性 + * @param role 角色信息 + */ + @ApiOperation(value = "角色唯一检查") + void checkSysRoleOnly(SysRole role); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/PressureTestController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/PressureTestController.java new file mode 100644 index 0000000..f5428be --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/PressureTestController.java @@ -0,0 +1,180 @@ +package cn.estsh.i3plus.core.apiservice.controller.base; + +import cn.estsh.i3plus.platform.common.tool.HttpClientTool; +import cn.estsh.i3plus.platform.plugin.opc.pojo.OpcUAParam; +import cn.estsh.i3plus.platform.plugin.opc.service.OpcUAService; +import cn.estsh.i3plus.pojo.base.annotation.AnnoIgnoreLog; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.impp.framework.base.controller.CoreBaseController; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ResultBean; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.eclipse.milo.opcua.sdk.client.api.subscriptions.UaMonitoredItem; +import org.eclipse.milo.opcua.sdk.client.api.subscriptions.UaSubscription; +import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; +import org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.HashMap; +import java.util.Hashtable; +import java.util.Map; +import java.util.function.BiConsumer; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2020-01-08 11:53 + * @Modify: + **/ +@RestController +@Api(tags = "压测接口") +@RequestMapping("/impp/pressure-test") +public class PressureTestController extends CoreBaseController { + public static final Logger LOGGER = LoggerFactory.getLogger(PressureTestController.class); + + private static Map uaServiceMap = new Hashtable<>(); + + public static Map upcSub = new Hashtable<>(); + + private OpcUAService getOpcUaService(OpcUAParam opcUAParam){ + if(!uaServiceMap.containsKey(opcUAParam.getServerUrl())){ + OpcUAService opcService = new OpcUAService(); + opcService.connUaService(opcUAParam); + uaServiceMap.put(opcUAParam.getServerUrl(),opcService); + } + return uaServiceMap.get(opcUAParam.getServerUrl()); + } + + @GetMapping("/opc-write") + @ApiOperation(value = "写Opc", notes = "写Opc") + @AnnoIgnoreLog + public ResultBean writeOpc(OpcUAParam opcUA){ + try { + OpcUAService opcService = new OpcUAService(); + boolean editResult = opcService.editOpcParamValue(opcUA); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(editResult); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/opc-read") + @ApiOperation(value = "读Opc", notes = "读Opc") + @AnnoIgnoreLog + public ResultBean readOpc(OpcUAParam opcUA){ + try { + Object readResult = getOpcUaService(opcUA).getOpcParamValue(opcUA); + if(readResult == null){ + return ResultBean.fail(); + } + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(readResult); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/opc-sub") + @ApiOperation(value = "订阅Opc", notes = "订阅Opc") + @AnnoIgnoreLog + public ResultBean subOpc(OpcUAParam opcUA,String callbackMethod,String callbackUrl){ + try { + UaSubscription subscription = getOpcUaService(opcUA).createSubscription(opcUA); + getOpcUaService(opcUA).createMonitor(opcUA, subscription, new BiConsumer() { + @Override + public void accept(UaMonitoredItem node, DataValue value) { + + LOGGER.info("OPC订阅回调: {} - {} , callback {}", node.getReadValueId().getNodeId().toString(),value.getValue(), callbackMethod+callbackUrl); + HashMap param = new HashMap<>(); + param.put("key",node.getReadValueId().getNodeId().toString()); + param.put("value",value.getValue().toString()); + + HttpClientTool.doHttpUrl(CommonEnumUtil.HTTP_METHOD_TYPE.valueOf(callbackMethod), callbackUrl, param); + } + }); + upcSub.put(subscription.getSubscriptionId(),opcUA); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(subscription.getSubscriptionId().toString()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/remove-opc-sub") + @ApiOperation(value = "移除Opc订阅", notes = "移除Opc订阅") + @AnnoIgnoreLog + public ResultBean removeSubOpc(OpcUAParam opcUA,String subscriptionId){ + try { + getOpcUaService(opcUA).deleteSubscription(opcUA,UInteger.valueOf(subscriptionId)); + upcSub.remove(UInteger.valueOf(subscriptionId)); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/remove-all-opc-sub") + @ApiOperation(value = "移除Opc订阅", notes = "移除Opc订阅") + @AnnoIgnoreLog + public ResultBean removeAllSubOpc(OpcUAParam opcUA){ + try { + OpcUAService opcService = getOpcUaService(opcUA); + for (UInteger uInteger : upcSub.keySet()) { + opcService.deleteSubscription(opcUA,uInteger); + } + upcSub.clear(); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/show-opc-sub-list") + @ApiOperation(value = "查询Opc订阅", notes = "查询Opc订阅") + @AnnoIgnoreLog + public ResultBean showSubOpcList(){ + try { + HashMap resultMap = new HashMap<>(); + for (UInteger uInteger : upcSub.keySet()) { + resultMap.put(uInteger.toString(), JSON.toJSONString(upcSub.get(uInteger))); + } + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(resultMap); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @GetMapping("/test-callback") + @ApiOperation(value = "回调测试", notes = "回调测试") + @AnnoIgnoreLog + public ResultBean showSubOpcList(String key,String value){ + try { + LOGGER.info("回调:{} : {}", key,value); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(key+":"+value); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java index ddf7fea..56b8638 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java @@ -13,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; /** @@ -134,8 +133,13 @@ public class SysEnumController extends CoreBaseController { @GetMapping("/soft-type") @ApiOperation(value = "软件类型", notes = "软件类型") public ResultBean getSoftType() { - return new ResultBean(true, "操作成功", - LocaleUtils.getEnumLocaleResValuesToList(CommonEnumUtil.SOFT_TYPE.values())); + long startTime = System.currentTimeMillis(); + CommonEnumUtil.SOFT_TYPE[] softTypes = CommonEnumUtil.SOFT_TYPE.values(); + long enumTime = System.currentTimeMillis(); + System.out.println("耗时:" + (enumTime - startTime)); + List locale = LocaleUtils.getEnumLocaleResValuesToList(softTypes); + System.out.println("耗时:" + (System.currentTimeMillis() - enumTime)); + return new ResultBean(true, "操作成功", locale); } /** diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysRoleController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysRoleController.java index 48dc1c6..9c18737 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysRoleController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysRoleController.java @@ -3,23 +3,21 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; -import cn.estsh.i3plus.pojo.platform.bean.SysPosition; import cn.estsh.i3plus.pojo.platform.bean.SysRefRoleMenu; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserRole; import cn.estsh.i3plus.pojo.platform.bean.SysRole; -import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.base.controller.CrudBaseController; import cn.estsh.impp.framework.base.service.ICrudService; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; @@ -57,11 +55,27 @@ public class SysRoleController extends CrudBaseController { return sysRoleService; } + @Override + public SysRole validatorInsertBean(SysRole role) throws Exception { + //条件验证 + ValidatorBean.beginValid(role) + .notNull("name", role.getName()); + + sysRoleService.checkSysRoleOnly(role); + + //新增初始化 + ConvertBean.modelInitialize(role, AuthUtil.getSessionUser()); + role.setRoleStatus(CommonEnumUtil.DATA_STATUS.ENABLE.getValue()); + role.setMenuNumber(0); + role.setModuleNumber(0); + return role; + } + @GetMapping(value = "/list-user") @ApiOperation(value = "查询角色", notes = "查询用户所拥有的角色信息") public ResultBean findSysRoleByUser() { try { - if(!AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)){ + if (!AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)) { List result = personnelService.findSysRoleByUserId(getSessionUser().getUser().getId()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()) .setResultList(result); @@ -71,13 +85,14 @@ public class SysRoleController extends CrudBaseController { .setResultList(sysRoleService.findAll()); } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - } catch (Exception e) { + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } /** * 查询所有角色 + * * @param ids 角色id数组 * @return 处理结果 */ @@ -89,13 +104,14 @@ public class SysRoleController extends CrudBaseController { return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(list); } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - } catch (Exception e) { + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } /** * 查询角色的所有角色权限关系 + * * @param roleId 角色id * @return 处理结果 */ @@ -117,16 +133,16 @@ public class SysRoleController extends CrudBaseController { } @Override - @GetMapping(value="/query") - @ApiOperation(value="查询角色",notes="组合查询角色,外带分页功能") + @GetMapping(value = "/query") + @ApiOperation(value = "查询角色", notes = "组合查询角色,外带分页功能") public ResultBean queryPager(SysRole bean, Pager pager) { - try{ + try { ListPager result = null; - if(AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)){ - result = sysRoleService.findPager(bean,pager); - }else { + if (AuthUtil.getUserType().equals(CommonEnumUtil.USER_TYPE.ADMIN)) { + result = sysRoleService.findPager(bean, pager); + } else { List refList = personnelService.findSysRefUserRole(getSessionUser().getUser().getId()); - if(refList != null && refList.size() > 0){ + if (refList != null && refList.size() > 0) { List idList = new ArrayList<>(refList.size()); refList.forEach(ref -> idList.add(ref.getRoleId())); @@ -134,16 +150,17 @@ public class SysRoleController extends CrudBaseController { } } return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }catch(ImppBusiException busExcep){ + } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - }catch(Exception e){ + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } /** * 修改角色状态 - * @param id 角色id + * + * @param id 角色id * @param status 状态 * @return 处理结果 */ @@ -156,9 +173,9 @@ public class SysRoleController extends CrudBaseController { ValidatorBean.checkNotZero(status, "角色状态不能为空"); SysRole role = sysRoleService.get(id); - ValidatorBean.checkNotNull(role,"不存在的角色信息"); + ValidatorBean.checkNotNull(role, "不存在的角色信息"); role.setRoleStatus(status); - ConvertBean.modelUpdate(role,getSessionUser()); + ConvertBean.modelUpdate(role, getSessionUser()); sysRoleService.update(role); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); @@ -171,74 +188,77 @@ public class SysRoleController extends CrudBaseController { /** * 批量修改系统角色状态 - * @param ids 系统角色ids数组 + * + * @param ids 系统角色ids数组 * @param status 状态 * @return 处理结果 */ @PutMapping(value = "/batch-status") @ApiOperation(value = "批量修改系统角色状态", notes = "根据ID修改系统角色状态") - public ResultBean updateBatchStatus(Long[] ids,int status) { + public ResultBean updateBatchStatus(Long[] ids, int status) { try { // 数据校验 ValidatorBean.checkNotNull(ids, "角色id 不能为空"); ValidatorBean.checkNotZero(status, "角色状态不能为空"); - sysRoleService.updateSysRoleStatusByIds(ids,status,AuthUtil.getSessionUser()); + sysRoleService.updateSysRoleStatusByIds(ids, status, AuthUtil.getSessionUser()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch(ImppBusiException busExcep){ + } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - }catch(Exception e){ + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } /** * 新增角色权限关系 + * * @param roleId 角色id * @param refIds 关系di * @return 处理结果 */ @PutMapping(value = "/ref-menu/insert") @ApiOperation(value = "新增角色权限关系", notes = "新增角色权限关系") - public ResultBean insertRefMenu(Long roleId,String[] refIds) { + public ResultBean insertRefMenu(Long roleId, String[] refIds) { try { startMultiService(); // 数据校验 ValidatorBean.checkNotNull(roleId, "角色roleId 不能为空"); - ConvertBean.modelSafeArrayNumber(refIds,true); + ConvertBean.modelSafeArrayNumber(refIds, true); - sysRoleService.refreshSysRoleRef(roleId,StringTool.getArrayLong(refIds),AuthUtil.getSessionUser().getUserName()); + sysRoleService.refreshSysRoleRef(roleId, StringTool.getArrayLong(refIds), AuthUtil.getSessionUser().getUserName()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch(ImppBusiException busExcep){ + } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - }catch(Exception e){ + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } /** * 批量新增角色权限关系 + * * @param roleIds 角色id 集合 * @param menuIds 功能id * @return 处理结果 */ @PutMapping(value = "/ref-menu/batch-insert") @ApiOperation(value = "批量新增角色权限关系", notes = "批量新增角色权限关系") - public ResultBean insertBatchRefMenu(String[] roleIds,String[] menuIds) { + public ResultBean insertBatchRefMenu(String[] roleIds, String[] menuIds) { try { startMultiService(); - roleIds = ConvertBean.modelSafeArrayNumber(roleIds,true); - menuIds = ConvertBean.modelSafeArrayNumber(menuIds,true); + roleIds = ConvertBean.modelSafeArrayNumber(roleIds, true); + menuIds = ConvertBean.modelSafeArrayNumber(menuIds, true); // 数据校验 ValidatorBean.checkNotNull(roleIds, "角色roleIds 不能为空"); - if(roleIds.length == 0){ + if (roleIds.length == 0) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) @@ -247,21 +267,21 @@ public class SysRoleController extends CrudBaseController { } List roleList = sysRoleService.findSysRoleByInIdAndStatus(StringTool.getArrayLong(roleIds), CommonEnumUtil.DATA_STATUS.DISABLE.getValue()); - if(roleList != null && roleList.size() > 0){ + if (roleList != null && roleList.size() > 0) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) - .setErrorDetail("["+roleList.get(0).getName()+"]角色已禁用,不允许操作") + .setErrorDetail("[" + roleList.get(0).getName() + "]角色已禁用,不允许操作") .setErrorSolution("请重新操作") .build(); } - sysRoleService.refreshBatchSysRoleRef(StringTool.getArrayLong(roleIds),StringTool.getArrayLong(menuIds), + sysRoleService.refreshBatchSysRoleRef(StringTool.getArrayLong(roleIds), StringTool.getArrayLong(menuIds), AuthUtil.getSessionUser().getUserName()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } catch(ImppBusiException busExcep){ + } catch (ImppBusiException busExcep) { return ResultBean.fail(busExcep); - }catch(Exception e){ + } catch (Exception e) { return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/cloud/WhiteCloudController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/cloud/WhiteCloudController.java index e6691da..09dfc2c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/cloud/WhiteCloudController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/cloud/WhiteCloudController.java @@ -28,7 +28,6 @@ import org.springframework.web.bind.annotation.RestController; public class WhiteCloudController extends CoreBaseController { private static final Logger LOGGER = LoggerFactory.getLogger(WhiteCloudController.class); - @PostMapping(value = "/softwitch/result") @ApiOperation(value = "数据源列表", notes = "获取服务的数据源列表") public BaseResultBean softwitchResult(@RequestBody SuitImppCloudModel model) { diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MdmDataSyncQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MdmDataSyncQueueReceiver.java index 8fd202b..5871f66 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MdmDataSyncQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MdmDataSyncQueueReceiver.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.mq; import cn.estsh.i3plus.core.apiservice.serviceimpl.mdm.SysToolSyncDataService; import cn.estsh.i3plus.pojo.mdm.bean.busi.core.MdmGearCoreBusiExtd; +import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear; import cn.estsh.impp.framework.boot.mdm.mq.BaseMdmDataSyncQueueReceiver; import com.rabbitmq.client.Channel; import org.springframework.amqp.core.Message; @@ -26,7 +27,7 @@ public class MdmDataSyncQueueReceiver extends BaseMdmDataSyncQueueReceiver { * 初始化类关系 */ public MdmDataSyncQueueReceiver() { - putMdmDataRef(SysToolSyncDataService.class, MdmGearCoreBusiExtd.mdmMasterClass, MdmGearCoreBusiExtd.class); + putMdmDataRef(SysToolSyncDataService.class, MdmGear.class, MdmGearCoreBusiExtd.class); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/DemoJob.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/DemoJob.java index f4bf088..7c0b9e0 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/DemoJob.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/schedulejob/DemoJob.java @@ -46,7 +46,7 @@ public class DemoJob extends BaseImppScheduleJob { } catch (InterruptedException e) { e.printStackTrace(); } - + LOGGER = getJobLogger(); LOGGER.debug("debug /////BaseImppScheduleJob/// ///////projectName:{},port:{}", applicationProperties.getApplicationName(), applicationProperties.getServerPort()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java index ace4c78..23adf3d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SysLogMongoService.java @@ -6,7 +6,6 @@ import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.MathOperation; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; -import cn.estsh.i3plus.platform.plugin.elasticsearch.ElasticSearchTool; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -294,7 +293,7 @@ public class SysLogMongoService implements ISysLogService { @Override public ListPager queryLogConsolePager(SysLogConsole log, Pager pager) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") @@ -304,7 +303,7 @@ public class SysLogMongoService implements ISysLogService { @Override public List findLogConsoleList(SysLogConsole log, Pager pager) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.DATABASE_EXCEPTION.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") @@ -314,7 +313,7 @@ public class SysLogMongoService implements ISysLogService { @Override public List findLogConsoleList(SysLogConsole log) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.DATABASE_EXCEPTION.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") @@ -324,7 +323,7 @@ public class SysLogMongoService implements ISysLogService { @Override public SysLogConsole insertLogConsoleTime(SysLogConsole log) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.DATABASE_EXCEPTION.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") @@ -334,7 +333,7 @@ public class SysLogMongoService implements ISysLogService { @Override public SysLogConsole getLogConsoleTime(SysLogConsole log) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.DATABASE_EXCEPTION.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") @@ -344,7 +343,7 @@ public class SysLogMongoService implements ISysLogService { @Override public void deleteLogConsoleTime(SysLogConsole log) { throw ImppExceptionBuilder.newInstance() - .setSystemID(CommonEnumUtil.SOFT_TYPE.FORM.getCode()) + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.DATABASE_EXCEPTION.getCode()) .setErrorDetail("日志数据量太大,推荐使用Elasticsearch技术存储") .setErrorSolution("请重新操作") diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java index f8834d6..ae00b4d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java @@ -2,10 +2,10 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysMenuService; -import cn.estsh.i3plus.core.api.iservice.busi.ISysPositionService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao; import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; @@ -14,7 +14,6 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.*; -import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRefRoleMenuRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRefUserRoleRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRoleRepository; @@ -22,7 +21,6 @@ import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.base.service.CacheCrudService; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import io.swagger.annotations.ApiOperation; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections4.ListUtils; @@ -257,24 +255,18 @@ public class SysRoleService extends CacheCrudService implements ISysRol pager = PagerHelper.getPager(pager, roleRDao.findByHqlWhereCount(packBean)); return new ListPager(roleRDao.findByHqlWherePage(packBean , pager), pager); } -// -// @Override -// public void checkSysRoleOnly(SysRole role) { -// if(role != null){ -// SysRole bean = new SysRole(); -// bean.setId(role.getId()); -// bean.setName(role.getName()); -// -// if(roleRDao.findByHqlWhereCount(CoreHqlPack.packDdlBeanSysRole(role)) <= 0){ -// throw ImppExceptionBuilder.newInstance() -// .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) -// .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) -// .setErrorDetail("角色名称已存在") -// .setErrorSolution("请重新输入角色名称") -// .build(); -// } -// } -// } + + @Override + public void checkSysRoleOnly(SysRole role) { + if (role != null && roleRDao.isExitByHql(CoreHqlPack.packDdlSysRoleCheckOnly(role))) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) + .setErrorDetail("角色名称已存在") + .setErrorSolution("请重新输入角色名称") + .build(); + } + } @Override diff --git a/modules/i3plus-core-apiservice/src/main/resources/application.properties b/modules/i3plus-core-apiservice/src/main/resources/application.properties index 229a7b5..db038ab 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application.properties @@ -1,5 +1,5 @@ #\u4F7F\u7528\u914D\u7F6E -spring.profiles.active=dev +spring.profiles.active=21 #\u9879\u76EE\u63CF\u8FF0\u4FE1\u606F\uFF08swagger\u4E2D\u663E\u5F0F\uFF09\uFF0C\u4E2D\u6587\u4F7F\u7528uncode\u8F6C\u7801 desc.application.name=\u6838\u5FC3\u7BA1\u7406\u540E\u53F0 diff --git a/modules/i3plus-core-apiservice/src/main/resources/log4j2-spring.xml b/modules/i3plus-core-apiservice/src/main/resources/log4j2-spring.xml index a89e636..1389e4b 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/log4j2-spring.xml +++ b/modules/i3plus-core-apiservice/src/main/resources/log4j2-spring.xml @@ -44,8 +44,8 @@ - - + + \ No newline at end of file diff --git a/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolServiceTest.java b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolServiceTest.java new file mode 100644 index 0000000..07568c2 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/test/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysToolServiceTest.java @@ -0,0 +1,44 @@ +package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; + +import cn.estsh.i3plus.core.api.iservice.busi.ISysToolService; +import cn.estsh.impp.framework.boot.util.ImppSwitchUtil; +import cn.estsh.impp.framework.run.ImppGo; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +/** + * @Description : + * @Reference : + * @Author : yunhao + * @CreateDate : 2020-06-09 11:51 + * @Modify: + **/ +@RunWith(SpringJUnit4ClassRunner.class) +@SpringBootTest(classes = ImppGo.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +public class SysToolServiceTest { + + @Autowired + private ISysToolService sysToolService; + + @Value("${impp.init.lazy.global:false}") + private String lazyInit; +// @Autowired +// private ISystemInitService systemInitService; + + @Test + public void insertSysTool() { +// systemInitService.putAndLoadAll(); + System.out.println("unit"+ImppSwitchUtil.isUnitTestEnv()); + System.out.println("lazyInit"+lazyInit); + } + + @Test + public void listSysTool() { + sysToolService.listSysTool(); + } + +} \ No newline at end of file