szh_zidingyibiaoti
张同海 2 years ago
commit 3666c4ee4e

@ -28,6 +28,9 @@ const colorList = [
},
{
key: '酱紫', color: '#722ED1'
},
{
key: '墨黑', color: '#212121'
}
]
@ -85,7 +88,6 @@ const menuColorList = [
}
]
const updateTheme = newPrimaryColor => {
const hideMessage = message.loading('正在切换主题!', 0)
themeColor.changeColor(newPrimaryColor).finally(t => {

@ -295,6 +295,23 @@ export default {
code: 'TEN'
}
]
case 'masterBolIndicator':
return [
{ ID: '1', NAME: 'Carrier filing HBL | 船公司发HBL' },
{ ID: '2', NAME: 'Self filing HBL | 自己发' },
{ ID: '3', NAME: 'Not Applicable/Straight bl | 无HBL' }
]
case 'salerCode':
return [
{ ID: 'CN087', NAME: 'CN087 | GRACE SUN' },
{ ID: 'CN096', NAME: 'CN096 | LEON LIANG' },
{ ID: 'CN097', NAME: 'CN097 | CHARLES GAO' },
{ ID: 'CN098', NAME: 'CN098 | TERESA LIU SHAN' },
{ ID: 'CN106', NAME: 'CN106 | HOKI YU' },
{ ID: 'CN107', NAME: 'CN107 | WILLIAM YANG JING YU' },
{ ID: 'CN099', NAME: 'CN099 | HELEN ZHANG' },
{ ID: 'CN100', NAME: 'CN100 | LEOREN' }
]
case 'yard':
return this.yardList
case 'kindpkgs':
@ -360,7 +377,7 @@ export default {
this.$refs.selectView.$refs.vcSelect.focus()
}
this.open = true
if (['cargoid', 'nobill', 'copynobill', 'carrierid', 'yard', 'kindpkgs', 'issuetype', 'blfrt', 'lineName'].includes(this.type)) {
if (['cargoid', 'nobill', 'copynobill', 'carrierid', 'yard', 'kindpkgs', 'issuetype', 'blfrt', 'lineName', 'masterBolIndicator', 'salerCode'].includes(this.type)) {
this.selectList = this.emnuData(this.type)
this.inLoading = false
return false

@ -8,7 +8,7 @@
:animated="Object.keys($refs).includes('sedOrder') ? false : true"
@change="changeTab"
>
<a-tab-pane key="1" tab="主单信息">
<a-tab-pane key="1" tab="主单信息" :forceRender="true">
<a-row :gutter="24">
<a-col :span="18" class="left-box" style="padding-right:0;">
<template>
@ -124,7 +124,7 @@
</a-col>
</a-row>
</a-tab-pane>
<a-tab-pane key="2" tab="分单信息" v-show="bookingDetails.hbList && bookingDetails.hbList.length > 0">
<a-tab-pane key="2" tab="分单信息" :forceRender="true" v-show="bookingDetails.hbList && bookingDetails.hbList.length > 0">
<sedOrder
ref="sedOrder"
:details="bookingDetails"
@ -199,6 +199,9 @@ const initDetail = {
custserviceid: '',
route: '',
routeid: '',
// ,
dzRemark: '',
czRemark: '',
//
shipper: '',
feeself: false,
@ -308,9 +311,11 @@ const initDetail = {
consigneeEdiCode: '',
shipperEdiCode: '',
notifyCdoe: '',
salerCode: '',
salerCode: 'CN087',
salerCodeName: 'GRACE SUN',
emanifestHbl: '',
masterBolIndicator: '',
masterBolIndicator: '3',
masterBolIndicatorName: 'Not Applicable/Straight bl | 无HBL',
s0CC0C: '',
ckhi: '',
cncm: '',
@ -349,9 +354,11 @@ const bookingEDIExt = {
consigneeEdiCode: '',
shipperEdiCode: '',
notifyCdoe: '',
salerCode: '',
salerCode: 'CN087',
salerCodeName: 'GRACE SUN',
emanifestHbl: '',
masterBolIndicator: '',
masterBolIndicator: '3',
masterBolIndicatorName: 'Not Applicable/Straight bl | 无HBL',
s0CC0C: '',
ckhi: '',
cncm: '',
@ -410,7 +417,8 @@ export default {
hasEdiRules: false,
tableRules: rules.tableRules,
hasTableRules: false,
inAddSave: false
inAddSave: false,
hasHbList: false
}
},
computed: {
@ -576,17 +584,17 @@ export default {
setTimeout(() => {
if (this.bookingDetails.hbList && this.bookingDetails.hbList.length > 0) {
this.Showtabs = true
if (this.tabActiveKey === '2') {
setTimeout(() => {
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init(this.bookingDetails.hbList)
}, 200)
}
} else {
this.Showtabs = false
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init([])
}
}
}, 200)
setTimeout(() => {
// console.log('== 1. - false ==')
this.checkSaveFun({ type: 'details', hasChange: false })
this.inChildLoading = false
}, 500)
@ -610,17 +618,17 @@ export default {
setTimeout(() => {
if (this.bookingDetails.hbList && this.bookingDetails.hbList.length > 0) {
this.Showtabs = true
if (this.tabActiveKey === '2') {
setTimeout(() => {
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init(this.bookingDetails.hbList)
}, 200)
}
} else {
this.Showtabs = false
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init([])
}
}
}, 200)
setTimeout(() => {
// console.log('== 2. - false ==')
this.checkSaveFun({ type: 'details', hasChange: false })
this.inChildLoading = false
}, 500)
@ -639,20 +647,20 @@ export default {
setTimeout(() => {
if (this.bookingDetails.hbList && this.bookingDetails.hbList.length > 0) {
this.Showtabs = true
if (this.tabActiveKey === '2') {
setTimeout(() => {
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init(this.bookingDetails.hbList)
}, 200)
}
} else {
this.Showtabs = false
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init([])
}
}
}, 200)
if (this.isCopy && !$data.isCopy) {
this.bookingDetails.mblno = ''
}
setTimeout(() => {
// console.log('== 3. - false ==')
this.checkSaveFun({ type: 'details', hasChange: false })
this.inChildLoading = false
}, 500)
@ -666,7 +674,6 @@ export default {
this.$forceUpdate()
this.init()
setTimeout(() => {
// console.log('== 4. - false ==')
this.checkSaveFun({ type: 'details', hasChange: false })
this.inChildLoading = false
}, 500)
@ -690,6 +697,9 @@ export default {
this.isAdd = true
this.bookingDetails.carrierid = this.type
this.bookingDetails.carrier = this.type
if (Object.keys(this.$refs).includes('sedOrder')) {
this.$refs.sedOrder.init([])
}
}
this.getDjyTenantConfig()
},
@ -862,6 +872,12 @@ export default {
this.checkSaveFun({ type: 'details', hasChange: false })
this.inChildLoading = false
this.$message.success({ content: '加载完成' })
if (!this.hasHbList && this.bookingDetails.hbList.length > 0) {
this.$refs.sedOrder.init(this.bookingDetails.hbList)
this.hasHbList = true
} else {
this.$refs.sedOrder.init([])
}
}, 1200)
this.$forceUpdate()
},
@ -1243,7 +1259,7 @@ export default {
this.tabActiveKey = '2'
this.Showtabs = true
setTimeout(() => {
this.$refs.sedOrder.init(data.hbList)
this.$refs.sedOrder.init(this.bookingDetails.hbList)
}, 200)
},
//

@ -473,6 +473,32 @@
</a-form-model-item>
</a-col>
</a-row>
<a-row class="from-box4" :gutter="10">
<a-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
<a-form-model-item
class="from-label"
label="单证备注"
:labelCol="labelCol3"
:wrapperCol="wrapperCol3"
has-feedback
prop="dzRemark"
>
<inputView type="dzRemark" :parentVal="details.dzRemark" @getInputChange="inputChange" />
</a-form-model-item>
</a-col>
<a-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
<a-form-model-item
class="from-label"
label="操作备注"
:labelCol="labelCol3"
:wrapperCol="wrapperCol3"
has-feedback
prop="czRemark"
>
<inputView type="czRemark" :parentVal="details.czRemark" @getInputChange="inputChange" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</div>
</x-card>
@ -596,6 +622,16 @@ export default {
sm: { span: 15 },
md: { span: 16 }
},
labelCol3: {
xs: { span: 24 },
sm: { span: 5 },
md: { span: 5 }
},
wrapperCol3: {
xs: { span: 24 },
sm: { span: 19 },
md: { span: 19 }
},
form: this.$form.createForm(this),
// / - start
customerType: '',

@ -1,8 +1,11 @@
<template>
<a-collapse class="collapse-box bill-info-box" :bordered="false" expandIconPosition="right" v-model="showKey">
<a-collapse-panel key="1">
<a-collapse class="collapse-box bill-info-box" :bordered="false" v-model="showKey">
<a-collapse-panel key="1" :showArrow="false">
<template slot="header">
<div class="base-tit"><i class="iconfont icon-electronic-signature"></i>签单信息</div>
<div class="base-tit"><i class="iconfont icon-electronic-signature"></i>签单信息 <span class="click-btn" @click.stop="tabStopFun"></span></div>
</template>
<template slot="extra">
<div class="tab-change"><i class="iconfont icon-xia" :class="{'active': !showKey.includes('1')}"></i></div>
</template>
<div class="container bill-info">
<a-form-model ref="billFrom" :model="details" :rules="rules">
@ -457,6 +460,11 @@ export default {
dateChangeFun ({ type, value }) {
this.details[type] = value || ''
console.log('== 日期修改 ==', type, value, this.details[type])
},
tabStopFun () {
return false
},
tabChangeFun () {
}
}
}

@ -1,10 +1,12 @@
<template>
<a-collapse class="collapse-box" :bordered="false" expandIconPosition="right" v-model="showKey">
<a-collapse-panel key="1">
<a-collapse class="collapse-box" :bordered="false" v-model="showKey">
<a-collapse-panel key="1" :showArrow="false">
<template slot="header">
<div class="base-tit"><i class="iconfont icon-goods"></i>货物信息</div>
<div class="base-tit"><i class="iconfont icon-goods"></i>货物信息 <span class="click-btn" @click.stop="tabStopFun"></span></div>
</template>
<template slot="extra">
<div class="tab-change"><i class="iconfont icon-xia" :class="{'active': !showKey.includes('1')}"></i></div>
</template>
<!-- <a-button type="primary" @click="checkbasic"> </a-button> -->
<div class="container cargo-info">
<a-form-model :selfUpdate="true" ref="cargoFrom" :model="details" :rules="rules">
<a-row :gutter="20">
@ -44,12 +46,13 @@
<div class="title" :class="{'required':rules['description'] && rules['description'][0].required}" >Description of Goods (包装种类与货名)</div>
<a-form-model-item has-feedback prop="goodsname" label="" :class="{'goods-name-box':rules['goodsname'] && rules['goodsname'][0].required}">
<i class="icon required goods-required" v-if="rules['goodsname'] && rules['goodsname'][0].required"></i>
<!-- :showLabel="['goodsNameEN', 'goodsCode']" -->
<selectView
type="goodsname"
:defaultVal="details.goodsname"
searchApi="getGoodsname"
:searchQuery="{ queryItem: '', top: 50 }"
:showLabel="['goodsNameEN']"
:showLabel="['goodsCode', 'goodsNameEN']"
:openSearch="true"
@change="getSelectViewRes"
style="width: 75%;max-width:210px;"
@ -237,6 +240,11 @@ export default {
inputChange({ type, value }) {
this.details[type] = value
this.$forceUpdate()
},
tabStopFun () {
return false
},
tabChangeFun () {
}
}
}

@ -325,11 +325,20 @@
has-feedback
prop="bookingEDIExt.salerCode"
>
<a-select size="small" default-value="CN087 | GRACE SUN" v-model="details.bookingEDIExt.salerCode" @change="handleSaleChange">
<selectView
type="salerCode"
:defaultVal="details.bookingEDIExt.salerCode"
searchApi="salerCode"
:searchQuery="{ NAME: '' }"
:showLabel="['NAME']"
:openSearch="false"
@change="getSelectViewRes"
></selectView>
<!-- <a-select size="small" default-value="CN087 | GRACE SUN" v-model="details.bookingEDIExt.salerCode" @change="handleSaleChange">
<a-select-option v-for="(sales, sindex) in StoreSalesRepCode" :value="sales.NAME" :key="sindex">
{{ sales.NAME }}
</a-select-option>
</a-select>
</a-select> -->
</a-form-model-item>
</a-col>
<a-col :span="12">
@ -352,11 +361,20 @@
has-feedback
prop="bookingEDIExt.masterBolIndicator"
>
<a-select size="small" v-model="details.bookingEDIExt.masterBolIndicator" @change="handleMasterBolChange">
<selectView
type="masterBolIndicator"
:defaultVal="details.bookingEDIExt.masterBolIndicatorName"
searchApi="StoreMasterBOLIndicator"
:searchQuery="{ NAME: '' }"
:showLabel="['NAME']"
:openSearch="false"
@change="getSelectViewRes"
></selectView>
<!-- <a-select size="small" v-model="details.bookingEDIExt.masterBolIndicator" @change="handleMasterBolChange" optionLabelProp="label">
<a-select-option v-for="(master, mindex) in StoreMasterBOLIndicator" :value="mindex" :key="mindex">
{{ master.NAME }}
</a-select-option>
</a-select>
</a-select> -->
</a-form-model-item>
</a-col>
<a-col :span="12">
@ -430,10 +448,12 @@
</template>
<script>
import inputView from '../components/inputView'
import selectView from '../components/selectView'
let timer;
export default {
components: {
inputView
inputView,
selectView
},
props: {
details: {
@ -521,24 +541,31 @@ export default {
}
});
},
handleMasterBolChange (val) {
this.details.bookingEDIExt.masterBolIndicator = this.StoreMasterBOLIndicator[val].ID
this.details.bookingEDIExt.masterBolIndicatorName = this.StoreMasterBOLIndicator[val].NAME
},
handleSaleChange (val) {
this.details.bookingEDIExt.salerCode = val.split('|')[0]
this.details.bookingEDIExt.salerCodeName = val.split('|')[1]
},
// handleMasterBolChange (val) {
// this.details.bookingEDIExt.masterBolIndicator = this.StoreMasterBOLIndicator[val].ID
// this.details.bookingEDIExt.masterBolIndicatorName = this.StoreMasterBOLIndicator[val].NAME
// },
// handleSaleChange (val) {
// this.details.bookingEDIExt.salerCode = val.split('|')[0]
// this.details.bookingEDIExt.salerCodeName = val.split('|')[1]
// },
inputChange ({ type, value }) {
const bookingEDIExtArr = ['sendCode', 'receiveCode', 'ediAttn', 'ediAttnTel', 'ediAttnMail', 'amsConsignee', 'amsNotifyParty', 'opEName', 'opTel', 'opEmail', 'goodsName', 'orderRemark', 'consigneeEdiCode', 'shipperEdiCode', 'notifyCdoe', 'emanifestHbl', 'acihbl', 'kingTareweight']
if (bookingEDIExtArr.includes(type)) {
this.details.bookingEDIExt[type] = value
// console.log(this.details.bookingEDIExt[type])
} else {
this.details[type] = value
// console.log(this.details[type])
}
this.$forceUpdate()
},
getSelectViewRes ({ type, res }) {
if (type === 'masterBolIndicator') {
this.details.bookingEDIExt.masterBolIndicator = res.ID || ''
this.details.bookingEDIExt.masterBolIndicatorName = res.NAME || ''
} else if (type === 'salerCode') {
this.details.bookingEDIExt.salerCode = res.ID || ''
this.details.bookingEDIExt.salerCodeName = res.NAME.split('|')[1].trimStart()
}
}
}
}

@ -1,11 +1,13 @@
<template>
<a-collapse class="collapse-box" :bordered="false" expandIconPosition="right" v-model="showKey">
<a-collapse-panel key="1">
<a-collapse class="collapse-box" :bordered="false" v-model="showKey" >
<a-collapse-panel key="1" :showArrow="false">
<template slot="header">
<div class="base-tit"><i class="iconfont icon-a-fahuodaifahuo"></i>收发通信息</div>
<div class="base-tit"><i class="iconfont icon-a-fahuodaifahuo"></i>收发通信息 <span class="click-btn" @click.stop="tabStopFun"></span></div>
</template>
<template slot="extra">
<div class="tab-change"><i class="iconfont icon-xia" :class="{'active': !showKey.includes('1')}"></i></div>
</template>
<div class="mail-info">
<!-- <a-button type="primary" @click="checkbasic"> </a-button> -->
<a-form-model :selfUpdate="true" ref="mailingFrom" :model="details" :rules="rules">
<a-row :gutter="10">
<a-col class="left-sender-box" :xs="24" :sm="24" :md="24" :lg="10" :xl="11">
@ -1460,6 +1462,11 @@ export default {
this.details[type] = value || ''
}
console.log('== 日期修改 ==', type, value, this.details[type])
},
tabStopFun () {
return false
},
tabChangeFun () {
}
}
}

