更新和川现场问题

master
sunzehua 12 months ago
parent 808dd0d99a
commit 5ed454b48d

@ -4,10 +4,10 @@ VUE_APP_PREVIEW=true
# VUE_APP_API_BASE_URL=http://127.0.0.1:5000 # VUE_APP_API_BASE_URL=http://127.0.0.1:5000
# VUE_APP_API_BASE_URL=http://60.209.125.238:25805 # VUE_APP_API_BASE_URL=http://60.209.125.238:25805
# 和川大简云正式 # 和川大简云正式
# VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api
# VUE_APP_API_BASE_URL=http://localhost:5010 # VUE_APP_API_BASE_URL=http://localhost:5010
# 和川大简云测试 # 和川大简云测试
VUE_APP_API_BASE_URL=http://60.209.125.238:35100 # VUE_APP_API_BASE_URL=http://60.209.125.238:35100
# 大简云 # 大简云
# VUE_APP_API_BASE_URL=http://47.104.222.4:5020 # VUE_APP_API_BASE_URL=http://47.104.222.4:5020

@ -7,11 +7,11 @@ VUE_APP_PREVIEW=true
# process.env.VUE_APP_API_BASE_URL # process.env.VUE_APP_API_BASE_URL
# 和川大简云正式 # 和川大简云正式
# VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api
# VUE_APP_SOCKET_BASE_URL=http://47.104.85.216:12345/api VUE_APP_SOCKET_BASE_URL=http://47.104.85.216:12345/api
# 和川大简云测试 # 和川大简云测试
VUE_APP_API_BASE_URL=http://60.209.125.238:35100 # VUE_APP_API_BASE_URL=http://60.209.125.238:35100
VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:35100 # VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:35100
# # 大简云 # # 大简云
# VUE_APP_API_BASE_URL=http://47.104.222.4:5020 # VUE_APP_API_BASE_URL=http://47.104.222.4:5020
# VUE_APP_SOCKET_BASE_URL=http://47.104.222.4:5020 # VUE_APP_SOCKET_BASE_URL=http://47.104.222.4:5020

@ -3,13 +3,13 @@ VUE_APP_PREVIEW=true
# VUE_APP_API_BASE_URL=http://60.209.125.238:25805 # VUE_APP_API_BASE_URL=http://60.209.125.238:25805
# VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:25805 # VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:25805
# 和川大简云正式 # 和川大简云正式
# VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api VUE_APP_API_BASE_URL=http://47.104.85.216:12345/api
# VUE_APP_SOCKET_BASE_URL=http://47.104.85.216:12345/api VUE_APP_SOCKET_BASE_URL=http://47.104.85.216:12345/api
# VUE_APP_API_BASE_URL=http://localhost:5010 # VUE_APP_API_BASE_URL=http://localhost:5010
# VUE_APP_SOCKET_BASE_URL=http://localhost:5010 # VUE_APP_SOCKET_BASE_URL=http://localhost:5010
# 和川大简云测试 # 和川大简云测试
VUE_APP_API_BASE_URL=http://60.209.125.238:35100 # VUE_APP_API_BASE_URL=http://60.209.125.238:35100
VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:35100 # VUE_APP_SOCKET_BASE_URL=http://60.209.125.238:35100
# 大简云 # 大简云
# VUE_APP_API_BASE_URL=http://47.104.222.4:5020 # VUE_APP_API_BASE_URL=http://47.104.222.4:5020
# VUE_APP_SOCKET_BASE_URL=http://47.104.222.4:5020 # VUE_APP_SOCKET_BASE_URL=http://47.104.222.4:5020

@ -1240,3 +1240,11 @@ export function ListAgentByCarrier(parameter) {
params: parameter params: parameter
}) })
} }
export function listYardBwCarrier(parameter) {
return axios({
url: '/BookingCarrierRelation/ListYardByCarrier',
method: 'get',
params: parameter
})
}

