Commit c7edde3a authored by houjn@hikoon.cn's avatar houjn@hikoon.cn
parents c386c15e 4251dda3
......@@ -35,12 +35,12 @@
</div>
<!--table需要给一个key,否则全选的时候不会自动更新渲染-->
<el-table v-if="!hideMap[item.value]" :data="item.routerList" :span-method="SpanMethod" border :key="selectedRoutes.length + item.value">
<el-table-column :label="$t('始发')" prop="startTitleZh">
<el-table-column :label="$t('始发')" prop="startTitleZh">
<template slot-scope="{row}">
{{$l(row, 'startTitle')}}
</template>
</el-table-column>
<el-table-column :label="$t('目的')" prop="destTitleZh" >
<el-table-column :label="$t('目的')" prop="destTitleZh" >
<template slot-scope="{row}">
{{$l(row, 'destTitle')}}
</template>
......@@ -73,7 +73,8 @@ export default {
props:{
value: {
type: Array
}
},
option: Object
},
data(){
return {
......@@ -93,7 +94,6 @@ export default {
}
},
computed:{
importCityList(){
return this.tradeCityList.filter(item => item.type == 1 || item.type == 3)
},
......@@ -183,6 +183,12 @@ export default {
})
})
}
},
option(option){
if(option){
this.changeOption()
}
}
},
created(){
......@@ -198,9 +204,20 @@ export default {
if(this.value && this.value.length){
this.selectedRoutes = this.value
}
if(this.option){
this.changeOption()
}
},
methods:{
changeOption(){
if(!this.option) return
this.importCity = +this.option.importCity
this.exportCity = +this.option.exportCity
this.transportType = this.option.transportId
this.channelId = +this.option.channelId
},
// 全选、全不选 某个运输方式所有线路
toggleGroupChecker(index, selected){
let routerList = this.filteredRouterList[index].routerList
......
......@@ -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>
......
......@@ -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;
}
});
......
......@@ -40,16 +40,16 @@
</el-table-column>
<el-table-column :label="$t('商品信息')" width="250px" align="center" prop="prodTitleZh">
</el-table-column>
<el-table-column :label="$t('备案')" align="center" prop="productRecord">
<el-table-column :label="$t('备案')" align="center" prop="feeType">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE" :value="row.productRecord" />
<dict-tag :type="DICT_TYPE.ECW_IS_BRAND" :value="row.feeType" />
</template>
</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>
......
......@@ -90,6 +90,7 @@
</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,7 +101,7 @@
</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">
......
......@@ -7,7 +7,7 @@
<el-col :span="8">
<el-form-item :label="$t('客户名称')" prop="customerId">
<div style="display: flex">
<el-input readonly="readonly" :placeholder="$t('请输入选择客户')" v-model="customerName"></el-input>
<el-input :disabled="true" :placeholder="$t('请输入选择客户')" v-model="customerName"></el-input>
<img v-if="$route.params.dictId == 0" style="width: 40px;height: 40px;margin-left: 40px;" src="@/assets/images/phonebook.png" class="phonebook" @click="customerNameShow= true" />
</div>
<!-- <el-select-->
......@@ -113,7 +113,7 @@
</div>
</div>
</div>
<el-form v-if="form.type == 2 && form.darkReturnType == 1">
<el-form v-if="form.type == 2 && form.darkReturnType == 1" :disabled="$route.params.dictId != 0">
<el-form-item :label="$t('商品类型')" v-for="(item,index) in darkServantAndProductForm" :key="index">
<div class="shanping-type">
<div class="tool">
......@@ -623,7 +623,7 @@ export default {
if((val == 1 || val == 2)){
let index = this.weightList.findIndex(item => item.id == 7);
this.mingServantFrom.forEach(item =>{
item.refundUnit = parseInt(this.weightList[index].id);
item.refundUnit = parseInt(this.weightList[index]. id);
})
this.mingServantAnddarkServant.forEach(item =>{
item.refundUnit =parseInt(this.weightList[index].id);
......
......@@ -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){
......
......@@ -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">
......
......@@ -12,17 +12,17 @@
<span style="margin: 0 8px;">{{$t('')}}</span>
<el-date-picker clearable v-model="queryParams.endCreateTime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" :placeholder="$t('请选择结束日期')" />
</el-form-item>
<el-form-item :label="$t('始发仓')" prop="startWarehouseId">
<el-select v-model="queryParams.startWarehouseId" :placeholder="$t('请选择始发仓')" clearable>
<el-form-item :label="$t('始发仓')" prop="destinationId">
<el-select v-model="queryParams.originId" :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="destWarehouseId">
<el-select v-model="queryParams.destWarehouseId" :placeholder="$t('请选择目的仓')" clearable>
<el-form-item :label="$t('目的仓')" prop="destinationId">
<el-select v-model="queryParams.destinationId" :placeholder="$t('请选择目的仓')" clearable>
<el-option v-for="item in importWarehouseList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item :label="$t('始发地')+':'">
<!-- <el-form-item :label="$t('始发地')+':'">
<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-select>
......@@ -98,7 +98,9 @@
</el-table-column>
<el-table-column :label="$t('订单号')" align="center">
<template slot-scope="scope">
<span>{{scope.row.orderNo}}</span>
<router-link :to="{path: '/order/detail',query: {orderId: scope.row.orderId}}" class="link-type">
<span>{{ scope.row.orderNo }}</span>
</router-link>
<span>{{specialNeedTag(scope.row.specialNeed)}}</span>
</template>
</el-table-column>
......@@ -198,8 +200,8 @@ export default {
},
created() {
this.getList();
// getTradeCityList().then(res => this.tradeCityList = res.data)
getTradeCityList().then(res => this.tradeCityList = res.data)
listServiceUser().then(r => {
this.creatorData = r.data
})
......
......@@ -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>
......
......@@ -194,7 +194,22 @@ export default {
var productData = this.orderData.orderItemVOList.find(item=>item.orderItemId==row.orderItemId)
if(productData){
getProduct(productData.prodId).then(res=>{
let url = '../../lineProject/product-price/edit?product_id='+productData.prodId+'&product_type='+res.data.typeId
let params = {
product_id: productData.prodId,
product_type: res.data.typeId,
transportId: this.orderData.transportId,
exportCity: this.orderData.logisticsInfoDto.startCityId,
importCity: this.orderData.logisticsInfoDto.destCityId,
startWarehouseId: this.orderData.logisticsInfoDto.startWarehouseId,
destWarehouseId: this.orderData.logisticsInfoDto.destWarehouseId,
lineId: this.orderData.logisticsInfoDto.lineId,
channelId: this.orderData.logisticsInfoDto.channelId
}
let url = '../../lineProject/product-price/edit?' + (new URLSearchParams(params)).toString()
/* +productData.prodId
+'&product_type='+res.data.typeId
+'&transportId='+this.orderData.transportId
+'&exportCity='+this.orderData.logisticsInfoDto.startCityId+'&importCity='+this.orderData.logisticsInfoDto.destCityId */
return this.$router.push(url)
})
}
......@@ -278,9 +293,9 @@ export default {
margin-top: 20px;
}
.clamp3{
overflow: hidden;
display: -webkit-box;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
-webkit-line-clamp: 3;
}
</style>
......@@ -286,7 +286,7 @@
</el-select>
</el-form-item>
</el-row>
<el-row :span="8" v-if="orderExceptionData.orderExceptionType!='order_lack_box_exception'&&orderExceptionData.orderExceptionType!='order_miss_exception'&&orderExceptionData.orderExceptionType!='order_superfluous_goods_exception'&&orderExceptionData.orderExceptionType!='order_in_water_exception'&&orderExceptionData.orderExceptionType!='order_damage_exception'&&orderExceptionData.orderExceptionType!='order_other_exception'&&orderExceptionData.orderExceptionType!='order_lack_box_exception'">
<el-row :span="8" v-if="orderExceptionData.orderExceptionType!='order_lack_box_exception'&&orderExceptionData.orderExceptionType!='order_lack_box_exception'">
<el-form-item :label="$t('备注')+':'" size="medium">
<el-input style="width: 500px;" type="textarea" v-model="handlerParams.orderExceptionHandlerRemark" />
</el-form-item>
......
......@@ -44,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" prop="shadeCommissionAmount" :rules="{type: 'number', max: originPrice.toNumber(), message: '暗佣设置错误', trigger: 'blur'}">
<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>
......@@ -124,7 +124,15 @@ export default {
WorkFlow
},
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:[],
......@@ -180,17 +188,18 @@ export default {
// 原价
originPrice(){
if(!this.form.orgFreight) return 0
return Decimal(this.form.orgFreight).minus(this.form.orgLightCommissionAmount || 0)
return Decimal(this.form.orgFreight).minus(parseFloat(this.form.orgLightCommissionAmount) || 0)
},
// 成本价
costPrice(){
if(!this.originPrice) return 0
return Decimal(this.originPrice).minus(this.form.shadeCommissionAmount || 0)
return Decimal(this.originPrice).minus(parseFloat(this.form.shadeCommissionAmount) || 0)
},
// 销售价
salePrice(){
if(!this.originPrice) return 0
return Decimal(this.originPrice).plus(this.form.lightCommissionAmount || 0)
return Decimal(this.originPrice).plus(parseFloat(this.form.lightCommissionAmount) || 0)
}
},
......
......@@ -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": '',
......
......@@ -103,6 +103,12 @@
<el-button plain type="primary" @click="submit('process')">{{$t('设为已处理')}}</el-button>
</div>
</div>
<el-form v-if="type=='order_heavy_cargo_exception'" :model="handlerParams" ref="queryForms" size="small" label-width="50px" class="card">
<el-form-item :label="$t('备注')+':'" size="medium">
<el-input style="width: 500px;" type="textarea" v-model="handlerParams.orderExceptionHandlerRemark" />
</el-form-item>
</el-form>
</div>
</template>
......@@ -125,7 +131,10 @@ export default {
list: {},
orderId:0,
type:'',
branklist:[]
branklist:[],
handlerParams:{
orderExceptionHandlerRemark:''
}
};
},
created() {
......@@ -194,7 +203,7 @@ export default {
return sums;
},
submit(result){
handlerExceptionByExceptionId({orderExceptionId:this.list.id,orderExceptionHandlerResult:result}).then(res=>{
handlerExceptionByExceptionId({orderExceptionId:this.list.id,orderExceptionHandlerResult:result,orderExceptionHandlerRemark:this.handlerParams.orderExceptionHandlerRemark}).then(res=>{
this.$modal.msgSuccess(this.$t("提交成功"));
this.$router.back()
})
......
......@@ -4,7 +4,12 @@
<el-form-item :label="$t('商品类型')" prop="productType">
<el-select v-model="form.productType" :disabled="!!$route.query.ids">
<el-option v-for="type in productTypeList" :key="type.id" :label="type.titleZh" :value="type.id" />
<el-option
v-for="type in productTypeList"
:key="type.id"
:label="type.titleZh"
:value="type.id"
></el-option>
</el-select>
</el-form-item>
......@@ -28,8 +33,8 @@
<el-form-item :label="$t('路线')" prop="lineChannelList" v-if="lineList.length">
<template v-if="lineList.length == 1">
<el-input
v-for="item in lineList"
:key="item.id"
v-for="(item, index) in lineList"
:key="index"
:value="!item.warehouseLineDO ? $t('数据异常,缺少warehouseLineDO字段') : $t('【{transport}】从【{from}】发往【{to}】', {
transport: getDictDataLabel(DICT_TYPE.ECW_TRANSPORT_TYPE, item.warehouseLineDO.transportType),
from: $l(item.warehouseLineDO, 'startTitle'),
......@@ -57,7 +62,7 @@
</el-form-item>
<!--有路线则不显示路线选择器-->
<routers-selector v-else v-model="selectedRoutes" />
<routers-selector v-else v-model="selectedRoutes" :option="routerOption" />
<el-card style="margin-bottom: 10px">
<div slot="header" style="font-size:20px;">
......@@ -230,6 +235,7 @@ import { arrryToKeyedObjectBy } from '@/utils/index'
import Selector from '@/components/Selector'
import Inputor from '@/components/Inputor'
import {parseTime} from '@/utils/ruoyi'
import {openedRouterList} from '@/api/ecw/warehouse'
export default {
components: { RoutersSelector, ProductSelector, Selector, Inputor },
data() {
......@@ -262,7 +268,9 @@ export default {
}
},
computed: {
routerOption(){
return this.$route.query
}
},
watch: {
checkList() { //选择路线
......@@ -431,6 +439,26 @@ export default {
this.form.validateStartDate = parseTime(Date.now())
this.form.validateEndDate = parseTime(Date.now() + 86400*365*2*1000)
// 如果指定了始发,目的仓和运输方式,渠道,则是从未报价异常跳转过来的,固定一个路线
if(this.$route.query.startWarehouseId){
openedRouterList({
destCityId: this.$route.query.importCity,
lineId: this.$route.query.lineId,
startCityId: this.$route.query.exportCity,
transportType: this.$route.query.transportId
}).then(res => {
console.log("open ---> ", res)
this.lineList = [
Object.assign({
// id: res.data[0].id,
lineId:this.$route.query.lineId,
shippingChannelId: this.$route.query.channelId,
warehouseLineDO: {... res.data[0]}
})]
})
}
}
if (this.$route.query.product_type) {
......@@ -550,7 +578,7 @@ export default {
}
// 添加的提交
data.productId = this.product.id;
data.lineChannelList = this.selectedRoutes
data.lineChannelList = this.lineList.length ? this.lineList : this.selectedRoutes
if((this.form.priceType == 0 && !this.form.transportPrice) || (this.form.priceType == 1 && !this.form.allPrice)){
return this.$message.error(this.$t('运费/全包价不能为0'))
......
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