diff --git a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/ActionProjectConfigGetByProject.java b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/ActionProjectConfigGetByProject.java index cad5e85b7889b02fa10abf00cce27ffd4d50a7ab..8834e28119d4902b7c513091a97be62db8003af6 100644 --- a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/ActionProjectConfigGetByProject.java +++ b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/ActionProjectConfigGetByProject.java @@ -24,10 +24,11 @@ public class ActionProjectConfigGetByProject extends BaseAction { private static Logger logger = LoggerFactory.getLogger(ActionProjectConfigGetByProject.class); - protected ActionResult> execute(HttpServletRequest request, EffectivePerson effectivePerson, String id ) throws Exception { - ActionResult> result = new ActionResult>(); - List wo = null; + protected ActionResult execute(HttpServletRequest request, EffectivePerson effectivePerson, String id ) throws Exception { + ActionResult result = new ActionResult(); + Wo wo = null; List projectConfigs = null; + ProjectConfig projectConfig = null; Boolean check = true; if ( StringUtils.isEmpty( id ) ) { @@ -39,9 +40,10 @@ public class ActionProjectConfigGetByProject extends BaseAction { if( Boolean.TRUE.equals( check ) ){ try { projectConfigs = projectConfigQueryService.getProjectConfigByProject( id ); - /*if(ListTools.isNotEmpty(projectConfigs)){ + if(ListTools.isNotEmpty(projectConfigs)){ projectConfig = projectConfigs.get(0); } + /* if ( projectConfig == null) { check = false; Exception exception = new ProjectConfigNotExistsException( id ); @@ -57,13 +59,8 @@ public class ActionProjectConfigGetByProject extends BaseAction { if( Boolean.TRUE.equals( check ) ){ try { - if(ListTools.isEmpty(projectConfigs)){ - wo = new ArrayList(); + wo = Wo.copier.copy( projectConfig ); result.setData(wo); - }else{ - wo = Wo.copier.copy( projectConfigs ); - result.setData(wo); - } } catch (Exception e) { Exception exception = new ProjectConfigQueryException(e, "将查询出来的项目配置信息对象转换为可输出的数据信息时发生异常。"); diff --git a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/GlobalAction.java b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/GlobalAction.java index 1b9122284667910bf26a5274aa66313e1d0a6ef1..15d666e42ec64497f5f9e2da7d852fc463657446 100644 --- a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/GlobalAction.java +++ b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/global/GlobalAction.java @@ -213,7 +213,7 @@ public class GlobalAction extends StandardJaxrsAction { public void projectConfigGetByProject(@Suspended final AsyncResponse asyncResponse, @Context HttpServletRequest request, @JaxrsParameterDescribe("项目ID") @PathParam("id") String id ) { - ActionResult> result = new ActionResult<>(); + ActionResult result = new ActionResult<>(); EffectivePerson effectivePerson = this.effectivePerson(request); try { result = new ActionProjectConfigGetByProject().execute( request, effectivePerson, id ); diff --git a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/project/ActionListNextWithFilter.java b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/project/ActionListNextWithFilter.java index 667986181355758c3ef5bd8b53e3cc76a10aa8b6..79f015154d8eccb4421cf73a90ae490ec9e81258 100644 --- a/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/project/ActionListNextWithFilter.java +++ b/o2server/x_teamwork_assemble_control/src/main/java/com/x/teamwork/assemble/control/jaxrs/project/ActionListNextWithFilter.java @@ -21,6 +21,7 @@ import com.x.base.core.project.logger.LoggerFactory; import com.x.base.core.project.tools.ListTools; import com.x.teamwork.assemble.control.Business; import com.x.teamwork.core.entity.Project; +import com.x.teamwork.core.entity.ProjectConfig; import com.x.teamwork.core.entity.tools.filter.QueryFilter; import com.x.teamwork.core.entity.tools.filter.term.InTerm; @@ -105,13 +106,34 @@ public class ActionListNextWithFilter extends BaseAction { try (EntityManagerContainer bc = EntityManagerContainerFactory.instance().create()) { business = new Business(bc); } + + //查询项目配置信息 + List projectConfigs = null; + projectConfigs = projectConfigQueryService.getProjectConfigByProject( project.getId() ); + control = new WrapOutControl(); + + if(ListTools.isNotEmpty(projectConfigs)){ + ProjectConfig projectConfig = projectConfigs.get(0); + control.setTaskCreate(projectConfig.getTaskCreate()); + control.setTaskCopy(projectConfig.getTaskCopy()); + control.setTaskRemove(projectConfig.getTaskRemove()); + control.setLaneCreate(projectConfig.getLaneCreate()); + control.setLaneEdit(projectConfig.getLaneEdit()); + control.setLaneRemove(projectConfig.getLaneRemove()); + control.setAttachmentUpload(projectConfig.getAttachmentUpload()); + control.setComment(projectConfig.getComment()); + }else{ + control.setTaskCreate(true); + } + if( business.isManager(effectivePerson) || effectivePerson.getDistinguishedName().equalsIgnoreCase( project.getCreatorPerson() ) || project.getManageablePersonList().contains( effectivePerson.getDistinguishedName() )) { control.setDelete( true ); control.setEdit( true ); control.setSortable( true ); + control.setTaskCreate(true); }else{ control.setDelete( false ); control.setEdit( false ); @@ -122,6 +144,9 @@ public class ActionListNextWithFilter extends BaseAction { }else{ control.setFounder( false ); } + if(project.getDeleted() || project.getCompleted()){ + control.setTaskCreate(false); + } wo.setControl(control); wos.add( wo ); }