@ -32,6 +32,7 @@ const getters = {
saveNeedCar: state => state.booking.saveNeedCar, saveNeedCar: state => state.booking.saveNeedCar,
lineList: state => state.booking.lineList, lineList: state => state.booking.lineList,
agentFilter: state => state.booking.agentFilter, agentFilter: state => state.booking.agentFilter,
yardFilter: state => state.booking.yardFilter,
bookingInitData: state => state.booking.bookingInitData, bookingInitData: state => state.booking.bookingInitData,
sourceList: state => state.booking.sourceList, sourceList: state => state.booking.sourceList,
countryList: state => state.booking.countryList, countryList: state => state.booking.countryList,

@ -21,6 +21,7 @@ const booking = {
dpTreeList: [], dpTreeList: [],
copyPages: { number: 0, path: '' }, copyPages: { number: 0, path: '' },
yardList: [], yardList: [],
yardFilter: {},
statusDIct: [], statusDIct: [],
projectDict: [], projectDict: [],
saveNeedNumber: '', saveNeedNumber: '',
@ -34,7 +35,7 @@ const booking = {
lineList: [], lineList: [],
sourceList: [], sourceList: [],
countryList: [], countryList: [],
agentFilter: [], agentFilter: {},
saveNeedCar: '', saveNeedCar: '',
bookingInitData: { bookingInitData: {
customernameInitList: [], customernameInitList: [],
@ -133,6 +134,9 @@ const booking = {
}, },
SET_AgentFilter: (state, list) => { SET_AgentFilter: (state, list) => {
state.agentFilter = list state.agentFilter = list
},
SET_YardFilter: (state, list) => {
state.yardFilter = list
} }
}, },

@ -19,14 +19,12 @@
@blur="getSelectBlur" @blur="getSelectBlur"
@select="selectOption" @select="selectOption"
@change="(value, option) => debounce(this.handleChange, 200, option)" @change="(value, option) => debounce(this.handleChange, 200, option)"
@search="debounce(handleSearch, 300, $event)" @search="debounce(handleSearch, 300, $event)">
>
<a-select-option <a-select-option
v-for="(item, index) in selectList" v-for="(item, index) in selectList"
:key="index" :key="index"
:value="item[showLabel[0]] + index + 3" :value="item[showLabel[0]] + index + 3"
:label="item[showLabel[0]]" :label="item[showLabel[0]]">
>
<template v-if="type === 'contractno'"> <template v-if="type === 'contractno'">
<div class="contractno-label"> <div class="contractno-label">
<div class="title">{{ item.contractNo }} / {{ item.contractName || '--' }}</div> <div class="title">{{ item.contractNo }} / {{ item.contractName || '--' }}</div>
@ -141,7 +139,8 @@ export default {
'bookingInitData', 'bookingInitData',
'sourceList', 'sourceList',
'countryList', 'countryList',
'agentFilter' 'agentFilter',
'yardFilter'
]) ])
}, },
watch: { watch: {
@ -419,12 +418,12 @@ export default {
} else { } else {
setTimeout(() => { setTimeout(() => {
const num = op.data.key const num = op.data.key
this.value = this.selectList[num][this.showLabel[0]] this.value = this.selectList[num][this.showLabel[0]]
this.$emit('change', { this.$emit('change', {
type: this.type, type: this.type,
res: this.selectList[num] res: this.selectList[num]
}) })
}, 100) }, 100)
} }
}, },
getSelectFirst(e, canClick = true) { getSelectFirst(e, canClick = true) {
@ -454,8 +453,25 @@ export default {
'shippercountry' 'shippercountry'
].includes(this.type) ].includes(this.type)
) { ) {
this.selectList = this.emnuData(this.type) if (this.type === 'yard') {
this.inLoading = false if (this.yardFilter.length === 0) {
this.selectList = this.yardList
} else {
const arr = []
this.yardFilter.forEach(item => {
this.yardList.forEach(ite => {
if (ite.code == item.yardCode) {
arr.push(ite)
}
})
})
this.selectList = arr
}
} else {
this.selectList = this.emnuData(this.type)
this.inLoading = false
}
return false return false
} }
// 线lineName, // 线lineName,
@ -465,12 +481,40 @@ export default {
this.setLineList() this.setLineList()
return false return false
} }
if (this.searchApi === 'DjyCustomerSuggest') {
this.selectList = []
}
if (!e) { if (!e) {
console.log('首次搜索内容', e, this.type, this.bookingInitData) console.log('首次搜索内容', e, this.type, this.bookingInitData)
if (this.type === 'forwarder') {
this.inLoading = true
const arr = []
this.selectList = []
setTimeout(() => {
if (this.agentFilter.length === 0) {
setTimeout(() => {
this.inLoading = false
this.selectList = this.bookingInitData[`${this.type}InitList`]
}, 100);
} else {
this.agentFilter.forEach(item => {
this.bookingInitData[`${this.type}InitList`].forEach(ite => {
if (ite.codeName == item.agentCode) {
arr.push(ite)
}
})
})
setTimeout(() => {
this.inLoading = false
this.selectList = arr
}, 100);
}
}, 900);
return false
}
if ( if (
![ ![
'vessel', 'vessel',
'forwarder',
'lineName', 'lineName',
'notifypartycountry', 'notifypartycountry',
'consigneecountry', 'consigneecountry',
@ -481,7 +525,6 @@ export default {
].includes(this.type) && ].includes(this.type) &&
this.bookingInitData[`${this.type}InitList`].length > 0 this.bookingInitData[`${this.type}InitList`].length > 0
) { ) {
console.log(this.bookingInitData[`${this.type}InitList`])
this.selectList = this.bookingInitData[`${this.type}InitList`] this.selectList = this.bookingInitData[`${this.type}InitList`]
return false return false
} }
@ -498,21 +541,23 @@ export default {
this.inLoading = true this.inLoading = true
this.getFromSelectData(this.emnuSelectApi(this.searchApi), this.searchQuery).then(data => { this.getFromSelectData(this.emnuSelectApi(this.searchApi), this.searchQuery).then(data => {
if (data.rows) { if (data.rows) {
// if (this.searchApi === 'DjyCustomerSuggest') { if (this.searchApi === 'DjyCustomerSuggest') {
// if (this.agentFilter.length === 0) { if (this.agentFilter.length === 0) {
// this.selectList = data.rows this.selectList = data.rows
// } else { } else {
// this.agentFilter.forEach(item=>{ const arr = []
// data.rows.forEach(ite=>{ this.agentFilter.forEach(item => {
// if(ite.codeName==item.shortName) data.rows.forEach(ite => {
// }) if (ite.codeName == item.agentCode) {
// }) arr.push(ite)
// console.log(this.selectList, data.rows) }
// } })
// } else { })
// this.selectList = data.rows this.selectList = arr
// } }
this.selectList = data.rows } else {
this.selectList = data.rows
}
} else { } else {
this.selectList = data this.selectList = data
} }
@ -540,12 +585,30 @@ export default {
} }
}) })
} }
this.inLoading = true
this.getFromSelectData(this.emnuSelectApi(this.searchApi), this.searchQuery).then(data => { this.getFromSelectData(this.emnuSelectApi(this.searchApi), this.searchQuery).then(data => {
if (data.rows) { if (data.rows) {
this.selectList = data.rows if (this.searchApi === 'DjyCustomerSuggest') {
if (this.agentFilter.length === 0) {
this.selectList = data.rows
} else {
const arr = []
this.agentFilter.forEach(item => {
data.rows.forEach(ite => {
if (ite.codeName == item.agentCode) {
arr.push(ite)
}
})
})
this.selectList = arr
}
} else {
this.selectList = data.rows
}
} else { } else {
this.selectList = data this.selectList = data
} }
this.inLoading = false
}) })
} }
}, },
@ -596,6 +659,7 @@ export default {
font-weight: 600; font-weight: 600;
color: #666; color: #666;
} }
.note { .note {
height: 22px; height: 22px;
line-height: 22px; line-height: 22px;
@ -614,6 +678,7 @@ export default {
border-bottom: 1px dashed #ddd; border-bottom: 1px dashed #ddd;
margin-bottom: 4px; margin-bottom: 4px;
} }
.voyno, .voyno,
.etd { .etd {
height: 22px; height: 22px;
@ -625,10 +690,12 @@ export default {
.select-content { .select-content {
display: flex; display: flex;
.select-input { .select-input {
flex: 1; flex: 1;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
.select_overlap { .select_overlap {
cursor: pointer; cursor: pointer;
height: 32px; height: 32px;
@ -641,11 +708,13 @@ export default {
opacity: 0; opacity: 0;
} }
} }
.copy-btn { .copy-btn {
width: 24px; width: 24px;
text-align: center; text-align: center;
color: #bbb; color: #bbb;
font-size: 13px; font-size: 13px;
&:hover { &:hover {
color: @primary-color; color: @primary-color;
} }

@ -163,7 +163,7 @@ import {
getDjyTenantConfig, getDjyTenantConfig,
GetAllData, GetAllData,
DeleteBookingOrder, DeleteBookingOrder,
DeleteLetterYard, listYardBwCarrier,
ListAgentByCarrier ListAgentByCarrier
} from '@/api/modular/main/BookingLedger' } from '@/api/modular/main/BookingLedger'
import { mapActions, mapGetters } from 'vuex' import { mapActions, mapGetters } from 'vuex'
@ -618,6 +618,7 @@ export default {
if (!this.$route.query.copyId) { if (!this.$route.query.copyId) {
const $data = JSON.parse(JSON.stringify(this.historyData[`copy-${newId}`])) const $data = JSON.parse(JSON.stringify(this.historyData[`copy-${newId}`]))
this.bookingDetails = $data.bookingDetails this.bookingDetails = $data.bookingDetails
this.oldBookingDetails = JSON.parse(JSON.stringify(this.bookingDetails))
this.excuteRules = $data.excuteRules this.excuteRules = $data.excuteRules
this.excuteRulesType = $data.excuteRulesType this.excuteRulesType = $data.excuteRulesType
this.isAdd = $data.isAdd this.isAdd = $data.isAdd
@ -626,6 +627,7 @@ export default {
} else { } else {
const $data = JSON.parse(JSON.stringify(this.historyData[`copy-${newId}-${this.$route.query.copyId}`])) const $data = JSON.parse(JSON.stringify(this.historyData[`copy-${newId}-${this.$route.query.copyId}`]))
this.bookingDetails = $data.bookingDetails this.bookingDetails = $data.bookingDetails
this.oldBookingDetails = JSON.parse(JSON.stringify(this.bookingDetails))
this.excuteRules = $data.excuteRules this.excuteRules = $data.excuteRules
this.excuteRulesType = $data.excuteRulesType this.excuteRulesType = $data.excuteRulesType
this.isAdd = $data.isAdd this.isAdd = $data.isAdd
@ -663,6 +665,7 @@ export default {
this.inChildLoading = false this.inChildLoading = false
}, 500) }, 500)
this.isLockBooking = false this.isLockBooking = false
this.getFilter()
this.$forceUpdate() this.$forceUpdate()
} else if ( } else if (
Object.keys(this.historyData).includes(`add-${this.$route.query.addNum}`) && Object.keys(this.historyData).includes(`add-${this.$route.query.addNum}`) &&
@ -670,6 +673,7 @@ export default {
) { ) {
const $data = JSON.parse(JSON.stringify(this.historyData[`add-${this.$route.query.addNum}`])) const $data = JSON.parse(JSON.stringify(this.historyData[`add-${this.$route.query.addNum}`]))
this.bookingDetails = $data.bookingDetails this.bookingDetails = $data.bookingDetails
this.oldBookingDetails = JSON.parse(JSON.stringify(this.bookingDetails))
this.excuteRules = $data.excuteRules this.excuteRules = $data.excuteRules
this.excuteRulesType = $data.excuteRulesType this.excuteRulesType = $data.excuteRulesType
this.isAdd = $data.isAdd this.isAdd = $data.isAdd
@ -709,6 +713,7 @@ export default {
this.inChildLoading = false this.inChildLoading = false
}, 500) }, 500)
this.isLockBooking = false this.isLockBooking = false
this.getFilter()
this.$forceUpdate() this.$forceUpdate()
} else if (Object.keys(this.historyData).includes(newId)) { } else if (Object.keys(this.historyData).includes(newId)) {
this.id = this.$route.query.id this.id = this.$route.query.id
@ -748,8 +753,10 @@ export default {
sale: $data.bookingDetails.sale sale: $data.bookingDetails.sale
} }
this.bookingDetails = { ...JSON.parse(JSON.stringify(initDetail)), ...copyData } this.bookingDetails = { ...JSON.parse(JSON.stringify(initDetail)), ...copyData }
this.oldBookingDetails = JSON.parse(JSON.stringify(this.bookingDetails))
} else { } else {
this.bookingDetails = $data.bookingDetails this.bookingDetails = $data.bookingDetails
this.oldBookingDetails = JSON.parse(JSON.stringify(this.bookingDetails))
if (this.topDown) { if (this.topDown) {
this.getDetail() this.getDetail()
} }
@ -784,6 +791,7 @@ export default {
this.inChildLoading = false this.inChildLoading = false
}, 1300); }, 1300);
}, 500) }, 500)
this.getFilter()
if (!this.bookingDetails.extendState) { if (!this.bookingDetails.extendState) {
this.isLockBooking = false this.isLockBooking = false
} else { } else {
@ -814,8 +822,6 @@ export default {
this.$refs.basicInfo.$refs.basicFrom.clearValidate() this.$refs.basicInfo.$refs.basicFrom.clearValidate()
this.$refs.mailingInfo.$refs.mailingFrom.clearValidate() this.$refs.mailingInfo.$refs.mailingFrom.clearValidate()
this.$refs.cargoInfo.$refs.cargoFrom.clearValidate() this.$refs.cargoInfo.$refs.cargoFrom.clearValidate()
// this.$refs.billInfo.$refs.billFrom.clearValidate()
// this.$refs.remarksInfo.$refs.remarkFrom.clearValidate()
}, },
init() { init() {
this.bookingDetails = JSON.parse(JSON.stringify(initDetail)) this.bookingDetails = JSON.parse(JSON.stringify(initDetail))
@ -832,6 +838,7 @@ export default {
this.bookingDetails.carrierid = this.type this.bookingDetails.carrierid = this.type
this.bookingDetails.carrier = this.type this.bookingDetails.carrier = this.type
this.isLockBooking = false this.isLockBooking = false
this.getFilter()
this.getDefaultVal() this.getDefaultVal()
setTimeout(() => { setTimeout(() => {
if (Object.keys(this.$refs).includes('sedOrder')) { if (Object.keys(this.$refs).includes('sedOrder')) {
@ -856,7 +863,6 @@ export default {
.then(res => { .then(res => {
const defaultData = JSON.parse(res.data.configJson) const defaultData = JSON.parse(res.data.configJson)
this.defaultData = defaultData this.defaultData = defaultData
console.log(defaultData)
const Fn = item => { const Fn = item => {
const field = item.field.split('.') const field = item.field.split('.')
let label = field[1].toLowerCase() let label = field[1].toLowerCase()
@ -1048,7 +1054,14 @@ export default {
console.log(err) console.log(err)
}) })
}, },
getFilter() {
ListAgentByCarrier({ carrierCode: this.bookingDetails.carrierid }).then(res => {
this.$store.commit('SET_AgentFilter', res.data)
})
listYardBwCarrier({ carrierCode: this.bookingDetails.carrierid }).then(res => {
this.$store.commit('SET_YardFilter', res.data)
})
},
enmuCarrier(type) { enmuCarrier(type) {
switch (type) { switch (type) {
case 'CMA': case 'CMA':
@ -1100,9 +1113,6 @@ export default {
this.$message.destroy() this.$message.destroy()
this.setDeatilsFun(res, false) this.setDeatilsFun(res, false)
this.$store.commit('SET_SAVETOPDOWN', false) this.$store.commit('SET_SAVETOPDOWN', false)
ListAgentByCarrier({ carrierCode: this.bookingDetails.carrierid }).then(res => {
this.$store.commit('SET_AgentFilter', res.data)
})
}) })
.catch(err => { .catch(err => {
console.log(err) console.log(err)
@ -1205,6 +1215,7 @@ export default {
this.$set(this.historyData, `copyMore-${this.id}`, hisData) this.$set(this.historyData, `copyMore-${this.id}`, hisData)
} }
// this.getDefaultVal() // this.getDefaultVal()
this.getFilter()
this.inPageLoading = false this.inPageLoading = false
setTimeout(() => { setTimeout(() => {
setTimeout(() => { setTimeout(() => {
@ -1390,9 +1401,11 @@ export default {
} }
}) })
this.saveBtnFlag = true this.saveBtnFlag = true
const changedFields = this.diffObj(this.oldBookingDetails, this.bookingDetails) if (this.oldBookingDetails.log) {
if (changedFields) { delete this.oldBookingDetails.log
_data.changedFields = Object.keys(changedFields.new_val) }
if (this.oldBookingDetails.goodsStatus) {
delete this.oldBookingDetails.goodsStatus
} }
if (_data.log) { if (_data.log) {
delete _data.log delete _data.log
@ -1400,6 +1413,25 @@ export default {
if (_data.goodsStatus) { if (_data.goodsStatus) {
delete _data.goodsStatus delete _data.goodsStatus
} }
const changedFields = this.diffObj(this.oldBookingDetails, _data)
if (changedFields.new_val.bookingEDIExt) {
delete changedFields.new_val.bookingEDIExt
}
if (changedFields.new_val.ctnInputs) {
delete changedFields.new_val.ctnInputs
}
if (changedFields.new_val.extendState) {
delete changedFields.new_val.extendState
}
if (changedFields.new_val.item) {
delete changedFields.new_val.item
}
if (changedFields.new_val.hbList) {
delete changedFields.new_val.hbList
}
if (changedFields) {
_data.changedFields = Object.keys(changedFields.new_val)
}
BookingOrderSave(_data) BookingOrderSave(_data)
.then(res => { .then(res => {
if (res.success) { if (res.success) {

@ -8,19 +8,17 @@
ref="basicFrom" ref="basicFrom"
:selfUpdate="true" :selfUpdate="true"
:model="details" :model="details"
:rules="rules" :rules="rules">
> <a-row class="from-box">
<a-row class="from-box" > <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
prop="customername" prop="customername"
label="委托单位" label="委托单位"
:labelCol="labelCol4" :labelCol="labelCol4"
:wrapperCol="wrapperCol4" :wrapperCol="wrapperCol4"
has-feedback has-feedback>
> <div class="customer-box">
<div class="customer-box" >
<selectView <selectView
type="customername" type="customername"
:defaultVal="details.customername" :defaultVal="details.customername"
@ -31,27 +29,24 @@
:disabled="BookingLockOrder['CUSTOMERNAME'] && isLockBooking" :disabled="BookingLockOrder['CUSTOMERNAME'] && isLockBooking"
:isCopy="true" :isCopy="true"
@change="getSelectViewRes" @change="getSelectViewRes"
style="flex: 1; margin-top: -4px" style="flex: 1; margin-top: -4px"></selectView>
></selectView>
<span <span
class="customer-btn iconfont icon-touxiang" class="customer-btn iconfont icon-touxiang"
@click.stop="changeCustomer('select')" @click.stop="changeCustomer('select')"
:style="{ paddingRight: '0px' }" :style="{ paddingRight: '0px' }"></span>
></span>
<span class="customer-btn iconfont icon-jiahao2fill" @click.stop="changeCustomer('add')"></span> <span class="customer-btn iconfont icon-jiahao2fill" @click.stop="changeCustomer('add')"></span>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
prop="thirdPay" prop="thirdPay"
label="第三方" label="第三方"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback>
> <div class="customer-box">
<div class="customer-box" >
<selectView <selectView
type="thirdPay" type="thirdPay"
:defaultVal="details.thirdPay" :defaultVal="details.thirdPay"
@ -62,32 +57,33 @@
:openSearch="true" :openSearch="true"
:isCopy="true" :isCopy="true"
@change="getSelectViewRes" @change="getSelectViewRes"
style="flex: 1; margin-top: -4px" style="flex: 1; margin-top: -4px"></selectView>
></selectView>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="PO NO" label="PO NO"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="pono" prop="pono">
> <inputView
<inputView :ishd="BookingLockOrder['pono'] && isLockBooking" type="pono" :parentVal="details.pono" @getInputChange="inputChange" /> :ishd="BookingLockOrder['pono'] && isLockBooking"
type="pono"
:parentVal="details.pono"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="船公司" label="船公司"
prop="carrierid" prop="carrierid"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback>
>
<selectView <selectView
ref="carrierid" ref="carrierid"
type="carrierid" type="carrierid"
@ -98,91 +94,104 @@
:disabled="BookingLockOrder['carrier'] && isLockBooking" :disabled="BookingLockOrder['carrier'] && isLockBooking"
:openSearch="false" :openSearch="false"
@change="getSelectViewRes" @change="getSelectViewRes"
style="flex: 1; margin-top: -4px" style="flex: 1; margin-top: -4px"></selectView>
></selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="是否占舱" label="是否占舱"
:labelCol="{ xs: { span: 24 }, :labelCol="{
sm: { span: 9 }, xs: { span: 24 },
md: { span: 9 }}" sm: { span: 9 },
:wrapperCol="{ xs: { span: 24 }, md: { span: 9 }
sm: { span: 12 }, }"
md: { span: 12 }}" :wrapperCol="{
xs: { span: 24 },
sm: { span: 12 },
md: { span: 12 }
}"
has-feedback has-feedback
prop="zhanCangFlag" prop="zhanCangFlag">
>
<div class="date-box"> <div class="date-box">
<a-radio-group :disabled="BookingLockOrder['zhanCangFlag'] && isLockBooking" size="small" v-model="details.zhanCangFlag"> <a-radio-group
:disabled="BookingLockOrder['zhanCangFlag'] && isLockBooking"
size="small"
v-model="details.zhanCangFlag">
<a-radio size="small" value="是"> </a-radio> <a-radio size="small" value="是"> </a-radio>
<a-radio size="small" value="否"> </a-radio> <a-radio size="small" value="否"> </a-radio>
</a-radio-group> </a-radio-group>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="订舱编号" label="订舱编号"
:labelCol="labelCol4" :labelCol="labelCol4"
:wrapperCol="wrapperCol4" :wrapperCol="wrapperCol4"
has-feedback has-feedback
prop="custno" prop="custno">
> <inputView
<inputView :ishd="BookingLockOrder['custno'] && isLockBooking" type="custno" :parentVal="details.custno" @getInputChange="inputChange" /> :ishd="BookingLockOrder['custno'] && isLockBooking"
type="custno"
:parentVal="details.custno"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="提单号" label="提单号"
prop="mblno" prop="mblno"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback>
> <inputView
<inputView type="mblno" :parentVal="details.mblno" :ishd="BookingLockOrder['mblno'] && isLockBooking" @getInputChange="inputChange" /> type="mblno"
:parentVal="details.mblno"
:ishd="BookingLockOrder['mblno'] && isLockBooking"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="分提单号" label="分提单号"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="hblno" prop="hblno">
> <inputView
<inputView :ishd="BookingLockOrder['hblno'] && isLockBooking" type="hblno" :parentVal="details.hblno" @getInputChange="inputChange" /> :ishd="BookingLockOrder['hblno'] && isLockBooking"
type="hblno"
:parentVal="details.hblno"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="订舱代理" label="订舱代理"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="forwarder" prop="forwarder">
>
<selectView <selectView
type="forwarder" type="forwarder"
:defaultVal="details.forwarder" :defaultVal="details.forwarder"
:agentFilter="agentFilter"
searchApi="DjyCustomerSuggest" searchApi="DjyCustomerSuggest"
:disabled="BookingLockOrder['forwarder'] && isLockBooking" :disabled="BookingLockOrder['forwarder'] && isLockBooking"
:searchQuery="{ keyword: '', type: 'booking_agent' }" :searchQuery="{ keyword: '', type: 'booking_agent' }"
:showLabel="['shortName']" :showLabel="['shortName']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes"
style="flex: 1; margin-top: -4px" style="flex: 1; margin-top: -4px"></selectView>
></selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<template v-if="details.carrierid != 'ESL'"> <template v-if="details.carrierid != 'ESL'">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="运费协议号" label="运费协议号"
@ -197,10 +206,9 @@
md: { span: 14 } md: { span: 14 }
}" }"
has-feedback has-feedback
prop="contractno" prop="contractno">
>
<div class="copy-box"> <div class="copy-box">
<template > <template>
<autoView <autoView
class="copy-input" class="copy-input"
type="contractno" type="contractno"
@ -208,17 +216,16 @@
:defaultVal="details.contractno" :defaultVal="details.contractno"
:dropdownStyle="{ width: '300px' }" :dropdownStyle="{ width: '300px' }"
searchApi="getContractno" searchApi="getContractno"
:searchQuery="{ queryItem: '', top: 50, laneCName: this.details.lineName,carrier: this.details.carrierid,pod: this.details.destinationid }" :searchQuery="{ queryItem: '', top: 50, laneCName: this.details.lineName, carrier: this.details.carrierid, pod: this.details.destinationid }"
:showLabel="['contractNo']" :showLabel="['contractNo']"
@select="getAutoViewRes" @select="getAutoViewRes"></autoView>
></autoView>
</template> </template>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-if="details.carrierid === 'ESL'"> <template v-if="details.carrierid === 'ESL'">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="运费协议号" label="运费协议号"
@ -233,10 +240,9 @@
md: { span: 12 } md: { span: 12 }
}" }"
has-feedback has-feedback
prop="contractno" prop="contractno">
>
<div class="copy-box"> <div class="copy-box">
<template > <template>
<autoView <autoView
class="copy-input" class="copy-input"
type="contractno" type="contractno"
@ -244,55 +250,59 @@
:disabled="BookingLockOrder['contractno'] && isLockBooking" :disabled="BookingLockOrder['contractno'] && isLockBooking"
:dropdownStyle="{ width: '300px' }" :dropdownStyle="{ width: '300px' }"
searchApi="getContractno" searchApi="getContractno"
:searchQuery="{ queryItem: '', top: 50, laneCName: this.details.lineName,carrier: this.details.carrierid,pod: this.details.destinationid }" :searchQuery="{ queryItem: '', top: 50, laneCName: this.details.lineName, carrier: this.details.carrierid, pod: this.details.destinationid }"
:showLabel="['contractNo']" :showLabel="['contractNo']"
@select="getAutoViewRes" @select="getAutoViewRes"></autoView>
></autoView>
</template> </template>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-if="details.carrierid === 'ESL'"> <template v-if="details.carrierid === 'ESL'">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="EP号" label="EP号"
:labelCol="labelCol4" :labelCol="labelCol4"
:wrapperCol="wrapperCol4" :wrapperCol="wrapperCol4"
has-feedback has-feedback
prop="epCode" prop="epCode">
> <inputView
<inputView :ishd="BookingLockOrder['epCode'] && isLockBooking" type="epCode" :parentVal="details.epCode" @getInputChange="inputChange" /> :ishd="BookingLockOrder['epCode'] && isLockBooking"
type="epCode"
:parentVal="details.epCode"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-if="['VOLTA', 'WHL', 'CSL', 'MSC','VOL'].includes(details.carrierid)"> <template v-if="['VOLTA', 'WHL', 'CSL', 'MSC', 'VOL'].includes(details.carrierid)">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="{span: '4-8'}"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="{ span: '4-8' }">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="真提单号" label="真提单号"
:labelCol="labelCol4" :labelCol="labelCol4"
:wrapperCol="wrapperCol4" :wrapperCol="wrapperCol4"
has-feedback has-feedback
prop="tmblno" prop="tmblno">
> <inputView
<inputView :ishd="BookingLockOrder['tmblno'] && isLockBooking" type="tmblno" :parentVal="details.tmblno" @getInputChange="inputChange" /> :ishd="BookingLockOrder['tmblno'] && isLockBooking"
type="tmblno"
:parentVal="details.tmblno"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
</a-row> </a-row>
<div class="from-box2"> <div class="from-box2">
<a-row > <a-row>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="5"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="5">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="开船日期" label="开船日期"
:labelCol="labelCol4" :labelCol="labelCol4"
:wrapperCol="wrapperCol4" :wrapperCol="wrapperCol4"
has-feedback has-feedback
prop="etd" prop="etd">
>
<div class="date-box"> <div class="date-box">
<datePickerView <datePickerView
class="date-picker" class="date-picker"
@ -301,29 +311,27 @@
type="etd" type="etd"
format="YYYY-MM-DD" format="YYYY-MM-DD"
@dateChange="dateChangeFun" @dateChange="dateChangeFun"
style="margin-top: -5px" style="margin-top: -5px"></datePickerView>
></datePickerView>
<span class="week" v-if="etdWeek && etdWeek !== 'NaN'">W{{ etdWeek || '--' }}</span> <span class="week" v-if="etdWeek && etdWeek !== 'NaN'">W{{ etdWeek || '--' }}</span>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="6"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="6">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="船名" label="船名"
:labelCol=" { :labelCol="{
xs: { span: 24 }, xs: { span: 24 },
sm: { span: 4 }, sm: { span: 4 },
md: { span: 4 } md: { span: 4 }
}" }"
:wrapperCol=" { :wrapperCol="{
xs: { span: 24 }, xs: { span: 24 },
sm: { span: 20 }, sm: { span: 20 },
md: { span: 20 } md: { span: 20 }
}" }"
has-feedback has-feedback
prop="vessel" prop="vessel">
>
<div class="copy-box"> <div class="copy-box">
<selectView <selectView
class="copy-input" class="copy-input"
@ -339,80 +347,91 @@
}" }"
:showLabel="['vessel']" :showLabel="['vessel']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes"></selectView>
></selectView>
</div> </div>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<template v-if="details.carrierid === 'ESL'"> <template v-if="details.carrierid === 'ESL'">
<a-col :xs="12" :sm="12" :md="8" :lg="{span: '4-8'}" :xl="4"> <a-col :xs="12" :sm="12" :md="8" :lg="{ span: '4-8' }" :xl="4">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="内部航次" label="内部航次"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="voynoinner" prop="voynoinner">
>
<!-- 内部航次暂无接口 暂时改为输入框 --> <!-- 内部航次暂无接口 暂时改为输入框 -->
<inputView :ishd="true" type="voynoinner" :parentVal="details.voynoinner" @getInputChange="inputChange" /> <inputView
:ishd="true"
type="voynoinner"
:parentVal="details.voynoinner"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-else> <template v-else>
<a-col :xs="12" :sm="12" :md="8" :lg="{span: '4-8'}" :xl="4"> <a-col :xs="12" :sm="12" :md="8" :lg="{ span: '4-8' }" :xl="4">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="内部航次" label="内部航次"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="voynoinner" prop="voynoinner">
>
<!-- 内部航次暂无接口 暂时改为输入框 --> <!-- 内部航次暂无接口 暂时改为输入框 -->
<inputView :ishd="true" type="voynoinner" :parentVal="details.voynoinner" @getInputChange="inputChange" /> <inputView
:ishd="true"
type="voynoinner"
:parentVal="details.voynoinner"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-if="details.carrierid === 'ESL'"> <template v-if="details.carrierid === 'ESL'">
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="4">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="航次" label="航次"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="voyno" prop="voyno">
>
<inputView :ishd="true" type="voyno" :parentVal="details.voyno" @getInputChange="inputChange" /> <inputView :ishd="true" type="voyno" :parentVal="details.voyno" @getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<template v-else> <template v-else>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="4">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="海关航次" label="海关航次"
:labelCol="labelCol2" :labelCol="labelCol2"
:wrapperCol="wrapperCol2" :wrapperCol="wrapperCol2"
has-feedback has-feedback
prop="voyno" prop="voyno">
> <inputView
<inputView :ishd="true" ref="voyno" type="voyno" :parentVal="details.voyno" @getInputChange="inputChange" /> :ishd="true"
ref="voyno"
type="voyno"
:parentVal="details.voyno"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</template> </template>
<a-col :xs="12" :sm="12" :md="12" :lg="{span: '4-8'}" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="{ span: '4-8' }" :xl="4">
<a-form-model-item <a-form-model-item
class="from-label" class="from-label"
label="船司航线" label="船司航线"
:labelCol="labelCol" :labelCol="labelCol"
:wrapperCol="wrapperCol" :wrapperCol="wrapperCol"
has-feedback has-feedback
prop="lanename" prop="lanename">
>
<!-- 航线暂无接口 暂时改为输入框--> <!-- 航线暂无接口 暂时改为输入框-->
<inputView :ishd="BookingLockOrder['lanename'] && isLockBooking" type="lanename" :parentVal="details.lanename" @getInputChange="inputChange" /> <inputView
:ishd="BookingLockOrder['lanename'] && isLockBooking"
type="lanename"
:parentVal="details.lanename"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
@ -424,8 +443,7 @@
:labelCol="userLabelCol" :labelCol="userLabelCol"
:wrapperCol="userWrapperCol" :wrapperCol="userWrapperCol"
has-feedback has-feedback
prop="sale" prop="sale">
>
<selectView <selectView
type="sale" type="sale"
:disabled="true" :disabled="true"
@ -434,8 +452,8 @@
:searchQuery="{ name: '' }" :searchQuery="{ name: '' }"
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes">
></selectView> </selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4">
@ -445,8 +463,7 @@
:labelCol="userLabelCol1" :labelCol="userLabelCol1"
:wrapperCol="userWrapperCol1" :wrapperCol="userWrapperCol1"
has-feedback has-feedback
prop="custservice" prop="custservice">
>
<selectView <selectView
type="custservice" type="custservice"
:defaultVal="details.custservice" :defaultVal="details.custservice"
@ -455,8 +472,8 @@
:searchQuery="{ name: '' }" :searchQuery="{ name: '' }"
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes">
></selectView> </selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4">
@ -466,8 +483,7 @@
:labelCol="userLabelCol1" :labelCol="userLabelCol1"
:wrapperCol="userWrapperCol1" :wrapperCol="userWrapperCol1"
has-feedback has-feedback
prop="op" prop="op">
>
<selectView <selectView
type="op" type="op"
:defaultVal="details.op" :defaultVal="details.op"
@ -476,8 +492,7 @@
:searchQuery="{ name: '' }" :searchQuery="{ name: '' }"
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes"></selectView>
></selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4">
@ -487,8 +502,7 @@
:labelCol="userLabelCol1" :labelCol="userLabelCol1"
:wrapperCol="userWrapperCol1" :wrapperCol="userWrapperCol1"
has-feedback has-feedback
prop="doc" prop="doc">
>
<selectView <selectView
type="doc" type="doc"
:defaultVal="details.doc" :defaultVal="details.doc"
@ -497,8 +511,7 @@
:searchQuery="{ name: '' }" :searchQuery="{ name: '' }"
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes"></selectView>
></selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4">
@ -508,8 +521,7 @@
:labelCol="userLabelCol" :labelCol="userLabelCol"
:wrapperCol="userWrapperCol" :wrapperCol="userWrapperCol"
has-feedback has-feedback
prop="route" prop="route">
>
<selectView <selectView
type="route" type="route"
:defaultVal="details.route" :defaultVal="details.route"
@ -519,8 +531,7 @@
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
:isCopy="true" :isCopy="true"
@change="getSelectViewRes" @change="getSelectViewRes"></selectView>
></selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4"> <a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="4">
@ -530,8 +541,7 @@
:labelCol="userLabelCol" :labelCol="userLabelCol"
:wrapperCol="userWrapperCol" :wrapperCol="userWrapperCol"
has-feedback has-feedback
prop="lineManage" prop="lineManage">
>
<selectView <selectView
type="lineManage" type="lineManage"
:defaultVal="details.lineManage" :defaultVal="details.lineManage"
@ -540,8 +550,8 @@
:searchQuery="{ name: '' }" :searchQuery="{ name: '' }"
:showLabel="['name']" :showLabel="['name']"
:openSearch="true" :openSearch="true"
@change="getSelectViewRes" @change="getSelectViewRes">
></selectView> </selectView>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
@ -553,9 +563,12 @@
:labelCol="labelCol3" :labelCol="labelCol3"
:wrapperCol="wrapperCol3" :wrapperCol="wrapperCol3"
has-feedback has-feedback
prop="czRemark" prop="czRemark">
> <inputView
<inputView :ishd="BookingLockOrder['czRemark'] && isLockBooking" type="czRemark" :parentVal="details.czRemark" @getInputChange="inputChange" /> :ishd="BookingLockOrder['czRemark'] && isLockBooking"
type="czRemark"
:parentVal="details.czRemark"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="24" :sm="9" :md="9" :lg="9" :xl="8"> <a-col :xs="24" :sm="9" :md="9" :lg="9" :xl="8">
@ -565,9 +578,12 @@
:labelCol="labelCol3" :labelCol="labelCol3"
:wrapperCol="wrapperCol3" :wrapperCol="wrapperCol3"
has-feedback has-feedback
prop="dzRemark" prop="dzRemark">
> <inputView
<inputView :ishd="BookingLockOrder['dzRemark'] && isLockBooking" type="dzRemark" :parentVal="details.dzRemark" @getInputChange="inputChange" /> :ishd="BookingLockOrder['dzRemark'] && isLockBooking"
type="dzRemark"
:parentVal="details.dzRemark"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :xs="24" :sm="6" :md="6" :lg="6" :xl="8"> <a-col :xs="24" :sm="6" :md="6" :lg="6" :xl="8">
@ -577,9 +593,12 @@
:labelCol="labelCol3" :labelCol="labelCol3"
:wrapperCol="wrapperCol3" :wrapperCol="wrapperCol3"
has-feedback has-feedback
prop="shenQingXiangShi" prop="shenQingXiangShi">
> <inputView
<inputView :ishd="BookingLockOrder['shenQingXiangShi'] && isLockBooking" type="shenQingXiangShi" :parentVal="details.shenQingXiangShi" @getInputChange="inputChange" /> :ishd="BookingLockOrder['shenQingXiangShi'] && isLockBooking"
type="shenQingXiangShi"
:parentVal="details.shenQingXiangShi"
@getInputChange="inputChange" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
@ -594,8 +613,7 @@
:confirmLoading="customerModelconfirm" :confirmLoading="customerModelconfirm"
:maskClosable="false" :maskClosable="false"
@ok="handleModelSubmit" @ok="handleModelSubmit"
@cancel="handleModelCancel" @cancel="handleModelCancel">
>
<template slot="footer"> <template slot="footer">
<a-button key="back" @click="handleModelCancel"> </a-button> <a-button key="back" @click="handleModelCancel"> </a-button>
</template> </template>
@ -618,8 +636,7 @@
rowKeyFieldName="rowKey" rowKeyFieldName="rowKey"
:rowStyleOption="rowStyleOption" :rowStyleOption="rowStyleOption"
:checkbox-option="checkboxOption" :checkbox-option="checkboxOption"
:clipboard-option="clipboardOption" :clipboard-option="clipboardOption" />
/>
<div class="table-no-data" v-if="tableData.length == 0"></div> <div class="table-no-data" v-if="tableData.length == 0"></div>
</div> </div>
</template> </template>
@ -637,7 +654,9 @@ import {
DjyCustomerdetail, DjyCustomerdetail,
BookingOrderContactSavebatch, BookingOrderContactSavebatch,
BookingOrderContactPage, BookingOrderContactPage,
DjyCustomerContacts DjyCustomerContacts,
listYardBwCarrier,
ListAgentByCarrier
} from '@/api/modular/main/BookingLedger' } from '@/api/modular/main/BookingLedger'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
let timer let timer
@ -681,6 +700,12 @@ export default {
isLockBooking: { isLockBooking: {
type: Boolean, type: Boolean,
default: false default: false
},
agentFilter: {
type: Array,
default: () => {
return []
}
} }
}, },
data() { data() {
@ -760,7 +785,7 @@ export default {
}, },
cellAutofillOption: true, cellAutofillOption: true,
editOption: { editOption: {
cellValueChange: ({ row, column }) => {} cellValueChange: ({ row, column }) => { }
}, },
checkboxOption: { checkboxOption: {
hideSelectAll: false, hideSelectAll: false,
@ -1217,6 +1242,12 @@ export default {
} else if (type === 'carrierid') { } else if (type === 'carrierid') {
this.details.carrier = res.enName || '' this.details.carrier = res.enName || ''
this.details.carrierid = res.code || '' this.details.carrierid = res.code || ''
ListAgentByCarrier({ carrierCode: this.details.carrierid }).then(res => {
this.$store.commit('SET_AgentFilter', res.data)
})
listYardBwCarrier({ carrierCode: this.details.carrierid }).then(res => {
this.$store.commit('SET_YardFilter', res.data)
})
setTimeout(() => { setTimeout(() => {
this.$refs.vesselView.handleSearch('') this.$refs.vesselView.handleSearch('')
}, 600) }, 600)
@ -1237,15 +1268,15 @@ export default {
} }
if (res.voyno) { if (res.voyno) {
if (res.voyno.includes('1MA')) { if (res.voyno.includes('1MA')) {
this.details.voyno = res.voyno.replace('1MA', '') || '' this.details.voyno = res.voyno.replace('1MA', '') || ''
} else {
if (res.voyno.includes('1NC')) {
this.details.voyno = res.voyno.replace('1NC', '') || ''
} else { } else {
this.details.voyno = res.voyno || '' if (res.voyno.includes('1NC')) {
this.details.voyno = res.voyno.replace('1NC', '') || ''
} else {
this.details.voyno = res.voyno || ''
}
} }
} }
}
this.details.voynoinner = res.voynoInside || '' this.details.voynoinner = res.voynoInside || ''
} else if (type === 'shipagency') { } else if (type === 'shipagency') {
this.details.shipagency = res.name || '' this.details.shipagency = res.name || ''
@ -1291,6 +1322,7 @@ export default {
/deep/ .ant-form-explain { /deep/ .ant-form-explain {
display: none !important; display: none !important;
} }
/deep/ .ant-form-item-children-icon .anticon-check-circle { /deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none; display: none;
} }
@ -1298,10 +1330,12 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@import url('../index.less'); @import url('../index.less');
@import url('../style/basicInfo.less'); @import url('../style/basicInfo.less');
.ant-col-xl-4-8{
.ant-col-xl-4-8 {
width: 20%; width: 20%;
} }
/deep/ .ant-card-body{
padding-left: 10px !important; /deep/ .ant-card-body {
} padding-left: 10px !important;
}
</style> </style>

@ -28,13 +28,31 @@
<button @click="openModel('cutOff')" :style="{ marginLeft: '4px' }"> <button @click="openModel('cutOff')" :style="{ marginLeft: '4px' }">
<span class="iconfont icon-daibanshixiang"></span>截单 <span class="iconfont icon-daibanshixiang"></span>截单
</button> </button>
<button @click="openModel('vgm')"><span class="iconfont icon-dingdan"></span>VGM</button> <a-popconfirm
title="您当前未选择服务项目,是否继续操作?"
:visible="visible1"
ok-text="是"
cancel-text="否"
@visibleChange="handleVisibleChange1"
@confirm="openModel('vgm')"
>
<button ><span class="iconfont icon-dingdan"></span>VGM</button>
</a-popconfirm>
<button @click="openModel('trace')"> <button @click="openModel('trace')">
<span class="iconfont icon-yunshu1" style="font-size:18px;"></span>运踪 <span class="iconfont icon-yunshu1" style="font-size:18px;"></span>运踪
</button> </button>
<button @click="openPreOrderFun"> <a-popconfirm
<span class="iconfont icon-yunshu1" style="font-size:18px;"></span>舱单 title="您当前未选择服务项目,是否继续操作?"
</button> :visible="visible"
ok-text="是"
cancel-text="否"
@visibleChange="handleVisibleChange"
@confirm="openPreOrderFun"
>
<button >
<span class="iconfont icon-yunshu1" style="font-size:18px;"></span>舱单
</button>
</a-popconfirm>
<button @click="openModel('paper')"> <button @click="openModel('paper')">
<span class="iconfont icon-zhizhishu" style="font-size:18px;"></span>下货纸 <span class="iconfont icon-zhizhishu" style="font-size:18px;"></span>下货纸
</button> </button>
@ -1157,6 +1175,7 @@ export default {
id: this.$route.query.id, id: this.$route.query.id,
labelCol: { span: 6 }, labelCol: { span: 6 },
voltaData: [], voltaData: [],
visible1: false,
voltaColumns: [ voltaColumns: [
{ {
dataIndex: 'sNo', dataIndex: 'sNo',
@ -1538,14 +1557,20 @@ export default {
], ],
traceValue: [], traceValue: [],
traceModalVisible: false, traceModalVisible: false,
visible: false,
cateCode: '', cateCode: '',
spinning: false, spinning: false,
yardSelectData: null, yardSelectData: null,
initCabinSendData: [] initCabinSendData: [],
serviceItem: []
} }
}, },
mounted() { mounted() {
this.BCvData = [...this.CvData] this.BCvData = [...this.CvData]
this.serviceItem = []
this.$bus.$on('bookingServiceItem', val => {
this.serviceItem = val
})
}, },
watch: { watch: {
scale() { scale() {
@ -1734,6 +1759,40 @@ export default {
} }
}) })
}, },
handleVisibleChange(visible) {
if (!visible) {
this.visible = false;
return;
}
const arr = []
this.serviceItem.forEach(item => {
if (item.isYield) {
arr.push(1)
}
})
if (arr.length === 0) {
this.visible = true;
} else {
this.openPreOrderFun()
}
},
handleVisibleChange1(visible) {
if (!visible) {
this.visible1 = false;
return;
}
const arr = []
this.serviceItem.forEach(item => {
if (item.isYield) {
arr.push(1)
}
})
if (arr.length === 0) {
this.visible1 = true;
} else {
this.openModel('vgm')
}
},
getSelectViewRes({ type, res }) { getSelectViewRes({ type, res }) {
if (type === 'customername') { if (type === 'customername') {
this.hisSearch.customername = res.shortName || '' this.hisSearch.customername = res.shortName || ''

@ -153,7 +153,7 @@
<div v-if="changeGoods && !serive.isBr" class="goods-box"> <div v-if="changeGoods && !serive.isBr" class="goods-box">
<div class="goods-content" :class="{ active: serive.isYield }" @click="saveGoodsStatus(serive)"> <div class="goods-content" :class="{ active: serive.isYield }" @click="saveGoodsStatus(serive)">
<!-- <a-icon type="check-circle" /> --> <!-- <a-icon type="check-circle" /> -->
<a-icon v-if="serive.isYield" class="serve-icon" type="check-circle" theme="filled" /> <a-icon v-if="serive.isYield" class="serve-icon" type="check-circle" theme="filled" />
<div v-else class="round"> <div v-else class="round">
</div> </div>
<div class="showName">{{ serive.showName }}</div> <div class="showName">{{ serive.showName }}</div>
@ -761,6 +761,7 @@ export default {
GetSeryiceProjectList(data).then(res => { GetSeryiceProjectList(data).then(res => {
if (res.data.succ) { if (res.data.succ) {
this.bookingServiceItem = res.data.ext this.bookingServiceItem = res.data.ext
this.$bus.$emit('bookingServiceItem', res.data.ext)
} else { } else {
this.$message.error(res.data.msg) this.$message.error(res.data.msg)
} }

@ -4417,5 +4417,6 @@ export default {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
pointer-events: auto; pointer-events: auto;
padding: 20px; padding: 20px;
z-index: 999;
} }
</style> </style>

Loading…
Cancel
Save