From 49673574617fa09ba92c2fe7067c98b8b3a4185b Mon Sep 17 00:00:00 2001 From: whycxzp <perryhsu@163.com> Date: 星期一, 13 三月 2023 10:51:16 +0800 Subject: [PATCH] Revert "Revert "旧数据类别可以修复的(物料只对应1个类别的),填充物料类别"" --- src/main/java/com/whyc/service/MaterialService.java | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/whyc/service/MaterialService.java b/src/main/java/com/whyc/service/MaterialService.java index 209587e..09a6149 100644 --- a/src/main/java/com/whyc/service/MaterialService.java +++ b/src/main/java/com/whyc/service/MaterialService.java @@ -1,6 +1,7 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -29,10 +30,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.LinkedList; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; @Service @@ -524,4 +522,29 @@ public List<Material> getSameSubCodeAndModel(List<ProductBom> bomList) { return mapper.getSameSubCodeAndModel(bomList); } + + public void updateFillCategory(String sign) { + if(sign.equals("perryhsu")){ //鍏佽鎿嶄綔 + //鑱旀煡浜у搧鐗╂枡鍘嗗彶琛�,鑾峰彇鐗╂枡瀵瑰簲鐨勭被鍒� + List<Material> materialList = mapper.getCategory(); + List<Material> materialWithOneCategoryList = new LinkedList<>(); + Map<Integer, List<Material>> materialIdMap = materialList.stream().collect(Collectors.groupingBy(Material::getId)); + Set<Integer> materialIdSet = materialIdMap.keySet(); + for (Integer materialId : materialIdSet) { + List<Material> temp = materialIdMap.get(materialId); + if(temp.size()==1){ + materialWithOneCategoryList.add(temp.get(0)); + }else{ + System.err.println("鐗╂枡id:"+materialId+"瀵瑰簲"+temp.size()+"涓被鍒�"+temp.get(0).getCategory()+"/"+temp.get(1).getCategory()); + } + } + //灏嗙被鍒洖濉埌鐗╂枡琛� + for (int i = 0; i < materialWithOneCategoryList.size(); i++) { + Material material = materialWithOneCategoryList.get(i); + UpdateWrapper<Material> update = Wrappers.update(); + update.set("category",material.getCategory()).eq("id",material.getId()); + mapper.update(null,update); + } + } + } } -- Gitblit v1.9.1