diff --git a/src/views/system/jdorder/orderList.vue b/src/views/system/jdorder/orderList.vue index 999b791..bac19d1 100644 --- a/src/views/system/jdorder/orderList.vue +++ b/src/views/system/jdorder/orderList.vue @@ -424,6 +424,7 @@ controls-position="right" class="mobile-pricing-input" @change="onOrderPaymentOrRebateChange(row)" + @blur="onOrderPaymentOrRebateChange(row)" /> @@ -439,6 +440,7 @@ controls-position="right" class="mobile-pricing-input" @change="onOrderPaymentOrRebateChange(row)" + @blur="onOrderPaymentOrRebateChange(row)" /> @@ -454,6 +456,7 @@ controls-position="right" class="mobile-pricing-input" @change="onOrderExtraCostChange(row)" + @blur="onOrderExtraCostChange(row)" /> @@ -470,7 +473,7 @@ 售价
- + 手填
@@ -479,7 +482,7 @@ 利润
- + 手填
@@ -668,6 +671,7 @@ controls-position="right" class="jd-order-input-money jd-order-input-money--payment" @change="onOrderPaymentOrRebateChange(scope.row)" + @blur="onOrderPaymentOrRebateChange(scope.row)" /> @@ -684,6 +688,7 @@ controls-position="right" class="jd-order-input-money jd-order-input-money--rebate" @change="onOrderPaymentOrRebateChange(scope.row)" + @blur="onOrderPaymentOrRebateChange(scope.row)" /> @@ -701,21 +706,21 @@ @@ -2027,6 +2032,10 @@ export default { .catch(() => {}) }, persistOrderRow(row, successMsg) { + if (!row || row.id == null) { + return Promise.resolve() + } + this.ensureMoneyFieldsForPersist(row) return updateJDOrder(row) .then(() => { if (successMsg) this.$message.success(successMsg) @@ -2037,7 +2046,13 @@ export default { this.getList() }) }, - /** 第三方单号为空时粘贴补录:去空白后写入 */ + /** 上传前兜底:避免出现 undefined/null 不入 JSON,后端跳过更新列 */ + ensureMoneyFieldsForPersist(row) { + if (!row) return + if (row.extraCost == null || row.extraCost === '') { + row.extraCost = 0 + } + }, saveThirdPartyOrderNoIfFilled(row, successMsg) { const v = row.thirdPartyOrderNo == null ? '' : String(row.thirdPartyOrderNo).trim().replace(/\s+/g, '') if (!v) {