package com.x.teamwork.assemble.control.jaxrs.global; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; import com.x.base.core.entity.JpaObject; import com.x.base.core.project.annotation.FieldDescribe; import com.x.base.core.project.bean.WrapCopier; import com.x.base.core.project.bean.WrapCopierFactory; import com.x.base.core.project.cache.ApplicationCache; import com.x.base.core.project.http.ActionResult; import com.x.base.core.project.http.EffectivePerson; import com.x.base.core.project.jaxrs.WoId; import com.x.base.core.project.logger.Logger; import com.x.base.core.project.logger.LoggerFactory; import com.x.teamwork.core.entity.Dynamic; import com.x.teamwork.core.entity.Priority; import com.x.teamwork.core.entity.Project; import com.x.teamwork.core.entity.ProjectGroup; public class ActionPriorityDelete extends BaseAction { private static Logger logger = LoggerFactory.getLogger(ActionPriorityDelete.class); protected ActionResult execute(HttpServletRequest request, EffectivePerson effectivePerson, String flag) throws Exception { ActionResult result = new ActionResult<>(); Priority priority = null; Boolean check = true; Wo wo = new Wo(); if ( StringUtils.isEmpty( flag ) ) { check = false; Exception exception = new PriorityFlagForQueryEmptyException(); result.error( exception ); } if( Boolean.TRUE.equals( check ) ){ try { priority = priorityQueryService.get(flag); if ( priority == null) { check = false; Exception exception = new PriorityNotExistsException(flag); result.error( exception ); } } catch (Exception e) { check = false; Exception exception = new PriorityQueryException(e, "根据指定flag查询优先级信息对象时发生异常。flag:" + flag); result.error(exception); logger.error(e, effectivePerson, request, null); } } if( Boolean.TRUE.equals( check ) ){ try { priorityPersistService.delete(flag, effectivePerson ); // 更新缓存 ApplicationCache.notify( Priority.class ); wo.setId( priority.getId() ); } catch (Exception e) { check = false; Exception exception = new PriorityQueryException(e, "根据指定flag删除优先级信息对象时发生异常。flag:" + flag); result.error(exception); logger.error(e, effectivePerson, request, null); } } result.setData( wo ); return result; } public static class Wo extends WoId { } }