diff --git a/src/views/system/jdorder/orderList.vue b/src/views/system/jdorder/orderList.vue
index c7188fb..4a1de03 100644
--- a/src/views/system/jdorder/orderList.vue
+++ b/src/views/system/jdorder/orderList.vue
@@ -380,7 +380,16 @@
型号
-
{{ row.modelNumber || '-' }}
+
+
+ 保存
+
地址
@@ -579,7 +588,18 @@
-
+
+
+
+
+
{{ scope.row.address }}
@@ -1229,6 +1249,8 @@ export default {
return {
/** 列表加载时的分销标识快照,失焦保存时与当前值比较避免重复请求 */
_distMarkBaseline: {},
+ /** 列表加载时的型号快照,失焦保存时与当前值比较避免重复请求 */
+ _modelNumberBaseline: {},
loading: false,
list: [],
total: 0,
@@ -1555,12 +1577,15 @@ export default {
/** 列表行默认值(退款开关、利润手填标记等) */
normalizeOrderListItem(item) {
const dist = this.normalizeDistributionMarkInput(item.distributionMark)
+ const modelNum = this.normalizeModelNumberInput(item.modelNumber)
if (item.id != null) {
this.$set(this._distMarkBaseline, item.id, dist)
+ this.$set(this._modelNumberBaseline, item.id, modelNum)
}
return {
...item,
distributionMark: dist,
+ modelNumber: modelNum,
isRefunded: item.isRefunded != null ? item.isRefunded : 0,
isRefundReceived: item.isRefundReceived != null ? item.isRefundReceived : 0,
isRebateReceived: item.isRebateReceived != null ? item.isRebateReceived : 0,
@@ -1573,6 +1598,7 @@ export default {
},
assignListFromResponse(res) {
this._distMarkBaseline = {}
+ this._modelNumberBaseline = {}
const list = (res.rows || res.data || [])
this.list = list.map(item => this.normalizeOrderListItem(item))
this.total = res.total || 0
@@ -1935,6 +1961,26 @@ export default {
if (next === base) return
this.persistOrderRow(row, successMsg)
},
+ /** 型号:去首尾空白(内部保留,避免误改版式) */
+ normalizeModelNumberInput(v) {
+ if (v == null) return ''
+ return String(v).trim()
+ },
+ /** 型号失焦或点保存时写入数据库(与基线一致则不调接口) */
+ saveModelNumberIfChanged(row, successMsg) {
+ if (row == null || row.id == null) return
+ const next = this.normalizeModelNumberInput(row.modelNumber)
+ row.modelNumber = next
+ const base = this._modelNumberBaseline[row.id] != null ? this._modelNumberBaseline[row.id] : ''
+ if (next === base) return
+ this.persistOrderRow(row, successMsg)
+ },
+ onModelNumberBlur(row) {
+ this.saveModelNumberIfChanged(row)
+ },
+ onModelNumberSave(row) {
+ this.saveModelNumberIfChanged(row, '型号已保存')
+ },
onOrderSellingPriceTypeChange(row) {
row.sellingPriceManual = 0
row.profitManual = 0