refactor(ysr): 重构 ECN1 修订主表单中的 BOM 数量比较逻辑- 注释掉原有的比较逻辑,使用新的 getBOMLineQuantity 方法替代

- 新增 getBOMLineQuantity 方法,直接比较 BOM 行的数量
- 优化了代码结构,提高了可读性和可维护性
main
熊朝柱 4 weeks ago
parent e2000e883e
commit f450ac2435

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GitToolBoxProjectSettings">
<option name="commitMessageIssueKeyValidationOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
<option name="commitMessageValidationEnabledOverride">
<BoolValueOverride>
<option name="enabled" value="true" />
</BoolValueOverride>
</option>
</component>
</project>

@ -1237,12 +1237,15 @@ public class YSR8_ECN1RevisionMasterForm extends AbstractRendering {
System.out.println("1_afterMap ["+key+"] : ["+afterMap.get(key)+"]");
if (afterMap.containsKey(key)) {
System.out.println("1");
Object compResult = TCUtil.compareBOMLineQuantity(beforeMap.get(key), afterMap.get(key));
if (compResult instanceof double[]) {
System.out.println("2");
double[] ds = (double[]) compResult;
resultMap.put(afterMap.get(key), ds[1] - ds[0]);
}
// Object compResult = TCUtil.compareBOMLineQuantity(beforeMap.get(key), afterMap.get(key));//原生方法:根据“安装位置限定”计算更改前后零部件的数量
// if (compResult instanceof double[]) {
// System.out.println("2");
// double[] ds = (double[]) compResult;
// resultMap.put(afterMap.get(key), ds[1] - ds[0]);
// }
//新增的逻辑
double[] ds = getBOMLineQuantity(beforeMap.get(key),afterMap.get(key));
resultMap.put(afterMap.get(key), ds[1] - ds[0]);
}
}
for (Map.Entry<String, TCComponentBOMLine> afterEntry : afterMap.entrySet()) {
@ -1373,6 +1376,27 @@ public class YSR8_ECN1RevisionMasterForm extends AbstractRendering {
}
}
/**
* bomlineQuantity
* @param tcComponentBOMLine
* @param tcComponentBOMLine2
* @return
* @throws TCException
*/
private double[] getBOMLineQuantity(TCComponentBOMLine tcComponentBOMLine, TCComponentBOMLine tcComponentBOMLine2) throws TCException {
System.out.println("getBOMLineQuantity开始执行···");
if (tcComponentBOMLine == null || tcComponentBOMLine2 == null) {
System.out.println("getBOMLineQuantity入参异常为null");
return null;
}
String targetName = tcComponentBOMLine.getItem().getStringProperty("object_string");
double bl_quantity1 = tcComponentBOMLine.getDoubleProperty("bl_quantity");
double bl_quantity2 = tcComponentBOMLine2.getDoubleProperty("bl_quantity");
System.out.println(targetName+"对应的bomline前后数量对比=【"+bl_quantity1+":"+bl_quantity2+"】");
double[] re = {bl_quantity1,bl_quantity2};
return re;
}
public void countYsr8_SubTotalExpense() {
double ysr8_SubTotalExpense = 0.0;
FormUtil.JTableInfo ci = (FormUtil.JTableInfo) fu.allComponentInfos.get("ecn1.141.11.11");

Loading…
Cancel
Save