物料变更处理多选基础资料

This commit is contained in:
tanfengling@x-ri.com 2025-12-23 11:13:34 +08:00
parent 291ddc79e6
commit be8cc4dd24
2 changed files with 49 additions and 24 deletions

View File

@ -155,7 +155,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "kd.bos.entity.property.MulBasedataProp");//字段类型 }
}
} else {
if(newValue.startsWith(",")){
@ -163,11 +164,6 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
}
changeFields.append(",").append(name);
changeContent.append("字段:" + displayName + ",变更前:空,变更后:" + newValue.substring(1) + "");
changeEntry.set("tqq9_fieldname", displayName);//字段名称
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", null);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
}
} else {
if (dynamicObjectColl1 != null && dynamicObjectColl1.size() > 0) {
@ -191,11 +187,12 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", null);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "kd.bos.entity.property.MulBasedataProp");//字段类型
}
}
} else {
//基础资料
//基础资料 单选
DynamicObject dynamicObject = dataEntity.getDynamicObject(name);
DynamicObject dynamicObject1 = srcMaterial.getDynamicObject(name);
if (dynamicObject != null) {
@ -210,7 +207,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "kd.bos.dataentity.entity.DynamicObject");//字段类型
}
} else {
changeFields.append(",").append(name);
@ -220,7 +218,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", null);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "kd.bos.dataentity.entity.DynamicObject");//字段类型
}
} else {
if (dynamicObject1 != null) {
@ -232,7 +231,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", null);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "kd.bos.dataentity.entity.DynamicObject");//字段类型
}
}
}
@ -249,7 +249,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.util.Date");//字段类型
}
} else {
changeFields.append(",").append(name);
@ -259,7 +260,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", null);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.util.Date");//字段类型
}
} else {
if (oldValue != null) {
@ -270,10 +272,10 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", null);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改
changeEntry.set("tqq9_fieldtype", "java.util.Date");//字段类型
}
}
} else if ("java.lang.Integer".equals(propTypeName)) {
int newValue = dataEntity.getInt(name);
int oldValue = srcMaterial.getInt(name);
@ -285,7 +287,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.lang.Integer");//字段类型
}
} else if ("java.lang.Long".equals(propTypeName)) {
long newValue = dataEntity.getLong(name);
@ -298,7 +301,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.lang.Long");//字段类型
}
} else if ("java.math.BigDecimal".equals(propTypeName)) {
BigDecimal newValue = dataEntity.getBigDecimal(name);
@ -313,7 +317,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.math.BigDecimal");//字段类型
}
} else {
changeFields.append(",").append(name);
@ -323,7 +328,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", null);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.math.BigDecimal");//字段类型
}
} else {
if (oldValue != null) {
@ -334,7 +340,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", null);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.math.BigDecimal");//字段类型
}
}
} else if ("boolean".equals(propTypeName)) {
@ -348,7 +355,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "boolean");//字段类型
}
} else {
String newValue = dataEntity.getString(name);
@ -372,7 +380,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.lang.String");//字段类型
}
} else {
changeFields.append(",").append(name);
@ -382,7 +391,8 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_fieldnumber", name);//字段标识
changeEntry.set("tqq9_oldvalue", null);//修改前值
changeEntry.set("tqq9_newvalue", newValue);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_updatedate", new Date());//修改时间
changeEntry.set("tqq9_fieldtype", "java.lang.String");//字段类型
}
} else {
if (StringUtils.isNotBlank(oldValue)) {
@ -394,6 +404,7 @@ public class MaterialBillPlugin extends AbstractBillPlugIn {
changeEntry.set("tqq9_oldvalue", oldValue);//修改前值
changeEntry.set("tqq9_newvalue", null);//修改后值
changeEntry.set("tqq9_updatedate", new Date());//修改事件
changeEntry.set("tqq9_fieldtype", "java.lang.String");//字段类型
}
}
}

View File

@ -50,7 +50,21 @@ public class MaterialAuditOp extends AbstractOperationServicePlugIn {
DynamicObjectCollection srcChangeEntries = srcMaterial.getDynamicObjectCollection("tqq9_changeentry");
for (DynamicObject changeEntry : changeEntries) {
String tqq9_fieldnumber = changeEntry.getString("tqq9_fieldnumber");
srcMaterial.set(tqq9_fieldnumber, material.get(tqq9_fieldnumber));
String tqq9_fieldtype = changeEntry.getString("tqq9_fieldtype");
if("kd.bos.entity.property.MulBasedataProp".equals(tqq9_fieldtype)){
DynamicObjectCollection srcMulBasedata = srcMaterial.getDynamicObjectCollection(tqq9_fieldnumber);
srcMulBasedata.clear();
DynamicObjectCollection mulBasedata = material.getDynamicObjectCollection(tqq9_fieldnumber);
for (DynamicObject mulBasedatum : mulBasedata) {
DynamicObject baseData = new DynamicObject(mulBasedata.getDynamicObjectType());
baseData.set("fbasedataid", mulBasedatum.get("fbasedataid"));
srcMulBasedata.add(baseData);
}
srcMaterial.set(tqq9_fieldnumber, srcMulBasedata);
}else{
srcMaterial.set(tqq9_fieldnumber, material.get(tqq9_fieldnumber));
}
DynamicObject srcChangeEntry = srcChangeEntries.addNew();
srcChangeEntry.set("tqq9_fieldname", changeEntry.getString("tqq9_fieldname"));//字段名称
srcChangeEntry.set("tqq9_fieldnumber", changeEntry.getString("tqq9_fieldnumber"));//字段标识