作者 小范

转关运抵

import axios from 'axios'
import http from './http.js'
let base = 'wlpt-nmms-manage/trans/log/getByAutoid';
export const getList = params => { return axios.get(`${base}`, { params: params }); };
... ...
<template>
<div class="app-container">
<el-dialog
title="收发明细"
:visible.sync="dialogVisible"
width="75%"
>
<el-table :data="detailedList" border>
<el-table-column label="操作人">
<template slot-scope="scope">
{{ scope.row.operator}}
</template>
</el-table-column>
<el-table-column label="件数">
<template slot-scope="scope">
{{ scope.row.pcs}}
</template>
</el-table-column>
<el-table-column label="重量">
<template slot-scope="scope">
{{ scope.row.wgt}}
</template>
</el-table-column>
<el-table-column label="海关回执时间" width="160">
<template slot-scope="scope">
{{ scope.row.procdate}}
</template>
</el-table-column>
<el-table-column label="回执接收时间" width="160">
<template slot-scope="scope">
{{ scope.row.responsedate}}
</template>
</el-table-column>
<el-table-column label="海关统一编号" width="160">
<template slot-scope="scope">
{{ scope.row.seqno}}
</template>
</el-table-column>
<el-table-column label="客户端导入回执状态码">
<template slot-scope="scope">
<el-tag type="success" v-if="scope.row.responsecode ==='0'">正常</el-tag>
<el-tag type="danger" v-if="scope.row.responsecode ==='1'">失败</el-tag>
</template>
</el-table-column>
<el-table-column label="客户端导入回执" show-overflow-tooltip>
<template slot-scope="scope">
<span :style="{'color':scope.row.responsecode=='0'?'rgb(103,194,58)'
:scope.row.responsecode=='1'?'rgb(245,110,110)':'rgb(60,62,66)'}">{{ scope.row.responsemessage }}</span>
</template>
</el-table-column>
<el-table-column label="海关回执代码">
<template slot-scope="scope">
<el-tag type="success" v-if="scope.row.procresult ==='S'">成功</el-tag>
<el-tag type="danger" v-if="scope.row.procresult ==='F'">失败</el-tag>
</template>
</el-table-column>
<el-table-column label="海关回执内容" show-overflow-tooltip>
<template slot-scope="scope">
<span :style="{'color':scope.row.procresult=='S'?'rgb(103,194,58)'
:scope.row.procresult=='F'?'rgb(245,110,110)':'rgb(60,62,66)'}">{{ scope.row.note }}</span>
</template>
</el-table-column>
</el-table>
</el-dialog>
</div>
</template>
<script>
import {
getList
} from '../../api/detailed'
export default {
name: "DetailedLog",
props: {
visible: {
type: Boolean,
default: false
},
messageId: {
type: String,
default: false
}
},
data() {
return {
detailedList: []
}
},
computed: {
dialogVisible: {
get() {
return this.visible
},
set(val) {
// 当visible改变的时候,触发父组件的 updateVisible方法,在该方法中更改传入子组件的 centerDialogVisible的值
this.$emit('updateVisible', val)
}
}
},
created() {
},
methods: {
check(id) {
let _this = this
const para = {
autoid: id
}
getList(para).then(res => {
let response = res.data
if (response.code === '200') {
_this.detailedList = response.data
}
})
},
handleClose() {
}
}
}
</script>
<style scoped>
.filter-container {
margin-bottom: 20px;
}
.el-tooltip_popper{
max-width: 60%;
}
.table-p {
font-size: 20px;
text-align: center;
background-color: #efefef;
height: 45px;
line-height: 45px;
width: 100%;
margin-top: 0px;
}
</style>
... ...
/**
* Created by jiachenpan on 16/11/18.
*/
Date.prototype.format = function(fmt) {
var o = {
'M+': this.getMonth() + 1, // 月份
'd+': this.getDate(), // 日
'h+': this.getHours(), // 小时
'H+': this.getHours(), // 小时
'm+': this.getMinutes(), // 分
's+': this.getSeconds(), // 秒
'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
'S': this.getMilliseconds() // 毫秒
}
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
}
for (var k in o) {
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
}
}
return fmt
}
export function parseTime(time, cFormat) {
if (arguments.length === 0) {
return null
... ...
... ... @@ -156,7 +156,7 @@
</el-row>
</el-form>
</el-row>
<el-row>
<el-row class="rowTwo">
<el-table
v-loading="listLoading"
:data="tableData"
... ... @@ -174,7 +174,7 @@
fixed="left"
width="55"
/>
<el-table-column label="统一编号">
<el-table-column label="统一编号" width="150">
<template slot-scope="scope">
<span>{{ scope.row.seqno }}</span>
</template>
... ... @@ -193,36 +193,36 @@
<span>{{ scope.row.customscode }}</span>
</template>
</el-table-column>
<el-table-column label="集装箱(器)编号" width="140">
<template slot-scope="scope">
<span>{{ scope.row.contaid }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="集装箱(器)编号" width="140">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ scope.row.contaid }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="总提运单号" width="140">
<template slot-scope="scope">
<span>{{ scope.row.billno }}</span>
</template>
</el-table-column>
<el-table-column label="运输方式代码" width="120">
<template slot-scope="scope">
<span v-if="scope.row.trafmode ==='2'">江海运输</span>
<span v-if="scope.row.trafmode ==='3'">铁路运输</span>
<span v-if="scope.row.trafmode ==='4'">汽车运输</span>
<span v-if="scope.row.trafmode ==='5'">航空运输</span>
<span v-if="scope.row.trafmode ==='6'">邮件运输</span>
<!-- <span>{{ scope.row.trafmode }}</span>-->
</template>
</el-table-column>
<el-table-column label="境内运输工具名称" width="140">
<template slot-scope="scope">
<span>{{ scope.row.trafname }}</span>
</template>
</el-table-column>
<el-table-column label="境内运输工具航(班)次" width="160">
<template slot-scope="scope">
<span>{{ scope.row.voyageno }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="进出境运输方式代码" width="120">-->
<!-- <template slot-scope="scope">-->
<!-- <span v-if="scope.row.trafmode ==='2'">江海运输</span>-->
<!-- <span v-if="scope.row.trafmode ==='3'">铁路运输</span>-->
<!-- <span v-if="scope.row.trafmode ==='4'">汽车运输</span>-->
<!-- <span v-if="scope.row.trafmode ==='5'">航空运输</span>-->
<!-- <span v-if="scope.row.trafmode ==='6'">邮件运输</span>-->
<!--&lt;!&ndash; <span>{{ scope.row.trafmode }}</span>&ndash;&gt;-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="境内运输工具名称" width="140">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ scope.row.trafname }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="境内运输工具航(班)次" width="160">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ scope.row.voyageno }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="境内运输方式" width="120">
<template slot-scope="scope">
<span v-if="scope.row.trafway ==='2'">江海运输</span>
... ... @@ -248,28 +248,49 @@
<span>{{ scope.row.unloadcode }}</span>
</template>
</el-table-column>
<el-table-column label="到达卸货地时间" width="140">
<el-table-column label="时间" width="140">
<template slot-scope="scope">
<span>{{ scope.row.creattime }}</span>
</template>
</el-table-column>
<el-table-column label="申报状态" width="120">
<template slot-scope="scope">
<span>{{ scope.row.arrivetime }}</span>
<span v-if="scope.row.dstatus ==='000'">未申报/已暂存</span>
<span v-if="scope.row.dstatus ==='001'">已申报</span>
</template>
</el-table-column>
<el-table-column label="回执内容" width="140">
<el-table-column label="回执状态" width="120">
<template slot-scope="scope">
<span>{{ scope.row.customResponseText }}</span>
<el-tag type="success" v-if="scope.row.customResponseStatus ==='0'">申报成功</el-tag>
<el-tag type="danger" v-if="scope.row.customResponseStatus ==='1'">申报失败</el-tag>
<el-tag type="success" v-if="scope.row.customResponseStatus ==='S'">申报成功</el-tag>
<el-tag type="danger" v-if="scope.row.customResponseStatus ==='F'">申报失败</el-tag>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="400" fixed="right">
<el-table-column label="回执内容" width="220">
<template slot-scope="scope">
<el-button type="success" size="mini" @click="editTrn(scope.$index,scope.row)">编&nbsp;&nbsp;&nbsp;辑</el-button>
<el-button type="warning" size="mini" @click="declareTrn(scope.row)">
申&nbsp;&nbsp;&nbsp;报
<span :style="{'color':scope.row.customResponseStatus=='0'?'rgb(103,194,58)'
:scope.row.customResponseStatus=='1'?'rgb(245,110,110)':scope.row.customResponseStatus=='S'?'rgb(103,194,58)'
:scope.row.customResponseStatus=='F'?'rgb(245,110,110)':'rgb(60,62,66)'}">{{ scope.row.customResponseText }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="410" fixed="right">
<template slot-scope="scope">
<el-row>
<el-button type="success" size="mini" @click="editTrn(scope.$index,scope.row)">编辑</el-button>
<el-button type="warning" size="mini" :disabled="scope.row.customResponseText && scope.row.customResponseText !== undefined && scope.row.customResponseText.length>0" @click="declareTrn(scope.row)">
申报
</el-button>
<el-button type="danger" size="mini" :disabled="scope.row.customResponseText && scope.row.customResponseText !== undefined && scope.row.customResponseText.length>0" @click="delTrn(scope.row)">
删除
</el-button>
<el-button type="primary" size="mini" @click="check(scope.row)">
回执明细
</el-button>
<el-button type="info" size="mini" @click="statusTrn(scope.row)">
修改状态
</el-button>
<el-button type="danger" size="mini" :disabled="scope.row.customResponseText && scope.row.customResponseText !== undefined && scope.row.customResponseText.length>0" @click="delTrn(scope.row)">
删&nbsp;&nbsp;&nbsp;除
</el-button>
</el-row>
</template>
</el-table-column>
</el-table>
... ... @@ -299,7 +320,7 @@
<el-form ref="form" :inline="true" :model="form" class="demo-form-inline" label-width="100px" style="margin-top: -20px;label:right" :rules="rules" >
<el-row>
<el-col :span="24">
<div class="grid-content content">信息表单</div>
<div class="grid-content content">信息表单 (id: {{form.autoid}})</div>
</el-col>
</el-row>
<el-row>
... ... @@ -310,7 +331,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="海关关区" prop="customscode">
<el-input v-model="form.customscode" size="small" placeholder="" oninput="value=value.replace(/[^\d]/g,'')"
<el-input v-model="customscode" size="small" placeholder="" oninput="value=value.replace(/[^\d]/g,'')"
maxLength='4'/>
</el-form-item>
</el-col>
... ... @@ -430,7 +451,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="卸货地代码" prop="unloadcode">
<el-input v-model="form.unloadcode" size="small" placeholder="" />
<el-input v-model="unloadcode" size="small" placeholder="" />
</el-form-item>
</el-col>
</el-row>
... ... @@ -449,8 +470,8 @@
<el-date-picker
v-model="form.arrivetime"
type="datetime" size="mini"
value-format="yyyyMMddhhmmss"
format="yyyyMMddhhmmss"
value-format="yyyyMMddHHmmss"
format="yyyyMMddHHmmss"
style="width:190px"
placeholder="选择日期时间">
</el-date-picker>
... ... @@ -489,16 +510,32 @@
</el-form>
</el-dialog>
</el-row>
<!-- 回执明细弹框-->
<DetailedLog
ref="detailedlog"
:message-id="detailedlogId"
:visible="dialogDetailedLogVisible"
@updateVisible="updateVisible"
/>
</section>
</template>
<script>
import {selectTrans,delTrans,batchSend,ediTrans,send,addTrans} from "../../api/trn";
import DetailedLog from '@/components/detailedDialog'
import uti from '@/utils'
export default {
name: "transit",
components: { DetailedLog },
data(){
return{
//组件数据
detailedlogId: '',
dialogDetailedLogVisible: false,
detailedList: [],
pickerOptions: {
shortcuts: [{
text: '最近一周',
... ... @@ -572,16 +609,16 @@
packno:'',
grosswt:'',
unloadcode:'',
arrivetime:'',
arrivetime: '',
contatype:'',
trnmode:'',
trnmode:'2',
notes:'',
opertype:'1',
opertype:'A',
sign:'qwer',
signdate:'20220113120000',
clientseqno:'qwertyuioplkjhgfds',
hostid:'1137490146@qq.com',
certno:'11',
signdate:'',
clientseqno:'',
hostid:'',
certno:'',
},
... ... @@ -609,7 +646,50 @@
//获取列表
this.trnList();
},
computed:{
customscode: {
get: function () {
return this.form.customscode
},
set:function (val) {
this.form.customscode = val;
let loadcode = ''
if (this.unloadcode && this.unloadcode.length >= 2) {
let length = this.unloadcode.length
loadcode = this.unloadcode.substring(length - 2, length)
}
this.form.arriveno = this.customscode + loadcode + new Date().format('yyMMddHHmmss');
}
},
unloadcode: {
get: function () {
return this.form.unloadcode
},
set:function (val) {
this.form.unloadcode = val
let loadcode = ''
console.log(this.unloadcode.length)
if (this.unloadcode && this.unloadcode.length >= 2) {
let length = this.unloadcode.length
loadcode = this.unloadcode.substring(length - 2, length)
}
console.log(loadcode+"aaaa")
this.form.arriveno = this.customscode + loadcode + new Date().format('yyMMddHHmmss');
}
},
},
methods:{
//查看回执按钮
check(row) {
this.dialogDetailedLogVisible = true
this.autoid = row.autoid
this.$refs.detailedlog.check(row.autoid)
console.log('======'+this.detailedList)
},
updateVisible(val) {
this.dialogDetailedLogVisible = val
},
//分页
handleSizeChange(val) {
this.formTrn.pageSize = val
... ... @@ -680,6 +760,7 @@
addTrn() {
this.dialogStatus = 'create'
this.trn_dialog.addDialog = true
this.form.arrivetime = new Date().format('yyyyMMddHHmmss')
},
// 新增功能
... ... @@ -737,13 +818,7 @@
},
// 申报
declareTrn(row) {
row.clientseqno= "qwertyuioplkjhgfds"
row.opertype= "1"
row.sign= "qwer"
row.signdate= "20220113120000"
row.hostid= "1137490146@qq.com"
row.certno= "11"
row.opertype= "C"
send(row).then((response) => {
const res = response.data
if (res.code !== '200') {
... ... @@ -816,4 +891,6 @@
padding: 15px 0 0 20px;
box-shadow: 0px 5px 5px #e5e8eb;
}
.rowTwo{
}
</style>
... ...