diff --git a/modules/i3plus-core-apiservice/pom.xml b/modules/i3plus-core-apiservice/pom.xml index da61650..2c89a91 100644 --- a/modules/i3plus-core-apiservice/pom.xml +++ b/modules/i3plus-core-apiservice/pom.xml @@ -20,6 +20,11 @@ i3plus-icloud-core + + i3plus.icloud + i3plus-icloud-wms + + i3plus.pojo diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java index 1c402d5..fee0cc9 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java @@ -1,8 +1,10 @@ package cn.estsh.i3plus.core.apiservice.controller; import cn.estsh.i3plus.icloud.core.sdk.ICoreDemoCloud; +import cn.estsh.i3plus.icloud.wms.sdk.IWmsDemoCloud; import cn.estsh.i3plus.pojo.base.bean.BaseBean; import cn.estsh.i3plus.pojo.base.bean.BaseModelBean; +import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysRole; @@ -13,68 +15,69 @@ import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import java.util.Map; @RestController -@RequestMapping("/cloud") +@RequestMapping("/impp/cloud") @Api(description="分布式服务测试") public class DemoCloudController { private static final Logger LOGGER = LoggerFactory.getLogger(DemoCloudController.class); + @Value("${server.port}") + private String serverPort; + + @Value("${eureka.instance.ip-address}") + private String ipAddress; + @Autowired ICoreDemoCloud iCoreDemoCloud; - @GetMapping(value="/test") - @ApiOperation(value="测试",notes = "测试") - public ResultBean simpleTest(String test) { - LOGGER.info("【接受数据】{}",test); - - try { - iCoreDemoCloud.testGet("get = " + test); - }catch (Exception e){ - LOGGER.error("XXXX --> get调用出错:" + e.getMessage(),e); - } - try { - iCoreDemoCloud.testPost("post = " + test); - }catch (Exception e){ - LOGGER.error("XXXX --> post调用出错:" + e.getMessage(),e); - } - try { -// iCoreDemoCloud.testPut("testPut = " + test,"name"); - }catch (Exception e){ - LOGGER.error("XXXX --> testPut调用出错:" + e.getMessage(),e); - } - try { -// iCoreDemoCloud.testDelete(new Pager(),"delete = " + test); - }catch (Exception e){ - LOGGER.error("XXXX --> delete调用出错:" + e.getMessage(),e); - } + @Autowired + IWmsDemoCloud iWmsDemoCloud; - test += "cloud return = "; + @GetMapping(value="/test") + @ApiOperation(value="core测试",notes = "core测试") + public ResultBean testCore(String test) { + LOGGER.info("{}:{},【impp-core接受数据】{}",ipAddress,serverPort,test); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } + @GetMapping(value="/test-wms") + @ApiOperation(value="wms测试",notes = "wms测试") + public ResultBean testWms(String test) { + LOGGER.info("【{}:{},impp-core接受数据 -> wms】{}",ipAddress,serverPort,test); + + BaseResultBean result = iWmsDemoCloud.testWms(test); + if(result.isSuccess()){ + return ResultBean.success("wms返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + }else{ + LOGGER.error("无法调用wms服务:{}",result.getErrorMsg()); + return ResultBean.fail("调用wms服务出错:" + result.getErrorMsg()); + } + } + @GetMapping(value="/test-get") @ApiOperation(value="测试get",notes = "测试get") public ResultBean testFeignGet(String test) { - LOGGER.info("【get接受数据】{}" ,test); + LOGGER.info("【impp-core-get接受数据】{}" ,test); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PostMapping(value="/test-post") @ApiOperation(value="测试post",notes = "测试post") public ResultBean testFeignPost(String test) { - LOGGER.info("【post接受数据】{}" ,test); + LOGGER.info("【impp-core-post接受数据】{}" ,test); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PutMapping(value="/test-put") @ApiOperation(value="put接受数据",notes = "put接受数据") public ResultBean testPut(String test,String name) { - LOGGER.info("【put接受数据】param1:{},param2:{}", test,name); + LOGGER.info("【impp-core-put接受数据】param1:{},param2:{}", test,name); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @@ -83,42 +86,42 @@ public class DemoCloudController { public ResultBean testDelete( @RequestBody Pager pager, @RequestParam("test") String test) { - LOGGER.info("【delete接受数据】pager:{},test:{}",pager,test); + LOGGER.info("【impp-core-delete接受数据】pager:{},test:{}",pager,test); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PutMapping(value="/test-cloud-put") @ApiOperation(value="测试cloudput",notes = "测试cloudput") public ResultBean putTestCloud(String test,String name) { - LOGGER.info("【put接受数据】test:{},name:{}",test,name); + LOGGER.info("【impp-core-put接受数据】test:{},name:{}",test,name); return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PostMapping(value="/test-object") @ApiOperation(value="测试单对象") public ResultBean testObject(@RequestBody Pager pager) { - LOGGER.info("【object接受数据】{}" ,pager); + LOGGER.info("【impp-core-object接受数据】{}" ,pager); return ResultBean.success("返回:" + pager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PostMapping(value="/test-map") @ApiOperation(value="测试get",notes = "测试get") public ResultBean testFeignMap(@RequestBody Map map) { - LOGGER.info("【map接受数据】{}" ,map); + LOGGER.info("【impp-core-map接受数据】{}" ,map); return ResultBean.success("返回:" + map).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PostMapping(value="/test-arr") @ApiOperation(value="测试arr",notes = "测试arr") public ResultBean testFeignArr(@RequestBody String[] arr) { - LOGGER.info("【arr接受数据】{}" ,arr); + LOGGER.info("【impp-core-arr接受数据】{}" ,arr); return ResultBean.success("返回:" + arr).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } @PostMapping(value="/test-more-object") @ApiOperation(value="测试多对象模型",notes = "测试多对象模型") public ResultBean testFeignMoreObj(@RequestBody BaseModelBean roleBean) { - LOGGER.info("【more-obj接受多对象模型】objBean:{},pager:{}" ,roleBean.getObj(),roleBean.getPager()); + LOGGER.info("【impp-core-more-obj接受多对象模型】objBean:{},pager:{}" ,roleBean.getObj(),roleBean.getPager()); return ResultBean.success("返回:" + roleBean).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java index 9f8c712..4720e11 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java @@ -53,8 +53,9 @@ public class SysOrganizeController extends CoreBaseController{ //新增初始化 ConvertBean.modelInitialize(organize, AuthUtil.getSessionUser()); - if(organize.getParentId() == null || organize.getParentId() == 0){ + if(organize.getParentId() == null || organize.getParentId() <= 0){ organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); + organize.setParentNameRdd("顶级组织"); } organize = organizeService.insertSysOrganize(organize); @@ -79,8 +80,9 @@ public class SysOrganizeController extends CoreBaseController{ .notNull("organizeType", organize.getOrganizeType()); ConvertBean.modelUpdate(organize, AuthUtil.getSessionUser()); - if(organize.getParentId() == null || organize.getParentId() == 0){ + if(organize.getParentId() == null || organize.getParentId() <= 0){ organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); + organize.setParentNameRdd("顶级组织"); } organizeService.updateSysOrganize(organize); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysPositionController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysPositionController.java index 4b675fa..7db1cf4 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysPositionController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysPositionController.java @@ -54,8 +54,9 @@ public class SysPositionController extends CoreBaseController { .notNull("positionCode",position.getPositionCode()); ConvertBean.modelInitialize(position,user); - if(position.getParentId() == null || position.getParentId() == 0){ + if(position.getParentId() == null || position.getParentId() <= 0){ position.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); + position.setParentNameRdd("顶级岗位"); } SysPosition pos = positionService.insertSysPosition(position); @@ -85,8 +86,9 @@ public class SysPositionController extends CoreBaseController { //修改初始化 ConvertBean.modelUpdate(position,user); - if(position.getParentId() == null || position.getParentId() == 0){ + if(position.getParentId() == null || position.getParentId() <= 0){ position.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); + position.setParentNameRdd("顶级岗位"); } positionService.updateSysPosition(position); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java index 31c1573..287f463 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java @@ -147,7 +147,10 @@ public class CoreTreeService implements ICoreTreeService { @Override public List findSysOrganizeTreeByParentId(long parentId) { - List result = organizeRDao.findByProperty("parentId", parentId); + StringBuffer orgHQL = new StringBuffer(); + HqlPack.getNumEqualPack(parentId,"parentId",orgHQL); + HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"organizeSort"}, orgHQL); + List result = organizeRDao.findByHqlWhere(orgHQL.toString()); // 循环设置子集 if(result != null && result.size() > 0){ @@ -174,7 +177,11 @@ public class CoreTreeService implements ICoreTreeService { @Override public void findSysOrganizeChildrenTreePack(SysOrganize parent, int step) { ++step; - List childList = organizeRDao.findByProperty("parentId", parent.getId()); + + StringBuffer orgHQL = new StringBuffer(); + HqlPack.getNumEqualPack(parent.getId(),"parentId",orgHQL); + HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"organizeSort"}, orgHQL); + List childList = organizeRDao.findByHqlWhere(orgHQL.toString()); if (childList.size() > 0) { //说明有子集 for (SysOrganize child : childList) { @@ -403,7 +410,7 @@ public class CoreTreeService implements ICoreTreeService { StringBuffer depHQL = new StringBuffer(); HqlPack.getNumEqualPack(department.getId(),"parentId",depHQL); - HqlPack.getOrderByPack(new Object[]{2}, new String[]{"departmentSort"}, depHQL); + HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"departmentSort"}, depHQL); List departmentList = departmentRDao.findByHqlWhere(depHQL.toString()); if(departmentList != null && departmentList.size() > 0){ diff --git a/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties b/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties index 4081bee..19dbd68 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application-dev.properties @@ -1,6 +1,5 @@ #项目端口 -server.port=8080 - +server.port=8100 ################ 授权过滤配置 ################ #用户登陆路径 filter.shiro.user.loginuri = /login @@ -19,29 +18,27 @@ filter.shiro.saadmin.filteruri = /saoperate/* ################ 跨域提交 ################ #是否允许前端跨域提交impp.web.cross.hosts impp.web.cross = true -#允许前端跨域提交的域名,多个以逗号分隔 -#impp.web.cross.hosts = http://localhost ################ 云配置 (以projectName作为应用名) ################ #若无法连接注册中心,是否需要一直检测加入 impp.cluster.fetch=false #是否开启微服 -eureka.client.enabled=false +eureka.client.enabled=true #(参数配置)注册中心地址 -》 i3plus-ics,多个用逗号分隔 -eureka.client.service-url.defaultZone:http://192.168.1.20:8000/eureka/,http://192.168.1.20:8001/eureka/ +eureka.client.service-url.defaultZone=http://192.168.1.20:8000/eureka/,http://192.168.1.20:8001/eureka/ #区域(源码中包含defaultZone,所以默认使用defaultZone) #eureka.client.region=estsh #eureka.client.service-url.estsh:http://192.168.1.20:8000/eureka/,http://192.168.1.20:8001/eureka/ #### 本机微服配置 #### #本服务主机ip(若多个网卡,则需要设置本服务ip) -#eureka.instance.ip-address=192.168.1.25 +eureka.instance.ip-address=192.168.1.25 #本服务实例ID #eureka.instance.instance-id=${eureka.instance.ip-address}:${server.port} #本服务主机名 #eureka.instance.hostname=${eureka.instance.ip-address} #本服务状态页面 -eureka.instance.status-page-url=http://192.168.1.25:${server.port}/swagger-ui.html +eureka.instance.status-page-url=http://${eureka.instance.ip-address}:${server.port}/swagger-ui.html #将自己的IP注册到Eureka Server。若不配置或设置为false,表示注册微服务所在操作系统的hostname到Eureka Server eureka.instance.prefer-ip-address=true @@ -51,6 +48,11 @@ eureka.instance.lease-expiration-duration-in-seconds=30 #心跳周期 eureka.instance.lease-renewal-interval-in-seconds=20 +#打开feign的熔断 +feign.hystrix.enabled=true +#集群名 +eureka.instance.metadata-map.cluster=impp_cluster + ################ 日志据源 ################ spring.data.mongodb.database=mongoDBSource spring.data.mongodb.uri=192.168.1.55:27017 diff --git a/modules/i3plus-core-apiservice/src/main/resources/log4j2.xml b/modules/i3plus-core-apiservice/src/main/resources/log4j2.xml index 0ab7ca1..cf4275c 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/log4j2.xml +++ b/modules/i3plus-core-apiservice/src/main/resources/log4j2.xml @@ -3,9 +3,9 @@ - [%p] %d{yyyy-MM-dd HH:mm:ss-SSS} %l:%m%n - [%p] %d{HH:mm:ss-SSS} (%c:%L)%M ==》 %m%n - [SYS-%p] %m (%F:%M:%L %d{HH:mm:ss-SSS})%n + [%p] %d{yyyy-MM-dd HH:mm:ss-SSS} %l 信息:%m%n + [%p] %d{HH:mm:ss-SSS} %c(%M:%L) 信息:%m%n + [SYS-%p] 系统:%m (%d{HH:mm:ss-SSS} %F -> %M:%L)%n diff --git a/pom.xml b/pom.xml index f9d07bc..2ff63d0 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ - + i3core UTF-8 UTF-8 @@ -54,6 +54,7 @@ ${project.version} + i3plus.core i3plus-core-icloud @@ -61,6 +62,13 @@ + i3plus.icloud + i3plus-icloud-wms + ${project.version} + + + + i3plus.pojo i3plus-pojo-model ${project.version}