导入物料去重校验

This commit is contained in:
李贵强 2025-04-23 14:43:39 +08:00
parent d3ed34bdfa
commit 9617add35a
2 changed files with 50 additions and 11 deletions

View File

@ -74,7 +74,6 @@ public class ContractMaterialImportPlugin extends AbstractFormPlugin {
Long id = null; Long id = null;
try { try {
ImportMaterial materialByNumber = getMaterialByNumber(number, set); ImportMaterial materialByNumber = getMaterialByNumber(number, set);
bd_material = BusinessDataServiceHelper.newDynamicObject(BD_MATERIAL); bd_material = BusinessDataServiceHelper.newDynamicObject(BD_MATERIAL);
//物料编码 //物料编码
bd_material.set("number", number); bd_material.set("number", number);
@ -102,6 +101,8 @@ public class ContractMaterialImportPlugin extends AbstractFormPlugin {
dynamicObject.set("fbasedataId",serviceAttribute); dynamicObject.set("fbasedataId",serviceAttribute);
collection.add(dynamicObject); collection.add(dynamicObject);
} }
bd_material.set("qeug_brand",materialByNumber.getMaterialBrand());//品牌
bd_material.set("qeug_model",materialByNumber.getMaterialExtModel());//型号
bd_material.set("enable", "1");//使用状态:可用 bd_material.set("enable", "1");//使用状态:可用
bd_material.set("status", "C");//数据状态:审核 bd_material.set("status", "C");//数据状态:审核
bd_material.set("ctrlstrategy", "5");//控制策略:全局共享 bd_material.set("ctrlstrategy", "5");//控制策略:全局共享
@ -124,6 +125,16 @@ public class ContractMaterialImportPlugin extends AbstractFormPlugin {
return id; return id;
} }
private String checkMaterial(String materialName, String materialModel) {
QFilter qFilter = new QFilter("name", QCP.equals, materialName);
qFilter.and("modelnum",QCP.equals,materialModel);
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("bd_material", qFilter.toArray());
if (dynamicObject!=null){
return dynamicObject.getString("number");
}
return null;
}
private void newMaterialType(Long materialId,DynamicObject group){ private void newMaterialType(Long materialId,DynamicObject group){
DynamicObject materialType = BusinessDataServiceHelper.newDynamicObject("bd_materialgroupdetail"); DynamicObject materialType = BusinessDataServiceHelper.newDynamicObject("bd_materialgroupdetail");
//分类标准 //分类标准
@ -173,10 +184,14 @@ public class ContractMaterialImportPlugin extends AbstractFormPlugin {
// 如果 material 为空 // 如果 material 为空
if (material == null) { if (material == null) {
//TODO:判断物料是否已在系统
number= this.checkMaterial((String) map.get("qeug_materialnames"),(String) map.get("qeug_importmodel"));
if (number==null){
DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject("bd_material"); DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject("bd_material");
CodeRuleInfo codeRule = CodeRuleServiceHelper.getCodeRule(dynamicObject.getDataEntityType().getName(), CodeRuleInfo codeRule = CodeRuleServiceHelper.getCodeRule(dynamicObject.getDataEntityType().getName(),
dynamicObject, null); dynamicObject, null);
number = CodeRuleServiceHelper.getNumber(codeRule, dynamicObject); number = CodeRuleServiceHelper.getNumber(codeRule, dynamicObject);
}
// 构造一个新的 JSONObject 来保存生成的物料编码 // 构造一个新的 JSONObject 来保存生成的物料编码
JSONObject materialJson = new JSONObject(); JSONObject materialJson = new JSONObject();
materialJson.put("importprop","number"); materialJson.put("importprop","number");
@ -195,6 +210,8 @@ public class ContractMaterialImportPlugin extends AbstractFormPlugin {
importMaterial.setMaterialType((String) map.get("qeug_importmaterialtype")); importMaterial.setMaterialType((String) map.get("qeug_importmaterialtype"));
importMaterial.setMaterialModel((String) map.get("qeug_importmodel")); importMaterial.setMaterialModel((String) map.get("qeug_importmodel"));
importMaterial.setMaterialUnit((String) map.get("qeug_importunit")); importMaterial.setMaterialUnit((String) map.get("qeug_importunit"));
importMaterial.setMaterialBrand((String) map.get("qeug_brand"));
importMaterial.setMaterialExtModel((String) map.get("qeug_model"));
materialList.add(importMaterial); materialList.add(importMaterial);
} }

View File

@ -2,15 +2,19 @@ package shkd.repc.recon.formplugin.dynamic;
public class ImportMaterial { public class ImportMaterial {
public String materialNumber; public String materialNumber;//编码
public String materialName; public String materialName;//名称
public String materialType; public String materialType;//分类
public String materialModel; public String materialModel;//规格型号
public String materialUnit; public String materialUnit;//计量单位
public String materialBrand;//品牌
public String materialExtModel;//型号
public String getMaterialNumber() { public String getMaterialNumber() {
return materialNumber; return materialNumber;
@ -52,14 +56,32 @@ public class ImportMaterial {
this.materialUnit = materialUnit; this.materialUnit = materialUnit;
} }
public String getMaterialBrand() {
return materialBrand;
}
public void setMaterialBrand(String materialBrand) {
this.materialBrand = materialBrand;
}
public String getMaterialExtModel() {
return materialExtModel;
}
public void setMaterialExtModel(String materialExtModel) {
this.materialExtModel = materialExtModel;
}
@Override @Override
public String toString() { public String toString() {
return "ImportMaterial{" + return "ImportMaterial{" +
"materialId='" + materialNumber + '\'' + "materialNumber='" + materialNumber + '\'' +
", materialName='" + materialName + '\'' + ", materialName='" + materialName + '\'' +
", materialType='" + materialType + '\'' + ", materialType='" + materialType + '\'' +
", materialModel='" + materialModel + '\'' + ", materialModel='" + materialModel + '\'' +
", materialUnit='" + materialUnit + '\'' + ", materialUnit='" + materialUnit + '\'' +
", materialBrand='" + materialBrand + '\'' +
", materialExtModel='" + materialExtModel + '\'' +
'}'; '}';
} }