|
@@ -44,7 +44,7 @@
|
|
|
</div>
|
|
|
<div v-else>
|
|
|
销售单号:
|
|
|
- <a-input placeholder="请输入销售单号" v-model.trim="form.salesBillNo" :maxLength="50" @change="fetchUser"/>
|
|
|
+ <a-input placeholder="请输入销售单号" v-model.trim="form.salesBillNo" :maxLength="50" @change="fetchUser" @blur="handleBlur"/>
|
|
|
<span class="mleft">{{ buyerName }}</span>
|
|
|
<a-button type="primary" :disabled="disabled" @click="handleSave" class="button-error">设置完成</a-button>
|
|
|
</div>
|
|
@@ -84,6 +84,7 @@
|
|
|
</template>
|
|
|
</s-table>
|
|
|
</div>
|
|
|
+ <grabOrderModal ref="grabOrder" :infoData="objInfo" :openModal="openGrabOrderModal" @ok="handleGrabOrderOk" @close="closeGrabOrder"></grabOrderModal>
|
|
|
</a-spin>
|
|
|
</a-modal>
|
|
|
</template>
|
|
@@ -94,10 +95,11 @@ import debounce from 'lodash/debounce'
|
|
|
import { STable, VSelect } from '@/components'
|
|
|
import { salesDetailByNo } from '@/api/sales'
|
|
|
import { setReturnPrice } from '@/api/salesReturnDetail'
|
|
|
+import grabOrderModal from './grabOrderModal.vue'
|
|
|
export default {
|
|
|
name: 'SetPriceModal',
|
|
|
mixins: [commonMixin],
|
|
|
- components: { STable, VSelect },
|
|
|
+ components: { STable, VSelect, grabOrderModal },
|
|
|
props: {
|
|
|
openModal: { // 弹框显示状态
|
|
|
type: Boolean,
|
|
@@ -142,7 +144,7 @@ export default {
|
|
|
{ title: '返库数量', dataIndex: 'backStockQty', align: 'center', width: '10%', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
|
|
|
{ title: '退货单价', dataIndex: 'price', align: 'right', width: '10%', customRender: text => ((text || text == 0) ? this.toThousands(text) : '--') },
|
|
|
{ title: '退货单价说明', dataIndex: 'priceRemark', width: '10%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
- { title: '退货原因', dataIndex: 'returnReason', width: '15%', align: 'center', scopedSlots: { customRender: 'returnReason' } },
|
|
|
+ { title: '退货原因', dataIndex: 'returnReason', width: '15%', align: 'center', scopedSlots: { customRender: 'returnReason' } }
|
|
|
],
|
|
|
// 加载数据方法 必须为 Promise 对象
|
|
|
loadData: parameter => {
|
|
@@ -157,7 +159,10 @@ export default {
|
|
|
})
|
|
|
})
|
|
|
},
|
|
|
- buyerName: ''
|
|
|
+ buyerName: '',
|
|
|
+ openGrabOrderModal: false,
|
|
|
+ objInfo: null,
|
|
|
+ salesBillSnList: []
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -174,6 +179,27 @@ export default {
|
|
|
this.buyerName = res.data ? res.data.buyerName : ''
|
|
|
})
|
|
|
},
|
|
|
+ // 打开抓单设置单价弹窗
|
|
|
+ handleBlur () {
|
|
|
+ if (!this.buyerName) {
|
|
|
+ this.$message.warning('请输入正确的销售单号!')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ const productArr = this.chooseData.map(item => { return { productSn: item.productSn, code: item.productEntity.code, salesReturnDetailSn: item.salesReturnDetailSn } })
|
|
|
+ this.objInfo = {
|
|
|
+ salesReturnBillSn: this.$route.params.sn,
|
|
|
+ salesBillNo: this.form.salesBillNo,
|
|
|
+ productList: productArr
|
|
|
+ }
|
|
|
+ this.openGrabOrderModal = true
|
|
|
+ },
|
|
|
+ handleGrabOrderOk (con) {
|
|
|
+ this.salesBillSnList = con
|
|
|
+ },
|
|
|
+ closeGrabOrder () {
|
|
|
+ this.objInfo = null
|
|
|
+ this.openGrabOrderModal = false
|
|
|
+ },
|
|
|
// 设置价格
|
|
|
handleSave () {
|
|
|
// 不抓单且打折
|
|
@@ -191,12 +217,16 @@ export default {
|
|
|
}
|
|
|
this.form.discountFlag = undefined
|
|
|
this.form.discount = undefined
|
|
|
+ this.form.salesReturnBillDetailList = this.salesBillSnList
|
|
|
+ } else {
|
|
|
+ const snList = []
|
|
|
+ this.chooseData.map(item => {
|
|
|
+ snList.push(item.salesReturnDetailSn)
|
|
|
+ })
|
|
|
+ this.form.salesReturnBillDetailList = snList
|
|
|
}
|
|
|
- const snList = []
|
|
|
- this.chooseData.map(item => {
|
|
|
- snList.push(item.salesReturnDetailSn)
|
|
|
- })
|
|
|
- const params = Object.assign(this.form, { salesReturnBillDetailSnList: snList })
|
|
|
+
|
|
|
+ const params = Object.assign(this.form)
|
|
|
console.log(params)
|
|
|
this.disabled = true
|
|
|
this.spinning = true
|