Commit be7d42e1 authored by 我在何方's avatar 我在何方
parents b8895e59 3bf855be
......@@ -80,13 +80,14 @@
</el-form-item>
<el-form-item v-show="form.status == '3'" label="赔付金额">
<el-input v-model="form.indemnity" placeholder="请输入赔付金额">
<dict-selector
<!-- <dict-selector
defaultable
style="width: 110px"
placeholder="请选择货币单位"
slot="append"
v-model="form.currencyUnit"
:type="DICT_TYPE.COMMISSION_CURRENCY_TYPE"></dict-selector>
:type="DICT_TYPE.COMMISSION_ CURRENCY_TYPE"></dict-selector> -->
// TODO 货币需要改成接口数据,但是没找到此文件入口没法测试
</el-input>
</el-form-item>
<el-form-item v-show="form.status == '3'" label="处理时间" required>
......
......@@ -252,10 +252,11 @@ export const constantRoutes = [
redirect: 'noredirect',
children: [
{
path: '/customerCommissionInfo/:dictId(\\d+)',
path: '/customerCommissionInfo/:dictId(\\d+)/:id(\\d+)?',
component: (resolve) => require(['@/views/ecw/customerCommissionInfo/index'], resolve),
name: 'customerCommissionInfo',
meta: {title: '佣金设置', icon: '', activeMenu: '/customer/customerCommissionInfo'}
meta: {title: '佣金设置', icon: '', activeMenu: '/customer/customerCommissionInfo'},
props: true,
},
{
path: 'edit/:customerId(\\d+)',
......
......@@ -142,7 +142,6 @@ export const DICT_TYPE = {
SHIPPING_DECLARATION_TYPE: 'shipping_declaration_type',//出货报关方式(与订单报关方式相同)
COMMISSION_TYPE: 'commission_type',//佣金类型
COMMISSION_DARK_TYPE: 'commission_dark_type',//暗涌类型
COMMISSION_CURRENCY_TYPE: 'commission_currency_type',//佣金货币类型
// COMMISSION_UNIT: 'commission_unit',//佣金货物单位
ECW_PORT_TYPE: 'port_type', //港口类型
CERTIFICATE_TYPE: 'certificate_type',//证件类型
......
......@@ -50,7 +50,7 @@
{{ scope.row.loadWeight }}kg
</template>
</el-table-column>
<el-table-column :label="$t('跟进客服')" align="center" prop="" />
<el-table-column :label="$t(' 跟进客服')" align="center" prop="" />
<el-table-column :label="$t('制作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<!-- 0 (未制作提货单) 1(审核中) 2(审核通过) 3(审核拒绝) -->
......
......@@ -73,7 +73,7 @@
<template slot-scope="scope">
<el-row style="text-align:left;">
<el-row>
<span>{{$t('规格')}}{{scope.row.boxGauge}}</span>
<span>{{$t('规格')}}{{scope.row.warehouseInInfoVO ? scope.row.warehouseInInfoVO.boxGauge : ''}}</span>
</el-row>
<el-row>
<span>{{$t('品牌')}}
......@@ -84,7 +84,7 @@
<span style="margin-left: 10px;">{{$t('重量')}}{{scope.row.warehouseInInfoVO ? scope.row.warehouseInInfoVO.weight : 0 }}kg</span>
</el-row>
<el-row>
<span>{{$t('计划装柜:无返回')}}</span>
<span>{{$t('计划装柜')}}{{planCabinet}}</span>
</el-row>
</el-row>
</template>
......@@ -199,7 +199,7 @@
{{shopForm.num||0}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="12" v-show="isQuantity">
<el-form-item label="剩余数量(个):">
{{shopForm.quantity||0}}
</el-form-item>
......@@ -208,7 +208,7 @@
<el-form-item label="放入箱数:">
{{shopForm.num||0}}
</el-form-item>
<el-form-item label="放入数量(个):" prop="putQuantity">
<el-form-item label="放入数量(个):" prop="putQuantity" v-show="isQuantity">
<el-input-number v-model="shopForm.putQuantity" controls-position="right" :min="0"></el-input-number>
</el-form-item>
<el-form-item label="备注信息:">
......@@ -281,11 +281,12 @@ export default {
orderId: 0,
lang: 0,
},
isQuantity: false,
};
},
created() {
const { shipmentObj } = this.$attrs;
this.planCabinet =`${shipmentObj.selfNo}-${this.currRow.sectionName}`
this.planCabinet = `${shipmentObj.selfNo}-${this.currRow.sectionName}`;
getTradeCityList().then((res) => (this.tradeCityList = res.data));
this.queryParams.orderId = this.currRow.orderId;
this.getOrderDetail();
......@@ -408,7 +409,7 @@ export default {
).toFixed(2);
});
sums[1] = this.$t(
"下单统计:{orderSum} 箱 {orderV)m³ {orderW}kg 入仓统计:{leviteSum} 箱 {leviteV)m³ {leviteW}kg",
"下单统计:{orderSum} 箱 {orderV} m³ {orderW} kg 入仓统计:{leviteSum} 箱 {leviteV} m³ {leviteW} kg",
{
orderSum,
orderV,
......@@ -418,7 +419,6 @@ export default {
leviteW,
}
);
return sums;
},
importCityName(id) {
......@@ -445,6 +445,7 @@ export default {
addShop() {
this.shopForm = {};
this.shopOpen = true;
this.isQuantity = false;
},
async changeProdTitleZh() {
const data = await this.getSelectData("zhId");
......@@ -474,6 +475,7 @@ export default {
clearanceFreightVolume: data.clearanceFreightVolume,
}).then((res) => {
if (res.data) {
this.isQuantity = true;
this.shopRules.putQuantity = [
{
required: true,
......@@ -482,6 +484,7 @@ export default {
},
];
} else {
this.isQuantity = false;
delete this.shopRules.putQuantity;
}
});
......
......@@ -47,9 +47,9 @@
</el-table-column>
<el-table-column :label="$t('箱数')" align="center" prop="num">
<template slot-scope="scope">
<div>
<el-link type="primary" @click.native="showWarehouseLogs(scope.row)">
{{scope.row.num}}
</div>
</el-link>
<div style="color:blue;fontWeight:bold;">
{{ scope.row.multiSpecification === true ? '(多规格)' : ''}}
</div>
......@@ -93,6 +93,7 @@
<el-dialog custom-class="shipping-dialog" :title="dialogConfig.title" :visible.sync="dialogConfig.dialogVisible" :fullscreen="dialogConfig.fullscreen" :width="dialogConfig.width" :modal-append-to-body=false append-to-body>
<batchTally v-if="dialogConfig.dialogVisible" v-bind="$attrs" @closeDialog="closeDialog" :type="dialogConfig.type" :tallyRows="tallyRows" :shipmentObj="shipmentObj" />
</el-dialog>
<warehouse-detail :order="order" :orderItemId="showWarehouseInItemId" v-if="showWarehouseInItemId" @close="showWarehouseInItemId=null" />
</div>
</template>
......@@ -100,18 +101,23 @@
import batchTally from "./batchTally.vue";
import { getTallyList, tallyRemove, tallyCommit } from "@/api/ecw/boxSea";
import { formatDate, serviceMsg } from "../../utils";
import WarehouseDetail from "./warehouseDetail";
import { getOrder } from "@/api/ecw/order";
export default {
name: "tally",
inheritAttrs: false,
components: {
batchTally,
WarehouseDetail,
},
props: {
shipmentObj: Object,
},
data() {
return {
showWarehouseInItemId: null,
order: null,
tallyList: [],
// 理货数据
tallyRows: [],
......@@ -245,6 +251,13 @@ export default {
});
});
},
// 显示入仓记录
showWarehouseLogs(row) {
getOrder(row.orderId).then((response) => {
this.order = response.data;
this.showWarehouseInItemId = row.orderItemId;
});
},
},
computed: {
/* 获取仓库 */
......
<template>
<!-- 订单获取入仓记录 -->
<el-dialog :title="title" visible :before-close="closeDialog" :close-on-click-modal="false" width="1000px" append-to-body>
<el-table v-if="warehouseItem && warehouseItem.orderWarehouseInBackItemDoList" :data="warehouseItem.orderWarehouseInBackItemDoList">
<el-table-column type="index" :label="$t('序号')" />
<el-table-column :label="$t('箱数')" prop="cartonsNum" />
<el-table-column :label="$t('入仓类型')" prop="cartonsNum">
<template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.WAREHOUSING_SPECIFICATION_TYPE" :value="row.specificationType" />
</template>
</el-table-column>
<el-table-column :label="$t('包装类型')" prop="unit">
<template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_PACKAGING_TYPE" :value="row.unit" />
</template>
</el-table-column>
<el-table-column :label="$t('长')" prop="boxGauge">
<template slot-scope="{row}">
{{row.boxGauge.split('*')[0]}}
</template>
</el-table-column>
<el-table-column :label="$t('宽')" prop="boxGauge">
<template slot-scope="{row}">
{{row.boxGauge.split('*')[1]}}
</template>
</el-table-column>
<el-table-column :label="$t('高')" prop="boxGauge">
<template slot-scope="{row}">
{{row.boxGauge.split('*')[2]}}
</template>
</el-table-column>
<el-table-column :label="$t('体积') + '(m³)'" prop="volume" />
<el-table-column :label="$t('重量') + '(kg)'" prop="weight" />
<el-table-column :label="$t('数量(个)')" prop="quantityAll" />
<el-table-column :label="$t('快递单号')" prop="expressNo" />
<el-table-column :label="$t('入仓时间')" prop="inTime">
<template slot-scope="{row}">{{row.inTime|parseTime}}</template>
</el-table-column>
</el-table>
</el-dialog>
</template>
<script>
import { getOrder, getOrderWarehouseIn } from "@/api/ecw/order";
import { DICT_TYPE } from "@/utils/dict";
import { parseTime } from "@/utils/ruoyi";
export default {
filters: { parseTime },
props: {
order: Object, // order 和 orderId 二选一
orderId: Number,
orderItemId: Number,
},
data() {
return {
orderDetail: null,
warehouseList: null,
};
},
computed: {
info() {
return this.orderDetail || this.order;
},
orderItem() {
if (!this.info) return null;
return this.info.orderItemVOList.find(
(item) => item.orderItemId == this.orderItemId
);
},
warehouseItem() {
if (!this.warehouseList) return [];
return (
this.warehouseList.find(
(item) => item.orderItemId == this.orderItemId
) || []
);
},
title() {
if (!this.orderItem) return "-";
return this.$l(this.orderItem, "prodTitle") + " - " + this.$t("入仓记录");
},
},
created() {
this.show = true;
if (!this.order && this.orderId) {
getOrder(this.orderId).then((res) => {
this.orderDetail = res.data;
});
}
this.getOrderWarehouseIn();
},
methods: {
closeDialog() {
this.show = false;
this.$emit("close");
},
getOrderWarehouseIn() {
getOrderWarehouseIn(this.info.orderId).then((res) => {
this.warehouseList = res.data;
});
},
},
};
</script>
......@@ -15,8 +15,8 @@
<el-table-column :label="$t('金额')" align="center" prop="fromFee">
<template slot-scope="scope">
<span>{{scope.row.fromFee}}
<dict-tag :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" :value="scope.row.fromCurrency" />
<!-- {{ scope.row.fromCurrency | currencyDataFilter(currencyDictDatas) }} -->
{{currencyName(scope.row.fromCurrency)}}
</span>
</template>
</el-table-column>
......@@ -29,8 +29,8 @@
</el-table-column>
<el-table-column :label="$t('兑换货币类型')" align="center" prop="toCurrency">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" :value="scope.row.toCurrency" />
<!-- <span>{{ scope.row.toCurrency | currencyDataFilter(currencyDictDatas) }}</span> -->
{{currencyName(scope.row.toCurrency)}}
</template>
</el-table-column>
</el-table>
......@@ -83,11 +83,10 @@
<el-input v-model="form.fromFee" :placeholder="$t('请输入金额')"/>
</el-form-item>
<el-form-item :label="$t('货币类型')" prop="fromCurrency">
<dict-selector :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" v-model="form.fromCurrency" />
<!-- <el-select v-model="form.fromCurrency" clearable>
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COMMISSION_CURRENCY_TYPE)" :key="parseInt(dict.value)"
:label="$l(dict, 'label')" :value="parseInt(dict.value)"/>
</el-select> -->
<el-select v-model="form.fromCurrency" clearable>
<el-option v-for="item in currencyList" :key="item.id"
:label="$l(item, 'title')" :value="item.id"/>
</el-select>
</el-form-item>
<el-form-item :label="$t('兑换金额')" prop="toFee">
<el-input v-model="form.toFee" :placeholder="$t('请输入兑换金额')"/>
......@@ -97,8 +96,8 @@
<!-- </el-form-item>-->
<el-form-item :label="$t('兑换货币类型')" prop="toCurrency">
<el-select v-model="form.toCurrency" clearable>
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COMMISSION_CURRENCY_TYPE)" :key="parseInt(dict.value)"
:label="dict.label" :value="parseInt(dict.value)"/>
<el-option v-for="item in currencyList" :key="item.id"
:label="$l(item, 'title')" :value="item.id"/>
</el-select>
</el-form-item>
<el-form-item label="开始时间(尼日利亚)" prop="nrlyStartTime">
......@@ -148,7 +147,8 @@
import {CommonStatusEnum} from "@/utils/constants";
import {changeUserStatus} from "@/api/system/user";
import {DICT_TYPE, getDictDatas, getDictData} from "@/utils/dict";
import { getCurrencyList } from "@/api/ecw/currency";
import {arrryToKeyedObjectBy} from '@/utils/index'
export default {
name: "CurrencyEcash",
components: {},
......@@ -202,12 +202,27 @@
// 表单校验
rules: {},
/* statusDictDatas: getDictDatas(DICT_TYPE.COMMON_STATUS), */
/* currencyDictDatas: getDictDatas(DICT_TYPE.COMMISSION_CURRENCY_TYPE), */
/* ecashDatas: getDictDatas(DICT_TYPE.ECASH_INIT), */
currencyList: []
};
},
computed:{
currencyMap(){
return arrryToKeyedObjectBy(this.currencyList, 'id')
},
currencyName(){
return id => {
let obj = this.currencyMap[id]
if(obj) return this.$l(obj, 'title')
return this.$t('未知')
}
}
},
created() {
this.getList();
getCurrencyList().then(res => {
this.currencyList = res.data
})
},
methods: {
/** 查询列表 */
......
......@@ -152,6 +152,7 @@
v-model="form.createTime"
type="datetime"
value-format="timestamp"
disabled
:placeholder="$t('选择创建时间')">
</el-date-picker>
</el-form-item>
......
......@@ -85,11 +85,12 @@
type="selection"
width="55">
</el-table-column>
<el-table-column :label="$t('佣金编码')" align="center" prop="customerId" />
<el-table-column :label="$t('佣金编码')" align="center" prop="id" />
<el-table-column :label="$t('客户名称')" align="center" prop="customerName" show-overflow-tooltip >
</el-table-column>
<el-table-column :label="$t('联系电话')" align="center" prop="transportId" show-overflow-tooltip >
<template slot-scope="scope">
<div>+{{scope.row.defaultContactPhoneAreaCode}}</div>
<div>{{scope.row.defaultContactPhone}}</div>
</template>
</el-table-column>
......@@ -100,12 +101,12 @@
</el-table-column>
<el-table-column :label="$t('暗佣返佣类型')" align="center" prop="darkReturnType">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.COMMISSION_DARK_TYPE" :value="scope.row.type" />
<dict-tag :type="DICT_TYPE.COMMISSION_DARK_TYPE" :value="scope.row.darkReturnType" />
</template>
</el-table-column>
<el-table-column :label="$t('运输方式')" align="center" prop="transportId">
<template slot-scope="scope">
<dict-tag v-if="scope.row.transportId" :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportId" />
<dict-tag v-if="scope.row.transportId !== -1" :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportId" />
<div v-else>{{$t('全部')}}</div>
</template>
</el-table-column>
......@@ -113,19 +114,19 @@
</el-table-column>
<el-table-column :label="$t('报关方式')" align="center" prop="customsType" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag v-if="scope.row.customsType" :type="DICT_TYPE.SHIPPING_DECLARATION_TYPE" :value="scope.row.customsType" />
<dict-tag v-if="scope.row.customsType !== -1" :type="DICT_TYPE.SHIPPING_DECLARATION_TYPE" :value="scope.row.customsType" />
<div v-else>{{$t('全部')}}</div>
</template>
</el-table-column>
<el-table-column :label="$t('备案')" align="center" prop="approval">
<template slot-scope="scope">
<dict-tag v-if="scope.row.approval" :type="DICT_TYPE.COMMISSION_PRODUCT_APPROVAL" :value="scope.row.approval" />
<dict-tag v-if="scope.row.approval !== -1" :type="DICT_TYPE.COMMISSION_PRODUCT_APPROVAL" :value="scope.row.approval" />
<div v-else>{{$t('全部')}}</div>
</template>
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">编辑</el-button>-->
<el-button size="mini" type="text" icon="el-icon-view" @click="handleUpdate(scope.row)">查看</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">{{$t('删除')}}</el-button>
</template>
</el-table-column>
......@@ -256,10 +257,11 @@ export default {
this.resetForm("queryForm");
this.handleQuery();
},
/** 修改按钮操作 */
/** 查看按钮操作 */
handleUpdate(row) {
const id = row.customerId;
this.$router.push(`/customerCommissionInfo/${id}`)
const customerId = row.customerId;
const id = row.id;
this.$router.push(`/customerCommissionInfo/${customerId}/${id}`)
},
/** 删除按钮操作 */
handleDelete(row) {
......
<template>
<el-select v-if="options" v-model="selectVal" :placeholder="$t('请选择')">
<el-option v-if="allShow" :label="$t('全部')" :value='0'></el-option>
<el-option v-if="allShow" :label="$t('全部')" :value='-1'></el-option>
<el-option
v-for="item in options"
:key="item[valueKey]"
......
......@@ -136,7 +136,6 @@
</el-table-column>
<!-- <el-table-column label="币种" align="center">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" :value="scope.row.currencyId" />
</template>
</el-table-column> -->
<!-- <el-table-column label="汇率" align="center" prop="totalAmount" /> -->
......
......@@ -223,7 +223,7 @@
<el-form-item label=""
:prop="`prodCreateReqVOList.${scope.$index}.worth`"
:rules="{
required: true, message: $t('货值不能为空'), trigger: 'blur'
// required: true, message: $t('货值不能为空'), trigger: 'blur'
}"
class="mb-0 mr-0"
>
......@@ -1095,6 +1095,7 @@ export default {
if(!tmp.weight)tmp.weight = 1
if(!tmp.quantity)tmp.quantity = 1
if(!tmp.num)tmp.num = 1
if(!tmp.worth)tmp.worth = 1
arr.push(tmp)
})
return arr
......
......@@ -12,7 +12,7 @@
<el-table-column :label="$t('唛头')" prop="marks"></el-table-column>
<el-table-column :label="$t('已到箱数/总箱数')">
<template v-slot={row}>
{{ row.sumQuantity || 0 }}/{{ row.totalNum }}
{{ row.sumNum }}箱/{{ row.totalNum }}
</template>
</el-table-column>
<el-table-column :label="$t('下单统计')">
......@@ -119,6 +119,7 @@
</div>
<div style="text-align: center" v-else>
<el-button @click="()=>{
$emit('update:dialogVisible',false)
$router.push({path:'/bpm/process-instance/detail',query:{id:this.applyStatus.orderWarehouseApprovalBackVO.formId}})
}">{{$t('审核中')}}</el-button>
<el-button @click="cancellationOfOrder" >{{$t('取消审核')}}</el-button>
......
......@@ -14,7 +14,6 @@
<el-form-item v-for="(item,index) in this.getDictDatas(this.DICT_TYPE.ORDER_SPECIAL_NEEDS)" v-if="advanceType.indexOf(item.value) > -1" :key="item.value" :label="item.label + '预计金额'">
<el-input style="width: 300px;" v-model="specialNeedsList[index].transFee">
<div style="width: 100px;" slot="append" >
<!-- <dict-selector v-model="specialNeedsList[index].transCurrency" :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" ></dict-selector> -->
<el-select v-model="specialNeedsList[index].transCurrency">
<el-option v-for="item in JSON.parse(currency)" :key="item.id" :label="item.titleZh" :value="item.id" />
</el-select>
......
......@@ -123,7 +123,8 @@
<div>
<dict-tag :type="DICT_TYPE.FEE_TYPE" :value="FeeDetails.feeType" />
{{FeeDetails.applicationFee}}
<dict-tag :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" :value="FeeDetails.applicationFeeCurrency" />
<!-- <dict-tag :type="DICT_TYPE.COMMISSION_ CURRENCY_TYPE" :value="FeeDetails.applicationFeeCurrency" />, -->
{{currencyName(FeeDetails.applicationFeeCurrency)}}
<dict-tag :value="FeeDetails.payType" :type="DICT_TYPE.PAYMENT_TYPE" ></dict-tag>
【{{FeeDetails.remarks}}】
</div>
......@@ -163,10 +164,14 @@ import {
getOrderPage,
getWarehouseUpdateApprovalInfo
} from '@/api/ecw/order'
import { getChannelList } from '@/api/ecw/channel';
import Template from "@/views/cms/template";
import {getSupplierPage} from "@/api/ecw/supplier";
import { DICT_TYPE } from "@/utils/dict";
import { getCurrencyList } from "@/api/ecw/currency";
import {arrryToKeyedObjectBy} from '@/utils/index'
export default {
components: {Template},
props:{
......@@ -195,7 +200,22 @@ export default {
prodName: ''
}
},
computed:{
currencyMap(){
return arrryToKeyedObjectBy(this.currencyList, 'id')
},
currencyName(){
return id => {
let obj = this.currencyMap[id]
if(obj) return this.$l(obj, 'title')
return this.$t('未知')
}
}
},
created() {
getCurrencyList().then(res => {
this.currencyList = res.data
})
getChannelList().then(r => this.channelList = r.data);
warehouseAreaPositionList().then(r => this.warehouseList = r.data)
if(this.type === 2){
......
......@@ -10,7 +10,7 @@
<el-descriptions class="margin-top" border :title="$t('发货人')" :column="1" :labelStyle="{width:'150px'}">
<el-descriptions-item :label="$t('发货人')">{{order.consignorVO.name}}</el-descriptions-item>
<el-descriptions-item :label="$t('发货人电话')">
{{order.consignorVO.countryCode}} {{order.consignorVO.phone}}
+{{order.consignorVO.countryCode}} {{order.consignorVO.phone}}
</el-descriptions-item>
<el-descriptions-item :label="$t('发货人邮箱')">{{order.consignorVO.email}}</el-descriptions-item>
<el-descriptions-item :label="$t('发货人公司名称')">
......@@ -22,7 +22,7 @@
<el-descriptions class="margin-top" border :title="$t('收货人')" :column="2" :labelStyle="{width:'150px'}">
<el-descriptions-item :label="$t('收货人')">{{order.consigneeVO.name}}</el-descriptions-item>
<el-descriptions-item :label="$t('收货人电话')">
{{order.consigneeVO.countryCode}} {{order.consigneeVO.phone}}
+{{order.consigneeVO.countryCode}} {{order.consigneeVO.phone}}
</el-descriptions-item>
<el-descriptions-item :label="$t('收货人邮箱')">{{order.consigneeVO.email}}</el-descriptions-item>
<el-descriptions-item :label="$t('收货人公司名称')">
......@@ -121,7 +121,7 @@
<el-table-column prop="sumNum" :label="$t('入仓件数')" width="90px">
<template slot-scope="{row}">
<el-link type="primary" @click.native="showWarehouseLogs(row)">{{row.warehouseInInfoVO ? row.warehouseInInfoVO.cartonsNum : 0}}</el-link>
<div v-if="row.warehouseInInfoVO && row.warehouseInInfoVO.isMultiSpecification">(多规格)</div>
<div v-if="row.warehouseInInfoVO && row.warehouseInInfoVO.isMultiSpecification">({{$t('多规格')}})</div>
</template>
</el-table-column>
<el-table-column prop="unit" :label="$t('单位')" width="90px">
......
......@@ -31,7 +31,6 @@
<el-select :disabled="isModify[forbidden(scope.row)]" v-model="scope.row.applicationFeeCurrency">
<el-option v-for="item in JSON.parse(currencys)" :key="item.id" :label="item.titleZh" :value="item.id" />
</el-select>
<!-- <dict-selector :disabled="isModify[forbidden(scope.row)]" :type="DICT_TYPE.COMMISSION_CURRENCY_TYPE" v-model="scope.row.applicationFeeCurrency" /> -->
</template>
</el-table-column>
<el-table-column :label="$t('付款类型')">
......
......@@ -238,7 +238,7 @@
</template>
<!-- 合单,拆单 -->
<template v-if=" (scope.row.status < 12 || (scope.row.status == 12 && scope.row.shipmentState == 314)) && !scope.row.abnormalState && scope.row.status">
<template v-if=" (scope.row.status < 12 || (scope.row.status == 12 && scope.row.shipmentState == 314)) && !scope.row.abnormalState && scope.row.status > 3">
<el-dropdown-item @click.native="$router.push(`/order/singleApply?orderNo=${scope.row.orderNo}`)" >{{$t('合单申请')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push(`/order/splitApply?orderId=${scope.row.orderId}`)" >{{$t('拆单申请')}}</el-dropdown-item>
</template>
......
......@@ -22,7 +22,9 @@
<el-row v-if="!orderItem.charging">
<el-col :span="12">
<el-form-item :label="$t('运费')">
{{orderItem.oneSeaFreight}} {{ currencyMap[orderItem.seaFreightCurrency] }} / {{ unitMap[orderItem.seaFreightVolume] }}
<!-- {{orderItem.oneSeaFreight}} -->
{{originPrice}}
{{ currencyMap[orderItem.seaFreightCurrency] }} / {{ unitMap[orderItem.seaFreightVolume] }}
</el-form-item>
</el-col>
<el-col :span="12">
......@@ -42,13 +44,13 @@
<!-- 明佣或者明佣+暗佣才显示 -->
<el-form-item label="明佣佣金" v-if="form.commissionType == 1 || form.commissionType == 3">
<el-input v-model.number="form.lightCommissionAmount" placeholder="" class="w-100"></el-input>
<el-input v-model="form.lightCommissionAmount" type="number" placeholder="" class="w-100"></el-input>
{{ currencyMap[orderItem.seaFreightCurrency] }} / {{ unitMap[orderItem.seaFreightVolume] }}
</el-form-item>
<!-- 明佣+暗佣才显示 -->
<el-form-item label="暗佣佣金" v-if="form.commissionType == 3">
<el-input v-model.number="form.shadeCommissionAmount" placeholder="" class="w-100"></el-input>
<el-form-item label="暗佣佣金" v-if="form.commissionType == 3" prop="shadeCommissionAmount" :rules="{validator: shadeCommissionValidator, message: '暗佣设置错误', trigger: 'blur'}">
<el-input v-model="form.shadeCommissionAmount" placeholder="" type="number" class="w-100"></el-input>
{{ currencyMap[orderItem.seaFreightCurrency] }} / {{ unitMap[orderItem.seaFreightVolume] }}
</el-form-item>
......@@ -58,7 +60,10 @@
<!-- 明佣+暗佣显示 -->
<div v-if="form.commissionType == 3">
{{$t('成本价')}}{{Decimal(form.freight || orderItem.oneSeaFreight).minus(form.shadeCommissionAmount)}} {{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}
{{$t('成本价')}}
<!-- {{Decimal(form.freight || orderItem.oneSeaFreight).minus(form.shadeCommissionAmount)}} -->
{{ costPrice }}
{{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}
</div>
<!-- 暗佣显示 -->
......@@ -70,8 +75,16 @@
<el-link type="primary" @click.native="$router.push('/customer/customerCommission?customerId=' + order.customerId)">{{$t('去设置')}}</el-link>
</div>
<div v-if="form.commissionType == 1 || form.commissionType == 3">{{$t('销售价')}}{{Decimal(form.freight || orderItem.oneSeaFreight).plus(form.lightCommissionAmount) }} {{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}</div>
<div v-if="form.commissionType == 3">{{$t('实际佣金返点')}}{{form.shadeCommissionAmount + form.lightCommissionAmount }} {{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}</div>
<div v-if="form.commissionType == 1 || form.commissionType == 3">
{{$t('销售价')}}
<!-- {{Decimal(form.freight || orderItem.oneSeaFreight).plus(form.lightCommissionAmount) }} -->
{{salePrice}}
{{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}</div>
<div v-if="form.commissionType == 3">
{{$t('实际佣金返点')}}
{{form.shadeCommissionAmount + form.lightCommissionAmount }}
{{ currencyMap[form.freightCurrency] }} / {{ unitMap[form.freightVolume] }}
</div>
</div>
</el-form>
......@@ -100,6 +113,7 @@ import WorkFlow from '@/components/WorkFlow'
import {getDarkReturnCommission} from '@/api/ecw/customerCommission'
import Decimal from 'decimal.js'
import {cancelProcessInstance} from '@/api/bpm/processInstance'
import { number } from "echarts/lib/export"
export default {
name: "OrderSpecialCommission",
props: {
......@@ -109,24 +123,16 @@ export default {
components: {
WorkFlow
},
created() {
// 查看详情,列表进来的
this.getOrderSpecial()
getUnitList().then(res => this.unitList = res.data)
getCurrencyList().then(res => this.currencyList = res.data)
getProductType(this.orderItem.prodType).then(res => {
this.productType = res.data
})
if(this.order.channelId){
getChannel(this.order.channelId).then(res => {
this.channel = res.data
})
}
},
data() {
let shadeCommissionValidator = (rule, value, callback) => {
if (!Number(value)) return callback(new Error('请输入有效数字'))
let reg = /((^[1-9]\d*)|^0)(\.\d*){0,1}$/;
if (!reg.test(value)) return callback(new Error('请输入有效数字'));
if(Number(value) > this.originPrice) return callback(new Error('暗佣不能超过运费'))
callback();
}
return {
shadeCommissionValidator,
applyType: 3, // 1是优惠申请2是管理折扣3是佣金设置4是重货优惠5是泡货优惠
unitList:[],
currencyList:[],
......@@ -143,6 +149,61 @@ export default {
darkCommission: null
}
},
computed: {
// 是否可以提交
submitable(){
let submitable = false;
[
['orgLightCommissionAmount', 'lightCommissionAmount'],
['orgShadeCommissionAmount', 'shadeCommissionAmount'],
['commissionType', 'orgCommissionType']
].forEach(item => {
if(this.form[item[0]] != this.form[item[1]]){
submitable = true
}
})
return submitable
},
// 根据渠道id显示渠道名
getChannelNameById(){
return channelId => {
const s = this.channelList.find(item => item.channelId == channelId) ?. nameZh
return s ? '' + s + '' : ''
}
},
currencyMap(){
let map = {}
this.currencyList.forEach(item => {
map[item.id] = this.$l(item, 'title')
})
return map
},
unitMap(){
let map = {}
this.unitList.forEach(item => {
map[item.id] = this.$l(item, 'title')
})
return map
},
// 原价
originPrice(){
if(!this.form.orgFreight) return 0
return Decimal(this.form.orgFreight).minus(parseFloat(this.form.orgLightCommissionAmount) || 0)
},
// 成本价
costPrice(){
if(!this.originPrice) return 0
return Decimal(this.originPrice).minus(parseFloat(this.form.shadeCommissionAmount) || 0)
},
// 销售价
salePrice(){
if(!this.originPrice) return 0
return Decimal(this.originPrice).plus(parseFloat(this.form.lightCommissionAmount) || 0)
}
},
watch:{
ccIdArr(){
this.$set(this.form, 'ccIds', this.ccIdArr.join(','))
......@@ -160,6 +221,22 @@ export default {
}
}
},
created() {
// 查看详情,列表进来的
this.getOrderSpecial()
getUnitList().then(res => this.unitList = res.data)
getCurrencyList().then(res => this.currencyList = res.data)
getProductType(this.orderItem.prodType).then(res => {
this.productType = res.data
})
if(this.order.channelId){
getChannel(this.order.channelId).then(res => {
this.channel = res.data
})
}
},
methods: {
Decimal(n){
if(!n) return Decimal
......@@ -214,43 +291,6 @@ export default {
this.closeDialog()
})
},
},
computed: {
// 是否可以提交
submitable(){
let submitable = false;
[
['orgLightCommissionAmount', 'lightCommissionAmount'],
['orgShadeCommissionAmount', 'shadeCommissionAmount'],
['commissionType', 'orgCommissionType']
].forEach(item => {
if(this.form[item[0]] != this.form[item[1]]){
submitable = true
}
})
return submitable
},
// 根据渠道id显示渠道名
getChannelNameById(){
return channelId => {
const s = this.channelList.find(item => item.channelId == channelId) ?. nameZh
return s ? '' + s + '' : ''
}
},
currencyMap(){
let map = {}
this.currencyList.forEach(item => {
map[item.id] = this.$l(item, 'title')
})
return map
},
unitMap(){
let map = {}
this.unitList.forEach(item => {
map[item.id] = this.$l(item, 'title')
})
return map
}
}
}
</script>
......@@ -30,9 +30,8 @@
prop="address"
:label="$t('入库货物属性')">
<template v-slot="{row}">
<!-- // TODO 缺少入库品牌信息 -->
<template v-if="row.warehouseInInfoVO">
{{$t('品牌')}}<dict-tag :type="DICT_TYPE.ECW_IS_BRAND" :value="row.brandType" /><br>
{{$t('品牌')}}<dict-tag :type="DICT_TYPE.ECW_IS_BRAND" :value="row.feeType" /><br>
{{$t('箱数')}}{{ row.warehouseInInfoVO.cartonsNum }}<br>
{{$t('体积')}}{{ row.warehouseInInfoVO.volume }}<br>
{{$t('重量')}}{{ row.warehouseInInfoVO.weight }}Kg
......
......@@ -25,9 +25,9 @@
<template v-slot="{row}">
<div v-for="(item,index) in row.orderWarehouseInBackItemDoList" :key="index">
<div>{{$t('规格')}}{{item.boxGauge.split('*').map(item =>`${item}cm`).join('*')}}</div>
<div style="display: flex;justify-content: space-between;white-space: nowrap">
<div>
<div>{{$t('品牌')}}{{brandList.find(item => item.id == row.brand).titleZh}}</div>
<div>{{$t('品牌')}}{{(brandList.find(item => item.id == row.brand) || {}).titleZh}}</div>
<div>{{$t('箱数')}}{{item.cartonsNum}}</div>
<div>{{$t('体积')}}{{item.volume}} CMB</div>
<div>{{$t('重量')}}{{item.weight}}KG</div>
......@@ -145,6 +145,7 @@
<script>
import ordeDetailsForm from "@/views/ecw/order/components/ordeDetailsForm";
import {
cancelAdjust,
getAdjustInfo,
......@@ -162,6 +163,7 @@ import {adjustLastWithStatus, warehouseApprovalCancel} from "@/api/ecw/batchSing
import warehouseLocation from "@/views/ecw/order/components/warehouseLocation";
import imageUpload from "@/components/ImageUpload";
import {getProductBrankPage} from "@/api/ecw/productBrank";
import {parseTime} from "@/utils/ruoyi";
export default {
name: "transferWarehousing",
components: {
......@@ -315,6 +317,9 @@ export default {
this.params.logisticsNo = this.warehouseDetails.logisticsNo;
this.params.id = this.warehouseDetails.id;
this.params.logisticsCompany = this.warehouseDetails.logisticsCompany ? parseInt(this.warehouseDetails.logisticsCompany) :undefined;
if(this.type == 2){
this.params.deliveryDate = parseTime(this.warehouseDetails.deliveryDate)
}
orderWarehousePicturePage({rows:100,bizId:this.params.id,type:this.type == 1 ? 2 : 3 }).then(r => {
if(r.code === 0){
this.params.urls = r.data.list.map(e => e.url);
......
......@@ -151,9 +151,6 @@
</template>
</el-table-column>
<el-table-column label="数量" width="130px">
<template v-slot:header>
<span style="color: red">*</span> 数量
</template>
<template v-slot="{r,c,$index}">
<el-form-item :rules="tableFormRules.quantityAll" :prop="$index + '.quantityAll'">
<span v-if="tableData[$index].id && !edit">{{ tableData[$index].quantityAll }}</span>
......@@ -454,7 +451,7 @@ export default {
boxGauge3: [{required: true, message: this.$t("货物高不能为空"), trigger: "change"}],
volume: [{required: true, message: this.$t("体积不能为空"), trigger: "change"}],
weight: [{required: true, message: this.$t("重量不能为空"), trigger: "change"}],
quantityAll: [{required: true, message: "数量不能为空", trigger: "change"}]
// quantityAll: [{required: true, message: "数量不能为空", trigger: "change"}]
},
form1: {
"brand": undefined,
......@@ -694,7 +691,7 @@ export default {
"boxGauge3": "",
"cartonsNum": cartonsNum > 0 ? cartonsNum : '',
"expressNo": "",
"quantityAll": "",
"quantityAll": undefined,
"unit": "1",
"volume": '',
"weight": '',
......
<template>
<div class="app-container">
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<products-selector v-model="form.productIdList" class="mb-20" />
<products-selector v-model="form.productIdList" show-all @setall="isAllProduct=$event" class="mb-20" />
<routers-selector v-model="selectedRoutes" />
......@@ -222,6 +222,7 @@ export default {
// needBook: 0,
// dayLimit: 10000
},
isAllProduct: false, // 是否全部商品
specialProducts: [],
priceStepList: [{},{}], // 阶梯价格
// specialList:[], // 特殊需求,默认四个
......@@ -371,10 +372,13 @@ export default {
this.$message.error(this.$t('请选择线路'));
return;
}
if(!this.isAllProduct && (!this.form.productIdList || !this.form.productIdList.length)){
return this.$message.error('请选择商品')
}
let data = Object.assign({}, this.form, {
// lineChannelList: this.selectedRoutes,
specialList: this.specialProducts,
isAllProduct: this.form.productIdList.length == 0 ? 1 : 0
isAllProduct: this.isAllProduct ? 1:0
})
if(this.form.stepPrice == 1){
data.priceStepList = this.priceStepList
......
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