yunhao.wang 7 years ago
commit e707662809

@ -20,6 +20,11 @@
<artifactId>i3plus-icloud-core</artifactId>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-wms</artifactId>
</dependency>
<!-- 对象 -->
<dependency>
<groupId>i3plus.pojo</groupId>

@ -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<String,String> 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<SysRole> 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());
}
}

@ -4,8 +4,10 @@ import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService;
import cn.estsh.i3plus.core.api.iservice.busi.ICoreTreeService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.core.apiservice.controller.DemoAuthController;
import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.SysLocaleLanguageService;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
import cn.estsh.impp.framework.base.controller.BaseController;
import cn.estsh.impp.framework.base.controller.CoreBaseController;
@ -20,9 +22,7 @@ import org.apache.shiro.authc.AuthenticationException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
@ -51,6 +51,9 @@ public class AuthController extends CoreBaseController {
@Autowired
private ICoreTreeService coreTreeService;
@Autowired
private SysLocaleLanguageService localeLanguageService;
@GetMapping(value="/login")
@ApiOperation(value="登陆",notes="登陆")
public ResultBean login(HttpServletRequest request, String loginName, String loginPwd, String languageCode){
@ -88,7 +91,7 @@ public class AuthController extends CoreBaseController {
LOGGER.info("用户退出...");
try {
AuthUtil.logout();
return new ResultBean(true,"");
return new ResultBean(true,"").build();
} catch (ImppBusiException e) {
return new ResultBean(false,e.getErrorDetail() + ",so:" + e.getErrorSolution());
}
@ -146,4 +149,24 @@ public class AuthController extends CoreBaseController {
}
}
@PutMapping(value = "/update-language")
@ApiOperation(value="修改语言",notes="修改用户会话语言")
public ResultBean updateLanguage(String code){
try {
SysLocaleLanguage language = localeLanguageService.getSysLocaleLanguageByCode(code);
if(language != null){
AuthUtil.setSessionLanguage(language.getLanguageCode());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}else {
return ResultBean.fail("操作失败").setCode(ResourceEnumUtil.MESSAGE.FAIL.getCode()).setErrorMsg("语言信息不存在");
}
}catch(ImppBusiException busExcep){
LOGGER.error(busExcep.getErrorMsg() + "{}",busExcep.getErrorDetail(),busExcep);
return ResultBean.fail(busExcep);
}catch(Exception e){
LOGGER.error(ImppExceptionEnum.SYSTEM_EXCEPTION.getDescription() + "{}",e.getMessage(),e);
return ResultBean.fail().setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
}

@ -56,8 +56,9 @@ public class SysDepartmentController extends CoreBaseController {
//新增初始化
ConvertBean.modelInitialize(department, user);
if(department.getParentId() == null || department.getParentId().intValue() == 0){
if(department.getParentId() == null || department.getParentId() <= 0){
department.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
department.setParentNameRdd("顶级部门");
}
departmentService.insertSysDepartment(department);
@ -86,8 +87,9 @@ public class SysDepartmentController extends CoreBaseController {
.checkNotZero("organizeId",department.getOrganizeId());
ConvertBean.modelUpdate(department, user);
if(department.getParentId() == null || department.getParentId().intValue() == 0){
if(department.getParentId() == null || department.getParentId() <= 0){
department.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
department.setParentNameRdd("顶级部门");
}
departmentService.updateSysDepartment(department);

@ -53,15 +53,16 @@ public class SysOrganizeController extends CoreBaseController{
//新增初始化
ConvertBean.modelInitialize(organize, AuthUtil.getSessionUser());
if(organize.getParentId() == null || organize.getParentId().intValue() == 0){
if(organize.getParentId() == null || organize.getParentId() <= 0){
organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
organize.setParentNameRdd("顶级组织");
}
organize = organizeService.insertSysOrganize(organize);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(organize);
} catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
return ResultBean.fail(busExcep).build();
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
@ -79,15 +80,16 @@ public class SysOrganizeController extends CoreBaseController{
.notNull("organizeType", organize.getOrganizeType());
ConvertBean.modelUpdate(organize, AuthUtil.getSessionUser());
if(organize.getParentId() == null || organize.getParentId().intValue() == 0){
if(organize.getParentId() == null || organize.getParentId() <= 0){
organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
organize.setParentNameRdd("顶级组织");
}
organizeService.updateSysOrganize(organize);
return ResultBean.success("修改成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
LOGGER.error(busExcep.getErrorMsg() + "{}", busExcep.getErrorDetail(), busExcep);
return ResultBean.fail(busExcep).build();
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}

@ -54,8 +54,9 @@ public class SysPositionController extends CoreBaseController {
.notNull("positionCode",position.getPositionCode());
ConvertBean.modelInitialize(position,user);
if(position.getParentId() == null || position.getParentId().intValue() == 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().intValue() == 0){
if(position.getParentId() == null || position.getParentId() <= 0){
position.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
position.setParentNameRdd("顶级岗位");
}
positionService.updateSysPosition(position);

@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ICoreTreeService;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ModelEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.model.platform.CommonTreeModel;
import cn.estsh.i3plus.pojo.platform.bean.SysDepartment;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
@ -146,7 +147,10 @@ public class CoreTreeService implements ICoreTreeService {
@Override
public List<SysOrganize> findSysOrganizeTreeByParentId(long parentId) {
List<SysOrganize> 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<SysOrganize> result = organizeRDao.findByHqlWhere(orgHQL.toString());
// 循环设置子集
if(result != null && result.size() > 0){
@ -173,7 +177,11 @@ public class CoreTreeService implements ICoreTreeService {
@Override
public void findSysOrganizeChildrenTreePack(SysOrganize parent, int step) {
++step;
List<SysOrganize> 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<SysOrganize> childList = organizeRDao.findByHqlWhere(orgHQL.toString());
if (childList.size() > 0) { //说明有子集
for (SysOrganize child : childList) {
@ -313,7 +321,11 @@ public class CoreTreeService implements ICoreTreeService {
@Override
public List<CommonTreeModel> findOrganizeDepartment(long parentId) {
List<CommonTreeModel> result = new ArrayList<>();
List<SysOrganize> list = organizeRDao.findByProperty("parentId", parentId);
StringBuffer hql = new StringBuffer();
HqlPack.getNumEqualPack(parentId,"parentId",hql);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"organizeSort"}, hql);
List<SysOrganize> list = organizeRDao.findByHqlWhere(hql.toString());
// 循环设置子集
if(list != null && list.size() > 0){
@ -357,7 +369,11 @@ public class CoreTreeService implements ICoreTreeService {
if(bean instanceof SysOrganize){
SysOrganize organize = (SysOrganize) bean;
List<SysOrganize> organizeList = organizeRDao.findByProperty("parentId", organize.getId());
StringBuffer hql = new StringBuffer();
HqlPack.getNumEqualPack(organize.getId(),"parentId",hql);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"organizeSort"}, hql);
List<SysOrganize> organizeList = organizeRDao.findByHqlWhere(hql.toString());
if(organizeList != null && organizeList.size() > 0){
for (SysOrganize org : organizeList) {
treeModel = new CommonTreeModel();
@ -370,7 +386,11 @@ public class CoreTreeService implements ICoreTreeService {
}
}
List<SysDepartment> departmentList = departmentRDao.findByProperty("organizeId", organize.getId());
StringBuffer depHQL = new StringBuffer();
HqlPack.getNumEqualPack(organize.getId(),"organizeId",depHQL);
HqlPack.getOrderByPack(new Object[]{2}, new String[]{"departmentSort"}, depHQL);
List<SysDepartment> departmentList = departmentRDao.findByHqlWhere(depHQL.toString());
if(departmentList != null && departmentList.size() > 0){
for (SysDepartment department : departmentList) {
if(department.getParentId() != null && department.getParentId() < 0){
@ -387,7 +407,12 @@ public class CoreTreeService implements ICoreTreeService {
LOGGER.info("【{}】包含子集:{},步长:{}", parent.getBean().getClass().getName(), parent.getChildList().size(), step);
}else if(bean instanceof SysDepartment){
SysDepartment department = (SysDepartment) bean;
List<SysDepartment> departmentList = departmentRDao.findByProperty("parentId", department.getId());
StringBuffer depHQL = new StringBuffer();
HqlPack.getNumEqualPack(department.getId(),"parentId",depHQL);
HqlPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"departmentSort"}, depHQL);
List<SysDepartment> departmentList = departmentRDao.findByHqlWhere(depHQL.toString());
if(departmentList != null && departmentList.size() > 0){
for (SysDepartment dep : departmentList) {
treeModel = new CommonTreeModel();

@ -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

@ -3,9 +3,9 @@
<!--全局参数-->
<Properties>
<!-- %d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n -->
<Property name="pattern">[%p] %d{yyyy-MM-dd HH:mm:ss-SSS} %l:%m%n</Property>
<Property name="info_pattern">[%p] %d{HH:mm:ss-SSS} (%c:%L)%M ==》 %m%n</Property>
<Property name="system_log_pattern">[SYS-%p] %m (%F:%M:%L %d{HH:mm:ss-SSS})%n</Property>
<Property name="pattern">[%p] %d{yyyy-MM-dd HH:mm:ss-SSS} %l 信息:%m%n</Property>
<Property name="info_pattern">[%p] %d{HH:mm:ss-SSS} %c(%M:%L) 信息:%m%n</Property>
<Property name="system_log_pattern">[SYS-%p] 系统:%m (%d{HH:mm:ss-SSS} %F -> %M:%L)%n</Property>
</Properties>
<Loggers>
<Root level="${log4j2.level}">

@ -21,7 +21,7 @@
</parent>
<properties>
<!--项目名称,需要修改,参照CommonEnumUtil.SOFT_TYPE-->
<!--项目名称,参照CommonEnumUtil.SOFT_TYPE-->
<project.name>i3core</project.name>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
@ -54,6 +54,7 @@
<version>${project.version}</version>
</dependency>
<!-- 微服调用 -->
<dependency>
<groupId>i3plus.core</groupId>
<artifactId>i3plus-core-icloud</artifactId>
@ -61,6 +62,13 @@
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-wms</artifactId>
<version>${project.version}</version>
</dependency>
<!-- 基础对象调用 -->
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-model</artifactId>
<version>${project.version}</version>

Loading…
Cancel
Save