作者 zhangFan

添加验证js,修改进港原始界面

... ... @@ -36,6 +36,38 @@ export function validAlphabets(str) {
}
/**
* 航班校验
*/
export function validFlightNo(str) {
const reg = /^[A-Z0-9]{6,7}$/
if(!reg.test(str)){
return false
}
const flightNoPre = /^[A-Z]+$/
if(!flightNoPre.test(str.substring(0,2))){
return false
} else {
return true
}
}
/**
* 主单校验
*/
export function validAwb(str) {
const reg = /^[0-9\-]{12}$/
if(!reg.test(str)){
return false
}
const result = str.split("-")[1]
const num = (result.substring(0,7)) % 7
if(num === eval(str.substring(11)) ){
return true
} else {
return false
}
}
/**
* validate email
* @param email
* @returns {boolean}
... ...
... ... @@ -10,14 +10,14 @@
<el-select v-model="listQuery.customcode" class="filter-item" placeholder="请选择关区代码">
<el-option v-for="item in manifestCustoms" :key="item" :label="item" :value="item"></el-option>
</el-select>
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="handleFilter">{{
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="handleSearch">{{
$t('table.search') }}
</el-button>
<el-button class="filter-item" style="margin-left: 10px;" type="primary" icon="el-icon-edit"
@click="handleCreate">{{ $t('table.add') }}
</el-button>
<el-button class="filter-item" style="margin-left: 10px;" type="primary" icon="el-icon-message"
@click="handleCreate">批量发送
@click="handleDelList">批量发送
</el-button>
</div>
<tree-table :data="orgData" :eval-func="func" :eval-args="args" :expand-all="expandAll" stripe
... ... @@ -63,39 +63,26 @@
</template>
</el-table-column>
<!--<el-table-column :label="$t('table.status')" width="90px" sortable>-->
<!--<template slot-scope="scope">-->
<!--<el-tag :type="scope.row.status | statusFilter">{{ scope.row.status }}</el-tag>-->
<!--</template>-->
<!--<template slot-scope="scope">-->
<!--<el-tag :type="scope.row.status | statusFilter">{{ scope.row.status }}</el-tag>-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column label="回执内容" width="300px" align="center">
<el-table-column label="回执内容" align="center">
<template slot-scope="scope">
<span>{{ scope.row.customText }}</span>
<!--<div>-->
<!--<el-progress :percentage="scope.row.customComplate" :status="scope.row.status | statusFilter"/>-->
<!--<el-progress :percentage="scope.row.customComplate" :status="scope.row.status | statusFilter"/>-->
<!--</div>-->
</template>
</el-table-column>
<el-table-column :label="$t('table.actions')" align="center">
<el-table-column :label="$t('table.actions')" width="500px" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="handleUpdate(scope.row)">快速编辑</el-button>
<el-button v-if="scope.row.status!='41301'" size="mini" type="success"
@click="handleModifyStatus(scope.row,'41301')">{{ $t('table.publish') }}
</el-button>
<el-button v-if="scope.row.status!='10002'" size="mini"
@click="handleModifyStatus(scope.row,'10002')">客服反馈
</el-button>
<el-button v-if="scope.row.status=='10002'" size="mini" type="danger"
@click="handleModifyStatus(scope.row,'deleted')">{{ $t('table.delete') }}
</el-button>
<el-switch
v-model="scope.row.resend"
@change="handleSwitch(scope.row)"
active-color="#13ce66"
inactive-color="#ff4949"
:key="scope.row.id"
active-text="可发"
inactive-text="禁发">
</el-switch>
<el-button type="primary" size="mini" @click="handleUpdate(scope.row)">编辑</el-button>
<el-button size="mini" type="success" @click="handleSend(scope.row)">发送</el-button>
<el-button size="mini" @click="handleFeedBack(scope.row)">客服反馈</el-button>
<el-button size="mini" type="danger" @click="handleDel(scope.$index,scope.row)">删除</el-button>
<el-button size="mini" type="warning" @click="handleSwitch(scope.row)">更改状态</el-button>
<el-button size="mini" type="primary" v-if="scope.row.awbh ===null" @click="handleAddAwbh(scope.row)">新增分单</el-button>
</template>
</el-table-column>
</tree-table>
... ... @@ -114,52 +101,27 @@
<el-row>
<el-col :span="10">
<el-form-item label="航班号" prop="flightno">
<div v-if="dialogStatus === 'update'">
<el-input disabled="" v-model="flightno"/>
</div>
<div v-else>
<el-input v-model="flightno"/>
</div>
<el-input :disabled="dialogStatus !== 'create'" v-model="flightno"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="航班日期" prop="flightdate">
<div v-if="dialogStatus === 'update'">
<el-date-picker disabled="" :picker-options="pickerOptions"
v-model="temp.flightdate" align="right"
value-format="yyyy-MM-dd"
type="date" placeholder="请输入航班日期" style="width: 87%"/>
</div>
<div v-else>
<el-date-picker :picker-options="pickerOptions" v-model="temp.flightdate"
align="right" value-format="yyyy-MM-dd"
type="date" placeholder="请输入航班日期" style="width: 87%"/>
</div>
<el-date-picker :disabled="dialogStatus !== 'create'" :picker-options="pickerOptions"
value-format="yyyy-MM-dd"
v-model="temp.flightdate" align="right"
type="date" placeholder="请输入航班日期" style="width: 87%"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<div v-if="dialogStatus === 'update'">
<el-form-item label="起始站" prop="originstation">
<el-input disabled="" v-model="originstation"/>
</el-form-item>
</div>
<div v-else>
<el-form-item label="起始站" prop="originstation">
<el-input v-model="originstation"/>
</el-form-item>
</div>
<el-form-item label="起始站" prop="originstation">
<el-input :disabled="dialogStatus !== 'create'" v-model="originstation"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="目的站" prop="destinationstation">
<div v-if="dialogStatus === 'update'">
<el-input disabled="" v-model="destinationstation"/>
</div>
<div v-else prop="destinationstation">
<el-input v-model="destinationstation"/>
</div>
<el-input :disabled="dialogStatus !== 'create'" v-model="destinationstation"/>
</el-form-item>
</el-col>
</el-row>
... ... @@ -168,8 +130,10 @@
<el-form-item label="是否分批" prop="splitcode">
<el-select v-model="temp.splitcode" class="filter-item" placeholder="请选择是否分批"
style="width: 93%">
<el-option v-for="item in splitcodes" :key="item" :label="item"
:value="item"></el-option>
<el-option v-for="item in splitcodes" :key="item.value" :label="item.value"
:value="item.value">
<span>{{item.label}}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
... ... @@ -189,20 +153,33 @@
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="目的地" prop="awbinfo.eairportid">
<el-input v-model="eairportid"/>
<el-form-item label="目的地" prop="destinationstation">
<el-input v-model="destinationstation"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row>
<el-col :span="10">
<el-form-item label="承运人" prop="carrier">
<el-input v-model="carrier"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="到达航站" prop="awbinfo.eairportid">
<el-input v-model="eairportid"/>
</el-form-item>
</el-col>
</el-row>
<el-col :span="10">
<el-form-item label="承运人1" prop="awbinfo.by1">
<el-form-item label="承运人1" >
<el-input v-model="by1"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="到达航站1" prop="awbinfo.dest1">
<el-form-item label="到达航站1">
<el-input v-model="dest1"></el-input>
</el-form-item>
</el-col>
... ... @@ -221,19 +198,7 @@
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<el-form-item label="承运人3">
<el-input v-model="by3"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="到达航站3">
<el-input v-model="dest3"/>
</el-form-item>
</el-col>
</el-row>
</div>
<div class="tags">
<el-tag type="info" effect="plain">
... ... @@ -243,26 +208,14 @@
<div class="row-bg">
<el-row>
<el-col :span="10">
<div v-if="dialogStatus === 'update'">
<el-form-item label="主单号">
<el-input disabled="" v-model="temp.awba"/>
</el-form-item>
</div>
<div v-else>
<el-form-item label="主单号" prop="awba">
<el-input v-model="temp.awba"/>
</el-form-item>
</div>
<el-form-item label="主单号" prop="awba">
<el-input :disabled="dialogStatus !== 'create'" v-model="awba"/>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="分单号" >
<div v-if="dialogStatus === 'update' ">
<el-input disabled v-model="awbh"/>
</div>
<div v-else>
<el-input v-model="awbh"/>
</div>
<el-form-item label="分单号">
<el-input :disabled="dialogStatus !== 'addAwh'" v-model="awbh"/>
</el-form-item>
</el-col>
</el-row>
... ... @@ -290,8 +243,8 @@
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="海关状态" prop="goodsType">
<el-select v-model="temp.goodsType" class="filter-item" placeholder="请录入货物类型"
<el-form-item label="海关状态" prop="ex5">
<el-select v-model="temp.ex5" class="filter-item" placeholder="请录入货物类型"
style="width: 93%">
<el-option v-for="item in customTypes" :key="item" :label="item" :value="item"/>
</el-select>
... ... @@ -490,7 +443,7 @@
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">{{ $t('table.cancel') }}</el-button>
<el-button type="primary" @click="dialogStatus==='create'?createData():updateData()">{{
<el-button type="primary" @click="dialogStatus==='update'?createData():updateData()">{{
$t('table.confirm') }}
</el-button>
</div>
... ... @@ -512,11 +465,7 @@
import {addMt1201, updateMT1201, updateStatus, deleteByIsDelete, getMt1201ListForParam} from '@/api/orgManifest'
import {Message} from "element-ui";
treeTable.expandAll = {
type: Boolean,
default: false
}
import {validAwb, validFlightNo} from '@/utils/validate'
export default {
name: 'OrgManifest',
... ... @@ -539,12 +488,24 @@
}
},
data() {
const validatorAwb = (rule, value, callback) =>{
if(!validAwb(value)){
callback("请正确书写主单号")
}
callback()
}
const validatorFlightno = (rule, value, callback) =>{
if(!validFlightNo(value)){
callback("请正确书写航班号")
}
callback()
}
return {
func: treeToArray,
expandAll: true,
total: 0,
loading: false,
listLoading: true,
listLoading: false,
downloadLoading: false,
multipleSelection: [],
dialogFormVisible: false,
... ... @@ -556,7 +517,8 @@
goodsPackage: goodsPackage,
textMap: {
update: '编辑',
create: '添加'
create: '添加',
addAwbh:'新增分单'
},
listQuery: {
pageSize: 1,
... ... @@ -566,11 +528,13 @@
flightdate: undefined,
customcode: undefined
},
//实体对象声明最好使用undefined,后台不会更改数据库默认值
temp: {
awba: undefined,
awbh: undefined,
customcode: undefined,
flightno: undefined,
carrier: undefined,
flightdate: undefined,
originstation: undefined,
destinationstation: undefined,
... ... @@ -581,6 +545,7 @@
uldType: undefined,
uldNo: undefined,
status: undefined,
ex5:undefined,
awbinfo: {
specopeid: undefined,
shprname: undefined,
... ... @@ -588,7 +553,7 @@
shprtel: undefined,
shpraddress: undefined,
shprcountyr: undefined,
shpcomidpre:undefined,
shpcomidpre: undefined,
shpcomidpno: undefined,
cnsnname: undefined,
cnsrmobiletype: undefined,
... ... @@ -616,7 +581,7 @@
manifestCustoms: ['4604', '4620', '4613'],
customTypes: ['普通货物', '国际转运货物', '国内转关', '空箱', '快件'],
payTypes: [{label: '预付', value: '0'}, {label: '到付', value: '1'}],
splitcodes: ['是', '否'],
splitcodes:[{label: '是', value: 'T'}, {label: '否', value: 'P'}],
orgData: [],
countryList: [],
countryResultList: [],
... ... @@ -666,14 +631,14 @@
destinationstation: [{required: true, message: '运单目的地必须输入', trigger: 'change'}],
originstation: [{required: true, message: '运单起始站必须数据', trigger: 'change'}],
flightdate: [{required: true, message: '航班日期必须输入', trigger: 'change'}],
flightno: [{required: true, message: '航班号必须输入', trigger: 'change'}],
flightno: [{required: true, trigger: 'blur', validator: validatorFlightno}],
carrier: [{required: true, trigger: 'blur', message: '承运人不能为空'}],
customcode: [{required: true, message: '关区代码必须选择', trigger: 'change'}],
awba: [{required: true, message: '运单号必须输入', trigger: 'change'}],
awba: [{required: true, trigger:'blur', validator: validatorAwb}],
'awbinfo.collected': [{required: true, message: '付款方式必选', trigger: 'change'}],
goodsname: [{required: true, message: '货物描述不能为空', trigger: 'change'}],
ex5: [{required: true, message: '货物描述不能为空', trigger: 'change'}],
'awbinfo.sairportid': [{required: true, message: '起始航站不能为空', trigger: 'change'}],
'awbinfo.by1': [{required: true, message: '承运人不能为空', trigger: 'change'}],
'awbinfo.dest1': [{required: true, message: '到达航站不能为空', trigger: 'change'}],
'awbinfo.shprname': [{required: true, message: '发货人不能为空', trigger: 'change'}],
'awbinfo.shprtel': [{required: true, message: '发货电话不能为空', trigger: 'change'}],
'awbinfo.shpraddress': [{required: true, message: '发货地址不能为空', trigger: 'change'}],
... ... @@ -702,211 +667,231 @@
}, 1000)
},
computed:{
computed: {
awba: {
get: function () {
return this.temp.awba
},
set: function (val) {
if(val.length==3){
val = val+"-"
}
this.temp.awba = val.trim()
}
},
awbh: {
get: function (){
get: function () {
return this.temp.awbh
},
set: function (val){
this.temp.awbh = val.toUpperCase()
set: function (val) {
this.temp.awbh = val.toUpperCase().trim()
}
},
flightno: {
get: function (){
get: function () {
return this.temp.flightno
},
set: function (val){
this.temp.flightno = val.toUpperCase()
set: function (val) {
this.temp.flightno = val.toUpperCase().trim()
}
},
carrier:{
get: function () {
return this.temp.carrier
},
set: function (val) {
this.temp.carrier = val.toUpperCase().trim()
}
},
originstation: {
get: function (){
get: function () {
return this.temp.originstation
},
set: function (val){
this.temp.originstation = val.toUpperCase()
set: function (val) {
this.temp.originstation = val.toUpperCase().trim()
}
},
destinationstation: {
get: function (){
get: function () {
return this.temp.destinationstation
},
set: function (val){
this.temp.destinationstation = val.toUpperCase()
set: function (val) {
this.temp.destinationstation = val.toUpperCase().trim()
}
},
goodsname: {
get: function (){
get: function () {
return this.temp.goodsname
},
set: function (val){
this.temp.goodsname = val.toUpperCase()
set: function (val) {
this.temp.goodsname = val.toUpperCase().trim()
}
},
specopeid: {
get: function (){
get: function () {
return this.temp.awbinfo.specopeid
},
set: function (val){
this.temp.awbinfo.specopeid = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.specopeid = val.toUpperCase().trim()
}
},
shprname: {
get: function (){
get: function () {
return this.temp.awbinfo.shprname
},
set: function (val){
this.temp.awbinfo.shprname = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.shprname = val.toUpperCase().trim()
}
},
shpraddress: {
get: function (){
get: function () {
return this.temp.awbinfo.shpraddress
},
set: function (val){
this.temp.awbinfo.shpraddress = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.shpraddress = val.toUpperCase().trim()
}
},
shprcountyr: {
get: function (){
get: function () {
return this.temp.awbinfo.shprcountyr
},
set: function (val){
this.temp.awbinfo.shprcountyr = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.shprcountyr = val.toUpperCase().trim()
}
},
shpcomidpre: {
get: function (){
get: function () {
return this.temp.awbinfo.shpcomidpre
},
set: function (val){
this.temp.awbinfo.shpcomidpre = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.shpcomidpre = val.toUpperCase().trim()
}
},
shpcomidpno: {
get: function (){
get: function () {
return this.temp.awbinfo.shpcomidpno
},
set: function (val){
this.temp.awbinfo.shpcomidpno = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.shpcomidpno = val.toUpperCase().trim()
}
},
cnsnname: {
get: function (){
get: function () {
return this.temp.awbinfo.cnsnname
},
set: function (val){
this.temp.awbinfo.cnsnname = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnsnname = val.toUpperCase().trim()
}
},
cnsnaddress: {
get: function (){
cnsnaddress: {
get: function () {
return this.temp.awbinfo.cnsnaddress
},
set: function (val){
this.temp.awbinfo.cnsnaddress = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnsnaddress = val.toUpperCase().trim()
}
},
cnscountyr: {
get: function (){
cnscountyr: {
get: function () {
return this.temp.awbinfo.cnscountyr
},
set: function (val){
this.temp.awbinfo.cnscountyr = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnscountyr = val.toUpperCase().trim()
}
},
cnscomidno: {
get: function (){
cnscomidno: {
get: function () {
return this.temp.awbinfo.cnscomidno
},
set: function (val){
this.temp.awbinfo.cnscomidno = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnscomidno = val.toUpperCase().trim()
}
},
cnsrctcname: {
get: function (){
cnsrctcname: {
get: function () {
return this.temp.awbinfo.cnsrctcname
},
set: function (val){
this.temp.awbinfo.cnsrctcname = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnsrctcname = val.toUpperCase().trim()
}
},
sairportid: {
get: function (){
sairportid: {
get: function () {
return this.temp.awbinfo.sairportid
},
set: function (val){
this.temp.awbinfo.sairportid = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.sairportid = val.toUpperCase().trim()
}
},
by1: {
get: function (){
by1: {
get: function () {
return this.temp.awbinfo.by1
},
set: function (val){
this.temp.awbinfo.by1 = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.by1 = val.toUpperCase().trim()
}
},
dest1: {
get: function (){
dest1: {
get: function () {
return this.temp.awbinfo.dest1
},
set: function (val){
this.temp.awbinfo.dest1 = val.toUpperCase()
set: function (val) {
this.temp.awbinfo.dest1 = val.toUpperCase().trim()
}
},
by2: {
get: function (){
by2: {
get: function () {
return this.temp.awbinfo.by2
},
set: function (val){
this.temp.awbinfo.by2= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.by2 = val.toUpperCase().trim()
}
},
dest2: {
get: function (){
dest2: {
get: function () {
return this.temp.awbinfo.dest2
},
set: function (val){
this.temp.awbinfo.dest2= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.dest2 = val.toUpperCase().trim()
}
},
by3: {
get: function (){
by3: {
get: function () {
return this.temp.awbinfo.by3
},
set: function (val){
this.temp.awbinfo.by3= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.by3 = val.toUpperCase().trim()
}
},
dest3: {
get: function (){
dest3: {
get: function () {
return this.temp.awbinfo.dest3
},
set: function (val){
this.temp.awbinfo.dest3= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.dest3 = val.toUpperCase().trim()
}
},
eairportid: {
get: function (){
eairportid: {
get: function () {
return this.temp.awbinfo.eairportid
},
set: function (val){
this.temp.awbinfo.eairportid= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.eairportid = val.toUpperCase().trim()
}
},
cnscomidpre: {
get: function (){
cnscomidpre: {
get: function () {
return this.temp.awbinfo.cnscomidpre
},
set: function (val){
this.temp.awbinfo.cnscomidpre= val.toUpperCase()
set: function (val) {
this.temp.awbinfo.cnscomidpre = val.toUpperCase().trim()
}
}
},
watch: {
'temp.awbinfo.cnscountyr': function (newValue, oldValue) {
if (newValue != null && newValue!='') {
if (newValue != null && newValue != '') {
this.selectCountry.countryCode = newValue
getByCountryCode(this.selectCountry).then(res => {
this.temp.awbinfo.cnscomidpre = res.data.dataList[0].enterpriseCode
... ... @@ -914,7 +899,7 @@
}
},
'temp.awbinfo.shprcountyr': function (newValue, oldValue) {
if (newValue != null && newValue!='') {
if (newValue != null && newValue != '') {
this.selectCountry.countryCode = newValue
getByCountryCode(this.selectCountry).then(res => {
this.temp.awbinfo.shpcomidpre = res.data.dataList[0].enterpriseCode
... ... @@ -923,6 +908,8 @@
}
},
methods: {
// >>>>>>>>>>>>>>>>页面加载运行<<<<<<<<<<<<<<<<<<
//获取MT1201列表
getList() {
getMt1201ListForParam(this.listQuery).then(res => {
this.total = res.data.count
... ... @@ -932,14 +919,20 @@
}, 1.5 * 1000)
})
},
//获取城市列表
getCountryList() {
getCountry().then(res => {
this.countryList = res.data.dataList
})
},
// >>>>>>>>>>>>>>>>页面加载运行<<<<<<<<<<<<<<<<<<
message(row) {
this.$message.info(row.event)
},
sortChange(data) {
const {prop, order} = data
if (prop === 'id') {
... ... @@ -952,14 +945,31 @@
} else {
this.listQuery.sort = '-id'
}
this.handleFilter()
this.handleSearch()
},
handleDownload() {
},
handleFilter() {
// >>>>>>>>>>>>>>>>批量删除<<<<<<<<<<<<<<<<<<
handleSelectionChange(val) {
this.multipleSelection = val
},
handleDelList() {
const val = this.multipleSelection
if (val) {
val.forEach((val, index) => {
})
}
},
// >>>>>>>>>>>>>>>>搜索<<<<<<<<<<<<<<<<<<
handleSearch() {
this.getList()
},
// >>>>>>>>>>>>>>>>更新数据<<<<<<<<<<<<<<<<<<
handleUpdate(row) {
this.temp = Object.assign({}, row) // copy obj
this.dialogStatus = 'update'
... ... @@ -968,17 +978,31 @@
this.$refs.formData.clearValidate()
})
},
handleModifyStatus(row, status) {
updateData() {
this.$refs.formData.validate(valid => {
if (valid) {
updateMT1201(this.temp).then(res => {
if (res.data.count > 0) {
this.dialogFormVisible = false
this.getList()
Message.success(res.data.respMessage)
} else {
Message.success("数据异常清稍后重试")
}
})
}
})
},
// >>>>>>>>>>>>>>>>客服反馈<<<<<<<<<<<<<<<<<<
handleFeedBack(row) {
this.$message({
message: '操作成功',
message: '操作成功,请前往微信查看',
type: 'success'
})
row.status = status
},
handleSelectionChange(val) {
this.multipleSelection = val
},
// >>>>>>>>>>>>>>>>重置实体<<<<<<<<<<<<<<<<<<
resetTemp() {
this.temp = {
awba: undefined,
... ... @@ -1001,7 +1025,7 @@
shprtel: undefined,
shpraddress: undefined,
shprcountyr: undefined,
shpcomidpre:undefined,
shpcomidpre: undefined,
shpcomidpno: undefined,
cnsnname: undefined,
cnsrmobiletype: undefined,
... ... @@ -1027,6 +1051,8 @@
}
}
},
// >>>>>>>>>>>>>>>>新增数据<<<<<<<<<<<<<<<<<<
handleCreate() {
this.resetTemp()
this.dialogStatus = 'create'
... ... @@ -1035,13 +1061,31 @@
this.$refs.formData.clearValidate()
})
},
createData() {
this.$refs.formData.validate(valid => {
if (valid) {
addMt1201(this.temp).then(res => {
if (res.data.count > 0) {
this.dialogFormVisible = false
this.getList()
Message.success(res.data.respMessage)
} else {
Message.success("数据异常清稍后重试")
}
})
}
})
},
// >>>>>>>>>>>>>>>>下拉远程搜索<<<<<<<<<<<<<<<<<<
remoteMethod(query) {
if (query !== '') {
this.loading = true
setTimeout(() => {
this.loading = false
this.countryOption = this.countryResultList.filter(item => {
return item.value.toUpperCase()
return item.value.toUpperCase().trim()
.indexOf(query.toUpperCase()) > -1
})
}, 200)
... ... @@ -1061,68 +1105,98 @@
},
// >>>>>>>>>>>>>>>>更新发送状态<<<<<<<<<<<<<<<<<<
handleSwitch(row) {
console.log(row)
this.$confirm("是否发送更改状态", "确认消息", {
distinguishCancelAndClose: true,
confirmButtonText: '确认更改',
cancelButtonText: '取消更改'
}).then(() => {
this.$message({
type: 'success',
message: '状态更改成功'
})
}).catch(action => {
this.$message({
type: 'info',
message: action === 'cancel'
? '取消状态更改'
: '停留在当前页面'
})
})
},
createData() {
this.$refs.formData.validate(valid =>{
if(valid){
addMt1201(this.temp).then(res => {
if(res.data.count>0){
this.dialogFormVisible = false
this.getList()
Message.success(res.data.respMessage)
}else {
Message.success("数据异常清稍后重试")
}
})
}
// >>>>>>>>>>>>>>>>删除<<<<<<<<<<<<<<<<<<
handleDel(index, row) {
this.$confirm("是否删除", "确认消息", {
distinguishCancelAndClose: true,
confirmButtonText: '删除',
cancelButtonText: '取消'
}).then(() => {
deleteByIsDelete(row).then(res => {
if (res.data.count > 0) {
this.$message({
type: 'success',
message: '删除成功'
})
this.orgData.splice(index, 1)
} else {
this.$message({
type: 'danger',
message: '删除异常,请稍后重试'
})
}
})
}).catch(action => {
this.$message({
type: 'info',
message: action === 'cancel'
? '取消删除'
: '停留在当前页面'
})
})
},
updateData() {
this.$refs.formData.validate(valid => {
if (valid) {
updateMT1201(this.temp).then(res => {
if(res.data.count>0){
this.dialogFormVisible = false
this.getList()
Message.success(res.data.respMessage)
}else {
Message.success("数据异常清稍后重试")
}
})
}
// >>>>>>>>>>>>>>>>发送<<<<<<<<<<<<<<<<<<
handleSend(row) {
console.log(row)
},
// >>>>>>>>>>>>>>>>新增分单<<<<<<<<<<<<<<<<<<
handleAddAwbh(row){
const template = Object.assign({}, row) // copy obj
console.log(template)
this.temp.awba = template.awba
this.temp.flightdate = template.flightdate
this.temp.flightno = template.flightno
this.temp.destinationstation = template.destinationstation
this.temp.customcode = template.customcode
this.temp.carrier = template.carrier
this.temp.awbinfo.shprcountyr = template.awbinfo.shprcountyr
this.temp.originstation = template.originstation
this.temp.goodsname = template.goodsname
this.temp.awbinfo.collected = template.awbinfo.collected
this.temp.awbinfo.sairportid = template.awbinfo.sairportid
this.temp.awbinfo.eairportid = template.awbinfo.eairportid
this.temp.awbinfo.ex5 = template.awbinfo.ex5
this.dialogStatus = 'addAwh'
this.dialogFormVisible = true
this.$nextTick(() => {
this.$refs.formData.clearValidate()
})
}
}
}
</script>
<style scoped>
.bg-purple {
background: #d3dce6;
}
.el-row {
margin-bottom: 0px;
}
.el-dialog .el-dialog--samll {
width: 60%;
}
.row-bg {
padding: 10px 0;
background-color: #f9fafc;
}
.el-progress.is-warning .el-progress-bar__inner {
background-color: #E6A23C
}
.remark textarea {
width: 575px;
}
... ... @@ -1136,5 +1210,9 @@
margin-top: 10px;
margin-bottom: 10px;
}
.disabledClass {
}
</style>
... ...