From 2f8e70ad2884d2b6b7443dfae0af11ae9cfc8b99 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 28 二月 2025 17:44:10 +0800 Subject: [PATCH] bug修改 --- manage/src/main/java/com/jilongda/manage/controller/TModelController.java | 54 +++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 43 insertions(+), 11 deletions(-) diff --git a/manage/src/main/java/com/jilongda/manage/controller/TModelController.java b/manage/src/main/java/com/jilongda/manage/controller/TModelController.java index c9a945e..7ae509d 100644 --- a/manage/src/main/java/com/jilongda/manage/controller/TModelController.java +++ b/manage/src/main/java/com/jilongda/manage/controller/TModelController.java @@ -1,6 +1,7 @@ package com.jilongda.manage.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.jilongda.common.basic.ApiResult; import com.jilongda.common.basic.PageInfo; @@ -89,19 +90,50 @@ @ApiOperation(value = "修改镜架型号") @PostMapping(value = "/update") public ApiResult<String> update(@RequestBody TModelDTO dto) { - - modelService.remove(Wrappers.lambdaQuery(TModel.class) - .eq(TModel::getName,dto.getName())); - + List<TModel> list = modelService.lambdaQuery() + .eq(TModel::getName, dto.getName()).list(); List<String> colorList = dto.getColorList(); - List<TModel> models = new ArrayList<>(); - for (String s : colorList) { - TModel model = new TModel(); - BeanUtils.copyProperties(dto, model); - model.setColor(s); - models.add(model); + if (list.size()<colorList.size()){ + for (int i = 0; i < colorList.size(); i++) { + if (i>list.size()-1){ + TModel model = new TModel(); + BeanUtils.copyProperties(dto, model); + model.setId(null); + model.setColor(colorList.get(i)); + list.add(model); + }else { + list.get(i).setColor(colorList.get(i)); + } + } + }else if (list.size()>colorList.size()){ + List<TModel> removeList = new ArrayList<>(); + List<TModel> updateList = new ArrayList<>(); + for (int i = 0; i < list.size(); i++) { + if (i<colorList.size()){ + updateList.add(list.get(i)); + list.get(i).setColor(colorList.get(i)); + }else { + removeList.add(list.get(i)); + } + } + list = updateList; + modelService.removeByIds(removeList.stream().map(TModel::getId) + .collect(Collectors.toList())); + }else { + for (int i = 0; i < list.size(); i++) { + list.get(i).setColor(colorList.get(i)); + } } - modelService.saveBatch(models); + modelService.saveOrUpdateBatch(list); +// List<TModel> models = new ArrayList<>(); +// for (String s : colorList) { +// TModel model = new TModel(); +// BeanUtils.copyProperties(dto, model); +// model.setId(null); +// model.setColor(s); +// models.add(model); +// } +// modelService.saveBatch(models); return ApiResult.success(); } -- Gitblit v1.7.1