Commit e5fd9477 authored by dragondean@qq.com's avatar dragondean@qq.com

Merge remote-tracking branch 'origin/dev' into dev

parents 44558b1a a14c124a
...@@ -12,7 +12,7 @@ export default { ...@@ -12,7 +12,7 @@ export default {
}, },
props:{ props:{
options: Array, options: Array,
value: [String, Number, Boolean, Object], value: [String, Number, Array, Boolean, Object],
labelField: { labelField: {
type: [String, Function], type: [String, Function],
default: 'label' default: 'label'
......
...@@ -4690,6 +4690,8 @@ ...@@ -4690,6 +4690,8 @@
"财务资料": "Finance Information", "财务资料": "Finance Information",
"特殊设置": "Special setting", "特殊设置": "Special setting",
"已卸柜/已到仓时间": "Unloaded/arrived Time", "已卸柜/已到仓时间": "Unloaded/arrived Time",
"动态": "Dynamics",
"增值服务": "Added services",
"开启会员积分系统":"Enable member points system", "开启会员积分系统":"Enable member points system",
"是否确认{val}会员积分系统":"Confirm whether to {val} the member points system" "是否确认{val}会员积分系统":"Confirm whether to {val} the member points system"
} }
<template> <template>
<div class="app-container"> <div class="app-container">
<!-- 搜索工作栏 -->
<!-- 搜索工作栏 --> <!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
<el-form-item :label="$t('日期筛选')"> <el-form-item :label="$t('日期筛选')">
<dict-selector defaultable :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" class="w-100 mr-10" /> <dict-selector defaultable :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" class="w-100 mr-10" />
<el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss" @change="handleQuery"></el-date-picker> <el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss" @change="handleQuery"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="$t('始发仓')" prop="startWarehouseIds"> <div>
<el-select v-model="queryParams.startWarehouseIds" multiple :placeholder="$t('请选择始发地')" clearable @change="handleQuery"> <el-form-item :label="$t('始发仓')" prop="startWarehouseIds">
<el-option v-for="item in exportWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option> <el-select v-model="queryParams.startWarehouseIds" multiple :placeholder="$t('请选择始发仓')" clearable @change="handleQuery">
</el-select> <el-option v-for="item in exportWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
</el-form-item> </el-select>
<!-- </el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseIds"> <el-form-item :label="$t('目的国')" prop="destCountryId">
<el-select v-model="queryParams.destWarehouseIds" multiple :placeholder="$t('请选择目的地')" clearable @change="handleQuery"> <el-select
<el-option v-for="item in importWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option> v-model="destCountryId"
</el-select> multiple
</el-form-item> :label="destCountryId"
--> :placeholder="$t('请选择目的国')"
<el-form-item :label="$t('目的国')" prop="destCountryId"> clearable
<el-select @change="handleQuery"
v-model="destCountryId" >
multiple <el-option
:label="destCountryId" v-for="item in AddressProvince"
:placeholder="$t('请选择目的国')" :key="item.guojia"
clearable :label="item.guojiaName"
@change="handleQuery" :value="item.guojia"
> ></el-option>
<el-option </el-select>
v-for="item in AddressProvince" </el-form-item>
:key="item.guojia" <el-form-item :label="$t('目的城市')" prop="objectiveId">
:label="item.guojiaName" <el-select
:value="item.guojia" v-model="objectiveId"
></el-option> multiple
</el-select> :placeholder="$t('请选择目的城市')"
</el-form-item> style="width: 200px"
<el-form-item :label="$t('目的城市')" prop="objectiveId"> clearable
<el-select @change="handleQuery"
v-model="objectiveId" >
multiple <el-option
:placeholder="$t('请选择目的城市')" v-for="item in AddressCity"
style="width: 200px" :key="item.shi"
clearable :label="item.shiName"
@change="handleQuery" :value="item.shi"
> ></el-option>
<el-option </el-select>
v-for="item in AddressCity" </el-form-item>
:key="item.shi" <el-form-item :label="$t('目的仓')" prop="destWarehouseId">
:label="item.shiName" <el-select
:value="item.shi" v-model="destWarehouseId"
></el-option> multiple
</el-select> :placeholder="$t('请选择目的仓')"
</el-form-item> style="width: 200px"
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> clearable
<el-select @change="handleQuery"
v-model="destWarehouseId" >
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</div>
<el-form-item :label="$t('客户经理')">
<user-selector
manage
v-model="queryParams.salesmanIds"
multiple multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable clearable
@change="handleQuery" @change="handleQuery"
> :prepend="{ id: 0, nickname: $t('未分配客户经理') }"
<el-option />
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('运输方式')" prop="transportId" v-show="showSearch">
<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/> <dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('出货渠道')" prop="channelIds">
<selector clearable :options="channelList" :label-field="$l('name')" value-field="channelId" v-model="queryParams.channelIds" multiple></selector>
</el-form-item>
<el-form-item :label="$t('订单编号')" prop="orderNo"> <el-form-item :label="$t('订单编号')" prop="orderNo">
<el-input v-model="queryParams.orderNo" :placeholder="$t('订单编号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.orderNo" :placeholder="$t('订单编号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('品名')" prop="prodId"> <el-form-item :label="$t('商品')" prop="prodId" v-show="showSearch">
<product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" clearable @change="handleQuery"/> <product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" clearable @change="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('控货状态')" prop="isCargoControl"> <el-form-item :label="$t('控货状态')" prop="isCargoControl">
<dict-selector v-model="queryParams.cargoControlStatus" :type="DICT_TYPE.CONTROL_GOODS_STATUS" clearable @change="handleQuery"/> <dict-selector v-model="queryParams.cargoControlStatusList" multiple :type="DICT_TYPE.CONTROL_GOODS_STATUS" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单状态')" prop="statusList"> <el-form-item :label="$t('订单状态')" prop="statusList" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ORDER_STATUS" multiple v-model="queryParams.statusList" <dict-selector :type="DICT_TYPE.ORDER_STATUS" multiple v-model="queryParams.statusList"
@keyup.enter.native="handleQuery" clearable @change="handleQuery" /> @keyup.enter.native="handleQuery" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
...@@ -91,11 +97,11 @@ ...@@ -91,11 +97,11 @@
<el-input v-model="queryParams.tidanNo" :placeholder="$t('提单号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.tidanNo" :placeholder="$t('提单号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('发货人')" prop="consignorKey"> <el-form-item :label="$t('发货人')" prop="consignorKey">
<el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('收货人')" prop="consigneeKey"> <el-form-item :label="$t('收货人')" prop="consigneeKey">
<el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsTypes"> <el-form-item :label="$t('报关方式')" prop="customsTypes">
...@@ -105,13 +111,22 @@ ...@@ -105,13 +111,22 @@
<el-form-item :label="$t('唛头')" prop="marks"> <el-form-item :label="$t('唛头')" prop="marks">
<el-input v-model="queryParams.marks" :placeholder="$t('唛头')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.marks" :placeholder="$t('唛头')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('备案属性')" prop="productRecords" v-show="showSearch">
<dict-selector
:type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
multiple
v-model="queryParams.productRecords"
clearable
@change="handleQuery"
/>
</el-form-item>
<el-form-item :label="$t('外部仓')" prop="isExternalWarehouse" v-show="showSearch">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery"> <el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option> <el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option> <el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单类型')" prop="number"> <el-form-item :label="$t('增值服务')" prop="type" v-show="showSearch">
<el-select v-model="queryParams.type" :placeholder="$t('请选择')" clearable @change="handleQuery" > <el-select v-model="queryParams.type" :placeholder="$t('请选择')" clearable @change="handleQuery" >
<el-option :label="$t('普通订单')" :value="0"></el-option> <el-option :label="$t('普通订单')" :value="0"></el-option>
<el-option :label="$t('集运服务')" :value="1"></el-option> <el-option :label="$t('集运服务')" :value="1"></el-option>
...@@ -287,12 +302,15 @@ import Fallback from './components/Fallback' ...@@ -287,12 +302,15 @@ import Fallback from './components/Fallback'
import {getWarehouseList} from '@/api/ecw/warehouse' import {getWarehouseList} from '@/api/ecw/warehouse'
import CargoLogList from "@/views/ecw/order/components/CargoLogList.vue"; import CargoLogList from "@/views/ecw/order/components/CargoLogList.vue";
import {getRegionList} from "@/api/ecw/order" import {getRegionList} from "@/api/ecw/order"
import UserSelector from "@/components/UserSelector";
import {getChannelList} from "@/api/ecw/channel";
export default { export default {
name: "EcwOrderCargocontrol", name: "EcwOrderCargocontrol",
components: { components: {
UpdateReleaseLimit, UpdateReleaseLimit,
CargoLogList, CargoLogList,
UserSelector,
CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo, Fallback CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo, Fallback
}, },
data() { data() {
...@@ -334,6 +352,7 @@ export default { ...@@ -334,6 +352,7 @@ export default {
pickInfo: null, // 当前操作的提货信息 pickInfo: null, // 当前操作的提货信息
showLogOrderId: null, // 显示控货日志的订单ID showLogOrderId: null, // 显示控货日志的订单ID
showUpdateReleaseLimit: null, // 显示修改放货限制的订单 showUpdateReleaseLimit: null, // 显示修改放货限制的订单
channelList: [],
AddressProvince: [], AddressProvince: [],
AddressCity: [], AddressCity: [],
AddressTown: [], AddressTown: [],
...@@ -413,7 +432,6 @@ export default { ...@@ -413,7 +432,6 @@ export default {
this.destWarehouseId == "" this.destWarehouseId == ""
) { ) {
//获取当前城市值id,获取该城市下区域 //获取当前城市值id,获取该城市下区域
} else if ( } else if (
this.destCountryId == "" && this.destCountryId == "" &&
this.objectiveId == "" && this.objectiveId == "" &&
...@@ -459,6 +477,7 @@ export default { ...@@ -459,6 +477,7 @@ export default {
getProductAttrList().then(res => this.productAttrList = res.data) getProductAttrList().then(res => this.productAttrList = res.data)
// getTradeCityList().then(res => this.tradeCityList = res.data) // getTradeCityList().then(res => this.tradeCityList = res.data)
getWarehouseList().then(res => this.warehouseList = res.data) getWarehouseList().then(res => this.warehouseList = res.data)
getChannelList().then(res => this.channelList = res.data)
this.getAddressProvince() this.getAddressProvince()
this.getAddressCity() this.getAddressCity()
this.getAddressTown() this.getAddressTown()
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
ref="queryForm" ref="queryForm"
size="small" size="small"
:inline="true" :inline="true"
v-show="showSearch"
label-width="100px" label-width="100px"
> >
<el-row> <el-row>
...@@ -37,6 +36,7 @@ ...@@ -37,6 +36,7 @@
:placeholder="$t('请选择结束日期')" :placeholder="$t('请选择结束日期')"
/> />
</el-form-item> </el-form-item>
<!--
<el-form-item :label="$t('始发仓')" prop="destinationId"> <el-form-item :label="$t('始发仓')" prop="destinationId">
<el-select <el-select
v-model="queryParams.originId" v-model="queryParams.originId"
...@@ -51,6 +51,77 @@ ...@@ -51,6 +51,77 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
-->
<div>
<el-form-item :label="$t('始发仓')" prop="startWarehouseIds">
<el-select
v-model="queryParams.startWarehouseIds"
multiple
:placeholder="$t('请选择始发仓')"
clearable
>
<el-option
v-for="item in exportWarehouseList"
:label="$l(item, 'title')"
:value="item.id"
:key="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的国')" prop="destCountryId">
<el-select
v-model="destCountryId"
multiple
:label="destCountryId"
:placeholder="$t('请选择目的国')"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressProvince"
:key="item.guojia"
:label="item.guojiaName"
:value="item.guojia"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的城市')" prop="objectiveId">
<el-select
v-model="objectiveId"
multiple
:placeholder="$t('请选择目的城市')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressCity"
:key="item.shi"
:label="item.shiName"
:value="item.shi"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select
v-model="destWarehouseId"
multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</div>
<!--
<el-form-item :label="$t('目的仓')" prop="destinationId"> <el-form-item :label="$t('目的仓')" prop="destinationId">
<el-select <el-select
v-model="queryParams.destinationId" v-model="queryParams.destinationId"
...@@ -66,7 +137,8 @@ ...@@ -66,7 +137,8 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item :label="$t('始发地')+':'"> -->
<!-- <el-form-item :label="$t('始发地')+':'">
<el-select v-model="queryParams.originId" :placeholder="$t('请选择始发地')" clearable> <el-select v-model="queryParams.originId" :placeholder="$t('请选择始发地')" clearable>
<el-option v-for="item in expoerCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option> <el-option v-for="item in expoerCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select> </el-select>
...@@ -78,7 +150,7 @@ ...@@ -78,7 +150,7 @@
</el-form-item> --> </el-form-item> -->
</el-row> </el-row>
<el-row> <el-row>
<el-form-item :label="$t('运输方式') + ':'"> <el-form-item :label="$t('运输方式') + ':'" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_TRANSPORT_TYPE" :type="DICT_TYPE.ECW_TRANSPORT_TYPE"
:clearable="true" :clearable="true"
...@@ -93,9 +165,10 @@ ...@@ -93,9 +165,10 @@
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('跟进客服')" prop="salesmanId"> <el-form-item :label="$t('跟进客服')" prop="salesmanIds">
<el-select <el-select
v-model="queryParams.salesmanId" v-model="queryParams.salesmanIds"
multiple
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
clearable clearable
> >
...@@ -111,7 +184,8 @@ ...@@ -111,7 +184,8 @@
<!--嵌套一个form来脱离disabled控制--> <!--嵌套一个form来脱离disabled控制-->
<selector <selector
:clearable="true" :clearable="true"
v-model="queryParams.channelId" v-model="queryParams.channelIds"
multiple
:options="channelList" :options="channelList"
value-field="channelId" value-field="channelId"
:label-field="$l(null, 'name')" :label-field="$l(null, 'name')"
...@@ -119,7 +193,7 @@ ...@@ -119,7 +193,7 @@
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item :label="$t('控货') + ':'"> <el-form-item :label="$t('控货') + ':'" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_YESNO" :type="DICT_TYPE.ECW_YESNO"
:clearable="true" :clearable="true"
...@@ -131,13 +205,13 @@ ...@@ -131,13 +205,13 @@
<dict-selector <dict-selector
:type="DICT_TYPE.ORDER_EXCEPTION_STATUS" :type="DICT_TYPE.ORDER_EXCEPTION_STATUS"
:clearable="true" :clearable="true"
v-model="queryParams.orderExceptionStatus" v-model="queryParams.orderExceptionStatusList"
multiple
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('异常类型') + ':'"> <el-form-item :label="$t('异常类型') + ':'">
<dict-selector <dict-selector
:multiple="true"
:type="DICT_TYPE.ORDER_ERROR_TYPE" :type="DICT_TYPE.ORDER_ERROR_TYPE"
:clearable="true" :clearable="true"
v-model="queryParams.orderExceptionType" v-model="queryParams.orderExceptionType"
...@@ -184,7 +258,7 @@ ...@@ -184,7 +258,7 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('唛头') + ':'"> <el-form-item :label="$t('唛头') + ':'" v-show="showSearch">
<el-input <el-input
v-model="queryParams.marks" v-model="queryParams.marks"
:placeholder="$t('请输入唛头')" :placeholder="$t('请输入唛头')"
...@@ -217,11 +291,12 @@ ...@@ -217,11 +291,12 @@
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item :label="$t('备案') + ':'"> <el-form-item :label="$t('备案') + ':'" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
:clearable="true" :clearable="true"
v-model="queryParams.productRecord" v-model="queryParams.productRecord"
multiple
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
...@@ -240,7 +315,7 @@ ...@@ -240,7 +315,7 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('外部仓')" prop="number" v-show="showSearch">
<el-select <el-select
v-model="queryParams.isExternalWarehouse" v-model="queryParams.isExternalWarehouse"
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
...@@ -251,7 +326,7 @@ ...@@ -251,7 +326,7 @@
<el-option :label="$t('自有仓')" :value="0"></el-option> <el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('特需')" prop="packageType"> <el-form-item :label="$t('特需')" prop="packageType" v-show="showSearch">
<el-select <el-select
v-model="queryParams.packageTypeArr" v-model="queryParams.packageTypeArr"
multiple multiple
...@@ -822,7 +897,7 @@ import { getWarehouseList } from "@/api/ecw/warehouse"; ...@@ -822,7 +897,7 @@ import { getWarehouseList } from "@/api/ecw/warehouse";
import Template from "@/views/cms/template/index.vue"; import Template from "@/views/cms/template/index.vue";
import { getChannelList } from "@/api/ecw/channel"; import { getChannelList } from "@/api/ecw/channel";
import Selector from "@/components/Selector"; import Selector from "@/components/Selector";
import {getRegionList} from "@/api/ecw/order"
export default { export default {
name: "EcwOrderException", name: "EcwOrderException",
components: { components: {
...@@ -833,6 +908,8 @@ export default { ...@@ -833,6 +908,8 @@ export default {
}, },
data() { data() {
return { return {
// 显示搜索条件
showSearch: true,
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 显示搜索条件 // 显示搜索条件
...@@ -856,6 +933,12 @@ export default { ...@@ -856,6 +933,12 @@ export default {
totalData: {}, totalData: {},
followUpList: [], followUpList: [],
channelList: [], // 出货取到 channelList: [], // 出货取到
AddressProvince: [],
AddressCity: [],
AddressTown: [],
destCountryId: null,
objectiveId: null,
destWarehouseId: null,
}; };
}, },
activated() { activated() {
...@@ -873,6 +956,81 @@ export default { ...@@ -873,6 +956,81 @@ export default {
}); });
getWarehouseList().then((res) => (this.warehouseList = res.data)); getWarehouseList().then((res) => (this.warehouseList = res.data));
// userList('salesman').then(res =>this.creatorData = res.data) // userList('salesman').then(res =>this.creatorData = res.data)
this.getAddressProvince()
this.getAddressCity()
this.getAddressTown()
},
watch:{
destCountryId: {
//监听当前地区值的变化,于与上方地区值进行了双向绑定
deep: true, //深度监听
handler() {
//每当值省份值改变时其下地区值进行清空
this.AddressCity = [];
this.AddressTown = [];
this.objectiveId = "";
this.destWarehouseId = "";
this.findByprovinceCode();
if (this.destCountryId == "") {
this.getAddressCity()
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
objectiveId: {
deep: true, //深度监听
handler() {
this.AddressTown = [];
this.destWarehouseId = "";
this.findBycityCode();
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
} else if (
this.destCountryId == "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.findByprovinceCode();
this.getAddressTown()
}
},
},
destWarehouseId: {
deep: true, //深度监听
handler() {
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
this.findBycityCode();
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
}, },
computed: { computed: {
expoerCityList() { expoerCityList() {
...@@ -893,6 +1051,7 @@ export default { ...@@ -893,6 +1051,7 @@ export default {
); );
}, },
}, },
methods: { methods: {
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
...@@ -904,6 +1063,18 @@ export default { ...@@ -904,6 +1063,18 @@ export default {
params.packageType = params.packageTypeArr.join(","); params.packageType = params.packageTypeArr.join(",");
delete params.packageTypeArr; delete params.packageTypeArr;
} }
//目的国
if (this.destCountryId != null && this.destCountryId != "") {
params.destCountryIds = this.destCountryId;
}
//目的城市
if (this.objectiveId != null && this.objectiveId != "") {
params.objectiveIds = this.objectiveId;
}
//目的仓
if (this.destWarehouseId != null && this.destWarehouseId != "") {
params.destWarehouseIds = this.destWarehouseId;
}
// 执行查询 // 执行查询
getOrderExceptionPage(params).then((response) => { getOrderExceptionPage(params).then((response) => {
this.list = response.data.list; this.list = response.data.list;
...@@ -990,6 +1161,37 @@ export default { ...@@ -990,6 +1161,37 @@ export default {
}); });
} }
}, },
getAddressProvince() {
getRegionList(1, 1).then(({ data }) => {
this.AddressProvince = data;
})
},
getAddressCity() {
getRegionList(4, 4).then(({ data }) => {
this.AddressCity = data;
})
},
getAddressTown() {
getRegionList(5, 5).then(({ data }) => {
this.AddressTown = data;
})
},
findByprovinceCode() {
if (this.destCountryId != null && this.destCountryId != '') {
//获取当前省份值id,获取该省份下城市 destCountryId provinceCode
getRegionList(2, this.destCountryId).then(({ data }) => {
this.AddressCity = data;
})
}
},
findBycityCode() {
if (this.objectiveId != null && this.objectiveId != '') {
//获取当前城市值id,获取该城市下区域
getRegionList(3, this.objectiveId).then(({ data }) => {
this.AddressTown = data;
})
}
}
}, },
}; };
</script> </script>
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
ref="queryForm" ref="queryForm"
size="small" size="small"
:inline="true" :inline="true"
v-show="showSearch"
> >
<el-form-item :label="$t('编号')" prop="orderNo"> <el-form-item :label="$t('编号')" prop="orderNo">
<el-input <el-input
...@@ -35,7 +34,7 @@ ...@@ -35,7 +34,7 @@
:placeholder="$t('发货人')" :placeholder="$t('发货人')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/\s+/g, '')" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('收货人')" prop="consigneeKey"> <el-form-item :label="$t('收货人')" prop="consigneeKey">
...@@ -44,7 +43,7 @@ ...@@ -44,7 +43,7 @@
:placeholder="$t('收货人')" :placeholder="$t('收货人')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/\s+/g, '')" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/> />
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
...@@ -102,12 +101,11 @@ ...@@ -102,12 +101,11 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('目的城市')" prop="objectiveId"> <el-form-item :label="$t('目的城市')" prop="objectiveId">
<el-select <el-select
v-model="objectiveId" v-model="objectiveId"
multiple multiple
:placeholder="$t('请根据目的国选择目的城市')" :placeholder="$t('请选择目的城市')"
style="width: 200px" style="width: 200px"
clearable clearable
@change="handleQuery" @change="handleQuery"
...@@ -120,12 +118,11 @@ ...@@ -120,12 +118,11 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> <el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select <el-select
v-model="destWarehouseId" v-model="destWarehouseId"
multiple multiple
:placeholder="$t('请根据目的城市选择目的仓')" :placeholder="$t('请选择目的仓')"
style="width: 200px" style="width: 200px"
clearable clearable
@change="handleQuery" @change="handleQuery"
...@@ -153,10 +150,11 @@ ...@@ -153,10 +150,11 @@
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item :label="$t('商品分类')" prop="goodsType"> <el-form-item :label="$t('商品类型')" prop="goodsTypes" v-show="showSearch">
<selector v-model="queryParams.goodsType" :options="productAttrList" label-field="attrName" value-field="id"> <selector v-model="queryParams.goodsTypes" multiple :options="productAttrList" label-field="attrName" value-field="id">
</selector> </selector>
</el-form-item> </el-form-item>
<!--
<el-form-item :label="$t('品名')" prop="prodId"> <el-form-item :label="$t('品名')" prop="prodId">
<product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" /> <product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" />
</el-form-item> </el-form-item>
...@@ -165,7 +163,7 @@ ...@@ -165,7 +163,7 @@
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> --> </el-form-item> -->
<el-form-item :label="$t('商品')" prop="tidanNo"> <el-form-item :label="$t('商品')" prop="tidanNo" v-show="showSearch">
<el-input <el-input
v-model.trim="prodParam.value" v-model.trim="prodParam.value"
:placeholder="$t('请输入商品类型、品名或品牌')" :placeholder="$t('请输入商品类型、品名或品牌')"
...@@ -184,7 +182,7 @@ ...@@ -184,7 +182,7 @@
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item :label="$t('控货')" prop="isCargoControl"> <el-form-item :label="$t('控货')" prop="isCargoControl" v-show="showSearch">
<dict-selector <dict-selector
v-model="queryParams.isCargoControl" v-model="queryParams.isCargoControl"
:type="DICT_TYPE.INFRA_BOOLEAN_STRING" :type="DICT_TYPE.INFRA_BOOLEAN_STRING"
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('入仓类型')" prop="warehouseType"> <el-form-item :label="$t('入仓类型')" prop="warehouseType" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_WAREHOUSING_TYPE" :type="DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model="queryParams.warehouseTypes" v-model="queryParams.warehouseTypes"
...@@ -205,13 +203,14 @@ ...@@ -205,13 +203,14 @@
<el-form-item :label="$t('客户经理')"> <el-form-item :label="$t('客户经理')">
<user-selector <user-selector
manage manage
v-model="queryParams.salesmanId" v-model="queryParams.salesmanIds"
multiple
clearable clearable
@change="handleQuery" @change="handleQuery"
:prepend="{ id: 0, nickname: $t('未分配客户经理') }" :prepend="{ id: 0, nickname: $t('未分配客户经理') }"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单状态')" prop="statusList"> <el-form-item :label="$t('态')" prop="statusList">
<dict-selector <dict-selector
:type="DICT_TYPE.ORDER_STATUS" :type="DICT_TYPE.ORDER_STATUS"
multiple multiple
...@@ -222,7 +221,7 @@ ...@@ -222,7 +221,7 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsTypes"> <el-form-item :label="$t('报关方式')" prop="customsTypes" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_CUSTOMS_TYPE" :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
multiple multiple
...@@ -231,7 +230,7 @@ ...@@ -231,7 +230,7 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('是否齐货')"> <el-form-item :label="$t('是否齐货')" v-show="showSearch">
<!--//字段存疑--> <!--//字段存疑-->
<dict-selector <dict-selector
v-model="queryParams.isNeat" v-model="queryParams.isNeat"
...@@ -248,16 +247,16 @@ ...@@ -248,16 +247,16 @@
<el-input style="width: 100px;" v-model="denominator" placeholder="" clearable @change="denominatorChange" <el-input style="width: 100px;" v-model="denominator" placeholder="" clearable @change="denominatorChange"
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery" />
</el-form-item> --> </el-form-item> -->
<el-form-item :label="$t('备案属性')" prop="productRecord"> <el-form-item :label="$t('备案属性')" prop="productRecords" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
multiple multiple
v-model="queryParams.productRecord" v-model="queryParams.productRecords"
clearable clearable
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('快递单号')" prop="number"> <el-form-item :label="$t('快递单号')" prop="number" v-show="showSearch">
<el-input <el-input
v-model="queryParams.number" v-model="queryParams.number"
:placeholder="$t('快递单号')" :placeholder="$t('快递单号')"
...@@ -266,7 +265,7 @@ ...@@ -266,7 +265,7 @@
onkeyup="this.value=this.value.replace(/\s+/g, '')" onkeyup="this.value=this.value.replace(/\s+/g, '')"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('外部仓')" prop="number" v-show="showSearch">
<el-select <el-select
v-model="queryParams.isExternalWarehouse" v-model="queryParams.isExternalWarehouse"
multiple multiple
...@@ -279,7 +278,7 @@ ...@@ -279,7 +278,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('异常状态')" prop="abnormalStateList"> <el-form-item :label="$t('异常状态')" prop="abnormalStateList" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ORDER_ABNORMAL_STATE" :type="DICT_TYPE.ORDER_ABNORMAL_STATE"
multiple multiple
...@@ -289,7 +288,7 @@ ...@@ -289,7 +288,7 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('审核状态')" prop="auditTypeList"> <el-form-item :label="$t('审核状态')" prop="auditTypeList" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE" :type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE"
multiple multiple
...@@ -299,9 +298,9 @@ ...@@ -299,9 +298,9 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单类型')" prop="number"> <el-form-item :label="$t('增值服务')" prop="types" v-show="showSearch">
<el-select <el-select
v-model="queryParams.type" v-model="queryParams.types"
multiple multiple
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
clearable clearable
...@@ -315,7 +314,7 @@ ...@@ -315,7 +314,7 @@
<!--空运多一个出货渠道筛选--> <!--空运多一个出货渠道筛选-->
<el-form-item <el-form-item
:label="$t('出货渠道')" :label="$t('出货渠道')"
prop="channelId" prop="channelIds"
v-if="channelList.length" v-if="channelList.length"
> >
<selector <selector
...@@ -323,10 +322,10 @@ ...@@ -323,10 +322,10 @@
:options="channelList" :options="channelList"
:label-field="$l('name')" :label-field="$l('name')"
value-field="channelId" value-field="channelId"
v-model="queryParams.channelId" v-model="queryParams.channelIds"
></selector> ></selector>
</el-form-item> </el-form-item>
<el-form-item :label="$t('特需')" prop="packageType"> <el-form-item :label="$t('特需')" prop="packageType" v-show="showSearch">
<el-select <el-select
v-model="queryParams.packageTypeArr" v-model="queryParams.packageTypeArr"
multiple multiple
...@@ -1634,13 +1633,12 @@ export default { ...@@ -1634,13 +1633,12 @@ export default {
if (this.destCountryId != null && this.destCountryId != "") { if (this.destCountryId != null && this.destCountryId != "") {
queryParams.destCountryIds = this.destCountryId; queryParams.destCountryIds = this.destCountryId;
} }
//目的城市
if (this.objectiveId != null && this.objectiveId != "") { if (this.objectiveId != null && this.objectiveId != "") {
//目的城市
queryParams.objectiveIds = this.objectiveId; queryParams.objectiveIds = this.objectiveId;
} }
//目的仓
if (this.destWarehouseId != null && this.destWarehouseId != "") { if (this.destWarehouseId != null && this.destWarehouseId != "") {
//目的仓
queryParams.destWarehouseIds = this.destWarehouseId; queryParams.destWarehouseIds = this.destWarehouseId;
} }
...@@ -1678,9 +1676,9 @@ export default { ...@@ -1678,9 +1676,9 @@ export default {
(res) => (this.currencyList = res.data.list) (res) => (this.currencyList = res.data.list)
); );
// 如果是空运(专线空运和海空联运)则获取渠道 // 如果是空运(专线空运和海空联运)则获取渠道
if (this.transportId == 3 || this.transportId == 4) { //if (this.transportId == 3 || this.transportId == 4) {
getChannelList().then((res) => (this.channelList = res.data)); getChannelList().then((res) => (this.channelList = res.data));
} //}
}, },
methods: { methods: {
init() { init() {
......
...@@ -8,10 +8,10 @@ ...@@ -8,10 +8,10 @@
</el-form-item> </el-form-item>
<el-form-item :label="$t('发货人')" prop="consignorKey"> <el-form-item :label="$t('发货人')" prop="consignorKey">
<el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('收货人')" prop="consigneeKey"> <el-form-item :label="$t('收货人')" prop="consigneeKey">
<el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
<dict-selector :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" :filter="(item) => item.value != 'PickTime'" v-model="dateFilterType" defaultable style="width: 150px; margin-right: 5px" /> <dict-selector :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" :filter="(item) => item.value != 'PickTime'" v-model="dateFilterType" defaultable style="width: 150px; margin-right: 5px" />
...@@ -23,82 +23,130 @@ ...@@ -23,82 +23,130 @@
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="$t('始发仓')" prop="startWarehouseId"> <div>
<el-select v-model="queryParams.startWarehouseId" :placeholder="$t('请选择始发仓')" clearable @change="handleQuery"> <el-form-item :label="$t('始发仓')" prop="startWarehouseIds">
<el-option v-for="item in exportWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option> <el-select v-model="queryParams.startWarehouseIds" :placeholder="$t('请选择始发仓')" clearable @change="handleQuery">
</el-select> <el-option v-for="item in exportWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-form-item> </el-select>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> </el-form-item>
<el-select v-model="queryParams.destWarehouseId" :placeholder="$t('请选择目的仓')" clearable @change="handleQuery"> <el-form-item :label="$t('目的国')" prop="destCountryId">
<el-option v-for="item in importWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option> <el-select
</el-select> v-model="destCountryId"
</el-form-item> multiple
:label="destCountryId"
:placeholder="$t('请选择目的国')"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressProvince"
:key="item.guojia"
:label="item.guojiaName"
:value="item.guojia"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的城市')" prop="objectiveId">
<el-select
v-model="objectiveId"
multiple
:placeholder="$t('请选择目的城市')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressCity"
:key="item.shi"
:label="item.shiName"
:value="item.shi"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select
v-model="destWarehouseId"
multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</div>
<!--<el-form-item :label="$t('运输方式')" prop="transportId"> <!--<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/> <dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/>
</el-form-item>--> </el-form-item>-->
<el-form-item :label="$t('商品')" prop="tidanNo"> <el-form-item :label="$t('商品')" prop="tidanNo" v-show="showSearch">
<el-input v-model="queryParams.prodKey" :placeholder="$t('请输入商品类型、品名或品牌')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" /> <el-input v-model="queryParams.prodKey" :placeholder="$t('请输入商品类型、品名或品牌')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<!--根据需求文档 lanbm 2024-06-23 隐藏 <!--根据需求文档 lanbm 2024-06-23-->
<el-form-item :label="$t('控货')" prop="isCargoControl"> <el-form-item :label="$t('控货')" prop="isCargoControl" v-show="showSearch">
<dict-selector v-model="queryParams.isCargoControl" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" clearable /> <dict-selector v-model="queryParams.isCargoControl" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" clearable />
</el-form-item>--> </el-form-item>
<!--根据需求文档 lanbm 2024-06-23 隐藏 <!--根据需求文档 lanbm 2024-06-23 隐藏-->
<el-form-item :label="$t('入仓类型')" prop="warehouseType"> <el-form-item :label="$t('入仓类型')" prop="warehouseType" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" v-model="queryParams.warehouseType" clearable/> <dict-selector :type="DICT_TYPE.ECW_WAREHOUSING_TYPE" v-model="queryParams.warehouseType" clearable/>
</el-form-item>--> </el-form-item>
<el-form-item :label="$t('客户经理')" > <el-form-item :label="$t('客户经理')" >
<user-selector manage v-model="queryParams.salesmanId" clearable @change="handleQuery" <user-selector manage v-model="queryParams.salesmanIds" multiple clearable @change="handleQuery"
:prepend="{ id: 0, nickname: $t('未分配客户经理')}"/> :prepend="{ id: 0, nickname: $t('未分配客户经理')}"/>
</el-form-item> </el-form-item>
<!--根据需求文档 lanbm 2024-06-23 隐藏 <!--根据需求文档 lanbm 2024-06-23 隐藏-->
<el-form-item :label="$t('订单状态')" prop="status"> <el-form-item :label="$t('订单状态')" prop="status" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ORDER_STATUS" v-model="queryParams.status" <dict-selector :type="DICT_TYPE.ORDER_STATUS" v-model="queryParams.status"
@keyup.enter.native="handleQuery" clearable /> @keyup.enter.native="handleQuery" clearable />
</el-form-item>--> </el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsType"> <el-form-item :label="$t('报关方式')" prop="customsType" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMS_TYPE" v-model="queryParams.customsType" clearable @change="handleQuery" /> <dict-selector :type="DICT_TYPE.ECW_CUSTOMS_TYPE" v-model="queryParams.customsType" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('是否齐货')" > <el-form-item :label="$t('是否齐货')" v-show="showSearch">
<!--// 字段存疑--> <!--// 字段存疑-->
<dict-selector v-model="queryParams.isNeat" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" clearable @change="handleQuery"/> <dict-selector v-model="queryParams.isNeat" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" clearable @change="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('备案属性')" prop="productRecord"> <el-form-item :label="$t('备案属性')" prop="productRecords" v-show="showSearch">
<dict-selector :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" v-model="queryParams.productRecord" clearable @change="handleQuery" /> <dict-selector :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" multiple v-model="queryParams.productRecords" multiple clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<!--lanbm 2024-06-23 根据需求文档隐藏 <!--lanbm 2024-06-23 根据需求文档隐藏-->
<el-form-item :label="$t('快递单号')" prop="number"> <el-form-item :label="$t('快递单号')" prop="number" v-show="showSearch">
<el-input v-model="queryParams.number" :placeholder="$t('快递单号')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.number" :placeholder="$t('快递单号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item>--> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('外部仓')" prop="number" v-show="showSearch">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery"> <el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option> <el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option> <el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('异常状态')" prop="status"> <el-form-item :label="$t('异常状态')" prop="status" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ORDER_ABNORMAL_STATE" v-model="queryParams.abnormalState" <dict-selector :type="DICT_TYPE.ORDER_ABNORMAL_STATE" v-model="queryParams.abnormalState"
@keyup.enter.native="handleQuery" clearable /> @keyup.enter.native="handleQuery" clearable />
</el-form-item> </el-form-item>
<el-form-item :label="$t('审核状态')" prop="status"> <el-form-item :label="$t('审核状态')" prop="status" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE" v-model="queryParams.auditType" <dict-selector :type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE" v-model="queryParams.auditType"
@keyup.enter.native="handleQuery" clearable /> @keyup.enter.native="handleQuery" clearable />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单类型')" prop="number"> <el-form-item :label="$t('增值服务')" prop="number" v-show="showSearch">
<el-select v-model="queryParams.type" :placeholder="$t('请选择')" clearable > <el-select v-model="queryParams.types" :placeholder="$t('请选择')" multiple clearable>
<el-option :label="$t('普通订单')" :value="0"></el-option> <el-option :label="$t('普通订单')" :value="0"></el-option>
<el-option :label="$t('集运服务')" :value="1"></el-option> <el-option :label="$t('集运服务')" :value="1"></el-option>
<el-option :label="$t('海外仓')" :value="2"></el-option> <el-option :label="$t('海外仓')" :value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('出货渠道')" prop="number"> <el-form-item :label="$t('出货渠道')" prop="number">
<selector clearable :options="channelList" :label-field="$l('name')" value-field="channelId" v-model="queryParams.channelId"></selector> <selector clearable :options="channelList" :label-field="$l('name')" value-field="channelId" v-model="queryParams.channelIds" multiple></selector>
</el-form-item> </el-form-item>
<el-form-item :label="$t('特需')" prop="packageType"> <el-form-item :label="$t('特需')" prop="packageType" v-show="showSearch">
<el-select v-model="queryParams.packageTypeArr" multiple :placeholder="$t('请选择')" clearable > <el-select v-model="queryParams.packageTypeArr" multiple :placeholder="$t('请选择')" clearable >
<template v-for="item in getDictDatas(DICT_TYPE.ORDER_SPECIAL_NEEDS)"> <template v-for="item in getDictDatas(DICT_TYPE.ORDER_SPECIAL_NEEDS)">
<el-option :label="$l(item, 'label')" :value="item.value"></el-option> <el-option :label="$l(item, 'label')" :value="item.value"></el-option>
...@@ -119,6 +167,10 @@ ...@@ -119,6 +167,10 @@
<el-button :disabled="!multipleSelection.length" type="primary" :loading="exporting" plain size="mini" @click="exportXls(ids)" v-hasPermi="['ecw:order:peddingList:export_selected']">{{$t('导出所选')}}</el-button> <el-button :disabled="!multipleSelection.length" type="primary" :loading="exporting" plain size="mini" @click="exportXls(ids)" v-hasPermi="['ecw:order:peddingList:export_selected']">{{$t('导出所选')}}</el-button>
<el-button type="primary" :loading="exporting" plain size="mini" @click="exportXls(queryParams)" v-hasPermi="['ecw:order:peddingList:export_search']">{{$t('导出搜索')}}</el-button> <el-button type="primary" :loading="exporting" plain size="mini" @click="exportXls(queryParams)" v-hasPermi="['ecw:order:peddingList:export_search']">{{$t('导出搜索')}}</el-button>
</el-col> </el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row> </el-row>
<!-- 列表 --> <!-- 列表 -->
...@@ -170,7 +222,7 @@ ...@@ -170,7 +222,7 @@
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="row.transportId" /> / {{row.dstWarehouseName}} <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="row.transportId" /> / {{row.dstWarehouseName}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('控货')" align="center" prop="isCargoControl"> <el-table-column :label="$t('控货')" align="center" prop="isCargoControl" v-show="showSearch">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="row.isCargoControl" /> <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="row.isCargoControl" />
</template> </template>
...@@ -260,6 +312,8 @@ import SplitRevoke from "@/views/ecw/order/components/SplitRevoke"; ...@@ -260,6 +312,8 @@ import SplitRevoke from "@/views/ecw/order/components/SplitRevoke";
import {getChannelList} from "@/api/ecw/channel"; import {getChannelList} from "@/api/ecw/channel";
import ImageAndVideoUpload from "@/components/ImageAndVideoUpload"; import ImageAndVideoUpload from "@/components/ImageAndVideoUpload";
import Template from "@/views/cms/template/index.vue"; import Template from "@/views/cms/template/index.vue";
import {getRegionList} from "@/api/ecw/order"
export default { export default {
name: "EcwOrderPenddinglist", name: "EcwOrderPenddinglist",
components: { components: {
...@@ -275,8 +329,10 @@ export default { ...@@ -275,8 +329,10 @@ export default {
}, },
data() { data() {
return { return {
// 导出中 // 显示搜索条件
exporting: false, showSearch: true,
// 导出中
exporting: false,
// 选中数组 // 选中数组
ids: [], ids: [],
// 非单个禁用 // 非单个禁用
...@@ -328,13 +384,89 @@ export default { ...@@ -328,13 +384,89 @@ export default {
}, trigger: 'change' }, trigger: 'change'
} }
] ]
} },
AddressProvince: [],
AddressCity: [],
AddressTown: [],
destCountryId: null,
objectiveId: null,
destWarehouseId: null,
}; };
}, },
watch:{ watch:{
isChinese(){ isChinese(){
this.getList() this.getList()
} },
destCountryId: {
//监听当前地区值的变化,于与上方地区值进行了双向绑定
deep: true, //深度监听
handler() {
//每当值省份值改变时其下地区值进行清空
this.AddressCity = [];
this.AddressTown = [];
this.objectiveId = "";
this.destWarehouseId = "";
this.findByprovinceCode();
if (this.destCountryId == "") {
this.getAddressCity()
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
objectiveId: {
deep: true, //深度监听
handler() {
this.AddressTown = [];
this.destWarehouseId = "";
this.findBycityCode();
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
} else if (
this.destCountryId == "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.findByprovinceCode();
this.getAddressTown()
}
},
},
destWarehouseId: {
deep: true, //深度监听
handler() {
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
this.findBycityCode();
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
}, },
computed: { computed: {
isChinese(){ isChinese(){
...@@ -348,13 +480,25 @@ export default { ...@@ -348,13 +480,25 @@ export default {
return this.warehouseList.filter(item => item.tradeType == 1 || item.tradeType == 3) return this.warehouseList.filter(item => item.tradeType == 1 || item.tradeType == 3)
}, },
combinedQueryParams(){ combinedQueryParams(){
let timeParams = {} let timeParams = {}
if(this.dateFilterType && this.dateFilter){ if(this.dateFilterType && this.dateFilter){
timeParams['begin' + this.dateFilterType] = this.dateFilter[0] timeParams['begin' + this.dateFilterType] = this.dateFilter[0]
timeParams['end' + this.dateFilterType] = this.dateFilter[1] timeParams['end' + this.dateFilterType] = this.dateFilter[1]
} }
let queryParams = Object.assign({}, this.queryParams, timeParams) let queryParams = {}
return queryParams //目的国
if (this.destCountryId != null && this.destCountryId != "") {
queryParams.destCountryIds = this.destCountryId;
}
//目的城市
if (this.objectiveId != null && this.objectiveId != "") {
queryParams.objectiveIds = this.objectiveId;
}
//目的仓
if (this.destWarehouseId != null && this.destWarehouseId != "") {
queryParams.destWarehouseIds = this.destWarehouseId;
}
return Object.assign({}, this.queryParams, timeParams, queryParams)
}, },
currencyMap(){ currencyMap(){
let map = {} let map = {}
...@@ -367,6 +511,7 @@ export default { ...@@ -367,6 +511,7 @@ export default {
activated(){ activated(){
this.getList() this.getList()
this.$store.dispatch('getBadgeData') this.$store.dispatch('getBadgeData')
}, },
created() { created() {
this.getList(); this.getList();
...@@ -377,6 +522,9 @@ export default { ...@@ -377,6 +522,9 @@ export default {
getChannelList().then(res => this.channelList = res.data) getChannelList().then(res => this.channelList = res.data)
this.$store.dispatch('getBadgeData') this.$store.dispatch('getBadgeData')
this.getAddressProvince()
this.getAddressCity()
this.getAddressTown()
}, },
methods: { methods: {
/** 查询列表 */ /** 查询列表 */
...@@ -409,7 +557,7 @@ export default { ...@@ -409,7 +557,7 @@ export default {
rows: 10 rows: 10
} }
this.dateFilter = [] this.dateFilter = []
this.queryParams.channelId = '' // this.queryParams.channelId = ''
this.handleQuery(); this.handleQuery();
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
...@@ -468,35 +616,66 @@ export default { ...@@ -468,35 +616,66 @@ export default {
} }
}) })
}, },
specialRendering(val){ specialRendering(val){
console.log('val', val) console.log('val', val)
if(val !== undefined){ if(val !== undefined){
let i = val.split(',') let i = val.split(',')
return this.getDictDatas(this.DICT_TYPE.ORDER_SPECIAL_NEEDS).filter(e => { return this.getDictDatas(this.DICT_TYPE.ORDER_SPECIAL_NEEDS).filter(e => {
return i.indexOf(e.value) > -1 return i.indexOf(e.value) > -1
}).map(item => { }).map(item => {
// 打字开头的用最后一个字,否则取第一个字 // 打字开头的用最后一个字,否则取第一个字
item.symbol = item.label[0] == '' ? item.label[item.label.length-1]: item.label[0] item.symbol = item.label[0] == '' ? item.label[item.label.length-1]: item.label[0]
return item return item
}) })
} }
}, },
deleteSpecial(id,orderId){ deleteSpecial(id,orderId){
this.$confirm(this.$t('确定删除此特需么?')).then(() => { this.$confirm(this.$t('确定删除此特需么?')).then(() => {
return orderSpecialNeed({orderId:orderId,advanceType:id}) return orderSpecialNeed({orderId:orderId,advanceType:id})
}).then(() => { }).then(() => {
this.getList() this.getList()
}) })
}, },
exportXls(params){ exportXls(params){
this.exporting = true this.exporting = true
const exportParams = Array.isArray(params) ? {orderIdList: params} : {...params} const exportParams = Array.isArray(params) ? {orderIdList: params} : {...params}
exportWaitingShipment(exportParams).then(res => { exportWaitingShipment(exportParams).then(res => {
this.$message.success(this.$t('已加入导出队列,请稍后在下载日志中下载')) this.$message.success(this.$t('已加入导出队列,请稍后在下载日志中下载'))
}).finally(() => { }).finally(() => {
this.exporting = false this.exporting = false
}) })
},
getAddressProvince() {
getRegionList(1, 1).then(({ data }) => {
this.AddressProvince = data;
})
},
getAddressCity() {
getRegionList(4, 4).then(({ data }) => {
this.AddressCity = data;
})
},
getAddressTown() {
getRegionList(5, 5).then(({ data }) => {
this.AddressTown = data;
})
},
findByprovinceCode() {
if (this.destCountryId != null && this.destCountryId != '') {
//获取当前省份值id,获取该省份下城市 destCountryId provinceCode
getRegionList(2, this.destCountryId).then(({ data }) => {
this.AddressCity = data;
})
} }
},
findBycityCode() {
if (this.objectiveId != null && this.objectiveId != '') {
//获取当前城市值id,获取该城市下区域
getRegionList(3, this.objectiveId).then(({ data }) => {
this.AddressTown = data;
})
}
}
} }
}; };
</script> </script>
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
:placeholder="$t('发货人')" :placeholder="$t('发货人')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('收货人')" prop="consigneeKey"> <el-form-item :label="$t('收货人')" prop="consigneeKey">
...@@ -26,6 +27,7 @@ ...@@ -26,6 +27,7 @@
:placeholder="$t('收货人')" :placeholder="$t('收货人')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/> />
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
...@@ -47,51 +49,80 @@ ...@@ -47,51 +49,80 @@
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="$t('始发仓')" prop="startWarehouseId"> <div>
<el-select <el-form-item :label="$t('始发仓')" prop="startWarehouseIds">
v-model="queryParams.startWarehouseId" <el-select v-model="queryParams.startWarehouseIds" :placeholder="$t('请选择始发仓')" clearable @change="handleQuery">
:placeholder="$t('请选择始发仓')" <el-option v-for="item in exportWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
clearable </el-select>
@change="handleQuery" </el-form-item>
> <el-form-item :label="$t('目的国')" prop="destCountryId">
<el-option <el-select
v-for="item in exportWarehouseList" v-model="destCountryId"
:label="$l(item, 'title')" multiple
:value="item.id" :label="destCountryId"
:key="item.id" :placeholder="$t('请选择目的国')"
></el-option> clearable
</el-select> @change="handleQuery"
</el-form-item> >
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> <el-option
<el-select v-for="item in AddressProvince"
v-model="queryParams.destWarehouseId" :key="item.guojia"
:placeholder="$t('请选择目的仓')" :label="item.guojiaName"
clearable :value="item.guojia"
@change="handleQuery" ></el-option>
> </el-select>
<el-option </el-form-item>
v-for="item in importWarehouseList" <el-form-item :label="$t('目的城市')" prop="objectiveId">
:label="$l(item, 'title')" <el-select
:value="item.id" v-model="objectiveId"
:key="item.id" multiple
></el-option> :placeholder="$t('请选择目的城市')"
</el-select> style="width: 200px"
</el-form-item> clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressCity"
:key="item.shi"
:label="item.shiName"
:value="item.shi"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select
v-model="destWarehouseId"
multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</div>
<!--<el-form-item :label="$t('运输方式')" prop="transportId"> <!--<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/> <dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/>
</el-form-item>--> </el-form-item>-->
<el-form-item :label="$t('商品')" prop="tidanNo"> <el-form-item :label="$t('商品')" prop="tidanNo" v-show="showSearch">
<el-input <el-input
v-model="queryParams.prodKey" v-model="queryParams.prodKey"
:placeholder="$t('请输入商品类型、品名或品牌')" :placeholder="$t('请输入商品类型、品名或品牌')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('控货')" prop="isCargoControl"> <el-form-item :label="$t('控货')" prop="isCargoControl" v-show="showSearch">
<dict-selector <dict-selector
v-model="queryParams.isCargoControl" v-model="queryParams.isCargoControl"
:type="DICT_TYPE.INFRA_BOOLEAN_STRING" :type="DICT_TYPE.INFRA_BOOLEAN_STRING"
...@@ -99,7 +130,7 @@ ...@@ -99,7 +130,7 @@
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('入仓类型')" prop="warehouseType"> <el-form-item :label="$t('入仓类型')" prop="warehouseType" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_WAREHOUSING_TYPE" :type="DICT_TYPE.ECW_WAREHOUSING_TYPE"
v-model="queryParams.warehouseType" v-model="queryParams.warehouseType"
...@@ -109,13 +140,14 @@ ...@@ -109,13 +140,14 @@
<el-form-item :label="$t('客户经理')"> <el-form-item :label="$t('客户经理')">
<user-selector <user-selector
manage manage
v-model="queryParams.salesmanId" v-model="queryParams.salesmanIds"
multiple
clearable clearable
@change="handleQuery" @change="handleQuery"
:prepend="{ id: 0, nickname: $t('未分配客户经理') }" :prepend="{ id: 0, nickname: $t('未分配客户经理') }"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单状态')" prop="status"> <el-form-item :label="$t('订单状态')" prop="status" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ORDER_STATUS" :type="DICT_TYPE.ORDER_STATUS"
v-model="queryParams.status" v-model="queryParams.status"
...@@ -123,7 +155,7 @@ ...@@ -123,7 +155,7 @@
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsType"> <el-form-item :label="$t('报关方式')" prop="customsType" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_CUSTOMS_TYPE" :type="DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model="queryParams.customsType" v-model="queryParams.customsType"
...@@ -131,7 +163,7 @@ ...@@ -131,7 +163,7 @@
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('是否齐货')"> <el-form-item :label="$t('是否齐货')" v-show="showSearch">
<!--// 字段存疑--> <!--// 字段存疑-->
<dict-selector <dict-selector
v-model="queryParams.isNeat" v-model="queryParams.isNeat"
...@@ -142,23 +174,25 @@ ...@@ -142,23 +174,25 @@
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('备案属性')" prop="productRecord"> <el-form-item :label="$t('备案属性')" prop="productRecord" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
v-model="queryParams.productRecord" v-model="queryParams.productRecord"
multiple
clearable clearable
@change="handleQuery" @change="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('快递单号')" prop="number"> <el-form-item :label="$t('快递单号')" prop="number" v-show="showSearch">
<el-input <el-input
v-model="queryParams.number" v-model="queryParams.number"
:placeholder="$t('快递单号')" :placeholder="$t('快递单号')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
onkeyup="this.value=this.value.replace(/\s+/g, '')"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('外部仓')" prop="number" v-show="showSearch">
<el-select <el-select
v-model="queryParams.isExternalWarehouse" v-model="queryParams.isExternalWarehouse"
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
...@@ -170,7 +204,7 @@ ...@@ -170,7 +204,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('异常状态')" prop="status"> <el-form-item :label="$t('异常状态')" prop="status" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ORDER_ABNORMAL_STATE" :type="DICT_TYPE.ORDER_ABNORMAL_STATE"
v-model="queryParams.abnormalState" v-model="queryParams.abnormalState"
...@@ -178,7 +212,7 @@ ...@@ -178,7 +212,7 @@
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('审核状态')" prop="status"> <el-form-item :label="$t('审核状态')" prop="status" v-show="showSearch">
<dict-selector <dict-selector
:type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE" :type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE"
v-model="queryParams.auditType" v-model="queryParams.auditType"
...@@ -186,9 +220,10 @@ ...@@ -186,9 +220,10 @@
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单类型')" prop="number"> <el-form-item :label="$t('增值服务')" prop="types" v-show="showSearch">
<el-select <el-select
v-model="queryParams.type" v-model="queryParams.types"
multiple
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
clearable clearable
> >
...@@ -197,15 +232,16 @@ ...@@ -197,15 +232,16 @@
<el-option :label="$t('海外仓')" :value="2"></el-option> <el-option :label="$t('海外仓')" :value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('出货渠道')" prop="number"> <el-form-item :label="$t('出货渠道')" prop="channelIds">
<selector <selector
:options="channelList" :options="channelList"
:label-field="$l('name')" :label-field="$l('name')"
value-field="channelId" value-field="channelId"
v-model="queryParams.channelId" v-model="queryParams.channelIds"
multiple
></selector> ></selector>
</el-form-item> </el-form-item>
<el-form-item :label="$t('特需')" prop="packageType"> <el-form-item :label="$t('特需')" prop="packageType" v-show="showSearch">
<el-select <el-select
v-model="queryParams.packageTypeArr" v-model="queryParams.packageTypeArr"
multiple multiple
...@@ -253,6 +289,10 @@ ...@@ -253,6 +289,10 @@
>{{ $t("导出搜索") }}</el-button >{{ $t("导出搜索") }}</el-button
> >
</el-col> </el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row> </el-row>
<!-- 列表 --> <!-- 列表 -->
...@@ -456,6 +496,7 @@ import { getCurrencyPage } from "@/api/ecw/currency"; ...@@ -456,6 +496,7 @@ import { getCurrencyPage } from "@/api/ecw/currency";
import SplitRevoke from "@/views/ecw/order/components/SplitRevoke"; import SplitRevoke from "@/views/ecw/order/components/SplitRevoke";
import { getChannelList } from "@/api/ecw/channel"; import { getChannelList } from "@/api/ecw/channel";
import Template from "@/views/cms/template/index.vue"; import Template from "@/views/cms/template/index.vue";
import {getRegionList} from "@/api/ecw/order"
export default { export default {
name: "EcwOrderStockinglist", name: "EcwOrderStockinglist",
components: { components: {
...@@ -478,6 +519,8 @@ export default { ...@@ -478,6 +519,8 @@ export default {
}, },
data() { data() {
return { return {
// 显示搜索条件
showSearch: true,
// 导出中状态 // 导出中状态
exporting: false, exporting: false,
// 选中数组 // 选中数组
...@@ -514,12 +557,88 @@ export default { ...@@ -514,12 +557,88 @@ export default {
}, },
currencyList: [], currencyList: [],
channelList: [], channelList: [],
AddressProvince: [],
AddressCity: [],
AddressTown: [],
destCountryId: null,
objectiveId: null,
destWarehouseId: null,
}; };
}, },
watch: { watch: {
isChinese() { isChinese() {
this.getList(); this.getList();
}, },
destCountryId: {
//监听当前地区值的变化,于与上方地区值进行了双向绑定
deep: true, //深度监听
handler() {
//每当值省份值改变时其下地区值进行清空
this.AddressCity = [];
this.AddressTown = [];
this.objectiveId = "";
this.destWarehouseId = "";
this.findByprovinceCode();
if (this.destCountryId == "") {
this.getAddressCity()
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
objectiveId: {
deep: true, //深度监听
handler() {
this.AddressTown = [];
this.destWarehouseId = "";
this.findBycityCode();
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
} else if (
this.destCountryId == "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.findByprovinceCode();
this.getAddressTown()
}
},
},
destWarehouseId: {
deep: true, //深度监听
handler() {
if (
this.objectiveId != "" &&
this.destCountryId != "" &&
this.destWarehouseId == ""
) {
//获取当前城市值id,获取该城市下区域
this.findBycityCode();
} else if (
this.destCountryId != "" &&
this.objectiveId == "" &&
this.destWarehouseId == ""
) {
this.getAddressTown()
}
},
},
}, },
computed: { computed: {
isChinese() { isChinese() {
...@@ -542,8 +661,20 @@ export default { ...@@ -542,8 +661,20 @@ export default {
timeParams["begin" + this.dateFilterType] = this.dateFilter[0]; timeParams["begin" + this.dateFilterType] = this.dateFilter[0];
timeParams["end" + this.dateFilterType] = this.dateFilter[1]; timeParams["end" + this.dateFilterType] = this.dateFilter[1];
} }
let queryParams = Object.assign({}, this.queryParams, timeParams); let queryParams = {}
return queryParams; //目的国
if (this.destCountryId != null && this.destCountryId != "") {
queryParams.destCountryIds = this.destCountryId;
}
//目的城市
if (this.objectiveId != null && this.objectiveId != "") {
queryParams.objectiveIds = this.objectiveId;
}
//目的仓
if (this.destWarehouseId != null && this.destWarehouseId != "") {
queryParams.destWarehouseIds = this.destWarehouseId;
}
return Object.assign({}, this.queryParams, timeParams, queryParams)
}, },
}, },
activated() { activated() {
...@@ -558,6 +689,9 @@ export default { ...@@ -558,6 +689,9 @@ export default {
(res) => (this.currencyList = res.data.list) (res) => (this.currencyList = res.data.list)
); );
getChannelList().then((res) => (this.channelList = res.data)); getChannelList().then((res) => (this.channelList = res.data));
this.getAddressProvince()
this.getAddressCity()
this.getAddressTown()
}, },
methods: { methods: {
/** 查询列表 */ /** 查询列表 */
...@@ -663,6 +797,37 @@ export default { ...@@ -663,6 +797,37 @@ export default {
this.getList(); this.getList();
}); });
}, },
getAddressProvince() {
getRegionList(1, 1).then(({ data }) => {
this.AddressProvince = data;
})
},
getAddressCity() {
getRegionList(4, 4).then(({ data }) => {
this.AddressCity = data;
})
},
getAddressTown() {
getRegionList(5, 5).then(({ data }) => {
this.AddressTown = data;
})
},
findByprovinceCode() {
if (this.destCountryId != null && this.destCountryId != '') {
//获取当前省份值id,获取该省份下城市 destCountryId provinceCode
getRegionList(2, this.destCountryId).then(({ data }) => {
this.AddressCity = data;
})
}
},
findBycityCode() {
if (this.objectiveId != null && this.objectiveId != '') {
//获取当前城市值id,获取该城市下区域
getRegionList(3, this.objectiveId).then(({ data }) => {
this.AddressTown = data;
})
}
}
}, },
}; };
</script> </script>
......
...@@ -6,87 +6,102 @@ ...@@ -6,87 +6,102 @@
<dict-selector defaultable :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" class="w-100 mr-10" /> <dict-selector defaultable :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" class="w-100 mr-10" />
<el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss" @change="handleQuery"></el-date-picker> <el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss" @change="handleQuery"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="$t('始发仓')" prop="startWarehouseIds"> <div>
<el-select v-model="queryParams.startWarehouseIds" multiple :placeholder="$t('请选择始发地')" clearable @change="handleQuery"> <el-form-item :label="$t('始发仓')" prop="startWarehouseIds">
<el-option v-for="item in exportWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option> <el-select v-model="queryParams.startWarehouseIds" multiple :placeholder="$t('请选择始发仓')" clearable @change="handleQuery">
</el-select> <el-option v-for="item in exportWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
</el-form-item> </el-select>
<el-form-item :label="$t('目的国')" prop="destCountryId"> </el-form-item>
<el-select <el-form-item :label="$t('目的国')" prop="destCountryId">
v-model="destCountryId" <el-select
multiple v-model="destCountryId"
:label="destCountryId" multiple
:placeholder="$t('请选择目的国')" :label="destCountryId"
clearable :placeholder="$t('请选择目的国')"
@change="handleQuery" clearable
> @change="handleQuery"
<el-option >
v-for="item in AddressProvince" <el-option
:key="item.guojia" v-for="item in AddressProvince"
:label="item.guojiaName" :key="item.guojia"
:value="item.guojia" :label="item.guojiaName"
></el-option> :value="item.guojia"
</el-select> ></el-option>
</el-form-item> </el-select>
<el-form-item :label="$t('目的城市')" prop="objectiveId"> </el-form-item>
<el-select <el-form-item :label="$t('目的城市')" prop="objectiveId">
v-model="objectiveId" <el-select
v-model="objectiveId"
multiple
:placeholder="$t('请选择目的城市')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressCity"
:key="item.shi"
:label="item.shiName"
:value="item.shi"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select
v-model="destWarehouseId"
multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</div>
<el-form-item :label="$t('客户经理')">
<user-selector
manage
v-model="queryParams.salesmanIds"
multiple multiple
:placeholder="$t('请选择目的城市')"
style="width: 200px"
clearable clearable
@change="handleQuery" @change="handleQuery"
> :prepend="{ id: 0, nickname: $t('未分配客户经理') }"
<el-option />
v-for="item in AddressCity"
:key="item.shi"
:label="item.shiName"
:value="item.shi"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> <el-form-item :label="$t('运输方式')" prop="transportId" v-show="showSearch">
<el-select
v-model="destWarehouseId"
multiple
:placeholder="$t('请选择目的仓')"
style="width: 200px"
clearable
@change="handleQuery"
>
<el-option
v-for="item in AddressTown"
:key="item.id"
:label="item.titleZh"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/> <dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model.number="queryParams.transportId" clearable @change="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('出货渠道')" prop="channelIds">
<selector clearable :options="channelList" :label-field="$l('name')" value-field="channelId" v-model="queryParams.channelIds" multiple></selector>
</el-form-item>
<el-form-item :label="$t('订单编号')" prop="orderNo"> <el-form-item :label="$t('订单编号')" prop="orderNo">
<el-input v-model="queryParams.orderNo" :placeholder="$t('订单编号')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.orderNo" :placeholder="$t('订单编号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('品名')" prop="prodId"> <el-form-item :label="$t('商品')" prop="prodId" v-show="showSearch">
<product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" clearable @change="handleQuery"/> <product-selector v-model="queryParams.prodId" @keyup.enter.native="handleQuery" clearable @change="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('控货状态')" prop="isCargoControl"> <el-form-item :label="$t('控货状态')" prop="isCargoControl">
<dict-selector v-model="queryParams.cargoControlStatus" :type="DICT_TYPE.CONTROL_GOODS_STATUS" clearable @change="handleQuery"/> <dict-selector v-model="queryParams.cargoControlStatusList" multiple :type="DICT_TYPE.CONTROL_GOODS_STATUS" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单状态')" prop="statusList"> <el-form-item :label="$t('订单状态')" prop="statusList" v-show="showSearch">
<dict-selector :type="DICT_TYPE.ORDER_STATUS" multiple v-model="queryParams.statusList" <dict-selector :type="DICT_TYPE.ORDER_STATUS" multiple v-model="queryParams.statusList"
@keyup.enter.native="handleQuery" clearable @change="handleQuery" /> @keyup.enter.native="handleQuery" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('提单号')" prop="tidanNo"> <el-form-item :label="$t('提单号')" prop="tidanNo">
<el-input v-model="queryParams.tidanNo" :placeholder="$t('提单号')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.tidanNo" :placeholder="$t('提单号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('发货人')" prop="consignorKey"> <el-form-item :label="$t('发货人')" prop="consignorKey">
<el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.consignorKey" :placeholder="$t('发货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('收货人')" prop="consigneeKey"> <el-form-item :label="$t('收货人')" prop="consigneeKey">
<el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.consigneeKey" :placeholder="$t('收货人')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsTypes"> <el-form-item :label="$t('报关方式')" prop="customsTypes">
...@@ -94,15 +109,24 @@ ...@@ -94,15 +109,24 @@
</el-form-item> </el-form-item>
<el-form-item :label="$t('唛头')" prop="marks"> <el-form-item :label="$t('唛头')" prop="marks">
<el-input v-model="queryParams.marks" :placeholder="$t('唛头')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.marks" :placeholder="$t('唛头')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/\s+/g, '')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('备案属性')" prop="productRecords" v-show="showSearch">
<dict-selector
:type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE"
multiple
v-model="queryParams.productRecords"
clearable
@change="handleQuery"
/>
</el-form-item>
<el-form-item :label="$t('外部仓')" prop="isExternalWarehouse" v-show="showSearch">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery"> <el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
<el-option :label="$t('外部仓')" :value="1"></el-option> <el-option :label="$t('外部仓')" :value="1"></el-option>
<el-option :label="$t('自有仓')" :value="0"></el-option> <el-option :label="$t('自有仓')" :value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('订单类型')" prop="number"> <el-form-item :label="$t('增值服务')" prop="type" v-show="showSearch">
<el-select v-model="queryParams.type" :placeholder="$t('请选择')" clearable @change="handleQuery" > <el-select v-model="queryParams.type" :placeholder="$t('请选择')" clearable @change="handleQuery" >
<el-option :label="$t('普通订单')" :value="0"></el-option> <el-option :label="$t('普通订单')" :value="0"></el-option>
<el-option :label="$t('集运服务')" :value="1"></el-option> <el-option :label="$t('集运服务')" :value="1"></el-option>
...@@ -192,10 +216,14 @@ import Fallback from './components/Fallback' ...@@ -192,10 +216,14 @@ import Fallback from './components/Fallback'
import {getWarehouseList} from '@/api/ecw/warehouse' import {getWarehouseList} from '@/api/ecw/warehouse'
import CargoLogList from "@/views/ecw/order/components/CargoLogList.vue"; import CargoLogList from "@/views/ecw/order/components/CargoLogList.vue";
import {getRegionList} from "@/api/ecw/order" import {getRegionList} from "@/api/ecw/order"
import UserSelector from "@/components/UserSelector";
import {getChannelList} from "@/api/ecw/channel";
export default { export default {
name: "EcwOrderCargocontrol", name: "EcwOrderWarningCargocontrol",
components: { components: {
CargoLogList, CargoLogList,
UserSelector,
CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo, Fallback CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo, Fallback
}, },
data() { data() {
...@@ -236,6 +264,7 @@ export default { ...@@ -236,6 +264,7 @@ export default {
showFallbackOrder: null, // 调货订单 showFallbackOrder: null, // 调货订单
pickInfo: null, // 当前操作的提货信息 pickInfo: null, // 当前操作的提货信息
showLogOrderId: null, // 显示控货日志的订单ID showLogOrderId: null, // 显示控货日志的订单ID
channelList: [],
AddressProvince: [], AddressProvince: [],
AddressCity: [], AddressCity: [],
AddressTown: [], AddressTown: [],
...@@ -315,7 +344,6 @@ export default { ...@@ -315,7 +344,6 @@ export default {
this.destWarehouseId == "" this.destWarehouseId == ""
) { ) {
//获取当前城市值id,获取该城市下区域 //获取当前城市值id,获取该城市下区域
} else if ( } else if (
this.destCountryId == "" && this.destCountryId == "" &&
this.objectiveId == "" && this.objectiveId == "" &&
...@@ -361,6 +389,7 @@ export default { ...@@ -361,6 +389,7 @@ export default {
getProductAttrList().then(res => this.productAttrList = res.data) getProductAttrList().then(res => this.productAttrList = res.data)
// getTradeCityList().then(res => this.tradeCityList = res.data) // getTradeCityList().then(res => this.tradeCityList = res.data)
getWarehouseList().then(res => this.warehouseList = res.data) getWarehouseList().then(res => this.warehouseList = res.data)
getChannelList().then(res => this.channelList = res.data)
this.getAddressProvince() this.getAddressProvince()
this.getAddressCity() this.getAddressCity()
this.getAddressTown() this.getAddressTown()
......
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