|
@@ -37,6 +37,9 @@ var Bills = {
|
|
|
let uData = JSON.parse(JSON.stringify(data));
|
|
|
delete uData.feesIndex;
|
|
|
delete uData.flagsIndex;
|
|
|
+ if (uData.quantity) {
|
|
|
+ uData.quantity = uData.quantity.toFixed(2);
|
|
|
+ }
|
|
|
if (uData.fees) {
|
|
|
for (let fee of uData.fees) {
|
|
|
fee.unitFee = fee.unitFee.toFixed(2);
|
|
@@ -85,6 +88,9 @@ var Bills = {
|
|
|
this.datas = datas;
|
|
|
// generate Fees & Flags Index, For View & Calculate
|
|
|
this.datas.forEach(function (data) {
|
|
|
+ if (data.quantity) {
|
|
|
+ data.quantity = parseFloat(data.quantity);
|
|
|
+ }
|
|
|
data.feesIndex = {};
|
|
|
if (data.fees) {
|
|
|
data.fees.forEach(function (fee) {
|
|
@@ -203,6 +209,7 @@ var Bills = {
|
|
|
project.quantity_detail.deleteByBills(deleteData);
|
|
|
project.pushNow('deleteBills', modules, deleteDatas);
|
|
|
|
|
|
+ this.datas.splice(this.datas.indexOf(node.data), 1);
|
|
|
return this.tree.delete(node);
|
|
|
};
|
|
|
|
|
@@ -250,25 +257,14 @@ var Bills = {
|
|
|
} else {
|
|
|
data[field] = newValue;
|
|
|
}
|
|
|
- updateData.push({'updateType': 'ut_update', 'updateData': data});
|
|
|
+ updateData.push({'updateType': 'ut_update', 'updateData': tools.formatBillsUpdateData(data)});
|
|
|
this.project.pushNow('updateBills', this.getSourceType(), updateData);
|
|
|
};
|
|
|
|
|
|
bills.prototype.updateAll = function () {
|
|
|
let updateData = [];
|
|
|
for (let data of this.datas) {
|
|
|
- let uData = JSON.parse(JSON.stringify(data));
|
|
|
- delete uData.feesIndex;
|
|
|
- delete uData.flagsIndex;
|
|
|
- if (uData.fees) {
|
|
|
- for (let fee of uData.fees) {
|
|
|
- fee.unitFee = fee.unitFee.toFixed(2);
|
|
|
- fee.totalFee = fee.totalFee.toFixed(2);
|
|
|
- fee.tenderUnitFee = fee.tenderUnitFee.toFixed(2);
|
|
|
- fee.tenderTotalFee = fee.tenderTotalFee.toFixed(2);
|
|
|
- }
|
|
|
- }
|
|
|
- updateData.push({'updateType': 'ut_update', 'updateData': uData});
|
|
|
+ updateData.push({'updateType': 'ut_update', 'updateData': tools.formatBillsUpdateData(data)});
|
|
|
}
|
|
|
this.project.pushNow('updateAllBills', this.getSourceType(), updateData);
|
|
|
};
|
|
@@ -333,6 +329,16 @@ var Bills = {
|
|
|
|
|
|
this.project.pushNow('replaceBills', this.getSourceType(), updateData);
|
|
|
return node;
|
|
|
+ };
|
|
|
+
|
|
|
+ bills.prototype.sameStdCodeBillsData = function (stdCode) {
|
|
|
+ let reg = new RegExp('^' + stdCode);
|
|
|
+ for (let data of this.datas) {
|
|
|
+ if (data.code && data.code.length === 12 && reg.test(data.code) && /^[\d]+$/.test(data.code)) {
|
|
|
+ return data;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
return new bills(project);
|