From 0f85f633d8dd01d4b77c860e7c0399f6056e2407 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Tue, 17 Dec 2024 16:13:41 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E9=A1=B9=E7=9B=AE=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E4=BA=A7=E5=93=81=E9=9C=80=E6=B1=82=E9=87=8D=E6=9E=84):=20?= =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BA=A7=E5=93=81=E9=9C=80=E6=B1=82=E8=A7=84?= =?UTF-8?q?=E6=A0=BC=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 需求规格支持批量更新模块和计划 关联Issue:https://pm.gitlink.org.cn/Gitlink/projects/228/bug/124131 Signed-off-by: OTTO <731554297@qq.com> --- .../controller/ProductReqSpecsController.java | 23 +++++++++++++++---- .../IPmsProductRequirementService.java | 2 ++ .../PmsProductRequirementServiceImpl.java | 12 ++++++---- 3 files changed, 29 insertions(+), 8 deletions(-) diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/controller/ProductReqSpecsController.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/controller/ProductReqSpecsController.java index 05887ff69..8de70de21 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/controller/ProductReqSpecsController.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/controller/ProductReqSpecsController.java @@ -1,5 +1,6 @@ package com.microservices.pms.product.controller; +import com.alibaba.fastjson2.JSONObject; import com.microservices.common.core.web.controller.BaseController; import com.microservices.common.core.web.domain.AjaxResult; import com.microservices.common.core.web.domain.GenericsAjaxResult; @@ -10,10 +11,7 @@ import com.microservices.common.security.annotation.RequiresPermissions; import com.microservices.pms.product.domain.vo.*; import com.microservices.pms.product.service.IPmsProductRequirementService; import com.microservices.pms.project.domain.PmsProject; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; -import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -153,4 +151,21 @@ public class ProductReqSpecsController extends BaseController { public List typeList() { return pmsProductRequirementService.selectReqSpecsTypeList(); } + + /** + * 批量修改产品需求 + */ + @RequiresPermissions("pms:pmsProductRequirement:edit") + @Log(title = "需求规格", businessType = BusinessType.UPDATE) + @PutMapping("/batch") + @ApiOperation(value = "批量修改产品需求规格") + public AjaxResult batchEdit( + @ApiParam(name = "pmsProductRequirementBatchUpdateVo", + value = "【字段说明】(非必填字段不传递则代表不更新,传null则代表置空):\n" + + "idList:需求Id列表(必填),示例:[1,2,3];\n" + + "pmsProductModuleId:关联产品模块ID;\n" + + "pmsProductPlanId:关联产品计划ID;\n") + @RequestBody JSONObject pmsProductRequirementBatchUpdateVo) { + return toAjax(pmsProductRequirementService.batchUpdatePmsProductRequirement(pmsProductRequirementBatchUpdateVo)); + } } diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java index aca7090d9..42093dc2b 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java @@ -140,4 +140,6 @@ public interface IPmsProductRequirementService void updateReqSpecsStatusByProjectReqId(Long projectReqId, ProductReqStatus productReqStatus); List selectReqSpecsProjectList(String productIdentifier); + + int batchUpdatePmsProductRequirement(JSONObject pmsProductRequirementBatchUpdateVo); } diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java index 0f1e83286..e48be1c59 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java @@ -5,10 +5,7 @@ import com.alibaba.fastjson2.JSONObject; import com.microservices.common.core.constant.SecurityConstants; import com.microservices.common.core.exception.NotFoundException; import com.microservices.common.core.exception.ServiceException; -import com.microservices.common.core.utils.DateUtils; -import com.microservices.common.core.utils.PageUtils; -import com.microservices.common.core.utils.PinYinStringUtils; -import com.microservices.common.core.utils.StringUtils; +import com.microservices.common.core.utils.*; import com.microservices.common.core.web.page.GenericsTableDataInfo; import com.microservices.common.httpClient.util.GitLinkRequestHelper; import com.microservices.common.security.utils.SecurityUtils; @@ -632,6 +629,13 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS return pmsProjectService.selectPmsProjectList(pmsProjectSearch); } + @Override + public int batchUpdatePmsProductRequirement(JSONObject jsonObject) { + List idList = JSONUtils.getLongListByJsonArray(jsonObject.getJSONArray("idList")); + checkBatchUpdateInTheSameProduct(idList); + return batchUpdatePmsProductRequirementByJsonObject(idList, jsonObject); + } + private ProductReqSpecsDetailVo toProductReqSpecsDetailVo(PmsProductRequirement pmsProductRequirement) { ProductReqSpecsDataVo productReqSpecsDataVo = toProductReqSpecsDataVo(pmsProductRequirement, null); ProductReqSpecsDetailVo productReqSpecsDetailVo = productReqSpecsDataVo.toProductReqSpecsDetailVo();