|
@@ -208,8 +208,7 @@
|
|
|
<template slot-scope="scope">
|
|
|
<el-tooltip className="item" v-if="scope.$index === tableData.length-1" effect="dark" content="增加途径地址"
|
|
|
placement="top">
|
|
|
- <el-button type="primary" icon="el-icon-plus" size="mini" circle @click="addAddress"
|
|
|
- style="margin-right: 1.25rem;"></el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-plus" size="mini" circle @click="addAddress"></el-button>
|
|
|
</el-tooltip>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -336,6 +335,7 @@
|
|
|
<basic-container>
|
|
|
<el-table
|
|
|
ref="singleTable"
|
|
|
+ border="1"
|
|
|
:data="tableData"
|
|
|
size="mini"
|
|
|
:header-cell-style="{color:'#000',background:'#fafafa'}"
|
|
@@ -344,14 +344,15 @@
|
|
|
align="center"
|
|
|
fixed
|
|
|
v-if="goodsForm.status === 0"
|
|
|
- width="40">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-tooltip className="item" v-if="scope.$index === tableData.length-1" effect="dark" content="增加途径地址"
|
|
|
+ width="50">
|
|
|
+ <template slot-scope="scope" slot="header">
|
|
|
+ <el-tooltip className="item" effect="dark" content="增加途径地址"
|
|
|
placement="top">
|
|
|
- <el-button type="primary" icon="el-icon-plus" size="mini" circle @click="addAddress"
|
|
|
- style="margin-right: 1.25rem;"></el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-plus" size="mini" circle @click="addAddress"></el-button>
|
|
|
</el-tooltip>
|
|
|
- <el-tooltip v-else class="item" effect="dark" content="删除" placement="right">
|
|
|
+ </template>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-tooltip class="item" effect="dark" content="删除" placement="right">
|
|
|
<el-button type="danger" icon="el-icon-delete" size="mini" circle
|
|
|
@click="deleteAddress(scope)"></el-button>
|
|
|
</el-tooltip>
|
|
@@ -381,7 +382,7 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- property="freightPlaceId"
|
|
|
+ property="corpId"
|
|
|
label="货运地点"
|
|
|
align="center"
|
|
|
:render-header="customTitle"
|
|
@@ -390,7 +391,7 @@
|
|
|
<crop-select
|
|
|
:corpType="'GC'"
|
|
|
:disabled="goodsForm.status !== 0"
|
|
|
- v-model="scope.row.freightPlaceId"
|
|
|
+ v-model="scope.row.corpId"
|
|
|
@clear="clear(scope.row)"
|
|
|
@getCorpData="(row)=>{withAddress(row,scope)}"/>
|
|
|
</template>
|
|
@@ -441,8 +442,14 @@
|
|
|
width="180"
|
|
|
label="包装类型">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.packingType" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-select v-model="scope.row.packingType" :disabled="goodsForm.status !== 0" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in packageType"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.dictValue"
|
|
|
+ :value="item.dictKey">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -468,6 +475,7 @@
|
|
|
<el-table-column
|
|
|
property="remarks"
|
|
|
align="center"
|
|
|
+ width="200"
|
|
|
label="备注">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input v-model="scope.row.remarks" :disabled="goodsForm.status !== 0" size="small"
|
|
@@ -478,28 +486,46 @@
|
|
|
align="center"
|
|
|
width="40">
|
|
|
<template slot-scope="scope">
|
|
|
- <div v-if="scope.$index !== tableData.length-1" style="margin: -5px auto">
|
|
|
- <el-tooltip class="item" effect="dark" content="向上移动" placement="right" v-if="scope.$index > 1">
|
|
|
+ <div style="margin: -5px auto">
|
|
|
+ <el-tooltip class="item" effect="dark" content="向上移动" placement="right" v-if="scope.$index > 0">
|
|
|
<div class="single" style="margin-bottom: -5px">
|
|
|
- <el-button type="text" style="margin-right: -0.5rem" icon="el-icon-arrow-up" size="mini"
|
|
|
- @click="moveUp(scope.row,scope.$index)"></el-button>
|
|
|
+ <el-button
|
|
|
+ type="text"
|
|
|
+ style="margin-right: -0.5rem"
|
|
|
+ icon="el-icon-arrow-up"
|
|
|
+ size="mini"
|
|
|
+ @click="moveUp(scope.row,scope.$index)"></el-button>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
|
<el-tooltip class="item" effect="dark" content="向下移动" placement="right"
|
|
|
- v-if="scope.$index > 0 && scope.$index < tableData.length-2">
|
|
|
+ v-if="scope.$index < tableDataTwo.length-1">
|
|
|
<div class="single" style="margin-top: -5px">
|
|
|
- <el-button type="text" style="margin-right: -0.5rem" icon="el-icon-arrow-down" size="mini"
|
|
|
- @click="moveDown(scope.row,scope.$index)"></el-button>
|
|
|
+ <el-button
|
|
|
+ type="text"
|
|
|
+ style="margin-right: -0.5rem"
|
|
|
+ icon="el-icon-arrow-down"
|
|
|
+ size="mini"
|
|
|
+ @click="moveDown(scope.row,scope.$index)"></el-button>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ fixed="right"
|
|
|
+ align="center"
|
|
|
+ label="操作"
|
|
|
+ width="80">
|
|
|
+ <template slot-scope="{row, index}">
|
|
|
+ <el-button type="text" size="small" icon="el-icon-s-order" @click="annexOpen(row, index,true)">附 件</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
</basic-container>
|
|
|
<containerTitle title="卸货地址"></containerTitle>
|
|
|
<basic-container>
|
|
|
<el-table
|
|
|
+ border="1"
|
|
|
ref="singleTable"
|
|
|
:data="tableDataTwo"
|
|
|
size="mini"
|
|
@@ -509,16 +535,30 @@
|
|
|
align="center"
|
|
|
fixed
|
|
|
v-if="goodsForm.status === 0"
|
|
|
- width="40">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-tooltip className="item" v-if="scope.$index === tableDataTwo.length-1" effect="dark" content="增加途径地址"
|
|
|
- placement="top">
|
|
|
- <el-button type="primary" icon="el-icon-plus" size="mini" circle @click="addAddressTwo"
|
|
|
- style="margin-right: 1.25rem;"></el-button>
|
|
|
+ width="50">
|
|
|
+ <template slot-scope="scope" slot="header">
|
|
|
+ <el-tooltip
|
|
|
+ className="item"
|
|
|
+ effect="dark"
|
|
|
+ content="增加途径地址"
|
|
|
+ placement="top">
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ icon="el-icon-plus"
|
|
|
+ size="mini"
|
|
|
+ circle
|
|
|
+ @click="addAddressTwo">
|
|
|
+ </el-button>
|
|
|
</el-tooltip>
|
|
|
- <el-tooltip v-else class="item" effect="dark" content="删除" placement="right">
|
|
|
- <el-button type="danger" icon="el-icon-delete" size="mini" circle
|
|
|
- @click="deleteAddress(scope)"></el-button>
|
|
|
+ </template>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-tooltip class="item" effect="dark" content="删除" placement="right">
|
|
|
+ <el-button
|
|
|
+ type="danger"
|
|
|
+ icon="el-icon-delete"
|
|
|
+ size="mini"
|
|
|
+ circle
|
|
|
+ @click="deleteAddressTwo(scope)"></el-button>
|
|
|
</el-tooltip>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -546,7 +586,7 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- property="freightPlaceId"
|
|
|
+ property="corpId"
|
|
|
label="货运地点"
|
|
|
align="center"
|
|
|
:render-header="customTitle"
|
|
@@ -555,7 +595,7 @@
|
|
|
<crop-select
|
|
|
:corpType="'GC'"
|
|
|
:disabled="goodsForm.status !== 0"
|
|
|
- v-model="scope.row.freightPlaceId"
|
|
|
+ v-model="scope.row.corpId"
|
|
|
@clear="clear(scope.row)"
|
|
|
@getCorpData="(row)=>{withAddressTwo(row,scope)}"/>
|
|
|
</template>
|
|
@@ -566,8 +606,11 @@
|
|
|
width="150"
|
|
|
label="联系人">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.contacts" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.contacts"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -576,8 +619,11 @@
|
|
|
width="180"
|
|
|
label="电话">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.tel" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.tel"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -586,8 +632,11 @@
|
|
|
width="280"
|
|
|
label="详细地址">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.address" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.address"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -596,8 +645,11 @@
|
|
|
width="180"
|
|
|
label="货物体积">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.volume" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.volume"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -606,8 +658,14 @@
|
|
|
width="180"
|
|
|
label="包装类型">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.packingType" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-select v-model="scope.row.packingType" :disabled="goodsForm.status !== 0" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in packageType"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.dictValue"
|
|
|
+ :value="item.dictKey">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -616,8 +674,11 @@
|
|
|
width="180"
|
|
|
label="重量">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.weight" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.weight"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -626,40 +687,64 @@
|
|
|
width="180"
|
|
|
label="件数">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.quantity" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.quantity"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
property="remarks"
|
|
|
align="center"
|
|
|
+ width="200"
|
|
|
label="备注">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.remarks" :disabled="goodsForm.status !== 0" size="small"
|
|
|
- placeholder="请输入内容"></el-input>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.remarks"
|
|
|
+ :disabled="goodsForm.status !== 0"
|
|
|
+ size="small"
|
|
|
+ placeholder="请输入内容"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
width="40">
|
|
|
<template slot-scope="scope">
|
|
|
- <div v-if="scope.$index !== tableDataTwo.length-1" style="margin: -5px auto">
|
|
|
- <el-tooltip class="item" effect="dark" content="向上移动" placement="right" v-if="scope.$index > 1">
|
|
|
+ <div style="margin: -5px auto">
|
|
|
+ <el-tooltip class="item" effect="dark" content="向上移动" placement="right" v-if="scope.$index > 0">
|
|
|
<div class="single" style="margin-bottom: -5px">
|
|
|
- <el-button type="text" style="margin-right: -0.5rem" icon="el-icon-arrow-up" size="mini"
|
|
|
- @click="moveUpTwo(scope.row,scope.$index)"></el-button>
|
|
|
+ <el-button
|
|
|
+ type="text"
|
|
|
+ style="margin-right: -0.5rem"
|
|
|
+ icon="el-icon-arrow-up"
|
|
|
+ size="mini"
|
|
|
+ @click="moveUpTwo(scope.row,scope.$index)"></el-button>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
|
<el-tooltip class="item" effect="dark" content="向下移动" placement="right"
|
|
|
- v-if="scope.$index > 0 && scope.$index < tableDataTwo.length-2">
|
|
|
+ v-if="scope.$index < tableDataTwo.length-1">
|
|
|
<div class="single" style="margin-top: -5px">
|
|
|
- <el-button type="text" style="margin-right: -0.5rem" icon="el-icon-arrow-down" size="mini"
|
|
|
- @click="moveDownTwo(scope.row,scope.$index)"></el-button>
|
|
|
+ <el-button
|
|
|
+ type="text"
|
|
|
+ style="margin-right: -0.5rem"
|
|
|
+ icon="el-icon-arrow-down"
|
|
|
+ size="mini"
|
|
|
+ @click="moveDownTwo(scope.row,scope.$index)"></el-button>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ fixed="right"
|
|
|
+ align="center"
|
|
|
+ label="操作"
|
|
|
+ width="80">
|
|
|
+ <template slot-scope="{row, index}">
|
|
|
+ <el-button type="text" size="small" icon="el-icon-s-order" @click="annexOpen(row, index,true)">附 件</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
</basic-container>
|
|
|
<containerTitle title="车辆信息"></containerTitle>
|
|
@@ -735,6 +820,7 @@
|
|
|
v-if="activeIndex === '1'"
|
|
|
:data="collectionList"
|
|
|
:option="collectionOption"
|
|
|
+ :key="key"
|
|
|
ref="collection"
|
|
|
@resetColumn="resetColumnCollection"
|
|
|
@saveColumn="saveColumnCollection"
|
|
@@ -798,6 +884,7 @@
|
|
|
v-if="activeIndex === '2'"
|
|
|
:data="paymentList"
|
|
|
:option="paymentOption"
|
|
|
+ :key="key"
|
|
|
ref="payment"
|
|
|
@resetColumn="resetColumnPayment"
|
|
|
@saveColumn="saveColumnPayment"
|
|
@@ -841,6 +928,13 @@
|
|
|
@click="$refs.payment.rowDel(row,index)"
|
|
|
>删除
|
|
|
</el-button>
|
|
|
+ <el-button
|
|
|
+ size="small"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-s-order"
|
|
|
+ @click="annexOpen(row, index)"
|
|
|
+ >附 件
|
|
|
+ </el-button>
|
|
|
</template>
|
|
|
<template slot="menuLeft">
|
|
|
<el-button
|
|
@@ -872,11 +966,11 @@
|
|
|
:basic="true"
|
|
|
deleteUrl="/api/blade-client/common-file/remove"
|
|
|
:data="orderList"
|
|
|
- disabled
|
|
|
:enumerationValue="76"
|
|
|
></c-upload>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button @click="enclosure = false" size="small">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="saveAnnex" size="small">保 存</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<track-playback :dialogVisible="dialogVisible" :lineArr="lineArr" ref="playback"></track-playback>
|
|
@@ -890,7 +984,7 @@ import {
|
|
|
detailDelegationList,
|
|
|
removeCollection,
|
|
|
saveSaveList,
|
|
|
- addressList, cancelSubmission, getCorp, getSalesman, getFee, changeSubmission, validChange, tRemove
|
|
|
+ addressList, cancelSubmission, getCorp, getSalesman, getFee, changeSubmission, validChange, tRemove, saveFile
|
|
|
} from "@/api/landTransportation/bulkCargo";
|
|
|
import {getDeptTree} from "@/api/system/dept";
|
|
|
import website from "@/config/website";
|
|
@@ -898,6 +992,7 @@ import {gaude, location} from "@/api/gaude";
|
|
|
//地图回放
|
|
|
import trackPlayback from "@/components/trackPlayback"
|
|
|
import {fleetList, telephone} from "@/api/landTransportation";
|
|
|
+import {getDictionary} from "@/api/system/dictbiz";
|
|
|
|
|
|
export default {
|
|
|
comments: {
|
|
@@ -928,6 +1023,7 @@ export default {
|
|
|
orderFilesList: [],
|
|
|
salesmanList: [],
|
|
|
vehicleList: [],
|
|
|
+ packageType: [],
|
|
|
breakConfiguration: {
|
|
|
multipleChoices: false,
|
|
|
multiple: false,
|
|
@@ -1519,10 +1615,10 @@ export default {
|
|
|
span: 8,
|
|
|
column: [{
|
|
|
label: '车队',
|
|
|
- prop: 'fleet',
|
|
|
+ prop: 'fleetId',
|
|
|
type: 'select',
|
|
|
- cascader: ['licenseNumber'],
|
|
|
- dicUrl: "/api/blade-client/corpsdesc/list?size=1000¤t=1&&corpType=CD",
|
|
|
+ cascader: ['plateNo'],
|
|
|
+ dicUrl: "/api/blade-client/corpsdesc/list?size=500¤t=1&&corpType=CD",
|
|
|
props: {
|
|
|
label: "cname",
|
|
|
value: "id",
|
|
@@ -1530,11 +1626,8 @@ export default {
|
|
|
}
|
|
|
}, {
|
|
|
label: '车号',
|
|
|
- prop: 'licenseNumber',
|
|
|
- allowCreate: true,
|
|
|
- overHidden: true,
|
|
|
- filterable: true,
|
|
|
- cascader: ['driver'],
|
|
|
+ prop: 'plateNo',
|
|
|
+ cascader: ['driverId'],
|
|
|
type: "select",
|
|
|
dicUrl: "/api/blade-client/land-vehicle/vehicle-list?fleetId={{key}}",
|
|
|
props: {
|
|
@@ -1543,7 +1636,7 @@ export default {
|
|
|
},
|
|
|
}, {
|
|
|
label: '司机',
|
|
|
- prop: 'driver',
|
|
|
+ prop: 'driverId',
|
|
|
type: "select",
|
|
|
dicUrl: "/api/blade-client/land-driver/driver-list?plateNo={{key}}",
|
|
|
props: {
|
|
@@ -1740,23 +1833,18 @@ export default {
|
|
|
slot: true,
|
|
|
width: 200,
|
|
|
overHidden: true,
|
|
|
- prop: 'corpId'
|
|
|
- }
|
|
|
- /*, {
|
|
|
- label: '车号',
|
|
|
- cell: true,
|
|
|
- prop: 'plateNo',
|
|
|
- type: "select",
|
|
|
- props: {
|
|
|
- label: "label",
|
|
|
- value: "label"
|
|
|
- },
|
|
|
- }*/
|
|
|
- , {
|
|
|
+ prop: 'corpId',
|
|
|
+ index:1
|
|
|
+ }, {
|
|
|
+ label: '车号',
|
|
|
+ prop: 'plateNo',
|
|
|
+ index:2
|
|
|
+ }, {
|
|
|
label: '费用名称',
|
|
|
slot: true,
|
|
|
width: 200,
|
|
|
- prop: 'feeId'
|
|
|
+ prop: 'feeId',
|
|
|
+ index:3
|
|
|
}, {
|
|
|
label: '计价单位',
|
|
|
cell: true,
|
|
@@ -1766,24 +1854,29 @@ export default {
|
|
|
props: {
|
|
|
label: "dictValue",
|
|
|
value: "dictKey"
|
|
|
- }
|
|
|
+ },
|
|
|
+ index:4
|
|
|
}, {
|
|
|
label: '单价',
|
|
|
cell: true,
|
|
|
- prop: 'price'
|
|
|
+ prop: 'price',
|
|
|
+ index:5
|
|
|
}, {
|
|
|
label: '数量',
|
|
|
cell: true,
|
|
|
- prop: 'quantity'
|
|
|
+ prop: 'quantity',
|
|
|
+ index:6
|
|
|
}, {
|
|
|
label: '金额',
|
|
|
cell: true,
|
|
|
- prop: 'amount'
|
|
|
+ prop: 'amount',
|
|
|
+ index:7
|
|
|
}, {
|
|
|
// label: '税率(默认6)',
|
|
|
label: '税率',
|
|
|
cell: true,
|
|
|
- prop: 'taxRate'
|
|
|
+ prop: 'taxRate',
|
|
|
+ index:8
|
|
|
}, {
|
|
|
label: '币别',
|
|
|
cell: true,
|
|
@@ -1794,9 +1887,11 @@ export default {
|
|
|
label: "dictValue",
|
|
|
value: "dictKey"
|
|
|
},
|
|
|
+ index:9
|
|
|
}]
|
|
|
},
|
|
|
paymentList: [],
|
|
|
+ key: 0,
|
|
|
collectionOption: {},
|
|
|
paymentOption: {},
|
|
|
paymentOptionBackup: {
|
|
@@ -1831,12 +1926,18 @@ export default {
|
|
|
width: 200,
|
|
|
slot: true,
|
|
|
overHidden: true,
|
|
|
- prop: 'corpId'
|
|
|
+ prop: 'corpId',
|
|
|
+ index:1
|
|
|
+ }, {
|
|
|
+ label: '车号',
|
|
|
+ prop: 'plateNo',
|
|
|
+ index:2
|
|
|
}, {
|
|
|
label: '费用名称',
|
|
|
slot: true,
|
|
|
width: 200,
|
|
|
- prop: 'feeId'
|
|
|
+ prop: 'feeId',
|
|
|
+ index:3
|
|
|
}, {
|
|
|
label: '计价单位',
|
|
|
width: 100,
|
|
@@ -1847,46 +1948,50 @@ export default {
|
|
|
props: {
|
|
|
label: "dictValue",
|
|
|
value: "dictKey"
|
|
|
- }
|
|
|
+ },
|
|
|
+ index:4
|
|
|
}, {
|
|
|
label: '数量',
|
|
|
cell: true,
|
|
|
- width: 100,
|
|
|
- prop: 'quantity'
|
|
|
+ prop: 'quantity',
|
|
|
+ index:5
|
|
|
}, {
|
|
|
label: '单价',
|
|
|
cell: true,
|
|
|
- width: 100,
|
|
|
- prop: 'price'
|
|
|
+ prop: 'price',
|
|
|
+ index:6
|
|
|
}, {
|
|
|
label: '金额',
|
|
|
cell: true,
|
|
|
- width: 100,
|
|
|
- prop: 'amount'
|
|
|
+ prop: 'amount',
|
|
|
+ index:7
|
|
|
}, {
|
|
|
// label: '税率(默认6)',
|
|
|
label: '税率',
|
|
|
cell: true,
|
|
|
- width: 100,
|
|
|
- prop: 'taxRate'
|
|
|
+ prop: 'taxRate',
|
|
|
+ index:8
|
|
|
}, {
|
|
|
label: '币别',
|
|
|
cell: true,
|
|
|
- width: 100,
|
|
|
prop: 'currency',
|
|
|
type: "select",
|
|
|
dicUrl: "/api/blade-system/dict-biz/dictionary?code=currency",
|
|
|
props: {
|
|
|
label: "dictValue",
|
|
|
value: "dictKey"
|
|
|
- }
|
|
|
+ },
|
|
|
+ index:9
|
|
|
}]
|
|
|
}
|
|
|
};
|
|
|
},
|
|
|
async created() {
|
|
|
- this.findObject(this.goodsOptionFormTwo.column, "licenseNumber").change = (data) => {
|
|
|
- fleetList({fleetId: data.row.fleetId}).then(res => {
|
|
|
+ getDictionary({code: 'package_type'}).then(res => {
|
|
|
+ this.packageType = res.data.data
|
|
|
+ })
|
|
|
+ this.findObject(this.goodsOptionFormTwo.column, "plateNo").change = (data) => {
|
|
|
+ fleetList({fleetId: this.goodsForm.fleetId}).then(res => {
|
|
|
for (let item in res.data.data) {
|
|
|
if (data.value === res.data.data[item].plateNo) {
|
|
|
this.goodsForm.driver = res.data.data[item].driverId
|
|
@@ -1896,7 +2001,7 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
- this.findObject(this.goodsOptionFormTwo.column, "driver").change = (data) => {
|
|
|
+ this.findObject(this.goodsOptionFormTwo.column, "driverId").change = (data) => {
|
|
|
telephone().then(res => {
|
|
|
for (let item in res.data.data) {
|
|
|
if (data.value === res.data.data[item].id) {
|
|
@@ -1913,15 +2018,17 @@ export default {
|
|
|
this.keyContact++
|
|
|
this.collectionOption = await this.getColumnData(this.getColumnName(85.4), this.collectionOptionBackup);
|
|
|
this.paymentOption = await this.getColumnData(this.getColumnName(85.5), this.paymentOptionBackup);
|
|
|
+ this.key++
|
|
|
if (this.id) {
|
|
|
if (this.id.slice(0, 4) === 'copy') {
|
|
|
detailDelegationList({id: this.id.slice(4, this.id.length), kind: '1'}).then(res => {
|
|
|
this.goodsForm = res.data.data
|
|
|
- this.tableData = res.data.data.orderAddressList
|
|
|
+ this.tableData = res.data.data.loadingAddressList || []
|
|
|
+ this.tableDataTwo = res.data.data.unloadedAddressList || []
|
|
|
this.entrustList = res.data.data.itemList
|
|
|
this.goodsList = res.data.data.itemList
|
|
|
this.vehicleList = res.data.data.orderItemList
|
|
|
- this.orderFilesList = res.data.data.fileList
|
|
|
+ this.orderFilesList = res.data.data.fileList || []
|
|
|
this.goodsForm.status = 0
|
|
|
if (res.data.data.orderFeeList.length > 0) {
|
|
|
res.data.data.orderFeeList.forEach(item => {
|
|
@@ -1958,7 +2065,8 @@ export default {
|
|
|
}
|
|
|
detailDelegationList({id: this.id.slice(2, this.id.length), kind: '1'}).then(res => {
|
|
|
this.goodsForm = res.data.data
|
|
|
- this.tableData = res.data.data.orderAddressList
|
|
|
+ this.tableData = res.data.data.loadingAddressList || []
|
|
|
+ this.tableDataTwo = res.data.data.unloadedAddressList || []
|
|
|
this.entrustList = res.data.data.itemList
|
|
|
this.goodsList = res.data.data.itemList
|
|
|
this.vehicleList = res.data.data.orderItemList
|
|
@@ -1990,7 +2098,8 @@ export default {
|
|
|
} else {
|
|
|
detailDelegationList({id: this.id, kind: '1'}).then(res => {
|
|
|
this.goodsForm = res.data.data
|
|
|
- this.tableData = res.data.data.orderAddressList
|
|
|
+ this.tableData = res.data.data.loadingAddressList || []
|
|
|
+ this.tableDataTwo = res.data.data.unloadedAddressList || []
|
|
|
this.entrustList = res.data.data.itemList
|
|
|
this.goodsList = res.data.data.itemList
|
|
|
this.vehicleList = res.data.data.orderItemList
|
|
@@ -2028,7 +2137,7 @@ export default {
|
|
|
this.goodsForm = {
|
|
|
corpId: res.data.data ? res.data.data.id : '',
|
|
|
businessType: "出口",
|
|
|
- shippingMode: "集装箱",
|
|
|
+ shippingMode: "散货",
|
|
|
status: 0,
|
|
|
salesman: JSON.parse(localStorage.getItem("saber-userInfo")).content.user_id,
|
|
|
belongCompany: res.data.data ? res.data.data.belongCompany : '',
|
|
@@ -2070,6 +2179,7 @@ export default {
|
|
|
},
|
|
|
initData(tenantId) {
|
|
|
getDeptTree(tenantId).then(res => {
|
|
|
+ console.log(res)
|
|
|
const column = this.findObject(this.goodsOptionForm.column, "salesmanDept");
|
|
|
column.dicData = res.data.data;
|
|
|
});
|
|
@@ -2208,28 +2318,29 @@ export default {
|
|
|
}
|
|
|
detailDelegationList({id: ids, kind: '1'}).then(res => {
|
|
|
this.goodsForm = res.data.data
|
|
|
- this.tableData = res.data.data.orderAddressList
|
|
|
+ this.tableData = res.data.data.loadingAddressList
|
|
|
+ this.tableDataTwo = res.data.data.unloadedAddressList
|
|
|
this.entrustList = res.data.data.itemList
|
|
|
this.goodsList = res.data.data.itemList
|
|
|
this.vehicleList = res.data.data.orderItemList
|
|
|
this.orderFilesList = res.data.data.fileList
|
|
|
- if (res.data.data.orderFeeList.length > 0) {
|
|
|
- this.collectionList = []
|
|
|
- this.paymentList = []
|
|
|
- res.data.data.orderFeeList.forEach(item => {
|
|
|
- if (item.type == 1) {
|
|
|
- this.collectionList.push(item)
|
|
|
- } else {
|
|
|
- this.paymentList.push(item)
|
|
|
- }
|
|
|
- })
|
|
|
+ if (res.data.data.orderFeeList) {
|
|
|
+ if (res.data.data.orderFeeList.length > 0) {
|
|
|
+ this.collectionList = []
|
|
|
+ this.paymentList = []
|
|
|
+ res.data.data.orderFeeList.forEach(item => {
|
|
|
+ if (item.type == 1) {
|
|
|
+ this.collectionList.push(item)
|
|
|
+ } else {
|
|
|
+ this.paymentList.push(item)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
this.goodsOptionFormC.disabled = true
|
|
|
this.goodsOptionForm.disabled = true
|
|
|
this.goodsOptionFormTwo.disabled = true
|
|
|
- this.goodsOptionForm.disabled = this.goodsOptionFormC.disabled = this.collectionOption.disabled = this.paymentOption.disabled = this.goodsForm.status >= 1
|
|
|
+ this.goodsOptionFormTwo.disabled = this.goodsOptionForm.disabled = this.goodsOptionFormC.disabled = this.collectionOption.disabled = this.paymentOption.disabled = this.goodsForm.status >= 1
|
|
|
delete this.goodsForm.orderAddressList
|
|
|
delete this.goodsForm.itemList
|
|
|
delete this.goodsForm.orderFeeList
|
|
@@ -2300,6 +2411,16 @@ export default {
|
|
|
this.tableData.splice(scope.$index, 1);
|
|
|
}
|
|
|
},
|
|
|
+ //删除途径地址
|
|
|
+ deleteAddressTwo(scope) {
|
|
|
+ if (scope.row.id) {
|
|
|
+ tRemove({ids: scope.row.id}).then(res => {
|
|
|
+ this.tableDataTwo.splice(scope.$index, 1);
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.tableDataTwo.splice(scope.$index, 1);
|
|
|
+ }
|
|
|
+ },
|
|
|
//箱信息保存
|
|
|
rowSave(row, index, done, loading) {
|
|
|
row.$cellEdit = false
|
|
@@ -2332,8 +2453,8 @@ export default {
|
|
|
saveSaveList({
|
|
|
...this.goodsForm,
|
|
|
kind: '1',
|
|
|
- loadingAddressList:this.tableData,
|
|
|
- unloadedAddressList:this.tableDataTwo,
|
|
|
+ loadingAddressList: this.tableData,
|
|
|
+ unloadedAddressList: this.tableDataTwo,
|
|
|
fileList: this.orderFilesList,
|
|
|
itemList: this.entrustList,
|
|
|
orderFeeList: this.collectionList.concat(this.paymentList)
|
|
@@ -2377,13 +2498,6 @@ export default {
|
|
|
// if (!this.tableData[item].tel) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行电话');
|
|
|
}
|
|
|
}
|
|
|
- for (let item in this.entrustList) {
|
|
|
- if (!this.entrustList[item].ctnType) return this.$message.error('请选择第' + Number(Number(item) + 1) + '行箱型');
|
|
|
- if (!this.entrustList[item].ctnQuantity) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行箱量');
|
|
|
- if (!this.entrustList[item].arrivalTime) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行货运日期');
|
|
|
- // if (!this.entrustList[item].landAmountD) return this.$message.error('请输入第' + Number(Number(item) + 1) + '运费');
|
|
|
- }
|
|
|
- if (this.entrustList.length === 0) return this.$message.error('箱信息不能为空')
|
|
|
let data = JSON.parse(JSON.stringify(this.tableData))
|
|
|
data.forEach((item, index) => {
|
|
|
item.sort = index + 1
|
|
@@ -2431,13 +2545,6 @@ export default {
|
|
|
// if (!this.tableData[item].tel) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行电话');
|
|
|
}
|
|
|
}
|
|
|
- for (let item in this.entrustList) {
|
|
|
- if (!this.entrustList[item].ctnType) return this.$message.error('请选择第' + Number(Number(item) + 1) + '行箱型');
|
|
|
- if (!this.entrustList[item].ctnQuantity) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行箱量');
|
|
|
- if (!this.entrustList[item].arrivalTime) return this.$message.error('请输入第' + Number(Number(item) + 1) + '行货运日期');
|
|
|
- // if (!this.entrustList[item].landAmountD) return this.$message.error('请输入第' + Number(Number(item) + 1) + '运费');
|
|
|
- }
|
|
|
- if (this.entrustList.length === 0) return this.$message.error('箱信息不能为空')
|
|
|
this.$refs['goodsFormE'].validate((valid, doneE) => {
|
|
|
doneE()
|
|
|
if (valid) {
|
|
@@ -2453,8 +2560,8 @@ export default {
|
|
|
saveSaveList({
|
|
|
...this.goodsForm,
|
|
|
kind: '1',
|
|
|
- loadingAddressList:this.tableData,
|
|
|
- unloadedAddressList:this.tableDataTwo,
|
|
|
+ loadingAddressList: this.tableData,
|
|
|
+ unloadedAddressList: this.tableDataTwo,
|
|
|
fileList: this.orderFilesList,
|
|
|
itemList: this.entrustList,
|
|
|
orderFeeList: this.collectionList.concat(this.paymentList)
|
|
@@ -2488,26 +2595,51 @@ export default {
|
|
|
},
|
|
|
//收费新增
|
|
|
addRowCollection() {
|
|
|
- this.$refs.collection.rowCellAdd({
|
|
|
- currency: '1',
|
|
|
- type: '1',
|
|
|
- $cellEdit: true
|
|
|
- });
|
|
|
- },
|
|
|
- //打开附件
|
|
|
- annexOpen(row, index) {
|
|
|
- this.enclosure = true
|
|
|
- getFee({id: row.id}).then(res => {
|
|
|
- this.orderList = res.data.data
|
|
|
- })
|
|
|
+ if (this.goodsForm.plateNo){
|
|
|
+ this.$refs.collection.rowCellAdd({
|
|
|
+ currency: '1',
|
|
|
+ type: '1',
|
|
|
+ $cellEdit: true,
|
|
|
+ plateNo:this.goodsForm.plateNo
|
|
|
+ });
|
|
|
+ }else {
|
|
|
+ this.$message.error('请选择车号')
|
|
|
+ }
|
|
|
},
|
|
|
//付费新增
|
|
|
addRowPayment() {
|
|
|
- this.$refs.payment.rowCellAdd({
|
|
|
- currency: '1',
|
|
|
- type: '2',
|
|
|
- $cellEdit: true
|
|
|
- });
|
|
|
+ if (this.goodsForm.plateNo){
|
|
|
+ this.$refs.payment.rowCellAdd({
|
|
|
+ currency: '1',
|
|
|
+ type: '2',
|
|
|
+ $cellEdit: true,
|
|
|
+ plateNo:this.goodsForm.plateNo
|
|
|
+ });
|
|
|
+ }else {
|
|
|
+ this.$message.error('请选择车号')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //打开附件
|
|
|
+ annexOpen(row, index,type) {
|
|
|
+ if (row.id){
|
|
|
+ this.formAnnex = row
|
|
|
+ getFee({id: row.id}).then(res => {
|
|
|
+ this.orderList = res.data.data
|
|
|
+ this.enclosure = true
|
|
|
+ })
|
|
|
+ }else {
|
|
|
+ this.$message.error('请点击顶部【保存】后再操作')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //保存
|
|
|
+ saveAnnex() {
|
|
|
+ saveFile({
|
|
|
+ id: this.formAnnex.id,
|
|
|
+ fileList: this.orderList
|
|
|
+ }).then(res => {
|
|
|
+ this.$message.success("保存成功");
|
|
|
+ this.annexOpen(this.formAnnex)
|
|
|
+ })
|
|
|
},
|
|
|
//选择费用
|
|
|
selectValue(value, row) {
|
|
@@ -2551,6 +2683,7 @@ export default {
|
|
|
},
|
|
|
//选择公司名称带出所属公司
|
|
|
getCorpData(row) {
|
|
|
+ console.log(row.belongCompany)
|
|
|
this.goodsForm.belongCompany = row.belongCompany
|
|
|
this.goodsForm.salesman = ''
|
|
|
//查询业务员
|
|
@@ -2561,6 +2694,7 @@ export default {
|
|
|
},
|
|
|
//选择地址客户带出地址
|
|
|
withAddress(row, scope) {
|
|
|
+ console.log(row)
|
|
|
this.$set(this.tableData[scope.$index], 'contacts', row.attn)
|
|
|
this.$set(this.tableData[scope.$index], 'tel', row.tel)
|
|
|
this.$set(this.tableData[scope.$index], 'address', row.storageAddr)
|
|
@@ -2568,7 +2702,7 @@ export default {
|
|
|
// this.tableData[scope.$index].tel = row.tel
|
|
|
// this.tableData[scope.$index].address = row.storageAddr
|
|
|
if (!scope.row.key) scope.row.key = 0
|
|
|
- this.$set(this.tableData[scope.$index], 'freightPlaceName', row.cname)
|
|
|
+ this.$set(this.tableData[scope.$index], 'corpName', row.cname)
|
|
|
// this.tableData[scope.$index].corpName = row.cname
|
|
|
if (row.belongtoarea) {
|
|
|
addressList(row.belongtoarea.split(',')[0]).then(res => {
|
|
@@ -2586,7 +2720,7 @@ export default {
|
|
|
// this.tableData[scope.$index].tel = row.tel
|
|
|
// this.tableData[scope.$index].address = row.storageAddr
|
|
|
if (!scope.row.key) scope.row.key = 0
|
|
|
- this.$set(this.tableDataTwo[scope.$index], 'freightPlaceName', row.cname)
|
|
|
+ this.$set(this.tableDataTwo[scope.$index], 'corpName', row.cname)
|
|
|
// this.tableData[scope.$index].corpName = row.cname
|
|
|
if (row.belongtoarea) {
|
|
|
addressList(row.belongtoarea.split(',')[0]).then(res => {
|