Commit c0d6b3d9 authored by zhoutong's avatar zhoutong
parents d83161e9 16dbb0c8
......@@ -389,7 +389,6 @@ export function exportSettlementExcel(params) {
return request({
url: "/shipment/box/export-shipment-summary",
method: "get",
responseType: "blob",
params,
});
}
......@@ -66,8 +66,7 @@ export function exportProductExcel(query) {
return request({
url: '/ecw/product/export-excel',
method: 'get',
params: query,
responseType: 'blob'
params: query
})
}
......
......@@ -50,7 +50,6 @@ export function exportProductPriceExcel(query) {
method: 'get',
timeout: 3*60*1000,
params: query,
responseType: 'blob'
})
}
......
......@@ -27,8 +27,10 @@
</div>
<div class="flex-1 ml-10">
<el-card style="height:100%">
<div slot="header" class="header">
{{$t('已选{cnt}个产品', {cnt: isAllProduct ? total : choosedList.length})}}
<div slot="header" class="header flex">
<div class="flex-1 flex items-center">{{$t('已选{cnt}个产品', {cnt: isAllProduct ? total : choosedList.length})}}</div>
<el-button v-if="choosedList.length" type="text" @click="clearAll">{{$t('全部清除')}}</el-button>
</div>
<div class="list">
<div class="item" v-for="(choosed) in choosedList" :key="choosed.id" :data-data="JSON.stringify(choosed)">
......@@ -189,6 +191,11 @@ export default {
this.choosedList.forEach((choosed, index) => {
if (choosed.id == item.id) this.choosedList.splice(index, 1)
})
},
// 清除全部
async clearAll() {
await this.$confirm(this.$t('确定要全部清除么?'))
this.choosedList = []
}
}
}
......
......@@ -352,7 +352,8 @@ export default {
let params = {...this.queryParams}
this.addBeginAndEndTime(params, this.dateFilter, "JsDate", false);
exportSettlementExcel(params).then(res => {
this.$download.excel(res, 'shipment-summary.xls');
//this.$download.excel(res, 'shipment-summary.xls');
this.$message.success(this.$t('已加入导出队列,请稍后在下载日志中下载'))
}).finally(() => {
this.exporting = false
})
......
......@@ -238,7 +238,7 @@
</el-tab-pane>
<el-tab-pane :label="$t('订单动态')" name="second">
<el-timeline v-if="order.orderTimeVOList && order.orderTimeVOList.length" :reverse="true">
<el-timeline-item v-for="(activity, index) in order.orderTimeVOList" :key="index" :timestamp="activity.timestamp">
<el-timeline-item v-for="(activity, index) in order.orderTimeVOList" :key="index" :timestamp="parseTime(activity.businessTime)">
{{ $l(activity, 'title') }}
<div>{{$l(activity, 'remarks')}}</div>
</el-timeline-item>
......
......@@ -671,7 +671,8 @@ export default {
this.exportLoading = true;
return exportProductExcel(params);
}).then(response => {
this.$download.excel(response, '商品.xlsx');
// this.$download.excel(response, '商品.xlsx');
this.$message.success(this.$t('已加入导出队列,请稍后在下载日志中下载'))
this.exportLoading = false;
}).catch(() => { });
},
......
......@@ -41,7 +41,7 @@
-
<el-input v-model="item.endNum" type="number" placeholder="" class="w100"></el-input>
/
<selector :disabled="index > 0" @input="syncAllUnit" v-model="form.weightUnit" :options="unitList" :label-field="$l('title')" value-field="id" defaultable2 class="w100" />
<selector :disabled="index > 0" @input="syncAllUnit" v-model="item.weightUnit" :options="unitList" :label-field="$l('title')" value-field="id" defaultable2 class="w100" />
</el-form-item>
<el-form-item :label="$t('默认运费')" v-if="form.priceType != 1">
<inputor default2="0" v-model.number="item.transportPrice" type="number" :placeholder="$t('整数或者两位小数')" class="w100 mr10" />
......@@ -178,7 +178,7 @@
</template>
<el-form-item :label="$t('是否单询')" prop="inquiry">
<dict-selector :type="DICT_TYPE.NEED_ORDER_INQUIRY" v-model="form.needOrderInquiry" form-type="radio"></dict-selector>
<dict-selector :type="DICT_TYPE.NEED_ORDER_INQUIRY" v-model="form.needOrderInquiry" form-type="radio" formatter="number"></dict-selector>
</el-form-item>
</el-card>
</el-form>
......@@ -298,10 +298,16 @@ export default {
getCurrencyList().then(res => this.currencyList = res.data)
getUnitList().then(res => this.unitList = res.data)
// 如果是复制,则获取数据并填充,先复制,然后填充特需,避免数据的特需不全导致部分不显示
if(this.$route.query.templateId){
await this.getTemplateDetail(this.$route.query.templateId)
}
this.$nextTick(async () => {
// 如果是空运,阶梯价格默认为1
if(this.type == 'air'){
this.$set(this.form, 'stepPrice', 1)
}
// 如果是复制,则获取数据并填充,先复制,然后填充特需,避免数据的特需不全导致部分不显示
if(this.$route.query.templateId){
await this.getTemplateDetail(this.$route.query.templateId)
}
})
this.getDictDatas(this.DICT_TYPE.ECW_SPECIAL_REQ_FOR_LINE_PRODUCTS).forEach(item => {
// 没有的才push,已有的可能是从复制模板携带过来的数据
......@@ -318,12 +324,7 @@ export default {
}
})
this.$nextTick(() => {
// 如果是空运,阶梯价格默认为1
if(this.type == 'air'){
this.$set(this.form, 'stepPrice', 1)
}
})
},
methods: {
// 获取模板数据(复制的源路线价格信息)
......@@ -355,7 +356,8 @@ export default {
minWeight,
minWeightUnit,
needOrderInquiry,
needBook
needBook,
needPay
} = res.data
const data = {
......@@ -375,7 +377,8 @@ export default {
minWeight,
minWeightUnit,
needOrderInquiry,
needBook
needBook,
needPay
}
// 海运需要填充货柜位置和订单方数上限
if(this.type == 'sea'){
......
......@@ -271,8 +271,9 @@ export default {
product: this.isAllProduct ? this.$refs.productSelector.allTotal : this.form.productIdList.length
}))
this.loading = true
batchAddPrice(data).then(response => {
this.$alert(this.$t("操作成功"));
batchAddPrice(data).then(async(response) => {
await this.$alert(this.$t("操作成功"));
this.$store.dispatch("tagsView/delCurrentView")
})
.finally(res => {
this.loading = false
......
......@@ -93,7 +93,7 @@
<div v-for="(item, index) in form.priceStepList" :key="index">
<div style="font-size:14px; margin:10px 0">
{{$t('第{index}阶梯定价方案', {index: index+1})}}
<template v-if="index == form.priceStepList.length - 1">
<template v-if="index == form.priceStepList.length - 1 && !readonly">
<el-link type="primary" @click.native="form.priceStepList.push({})">{{$t('添加区间')}}</el-link>
<el-divider direction="vertical"></el-divider>
<el-link type="danger" @click.native="form.priceStepList.splice(index, 1)">{{$t('删除')}}</el-link>
......@@ -230,11 +230,11 @@
</el-col>
<el-col :span="12" v-else-if="readonly && type === 'air'">
<!--商品清关费-->
<h2>商品清关费价格</h2>
<h2>{{$t('商品清关费价格')}}</h2>
<packaging-type v-if="product && product.priceStepClearanceList && product.priceStepClearanceList.length"
:value="product" key-arr="priceStepClearanceList" readonly/>
<div v-else>
未设置清关费
{{$t('未设置清关费')}}
</div>
</el-col>
</el-row>
......@@ -312,7 +312,8 @@
运费:
{{item.transportPrice}} {{currencyMap[item.transportPriceUnit]}} / {{unitMap[item.transportVolumeUnit]}}
</div>
<div :key="item.specialDictType + '_clearance'" class="pl-10">
<!--空运没有清关费, 不需要显示-->
<div v-if="type != 'air'" :key="item.specialDictType + '_clearance'" class="pl-10">
清关费:
{{item.clearancePrice}} {{currencyMap[item.clearancePriceUnit]}} / {{unitMap[item.clearanceVolumeUnit]}}
</div>
......
......@@ -548,7 +548,7 @@ export default {
// }
// 价格列表 跟 商品的价格列表,有时候商品价格列表的路由变动会导致价格列表也执行此处代码,所以做一个判断排除
// https://zentao.test.jdshangmen.com/bug-view-4928.html
if(this.$route.path != this.entryPath) return
if(this.$route.path != this.entryPath) return
let productId = this.product?.id
if(this.$route.name === 'ProductPrice'){
......@@ -847,8 +847,9 @@ export default {
this.exportLoading = true;
return exportProductPriceExcel(params);
}).then(response => {
this.$download.excel(response, '路线价格.xlsx');
// this.$download.excel(response, '路线价格.xlsx');
this.exportLoading = false;
this.$message.success(this.$t('已加入导出队列,请稍后在下载日志中下载'))
}).catch(() => {
this.exportLoading = false;
});
......
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