Browse Source

提货人

master
han\hanst 1 week ago
parent
commit
9fc3239cd6
  1. 1
      src/api/ecss/ecss.js
  2. 118
      src/views/modules/ecss/declaration.vue

1
src/api/ecss/ecss.js

@ -102,6 +102,7 @@ export const saveOneClickPacking = data => createAPI(`/ecss/coDel/saveOneClickPa
export const savePalletMaintenance = data => createAPI(`/ecss/coDel/savePalletMaintenance`,'post',data) export const savePalletMaintenance = data => createAPI(`/ecss/coDel/savePalletMaintenance`,'post',data)
export const getCustomerInfo = data => createAPI(`/ecss/coDel/getCustomerInfo`,'post',data) export const getCustomerInfo = data => createAPI(`/ecss/coDel/getCustomerInfo`,'post',data)
export const getEcssContactsList = data => createAPI(`/select/ecssMapper/getEcssContacts/list`,'post',data)
export const searchEcssTemplateData = data => createAPI(`/ecss/coDel/searchEcssTemplateData`,'post',data) export const searchEcssTemplateData = data => createAPI(`/ecss/coDel/searchEcssTemplateData`,'post',data)

118
src/views/modules/ecss/declaration.vue

@ -338,6 +338,28 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="16"> <el-col :span="16">
<el-form-item :label="'提货人'" >
<el-select
v-model="exportGoods.pickupAddressValue"
clearable
filterable
placeholder="请选择提货人"
style="width: 100%"
@change="handlePickupAddressChange">
<el-option
v-for="(item, index) in pickupAddressList"
:key="item.valueKey + '-' + index"
:label="buildPickupAddressText(item)"
:value="item.valueKey">
<div style="white-space: normal; line-height: 16px; padding: 4px 0;">
<div>{{ item.company }}</div>
<div v-if="item.address" style="color: #909399;">{{ item.address }}</div>
</div>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label="'发货人'" > <el-form-item :label="'发货人'" >
<el-input type="textarea" <el-input type="textarea"
:rows="4" v-model="exportGoods.shipper"></el-input> :rows="4" v-model="exportGoods.shipper"></el-input>
@ -941,6 +963,28 @@
<el-input v-model="exportGoods.shippingDate"></el-input> <el-input v-model="exportGoods.shippingDate"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item :label="'提货人'" >
<el-select
v-model="exportGoods.pickupAddressValue"
clearable
filterable
placeholder="请选择提货人"
style="width: 100%"
@change="handlePickupAddressChange">
<el-option
v-for="(item, index) in pickupAddressList"
:key="item.valueKey + '_goods_' + index"
:label="buildPickupAddressText(item)"
:value="item.valueKey">
<div style="white-space: normal; line-height: 16px; padding: 4px 0;">
<div>{{ item.company }}</div>
<div v-if="item.address" style="color: #909399;">{{ item.address }}</div>
</div>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item :label="'发货人'" > <el-form-item :label="'发货人'" >
<el-input type="textarea" <el-input type="textarea"
@ -1011,6 +1055,7 @@
downloadDeclarationElements, downloadDeclarationElements,
getNotifyPartDetail, getNotifyPartDetail,
getCustomerInfo, getCustomerInfo,
getEcssContactsList,
searchTemplateList, searchTemplateList,
getPropertiesListByDeclaration, getPropertiesListByDeclaration,
searchEcssCoDelPalletHeaderData searchEcssCoDelPalletHeaderData
@ -1039,6 +1084,7 @@
}, },
templateList:[], templateList:[],
customerInfoList:[], customerInfoList:[],
pickupAddressList:[],
notifyPartDetailList:[], notifyPartDetailList:[],
propertiesList:[], propertiesList:[],
currentRow:{}, currentRow:{},
@ -1061,7 +1107,10 @@
shipper:'Checkpoint Commercial (Shanghai) Co., Ltd. 保点贸易(上海)有限公司\t\t\t\t\t\t\n' + shipper:'Checkpoint Commercial (Shanghai) Co., Ltd. 保点贸易(上海)有限公司\t\t\t\t\t\t\n' +
'Room 1411, No. 31, Lane 2419, Hunan Road, Pudong New Area, Shanghai\t\t\t\t\t\t\n' + 'Room 1411, No. 31, Lane 2419, Hunan Road, Pudong New Area, Shanghai\t\t\t\t\t\t\n' +
'电话/Tel: (86-21)38112888 传真/Fax: (86-21)38112990\t\t\t\t\t\t\n' + '电话/Tel: (86-21)38112888 传真/Fax: (86-21)38112990\t\t\t\t\t\t\n' +
'上海市浦东新区沪南路2419弄31号1411室\t\t\t\t\t\t\n'
'上海市浦东新区沪南路2419弄31号1411室\t\t\t\t\t\t\n',
pickupAddressValue:'',
pickupCompany:'',
pickupAddress:''
}, },
brandTypeFlag:false, brandTypeFlag:false,
declarationFlag:false, declarationFlag:false,
@ -2172,6 +2221,65 @@
} }
}) })
}, },
buildPickupAddressText(item) {
const company = item && item.company ? item.company : ''
const address = item && item.address ? item.address : ''
return [company, address].filter(text => text && text.trim()).join(' / ')
},
handlePickupAddressChange(value) {
const selected = this.pickupAddressList.find(item => item.valueKey === value)
if (selected) {
this.exportGoods.pickupCompany = selected.company
this.exportGoods.pickupAddress = selected.address
} else {
this.exportGoods.pickupCompany = ''
this.exportGoods.pickupAddress = ''
}
},
loadPickupAddressList(buNo) {
this.pickupAddressList = []
this.exportGoods.pickupAddressValue = ''
this.exportGoods.pickupCompany = ''
this.exportGoods.pickupAddress = ''
if (!buNo) {
return Promise.resolve()
}
return getEcssContactsList({buNo: buNo}).then(({data}) => {
if (data && data.code === 0) {
const rows = Array.isArray(data.rows) ? data.rows : []
const uniqMap = {}
rows.forEach(item => {
const company = item && item.company ? String(item.company).trim() : ''
const address = item && item.address ? String(item.address).trim() : ''
const defaultOption = item && item.defaultOption ? String(item.defaultOption).trim().toUpperCase() : ''
if (!company && !address) {
return
}
const valueKey = company + '||' + address
if (!uniqMap[valueKey]) {
uniqMap[valueKey] = {
company: company,
address: address,
valueKey: valueKey,
defaultOption: defaultOption
}
} else if (defaultOption === 'Y') {
uniqMap[valueKey].defaultOption = 'Y'
}
})
this.pickupAddressList = Object.keys(uniqMap).map(key => uniqMap[key])
const defaultItem = this.pickupAddressList.find(item => item.defaultOption === 'Y')
if (defaultItem) {
this.exportGoods.pickupAddressValue = defaultItem.valueKey
this.handlePickupAddressChange(defaultItem.valueKey)
}
} else {
this.pickupAddressList = []
}
}).catch(() => {
this.pickupAddressList = []
})
},
exportInvoiceList() { exportInvoiceList() {
if (!this.currentRow || !this.currentRow.buNo) { if (!this.currentRow || !this.currentRow.buNo) {
this.$message.warning('请选择报关单!') this.$message.warning('请选择报关单!')
@ -2275,6 +2383,7 @@
this.exportGoods.deliveryGoodsDate = '' this.exportGoods.deliveryGoodsDate = ''
this.exportGoods.voyage = this.currentRow.buNo==='01-Label' || this.currentRow.buNo==='03-RFID'?this.currentRow.cmcInvoice:'' this.exportGoods.voyage = this.currentRow.buNo==='01-Label' || this.currentRow.buNo==='03-RFID'?this.currentRow.cmcInvoice:''
this.exportGoods.shippingDate = '' this.exportGoods.shippingDate = ''
this.loadPickupAddressList(this.currentRow.buNo)
this.exportGoodsFlag = true this.exportGoodsFlag = true
}, },
// //
@ -2426,6 +2535,9 @@
exportParam.shippingDate=this.exportGoods.shippingDate exportParam.shippingDate=this.exportGoods.shippingDate
exportParam.hsCodeDescType=this.exportGoods.hsCodeDescType exportParam.hsCodeDescType=this.exportGoods.hsCodeDescType
exportParam.shipper=this.exportGoods.shipper exportParam.shipper=this.exportGoods.shipper
exportParam.pickupCompany=this.exportGoods.pickupCompany
exportParam.pickupAddress=this.exportGoods.pickupAddress
exportParam.pickupAddressValue=this.exportGoods.pickupAddressValue
exportParam.brandType = this.brandType exportParam.brandType = this.brandType
exportParam.hsCodeDescType=this.hsCodeDescType exportParam.hsCodeDescType=this.hsCodeDescType
@ -2614,6 +2726,7 @@
this.exportGoods.deliveryGoodsDate = '' this.exportGoods.deliveryGoodsDate = ''
this.exportGoods.voyage = this.currentRow.buNo==='01-Label' || this.currentRow.buNo==='03-RFID'?this.currentRow.cmcInvoice:'' this.exportGoods.voyage = this.currentRow.buNo==='01-Label' || this.currentRow.buNo==='03-RFID'?this.currentRow.cmcInvoice:''
this.exportGoods.shippingDate = ''; this.exportGoods.shippingDate = '';
await this.loadPickupAddressList(this.currentRow.buNo)
//this.templateData.type='' //this.templateData.type=''
//await this.searchTemplateOne(); //await this.searchTemplateOne();
if (this.currentRow.buNo==='03-RFID') { if (this.currentRow.buNo==='03-RFID') {
@ -2660,6 +2773,9 @@
exportParam.shippingDate=this.exportGoods.shippingDate exportParam.shippingDate=this.exportGoods.shippingDate
exportParam.hsCodeDescType=this.exportGoods.hsCodeDescType exportParam.hsCodeDescType=this.exportGoods.hsCodeDescType
exportParam.shipper=this.exportGoods.shipper exportParam.shipper=this.exportGoods.shipper
exportParam.pickupCompany=this.exportGoods.pickupCompany
exportParam.pickupAddress=this.exportGoods.pickupAddress
exportParam.pickupAddressValue=this.exportGoods.pickupAddressValue
exportParam.brandType = this.brandType exportParam.brandType = this.brandType
exportParam.hsCodeDescType=this.hsCodeDescType exportParam.hsCodeDescType=this.hsCodeDescType

Loading…
Cancel
Save