1
This commit is contained in:
@@ -351,7 +351,16 @@
|
||||
</div>
|
||||
<div class="field-row">
|
||||
<span class="field-label">标记</span>
|
||||
<span class="field-value">{{ row.distributionMark || '-' }}</span>
|
||||
<div class="field-value field-value--third-party-edit">
|
||||
<el-input
|
||||
v-model="row.distributionMark"
|
||||
size="small"
|
||||
clearable
|
||||
placeholder="分销标识,失焦或保存写入"
|
||||
@blur="onDistributionMarkBlur(row)"
|
||||
/>
|
||||
<el-button type="primary" size="mini" plain @click="onDistributionMarkSave(row)">保存</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-row">
|
||||
<span class="field-label">型号</span>
|
||||
@@ -539,7 +548,18 @@
|
||||
</el-table-column>
|
||||
|
||||
<!-- 业务信息列 -->
|
||||
<el-table-column label="标记" prop="distributionMark" width="56" align="center"/>
|
||||
<el-table-column label="标记" prop="distributionMark" min-width="92" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input
|
||||
v-model="scope.row.distributionMark"
|
||||
size="mini"
|
||||
clearable
|
||||
placeholder="标识"
|
||||
@blur="onDistributionMarkBlur(scope.row)"
|
||||
@keyup.enter.native="onDistributionMarkBlur(scope.row)"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="型号" prop="modelNumber" width="140"/>
|
||||
<el-table-column label="地址" prop="address" min-width="220" show-overflow-tooltip class-name="address-cell">
|
||||
<template slot-scope="scope">
|
||||
@@ -1164,6 +1184,8 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
/** 列表加载时的分销标识快照,失焦保存时与当前值比较避免重复请求 */
|
||||
_distMarkBaseline: {},
|
||||
loading: false,
|
||||
list: [],
|
||||
total: 0,
|
||||
@@ -1431,8 +1453,13 @@ export default {
|
||||
},
|
||||
/** 列表行默认值(退款开关、利润手填标记等) */
|
||||
normalizeOrderListItem(item) {
|
||||
const dist = this.normalizeDistributionMarkInput(item.distributionMark)
|
||||
if (item.id != null) {
|
||||
this.$set(this._distMarkBaseline, item.id, dist)
|
||||
}
|
||||
return {
|
||||
...item,
|
||||
distributionMark: dist,
|
||||
isRefunded: item.isRefunded != null ? item.isRefunded : 0,
|
||||
isRefundReceived: item.isRefundReceived != null ? item.isRefundReceived : 0,
|
||||
isRebateReceived: item.isRebateReceived != null ? item.isRebateReceived : 0,
|
||||
@@ -1444,6 +1471,7 @@ export default {
|
||||
}
|
||||
},
|
||||
assignListFromResponse(res) {
|
||||
this._distMarkBaseline = {}
|
||||
const list = (res.rows || res.data || [])
|
||||
this.list = list.map(item => this.normalizeOrderListItem(item))
|
||||
this.total = res.total || 0
|
||||
@@ -1792,6 +1820,26 @@ export default {
|
||||
onThirdPartyOrderNoSave(row) {
|
||||
this.saveThirdPartyOrderNoIfFilled(row, '第三方单号已保存')
|
||||
},
|
||||
/** 分销标识:去首尾空白、合并连续空白(与录单行习惯一致) */
|
||||
normalizeDistributionMarkInput(v) {
|
||||
if (v == null) return ''
|
||||
return String(v).trim().replace(/\s+/g, ' ')
|
||||
},
|
||||
/** 分销标识失焦或点保存时写入数据库(与基线一致则不调接口) */
|
||||
saveDistributionMarkIfChanged(row, successMsg) {
|
||||
if (row == null || row.id == null) return
|
||||
const next = this.normalizeDistributionMarkInput(row.distributionMark)
|
||||
row.distributionMark = next
|
||||
const base = this._distMarkBaseline[row.id] != null ? this._distMarkBaseline[row.id] : ''
|
||||
if (next === base) return
|
||||
this.persistOrderRow(row, successMsg)
|
||||
},
|
||||
onDistributionMarkBlur(row) {
|
||||
this.saveDistributionMarkIfChanged(row)
|
||||
},
|
||||
onDistributionMarkSave(row) {
|
||||
this.saveDistributionMarkIfChanged(row, '分销标识已保存')
|
||||
},
|
||||
onOrderSellingPriceTypeChange(row) {
|
||||
row.sellingPriceManual = 0
|
||||
row.profitManual = 0
|
||||
|
||||
Reference in New Issue
Block a user