fix 物料上传
This commit is contained in:
@@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user