Commit 3123755f authored by TIAN.DESHENG's avatar TIAN.DESHENG
parents 7937d53f 2160afa2
...@@ -46,6 +46,10 @@ export default { ...@@ -46,6 +46,10 @@ export default {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
} }
.empty-placeholder{
padding: 50px;
text-align: center;
}
$sizes: 10,20,30,50,100,150,200,500,800,1000; $sizes: 10,20,30,50,100,150,200,500,800,1000;
@for $i from 1 through length($sizes){ @for $i from 1 through length($sizes){
$item: nth($sizes, $i); $item: nth($sizes, $i);
......
...@@ -197,6 +197,15 @@ export function rollbackApply(data){ ...@@ -197,6 +197,15 @@ export function rollbackApply(data){
}) })
} }
// 退仓-订单项退仓(不审批)
export function rollbackDelete(data){
return request({
url: '/order/order-warehouse-in/rollback-order-item',
method: 'put',
data
})
}
//取消订单 //取消订单
export function cancelOrder(orderId){ export function cancelOrder(orderId){
return request({ return request({
...@@ -359,3 +368,11 @@ export function getOrderSpecialByApproveId(approveId) { ...@@ -359,3 +368,11 @@ export function getOrderSpecialByApproveId(approveId) {
}) })
} }
// 根据合并订单编号获得已合单的订单动态
export function getMergeLogByMergedOrderNo(params){
return request({
url: '/order/merge/getMergeLogByMergedOrderNo',
method: 'get',
params
})
}
...@@ -93,3 +93,26 @@ export function orderReview(orderId){ ...@@ -93,3 +93,26 @@ export function orderReview(orderId){
method: 'put' method: 'put'
}) })
} }
// 根据订单id批量复合订单控货人放货
export function batchReview(data){
return request({
url: '/ecw/order-cargo-control-pick/review/',
method: 'put',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data
})
}
// 获得可调货的控货订单列表
export function seasoningCondimentsSelect(params){
return request({
url: '/ecw/order-cargo-control-pick/seasoning-condiments/cargo-control/order/select',
method: 'get',
params
})
}
<template> <template>
<div class="need-know" :id="'need-know_' + keyname" v-if="detail"> <div class="need-know" :id="'need-know_' + keyname" v-if="detail">
<!-- <h2>{{detail.titleZh}}</h2> --> <!-- <h2>{{detail.titleZh}}</h2> -->
<div class="body" v-html="detail.contentZh"></div> <div class="body" ref="body" v-html="detail.contentZh"></div>
</div> </div>
</template> </template>
<script> <script>
...@@ -26,6 +26,9 @@ export default { ...@@ -26,6 +26,9 @@ export default {
download(){ download(){
// 直接保存图片 // 直接保存图片
let l = this.$loading() let l = this.$loading()
/* document.querySelectorAll(`#need-know_${this.keyname} img`).forEach(img => {
img.setAttribute('crossOrigin', '*')
}) */
html2canvas(document.querySelector("#need-know_" + this.keyname)).then(canvas => { html2canvas(document.querySelector("#need-know_" + this.keyname)).then(canvas => {
canvas.toBlob((blob) => { canvas.toBlob((blob) => {
FileSaver.saveAs(blob, this.keyname + '.png') FileSaver.saveAs(blob, this.keyname + '.png')
......
...@@ -297,7 +297,7 @@ export const constantRoutes = [ ...@@ -297,7 +297,7 @@ export const constantRoutes = [
meta: {title: '订单特价申请', icon: '', activeMenu: '/order/index'} meta: {title: '订单特价申请', icon: '', activeMenu: '/order/index'}
}, },
{ {
path: 'discount/:offerProdId(\\d+)', path: 'discount/:orderItemId(\\d+)',
component: (resolve) => import('@/views/ecw/order/special/discount'), component: (resolve) => import('@/views/ecw/order/special/discount'),
props: true, props: true,
name: 'discount', name: 'discount',
......
...@@ -2,16 +2,16 @@ ...@@ -2,16 +2,16 @@
<div class="app-seaProcess"> <div class="app-seaProcess">
<!-- 海运流程图 --> <!-- 海运流程图 -->
<el-scrollbar :vertical="true" viewClass="shipping-chart"> <el-scrollbar :vertical="true" viewClass="shipping-chart">
<div v-for="(nodes,index) in seaBaseData" :key="index" class="chart-nodes"> <div v-for="(nodes,index) in processData" :key="index" class="chart-nodes">
<div class="node-area"> <div class="node-area">
<div v-for="node in nodes" :key="node.title" @click="nodeClick(index, node)" class="node-div"> <div v-for="node in nodes" :key="node.title" @click="nodeClick(index, node)" class="node-div">
<div v-show="isShowAgent(node.type)"> <div>
<img :src="getImgSrc(node)" alt=""> <img :src="getImgSrc(node)" alt="">
<p>{{node.title}}</p> <p>{{node.title}}</p>
</div> </div>
</div> </div>
</div> </div>
<div class="arrow-area" v-if="index !== (seaBaseData.length-1)"> <div class="arrow-area" v-if="index !== (processData.length-1)">
<img src="@/assets/images/shipping/jt-start.png" alt="" v-if="index >= currIndex"> <img src="@/assets/images/shipping/jt-start.png" alt="" v-if="index >= currIndex">
<img src="@/assets/images/shipping/jt-end.png" alt="" v-if="index < currIndex"> <img src="@/assets/images/shipping/jt-end.png" alt="" v-if="index < currIndex">
</div> </div>
...@@ -90,10 +90,12 @@ export default { ...@@ -90,10 +90,12 @@ export default {
currIndex: 0, currIndex: 0,
// 当前节点 // 当前节点
currNode: {}, currNode: {},
// 数据
processData: this.seaBaseData,
}; };
}, },
created() {}, created() {},
computed: { /* computed: {
isShowAgent() { isShowAgent() {
return (type) => { return (type) => {
if (type === "agent") { if (type === "agent") {
...@@ -106,7 +108,7 @@ export default { ...@@ -106,7 +108,7 @@ export default {
return true; return true;
}; };
}, },
}, }, */
methods: { methods: {
/** 关闭弹窗 */ /** 关闭弹窗 */
closeDialog(type) { closeDialog(type) {
...@@ -176,6 +178,7 @@ export default { ...@@ -176,6 +178,7 @@ export default {
watch: { watch: {
/* 监听发货对象 */ /* 监听发货对象 */
shipmentObj(val) { shipmentObj(val) {
let newNodes = [];
// 迭代每个节点 // 迭代每个节点
for (let i = 0; i < this.seaBaseData.length; i++) { for (let i = 0; i < this.seaBaseData.length; i++) {
const nodes = this.seaBaseData[i]; const nodes = this.seaBaseData[i];
...@@ -218,7 +221,9 @@ export default { ...@@ -218,7 +221,9 @@ export default {
// 加1表示为已完成步骤后一步 // 加1表示为已完成步骤后一步
this.currIndex = i + 1; this.currIndex = i + 1;
} }
newNodes.push(nodes);
} }
this.processData = newNodes;
}, },
}, },
}; };
......
...@@ -280,7 +280,7 @@ ...@@ -280,7 +280,7 @@
</el-card> </el-card>
<el-card class="card"> <el-card class="card">
<div slot="header" class="card-title">应收账单</div> <div slot="header" class="card-title">应收账单</div>
<el-table :data="form.receiptAccountList" border> <el-table :data="form.receiptAccountList" border :key="form.receiptAccountList.length">
<el-table-column label="应收币种" align="center"> <el-table-column label="应收币种" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" /> <dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
...@@ -430,7 +430,7 @@ ...@@ -430,7 +430,7 @@
</el-card> --> </el-card> -->
</el-form> </el-form>
<div slot="footer" style="margin: 20px 0"> <div slot="footer" style="margin: 20px 0">
<el-button type="primary" @click="submitForm(1)">保 存</el-button> <el-button type="primary" :loading="saveBtnLoading" @click="submitForm(1)">保 存</el-button>
<el-button type="primary" @click="submitForm(0)">{{ id ? '修 改' : '新 增' }}</el-button> <el-button type="primary" @click="submitForm(0)">{{ id ? '修 改' : '新 增' }}</el-button>
</div> </div>
<el-dialog <el-dialog
...@@ -579,7 +579,19 @@ ...@@ -579,7 +579,19 @@
></dict-tag> ></dict-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="单价美元" align="center" prop="unitPrice" /> <!-- <el-table-column label="单价美元" align="center" prop="unitPrice" /> -->
<el-table-column label="单价" align="center" prop="unitPrice">
<template slot-scope="scope">
<span>{{ scope.row.unitPrice }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
<el-table-column label="总金额" align="center" prop="totalAmount">
<template slot-scope="scope">
<span>{{ scope.row.totalAmount }}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
</template>
</el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="total > 0" v-show="total > 0"
...@@ -663,7 +675,8 @@ export default { ...@@ -663,7 +675,8 @@ export default {
tradeCityList: [], tradeCityList: [],
id: 0, id: 0,
receiptId: 0, receiptId: 0,
currencyList: [] currencyList: [],
saveBtnLoading: false
}; };
}, },
async created() { async created() {
...@@ -1009,6 +1022,7 @@ export default { ...@@ -1009,6 +1022,7 @@ export default {
this.open = false; this.open = false;
}, },
submitForm(addType) { submitForm(addType) {
this.saveBtnLoading = true
const params = {...this.form, addType} const params = {...this.form, addType}
params.receiptAccountList.length = params.receiptAccountList.length - 1 params.receiptAccountList.length = params.receiptAccountList.length - 1
// params.receiptAccountList = params.receiptAccountList.map(v => Object.assign(v, { })) // params.receiptAccountList = params.receiptAccountList.map(v => Object.assign(v, { }))
...@@ -1018,6 +1032,7 @@ export default { ...@@ -1018,6 +1032,7 @@ export default {
} }
if (params.receivableVOList.length === 0) { if (params.receivableVOList.length === 0) {
this.$modal.msgError("请添加未收客户款项"); this.$modal.msgError("请添加未收客户款项");
this.saveBtnLoading = false
return return
} }
if (addType === 1) { if (addType === 1) {
...@@ -1038,11 +1053,13 @@ export default { ...@@ -1038,11 +1053,13 @@ export default {
if (this.id && this.id !== '0') { if (this.id && this.id !== '0') {
updateReceipt(params).then(res => { updateReceipt(params).then(res => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.saveBtnLoading = false
this.$router.back(); this.$router.back();
}) })
} else { } else {
createReceipt(params).then(res => { createReceipt(params).then(res => {
this.$modal.msgSuccess("保存成功"); this.$modal.msgSuccess("保存成功");
this.saveBtnLoading = false
this.$router.back(); this.$router.back();
}) })
} }
...@@ -1066,11 +1083,13 @@ export default { ...@@ -1066,11 +1083,13 @@ export default {
if (this.id && this.id !== '0') { if (this.id && this.id !== '0') {
updateReceipt(params).then(res => { updateReceipt(params).then(res => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.saveBtnLoading = false
this.$router.back(); this.$router.back();
}) })
} else { } else {
createReceipt(params).then(res => { createReceipt(params).then(res => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.saveBtnLoading = false
this.$router.back(); this.$router.back();
}) })
} }
......
...@@ -113,7 +113,11 @@ ...@@ -113,7 +113,11 @@
<span>{{ scope.$index + 1 }}</span> <span>{{ scope.$index + 1 }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="收款单号" align="center" prop="receiptNo" /> <el-table-column label="收款单号" align="center" prop="receiptNo">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="verificationCancelClick(scope.row)">{{ scope.row.receiptNo }}</el-button>
</template>
</el-table-column>
<!-- <el-table-column label="自编号" align="center" prop="orderNo" /> --> <!-- <el-table-column label="自编号" align="center" prop="orderNo" /> -->
<el-table-column label="订单号" align="center" prop="orderNo" /> <el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="客户名称" align="center" prop="customerName" /> <el-table-column label="客户名称" align="center" prop="customerName" />
......
...@@ -23,19 +23,19 @@ ...@@ -23,19 +23,19 @@
{{ form.isPayAdvance === 0 ? '' : '' }} {{ form.isPayAdvance === 0 ? '' : '' }}
</el-form-item> </el-form-item>
<el-form-item label="旧运费"> <el-form-item label="旧运费">
<el-input v-model="form.orgSeaFreight" readonly> <el-input v-model="form.orgSeaFreight" readonly style="width: 400px">
<div slot="prepend" style="width: 60px">{{ currentMap[form.orgSeaFreightCurrency] }}</div> <div slot="prepend" style="width: 60px">{{ currentMap[form.orgSeaFreightCurrency] }}</div>
<div slot="append" style="width: 60px">{{ unitMap[form.orgSeaFreightVolume] }}</div> <div slot="append" style="width: 60px">{{ unitMap[form.orgSeaFreightVolume] }}</div>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="旧清关费"> <el-form-item label="旧清关费">
<el-input v-model="form.orgClearanceFreight" readonly> <el-input v-model="form.orgClearanceFreight" readonly style="width: 400px">
<div slot="prepend" style="width: 60px">{{ currentMap[form.orgClearanceFreightCurrency] }}</div> <div slot="prepend" style="width: 60px">{{ currentMap[form.orgClearanceFreightCurrency] }}</div>
<div slot="append" style="width: 60px">{{ unitMap[form.orgClearanceFreightVolume] }}</div> <div slot="append" style="width: 60px">{{ unitMap[form.orgClearanceFreightVolume] }}</div>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="新运费" required> <el-form-item label="新运费" required style="width: 400px">
<el-input v-model.number="form.seaFreight"> <el-input v-model="form.seaFreight" type="number">
<el-select v-model="form.seaFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px"> <el-select v-model="form.seaFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px">
<el-option <el-option
v-for="item in currencyList" v-for="item in currencyList"
...@@ -54,8 +54,8 @@ ...@@ -54,8 +54,8 @@
</el-select> </el-select>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="新清关费" required> <el-form-item label="新清关费" required style="width: 400px">
<el-input v-model.number="form.clearanceFreight"> <el-input v-model="form.clearanceFreight" type="number">
<el-select v-model="form.clearanceFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px"> <el-select v-model="form.clearanceFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px">
<el-option <el-option
v-for="item in currencyList" v-for="item in currencyList"
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
<!-- 操作工具栏 --> <!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="2"> <el-col :span="2">
<el-button type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple">批量复核</el-button> <el-button type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple" @click="batchReview">批量复核</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
...@@ -118,7 +118,7 @@ ...@@ -118,7 +118,7 @@
<template v-if="scope.row.cargoControlStatus == 1"> <template v-if="scope.row.cargoControlStatus == 1">
<el-button type="text" size="mini" @click="toDetail(scope.row)" >查看</el-button> <el-button type="text" size="mini" @click="toDetail(scope.row)" >查看</el-button>
<el-button type="text" size="mini" @click="showTransferCargoOrderId=scope.row.orderId" >调货</el-button> <el-button type="text" size="mini" @click="showTransferCargoOrderId=scope.row.orderId" >调货</el-button>
<el-button type="text" size="mini" @click="$alert('//TODO')">反复核</el-button> <el-button type="text" size="mini" @click="showFallbackOrder=scope.row">反复核</el-button>
</template> </template>
<!-- <el-button type="text" size="mini" >取消</el-button> <!-- <el-button type="text" size="mini" >取消</el-button>
...@@ -136,6 +136,7 @@ ...@@ -136,6 +136,7 @@
<transfer v-if="showTransferOrder" v-bind="showTransferOrder" @close="showTransferOrder=null" /> <transfer v-if="showTransferOrder" v-bind="showTransferOrder" @close="showTransferOrder=null" />
<release v-if="showReleaseOrderId" :order-id="showReleaseOrderId" @close="showReleaseOrderId=null" @success="onReleaseSuccess" /> <release v-if="showReleaseOrderId" :order-id="showReleaseOrderId" @close="showReleaseOrderId=null" @success="onReleaseSuccess" />
<transfer-cargo v-if="showTransferCargoOrderId" :order-id="showTransferCargoOrderId" @close="showTransferCargoOrderId=null" /> <transfer-cargo v-if="showTransferCargoOrderId" :order-id="showTransferCargoOrderId" @close="showTransferCargoOrderId=null" />
<fallback v-if="showFallbackOrder !== null" :order="showFallbackOrder" :index="null" @close="showFallbackOrder=null" @success="onFallbackSuccess" />
</div> </div>
</template> </template>
...@@ -148,14 +149,14 @@ import { getTradeCityList } from '@/api/ecw/region' ...@@ -148,14 +149,14 @@ import { getTradeCityList } from '@/api/ecw/region'
import Transfer from '@/views/ecw/order/components/Transfer' import Transfer from '@/views/ecw/order/components/Transfer'
import Release from './components/Release' import Release from './components/Release'
import CargoControlEdit from './components/CargoControlEdit' import CargoControlEdit from './components/CargoControlEdit'
import { getCargoControlOrderPage } from "@/api/ecw/orderCargoControl" import { getCargoControlOrderPage, batchReview } from "@/api/ecw/orderCargoControl"
import TransferCargo from '@/views/ecw/order/components/TransferCargo' import TransferCargo from '@/views/ecw/order/components/TransferCargo'
import Fallback from './components/Fallback'
export default { export default {
name: "OrderCargonControl", name: "OrderCargonControl",
components: { components: {
CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo CustomerSelector, ProductSelector, Selector, Transfer, Release,CargoControlEdit, TransferCargo, Fallback
}, },
data() { data() {
return { return {
...@@ -191,6 +192,7 @@ export default { ...@@ -191,6 +192,7 @@ export default {
showTransferOrder: null, // 控制权转移操作订单 showTransferOrder: null, // 控制权转移操作订单
showReleaseOrderId: null, // 放货ID showReleaseOrderId: null, // 放货ID
showTransferCargoOrderId: null, // 调货ID showTransferCargoOrderId: null, // 调货ID
showFallbackOrder: null, // 调货订单
}; };
}, },
computed: { computed: {
...@@ -272,10 +274,26 @@ export default { ...@@ -272,10 +274,26 @@ export default {
this.$message.success('操作成功') this.$message.success('操作成功')
this.handleQuery() this.handleQuery()
}) })
},
// 批量复核
batchReview(){
this.$confirm('确定复核选中的订单么?').then(() => {
return batchReview("orderIds=" + this.ids.join(','))
}).then(() => {
this.$message.success('操作成功')
this.handleQuery()
})
},
// 反复核
unReview(row){
}, },
onReleaseSuccess(){ onReleaseSuccess(){
this.showReleaseOrderId = null this.showReleaseOrderId = null
this.handleQuery() this.handleQuery()
},
onFallbackSuccess(){
this.showFallbackOrder = null
} }
} }
}; };
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="原放货箱数"> <el-form-item label="原放货箱数">
{{info.pickNum}} {{index == null ? order.releaseNum : info.pickNum}}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -37,7 +37,13 @@ ...@@ -37,7 +37,13 @@
</el-form-item> </el-form-item>
<el-form-item label="控货手机号"> <el-form-item label="控货手机号">
+{{info.countryCode}} {{info.phone}} <template v-if="index !== null">
+ {{info.countryCode}} {{info.phone}}
</template>
<template v-else>
+{{order.cargoControlCountryCode}} {{order.cargoControlPhone}}
</template>
</el-form-item> </el-form-item>
<el-form-item label="手机验证码" prop="code"> <el-form-item label="手机验证码" prop="code">
<el-input v-model="formData.code" placeholder="" style="width: 100px; margin-right:10px"></el-input> <el-input v-model="formData.code" placeholder="" style="width: 100px; margin-right:10px"></el-input>
...@@ -82,7 +88,9 @@ export default { ...@@ -82,7 +88,9 @@ export default {
return t return t
}, },
info(){ info(){
return this.order.cargoControlPickBackVOList[this.index] if(this.index !== null)
return this.order.cargoControlPickBackVOList[this.index]
return this.order
} }
}, },
watch:{ watch:{
......
<template>
<el-dialog :title="title" visible :before-close="closeDialog" :close-on-click-modal="false">
<el-collapse v-model="activeNames">
<template v-for="item in list">
<el-collapse-item :key="item.orderNo" :title="item.orderNo" :name="item.orderNo">
<el-timeline :reverse="reverse">
<el-timeline-item
v-for="(activity, index) in item.logs"
:key="index"
:timestamp="activity.createTime|parseTime">
{{activity.titleZh}}
</el-timeline-item>
</el-timeline>
</el-collapse-item>
</template>
<div class="empty-placeholder" v-if="status == 'finished' && !list.length">
暂无数据
</div>
</el-collapse>
</el-dialog>
</template>
<script>
import {getMergeLogByMergedOrderNo} from '@/api/ecw/order'
import {parseTime} from '@/utils/ruoyi'
export default {
props:{
orderNo: String
},
data(){
return {
show: false,
list:[],
activeNames:[],
status: null
}
},
filters: {parseTime},
computed:{
title(){
return '合单日志 - ' + this.orderNo
}
},
created(){
this.status = 'loading'
getMergeLogByMergedOrderNo({mergedOrderNo: this.orderNo}).then(res => {
for(let orderNo in res.data){
this.list.push({
orderNo,
logs: res.data[orderNo]
})
}
if(!this.list.length){
this.empty = true
}
}).finally(res => {
this.status = 'finished'
})
},
methods:{
closeDialog(){
this.show = false
this.$emit('close');
}
}
}
</script>
\ No newline at end of file
...@@ -17,7 +17,12 @@ ...@@ -17,7 +17,12 @@
</el-form> </el-form>
</div> </div>
<div v-if="step=='preview'" style="height:250px; overflow-y:hidden"> <div v-if="step=='preview'" style="height:250px; overflow-y:hidden">
<div class="order-print-tag-item" v-for="item in tags.filter(tag => tag.num >= form.start && tag.num <= form.end)" style="width: 80mm; margin: 0 auto;" :id="'order-print-tag' + item.num" :key="item.num"> <div
class="order-print-tag-item"
v-for="(item, index) in tags.filter(tag => tag.num >= form.start && tag.num <= form.end)"
style="width: 80mm; margin: 0 auto;" :id="'order-print-tag' + item.num"
:style="{display: index == 0 ? 'block':'none' }"
:key="item.num">
<div style="float: left; width: 28mm; border-bottom: 0.2mm solid #333; border-right: 0.2mm solid #333; " > <div style="float: left; width: 28mm; border-bottom: 0.2mm solid #333; border-right: 0.2mm solid #333; " >
<img :src="detail.url" alt="ECP0063704N-1" style="width: 26mm" /> <img :src="detail.url" alt="ECP0063704N-1" style="width: 26mm" />
<p style=" text-align: center; height: 5mm; font-size: 3mm; -webkit-margin-before: 0em; -webkit-margin-after: 0em; margin-top: 0mm; " > <p style=" text-align: center; height: 5mm; font-size: 3mm; -webkit-margin-before: 0em; -webkit-margin-after: 0em; margin-top: 0mm; " >
......
<template> <template>
<el-dialog title="调货" visible :before-close="closeDialog" :close-on-click-modal="false" width="800px"> <el-dialog title="调货" visible :before-close="closeDialog" :close-on-click-modal="false" width="800px">
<!--调货--> <!--调货-->
<el-form ref="form" :model="formData" :rules="rules" size="small" label-width="150px" > <el-form ref="form" :model="formData" :rules="rules" size="small" label-width="150px" v-if="detail" >
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="收货人"> <el-form-item label="收货人">
{{detail.orderNo}} {{detail.consigneeName}}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="收货人电话"> <el-form-item label="收货人电话">
{{detail.sumNum}} {{detail.consigneeCountryCode}} {{detail.consigneePhone}}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="选择控货订单"> <el-form-item label="选择控货订单">
<el-select v-model="formData.order" placeholder="请选择控货中的订单" multiple> <el-select v-model="formData.orderIds" placeholder="请选择控货中的订单" multiple>
<el-option :label="1" :value="1"></el-option> <el-option v-for="item in orders" :label="item.orderNo" :value="item.orderId" :key="item.orderId"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import {createPick, getRleaseInfo} from '@/api/ecw/orderCargoControl' import {createPick, getRleaseInfo, seasoningCondimentsSelect} from '@/api/ecw/orderCargoControl'
import AreaCodeSelector from '@/components/AreaCodeSelector' import AreaCodeSelector from '@/components/AreaCodeSelector'
import SendSmsCode from '@/views/ecw/order/components/SendSmsCode' import SendSmsCode from '@/views/ecw/order/components/SendSmsCode'
export default { export default {
...@@ -85,25 +85,31 @@ export default { ...@@ -85,25 +85,31 @@ export default {
show: false, show: false,
detail: null, detail: null,
formData:{ formData:{
"pickNum": 0, orderIds:[]
"pickQuantity": 0,
"pickVolume": 0,
"pickWeight": 0,
"remarks": "",
}, },
rules:{ rules:{
consigneeName: {required: true, message: '请填写收货人'}, consigneeName: {required: true, message: '请填写收货人'},
code: {required: true, message: '请填写验证码'} code: {required: true, message: '请填写验证码'}
}, },
orders: [],
selectedOrders:[]
} }
}, },
watch:{
'formData.orderIds'(val){
this.selectedOrders = this.orders.filter(item => val.indexOf(item.orderId) > -1)
}
},
created(){ created(){
this.show = true this.show = true
this.loadData() this.loadData()
}, },
methods:{ methods:{
loadData(){ loadData(){
getRleaseInfo(this.orderId).then(res => this.detail = res.data) getRleaseInfo(this.orderId).then(res => this.detail = res.data)
seasoningCondimentsSelect({orderId: this.orderId}).then(res => {
this.orders = res.data
})
}, },
closeDialog(){ closeDialog(){
this.show = false this.show = false
......
...@@ -86,7 +86,7 @@ ...@@ -86,7 +86,7 @@
<el-descriptions-item label="始发仓">{{FeeDetails.startWarehouse}}</el-descriptions-item> <el-descriptions-item label="始发仓">{{FeeDetails.startWarehouse}}</el-descriptions-item>
<el-descriptions-item label="目的仓">{{FeeDetails.destWarehouse}}</el-descriptions-item> <el-descriptions-item label="目的仓">{{FeeDetails.destWarehouse}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions v-else-if="type === 3" :column="4" border> <el-descriptions v-else-if="type === 3 || type === 4" :column="4" border>
<el-descriptions-item label="订单号">{{FeeDetails.orderNo}}</el-descriptions-item> <el-descriptions-item label="订单号">{{FeeDetails.orderNo}}</el-descriptions-item>
<el-descriptions-item label="运输方式"> <el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="FeeDetails.transportId"></dict-tag> <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="FeeDetails.transportId"></dict-tag>
......
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
<el-col :span="12"> <el-col :span="12">
<el-descriptions class="margin-top" border title="基础信息" :column="2"> <el-descriptions class="margin-top" border title="基础信息" :column="2">
<el-descriptions-item label="唛头">{{order.marks}}</el-descriptions-item> <el-descriptions-item label="唛头">{{order.marks}}</el-descriptions-item>
<el-descriptions-item label="送货时间"></el-descriptions-item> <el-descriptions-item label="送货时间">{{order.consigneeVO.deliveryDate}}</el-descriptions-item>
<el-descriptions-item label="是否控货">{{order.isCargoControl?'是':'否'}}</el-descriptions-item> <el-descriptions-item label="是否控货">{{order.isCargoControl?'是':'否'}}</el-descriptions-item>
<el-descriptions-item label="填单信息"> <el-descriptions-item label="填单信息">
{{order.costVO.totalNum}}箱 {{order.costVO.totalWeight}}Kg {{order.costVO.totalVolume}}m³ {{order.costVO.totalNum}}箱 {{order.costVO.totalWeight}}Kg {{order.costVO.totalVolume}}m³
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="num" label="填单件数" /> <el-table-column prop="num" label="填单件数" />
<el-table-column prop="num" label="入仓件数" /> <el-table-column prop="sumNum" label="入仓件数" />
<el-table-column prop="unit" label="单位"> <el-table-column prop="unit" label="单位">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_PACKAGE_TYPE" :value="row.unit" /> <dict-tag :type="DICT_TYPE.ECW_PACKAGE_TYPE" :value="row.unit" />
...@@ -129,8 +129,8 @@ ...@@ -129,8 +129,8 @@
<el-result v-else icon="info " title="暂无数据" subTitle="暂无订单动态数据" /> <el-result v-else icon="info " title="暂无数据" subTitle="暂无订单动态数据" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="运单资料/提货单" name="three"> <el-tab-pane label="运单资料/提货单" name="three">
<!--inWarehouseState 1待入库,2多了,3少了,4到齐-->
<el-button type="text" @click="showWarehouseReceipt=true">查看入仓单</el-button> <el-button type="text" @click="showWarehouseReceipt=true" :disabled="order.inWarehouseState <= 1">查看入仓单</el-button>
<el-button type="text" @click.native="showLadingBill=true" :disabled="!order.tidanNo">查看提货单</el-button> <el-button type="text" @click.native="showLadingBill=true" :disabled="!order.tidanNo">查看提货单</el-button>
<el-button :disabled="true" type="text">装箱单未上传</el-button> <el-button :disabled="true" type="text">装箱单未上传</el-button>
</el-tab-pane> </el-tab-pane>
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
</el-form-item> </el-form-item>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="电话" :labelStyle="labelStyle"> <el-descriptions-item label="电话" :labelStyle="labelStyle">
{{consignorContact.phoneNew || ''}} {{consignorContact.areaCode}} {{consignorContact.phoneNew || ''}}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="发货人公司" :labelStyle="labelStyle"> <el-descriptions-item label="发货人公司" :labelStyle="labelStyle">
{{consignorContact.company || ''}} {{consignorContact.company || ''}}
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
</el-form-item> </el-form-item>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="电话" :labelStyle="labelStyle"> <el-descriptions-item label="电话" :labelStyle="labelStyle">
{{consigneeContact.phoneNew || ''}} {{consigneeContact.areaCode}} {{consigneeContact.phoneNew || ''}}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="收货人公司" :labelStyle="labelStyle"> <el-descriptions-item label="收货人公司" :labelStyle="labelStyle">
{{consigneeContact.company || ''}} {{consigneeContact.company || ''}}
...@@ -190,11 +190,20 @@ ...@@ -190,11 +190,20 @@
</template> </template>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column label="是否预付"> <el-table-column label="是否预付">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag v-if="row.fee" :type="DICT_TYPE.ECW_PAY_ADVANCE" :value="row.fee.isPayAdvance" /> <dict-tag v-if="row.fee" :type="DICT_TYPE.ECW_PAY_ADVANCE" :value="row.fee.isPayAdvance" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="商品链接" width="200px" align="center">
<template slot-scope="{row}">
<el-link type="primary" :href="row.link" target="_blank" style="display:block">{{row.link}}</el-link>
<el-button type="primary" size="mini" @click="setLink(row)">
{{row.link ? '编辑商品链接' : '添加商品链接'}}
</el-button>
</template>
</el-table-column>
<el-table-column label="操作" width="80px" fixed="right"> <el-table-column label="操作" width="80px" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="danger" @click="delProduct(scope.$index)">删除</el-button> <el-button size="mini" type="danger" @click="delProduct(scope.$index)">删除</el-button>
...@@ -541,9 +550,9 @@ export default { ...@@ -541,9 +550,9 @@ export default {
homeDeliveryService(){ homeDeliveryService(){
return this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('1') > -1 return this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('1') > -1
}, },
// 代收货款 // 代收货款(非控货订单,且路线开通了代收服务)
collectionProxy(){ collectionProxy(){
return this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('2') > -1 return !this.form.isCargoControl && this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('2') > -1
}, },
// 根据渠道id显示渠道名 // 根据渠道id显示渠道名
getChannelNameById(){ getChannelNameById(){
...@@ -673,6 +682,12 @@ export default { ...@@ -673,6 +682,12 @@ export default {
downloadTpl(){ downloadTpl(){
window.open('http://v4.groupage.cn/Download/%E8%A3%85%E7%AE%B1%E5%8D%95%E6%A8%A1%E6%9D%BF.xls') window.open('http://v4.groupage.cn/Download/%E8%A3%85%E7%AE%B1%E5%8D%95%E6%A8%A1%E6%9D%BF.xls')
}, },
setLink(row){
this.$prompt('请输入商品链接', {inputValue: row.link}).then(({value}) => {
console.log('value', value)
this.$set(row, 'link', value)
})
},
onFileChoosed(e){ onFileChoosed(e){
window.choosed = e window.choosed = e
console.log('onFileChoosed', e) console.log('onFileChoosed', e)
......
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
</el-form-item> </el-form-item>
<el-form-item label="是否齐货" > <el-form-item label="是否齐货" >
<!--// 字段存疑--> <!--// 字段存疑-->
<dict-selector v-model="queryParams.isCargoControl" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" /> <dict-selector v-model="queryParams.isNeat" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" />
</el-form-item> </el-form-item>
<!-- <el-form-item label="重货比" prop="weightRatio"> <!-- <el-form-item label="重货比" prop="weightRatio">
<el-input style="width: 100px;" v-model="molecule" placeholder="" clearable @change="moleculeChange" <el-input style="width: 100px;" v-model="molecule" placeholder="" clearable @change="moleculeChange"
...@@ -179,6 +179,7 @@ ...@@ -179,6 +179,7 @@
<el-button type="text" size="mini" @click="$router.push(`/order/release?orderId=${scope.row.orderId}`)">确认放货</el-button> <el-button type="text" size="mini" @click="$router.push(`/order/release?orderId=${scope.row.orderId}`)">确认放货</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/singleApply?orderNo=${scope.row.orderNo}`)">合单申请</el-button> <el-button type="text" size="mini" @click="$router.push(`/order/singleApply?orderNo=${scope.row.orderNo}`)">合单申请</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/splitApply?orderId=${scope.row.orderId}`)">拆单申请</el-button> <el-button type="text" size="mini" @click="$router.push(`/order/splitApply?orderId=${scope.row.orderId}`)">拆单申请</el-button>
<el-button type="text" size="mini" @click="showMergedLogOrderNo=scope.row.orderNo">合单日志</el-button>
</div> </div>
</el-popover> </el-popover>
...@@ -241,6 +242,7 @@ ...@@ -241,6 +242,7 @@
<withdrawal v-if="show" :dialog-visible="show" :orderId="orderId" ></withdrawal> <withdrawal v-if="show" :dialog-visible="show" :orderId="orderId" ></withdrawal>
<batch-single-application :order-list="orderId" :dialog-visible.sync="warehouseBol"></batch-single-application> <batch-single-application :order-list="orderId" :dialog-visible.sync="warehouseBol"></batch-single-application>
<fee-application :order-id="orderId" :dialog-visible.sync="feeApplicationBol"></fee-application> <fee-application :order-id="orderId" :dialog-visible.sync="feeApplicationBol"></fee-application>
<merge-log :order-no="showMergedLogOrderNo" v-if="showMergedLogOrderNo !== null" @close="showMergedLogOrderNo=null" />
</div> </div>
</template> </template>
...@@ -272,12 +274,14 @@ import withdrawal from "@/views/ecw/order/withdrawal"; ...@@ -272,12 +274,14 @@ import withdrawal from "@/views/ecw/order/withdrawal";
import UserSelector from '@/components/UserSelector' import UserSelector from '@/components/UserSelector'
import BatchSingleApplication from "@/views/ecw/order/batchSingleApplication"; import BatchSingleApplication from "@/views/ecw/order/batchSingleApplication";
import FeeApplication from "@/views/ecw/order/feeApplication"; import FeeApplication from "@/views/ecw/order/feeApplication";
import MergeLog from '@/views/ecw/order/components/MergeLog'
export default { export default {
name: "Order", name: "Order",
components: { components: {
UserSelector, UserSelector,
FeeApplication, FeeApplication,
BatchSingleApplication, BatchSingleApplication,
MergeLog,
CustomerSelector, ProductSelector, Selector,specialNeeds,PrintTag, PrintWarehouseReceipt, PrintLadingBill, BatchPickup,withdrawal CustomerSelector, ProductSelector, Selector,specialNeeds,PrintTag, PrintWarehouseReceipt, PrintLadingBill, BatchPickup,withdrawal
}, },
props: { props: {
...@@ -353,6 +357,7 @@ export default { ...@@ -353,6 +357,7 @@ export default {
printWarehouseReceiptOrderId: null, // 打印入仓单的订单ID printWarehouseReceiptOrderId: null, // 打印入仓单的订单ID
printLadingBillInfo: null, // 打印提单 printLadingBillInfo: null, // 打印提单
showBatchPickup: false, // 是否显示批量提货弹窗 showBatchPickup: false, // 是否显示批量提货弹窗
showMergedLogOrderNo:null, // 显示合单日志订单号
isShow:false,//特殊显示 isShow:false,//特殊显示
orderId:undefined, orderId:undefined,
/* DICT_TYPE, /* DICT_TYPE,
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
</div> </div>
<el-form v-if="!readonly" ref="form" :model="form" label-width="80px"> <el-form v-if="!readonly" ref="form" :model="form" label-width="80px">
<el-form-item label="商品类型"> <el-form-item label="商品类型">
<span>{{ getProductAttrNameById(form.productType) }}</span> <span>{{ getProductAttrNameById(form.prodType) }}</span>
</el-form-item> </el-form-item>
<el-form-item label="商品名称"> <el-form-item label="商品名称">
<span>{{ form.prodTitleZh }}</span> <span>{{ form.prodTitleZh }}</span>
...@@ -17,26 +17,26 @@ ...@@ -17,26 +17,26 @@
<span>{{ form.prodTitleEn }}</span> <span>{{ form.prodTitleEn }}</span>
</el-form-item> </el-form-item>
<el-form-item label="线路"> <el-form-item label="线路">
{{ `【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)}】${ getChannelNameById(form.channelId) }从【${form.departureName}】发往【${form.objectiveName}】`}} {{ `【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)}】${ getChannelNameById(form.channelId) }从【${startTitleZh}】发往【${destTitleZh}】`}}
</el-form-item> </el-form-item>
<el-form-item label="是否预付"> <el-form-item label="是否预付">
{{ form.isPayAdvance === 0 ? '' : '' }} {{ form.isPayAdvance === 0 ? '' : '' }}
</el-form-item> </el-form-item>
<el-form-item label="旧运费"> <el-form-item label="旧运费" style="width: 400px">
<el-input v-model="form.orgSeaFreight" readonly> <el-input v-model="form.orgFreight" readonly>
<div slot="prepend" style="width: 60px">{{ currentMap[form.orgSeaFreightCurrency] }}</div> <div slot="prepend" style="width: 60px">{{ currentMap[form.orgFreightCurrency] }}</div>
<div slot="append" style="width: 60px">{{ unitMap[form.orgSeaFreightVolume] }}</div> <div slot="append" style="width: 60px">{{ unitMap[form.orgFreightVolume] }}</div>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="旧清关费"> <el-form-item label="旧清关费" style="width: 400px">
<el-input v-model="form.orgClearanceFreight" readonly> <el-input v-model="form.orgClearanceFreight" readonly>
<div slot="prepend" style="width: 60px">{{ currentMap[form.orgClearanceFreightCurrency] }}</div> <div slot="prepend" style="width: 60px">{{ currentMap[form.orgClearanceFreightCurrency] }}</div>
<div slot="append" style="width: 60px">{{ unitMap[form.orgClearanceFreightVolume] }}</div> <div slot="append" style="width: 60px">{{ unitMap[form.orgClearanceFreightVolume] }}</div>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="新运费" required> <el-form-item label="新运费" required style="width: 400px">
<el-input v-model.number="form.seaFreight"> <el-input v-model="form.freight" type="number">
<el-select v-model="form.seaFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px"> <el-select v-model="form.freightCurrency" placeholder="请选择" slot="prepend" style="width: 100px">
<el-option <el-option
v-for="item in currencyList" v-for="item in currencyList"
:key="item.id" :key="item.id"
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
:value="item.id"> :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
<el-select v-model="form.seaFreightVolume" placeholder="请选择" slot="append" style="width: 100px"> <el-select v-model="form.freightVolume" placeholder="请选择" slot="append" style="width: 100px">
<el-option <el-option
v-for="item in unitList" v-for="item in unitList"
:key="item.id" :key="item.id"
...@@ -54,8 +54,8 @@ ...@@ -54,8 +54,8 @@
</el-select> </el-select>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="新清关费" required> <el-form-item label="新清关费" required style="width: 400px">
<el-input v-model.number="form.clearanceFreight"> <el-input v-model="form.clearanceFreight" type="number">
<el-select v-model="form.clearanceFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px"> <el-select v-model="form.clearanceFreightCurrency" placeholder="请选择" slot="prepend" style="width: 100px">
<el-option <el-option
v-for="item in currencyList" v-for="item in currencyList"
...@@ -84,12 +84,12 @@ ...@@ -84,12 +84,12 @@
<el-descriptions-item label="商品名称">{{ form.prodTitleZh }}</el-descriptions-item> <el-descriptions-item label="商品名称">{{ form.prodTitleZh }}</el-descriptions-item>
<el-descriptions-item label="英文名称">{{ form.prodTitleEn }}</el-descriptions-item> <el-descriptions-item label="英文名称">{{ form.prodTitleEn }}</el-descriptions-item>
<el-descriptions-item label="线路"> <el-descriptions-item label="线路">
{{ `【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)}】${ getChannelNameById(form.channelId) }从【${form.departureName}】发往【${form.objectiveName}】`}} {{ `【${getDictDataLabel(DICT_TYPE.TRANSPORT_TYPE, form.transportId)}】${ getChannelNameById(form.channelId) }从【${startTitleZh}】发往【${destTitleZh}】`}}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="是否预付">{{ form.isPayAdvance === 0 ? '' : '' }}</el-descriptions-item> <el-descriptions-item label="是否预付">{{ form.isPayAdvance === 0 ? '' : '' }}</el-descriptions-item>
<el-descriptions-item label="旧运费">{{ form.orgSeaFreight }} {{ currentMap[form.orgSeaFreightCurrency] }}/{{ unitMap[form.orgSeaFreightVolume] }}</el-descriptions-item> <el-descriptions-item label="旧运费">{{ form.orgFreight }} {{ currentMap[form.orgFreightCurrency] }}/{{ unitMap[form.orgFreightVolume] }}</el-descriptions-item>
<el-descriptions-item label="旧清关费">{{ form.orgClearanceFreight }} {{ currentMap[form.orgClearanceFreightCurrency] }}/{{ unitMap[form.orgClearanceFreightVolume] }}</el-descriptions-item> <el-descriptions-item label="旧清关费">{{ form.orgClearanceFreight }} {{ currentMap[form.orgClearanceFreightCurrency] }}/{{ unitMap[form.orgClearanceFreightVolume] }}</el-descriptions-item>
<el-descriptions-item label="新运费">{{ form.seaFreight }} {{ currentMap[form.seaFreightCurrency] }}/{{ unitMap[form.seaFreightVolume] }}</el-descriptions-item> <el-descriptions-item label="新运费">{{ form.freight }} {{ currentMap[form.freightCurrency] }}/{{ unitMap[form.freightVolume] }}</el-descriptions-item>
<el-descriptions-item label="新清关费">{{ form.clearanceFreight }} {{ currentMap[form.clearanceFreightCurrency] }}/{{ unitMap[form.clearanceFreightVolume] }}</el-descriptions-item> <el-descriptions-item label="新清关费">{{ form.clearanceFreight }} {{ currentMap[form.clearanceFreightCurrency] }}/{{ unitMap[form.clearanceFreightVolume] }}</el-descriptions-item>
</el-descriptions> </el-descriptions>
</el-card> </el-card>
...@@ -106,11 +106,12 @@ import {getUnitList} from "@/api/ecw/unit" ...@@ -106,11 +106,12 @@ import {getUnitList} from "@/api/ecw/unit"
import {getChannelList} from "@/api/ecw/channel" import {getChannelList} from "@/api/ecw/channel"
import { getCurrencyList } from '@/api/ecw/currency' import { getCurrencyList } from '@/api/ecw/currency'
import { getProductAttrList } from '@/api/ecw/productAttr' import { getProductAttrList } from '@/api/ecw/productAttr'
import {openedRouterList} from "@/api/ecw/warehouse"
export default { export default {
name: "specialDiscount", name: "specialDiscount",
props: { props: {
offerProdId: String, orderItemId: String,
id: Number, id: Number,
readonly: { readonly: {
type: Boolean, type: Boolean,
...@@ -122,14 +123,14 @@ export default { ...@@ -122,14 +123,14 @@ export default {
}, },
created() { created() {
// 临时 // 临时
if(this.$route.query.offerId){ if(this.$route.query.orderId){
this.form.offerId = this.$route.query.offerId - 0 this.form.orderId = this.$route.query.orderId - 0
// this.getOrder() // this.getOrder()
} }
// 查看详情,列表进来的 // 查看详情,列表进来的
if(this.offerProdId){ if(this.orderItemId){
this.form.offerProdId = this.offerProdId - 0 this.form.orderItemId = this.orderItemId - 0
this.getOrderSpecial() this.getOrderSpecial()
} }
...@@ -155,7 +156,7 @@ export default { ...@@ -155,7 +156,7 @@ export default {
"abnormalState": 0, "abnormalState": 0,
"applyResult": "", "applyResult": "",
"applyStatus": 0, "applyStatus": 0,
"applyType": 0, "applyType": '1',
"ccIds": "", "ccIds": "",
"channelId": 0, "channelId": 0,
"charging": 0, "charging": 0,
...@@ -206,26 +207,30 @@ export default { ...@@ -206,26 +207,30 @@ export default {
"transportId": 0, "transportId": 0,
"vweight": "", "vweight": "",
"wvolume": "" "wvolume": ""
} },
startTitleZh: '',
destTitleZh: ''
} }
}, },
methods: { methods: {
handleSubmit(){ handleSubmit(){
createOrderSpecial({ createOrderSpecial({
"applyType": '1',
clearanceFreight: this.form.clearanceFreight, clearanceFreight: this.form.clearanceFreight,
clearanceFreightCurrency: this.form.clearanceFreightCurrency, clearanceFreightCurrency: this.form.clearanceFreightCurrency,
clearanceFreightVolume: this.form.clearanceFreightVolume, clearanceFreightVolume: this.form.clearanceFreightVolume,
offerId: this.form.offerId, orderId: this.form.orderId,
offerProdId: this.form.offerProdId, orderItemId: this.form.orderItemId,
seaFreight: this.form.seaFreight, freight: this.form.freight,
seaFreightCurrency: this.form.seaFreightCurrency, freightCurrency: this.form.freightCurrency,
seaFreightVolume: this.form.seaFreightVolume, freightVolume: this.form.freightVolume,
}).then(r => { }).then(r => {
this.$message.success(r.msg || '提交成功') this.$message.success(r.msg || '提交成功')
}) })
}, },
getOrderSpecial(){ getOrderSpecial(){
getOrderSpecial(this.form.offerProdId).then(r => { getOrderSpecial(this.form.orderItemId).then(r => {
this.form = r.data this.form = r.data
}) })
}, },
...@@ -260,6 +265,19 @@ export default { ...@@ -260,6 +265,19 @@ export default {
}) })
return map return map
} }
},
watch: {
'form.lineId'(val){
if (val){
openedRouterList({lineId: val}).then(r => {
if(r.data && r.data.length > 0){
this.startTitleZh = r.data[0].startTitleZh
this.destTitleZh = r.data[0].destTitleZh
}
})
}
}
} }
} }
</script> </script>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div slot="header" class="card-title">申请特价</div> <div slot="header" class="card-title">申请特价</div>
<!-- 列表 --> <!-- 列表 -->
<div class="order-header"> <div class="order-header">
<span style="font-size: 15px;">订单号:{{ order.number }}</span> <span style="font-size: 15px;">订单号:{{ order.orderNo }}</span>
</div> </div>
<el-table v-loading="loading" :data="order.orderItemVOList"> <el-table v-loading="loading" :data="order.orderItemVOList">
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
prop="address" prop="address"
label="操作"> label="操作">
<template v-slot="{row}"> <template v-slot="{row}">
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']" @click="$router.push(`/order/discount/${row.prodId}?orderId=${row.orderId}`)">优惠申请</el-button> <el-button size="mini" type="text" v-hasPermi="['ecw:order:update']" @click="$router.push(`/order/discount/${row.orderItemId}?orderId=${row.orderId}`)">优惠申请</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">佣金规则</el-button> <el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">佣金规则</el-button>
<el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">管理折扣</el-button> <el-button size="mini" type="text" v-hasPermi="['ecw:order:update']">管理折扣</el-button>
</template> </template>
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
<el-dialog title="查看须知" :visible.sync="showNotice" width="700px"> <el-dialog title="查看须知" :visible.sync="showNotice" width="700px">
<!-- <img :src="noticeUrl" id="noticeImg" /> --> <!-- <img :src="noticeUrl" id="noticeImg" /> -->
<need-know keyname="control" ref="needKnow" /> <need-know keyname="warehousing" ref="needKnow" />
<div style="text-align:center"> <div style="text-align:center">
<el-button type="primary" @click="$refs.needKnow.download()">下载</el-button> <el-button type="primary" @click="$refs.needKnow.download()">下载</el-button>
</div> </div>
......
...@@ -170,7 +170,7 @@ import { ...@@ -170,7 +170,7 @@ import {
getOrderWarehouseIn, getOrderWarehouseIn,
getSpecialListByOrderId, listByOrderId, getSpecialListByOrderId, listByOrderId,
orderWarehouseInFinish, orderWarehouseInFinish,
rollbackApply rollbackDelete
} from '@/api/ecw/order' } from '@/api/ecw/order'
import orderBaseInfo from "@/components/OrderBaseInfo" import orderBaseInfo from "@/components/OrderBaseInfo"
import WarehouseAreaDialog from '@/components/WarehouseAreaDialog' import WarehouseAreaDialog from '@/components/WarehouseAreaDialog'
...@@ -274,15 +274,17 @@ export default { ...@@ -274,15 +274,17 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
rollbackApply({ rollbackDelete({
"orderId": item.orderId, "orderId": item.orderId,
"orderNo": item.orderNo, "orderItemId": item.orderItemId
"reason": ""
}).then(() => { }).then(() => {
this.$message({ this.$message({
type: 'success', type: 'success',
message: '申请退仓成功!' message: '申请退仓成功!'
}); });
getOrderWarehouseIn(this.orderId).then(r => this.orderItemList = r.data.reverse())
getOrder(this.orderId).then(r => this.order = r.data)
}) })
}).catch(() => { }).catch(() => {
......
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form ref="form" :model="form" :rules="rules" label-width="150px"> <el-form ref="form" :model="form" :rules="rules" label-width="150px" :disabled="readonly">
<el-form-item label="商品类型" prop="productType"> <el-form-item label="商品类型" prop="productType">
<el-select v-model="form.productType" :disabled="!!$route.query.ids"> <el-select v-model="form.productType" :disabled="!!$route.query.ids">
...@@ -230,7 +230,7 @@ ...@@ -230,7 +230,7 @@
</el-form> </el-form>
<div style="margin: 20px 0"> <div style="margin: 20px 0">
<el-button @click="submitForm" type="primary">确认提交</el-button> <el-button @click="submitForm" type="primary" v-if="!readonly">确认提交</el-button>
<el-button type="default" @click="$router.back()">返回上一页</el-button> <el-button type="default" @click="$router.back()">返回上一页</el-button>
</div> </div>
</div> </div>
...@@ -280,6 +280,7 @@ export default { ...@@ -280,6 +280,7 @@ export default {
unitList: [], unitList: [],
productTypeList: [], productTypeList: [],
productDisabled: true, productDisabled: true,
readonly: false,
lineList: [] //路线数组 lineList: [] //路线数组
} }
}, },
...@@ -364,6 +365,9 @@ export default { ...@@ -364,6 +365,9 @@ export default {
} }
}, },
async created() { async created() {
if(this.$route.query.readonly){
this.readonly = true
}
// action=batchUpdate 表示批量修改单个商品的价格(一条或者多条),如果没有ids显示路线选择组件,否则不显示路线组件 // action=batchUpdate 表示批量修改单个商品的价格(一条或者多条),如果没有ids显示路线选择组件,否则不显示路线组件
// action=update 表示修改单个商品的单条路线价格,需要回显 // action=update 表示修改单个商品的单条路线价格,需要回显
if(this.$route.query.action == 'update'){ if(this.$route.query.action == 'update'){
......
...@@ -171,6 +171,8 @@ ...@@ -171,6 +171,8 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="140"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="140">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row, true)"
v-hasPermi="['ecw:product-price:update']">查看</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:product-price:update']">编辑</el-button> v-hasPermi="['ecw:product-price:update']">编辑</el-button>
...@@ -402,7 +404,8 @@ export default { ...@@ -402,7 +404,8 @@ export default {
if(this.$route.query.product_id != productId){ if(this.$route.query.product_id != productId){
this.queryParams = { this.queryParams = {
pageNo: 1, pageNo: 1,
pageSize: 10 pageSize: 10,
productId: this.$route.query.product_id
} }
getProduct(this.$route.query.product_id).then(res => { getProduct(this.$route.query.product_id).then(res => {
this.product = res.data this.product = res.data
...@@ -417,6 +420,7 @@ export default { ...@@ -417,6 +420,7 @@ export default {
} }
// 指定产品获取产品信息 // 指定产品获取产品信息
if(this.$route.query.product_id){ if(this.$route.query.product_id){
this.$set(this.queryParams, 'productId', +this.$route.query.product_id);
getProduct(this.$route.query.product_id).then(res => { getProduct(this.$route.query.product_id).then(res => {
this.product = res.data this.product = res.data
}) })
...@@ -578,8 +582,10 @@ export default { ...@@ -578,8 +582,10 @@ export default {
this.$router.push('../../lineProject/batch-edit') this.$router.push('../../lineProject/batch-edit')
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row, readonly) {
return this.$router.push('../../lineProject/product-price/edit?action=update&id=' + row.id) let url = '../../lineProject/product-price/edit?action=update&id=' + row.id
if(readonly)url += '&readonly=1'
return this.$router.push(url)
}, },
updateStatus(row, type) { updateStatus(row, type) {
......
...@@ -103,7 +103,7 @@ export default { ...@@ -103,7 +103,7 @@ export default {
companyZh: undefined, companyZh: undefined,
agentName: undefined, agentName: undefined,
tell: "", tell: "",
address: "Abc123456", address: "",
remark: undefined, remark: undefined,
field110: undefined, field110: undefined,
companyType: [], companyType: [],
...@@ -137,23 +137,11 @@ export default { ...@@ -137,23 +137,11 @@ export default {
}, },
treeList:[], treeList:[],
provinceList:[], provinceList:[],
cityList:[]/* cityList:[]
selectedCountryIndex: null,
selectedProvinceIndex: null,
selectedCityIndex: null, */
// selectedRegionIndex: null
} }
}, },
computed: { computed: {
/* provinceList(){
return this.treeList[this.selectedCountryIndex] ?. children || []
},
cityList(){
return this.provinceList[this.selectedProvinceIndex] ?. children || []
},
regionList(){
return this.cityList[this.selectedCityIndex] ?. children || []
} */
}, },
watch: { watch: {
'formData.country'(country){ 'formData.country'(country){
...@@ -197,20 +185,7 @@ export default { ...@@ -197,20 +185,7 @@ export default {
return; return;
} }
let data = Object.assign({}, this.formData) let data = Object.assign({}, this.formData)
/* if(data.companyType && data.companyType.length){
data.companyType = data.companyType.join(',')
} */
/* let regionArr = []
if(this.selectedCountryIndex !== null){
//regionArr.push(this.treeList[this.selectedCountryIndex].id)
data.country = this.treeList[this.selectedCountryIndex].id
}
if(this.selectedProvinceIndex !== null){
data.province = this.treeList[this.selectedCountryIndex].id
}
if(this.selectedCityIndex !== null){
data.city = this.cityList[this.selectedCityIndex].id
} */
// 修改的提交 // 修改的提交
if (data.id != null) { if (data.id != null) {
updateSupplier(data).then(response => { updateSupplier(data).then(response => {
...@@ -229,21 +204,7 @@ export default { ...@@ -229,21 +204,7 @@ export default {
}, },
resetForm() { resetForm() {
this.$refs['elForm'].resetFields() this.$refs['elForm'].resetFields()
}, }
/* licenseBeforeUpload(file) {
let isRightSize = file.size / 1024 / 1024 < 2
if (!isRightSize) {
this.$message.error('文件大小超过 2MB')
}
return isRightSize
},
contractBeforeUpload(file) {
let isRightSize = file.size / 1024 / 1024 < 2
if (!isRightSize) {
this.$message.error('文件大小超过 2MB')
}
return isRightSize
}, */
} }
} }
......
This diff is collapsed.
This diff is collapsed.
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