Browse Source

分布式本地缓存

master
陈裕财 3 years ago
parent
commit
5611041a5e
  1. 31
      xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java
  2. 17
      xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java
  3. 22
      xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java
  4. 30
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java
  5. 4
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java
  6. 2
      xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java

31
xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java

@ -6,7 +6,6 @@ import com.mdp.core.utils.RequestUtils;
import com.mdp.core.utils.ResponseHelper;
import com.mdp.msg.client.PushNotifyMsgService;
import com.mdp.mybatis.PageUtils;
import com.mdp.qx.HasQx;
import com.mdp.safe.client.entity.User;
import com.mdp.safe.client.utils.LoginUtils;
import com.mdp.swagger.ApiEntityParams;
@ -112,21 +111,21 @@ public class XmGroupController {
}
}
if(StringUtils.hasText(group.getLeaderUserid()) && !group.getLeaderUserid().equals(groupDb.getLeaderUserid())){
tips = projectQxService.checkProjectQx(null,project,0,user, groupDb.getLeaderUserid(),groupDb.getLeaderUsername(),null);
tips = projectQxService.checkProjectQx(project,0,user, groupDb.getLeaderUserid(),groupDb.getLeaderUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
tips=projectQxService.checkProjectScopeQx(null,project,0,group.getLeaderUserid(),group.getLeaderUsername(),null);
tips=projectQxService.checkProjectScopeQx(project,0,group.getLeaderUserid(),group.getLeaderUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
}
if(StringUtils.hasText(group.getAssUserid()) && !group.getAssUserid().equals(groupDb.getAssUserid())){
tips = projectQxService.checkProjectQx(null,project,0,user, groupDb.getAssUserid(),groupDb.getAssUsername(),null);
tips = projectQxService.checkProjectQx(project,0,user, groupDb.getAssUserid(),groupDb.getAssUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
tips=projectQxService.checkProjectScopeQx(null,project,0,group.getAssUserid(),group.getAssUsername(),null);
tips=projectQxService.checkProjectScopeQx(project,0,group.getAssUserid(),group.getAssUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
@ -145,7 +144,7 @@ public class XmGroupController {
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
tips=productQxService.checkProductScopeQx(null,product,0,group.getLeaderUserid(),group.getLeaderUsername(),null);
tips=productQxService.checkProductScopeQx(product,0,group.getLeaderUserid(),group.getLeaderUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
@ -155,7 +154,7 @@ public class XmGroupController {
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
tips=productQxService.checkProductScopeQx(null,product,0,group.getAssUserid(),group.getAssUsername(),null);
tips=productQxService.checkProductScopeQx(product,0,group.getAssUserid(),group.getAssUsername(),null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
@ -347,19 +346,19 @@ public class XmGroupController {
public Tips checkProductGroupQxForAdd(XmProduct xmProduct,User u,XmGroup xmGroup){
Tips tips=new Tips();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
tips=productQxService.checkProductQx(groupsMap,xmProduct,0,u);
tips=productQxService.checkProductQx(xmProduct,0,u);
if(!tips.isOk()){
return tips;
}
if(StringUtils.hasText(xmGroup.getLeaderUserid()) && !xmGroup.getLeaderUserid().equals(u.getUserid())){
tips=productQxService.checkProductScopeQx(groupsMap,xmProduct,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null);
tips=productQxService.checkProductScopeQx(xmProduct,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null);
}
if(!tips.isOk()){
return tips;
}
if(StringUtils.hasText(xmGroup.getAssUserid()) && !xmGroup.getAssUserid().equals(u.getUserid())){
tips=productQxService.checkProductScopeQx(groupsMap,xmProduct,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null);
tips=productQxService.checkProductScopeQx(xmProduct,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null);
}
return tips;
}
@ -367,19 +366,19 @@ public class XmGroupController {
public Tips checkProjectGroupQxForAdd(XmProject project,User u,XmGroup xmGroup){
Tips tips=new Tips();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
tips=projectQxService.checkProjectQx(groupsMap,project,0,u);
tips=projectQxService.checkProjectQx(project,0,u);
if(!tips.isOk()){
return tips;
}
if(StringUtils.hasText(xmGroup.getLeaderUserid()) && !xmGroup.getLeaderUserid().equals(u.getUserid())){
tips=projectQxService.checkProjectScopeQx(groupsMap,project,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null);
tips=projectQxService.checkProjectScopeQx(project,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null);
}
if(!tips.isOk()){
return tips;
}
if(StringUtils.hasText(xmGroup.getAssUserid()) && !xmGroup.getAssUserid().equals(u.getUserid())){
tips=projectQxService.checkProjectScopeQx(groupsMap,project,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null);
tips=projectQxService.checkProjectScopeQx(project,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null);
}
return tips;
}
@ -408,7 +407,7 @@ public class XmGroupController {
}
boolean isPm=xmGroupService.checkUserIsProjectAdm(project,u.getUserid());
if(!isPm) {
tips=projectQxService.checkProjectQx(null,project,0,u,groupDb.getLeaderUserid(),groupDb.getLeaderUsername(), null);
tips=projectQxService.checkProjectQx(project,0,u,groupDb.getLeaderUserid(),groupDb.getLeaderUsername(), null);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}

17
xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java

@ -19,7 +19,6 @@ import com.xm.core.entity.XmTask;
import com.xm.core.queue.XmMenuSumParentsPushService;
import com.xm.core.service.*;
import com.xm.core.vo.BatchChangeParentMenuVo;
import com.xm.core.vo.XmGroupVo;
import io.swagger.annotations.*;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@ -479,8 +478,8 @@ public class XmMenuController {
if(xmProduct==null){
return ResponseHelper.failed("product-data-0","产品已不存在");
}
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user);
tips=productQxService.checkProductQx(xmProduct,2,user);
if(!tips.isOk()){
return failed(tips);
}
@ -488,7 +487,7 @@ public class XmMenuController {
String mmUserid= (String) xmMenuMap.get("mmUserid");
String mmUsername= (String) xmMenuMap.get("mmUsername");
if(!user.getUserid().equals(mmUserid)){
tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,mmUserid,mmUsername,null);
tips=productQxService.checkProductQx(xmProduct,2,user,mmUserid,mmUsername,null);
if(!tips.isOk()){
return failed(tips);
}
@ -501,7 +500,7 @@ public class XmMenuController {
canOper.addAll(xmMenusDb);
}else{
for (XmMenu xm : xmMenusDb) {
tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(), xm.getMmUsername(), null);
tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(), xm.getMmUsername(), null);
if(tips.isOk()){
canOper.add(xm);
}else{
@ -592,7 +591,7 @@ public class XmMenuController {
List<XmMenu> canOper=new ArrayList<>();
List<XmMenu> noOper=new ArrayList<>();
Map<String,Tips> noOperTips=new HashMap<>();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
XmProduct xmProduct= productService.getProductFromCache(xmMenuDb.getProductId());
if(xmProduct==null){
return ResponseHelper.failed("product-data-0","产品已不存在");
@ -601,7 +600,7 @@ public class XmMenuController {
canOper.addAll(xmMenusDb);
}else{
for (XmMenu xm : xmMenusDb) {
tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null);
tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null);
if(tips.isOk()){
canOper.add(xm);
}else{
@ -735,7 +734,7 @@ public class XmMenuController {
List<XmMenu> canOper=new ArrayList<>();
List<XmMenu> noOper=new ArrayList<>();
Map<String,Tips> noOperTips=new HashMap<>();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
XmProduct xmProduct= productService.getProductFromCache(xmMenuDb.getProductId());
if(xmProduct==null){
return ResponseHelper.failed("product-data-0","产品已不存在");
@ -744,7 +743,7 @@ public class XmMenuController {
canOper.addAll(xmMenusDb);
}else{
for (XmMenu xm : xmMenusDb) {
tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null);
tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null);
if(tips.isOk()){
canOper.add(xm);
}else{

22
xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java

@ -596,11 +596,11 @@ public class XmQuestionController {
}
List<XmQuestion> productNoDel=new ArrayList<>();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
if(productsMap.size()>0){
for (String productId : productsMap.keySet()) {
XmProduct xmProduct=productService.getProductFromCache(productId);
Tips tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user);
Tips tips1=productQxService.checkProductQx(xmProduct,1,user);
if(!tips1.isOk()){
productNoDel.addAll(productsMap.get(productId));
for (XmQuestion xmQuestion : productsMap.get(productId)) {
@ -616,7 +616,7 @@ public class XmQuestionController {
canOper.addAll(questions);
}else if(opType==2){//重新指派要检查被指派人是否在项目组
for (XmQuestion question : questions) {
tips1=productQxService.checkProductScopeQx(groupsMap,xmProduct,1,question.getHandlerUserid(),question.getHandlerUsername(),null);
tips1=productQxService.checkProductScopeQx(xmProduct,1,question.getHandlerUserid(),question.getHandlerUsername(),null);
if(!tips1.isOk()){
productNoDel.add(question);
noOperTips.put(question.getId(),tips1);
@ -629,11 +629,11 @@ public class XmQuestionController {
}else{
for (XmQuestion question : questions) {
if(opType==0){
tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getCreateUserid(),question.getCreateUsername(),null);
tips1=productQxService.checkProductQx(xmProduct,1,user,question.getCreateUserid(),question.getCreateUsername(),null);
}else if(opType==1){
tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null);
tips1=productQxService.checkProductQx(xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null);
}else if(opType==2){
tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null);
tips1=productQxService.checkProductQx(xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null);
}
if(!tips1.isOk()){
@ -667,7 +667,7 @@ public class XmQuestionController {
if(projectsMap.size()>0){
for (String projectId : projectsMap.keySet()) {
XmProject xmProject=projectService.getProjectFromCache(projectId);
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,1,user);
Tips tips1=projectQxService.checkProjectQx(xmProject,1,user);
if(!tips1.isOk()){
noOper.addAll(projectsMap.get(projectId));
for (XmQuestion xmQuestion : projectsMap.get(projectId)) {
@ -683,7 +683,7 @@ public class XmQuestionController {
canOper.addAll(questions);
}else if(opType==2){//重新指派要检查被指派人是否在项目组
for (XmQuestion question : questions) {
tips1=projectQxService.checkProjectScopeQx(groupsMap,xmProject,1,question.getHandlerUserid(),question.getHandlerUsername(),null);
tips1=projectQxService.checkProjectScopeQx(xmProject,1,question.getHandlerUserid(),question.getHandlerUsername(),null);
if(!tips1.isOk()){
noOper.add(question);
noOperTips.put(question.getId(),tips1);
@ -696,11 +696,11 @@ public class XmQuestionController {
}else {
for (XmQuestion question : questions) {
if (opType == 0) {
tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getCreateUserid(), question.getCreateUsername(), null);
tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getCreateUserid(), question.getCreateUsername(), null);
} else if (opType == 1) {
tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null);
tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null);
} else if (opType == 2) {
tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null);
tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null);
}
if (!tips1.isOk()) {

30
xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java

@ -335,7 +335,7 @@ public class XmTaskController {
return ResponseHelper.failed("tasks-0","该任务已不存在");
}
Map<String,XmProject> projectMap=new HashMap<>();
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
if(xmTaskMap.containsKey("createUserid")){
String createUserid=(String) xmTaskMap.get("createUserid");
String createUsername=(String) xmTaskMap.get("createUsername");
@ -344,7 +344,7 @@ public class XmTaskController {
for (String project : projects) {
XmProject xmProject=xmProjectService.getProjectFromCache(project);
projectMap.put(xmProject.getId(),xmProject);
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,createUserid,createUsername,cbranchId);
Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,createUserid,createUsername,cbranchId);
if(!tips1.isOk()){
return ResponseHelper.failed(tips1);
};
@ -363,7 +363,7 @@ public class XmTaskController {
if(groupService.checkUserIsProjectAdm(xmProject,user.getUserid())){
can.add(xmTaskDb);
}else{
tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
tips=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
if(!tips.isOk()){
no.add(xmTaskDb);
}else{
@ -777,15 +777,15 @@ public class XmTaskController {
XmProject xmProject=xmProjectService.getProjectFromCache(xmTaskDb.getProjectId());
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
if(!groupService.checkUserIsProjectAdm(xmProject,user.getUserid())){
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
if(!tips1.isOk()){
return ResponseHelper.failed(tips1);
}
}
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskVo.getCreateUserid(),xmTaskVo.getCreateUsername(),xmTaskVo.getCbranchId());
Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskVo.getCreateUserid(),xmTaskVo.getCreateUsername(),xmTaskVo.getCbranchId());
if(!tips1.isOk()){
return ResponseHelper.failed(tips1);
}
@ -891,10 +891,10 @@ public class XmTaskController {
return ResponseHelper.failed("data-0","任务已不存在");
}
XmProject xmProject=xmProjectService.getProjectFromCache(xmTaskDb.getProjectId());
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId());
if(!tips1.isOk()){
tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getExecutorUserid(),xmTaskDb.getExecutorUsername(),null);
tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getExecutorUserid(),xmTaskDb.getExecutorUsername(),null);
if(!tips1.isOk()){
return ResponseHelper.failed(tips1);
}
@ -1263,15 +1263,15 @@ public class XmTaskController {
}
projectTasks.add(xmTask);
}
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
for (Map.Entry<String, List<XmTask>> pt : projectTasksMap.entrySet()) {
XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(pt.getKey());
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProjectDb,0,user);
Tips tips1=projectQxService.checkProjectQx(xmProjectDb,0,user);
if(!tips1.isOk()){
noAllowTasks.addAll(pt.getValue());
}else{
for (XmTask xmTask : pt.getValue()) {
tips1=projectQxService.checkProjectQx(groupsMap,xmProjectDb,0,user, xmTask.getCreateUserid(),xmTask.getCreateUsername(),xmTask.getCbranchId());
tips1=projectQxService.checkProjectQx(xmProjectDb,0,user, xmTask.getCreateUserid(),xmTask.getCreateUsername(),xmTask.getCbranchId());
if(!tips1.isOk()){
noAllowTasks.add(xmTask);
}
@ -1345,8 +1345,8 @@ public class XmTaskController {
}
String projectId=xmTaskDb.getProjectId();
XmProject xmProject=xmProjectService.getProjectFromCache(projectId);
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user);
tips=projectQxService.checkProjectQx(xmProject,2,user);
if(!tips.isOk()){
return ResponseHelper.failed(tips);
}
@ -1363,7 +1363,7 @@ public class XmTaskController {
canOper.addAll(delNodesDbMap.values());
}else{
for (XmTask node : delNodesDbMap.values()) {
Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,node.getCreateUserid(),node.getCreateUsername(),node.getCbranchId());
Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,node.getCreateUserid(),node.getCreateUsername(),node.getCbranchId());
if(!tips1.isOk()){
noOper.add(node);
noTipsMap.put(tips1.getMsg(),tips1);

4
xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java

@ -358,9 +358,9 @@ public class XmTaskExecuserController {
if(xmProject==null ){
return ResponseHelper.failed("project-0","项目已不存在");
}
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
groupsMap.put(xmProject.getId(),pgroups);
tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user);
tips=projectQxService.checkProjectQx(xmProject,2,user);
if(tips.isOk()) {
boolean exists=groupService.checkUserExistsGroup(pgroups, xmTaskExecuser.getUserid());

2
xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java

@ -235,7 +235,7 @@ public class XmProjectQxService {
if(xmGroupService.checkUserIsProjectAdm(xmProject,head.getUserid())){
return tips;
}
Map<String,List<XmGroupVo>> groupsMap=new HashMap<>();
tips=this.checkProjectScopeQxBatch(xmProject,teamType,head,memUserids);
if(!tips.isOk()){
return tips;

Loading…
Cancel
Save