@ -123,7 +123,7 @@
<template slot="footer">
<a-button @click="handleModelCancel"></a-button>
<a-button type="primary" @click="handleModelSubmit('save')" :loading="EDISloading">保存EDI文件</a-button>
<a-button type="primary" @click="handleModelSubmit('send')" :loading="EDIUloading">上传EDI</a-button>
<a-button type="primary" @click="handleModelSubmit('send')" :loading="EDIUloading">上传 <template v-if="modelType === 'cutOff'">ESI</template><template v-else>EDI</template></a-button>
</template>
</template>
@ -388,7 +388,7 @@
</a-form-item>
</a-col>
</div>
<div class="item-box vgm-remarks" style="padding-top:0px;padding-bottom:0px;height:85px;">
<div class="item-box vgm-remarks" style="padding-top:0px;padding-bottom:0px;height:166px;">
<a-col :span="24">
<a-form-item
label="备注"
@ -401,7 +401,7 @@
class="remark-input"
style="width:1000px !important; text-align: left;"
:allowClear="true"
:auto-size="{ minRows: 3, maxRows: 3 }"
:auto-size="{ minRows: 7, maxRows: 7 }"
v-model="initCabinFrom.remark"
/>
</div>

@ -156,6 +156,172 @@ import goodsTable from './goodsTable'
import ediMore from './ediMore'
import rules from '../rules'
import { BookingOrderSave, DeleteBookingOrder } from '@/api/modular/main/BookingLedger'
const sedDetail = {
id: 0,
parentId: 0,
//
customername: '',
customerid: '',
carrier: 'CMA',
carrierid: 'CMA',
forwarder: '',
forwarderid: '',
pono: '',
mblno: '',
hblno: '',
EPCode: '', // eslEP
custno: '',
contractno: '',
vessel: '',
voyno: '',
voynoinner: '',
lanecode: '',
etd: '',
atd: '',
lanename: '',
shipagency: '',
shipagencyid: '',
lineName: '',
sale: '',
saleid: '',
op: '',
opid: '',
doc: '',
docid: '',
custservice: '',
custserviceid: '',
route: '',
routeid: '',
// ,
dzRemark: '',
czRemark: '',
//
shipper: '',
feeself: false,
consignee: '',
notifyparty: '',
yard: '',
yardid: '',
customser: '',
customserid: '',
trucker: '',
truckerid: '',
agentname: '',
agentid: '',
warehouse: '',
warehouseID: '',
eta: '',
closingdate: '',
closedocdate: '',
closevgmdate: '',
portload: '',
portloadid: '',
transport: '',
transportid: '',
portdischarge: '',
portdischargeid: '',
destination: '',
destinationid: '',
placedelivery: '',
placedeliveryid: '',
placereceipt: '',
placereceiptid: '',
pkgs: 0,
kindpkgs: '',
kgs: 0,
cbm: 0,
yardremark: '',
yardcontract: '',
yardcontracttel: '',
yardcontractemail: '',
pkgstotal: '',
kgstotal: '',
cbmtotal: '',
//
marks: '',
goodsname: '',
goodscode: '',
cargoid: '',
hscode: '',
description: '',
totalno: '',
//
issuetype: '',
issuedate: '',
issueplace: '',
issueplaceid: '',
nobill: 'THREE',
copynobill: 'THREE',
prepardat: '',
prepardatid: '',
payableat: '',
payableatid: '',
blfrt: '',
thirdpayaddr: '',
service: 'CY-CY',
reeferf: '',
tempset: '',
tempid: '',
tempmin: '',
tempmax: '',
humidity: '',
dclass: '',
dunno: '',
dpage: '',
dlabel: '',
linkman: '',
//
soremark: '',
siremark: '',
//
ctnInputs: [],
// edi (edi)
weituo: '',
freightpayer: '',
scaccode: '',
itncode: '',
iscontainersoc: 0,
bookingEDIExt: {
weiTuoFang: '',
ediAttn: '',
ediAttnTel: '',
ediAttnMail: '',
sendCode: '',
receiveCode: '',
amsConsignee: '',
amsNotifyParty: '',
opEName: '',
opTel: '',
opEmail: '',
goodsName: '',
orderRemark: '',
kingTareweight: '',
exRemark1: '',
exRemark2: '',
exRemark3: '',
exRemark4: '',
// == ==
consigneeEdiCode: '',
shipperEdiCode: '',
notifyCdoe: '',
salerCode: '',
emanifestHbl: '',
masterBolIndicator: '',
s0CC0C: '',
ckhi: '',
cncm: '',
wncm: '',
acihbl: ''
},
//
hbList: [],
//
remark: [],
file: [],
log: [],
item: [],
statuslog: []
}
export default {
name: 'SedOrder',
props: {
@ -238,7 +404,10 @@ export default {
immediate: true,
handler(nD, oD) {
this.id = this.$route.query.id
// this.init()
this.inSave = true
setTimeout(() => {
this.inSave = false
}, 1200)
if (this.$refs.basicInfo) {
this.$refs.basicInfo.$refs.basicFrom.clearValidate()
this.$refs.mailingInfo.$refs.mailingFrom.clearValidate()
@ -259,34 +428,42 @@ export default {
this.checkFromInit()
},
methods: {
init(data = {}) {
init(data = []) {
this.inSecLoad = true
if (Object.keys(data).length > 0) {
this.sedOrderList = JSON.parse(JSON.stringify(data))
} else if (this.parSedOrderList.length > 0) {
this.sedOrderList = JSON.parse(JSON.stringify(this.parSedOrderList))
} else {
this.sedOrderList = []
}
// else if (this.parSedOrderList.length > 0) {
// this.sedOrderList = JSON.parse(JSON.stringify(this.parSedOrderList))
// }
if (this.sedOrderList.length > 0) {
this.sedOrderList.map((item, index) => {
item.isNoSave = false
})
this.editIndex = 0
const data = JSON.parse(JSON.stringify(this.sedOrderList[0]))
if (!data.bookingEDIExt) {
data.bookingEDIExt = {
const $data = JSON.parse(JSON.stringify(this.sedOrderList[0]))
if (!$data.bookingEDIExt) {
$data.bookingEDIExt = {
weiTuoFang: '',
ediAttn: '',
ediAttnTel: '',
ediAttnMail: ''
}
}
this.editDetails = data
this.editDetails = $data
setTimeout(() => {
this.$refs.goodsTable.init()
}, 1000)
setTimeout(() => {
this.inSecLoad = false
}, 2000)
} else {
this.editDetails = JSON.parse(JSON.stringify(sedDetail))
setTimeout(() => {
this.inSecLoad = false
}, 2000)
}
},
@ -371,10 +548,12 @@ export default {
this.editDetails = data
this.editIndex = this.sedOrderList.length
this.sedOrderList.push(data)
// console.log('== 1 ==', this.sedOrderList)
this.$emit('changeHB', this.sedOrderList)
},
changeDetailFun(data) {
// console.log('== 2 load ==', this.inSave, this.inSecLoad)
if (this.inSave || this.inSecLoad) { return false }
const { detail, type } = data
if (!detail.bookingEDIExt) {
@ -390,6 +569,7 @@ export default {
}
this.editDetails = detail
this.sedOrderList[this.editIndex] = detail
// console.log('== 2 ==', data, this.sedOrderList)
this.$emit('changeHB', this.sedOrderList)
this.$forceUpdate()
},
@ -593,24 +773,19 @@ export default {
},
removeSucc (id, index) {
const removeIndex = index
console.log('当前删除分单index为', removeIndex)
this.sedOrderList.splice(removeIndex, 1)
this.$emit('sedOrderRemove', this.sedOrderList)
if (this.sedOrderList.length === 0) {
console.log('== 子单列表删除完毕 ==')
this.editIndex = 0
this.editDetails = null
return false
}
if (this.editDetails.id === id) {
console.log('== 删除数据为当前编辑数据 ==')
const num = this.editIndex === 0 ? 0 : this.editIndex - 1
this.editIndex = num > this.sedOrderList.length ? this.sedOrderList.length - 1 : num
this.editDetails = this.sedOrderList[this.editIndex]
console.log('== 删除数据为当前编辑数据 end ==', this.editIndex, this.editDetails)
} else {
this.editIndex = removeIndex < this.editIndex ? this.editIndex - 1 : this.editIndex
console.log('== 删除分单 index ==', this.editIndex)
}
setTimeout(() => {
this.inSecLoad = false

@ -22,7 +22,9 @@ export default {
op: [{ required: false, message: '请选择操作人员', trigger: 'change' }],
doc: [{ required: false, message: '请选择单证人员', trigger: 'change' }],
custservice: [{ required: false, message: '请选择客服人员', trigger: 'change' }],
route: [{ required: false, message: '请选择航线操作', trigger: 'change' }]
route: [{ required: false, message: '请选择航线操作', trigger: 'change' }],
dzRemark: [{ required: false, message: '请选择单证备注', trigger: 'change' }],
czRemark: [{ required: false, message: '请选择操作备注', trigger: 'change' }]
},
mailingRules: {
shipper: [{ required: false, message: '请输入发货人', trigger: 'submit' }],
@ -88,7 +90,7 @@ export default {
},
remarksRules: {
soremark: [{ required: false, message: '请输入订舱备注', trigger: 'change' }],
siremark: [{ required: false, message: '请输入截单备注', trigger: 'change' }]
siremark: [{ required: false, message: '请输入截单备注', trigger: 'change' }],
},
ediRules: {
'bookingEDIExt.sendCode': [{ required: false, message: '请输入发送方EDI代码', trigger: 'change' }],

@ -21,6 +21,12 @@
padding-top: 0;
}
.from-box4 {
border-top: 1px dashed #ccc;
margin-top: 8px;
padding-top: 0;
}
.date-box {
display: flex;
padding-top:4px;

@ -26,6 +26,30 @@
font-size: 18px;
color: @primary-color;
}
.click-btn{
position: absolute;
width: 100%;
height: 100%;
// background: #f99;
z-index: 9;
top: 0;left: 0;
}
}
.tab-change i{
transition: .5s all;
display: inline-block;
&.active{
transform: rotate(-90deg);
}
}
/deep/ .ant-collapse-header {
position: relative;
}
/deep/ .ant-collapse-header .ant-collapse-extra {
position: absolute !important;
top: 7px !important;
right: 11px !important;
z-index: 99;
}
/*多余线条去掉 */
.ant-collapse-item {

@ -24,6 +24,30 @@
font-weight: 500;
color: @primary-color;
}
.click-btn{
position: absolute;
width: 100%;
height: 100%;
// background: #f99;
z-index: 9;
top: 0;left: 0;
}
}
.tab-change i{
transition: .5s all;
display: inline-block;
&.active{
transform: rotate(-90deg);
}
}
/deep/ .ant-collapse-header {
position: relative;
}
/deep/ .ant-collapse-header .ant-collapse-extra {
position: absolute !important;
top: 7px !important;
right: 11px !important;
z-index: 99;
}
.cargo-info {
box-shadow: none;

@ -25,6 +25,31 @@
font-size: 18px;
color: @primary-color;
}
.click-btn{
position: absolute;
width: 100%;
height: 100%;
// background: #f99;
z-index: 9;
top: 0;left: 0;
}
}
.tab-change i{
transition: .5s all;
display: inline-block;
&.active{
transform: rotate(-90deg);
}
}
/deep/ .ant-collapse-header {
position: relative;
}
/deep/ .ant-collapse-header .ant-collapse-extra {
position: absolute !important;
top: 7px !important;
right: 11px !important;
z-index: 99;
}
.left-sender-box{
padding-top: 4px;

@ -628,7 +628,10 @@ export default {
columns: JSON.parse(JSON.stringify(initData.columns)),
data: []
}
next()
console.log('== 设置,清空了列表数据 ==')
next(vm => {
console.log('== 开始跳转 ==')
})
},
beforeRouteEnter (to, from, next) {
next(vm => {

@ -48,7 +48,7 @@ export default {
{ field: 'placedelivery', label: 'PLACEDELIVERY', width: 120, title: '交货地点', showHeaderOverflow: true, sortable: true },
{ field: 'nobill', label: 'NOBILL', width: 120, title: '提单份数', showHeaderOverflow: true, sortable: true },
{ field: 'portdischarge', label: 'PORTDISCHARGE', width: 120, title: '卸货港', showHeaderOverflow: true, sortable: true },
{ field: 'bookremark', label: 'BOOKREMARK', width: 120, title: '合同号备注', className: 'book-remark-box', showOverflow: false, slots: { default: 'bookremark' } },
{ field: 'bookremark', label: 'BOOKREMARK', width: 120, title: '备注', className: 'book-remark-box', showOverflow: false, slots: { default: 'bookremark' } }, // 标题 合同号备注 改为 备注
// { field: 'remarks', label: 'REMARKS', width: 120, title: '其他备注', showHeaderOverflow: true, showOverflow: false, sortable: true, slots: { default: 'remarks' } }, // 暂时写为so备注 + si备注 数据量太大,不要了
{ field: 'bookstatus', label: 'BOOKSTATUS', minWidth: 140, title: '运踪', showHeaderOverflow: true, slots: { default: 'bookstatus' } },
{ field: 'closingdate', label: 'CLOSINGDATE', width: 160, title: '截港日期', showHeaderOverflow: true, sortable: true, slots: { default: 'closingdate' } },
@ -61,7 +61,7 @@ export default {
{ field: 'service', label: 'SERVICE', width: 160, title: '运输条款', showHeaderOverflow: true, sortable: true },
{ field: 'sale', label: 'SALE', width: 160, title: '揽货人', showHeaderOverflow: true, sortable: true }, // 销售
{ field: 'lanename', label: 'LANENAME', width: 160, title: '航线', showHeaderOverflow: true, sortable: true },
{ field: 'servicecontractno', label: 'SERVICECONTRACTNO', width: 160, title: '客户合同号', showHeaderOverflow: true, sortable: true }, // 没有设置该字段的地方
// { field: 'servicecontractno', label: 'SERVICECONTRACTNO', width: 160, title: '客户合同号', showHeaderOverflow: true, sortable: true }, // 没有设置该字段的地方 - 暂时去掉
{ field: 'bsstatusname', label: 'BSSTATUSNAME', width: 160, title: '业务状态', showHeaderOverflow: true, sortable: true },
{ field: 'bookingno', label: 'BOOKINGNO', width: 160, title: '业务编号', showHeaderOverflow: true, sortable: true },
{ field: 'agentid', label: 'AGENTID', width: 160, title: '国外代理', showHeaderOverflow: true, sortable: true },
@ -98,7 +98,10 @@ export default {
{ field: 'placedeliveryid', label: 'PLACEDELIVERYID', width: 120, title: '交货地代码', showHeaderOverflow: true, sortable: true },
{ field: 'portloadid', label: 'PORTLOADID', width: 120, title: '装货港代码', showHeaderOverflow: true, sortable: true },
{ field: 'portdischargeid', label: 'PORTDISCHARGEID', width: 120, title: '卸货港代码', showHeaderOverflow: true, sortable: true },
{ field: 'pono', label: 'pono', width: 120, title: 'PO NO', showHeaderOverflow: true, sortable: true }
{ field: 'pono', label: 'PONO', width: 120, title: 'PO NO', showHeaderOverflow: true, sortable: true },
// 以下为新增字段
{ field: 'dzRemark', label: 'DZREMARK', width: 160, title: '单证备注', showHeaderOverflow: true, sortable: true },
{ field: 'czRemark', label: 'CZREMARK', width: 160, title: '操作备注', showHeaderOverflow: true, sortable: true }
],
// ==== 表单部分 ====
condAllData: [
@ -123,7 +126,7 @@ export default {
{ title: '订舱编号', align: 'center', width: 120, label: 'CUSTNO', type: 'input' },
{ title: '业务编号', align: 'center', width: 120, label: 'BOOKINGNO', type: 'input' },
{ title: '业务状态', align: 'center', width: 120, label: 'BSSTATUS', type: 'input' },
{ title: '客户合同号', align: 'center', width: 120, label: 'SERVICECONTRACTNO', type: 'input' },
// { title: '客户合同号', align: 'center', width: 120, label: 'SERVICECONTRACTNO', type: 'input' }, // 暂时去掉
{ title: '航线代码', align: 'center', width: 120, label: 'LANECODE', type: 'input' },
{ title: '内部航次', align: 'center', width: 120, label: 'VOYNOINNER', type: 'input' },
{ title: '海关航次', align: 'center', width: 120, label: 'VOYNO', type: 'input' },
@ -150,7 +153,7 @@ export default {
{ title: '装货港代码', align: 'center', width: 120, label: 'PORTLOADID', type: 'input' },
{ title: '卸货港代码', align: 'center', width: 120, label: 'PORTDISCHARGEID', type: 'input' },
{ title: '航线操作', align: 'center', width: 120, label: 'ROUTE', type: 'complete', showLabel: 'name' },
{ title: 'PO NO', align: 'center', width: 120, label: 'pono', type: 'input' },
{ title: 'PO NO', align: 'center', width: 120, label: 'PONO', type: 'input' },
// 新增字段
{ title: '件数', align: 'center', width: 160, label: 'PKGS', type: 'input' },
@ -218,7 +221,9 @@ export default {
]
},
// 以下为日期区间
{ title: '签单日期', align: 'center', width: 160, label: 'ISSUEDATE', type: 'dateRange', resLabel: ['BISSUEDATE', 'EISSUEDATE'] }
{ title: '签单日期', align: 'center', width: 160, label: 'ISSUEDATE', type: 'dateRange', resLabel: ['BISSUEDATE', 'EISSUEDATE'] },
// 以下为新增字段 - 台账文档中, 参数暂无
// { title: '单证备注', align: 'center', width: 160, label: 'DZREMARK', type: 'input' },
// { title: '操作备注', align: 'center', width: 160, label: 'CZREMARK', type: 'input' }
]
}

Loading…
Cancel
Save