订舱详情新增

dev
lilu 2 years ago
parent 6436674535
commit d64a3452a9

@ -95,7 +95,7 @@
<% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css) { %>
<link rel="stylesheet" href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" />
<% } %>
<link rel="stylesheet" href="//at.alicdn.com/t/c/font_3756681_2z59jpzmild.css" />
<link rel="stylesheet" href="//at.alicdn.com/t/c/font_3756681_ag4yb8dhtl9.css" />
<!-- 1.8K仔百度收录 -->
<meta name="baidu-site-verification" content="code-QVfBYJ5laQ" />
</head>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

@ -5,7 +5,7 @@
<a-row :gutter="24">
<a-col :span="18">
<template v-if="!inPageLoading">
<operationArea :details="bookingDetails" @refresh="refreshPage" @save="saveFun"></operationArea>
<operationArea :details="bookingDetails" @refresh="refreshPage" @save="saveFun" @rules="getRules"></operationArea>
<a-tabs type="card">
<a-tab-pane key="1" tab="基础信息">
<div class="pane-box">
@ -30,7 +30,7 @@
</template>
</a-col>
<a-col :span="6">
<rightContent :id="id" :details="bookingDetails" @changeDetail="changeDetailFun" v-if="!inPageLoading"></rightContent>
<rightContent :id="id" :details="bookingDetails" :excuteRules="excuteRules" @changeDetail="changeDetailFun" v-if="!inPageLoading"></rightContent>
</a-col>
</a-row>
</a-tab-pane>
@ -79,7 +79,8 @@ export default {
tabBarStyle: {
background: '#fff',
padding: '0 20px'
}
},
excuteRules: []
}
},
watch: {
@ -101,7 +102,105 @@ export default {
if (this.id) {
this.getDetail()
} else {
this.bookingDetails = {}
this.bookingDetails = {
id: 0,
//
customername: '',
carrier: '',
carrierid: this.type,
forwarder: '',
pono: '',
mblno: '',
hblno: '',
bookingno: '',
contractno: '',
vessel: '',
voyno: '',
voynoinner: '',
lanecode: '',
etd: '',
atd: '',
lanename: '',
shipagency: '',
sale: '',
op: '',
doc: '',
custservice: '',
//
shipper: '',
consignee: '',
notifyparty: '',
yard: '',
customser: '',
trucker: '',
agentid: '',
eta: '',
closingdate: '',
closedocdate: '',
closevgmdate: '',
portload: '',
portloadid: '',
transport: '',
transportid: '',
portdischarge: '',
portdischargeid: '',
destination: '',
destinationid: '',
placedelivery: '',
placedeliveryid: '',
placereceipt: '',
placereceiptid: '',
pkgs: 0,
kindpkgs: '',
kgs: 0,
cbm: 0,
//
marks: '',
cargoid: '',
hscode: '',
description: '',
totalno: '',
// ()
issuetype: '',
issuedate: '',
issueplace: '',
issueplaceid: '',
nobill: '',
copynobilll: '',
prepardat: '',
payableat: '',
blfrt: '',
thirdpayaddr: '',
service: '',
//
soremark: '',
siremark: '',
//
ctnInputs: [],
// edi (edi)
weituo: '',
freightpayer: '',
scaccode: '',
itncode: '',
iscontainersoc: 0
//
}
this.bookingDetails.carrier = this.enmuCarrier(this.type)
}
},
enmuCarrier (type) {
switch (type) {
case 'CMA':
return '法国达飞'
case 'ONE':
return 'ONE'
case 'ESL':
return 'ESL'
case 'MSC':
return 'MSC'
default:
return ''
}
},
@ -130,6 +229,10 @@ export default {
bookingOrderUpdate () {
console.log('保存', this.bookingDetails)
if (!this.bookingDetails.mblno) {
this.$message.error('请输入提单号')
return false
}
BookingOrderUpdate(this.bookingDetails)
.then((res) => {
if (res.success) {
@ -146,6 +249,11 @@ export default {
},
bookingOrderAdd () {
console.log('新增', this.bookingDetails)
if (!this.bookingDetails.mblno) {
this.$message.error('请输入提单号')
return false
}
BookingOrderAdd(this.bookingDetails)
.then((res) => {
if (res.success) {
@ -171,6 +279,9 @@ export default {
} else {
this.bookingOrderAdd()
}
},
getRules (data) {
this.excuteRules = data
}
}
}

@ -652,7 +652,7 @@ export default {
carrierSelect(value) {
const index = this.carrierDataArr.indexOf(value)
this.details.carrier = value
this.details.carrierid = this.carrierData[index].gid
this.details.carrierid = this.carrierData[index].code
},
carrierChange(value) {
this.getCarrier(value)
@ -677,7 +677,7 @@ export default {
vesselSelect(value) {
this.details.vessel = value
const index = this.vesselDataArr.indexOf(value)
this.details.vesselid = this.vesselData[index].gid
this.details.vesselid = this.vesselData[index].code
},
vesselChange(value) {
this.getVessel(value)

@ -24,7 +24,6 @@
v-model="details.issuedate"
format="YYYY-MM-DD HH:mm:ss"
placeholder="签单日期"
v-decorator="['createdTime', { rules: [{ required: false }] }]"
/>
</a-form-item>
</a-col>
@ -50,7 +49,6 @@
<a-input
v-model="details.issueplaceid"
placeholder="请输入签单代码!"
v-decorator="['code', { rules: [{ required: true, message: '请输入签单代码!' }] }]"
/>
</a-form-item>
</a-col>

@ -795,7 +795,7 @@ export default {
yardSelect (value) {
this.details.yard = value
const index = this.yardDataArr.indexOf(value)
this.details.yardid = this.yardData[index].gid
this.details.yardid = this.yardData[index].code
},
yardChange(value) {
this.getYardlist(value)

@ -13,17 +13,7 @@
<button><span class="iconfont icon-shuaxin"></span>刷新</button>
</a-popconfirm>
<button><span class="iconfont icon-fuzhi1"></span>复制</button>
<a-popconfirm
placement="bottom"
title="是否保存当前数据?"
ok-text="是"
cancel-text="否"
@confirm="saveFun"
@cancel="cancelRefresh"
>
<button><span class="iconfont icon-icon_baocun"></span>保存</button>
</a-popconfirm>
<!-- <button @click="saveFun"><span class="iconfont icon-icon_baocun"></span>保存</button> -->
<button @click="saveFun"><span class="iconfont icon-icon_baocun"></span>保存</button>
<button><span class="iconfont icon-printing"></span>打印</button>
</div>
<div class="btn-list more-view-1">
@ -41,15 +31,6 @@
<button @click="openModel('vgmlink')"><span class="iconfont icon-lianjie"></span>VGM链接</button>
<button @click="TxxpLink"><span class="iconfont icon-dayinxiaopiao"></span>提箱小票</button>
</div>
<!-- <div class="btn-list more-view-3">
<button @click="openTab('sonMenu')"><span class="iconfont icon-a-xiaopiaofapiao-01"></span>分票</button>
<button @click="openTab('moreEdi')"><span class="iconfont icon-wj-bccl"></span>EDI补充</button>
<button @click="openTab('team')"><span class="iconfont icon-tuandui"></span>团队</button>
</div> -->
<!-- <div class="btn-list single-view">
<button><span class="iconfont icon-shiyongwendang"></span>舱单</button>
<button><span class="iconfont icon-yunshu1"></span>派车</button>
</div> -->
<div class="btn-list single-view-4">
<button><span class="iconfont icon-OCR"></span>OCR</button>
<button @click="checkFun"><span class="iconfont icon-jinggao"></span>校验</button>
@ -837,7 +818,7 @@ export default {
.then((res) => {
debugger
if (res.success) {
this.$emit('rules', res.data.rows)
} else {
this.$message.error(res.message)
}

@ -3,8 +3,15 @@
<a-card :bodyStyle="tstyle" :bordered="false">
<div class="title"><i class="iconfont icon-ERP_zhuyi"></i><span>注意事项</span></div>
<div class="content">
<div class="tip" v-if="false"></div>
<div class="tip no-data">
<div class="tip" v-if="excuteRules.length > 0">
<div class="rules-label" v-for="(rule,rindex) in excuteRules" :key="rindex">
<i class="iconfont icon-chenggong Success" v-if="rule.errorType === 'Success'"></i>
<i class="iconfont icon-xiazaishibai Warning" v-else-if="rule.errorType === 'Warning'"></i>
<i class="iconfont icon-shibai Error" v-else-if="rule.errorType === 'Error'"></i>
<span>{{ rule.resultName }}</span>
</div>
</div>
<div class="tip no-data" v-else>
<i class="iconfont icon-meiyoudingdan"></i>
<div class="text">暂无校验<span>立即校验</span></div>
</div>
@ -171,6 +178,12 @@ export default {
return {}
},
},
excuteRules: {
type: Array,
default: () => {
return []
},
},
},
data() {
return {
@ -760,4 +773,19 @@ export default {
color: #666;
}
}
.rules-label{
i{
margin-right: 10px;
}
.Success{
color: #00cc99;
}
.Error{
color: #ff0033;
}
.Warning{
color: #ff9900;
}
}
</style>

@ -54,12 +54,6 @@
<span class="tab-btn" @click="tableHeaderEdit">
<a-icon type="setting" :style="{ fontSize: '16px' }" /> 设置
</span>
<!-- <a-popover placement="bottom" v-model="setVisible" trigger="click">
<template #content>
<columnSetting :columns="showColumns" @columnChange="columnChange"></columnSetting>
</template>
<span class="tab-btn"> <a-icon type="setting" :style="{ fontSize: '16px' }" /> 设置 </span>
</a-popover> -->
</div>
</template>
</vxe-toolbar>
@ -76,9 +70,9 @@
<a-modal title="新增船公司" :width="300" :visible="addVisible" @ok="addSubmit" @cancel="addCancel">
<a-radio-group v-model="carrierRadio">
<a-radio :style="radioStyle" value="CMA"> <img class="radio-logo" src="@/assets/cma.png" /> CMA </a-radio>
<a-radio :style="radioStyle" value="ONE"> <img class="radio-logo" src="@/assets/cma.png" /> ONE </a-radio>
<a-radio :style="radioStyle" value="ESL"> <img class="radio-logo" src="@/assets/cma.png" /> ESL </a-radio>
<a-radio :style="radioStyle" value="MAC"> <img class="radio-logo" src="@/assets/cma.png" /> MAC </a-radio>
<a-radio :style="radioStyle" value="MAC"> <img class="radio-logo" src="@/assets/cma.png" /> MSC </a-radio>
<a-radio :style="radioStyle" value="ONE"> <img class="radio-logo" src="@/assets/cma.png" /> ONE </a-radio>
</a-radio-group>
</a-modal>
@ -154,12 +148,12 @@ export default {
pageSizes: [10, 20, 50, 100, 200, 500],
},
columns: JSON.parse(JSON.stringify(initData.columns)),
data: [],
treeConfig: {
transform: true,
rowField: 'index',
parentField: 'parentId',
},
data: []
// treeConfig: {
// transform: true,
// rowField: 'index',
// parentField: 'parentId',
// },
},
//
formTableData: JSON.parse(JSON.stringify(initData.columns)),
@ -297,7 +291,6 @@ export default {
},
tableReset() {
this.form.resetFields()
this.init()
},
@ -364,6 +357,7 @@ export default {
this.$router.push({ name: 'BookingDetail', query: { id: row.id, type: row.carrierid } })
},
getList(queryParam = {}) {
this.$set(this.gridOptions, 'loading', true)
const { currentPage, pageSize } = this.gridOptions.pagerConfig
const query = {
...queryParam,
@ -373,14 +367,23 @@ export default {
} }
BookingOrderPage(query)
.then((res) => {
const _data = res.data.rows.map((item, index) => {
item.index = (currentPage - 1) * pageSize + index
return item
})
this.$set(this.gridOptions.pagerConfig, 'total', res.data.totalPage)
this.$set(this.gridOptions, 'data', JSON.parse(JSON.stringify(_data)))
this.$set(this.gridOptions, 'loading', false)
this.$forceUpdate()
if (res.success) {
const _data = res.data.rows.map((item, index) => {
item.index = (currentPage - 1) * pageSize + index
return item
})
this.$set(this.gridOptions.pagerConfig, 'columns', JSON.parse(JSON.stringify(initData.columns)))
// this.$set(this.gridOptions, 'data', JSON.parse(JSON.stringify(_data)))
this.$set(this.gridOptions, 'data', [...this.gridOptions.data, ..._data])
this.$set(this.gridOptions.pagerConfig, 'total', res.data.totalRows)
this.$set(this.gridOptions, 'loading', false)
this.$forceUpdate()
console.log('======分页数据======', this.gridOptions.data)
} else {
this.$set(this.gridOptions, 'data', [...this.gridOptions.data, ...[]])
this.$set(this.gridOptions, 'loading', false)
this.$forceUpdate()
}
})
.catch((err) => {
console.log(err)

Loading…
Cancel
Save