Browse Source

fix 物料上传

master
张江玮 2 years ago
parent
commit
a4eddab07e
  1. 31
      lms/nladmin-system/src/main/java/org/nl/wms/basedata/service/impl/MaterialbaseServiceImpl.java

31
lms/nladmin-system/src/main/java/org/nl/wms/basedata/service/impl/MaterialbaseServiceImpl.java

@ -39,6 +39,7 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors;
/** /**
* @author zhouz * @author zhouz
@ -261,35 +262,29 @@ public class MaterialbaseServiceImpl implements MaterialbaseService {
List<ReadSheet> sheets = excelReader.excelExecutor().sheetList(); List<ReadSheet> sheets = excelReader.excelExecutor().sheetList();
WQLObject materialTable = WQLObject.getWQLObject("md_me_materialbase"); WQLObject materialTable = WQLObject.getWQLObject("md_me_materialbase");
List<String> material_codes = materialTable.query().getResultJSONArray(0)
.stream()
.map(o -> ((JSONObject) o).getString("material_code"))
.collect(Collectors.toList());
JSONObject material = new JSONObject(); JSONObject material = new JSONObject();
Long userId = SecurityUtils.getCurrentUserId(); material.put("is_used", '1');
String nickName = SecurityUtils.getCurrentNickName(); material.put("is_delete", '0');
String now = DateUtil.now(); CommonUtils.addCommonColum(material);
for (ReadSheet sheet : sheets) { for (ReadSheet sheet : sheets) {
List<Map<Integer, String>> materials = EasyExcel.read(file).sheet(sheet.getSheetNo()).doReadSync(); List<Map<Integer, String>> materials = EasyExcel.read(file).sheet(sheet.getSheetNo()).doReadSync();
for (Map<Integer, String> materialMap : materials) { for (Map<Integer, String> materialMap : materials) {
material.put("material_id", IdUtil.getSnowflake(1L, 1L).nextId());
String material_code = materialMap.get(1); String material_code = materialMap.get(1);
material.put("material_code", material_code); material.put("material_code", material_code);
material.put("material_name", materialMap.get(2)); material.put("material_name", materialMap.get(2));
material.put("base_unit", materialMap.get(3)); material.put("base_unit", materialMap.get(3));
material.put("pack_qty", materialMap.get(4) == null ? 0 : Double.parseDouble(materialMap.get(4))); material.put("pack_qty", materialMap.get(4) == null ? 0 : Double.parseDouble(materialMap.get(4)));
if (material_codes.contains(material_code)) {
material.put("is_used", '1'); material.remove("material_id");
material.put("is_delete", '0'); materialTable.update(material, "material_code = '" + material_code + "'");
if (ObjectUtil.isNotEmpty(materialTable.query("material_code = '" + material_code + "'").uniqueResult(0))) {
material.put("update_optid", userId);
material.put("update_optname", nickName);
material.put("update_time", now);
materialTable.update(material);
} else { } else {
material.put("create_id", userId); material.put("material_id", IdUtil.getSnowflake(1L, 1L).nextId());
material.put("create_name", nickName); material_codes.add(material_code);
material.put("create_time", now);
material.put("update_optid", userId);
material.put("update_optname", nickName);
material.put("update_time", now);
materialTable.insert(material); materialTable.insert(material);
} }
} }

Loading…
Cancel
Save