From 1557d5765fbf59335c3942ae2e2e2bcf9f16277a Mon Sep 17 00:00:00 2001 From: o2sword <171715986@qq.com> Date: Tue, 24 May 2022 15:04:15 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BA=E5=9D=9B=E4=BC=98=E5=8C=962=EF=BC=9A?= =?UTF-8?q?=E5=B0=8F=E9=BB=91=E5=B1=8B=EF=BC=9B=E5=8C=BF=E5=90=8D=E5=8F=91?= =?UTF-8?q?=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../control/jaxrs/shutup/ActionDelete.java | 39 +++++++++++++++++++ .../jaxrs/shutup/ActionListPaging.java | 5 ++- .../control/jaxrs/shutup/ShutupAction.java | 18 +++++++++ 3 files changed, 60 insertions(+), 2 deletions(-) create mode 100644 o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionDelete.java diff --git a/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionDelete.java b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionDelete.java new file mode 100644 index 0000000000..1497a91a2e --- /dev/null +++ b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionDelete.java @@ -0,0 +1,39 @@ +package com.x.bbs.assemble.control.jaxrs.shutup; + +import com.x.base.core.container.EntityManagerContainer; +import com.x.base.core.container.factory.EntityManagerContainerFactory; +import com.x.base.core.entity.annotation.CheckRemoveType; +import com.x.base.core.project.exception.ExceptionAccessDenied; +import com.x.base.core.project.exception.ExceptionEntityNotExist; +import com.x.base.core.project.http.ActionResult; +import com.x.base.core.project.http.EffectivePerson; +import com.x.base.core.project.jaxrs.WrapBoolean; +import com.x.bbs.assemble.control.Business; +import com.x.bbs.entity.BBSShutup; + +class ActionDelete extends BaseAction { + + ActionResult execute(EffectivePerson effectivePerson, String id) throws Exception { + ActionResult result = new ActionResult<>(); + try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) { + Business business = new Business(emc); + if(!business.isManager(effectivePerson)){ + throw new ExceptionAccessDenied(effectivePerson); + } + BBSShutup shutup = emc.find(id, BBSShutup.class); + if (null == shutup) { + throw new ExceptionEntityNotExist(id); + } + emc.beginTransaction(BBSShutup.class); + emc.remove(shutup, CheckRemoveType.all); + emc.commit(); + Wo wo = new Wo(); + wo.setValue(true); + result.setData(wo); + return result; + } + } + + public static class Wo extends WrapBoolean { + } +} diff --git a/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionListPaging.java b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionListPaging.java index 89713bd57e..e571278323 100644 --- a/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionListPaging.java +++ b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ActionListPaging.java @@ -81,8 +81,9 @@ class ActionListPaging extends BaseAction { private static final long serialVersionUID = 4928128631701115688L; - static WrapCopier copier = WrapCopierFactory.wo(BBSShutup.class, Wo.class,null, - ListTools.toList(JpaObject.FieldsUnmodifyExcludeId, BBSShutup.unmuteDateTime_FIELDNAME, BBSShutup.operator_FIELDNAME)); + static WrapCopier copier = WrapCopierFactory.wo(BBSShutup.class, Wo.class, + JpaObject.singularAttributeField(BBSShutup.class, true, true), + ListTools.toList(BBSShutup.unmuteDateTime_FIELDNAME)); } diff --git a/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ShutupAction.java b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ShutupAction.java index abba5d268d..8b1ff85b23 100644 --- a/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ShutupAction.java +++ b/o2server/x_bbs_assemble_control/src/main/java/com/x/bbs/assemble/control/jaxrs/shutup/ShutupAction.java @@ -82,4 +82,22 @@ public class ShutupAction extends StandardJaxrsAction { } asyncResponse.resume(ResponseFactory.getEntityTagActionResultResponse(request, result, jsonElement)); } + + @JaxrsMethodDescribe(value = "解除禁言", action = ActionDelete.class) + @DELETE + @Path("{id}") + @Produces(HttpMediaType.APPLICATION_JSON_UTF_8) + @Consumes(MediaType.APPLICATION_JSON) + public void delete(@Suspended final AsyncResponse asyncResponse, @Context HttpServletRequest request, + @JaxrsParameterDescribe("标识") @PathParam("id") String id) { + ActionResult result = new ActionResult<>(); + EffectivePerson effectivePerson = this.effectivePerson(request); + try { + result = new ActionDelete().execute(effectivePerson, id); + } catch (Exception e) { + logger.error(e, effectivePerson, request, null); + result.error(e); + } + asyncResponse.resume(ResponseFactory.getEntityTagActionResultResponse(request, result)); + } } -- GitLab