|
@@ -14,6 +14,7 @@ const ledgerCheckType = {
|
|
|
empty_code: {value: 2, text: '项目节、清单编号同时为空', fun: 'checkCodeEmpty', },
|
|
|
calc: {value: 3, text: '清单数量不等于计量单元之和', fun: 'checkCalc', },
|
|
|
zero: {value: 4, text: '清单数量或单价为0', fun: 'checkZero', },
|
|
|
+ zeroPos: {value: 12, text: '计量单元数量为0', fun: 'checkZeroPos', },
|
|
|
tp: {value: 5, text: '清单金额≠数量×单价', fun: 'checkTp', },
|
|
|
over: {value: 6, text: '超计', fun: 'checkOver', },
|
|
|
same_code: {value: 7, text: '重复项目节', fun: 'checkSameCode', },
|
|
@@ -91,6 +92,23 @@ const ledgerCheckUtil = {
|
|
|
}
|
|
|
return error;
|
|
|
},
|
|
|
+ checkZeroPos: function (ledgerTree, ledgerPos, decimal, option) {
|
|
|
+ const error = [];
|
|
|
+ for (const node of ledgerTree.nodes) {
|
|
|
+ if (node.children && node.children.length > 0) continue;
|
|
|
+
|
|
|
+ const nodePos = ledgerPos.getLedgerPos(node.id);
|
|
|
+ if (!nodePos || nodePos.length === 0) continue;
|
|
|
+
|
|
|
+ for (const np of nodePos) {
|
|
|
+ if (checkZero(np.sgfh_qty) && checkZero(np.qtcl_qty) && checkZero(np.sjcl_qty) && checkZero(np.quantity)) {
|
|
|
+ error.push(node);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return error;
|
|
|
+ },
|
|
|
checkTp: function (ledgerTree, ledgerPos, decimal, option) {
|
|
|
const error = [];
|
|
|
for (const node of ledgerTree.nodes) {
|