diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmProductController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmProductController.java index 9b3ff07b..67776e43 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmProductController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmProductController.java @@ -194,7 +194,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200,response=XmProduct.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") }) - @HasQx(value = "xm_core_xmProduct_copyTo",name = "通过复制创建产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_copyTo",name = "通过复制创建产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/copyTo",method=RequestMethod.POST) public Map copyTo(@RequestBody XmProductCopyVo xmProduct) { Map m = new HashMap<>(); @@ -219,7 +219,7 @@ public class XmProductController { XmProduct xmProductNew=xmProductService.copyTo(user,xmProduct); this.xmProductStateService.loadTasksToXmProductState(xmProductNew.getId()); - xmRecordService.addXmProductRecord(xmProductNew.getId(),"通过拷贝创建产品","拷贝项目【"+xmProduct.getId()+"】【"+xmProduct.getProductName()+"】,创建新的项目【"+xmProductNew.getId()+"】【"+xmProductNew.getProductName()+"】","参数:"+ JSON.toJSONString(xmProduct),""); + xmRecordService.addXmProductRecord(xmProductNew.getId(),"通过拷贝创建产品","拷贝产品【"+xmProduct.getId()+"】【"+xmProduct.getProductName()+"】,创建新的产品【"+xmProductNew.getId()+"】【"+xmProductNew.getProductName()+"】","参数:"+ JSON.toJSONString(xmProduct),""); m.put("data",xmProductNew); }catch (BizException e) { tips=e.getTips(); @@ -237,7 +237,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200,response=XmProduct.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") }) - @HasQx(value = "xm_core_xmProduct_add",name = "创建产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_add",name = "创建产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/add",method=RequestMethod.POST) public Map addXmProduct(@RequestBody XmProductAddVo xmProduct) { Map m = new HashMap<>(); @@ -259,7 +259,7 @@ public class XmProductController { if(xmProduct.getLinks()!=null && xmProduct.getLinks().size()>0){ for (XmProductProjectLink link : xmProduct.getLinks()) { if(!StringUtils.hasText(link.getProjectId())) { - return failed("projectId-0", "", "关联项目编号不能为空"); + return failed("projectId-0", "", "关联产品编号不能为空"); } } } @@ -275,10 +275,8 @@ public class XmProductController { if(words!=null && words.size()>0){ return failed("remark-sensitive-word","备注中有敏感词"+words+",请修改后再提交"); } - if(StringUtils.isEmpty(xmProduct.getPmUserid())) { - xmProduct.setPmUserid(user.getUserid()); - xmProduct.setPmUsername(user.getUsername()); - } + xmProduct.setPmUserid(user.getUserid()); + xmProduct.setPmUsername(user.getUsername()); xmProduct.setId(this.xmProductService.createProductId(xmProduct.getCode())); xmProduct.setCtime(new Date()); xmProduct.setLtime(new Date()); @@ -325,7 +323,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}") }) - @HasQx(value = "xm_core_xmProduct_unDel",name = "从回收站恢复产品等",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_unDel",name = "从回收站恢复产品等",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/unDel",method=RequestMethod.POST) public Map unDelXmProduct(@RequestBody XmProduct xmProduct){ Map m = new HashMap<>(); @@ -338,13 +336,16 @@ public class XmProductController { XmProduct xmProductDb=xmProductService.getProductFromCache(xmProduct.getId()); if(xmProductDb==null){ return failed("data-0","产品已不存在"); - }else if(!"1".equals(xmProductDb.getDel())){ + } + if(!"1".equals(xmProductDb.getDel())){ return failed("del-not-1","该产品不是已删除状态"); - }else if(!user.getBranchId().equals(xmProductDb.getBranchId())){ + } + if(!user.getBranchId().equals(xmProductDb.getBranchId())){ return failed("branchId-not-right","该产品不属于您所在的机构,不允许操作"); - }else if(!groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ + } + if(!groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ if(!LoginUtils.isBranchAdmin(xmProductDb.getBranchId())){ - return failed("pmUserid-not-right","您不是该产品产品负责人,也不是产品助理,不允许操作"); + return failed("pmUserid-not-right","您不是该产品产品管理人员,不允许操作"); } } /** @@ -380,7 +381,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}") }) - @HasQx(value = "xm_core_xmProduct_del",name = "删除产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_del",name = "删除产品/战略规划等",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/del",method=RequestMethod.POST) public Map delXmProduct(@RequestBody XmProduct xmProduct){ Map m = new HashMap<>(); @@ -393,13 +394,16 @@ public class XmProductController { XmProduct xmProductDb=xmProductService.getProductFromCache(xmProduct.getId()); if(xmProductDb==null){ return failed("data-0","产品已不存在"); - }else if(!"0".equals(xmProductDb.getPstatus())&&!"3".equals(xmProductDb.getPstatus())){ + } + if(!"0".equals(xmProductDb.getPstatus())&&!"3".equals(xmProductDb.getPstatus())){ return failed("pstatus-not-0-3","该产品不是初始、已关闭状态,不允许删除"); - }else if(!user.getBranchId().equals(xmProductDb.getBranchId())){ + } + if(!user.getBranchId().equals(xmProductDb.getBranchId())){ return failed("branchId-not-right","该产品不属于您所在的机构,不允许删除"); - }else if(!groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ + } + if(!groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ if(!LoginUtils.isBranchAdmin(xmProductDb.getBranchId())){ - return failed("pmUserid-not-right","您不是该产品产品负责人,也不是产品助理,不允许删除.若要强制删除,请联系机构管理员。"); + return failed("pmUserid-not-right","您不是该产品管理人员,不允许删除.若要强制删除,请联系产品管理人员或者机构管理员。"); } } /** @@ -443,7 +447,9 @@ public class XmProductController { if(ids==null || ids.size()==0){ return failed("ids-0","ids不能为空"); } - + if( ids.size()>1){ + return failed("ids-1","一次只能修改一个产品"); + } Set fields=new HashSet<>(); fields.add("id"); for (String fieldName : xmProductMap.keySet()) { @@ -462,37 +468,52 @@ public class XmProductController { if(xmProductsDb==null ||xmProductsDb.size()==0){ return failed("data-0","记录已不存在"); } - List can=new ArrayList<>(); - List no=new ArrayList<>(); - User user = LoginUtils.getCurrentUserInfo(); - for (XmProduct xmProductDb : xmProductsDb) { - if(LoginUtils.isBranchAdmin(xmProductDb.getBranchId()) || groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ - can.add(xmProductDb); - }else{ - no.add(xmProductDb); + User user = LoginUtils.getCurrentUserInfo(); + XmProduct xmProductDb=xmProductsDb.get(0); + if(!LoginUtils.isBranchAdmin(xmProductDb.getBranchId()) && !groupService.checkUserIsProductAdm(xmProductDb,user.getUserid())){ + return failed("noqx-all","无权限修改产品基础信息。产品管理人员、机构管理员有权限更新。"); + } + if(xmProductMap.containsKey("assUserid")){ + String assUserid= (String) xmProductMap.get("assUserid"); + String assUsername= (String) xmProductMap.get("assUsername"); + if(StringUtils.hasText(assUserid)){ + if(!user.getUserid().equals(xmProductDb.getPmUserid()) && !user.getUserid().equals(xmProductDb.getAdmUserid())){ + return failed("noqx-pm","您不是当前产品经理、总监,无权限委任副经理。只有产品经理、总监可以委任产品副经理、产品助理。"); + } } } - if(can.size()>0){ - xmProductMap.put("ids",can.stream().map(i->i.getId()).collect(Collectors.toList())); - xmProductService.editSomeFields(xmProductMap); + if(xmProductMap.containsKey("pmUserid")){ + String pmUserid= (String) xmProductMap.get("pmUserid"); + String pmUsername= (String) xmProductMap.get("pmUsername"); + if(StringUtils.hasText(pmUserid)){ + if(!user.getUserid().equals(xmProductDb.getAdmUserid())){ + return failed("noqx-adm","只有产品总监可以委任产品经理。"); + } + } } - List msgs=new ArrayList<>(); - if(can.size()>0){ - msgs.add(String.format("成功更新以下%s条数据",can.size())); + if(xmProductMap.containsKey("admUserid")){ + String admUserid= (String) xmProductMap.get("admUserid"); + String admUsername= (String) xmProductMap.get("admUsername"); + if(StringUtils.hasText(admUserid)){ + if(!LoginUtils.isBranchAdmin(xmProductDb.getBranchId()) && !user.getUserid().equals(xmProductDb.getAdmUserid())){ + return failed("noqx-adm","只有产品总监、机构管理员可以委任产品总监。"); + } + } } - if(no.size()>0){ - msgs.add(String.format("以下%s个数据无权限更新",no.size())); + xmProductService.editSomeFields(xmProductMap); + + if(StringUtils.hasText(xmProduct.getPmUserid()) && !xmProduct.getPmUserid().equals(xmProductDb.getPmUserid())){ + notifyMsgService.pushMsg(user,xmProduct.getPmUserid(),xmProduct.getPmUsername(),"3",xmProductDb.getId(),xmProductDb.getId(),"您成为产品【"+xmProductDb.getProductName()+"】的产品经理,请及时跟进。"); + } - if(can.size()>0){ - tips.setOkMsg(msgs.stream().collect(Collectors.joining())); - for (XmProduct candb : can) { - this.xmProductService.clearCache(candb.getId()); - } - }else { - tips.setFailureMsg(msgs.stream().collect(Collectors.joining())); + if(StringUtils.hasText(xmProduct.getAssUserid()) && !xmProduct.getAssUserid().equals(xmProductDb.getAssUserid())){ + notifyMsgService.pushMsg(user,xmProduct.getAssUserid(),xmProduct.getAssUsername(),"3",xmProductDb.getId(),xmProductDb.getId(),"您成为产品【"+xmProductDb.getProductName()+"】的副经理,请及时跟进。"); + + } + if(StringUtils.hasText(xmProduct.getAdmUserid()) && !xmProduct.getAdmUserid().equals(xmProductDb.getAdmUserid())){ + notifyMsgService.pushMsg(user,xmProduct.getAdmUserid(),xmProduct.getAdmUsername(),"3",xmProductDb.getId(),xmProductDb.getId(),"您成为产品【"+xmProductDb.getProductName()+"】的产品总监,请及时跟进。"); } - //m.put("data",xmMenu); }catch (BizException e) { tips=e.getTips(); logger.error("",e); @@ -509,7 +530,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200,response=XmProduct.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") }) - @HasQx(value = "xm_core_xmProduct_createProductCode",name = "创建产品代号",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_createProductCode",name = "创建产品代号",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/createProductCode",method=RequestMethod.POST) public Map createProductCode() { Map m = new HashMap<>(); @@ -535,15 +556,19 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200,response=XmProduct.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") }) - @HasQx(value = "xm_core_xmProduct_edit",name = "修改产品/战略规划等基本信息",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_edit",name = "修改产品/战略规划等基本信息",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/edit",method=RequestMethod.POST) public Map editXmProduct(@RequestBody XmProduct xmProduct) { Map m = new HashMap<>(); Tips tips=new Tips("成功更新一条数据"); try{ + + if(!StringUtils.hasText(xmProduct.getId())){ + return failed("id-0","","产品编号不能为空"); + } XmProduct xmProductDb=xmProductService.getProductFromCache(xmProduct.getId()); if(xmProductDb==null){ - return failed("product-0","产品已不存在"); + return failed("data-0","产品已不存在"); } User user=LoginUtils.getCurrentUserInfo(); if(!LoginUtils.isBranchAdmin(xmProductDb.getBranchId())){ @@ -588,7 +613,7 @@ public class XmProductController { @ApiResponses({ @ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}") }) - @HasQx(value = "xm_core_xmProduct_batchDel",name = "批量删除产品/战略规划等基本信息",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @HasQx(value = "xm_core_xmProduct_batchDel",name = "批量删除产品/战略规划等基本信息",moduleId = "xm-project",moduleName = "管理端-产品管理系统") @RequestMapping(value="/batchDel",method=RequestMethod.POST) public Map batchDelXmProduct(@RequestBody List xmProducts) { Map m = new HashMap<>(); diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmProjectController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmProjectController.java index 96d5e796..89bc0393 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmProjectController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmProjectController.java @@ -7,7 +7,6 @@ import com.mdp.core.entity.Tips; import com.mdp.core.err.BizException; import com.mdp.core.utils.BaseUtils; 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; @@ -32,7 +31,6 @@ import springfox.documentation.annotations.ApiIgnore; import java.util.*; import java.util.stream.Collectors; -import static com.mdp.core.utils.BaseUtils.fromMap; import static com.mdp.core.utils.ResponseHelper.failed; /** @@ -144,6 +142,9 @@ public class XmProjectController { return failed("ids-0","ids不能为空"); } + if(ids.size()>1){ + return failed("ids-1","一次只能更新一个项目"); + } Set fields=new HashSet<>(); fields.add("id"); fields.add("code"); @@ -159,43 +160,55 @@ public class XmProjectController { if(fieldKey.size()<=0) { return failed("fieldKey-0","没有需要更新的字段"); } - XmProject xmProject = fromMap(xmProjectMap,XmProject.class); + User user=LoginUtils.getCurrentUserInfo(); List xmProjectsDb=xmProjectService.selectListByIds(ids); if(xmProjectsDb==null ||xmProjectsDb.size()==0){ return failed("data-0","记录已不存在"); } - List can=new ArrayList<>(); - List no=new ArrayList<>(); - User user = LoginUtils.getCurrentUserInfo(); - for (XmProject xmProjectDb : xmProjectsDb) { - Tips tips2 = new Tips("检查通过"); - if(!groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid())){ - return ResponseHelper.failed("not-project-pm","您不是项目管理人员,无权限更新项目信息。"); - }; - if(!tips2.isOk()){ - no.add(xmProjectDb); - }else{ - can.add(xmProjectDb); + XmProject xmProject=BaseUtils.fromMap(xmProjectMap,XmProject.class); + XmProject xmProjectDb=xmProjectsDb.get(0); + if(!LoginUtils.isBranchAdmin(xmProjectDb.getBranchId()) && !groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid())){ + return failed("noqx-all","无权限修改产品基础信息。产品管理人员、机构管理员有权限更新。"); + } + if(xmProjectMap.containsKey("assUserid")){ + String assUserid= (String) xmProjectMap.get("assUserid"); + String assUsername= (String) xmProjectMap.get("assUsername"); + if(StringUtils.hasText(assUserid)){ + if(!user.getUserid().equals(xmProjectDb.getPmUserid()) && !user.getUserid().equals(xmProjectDb.getAdmUserid())){ + return failed("noqx-pm","您不是当前产品经理、总监,无权限委任副经理。只有产品经理、总监可以委任项目副经理、项目助理。"); + } } } - if(can.size()>0){ - xmProjectMap.put("ids",can.stream().map(i->i.getId()).collect(Collectors.toList())); - xmProjectService.editSomeFields(xmProjectMap); + if(xmProjectMap.containsKey("pmUserid")){ + String pmUserid= (String) xmProjectMap.get("pmUserid"); + String pmUsername= (String) xmProjectMap.get("pmUsername"); + if(StringUtils.hasText(pmUserid)){ + if(!user.getUserid().equals(xmProjectDb.getAdmUserid())){ + return failed("noqx-adm","只有项目总监可以委任项目经理。"); + } + } } - List msgs=new ArrayList<>(); - if(can.size()>0){ - msgs.add(String.format("成功更新%s条数据",can.size())); + if(xmProjectMap.containsKey("admUserid")){ + String admUserid= (String) xmProjectMap.get("admUserid"); + String admUsername= (String) xmProjectMap.get("admUsername"); + if(StringUtils.hasText(admUserid)){ + if(!LoginUtils.isBranchAdmin(xmProjectDb.getBranchId()) && !user.getUserid().equals(xmProjectDb.getAdmUserid())){ + return failed("noqx-adm","只有项目总监、机构管理员可以委任项目总监。"); + } + } } - if(no.size()>0){ - msgs.add(String.format("有%s个数据无权限更新",no.size())); + this.xmProjectService.editSomeFields(xmProjectMap); + + if(StringUtils.hasText(xmProject.getPmUserid()) && !xmProject.getPmUserid().equals(xmProjectDb.getPmUserid())){ + notifyMsgService.pushMsg(user,xmProject.getPmUserid(),xmProject.getPmUsername(),"1",xmProjectDb.getId(),xmProjectDb.getId(),"您成为项目【"+xmProjectDb.getName()+"】的项目经理,请及时跟进。"); + } - if(can.size()>0){ - for (XmProject project : can) { - xmProjectService.clearProject(project.getId()); - } - tips.setOkMsg(msgs.stream().collect(Collectors.joining())); - }else { - tips.setFailureMsg(msgs.stream().collect(Collectors.joining())); + if(StringUtils.hasText(xmProject.getAssUserid()) && !xmProject.getAssUserid().equals(xmProjectDb.getAssUserid())){ + notifyMsgService.pushMsg(user,xmProject.getAssUserid(),xmProject.getAssUsername(),"1",xmProjectDb.getId(),xmProjectDb.getId(),"您成为项目【"+xmProjectDb.getName()+"】的副经理,请及时跟进。"); + + } + if(StringUtils.hasText(xmProject.getAdmUserid()) && !xmProject.getAdmUserid().equals(xmProjectDb.getAdmUserid())){ + notifyMsgService.pushMsg(user,xmProject.getAdmUserid(),xmProject.getAdmUsername(),"1",xmProjectDb.getId(),xmProjectDb.getId(),"您成为项目【"+xmProjectDb.getName()+"】的项目总监,请及时跟进。"); } //m.put("data",xmMenu); }catch (BizException e) { @@ -321,9 +334,13 @@ public class XmProjectController { Tips tips=new Tips("成功删除一条数据"); try{ User user= LoginUtils.getCurrentUserInfo(); + if(xmProject==null || StringUtils.isEmpty(xmProject.getId())){ + return failed("id-0","项目编号不能为空"); + } XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(xmProject.getId()); if(xmProjectDb==null){ tips.setFailureMsg("项目不存在"); + return failed(tips); } if(!user.getBranchId().equals(xmProjectDb.getBranchId())){ return failed("branchId-not-right","该项目不属于您的组织,不允许您进行删除"); @@ -365,22 +382,15 @@ public class XmProjectController { User user= LoginUtils.getCurrentUserInfo(); if( !StringUtils.hasText(xmProject.getId())){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("id-0","项目编号不能为空"); } XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(xmProject.getId()); if(xmProjectDb==null){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("data-0","项目不存在"); } - boolean isCreate=user.getUserid().equals(xmProjectDb.getCreateUserid()); boolean isPm=groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid()); - if( !isCreate && !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { - tips.setFailureMsg("您无权操作!项目创建人、项目经理才能修改项目基础数据"); - m.put("tips", tips); - return m; + if( !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { + return failed("noqx","您无权操作!项目管理人员才能修改项目基础数据"); } xmProjectService.updateByPk(xmProject); xmProjectService.clearProject(xmProject.getId()); @@ -432,22 +442,15 @@ public class XmProjectController { User user= LoginUtils.getCurrentUserInfo(); if( !StringUtils.hasText(xmProject.getId())){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("id-0","项目编号不能为空"); } XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(xmProject.getId()); if(xmProjectDb==null){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("data-0","项目不存在"); } - boolean isCreate=user.getUserid().equals(xmProjectDb.getCreateUserid()); - boolean isPm=groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid()); - if( !isCreate && !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { - tips.setFailureMsg("您无权操作!项目创建人、项目经理才能修改项目状态"); - m.put("tips", tips); - return m; + boolean isPm=groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid()); + if( !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { + return failed("noqx","您无权操作!项目管理人员才能修改项目状态"); } xmProjectService.updateStatus(xmProject); xmProjectService.clearProject(xmProject.getId()); @@ -478,22 +481,15 @@ public class XmProjectController { try{ User user= LoginUtils.getCurrentUserInfo(); if( !StringUtils.hasText(xmProject.getId())){ - tips.setFailureMsg("项目编号不能为空"); - m.put("tips", tips); - return m; + return failed("id-0","项目编号不能为空"); } XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(xmProject.getId()); if(xmProjectDb==null){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("data-0","项目不存在"); } - boolean isCreate=user.getUserid().equals(xmProjectDb.getCreateUserid()); boolean isPm=groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid()); - if( !isCreate && !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { - tips.setFailureMsg("您无权操作!项目创建人、项目经理才能修改项目预算"); - m.put("tips", tips); - return m; + if( !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { + return failed("noqx","您无权操作!项目管理人员才能修改项目预算"); } xmProjectService.editBudget(xmProject); xmProjectService.clearProject(xmProject.getId()); @@ -510,7 +506,11 @@ public class XmProjectController { m.put("tips", tips); return m; } - + + /** + * + * @param xmProject + * @return @ApiOperation( value = "根据主键修改一条xm_project信息",notes="editXmProject") @ApiResponses({ @ApiResponse(code = 200,response=XmProject.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") @@ -523,22 +523,15 @@ public class XmProjectController { try{ User user= LoginUtils.getCurrentUserInfo(); if( !StringUtils.hasText(xmProject.getId())){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("id-0","项目编号不能为空"); } XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(xmProject.getId()); if(xmProjectDb==null){ - tips.setFailureMsg("项目不存在"); - m.put("tips", tips); - return m; + return failed("data-0","项目不存在"); } - boolean isCreate=user.getUserid().equals(xmProjectDb.getCreateUserid()); boolean isPm=groupService.checkUserIsProjectAdm(xmProjectDb,user.getUserid()); - if( !isCreate && !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId()) ) { - tips.setFailureMsg("您无权操作!项目创建人、项目经理才能修改项目基础信息"); - m.put("tips", tips); - return m; + if( !isPm && !LoginUtils.isBranchAdmin(xmProjectDb.getBranchId())) { + return failed("noqx","您无权操作!项目管理人员才能修改项目基础信息"); } xmProjectService.updateProject(xmProject); if(StringUtils.hasText(xmProject.getPmUserid()) && !xmProject.getPmUserid().equals(xmProjectDb.getPmUserid())){ @@ -567,6 +560,9 @@ public class XmProjectController { return m; } + */ + + @ApiOperation( value = "存为模板",notes="editXmProject") @ApiResponses({ @ApiResponse(code = 200,response=XmProject.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}")