|
@@ -418,14 +418,14 @@
|
|
|
<el-col :span="14">
|
|
|
<el-tabs v-model="activeName">
|
|
|
<el-tab-pane label="采购计划" name="searchList" />
|
|
|
- <el-tab-pane label="已选定数据" name="importStaging" />
|
|
|
+ <el-tab-pane label="政策匹配" name="importStaging" />
|
|
|
</el-tabs>
|
|
|
<basic-container v-if="activeName == 'searchList'">
|
|
|
- <avue-crud :option="optionThree" :table-loading="loading" :data="DLListShow" ref="crud">
|
|
|
+ <avue-crud :option="optionThree" :table-loading="loading" :data="DLListShow" ref="crud" :search.sync="searchDL" @search-change="searchChange" @search-reset="resetChange">
|
|
|
<template slot-scope="{row,index}" slot="menu">
|
|
|
<el-button type="text" icon="el-icon-edit" size="small" @click.stop="importStagListDL(row, index)"
|
|
|
v-if="activeName == 'searchList'"
|
|
|
- :disabled="DLListSave.findIndex(item => item.id == row.id) !== -1">选择
|
|
|
+ :disabled="DLListSave.findIndex(item => item.id == row.id) !== -1 || goodsShowData.findIndex(item => item.code == row.code) !== -1">选择
|
|
|
</el-button>
|
|
|
</template>
|
|
|
</avue-crud>
|
|
@@ -434,7 +434,7 @@
|
|
|
<dic-select v-model="policyType" placeholder="政策类型" key="id" label="title" keyValue="id"
|
|
|
:url="'/blade-mocha-item/salespolicy/lazy-tree?newTime=' + nowDate + '&parentId=0&corps=' + form.corpId"
|
|
|
:filterable="true" :remote="true"></dic-select>
|
|
|
- <avue-crud :option="optionThree" :table-loading="loading" :data="DLListSave" ref="crud"
|
|
|
+ <avue-crud :option="optionFour" :table-loading="loading" :data="DLListSave" ref="crud"
|
|
|
@selection-change="selectionChangeDL">
|
|
|
<template slot-scope="{row,index}" slot="menu">
|
|
|
<el-button type="text" icon="el-icon-delete" size="small" @click.stop="removeStagListDL(row, index)">移除
|
|
@@ -667,6 +667,7 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ searchDL:{},
|
|
|
policyType: null,
|
|
|
dataDL: [],
|
|
|
optionThree: {
|
|
@@ -675,6 +676,45 @@ export default {
|
|
|
editBtn: false,
|
|
|
delBtn: false,
|
|
|
menuWidth: '80',
|
|
|
+ searchSpan: 12,
|
|
|
+ // selection: true,
|
|
|
+ // tip: false,
|
|
|
+ column: [
|
|
|
+ {
|
|
|
+ label: '商品名称',
|
|
|
+ prop: 'cname',
|
|
|
+ search:true,
|
|
|
+ overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '编码',
|
|
|
+ prop: 'code',
|
|
|
+ search:true,
|
|
|
+ overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '规格型号',
|
|
|
+ prop: 'typeno',
|
|
|
+ overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '花纹',
|
|
|
+ prop: 'brandItem',
|
|
|
+ overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '订货数量',
|
|
|
+ prop: 'orderQuantity',
|
|
|
+ overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '供应商',
|
|
|
+ prop: 'corpName',
|
|
|
+ overHidden: true
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ optionFour: {
|
|
|
+ header: false,
|
|
|
+ menu: true,
|
|
|
+ editBtn: false,
|
|
|
+ delBtn: false,
|
|
|
+ menuWidth: '80',
|
|
|
// selection: true,
|
|
|
// tip: false,
|
|
|
column: [
|
|
@@ -698,6 +738,10 @@ export default {
|
|
|
label: '订货数量',
|
|
|
prop: 'orderQuantity',
|
|
|
overHidden: true
|
|
|
+ }, {
|
|
|
+ label: '供应商',
|
|
|
+ prop: 'corpName',
|
|
|
+ overHidden: true
|
|
|
}
|
|
|
]
|
|
|
},
|
|
@@ -1536,6 +1580,7 @@ export default {
|
|
|
index: 0,
|
|
|
policyIndex: 0,
|
|
|
routerTag: '',
|
|
|
+ handId:null,
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|
|
@@ -1950,7 +1995,8 @@ export default {
|
|
|
},
|
|
|
//点击行可编辑
|
|
|
handleRowClick(row, event, column) {
|
|
|
- this.onLoadDL(row)
|
|
|
+ this.handId=row.id
|
|
|
+ this.onLoadDL(this.serach,this.handId)
|
|
|
},
|
|
|
//商品编辑
|
|
|
rowCell(row, index) {
|
|
@@ -2017,6 +2063,7 @@ export default {
|
|
|
}
|
|
|
this.dialogVisibleDL = !this.dialogVisibleDL
|
|
|
this.commodityData = false
|
|
|
+ this.handId=null
|
|
|
this.DLListSave = [];
|
|
|
this.DLListShow = [];
|
|
|
this.policyType = null
|
|
@@ -2539,6 +2586,14 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
+ async getPolicyPrice(res, item) {
|
|
|
+ res.data.data.specialItemList.forEach(e => {
|
|
|
+ if (this.DLListSave[item].code == e.code) {
|
|
|
+ console.log(this.DLListSave[item].code, e.code, e.salesPrice)
|
|
|
+ this.$set(this.DLListSave[item], 'price', e.salesPrice);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
async importDL() {
|
|
|
if (this.DLListSave.length == 0) {
|
|
|
return this.$message.error('请选择采购计划明细')
|
|
@@ -2546,34 +2601,36 @@ export default {
|
|
|
this.saveLoading = true;
|
|
|
for (let item in this.DLListSave) {
|
|
|
if (this.policyType) {
|
|
|
- detailList(this.policyType).then(res => {
|
|
|
- if (res.data.data.specialItemList) {
|
|
|
- res.data.data.specialItemList.forEach(e => {
|
|
|
- if (this.DLListSave[item].code == e.code) {
|
|
|
- this.$set(this.DLListSave[item], 'price', e.salesPrice);
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- getMarketPrice({
|
|
|
- code: this.DLListSave[item].code,
|
|
|
- isFreight: this.form.isFreight,
|
|
|
- isLabel: this.form.isLabel
|
|
|
- }).then(res => {
|
|
|
- if (res.data.data.length > 0) {
|
|
|
- this.$set(this.DLListSave[item], 'price', res.data.data[0].salePrice)
|
|
|
- } else {
|
|
|
- this.$set(this.DLListSave[item], 'price', '0')
|
|
|
+ let res = await detailList(this.policyType)
|
|
|
+ console.log('第一个接口', Date.now())
|
|
|
+ if (res.data.data.specialItemList) {
|
|
|
+ console.log('第1.1个接口', Date.now())
|
|
|
+ await this.getPolicyPrice(res, item)
|
|
|
}
|
|
|
- this.priceChange(this.DLListSave[item])
|
|
|
- })
|
|
|
+ // detailList(this.policyType).then(res => {
|
|
|
+ // console.log('第一个接口',Date.now())
|
|
|
+
|
|
|
+ // })
|
|
|
+ }
|
|
|
+ // getMarketPrice({
|
|
|
+ // code: this.DLListSave[item].code,
|
|
|
+ // isFreight: this.form.isFreight,
|
|
|
+ // isLabel: this.form.isLabel
|
|
|
+ // }).then(res => {
|
|
|
+ // if (res.data.data.length > 0) {
|
|
|
+ // this.$set(this.DLListSave[item], 'price', res.data.data[0].salePrice)
|
|
|
+ // } else {
|
|
|
+ // this.$set(this.DLListSave[item], 'price', '0')
|
|
|
+ // }
|
|
|
+ // this.priceChange(this.DLListSave[item])
|
|
|
+ // })
|
|
|
selectGoodsNum({
|
|
|
goodsId: this.DLListSave[item].id,
|
|
|
itemType: this.DLListSave[item].typeno,
|
|
|
tradeType: 'GN',
|
|
|
warehouseId: this.form.storageId
|
|
|
}).then(res => {
|
|
|
+ console.log('第二个接口', Date.now())
|
|
|
if (res.data.data.length > 0) {
|
|
|
res.data.data.forEach(e => {
|
|
|
e.storageId = e.storageId + '-' + e.corpId
|
|
@@ -2591,6 +2648,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
// this.DLListSave[item].storageQuantity = res.data.data
|
|
|
+ this.$set(this.DLListSave[item], 'storageId','工厂仓-'+this.DLListSave[item].corpName)
|
|
|
this.$set(this.DLListSave[item], 'priceCategory', this.DLListSave[item].goodsTypeName)
|
|
|
// this.DLListSave[item].priceCategory = this.DLListSave[item].goodsTypeName
|
|
|
delete this.DLListSave[item].goodsTypeName
|
|
@@ -2625,6 +2683,7 @@ export default {
|
|
|
delete this.DLListSave[item].updateUserName
|
|
|
this.maxGoodsNum++
|
|
|
getPurchasePrice({ code: this.DLListSave[item].code }).then(res => {
|
|
|
+ console.log('第三个接口', Date.now())
|
|
|
if (res.data.data.length > 0) {
|
|
|
this.$set(this.DLListSave[item], 'purchaseAmount', res.data.data[0].purchasePrice)
|
|
|
this.$set(this.DLListSave[item], 'purchaseRebatePrice', res.data.data[0].purchaseRebatePrice)
|
|
@@ -2632,7 +2691,7 @@ export default {
|
|
|
this.$set(this.DLListSave[item], 'purchaseAmount', '0')
|
|
|
}
|
|
|
this.quantityChange(this.DLListSave[item])
|
|
|
- console.log(this.DLListSave[item].price,222222)
|
|
|
+
|
|
|
this.$refs.crudContact.rowCellAdd(this.DLListSave[item]);
|
|
|
this.$nextTick(() => {
|
|
|
this.quantityChange(this.DLListSave[item])
|
|
@@ -3303,10 +3362,26 @@ export default {
|
|
|
this.loading = false;
|
|
|
});
|
|
|
},
|
|
|
+ searchChange(params, done) {
|
|
|
+ this.treeDeptId = ''
|
|
|
+ params = {
|
|
|
+ ...this.serach,
|
|
|
+ ...params,
|
|
|
+ }
|
|
|
+ this.onLoadDL(params,this.handId);
|
|
|
+ done()
|
|
|
+ },
|
|
|
+ resetChange(){
|
|
|
+ this.serach
|
|
|
+ },
|
|
|
//商品列表查询
|
|
|
- onLoadDL(row) {
|
|
|
+ onLoadDL(params,id) {
|
|
|
+ let obj={
|
|
|
+ ...params,
|
|
|
+ id:id
|
|
|
+ }
|
|
|
this.loading = true;
|
|
|
- getAgencyOrderItem({ id: row.id }).then(res => {
|
|
|
+ getAgencyOrderItem(obj).then(res => {
|
|
|
this.DLListShow = res.data.data;
|
|
|
this.loading = false;
|
|
|
});
|