Commit 85afff27 authored by 我在何方's avatar 我在何方
parents 177a5490 da9c9ef6
......@@ -439,4 +439,22 @@ export function orderSpecialNeedGet(params){
url:'/ecw/order/update/info/' + id,
method:'get'
})
}
// 根据审批ID获得订单修改申请详情
export function getUpdateInfoByApproveId(approveId){
return request({
url:'/ecw/order/update/info',
method:'get',
params: {approveId}
})
}
// (新修改订单)订单修改审批申请
export function updateApply(data){
return request({
url:'/ecw/order/update/apply',
method:'put',
data
})
}
\ No newline at end of file
......@@ -304,7 +304,19 @@ export default {
component: () => import('@/views/ecw/order/components/LandingBillDetail'),
id: this.processInstance.businessKey,
path: this.processInstance.processDefinition?.formCustomViewPath
}
},
// 订单审核详情
order_approval:{
component: () => import('@/views/ecw/order/components/ApprovalDetail'),
id: this.processInstance.businessKey,
path: this.processInstance.processDefinition?.formCustomViewPath
},
// 订单修改审批
order_update:{
component: () => import('@/views/ecw/order/components/UpdateDetail'),
id: this.processInstance.businessKey,
path: this.processInstance.processDefinition?.formCustomViewPath
},
}
return map[this.processInstance.processDefinition.formCustomViewPath.trim()]
}
......
......@@ -86,7 +86,6 @@ export default {
created(){
if(this.id){
this.getData()
getBillService({id: this.id})
}
},
methods:{
......
<!--订单修改审核的申请信息部分-->
<template>
<div v-if="order">
<el-descriptions :column="4" v-if="order" :colon="false">
<el-descriptions-item :label="$t('订单号')">{{order.orderNo}}</el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')">
<dict-tag class="mr-10" :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="order.transportId" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出货方式')">
{{channel ? channel.nameZh : '/'}}
</el-descriptions-item>
<el-descriptions-item :label="$t('订单状态')">
{{order.statusMsg}}
</el-descriptions-item>
<el-descriptions-item :label="$t('唛头')">{{order.marks}}</el-descriptions-item>
<el-descriptions-item :label="$t('始发仓')">
{{order.logisticsInfoDto ? $l(order.logisticsInfoDto, 'startTitle') : '-'}}
</el-descriptions-item>
<el-descriptions-item :label="$t('目的仓')" :span="2">
{{order.logisticsInfoDto ? $l(order.logisticsInfoDto, 'destAddress') : '-'}}
</el-descriptions-item>
<el-descriptions-item :label="$t('申请理由')" :span="4">
<div>
<div v-for="(item, index) in order.applyInfoList" :key="index">
{{index+1}}{{item.name}} {{$t('从旧的【{orgValue}】改成新的【{newValue}', {orgValue: item.orgValue, newValue: item.newValue })}}
</div>
</div>
</el-descriptions-item>
</el-descriptions>
</div>
</template>
<script>
import {getOrder, getUpdateInfoByApproveId} from '@/api/ecw/order'
import {getChannel} from '@/api/ecw/channel'
import {getBillOfLandingInProcessing, getBillService} from '@/api/ecw/box'
export default {
name: 'OrderApprovalDetail',
props:{
id: [String, Number],
path: String
},
components:{
PrintLandingBill: () => import('./PrintLadingBill.vue')
},
data(){
return {
order: null,
channel: null
}
},
watch:{
id(){
this.getData()
},
order(){
if(this.order.channelId){
this.getChannel()
}
}
},
created(){
if(this.id){
this.getData()
}
},
methods:{
getData(){
getUpdateInfoByApproveId(this.id).then(res => {
this.order = res.data
})
},
getChannel(){
getChannel(this.order.channelId).then(res => {
this.channel = res.data
})
}
}
}
</script>
<style scoped lang="scss">
.title{
padding: 10px 0;
span{
font-size: 14px;
font-weight: bold;
}
}
</style>
\ No newline at end of file
......@@ -42,58 +42,61 @@
</el-row>
</el-card>
<el-card class="card">
<el-row :gutter="20">
<el-col :span="12">
<el-descriptions class="margin-top" border :title="$t('物流信息')" :column="2">
<el-descriptions-item :label="$t('始发仓')">{{order.logisticsInfoDto.startTitleZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('目的仓')">{{order.logisticsInfoDto.destTitleZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('地址')" :span="2">{{order.logisticsInfoDto.startAddressZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')" :span="2">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="order.transportId" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出货渠道')" :span="2">{{channelName}}</el-descriptions-item>
</el-descriptions>
</el-col>
<el-col :span="12">
<el-descriptions class="margin-top" border :title="$t('基础信息')" :column="2">
<el-descriptions-item :label="$t('唛头')">{{order.marks}}</el-descriptions-item>
<el-descriptions-item :label="$t('送货时间')">{{order.deliveryDate}}</el-descriptions-item>
<el-descriptions-item :label="$t('是否控货')">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="order.isCargoControl" />
</el-descriptions-item>
<el-descriptions-item :label="$t('填单信息')">
{{order.costVO.totalNum}}{{$t('箱')}}
{{order.costVO.totalWeight}}Kg
{{order.costVO.totalVolume}}m³
{{order.costVO.totalQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('仓库实测')">
{{order.sumNum}}{{$t('箱')}}
{{order.sumWeight}}Kg
{{order.sumVolume}}m³
{{order.sumQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('收款数据')">
{{order.sumNum}}{{$t('箱')}}
{{order.vweight}}Kg
{{order.wvolume}}m³
{{order.sumQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('入仓类型')">
<dict-tag :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" :value="order.warehouseType" />
</el-descriptions-item>
<el-descriptions-item :label="$t('单证报关')">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="order.customsType" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出单方式')">
<dict-tag :type="DICT_TYPE.ECW_SUING_METHOD" :value="order.issuingMethod" />
</el-descriptions-item>
<el-descriptions-item :label="$t('代收货款')">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="order.isCollection" />
</el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
<el-descriptions border :title="$t('物流信息')" :column="2">
<el-descriptions-item :label="$t('始发仓')">{{order.logisticsInfoDto.startTitleZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('目的仓')">{{order.logisticsInfoDto.destTitleZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('地址')" :span="2">{{order.logisticsInfoDto.startAddressZh}}</el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')" :span="2">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="order.transportId" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出货渠道')" :span="2">{{channelName}}</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card class="card">
<el-descriptions class="mr-10" border :title="$t('基础信息')" :column="2">
<el-descriptions-item :label="$t('唛头')">{{order.marks}}</el-descriptions-item>
<el-descriptions-item :label="$t('送货时间')">{{order.deliveryDate}}</el-descriptions-item>
<el-descriptions-item :label="$t('是否控货')">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="order.isCargoControl" />
</el-descriptions-item>
<el-descriptions-item :label="$t('填单信息')">
{{order.costVO.totalNum}}{{$t('箱')}}
{{order.costVO.totalWeight}}Kg
{{order.costVO.totalVolume}}m³
{{order.costVO.totalQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('仓库实测')">
{{order.sumNum}}{{$t('箱')}}
{{order.sumWeight}}Kg
{{order.sumVolume}}m³
{{order.sumQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('收款数据')">
{{order.sumNum}}{{$t('箱')}}
{{order.vweight}}Kg
{{order.wvolume}}m³
{{order.sumQuantity}}{{$t('个')}}
</el-descriptions-item>
<el-descriptions-item :label="$t('入仓类型')">
<dict-tag :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" :value="order.warehouseType" />
</el-descriptions-item>
<el-descriptions-item :label="$t('单证报关')">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="order.customsType" />
</el-descriptions-item>
<el-descriptions-item :label="$t('出单方式')">
<dict-tag :type="DICT_TYPE.ECW_SUING_METHOD" :value="order.issuingMethod" />
</el-descriptions-item>
<el-descriptions-item :label="$t('代收货款')">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="order.isCollection" />
</el-descriptions-item>
<el-descriptions-item :label="$t('集运仓库')">
{{isExternalWarehouse ? '自有仓' : '外部仓'}}
<div v-for="(item, index) in order.externalWarehouseDtoList" :key="index">
装柜时间: {{item.estLoadingTime}} 装柜地址:{{item.loadingAddress}}
</div>
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card class="card">
<el-tabs v-model="activeName">
......@@ -129,12 +132,12 @@
</el-table-column>
<el-table-column prop="volume" :label="$t('体积') + '(m³)'" width="90px">
<template slot-scope="{row}">
{{order.inWarehouseState > 1 ? row.warehouseInInfoVO.volume : row.volume}}
{{order.inWarehouseState > 1 && row.warehouseInInfoVO ? row.warehouseInInfoVO.volume : row.volume}}
</template>
</el-table-column>
<el-table-column prop="weight" :label="$t('重量') + '(kg)'" width="90px">
<template slot-scope="{row}">
{{order.inWarehouseState > 1 ? row.warehouseInInfoVO.weight : row.weight}}
{{order.inWarehouseState > 1 && row.warehouseInInfoVO ? row.warehouseInInfoVO.weight : row.weight}}
</template>
</el-table-column>
<el-table-column prop="quantity" :label="$t('数量') + '(个)'" width="90px"/>
......
......@@ -6,7 +6,7 @@
<div slot="header" class="card-title">{{ editMode ? this.$t('编辑订单') : this.$t('新建订单')}}</div>
<!--默认显示类型(selectedRouter==null),如果选择路线后没开通则隐藏-->
<el-form-item :label="$t('订单类型')" v-if="!selectedRouter || routeOtherServices.indexOf('1') > -1 || routeOtherServices.indexOf('4') > -1">
<el-checkbox-group v-model="form.type">
<el-checkbox-group v-model="form.type" :disabled="inWarehouse">
<el-checkbox label="1" v-if="!selectedRouter || routeOtherServices.indexOf('1') > -1">{{$t('集运服务')}}</el-checkbox>
<el-checkbox label="2" v-if="!selectedRouter || routeOtherServices.indexOf('2') > -1">{{$t('海外仓')}}</el-checkbox>
</el-checkbox-group>
......@@ -16,9 +16,9 @@
<el-form-item :label="$t('发货人')" prop="consignorContactsId" >
<!-- <customer-contact-selector v-model="form.consignorContactsId" @change="consignorContact = $event" type="1" /> -->
<div class="contact">
<el-input v-model="form.consignorName" placeholder="" :disabled="form.status !== 0"/>
<img v-if="!form.status" src="@/assets/images/phonebook.png" class="phonebook" @click="contactChooseType='consignor'" />
<img v-if="!form.status" src="@/assets/images/new_customer.png" class="phonebook" @click="quickCreateType='1'" />
<el-input v-model="form.consignorName" placeholder="" :disabled="inWarehouse"/>
<img v-if="!inWarehouse" src="@/assets/images/phonebook.png" class="phonebook" @click="contactChooseType='consignor'" />
<img v-if="!inWarehouse" src="@/assets/images/new_customer.png" class="phonebook" @click="quickCreateType='1'" />
</div>
</el-form-item>
<el-form-item :label="$t('发货人电话')" prop="consignorPhone">
......@@ -26,19 +26,19 @@
<el-input v-model="form.consignorPhone" class="w-200" disabled />
</el-form-item>
<el-form-item :label="$t('发货人公司')" prop="consignorPhone">
<el-input v-model="form.consignorCompany" :disabled="form.status !== 0" />
<el-input v-model="form.consignorCompany" :disabled="inWarehouse" />
</el-form-item>
<el-form-item label="Email" prop="consignorPhone">
<el-input v-model="form.consignorEmail" :disabled="form.status !== 0" />
<el-input v-model="form.consignorEmail" :disabled="inWarehouse" />
</el-form-item>
</div>
<div class="form-section">
<el-form-item :label="$t('收货人')" prop="consigneeContactsId">
<!-- <customer-contact-selector v-model="form.consignorContactsId" @change="consignorContact = $event" type="1" /> -->
<div class="contact">
<el-input v-model="form.consigneeName" placeholder="" :disabled="form.status !== 0"/>
<img v-if="!form.status" src="@/assets/images/phonebook.png" class="phonebook" @click="contactChooseType='consignee'" />
<img v-if="!form.status" src="@/assets/images/new_customer.png" class="phonebook" @click="quickCreateType='2'" />
<el-input v-model="form.consigneeName" placeholder="" :disabled="inWarehouse"/>
<img v-if="!inWarehouse" src="@/assets/images/phonebook.png" class="phonebook" @click="contactChooseType='consignee'" />
<img v-if="!inWarehouse" src="@/assets/images/new_customer.png" class="phonebook" @click="quickCreateType='2'" />
</div>
</el-form-item>
<el-form-item :label="$t('收货人电话')" prop="consigneePhone">
......@@ -46,20 +46,20 @@
<el-input v-model="form.consigneePhone" class="w-200" disabled/>
</el-form-item>
<el-form-item :label="$t('收货人公司')" prop="consigneePhone">
<el-input v-model="form.consigneeCompany" :disabled="form.status !== 0" />
<el-input v-model="form.consigneeCompany" :disabled="inWarehouse" />
</el-form-item>
<el-form-item label="Email" prop="consigneePhone">
<el-input v-model="form.consigneeEmail" :disabled="form.status !== 0"/>
<el-input v-model="form.consigneeEmail" :disabled="inWarehouse"/>
</el-form-item>
</div>
<div class="form-section">
<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="form.transportId" :disabled="form.status !== 0"/>
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="form.transportId" :disabled="inWarehouse"/>
</el-form-item>
<el-form-item :label="$t('出货渠道')" prop="channelId" v-if="getDictData(DICT_TYPE.ECW_TRANSPORT_TYPE, form.transportId).cssClass == 'channel'">
<selector
:disabled="form.status !== 0 || getDictData(DICT_TYPE.ECW_TRANSPORT_TYPE, form.transportId).cssClass != 'channel'"
:disabled="inWarehouse || getDictData(DICT_TYPE.ECW_TRANSPORT_TYPE, form.transportId).cssClass != 'channel'"
v-model="form.channelId"
:options="channelList"
value-field="channelId"
......@@ -69,12 +69,12 @@
</div>
<div class="form-section">
<el-form-item :label="$t('始发城市')" prop="departureId">
<el-select v-model="form.departureId" :placeholder="$t('请选择始发地')" :disabled="form.status !== 0">
<el-select v-model="form.departureId" :placeholder="$t('请选择始发地')" :disabled="inWarehouse">
<el-option v-for="item in exportCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的城市')" prop="objectiveId">
<el-select v-model="form.objectiveId" :placeholder="$t('请选择目的地')" :disabled="form.status !== 0">
<el-select v-model="form.objectiveId" :placeholder="$t('请选择目的地')" :disabled="inWarehouse">
<el-option v-for="item in importCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
......@@ -83,7 +83,7 @@
<el-form-item :label="$t('选择线路')" prop="lineId">
<el-input :value="selectedRouter ? $l(selectedRouter, 'startTitle') + ' > ' + $l(selectedRouter, 'destTitle') : ''" disabled :placeholder="$t('请在右侧选择线路')"></el-input>
</el-form-item>
<select size="5" v-model="form.lineId" style="min-width: 300px; border:1px solid #DCDFE6; border-radius:4px" :disabled="form.status !== 0">
<select size="5" v-model="form.lineId" style="min-width: 300px; border:1px solid #DCDFE6; border-radius:4px" :disabled="inWarehouse">
<template v-for="item in routerList">
<option :value="item.id" :key="item.id">{{$l(item, 'startTitle')}} >> {{$l(item, 'destTitle')}}</option>
</template>
......@@ -200,7 +200,7 @@
</el-table-column>
<el-table-column :label="$t('快递单号')" width="100px">
<template slot-scope="{row}">
<el-input v-model="row.expressNo" placeholder="" />
<el-input v-model="row.expressNo" placeholder="" :disabled="!productEditable" />
</template>
</el-table-column>
<el-table-column :label="$t('操作')" width="80px" fixed="right">
......@@ -240,40 +240,40 @@
<div class="card-title" slot="header">{{$t('通用')}}</div>
<div class="form-section">
<el-form-item label="唛头" prop="marks" >
<el-input v-model="form.marks" placeholder=""></el-input>
<el-input v-model="form.marks" ></el-input>
</el-form-item>
<el-form-item label="是否控货" prop="isCargoControl" class="ml-20">
<dict-selector :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" v-model="form.isCargoControl" form-type="radio" />
<dict-selector :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" v-model="form.isCargoControl" form-type="radio" :disabled="inWarehouse"/>
</el-form-item>
</div>
<div class="form-section" v-if="collectionProxy">
<el-form-item :label="$t('是否代收货款')" prop="isCollection">
<dict-selector :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" v-model="form.isCollection" form-type="radio" />
<dict-selector :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" v-model="form.isCollection" form-type="radio" :disabled="inWarehouse" />
</el-form-item>
<!--代收货款,只有非控货订单、并且线路开通了代收货款后,才显示是否代收货款选项-->
<el-form-item :label="$t('代收货款金额')" v-if="collectionProxy && form.isCollection" prop="collectionProxy" class="ml-20">
<el-input v-model="form.collectionProxy" placeholder="" class="w-200 mr-10"></el-input>
<selector v-model="form.collectionProxyCurrency" :options="currencyList" label-field="titleZh" value-field="id" defaultable class="w-100" />
<el-input v-model="form.collectionProxy" class="w-200 mr-10" :disabled="inWarehouse"></el-input>
<selector v-model="form.collectionProxyCurrency" :options="currencyList" label-field="titleZh" value-field="id" defaultable class="w-100" :disabled="inWarehouse"/>
</el-form-item>
</div>
<div class="form-section">
<el-form-item :label="$t('单证报关')" :span="2" prop="customsType">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMS_TYPE" v-model="form.customsType" form-type="radio" defaultable />
<dict-selector :type="DICT_TYPE.ECW_CUSTOMS_TYPE" v-model="form.customsType" form-type="radio" defaultable :disabled="inWarehouse" />
</el-form-item>
</div>
<div>
<el-form-item :label="$t('出单方式')" prop="issuingMethod">
<dict-selector :type="DICT_TYPE.ECW_SUING_METHOD" v-model="form.issuingMethod" form-type="radio" defaultable />
<dict-selector :type="DICT_TYPE.ECW_SUING_METHOD" v-model="form.issuingMethod" form-type="radio" defaultable :disabled="inWarehouse"/>
</el-form-item>
</div>
<div>
<el-form-item :label="$t('入仓类型')" prop="warehouseType">
<dict-selector :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" v-model="form.warehouseType" defaultable />
<dict-selector :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" v-model="form.warehouseType" defaultable :disabled="inWarehouse" />
</el-form-item>
</div>
<div>
<el-form-item :label="$t('外部仓库')" prop="warehouseType">
<el-checkbox label="" :checked="!!form.isExternalWarehouse" @change="form.isExternalWarehouse=$event"></el-checkbox>
<el-checkbox label="" :checked="!!form.isExternalWarehouse" @change="form.isExternalWarehouse=$event" :disabled="inWarehouse"></el-checkbox>
</el-form-item>
<div v-if="form.isExternalWarehouse" class="pl-50">
<div v-for="(item, index) in form.externalWarehouseDtoList" class="flex" :key="index">
......@@ -309,7 +309,7 @@
</div>
<div>
<el-form-item :label="$t('收货方式')" prop="harvestMethod" class="ml-20">
<dict-selector :type="DICT_TYPE.ECW_HARVEST_METHOD" v-model="form.harvestMethod" :filter="item => item.value == 1 || homeDeliveryService" defaultable />
<dict-selector :type="DICT_TYPE.ECW_HARVEST_METHOD" v-model="form.harvestMethod" :filter="item => item.value == 1 || homeDeliveryService" defaultable :disabled="inWarehouse" />
</el-form-item>
</div>
<div v-if="homeDeliveryService && form.harvestMethod == 2">
......@@ -321,20 +321,21 @@
@countryChange="onAreaChange('country', $event)"
@provinceChange="onAreaChange('province', $event)"
@cityChange="onAreaChange('city', $event)"
:disabled="inWarehouse"
></area-selector>
</el-form-item>
<el-form-item :label="$t('收货详细地址')" prop="consigneeAddress">
<el-input v-model="form.consigneeAddress" placeholder=""></el-input>
<el-input v-model="form.consigneeAddress" :disabled="inWarehouse"></el-input>
</el-form-item>
</div>
<div>
<el-form-item :label="$t('付款人')" prop="drawee">
<dict-selector :type="DICT_TYPE.DRAWEE" v-model="form.drawee" defaultable form-type="radio" />
<dict-selector :type="DICT_TYPE.DRAWEE" v-model="form.drawee" defaultable form-type="radio" :disabled="inWarehouse"/>
<el-table :data="customDraweeList" v-if="form.drawee==3" >
<el-table-column label="费用类型" prop="label" width="200px"></el-table-column>
<el-table-column label="付款人" width="300px">
<template slot-scope="{row}">
<dict-selector :type="DICT_TYPE.DRAWEE" :filter="(e) => e.value == '1' || e.value == '2'" v-model="row.value" form-type="radio" />
<dict-selector :type="DICT_TYPE.DRAWEE" :filter="(e) => e.value == '1' || e.value == '2'" v-model="row.value" form-type="radio" :disabled="inWarehouse"/>
</template>
</el-table-column>
</el-table>
......@@ -345,60 +346,69 @@
<el-card class="mt-10" v-if="transport">
<div class="card-title" slot="header">{{transport.label}}</div>
<el-form-item :label="$t('快递单号')">
<el-input v-model="form.number" :placeholder="$t('请输入购买商品的快递单号')">
<el-button type="primary" slot="append" @click="getOrderCourierNumber">{{$t('生成单号')}}</el-button>
<el-input v-model="form.number" :placeholder="$t('请输入购买商品的快递单号')" :disabled="inWarehouse">
<el-button type="primary" slot="append" @click="getOrderCourierNumber" :disabled="inWarehouse">{{$t('生成单号')}}</el-button>
</el-input>
</el-form-item>
<div v-if="[2,3,4].indexOf(+form.transportId) > -1">
<el-form-item :label="$t('是否双清')">
<dict-selector v-model="form.doubleClear" form-type="radio" :type="DICT_TYPE.ECW_DOUBLE_CLEAR" defaultable />
<dict-selector v-model="form.doubleClear" form-type="radio" :type="DICT_TYPE.ECW_DOUBLE_CLEAR" defaultable :disabled="inWarehouse" />
</el-form-item>
</div>
<div v-if="[3,4].indexOf(+form.transportId) > -1">
<el-form-item :label="$t('航空公司')">
<supplier-selector v-model="form.airlineCompany" company-type="10" />
<supplier-selector v-model="form.airlineCompany" company-type="10" :disabled="inWarehouse"/>
</el-form-item>
</div>
<div v-if="[2].indexOf(+form.transportId) > -1">
<el-form-item :label="$t('船公司')">
<supplier-selector v-model="form.shippingCompany" company-type="9" />
<supplier-selector v-model="form.shippingCompany" company-type="9" :disabled="inWarehouse" />
</el-form-item>
</div>
<div v-if="[2,3,4].indexOf(+form.transportId) > -1">
<el-form-item :label="$t('清关证书')">
<dict-selector v-model="form.customsClearCert" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable />
<dict-selector v-model="form.customsClearCert" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable :disabled="inWarehouse" />
</el-form-item>
<el-form-item label="清关证书备注" >
<el-input v-model="form.remarks" ></el-input>
<el-input v-model="form.remarks" :disabled="inWarehouse"></el-input>
</el-form-item>
</div>
<div v-if="[3,4].indexOf(+form.transportId) > -1">
<el-form-item label="是否拆包">
<dict-selector v-model="form.isUnpack" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable />
<dict-selector v-model="form.isUnpack" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable :disabled="inWarehouse" />
</el-form-item>
</div>
<div class="form-section">
<el-form-item :label="$t('单票立刻转运')" v-if="[3,4].indexOf(+form.transportId) > -1">
<dict-selector v-model="form.isSingleTicketTransport" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable />
<dict-selector v-model="form.isSingleTicketTransport" form-type="radio" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" formatter="bool" defaultable :disabled="inWarehouse" />
<span style="margin-left:10px">{{$t('注:若只有一件,货到仓库立即发,选“是”,多件需仓库集运待发,选“否”')}}</span>
</el-form-item>
</div>
<div class="form-section">
<el-form-item :label="$t('特殊要求')" >
<dict-selector v-model="form.packageTypeArr" form-type="checkbox" :type="DICT_TYPE.ORDER_SPECIAL_NEEDS" multiple />
<dict-selector v-model="form.packageTypeArr" form-type="checkbox" :type="DICT_TYPE.ORDER_SPECIAL_NEEDS" multiple :disabled="inWarehouse"/>
</el-form-item>
</div>
<el-form-item :label="$t('特殊要求备注')">
<el-input v-model="form.packageRemarks" ></el-input>
<el-input v-model="form.packageRemarks" :disabled="inWarehouse" ></el-input>
</el-form-item>
</el-card>
<el-card class="mt-10" v-if="inWarehouse">
<div class="card-title" slot="header">{{$t('审批流程')}}</div>
<work-flow xmlkey="order_modify" v-model="ccIdArr" />
</el-card>
<el-form-item label="" style="margin: 30px 0">
<el-button type="primary" @click="submitForm(0)">{{$t('保存')}}</el-button> <!--草稿-->
<el-button type="primary" @click="submitForm(2)" v-if="!form.orderId">{{$t('新建')}}</el-button> <!--待入仓-->
<template v-if="form.applyStatus == 1">
<el-button type="primary" @click="$router.push('/bpm/process-instance/detail?id=' + form.formId)">{{$t('审核中')}}</el-button>
</template>
<template v-else>
<el-button type="primary" @click="submitForm(0)">{{$t('保存')}}</el-button> <!--草稿-->
<el-button type="primary" @click="submitForm(2)" v-if="!form.orderId">{{$t('新建')}}</el-button> <!--待入仓-->
</template>
<el-button @click="$store.dispatch('tagsView/delCurrentView')">{{$t('返回')}}</el-button>
</el-form-item>
</el-form>
......@@ -447,7 +457,7 @@
</template>
<script>
import { createOrder, updateOrder, getOrderDetail, getOrderCourierNumber, orderImport, exportPackingList, getUpdateInfo } from "@/api/ecw/order";
import { createOrder, updateApply, getOrderDetail, getOrderCourierNumber, orderImport, exportPackingList, getUpdateInfo } from "@/api/ecw/order";
import ProductSelector from '@/components/ProductSelector'
import {getProductAttrList} from '@/api/ecw/productAttr'
import {getChannelList} from '@/api/ecw/channel'
......@@ -466,6 +476,7 @@ import QuickCreateCustomer from '@/components/QuickCreateCustomer'
import {calculationPrice} from '@/api/ecw/product'
import SupplierSelector from '@/components/SupplierSelector'
import Decimal from 'decimal.js'
import WorkFlow from '@/components/WorkFlow'
// 缓存默认的表单数据
let defaultFormData = null
......@@ -473,7 +484,7 @@ let defaultFormData = null
export default {
name: "EcwOrderEdit",
components: {
ProductSelector, Selector, CustomerContactSelector, AreaSelector, FileUpload, AreaCodeSelector, ChooseContactDialog, QuickCreateCustomer, SupplierSelector
ProductSelector, Selector, CustomerContactSelector, AreaSelector, FileUpload, AreaCodeSelector, ChooseContactDialog, QuickCreateCustomer, SupplierSelector, WorkFlow
},
data() {
return {
......@@ -508,6 +519,7 @@ export default {
externalWarehouseDtoList:[{}],
orderItemVOList:[]
},
ccIdArr: [],
// 表单校验
rules: {
marks: [
......@@ -541,6 +553,10 @@ export default {
};
},
computed:{
// 是否已完成入仓
inWarehouse(){
return this.form.inWarehouseState && this.form.inWarehouseState > 201
},
exportCityList(){
return this.tradeCityList.filter(item => item.type == 2 || item.type == 3)
},
......@@ -638,8 +654,8 @@ export default {
},
// 是否可以编辑商品基本信息(货值除外)
productEditable(){
// 非编辑模式 或者 草稿状态就可以编辑
return !this.editMode || this.form.status == 0
// 非编辑模式 或者 未完成入仓
return !this.editMode || !this.inWarehouse
},
// 路线开通的服务
routeOtherServices(){
......@@ -659,6 +675,9 @@ export default {
}
},
watch:{
ccIdArr(arr){
this.$set(this.form, 'ccIds', arr.join(","))
},
// 始发地
'form.departureId'(){
this.getOpenedRouterList()
......@@ -751,6 +770,9 @@ export default {
this.$set(this.form, 'consigneeId', res.data.consigneeVO.customerId)
this.$set(this.form, 'consigneeName', res.data.consigneeVO.name)
this.$set(this.form, 'consigneePhone', res.data.consigneeVO.phone)
if(res.data.ccIds){
this.ccIdArr = res.data.ccIds.split(",").filter(item => item && item != '')
}
})
},
onContactChoose(contact){
......@@ -907,7 +929,7 @@ export default {
orderItemVOList: this.getProductListWithDefaultValue(),
})
data.type = data.type.join(',')
updateOrder(data).then(response => {
updateApply(data).then(response => {
this.$modal.msgSuccess(this.$t("修改成功"));
this.$router.back()
});
......
......@@ -177,7 +177,7 @@
exclude(scope.row.abnormalState, [1 ,99 ,2 ,3 ,4 ,9 ,10 ,11 ,12 ,14]) &&
exclude(scope.row.status, [20,21]) &&
exclude(scope.row.shipmentState, [320,322,323]) &&
(exclude(scope.row.inWarehouseState, [ 212, 218, 213, 214, 215]) && exclude(scope.row.status, [5,8]) )
exclude(scope.row.inWarehouseState, [ 212, 218, 213, 214, 215])
">
<el-dropdown-item @click.native="handleUpdate(scope.row)" v-hasPermi="['ecw:order:update']" >{{$t('编辑')}}</el-dropdown-item>
</template>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment