From 477744c5ed8854681c53f31a9b4c413dd0742707 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Tue, 5 Aug 2025 09:19:47 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/ProductModelController.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java index 59b5fec2..92ba6c4e 100644 --- a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java +++ b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java @@ -643,6 +643,9 @@ public class ProductModelController extends ControllerBase{ indexName=dto.getIndexName(); } Cell cell1=row.getCell(1); + if ((Objects.isNull(cell1) || StrUtil.isBlank(cell1.getStringCellValue()))){ + break; + } dto.setName(StrUtil.trim(cell1.getStringCellValue())); Cell cell2=row.getCell(2); dto.setValue(StrUtil.trim(dataFormatter.formatCellValue(cell2))); @@ -739,7 +742,7 @@ public class ProductModelController extends ControllerBase{ .setCreateBy(AdminUserUtil.getUserName()) .setCreateTime(LocalDateTime.now()); if (StrUtil.equals(language.getCode(), "sa") || StrUtil.equals(language.getCode(), "de")) { - ProductModelParamsItem en = items.stream().filter(it -> StrUtil.equals(it.getLanguageCode(), "us")).findFirst().get(); + ProductModelParamsItem en = items.stream().filter(it ->StrUtil.equals(it.getBatchNumber(), cn.getBatchNumber()) && StrUtil.equals(it.getLanguageCode(), "us")).findFirst().get(); item.setIndexName(translate.translateWord(en.getIndexName(), language.getTranslateCode())); item.setName(translate.translateWord(en.getName(), language.getTranslateCode())); item.setValue(translate.translateWord(en.getValue(), language.getTranslateCode())); From adc503652dc66ed0ae13bdb532740d5ba4d0ab11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Tue, 12 Aug 2025 11:40:45 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feat:=20bug-562=20=E6=9C=BA=E5=9E=8B?= =?UTF-8?q?=E8=B5=84=E6=96=99=E9=9C=80=E8=A6=81=E6=94=AF=E6=8C=81=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E5=8F=91=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProductModelController.java | 7 +- .../request/ProductModelPublishRequest.java | 20 ++++++ .../service/IProductModelFileService.java | 2 +- .../impl/ProductModelFileServiceImpl.java | 66 ++++++++++--------- 4 files changed, 60 insertions(+), 35 deletions(-) create mode 100644 nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/request/ProductModelPublishRequest.java diff --git a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java index 92ba6c4e..12683ccc 100644 --- a/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java +++ b/nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/controller/ProductModelController.java @@ -15,7 +15,10 @@ import com.nflg.mobilebroken.common.pojo.PageData; import com.nflg.mobilebroken.common.pojo.dto.ProductModelParamsExcelDTO; import com.nflg.mobilebroken.common.pojo.request.*; import com.nflg.mobilebroken.common.pojo.vo.*; -import com.nflg.mobilebroken.common.util.*; +import com.nflg.mobilebroken.common.util.AdminUserUtil; +import com.nflg.mobilebroken.common.util.EecExcelUtil; +import com.nflg.mobilebroken.common.util.PageUtil; +import com.nflg.mobilebroken.common.util.VUtils; import com.nflg.mobilebroken.repository.entity.*; import com.nflg.mobilebroken.repository.service.*; import lombok.extern.slf4j.Slf4j; @@ -931,7 +934,7 @@ public class ProductModelController extends ControllerBase{ * @param request 请求参数 */ @PostMapping("/publishFile") - public ApiResult publishFile(@Valid @RequestBody ProductPublishRequest request){ + public ApiResult publishFile(@Valid @RequestBody ProductModelPublishRequest request) { productModelFileService.publish(request); return ApiResult.success(); } diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/request/ProductModelPublishRequest.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/request/ProductModelPublishRequest.java new file mode 100644 index 00000000..2b981526 --- /dev/null +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/request/ProductModelPublishRequest.java @@ -0,0 +1,20 @@ +package com.nflg.mobilebroken.common.pojo.request; + +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class ProductModelPublishRequest { + + @NotEmpty + private List ids; + + /** + * 发布状态,1:发布;2:取消发布; + */ + @NotNull + private Integer state; +} diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelFileService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelFileService.java index 312b7ca1..e5307452 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelFileService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelFileService.java @@ -31,7 +31,7 @@ public interface IProductModelFileService extends IService { void delete(@Valid BatchDeleteRequest request); - void publish(@Valid ProductPublishRequest request); + void publish(@Valid ProductModelPublishRequest request); IPage getList(@Valid ProductModelImageSearchRequest request); diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java index 15f94349..835e5a2a 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelFileServiceImpl.java @@ -131,40 +131,42 @@ public class ProductModelFileServiceImpl extends ServiceImpl datas = listByIds(request.getIds()); + datas.removeIf(item -> !item.getEnable()); + datas.forEach(info -> { + if (!Objects.equals(info.getState(), request.getState())) { + if (Objects.equals(request.getState(), PublishState.Published.getState())) { + info.setState(PublishState.Published.getState()); + info.setPublishBy(AdminUserUtil.getUserName()); + info.setPublishTime(LocalDateTime.now()); + lambdaUpdate() + .set(ProductModelFile::getState, PublishState.Obsolete.getState()) + .eq(ProductModelFile::getModelId, info.getModelId()) + .eq(ProductModelFile::getBatchNumber, info.getBatchNumber()) + .eq(ProductModelFile::getState, PublishState.Published.getState()) + .update(); + } else { + ProductModelFile obsolete = lambdaQuery() + .eq(ProductModelFile::getModelId, info.getModelId()) + .eq(ProductModelFile::getBatchNumber, info.getBatchNumber()) + .eq(ProductModelFile::getState, PublishState.Obsolete.getState()) + .orderByDesc(ProductModelFile::getPublishTime) + .last("Limit 1") + .one(); + if (Objects.nonNull(obsolete)) { + obsolete.setState(PublishState.Published.getState()); + obsolete.setPublishBy(AdminUserUtil.getUserName()); + obsolete.setPublishTime(LocalDateTime.now()); + updateById(obsolete); + } + info.setState(PublishState.Obsolete.getState()); + } + updateById(info); } - info.setState(PublishState.Obsolete.getState()); - } - updateById(info); + }); } @Override