Merge branch 'lvleigang' of http://192.168.2.237:3000/root/kangarooDataCenterV3 into ax
Conflicts: service/src/main/java/com/hzya/frame/u8c/ax/service/impl/AxServiceImpl.java
This commit is contained in:
commit
7cc29e995d
|
@ -13,7 +13,7 @@ public interface IAxService extends IBaseService<ArchivesEntity, String>{
|
||||||
* @param object
|
* @param object
|
||||||
* @return com.hzya.frame.web.entity.JsonResultEntity
|
* @return com.hzya.frame.web.entity.JsonResultEntity
|
||||||
**/
|
**/
|
||||||
JsonResultEntity thirdInterfaceVoucherInsert(JSONObject object);
|
Object thirdInterfaceVoucherInsert(JSONObject object);
|
||||||
/**
|
/**
|
||||||
* @Author lvleigang
|
* @Author lvleigang
|
||||||
* @Description 档案新增
|
* @Description 档案新增
|
||||||
|
|
|
@ -99,7 +99,7 @@ public class AxServiceImpl extends BaseService<ArchivesEntity, String> implement
|
||||||
* @return com.hzya.frame.web.entity.JsonResultEntity
|
* @return com.hzya.frame.web.entity.JsonResultEntity
|
||||||
**/
|
**/
|
||||||
@Override
|
@Override
|
||||||
public JsonResultEntity thirdInterfaceVoucherInsert(JSONObject object) {
|
public Object thirdInterfaceVoucherInsert(JSONObject object) {
|
||||||
JSONObject jsonObject = object.getJSONObject("jsonStr");
|
JSONObject jsonObject = object.getJSONObject("jsonStr");
|
||||||
if(jsonObject == null ){
|
if(jsonObject == null ){
|
||||||
return BaseResult.getFailureMessageEntity("数据为空,请先传递数据");
|
return BaseResult.getFailureMessageEntity("数据为空,请先传递数据");
|
||||||
|
@ -181,7 +181,8 @@ public class AxServiceImpl extends BaseService<ArchivesEntity, String> implement
|
||||||
}
|
}
|
||||||
logger.info("返回结果:" + body);
|
logger.info("返回结果:" + body);
|
||||||
JsonResultEntity resultEntity = JSON.parseObject(body.toString(),JsonResultEntity.class);
|
JsonResultEntity resultEntity = JSON.parseObject(body.toString(),JsonResultEntity.class);
|
||||||
return resultEntity;
|
return resultEntity.getAttribute();
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("请求错误:" + e.getMessage());
|
logger.error("请求错误:" + e.getMessage());
|
||||||
body.append(e.getMessage());
|
body.append(e.getMessage());
|
||||||
|
|
|
@ -56,6 +56,13 @@ public class EntranceController {
|
||||||
public JsonResultEntity option(ServletRequest servletRequest, ServletResponse servletResponse) throws Exception {
|
public JsonResultEntity option(ServletRequest servletRequest, ServletResponse servletResponse) throws Exception {
|
||||||
return entranceService.doBusiness(servletRequest, servletResponse);
|
return entranceService.doBusiness(servletRequest, servletResponse);
|
||||||
}
|
}
|
||||||
|
//平台接口
|
||||||
|
@RequestMapping(value = "/platformInterface")
|
||||||
|
@ResponseBody
|
||||||
|
public Object centerInterFace(ServletRequest servletRequest, ServletResponse servletResponse) throws Exception {
|
||||||
|
return entranceService.platformInterface(servletRequest, servletResponse);
|
||||||
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* 文件上传接口 /entranceController/fileUpload
|
* 文件上传接口 /entranceController/fileUpload
|
||||||
* @param
|
* @param
|
||||||
|
|
|
@ -8,6 +8,7 @@ import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.servlet.ServletRequest;
|
import javax.servlet.ServletRequest;
|
||||||
import javax.servlet.ServletResponse;
|
import javax.servlet.ServletResponse;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Content
|
* @Content
|
||||||
|
@ -40,5 +41,6 @@ public interface IEntranceService {
|
||||||
* @return com.hzya.frame.web.entity.JsonResultEntity
|
* @return com.hzya.frame.web.entity.JsonResultEntity
|
||||||
**/
|
**/
|
||||||
JsonResultEntity fileUpload(MultipartFile file, FileResultEntity entity, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception;
|
JsonResultEntity fileUpload(MultipartFile file, FileResultEntity entity, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception;
|
||||||
|
//平台接口
|
||||||
|
Object platformInterface(ServletRequest servletRequest, ServletResponse servletResponse) throws InvocationTargetException, IllegalAccessException;
|
||||||
}
|
}
|
||||||
|
|
|
@ -237,8 +237,113 @@ public class EntranceServiceImpl implements IEntranceService {
|
||||||
return BaseResult.getSuccessMessageEntity("附件上传成功",entity);
|
return BaseResult.getSuccessMessageEntity("附件上传成功",entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object platformInterface(ServletRequest servletRequest, ServletResponse servletResponse) throws InvocationTargetException, IllegalAccessException {
|
||||||
|
HttpServletRequest request = (HttpServletRequest) servletRequest;
|
||||||
|
//tailuo 要访问的Bean名称
|
||||||
|
String service = request.getHeader("tl");
|
||||||
|
//bean方法
|
||||||
|
String serviceMethod = request.getHeader("dj");
|
||||||
|
String body = ServletUtil.getBody(servletRequest);
|
||||||
|
//获取类
|
||||||
|
Object object = null;
|
||||||
|
if(service == null || "".equals(service) || serviceMethod == null || "".equals(serviceMethod)){
|
||||||
|
return BaseResult.getFailureMessageEntity("非法请求,请检查");
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
object = ApplicationContextUtil.getBeanByName(service);
|
||||||
|
} catch (SecurityException e) {
|
||||||
|
return BaseResult.getFailureMessageEntity(service + "未找到");
|
||||||
|
}
|
||||||
|
//获取类下面的方法
|
||||||
|
Method[] methods = object.getClass().getMethods();
|
||||||
|
logger.info("methodsLength:" + methods.length);
|
||||||
|
if (methods == null || methods.length == 0) {
|
||||||
|
logger.info("当前methods:" + methods + "methodsLength = " + methods.length);
|
||||||
|
return BaseResult.getFailureMessageEntity(service + "未找到" + serviceMethod + "方法");
|
||||||
|
} else {
|
||||||
|
logger.error("当前methods:" + methods + "methodsLength = " + methods.length);
|
||||||
|
}
|
||||||
|
for (Method m : methods) {
|
||||||
|
logger.info("当前mnAME:" + m.getName() + " :serviceMethod = " + serviceMethod.trim());
|
||||||
|
if (null != m) {
|
||||||
|
if (m.getName().equals(serviceMethod.trim())) {
|
||||||
|
if (m.getName().startsWith("thirdInterface")) {//TODO 后续可能要加强校验规则
|
||||||
|
logger.info("第三方接口,不校验是否登陆");
|
||||||
|
}else if (!"doLogin".equals(m.getName())) {
|
||||||
|
try {
|
||||||
|
StpUtil.checkLogin();
|
||||||
|
//校验当前登陆人是否有权限
|
||||||
|
boolean flag = false;
|
||||||
|
String userId = StpUtil.getLoginIdAsString();
|
||||||
|
//获取接口
|
||||||
|
SysInterfaceEntity sysInterfaceEntity = (SysInterfaceEntity) interfaceCache.get("6","beanName"+service+"interfacName"+serviceMethod);
|
||||||
|
if(sysInterfaceEntity == null || sysInterfaceEntity.getId() == null){
|
||||||
|
//todo 接口权限验证
|
||||||
|
return BaseResult.getFailureMessageEntity("用户无访问权限,请联系管理员");
|
||||||
|
}
|
||||||
|
//查询用户权限
|
||||||
|
if(!flag){
|
||||||
|
SysPopedomInterfaceEntity userPopedomInterfaceEntity = (SysPopedomInterfaceEntity) interfaceCache.get("4","userId"+userId+"interfaceId"+sysInterfaceEntity.getId());
|
||||||
|
if(userPopedomInterfaceEntity != null && userPopedomInterfaceEntity.getId() != null ){
|
||||||
|
flag = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//查询用户角色的权限
|
||||||
|
if(!flag){
|
||||||
|
List<SysUserRolesEntity> userRoleMap = (List<SysUserRolesEntity>) interfaceCache.get("3",null);
|
||||||
|
if(userRoleMap != null && userRoleMap.size() > 0){
|
||||||
|
for (SysUserRolesEntity sysUserRolesEntity : userRoleMap) {
|
||||||
|
if(sysUserRolesEntity.getUserId().equals(userId)){
|
||||||
|
SysPopedomInterfaceEntity sysPopedomInterfaceEntity = (SysPopedomInterfaceEntity) interfaceCache.get("5","roleId"+sysUserRolesEntity.getRoleId()+"interfaceId"+sysInterfaceEntity.getId());
|
||||||
|
if(sysPopedomInterfaceEntity != null && sysPopedomInterfaceEntity.getId() != null ){
|
||||||
|
flag = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!flag){
|
||||||
|
//todo 接口权限验证
|
||||||
|
return BaseResult.getFailureMessageEntity("用户无访问权限,请联系管理员");
|
||||||
|
}
|
||||||
|
} catch (NotLoginException e) {
|
||||||
|
logger.error("token无效");
|
||||||
|
return BaseResult.getFailureMessageEntity("token无效");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
logger.info("m.getNameEquals成功");
|
||||||
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
if (!ObjectUtils.isEmpty(body)) {
|
||||||
|
jsonObject.put("jsonStr", body);
|
||||||
|
}
|
||||||
|
JsonResultEntity jsonResultEntity;
|
||||||
|
try {
|
||||||
|
logger.info("invoke开始>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
||||||
|
logger.info("请求的参数:jsonObject:" + jsonObject.toJSONString());
|
||||||
|
Object result = m.invoke(object, jsonObject);
|
||||||
|
logger.info("invoke结束>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
||||||
|
return result;
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("METHOD doBusiness invokeException{}", e.getMessage());
|
||||||
|
if (e instanceof InvocationTargetException) {
|
||||||
|
Throwable targetException = ((InvocationTargetException) e).getTargetException();
|
||||||
|
if (targetException instanceof BaseSystemException) {
|
||||||
|
throw new BaseSystemException(targetException.getMessage());
|
||||||
|
} else {
|
||||||
|
logger.info("METHOD doBusiness :{}", e.getMessage());
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
throw new BaseSystemException( service + "未找到" + serviceMethod + "方法") ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in New Issue