Commit b3b0497c authored by liuzeheng's avatar liuzeheng

报价、复制价格

parent f143f192
...@@ -1056,3 +1056,11 @@ export function getOrderWarehouseDeleted(orderId,orderItem){ ...@@ -1056,3 +1056,11 @@ export function getOrderWarehouseDeleted(orderId,orderItem){
}) })
} }
//获得目的国、目的城市、目的仓
export function getWarehouseTreeRegionList(tradeType){
return request({
url:'/ecw/warehouse/getWarehouseTreeRegionList?tradeType=1',
method: 'get'
})
}
...@@ -159,3 +159,13 @@ export function batchAddPriceAir(data) { ...@@ -159,3 +159,13 @@ export function batchAddPriceAir(data) {
data data
}) })
} }
//从商品列表中某一商品进入复制价格
export function copyPriceByProductIds(data){
return request({
url:'/ecw/product-price/copyPriceByProductIds',
method:'post',
data:data
})
}
...@@ -176,6 +176,8 @@ ...@@ -176,6 +176,8 @@
<el-button :disabled="scope.row.isInOpenSea" v-has-permi="[selectAuthorityFn('ecw:customer:postpone')]" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button> <el-button :disabled="scope.row.isInOpenSea" v-has-permi="[selectAuthorityFn('ecw:customer:postpone')]" size="mini" type="text" icon="el-icon-user" @click="delay(scope.row)">{{$t('延期')}}</el-button>
<el-button v-has-permi="['ecw:customer:treat-recovery']" v-if="scope.row.customerService !== null && scope.row.customerServiceAssignedTime !== null && !scope.row.isCustomerServiceConfirmed && !scope.row.isInOpenSea && path === '/customer/customer'" size="mini" type="text" @click="recovery(scope.row)" > {{$t('回收客户')}} </el-button> <el-button v-has-permi="['ecw:customer:treat-recovery']" v-if="scope.row.customerService !== null && scope.row.customerServiceAssignedTime !== null && !scope.row.isCustomerServiceConfirmed && !scope.row.isInOpenSea && path === '/customer/customer'" size="mini" type="text" @click="recovery(scope.row)" > {{$t('回收客户')}} </el-button>
<el-button v-has-permi="['ecw:customer:performanceType']" v-if="path === '/customer/customer'" size="mini" type="text" @click="dialogVisible = true; customData = scope.row;currentisNew = scope.row.isNew" > {{$t('业绩类型')}} </el-button> <el-button v-has-permi="['ecw:customer:performanceType']" v-if="path === '/customer/customer'" size="mini" type="text" @click="dialogVisible = true; customData = scope.row;currentisNew = scope.row.isNew" > {{$t('业绩类型')}} </el-button>
<el-button v-has-permi="[selectAuthorityFn('ecw:customer:treat-quoted-price')]" size="mini" type="text" icon="el-icon-user" @click="quote(scope.row)">{{$t('报价')}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -786,6 +788,16 @@ export default { ...@@ -786,6 +788,16 @@ export default {
this.$refs.CustomerFollowList.customerFollow.dialogVisible = true; this.$refs.CustomerFollowList.customerFollow.dialogVisible = true;
}) })
}, },
//报价
quote(row){
//this.$router.push({path:'/offer/create',query:{id:row.id}})
this.$router.push({path:'/offer/create' , query:{customer:row,type:1}}).then({
//this.$refs.push({path:'/customer-contacts/select',query:{pageNo:1,pageSize:10,searchKey:row.defaultContactPhone}})
})
},
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
this.loading = true; this.loading = true;
......
This diff is collapsed.
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<!-- 搜索工作栏 --> <!-- 搜索工作栏 -->
<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('编号')" prop="orderNo"> <el-form-item :label="$t('编号')" prop="orderNo">
<el-input v-model="noParam.value" :placeholder="$t('请输入订单号、唛头、提单号')" clearable @keyup.enter.native="handleQuery"> <el-input v-model="noParam.value" :placeholder="$t('请输入订单号、唛头、提单号')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')">
<template slot="prepend"> <template slot="prepend">
<dict-selector :type="DICT_TYPE.ORDER_QUERY_NO_FIELD" defaultable v-model="noParam.key" class="w-50" /> <dict-selector :type="DICT_TYPE.ORDER_QUERY_NO_FIELD" defaultable v-model="noParam.key" class="w-50" />
</template> </template>
...@@ -15,10 +15,10 @@ ...@@ -15,10 +15,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" /> <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=""> <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" />
...@@ -35,11 +35,27 @@ ...@@ -35,11 +35,27 @@
<el-option v-for="item in exportWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option> <el-option v-for="item in exportWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<div>
<el-form-item :label="$t('目的国')" prop="destCountryId">
<el-select v-model="queryParams.destCountryId" :placeholder="$t('请选择目的国')" clearable @change="handleQuery">
<el-option v-for="item in importCountryList" :key="item.guojia" :label="item.guojiaName" :value="item.id" /></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的城市')" prop="objectiveId">
<el-select v-model="queryParams.objectiveId" :placeholder="$t('请选择目的城市')" clearable @change="handleQuery">
<el-option v-for="item in importCityList" :key="item.shi" :value="item.shi" :label="item.shiName" ></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的仓')" prop="destWarehouseId"> <el-form-item :label="$t('目的仓')" prop="destWarehouseId">
<el-select v-model="queryParams.destWarehouseId" :placeholder="$t('请选择目的仓')" clearable @change="handleQuery"> <el-select v-model="queryParams.destWarehouseId" :placeholder="$t('请选择目的仓')" clearable @change="handleQuery">
<el-option v-for="item in importWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option> <el-option v-for="item in importWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</div>
<el-form-item :label="$t('运输方式')" prop="transportId" v-if="!transportId"> <el-form-item :label="$t('运输方式')" prop="transportId" v-if="!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"/>
...@@ -58,7 +74,7 @@ ...@@ -58,7 +74,7 @@
</el-form-item> --> </el-form-item> -->
<el-form-item :label="$t('商品')" prop="tidanNo"> <el-form-item :label="$t('商品')" prop="tidanNo">
<el-input v-model="prodParam.value" :placeholder="$t('请输入商品类型、品名或品牌')" clearable @keyup.enter.native="handleQuery"> <el-input v-model="prodParam.value" :placeholder="$t('请输入商品类型、品名或品牌')" clearable @keyup.enter.native="handleQuery" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')">
<template slot="prepend"> <template slot="prepend">
<dict-selector :type="DICT_TYPE.ORDER_QUERY_PROD_FIELD" defaultable v-model="prodParam.key" class="w-50" /> <dict-selector :type="DICT_TYPE.ORDER_QUERY_PROD_FIELD" defaultable v-model="prodParam.key" class="w-50" />
</template> </template>
...@@ -97,7 +113,7 @@ ...@@ -97,7 +113,7 @@
<dict-selector :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" v-model="queryParams.productRecord" clearable @change="handleQuery" /> <dict-selector :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" v-model="queryParams.productRecord" clearable @change="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('快递单号')" prop="number"> <el-form-item :label="$t('快递单号')" prop="number">
<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*)|(\s*$)/g,'')"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('外部仓')" prop="number"> <el-form-item :label="$t('外部仓')" prop="number">
<el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery"> <el-select v-model="queryParams.isExternalWarehouse" :placeholder="$t('请选择')" clearable @change="handleQuery">
...@@ -568,7 +584,9 @@ import { ...@@ -568,7 +584,9 @@ import {
exportShippingDatas, exportShippingDatas,
exportShipFee, exportShipFee,
exportUnload, splitCancelApply, orderSplitRevoke, setCanShipment, setCanNotShipment exportUnload, splitCancelApply, orderSplitRevoke, setCanShipment, setCanNotShipment
,getParentOrder ,getParentOrder,
getWarehouseTreeRegionList
} from "@/api/ecw/order"; } from "@/api/ecw/order";
/* import { getDictDatas, DICT_TYPE } from '@/utils/dict'; */ /* import { getDictDatas, DICT_TYPE } from '@/utils/dict'; */
import PrintTag from './components/PrintTag' import PrintTag from './components/PrintTag'
...@@ -607,6 +625,12 @@ export default { ...@@ -607,6 +625,12 @@ export default {
return { return {
// 选中数组 // 选中数组
ids: [], ids: [],
//目的国
countryList:[],
//目的城市
cityList:[],
//目的仓
destWarehouseList:[],
// 非单个禁用 // 非单个禁用
single: true, single: true,
// 非多个禁用 // 非多个禁用
...@@ -632,7 +656,7 @@ export default { ...@@ -632,7 +656,7 @@ export default {
packageTypeArr: [] packageTypeArr: []
}, },
warehouseList:[], warehouseList:[],
// tradeCityList: [], //tradeCityList: [],
productAttrList: [], // 商品属性 productAttrList: [], // 商品属性
molecule: '', //重货比分子 molecule: '', //重货比分子
denominator: '', //重货比分母 denominator: '', //重货比分母
...@@ -703,8 +727,19 @@ export default { ...@@ -703,8 +727,19 @@ export default {
/* tradeType 1 进口,2出口,3进出口 */ /* tradeType 1 进口,2出口,3进出口 */
return this.warehouseList.filter(item => item.tradeType == 2 || item.tradeType == 3) return this.warehouseList.filter(item => item.tradeType == 2 || item.tradeType == 3)
}, },
// importWarehouseList(){
// return this.warehouseList.filter(item => item.tradeType == 1 || item.tradeType == 3)
// },
importCountryList(){
return this.countryList.filter(item => item.id !== null)
//return this.countryList.filter(item => item.tradeType == 2 || item.tradeType == 3)
},
importCityList(){
return this.cityList.filter(item => item.id !== null)
},
importWarehouseList(){ importWarehouseList(){
return this.warehouseList.filter(item => item.tradeType == 1 || item.tradeType == 3) return this.destWarehouseList.filter(item => item.id !== null)
}, },
/* exportCityList() { /* exportCityList() {
return this.tradeCityList.filter(item => item.type == 2) return this.tradeCityList.filter(item => item.type == 2)
...@@ -751,18 +786,47 @@ export default { ...@@ -751,18 +786,47 @@ export default {
this.getTransportFromRoute() this.getTransportFromRoute()
this.getList(); this.getList();
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.tradeCityList = res.data
this.warehouseList = res.data
})
getCurrencyPage(this.params).then(res => this.currencyList = res.data.list) getCurrencyPage(this.params).then(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)
} }
getWarehouseTreeRegionList().then(res => {
this.countryList = res.data
let cityArray =[]
let shi =[]
let Warehouse =[]
res.data.map( item=>{
item.children.map(c=>{
Warehouse.push(c)
shi.push(c)
})
})
let distinitCity = shi.filter((value, index, self) => {
return self.indexOf(value) === index;
});
this.cityList= distinitCity
this.destWarehouseList = Warehouse
})
}, },
methods: { methods: {
getDictDatas, getDictDatas,
// 取消拆单申请 // 取消拆单申请
splitRevoke(row){ splitRevoke(row){
this.splitRevokeOrderId = row.orderId this.splitRevokeOrderId = row.orderId
...@@ -824,7 +888,7 @@ export default { ...@@ -824,7 +888,7 @@ export default {
exportExcel(func, params, fileName = null){ exportExcel(func, params, fileName = null){
this.exportLoading = true; this.exportLoading = true;
func(params).then(res => { func(params).then(res => {
console.log({res})
if(!fileName){ if(!fileName){
fileName = this.$t('订单') fileName = this.$t('订单')
} }
...@@ -871,7 +935,7 @@ export default { ...@@ -871,7 +935,7 @@ export default {
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
this.loading = true; this.loading = true;
console.log('this.combinedQueryParams', this.combinedQueryParams)
const query = {...this.combinedQueryParams} const query = {...this.combinedQueryParams}
if(query.packageTypeArr && query.packageTypeArr.length){ if(query.packageTypeArr && query.packageTypeArr.length){
query.packageType = query.packageTypeArr.join(',') query.packageType = query.packageTypeArr.join(',')
...@@ -899,6 +963,7 @@ export default { ...@@ -899,6 +963,7 @@ export default {
}); });
this.getStatistics() this.getStatistics()
}, },
// 获得统计数据 // 获得统计数据
getStatistics(){ getStatistics(){
...@@ -1005,7 +1070,7 @@ export default { ...@@ -1005,7 +1070,7 @@ export default {
}, },
// 过滤订单状态筛选字典内容 // 过滤订单状态筛选字典内容
statusDictFilter(item){ statusDictFilter(item){
console.log('statusDictFilter', item)
if(this.transportId == 3 && item.cssClass && item.cssClass != 'air'){ if(this.transportId == 3 && item.cssClass && item.cssClass != 'air'){
return false return false
} }
...@@ -1033,6 +1098,8 @@ export default { ...@@ -1033,6 +1098,8 @@ export default {
} }
} }
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .actions{ ::v-deep .actions{
......
This diff is collapsed.
...@@ -117,13 +117,33 @@ ...@@ -117,13 +117,33 @@
</el-table-column> --> </el-table-column> -->
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width"> <el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" @click="toPriceManager(scope.row)" v-hasPermi="['ecw:product-price:query']">{{$t('路线价格')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['ecw:product:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['ecw:product:delete']">{{$t('删除')}}</el-button>
<el-button v-if="scope.row.auditStatus===2" size="mini" type="text" icon="el-icon-edit" @click="copyPrice(scope.row)" v-hasPermi="['ecw:product:copyPrice']">{{$t('复制价格')}}</el-button>
<!-- <div v-else>
<el-button size="mini" type="text" @click="toPriceManager(scope.row)" v-hasPermi="['ecw:product-price:query']">{{$t('路线价格')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['ecw:product:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['ecw:product:delete']">{{$t('删除')}}</el-button>
</div> -->
<!-- <el-button v-else size="mini" type="text" icon="el-icon-edit" @click="copyPrice(scope.row)" v-hasPermi="['ecw:product:copyPrice']">{{$t('复制价格')}}</el-button> -->
</template>
<!-- <template v-else>
<el-button size="mini" type="text" @click="toPriceManager(scope.row)" v-hasPermi="['ecw:product-price:query']">{{$t('路线价格')}}</el-button> <el-button size="mini" type="text" @click="toPriceManager(scope.row)" v-hasPermi="['ecw:product-price:query']">{{$t('路线价格')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['ecw:product:update']">{{$t('修改')}}</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['ecw:product:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['ecw:product:delete']">{{$t('删除')}}</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['ecw:product:delete']">{{$t('删除')}}</el-button>
</template>
</template> -->
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 分页组件 --> <!-- 分页组件 -->
...@@ -521,6 +541,10 @@ export default { ...@@ -521,6 +541,10 @@ export default {
}); });
}, },
//复制价格
copyPrice(row){
this.$router.push({path:'/product/copyPrice',query:{titleZh:row.titleZh,id:row.id}})
},
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
......
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