Commit 1d41fc06 authored by huyf's avatar huyf

Merge remote-tracking branch 'origin/dev' into dev

parents cfe1ddcd fd97dd05
import request from "@/utils/request";
import {param} from "@/utils";
//获得可用仓
export function warehouseAdjustmentList(params){
return request({
url:'/ecw/warehouse/adjustmentList',
method:'post',
params:params
})
}
//发起调仓请求
export function orderWarehouseInAdjustApply(data){
return request({
url:'/order/order-warehouse-in/adjust-apply',
method:'put',
data:data,
})
}
//获取订单列表
export function ecwOrderList(params){
return request({
url:'/ecw/order/list',
method:'get',
params:params,
})
}
//申请退仓
export function orderWarehouseInDelete(data){
return request({
url:'/order/order-warehouse-in/rollback-apply',
method:'put',
data:data,
})
}
//通过bpmFormId 获得仓库审核单详情
export function warehouseApprovalGetByFormId(params){
return request({
url:'order/order-warehouse-approval/get-by-form-id',
method:'get',
params:params
})
}
export function warehouseAreaPositionList(params){
return request({
url:'/ecw/warehouse/list',
method:'get',
params:params
})
}
import request from '@/utils/request' import request from '@/utils/request'
import query from "@/views/ecw/customer/query"; import query from "@/views/ecw/customer/query";
import * as url from "url";
// 创建客户 // 创建客户
export function createCustomer(data) { export function createCustomer(data) {
...@@ -147,3 +148,10 @@ export function getMyCustomerService(query){ ...@@ -147,3 +148,10 @@ export function getMyCustomerService(query){
params:query, params:query,
}) })
} }
//获取会员列表
export function userMemberUserList(){
return request({
url:'/member/user/member-user-list',
method:'get'
})
}
...@@ -129,6 +129,14 @@ export function getLadingBill(query){ ...@@ -129,6 +129,14 @@ export function getLadingBill(query){
params: query, params: query,
}) })
} }
//调仓申请
export function orderWarehouseInAdjustApply(data){
return request({
url:'/order/order-warehouse-in/adjust-apply',
method:'put',
data:data,
})
}
// 获得入仓货物详情 // 获得入仓货物详情
export function getOrderWarehouseIn(id) { export function getOrderWarehouseIn(id) {
...@@ -206,4 +214,12 @@ export function createOrderPickupSplitBatch(data){ ...@@ -206,4 +214,12 @@ export function createOrderPickupSplitBatch(data){
method: 'post', method: 'post',
data data
}) })
} }
\ No newline at end of file //根据流程ID获得订单信息
export function applicationGetOrderByProcessId(params){
return request({
url:'order/fee-application/getOrderByProcessId',
method:'get',
params
})
}
...@@ -309,25 +309,15 @@ export const constantRoutes = [ ...@@ -309,25 +309,15 @@ export const constantRoutes = [
} }
}, },
{ {
path:'single-application/:orderId', path: 'batch-single-application',
component:(resolve)=>require(['@/views/ecw/order/singleApplication'],resolve),
props: true,
name: 'singleApplication',
meta: {
title: '调仓申请',
icon: '',
activeMenu: '/order/singleApplication'
}
},
{
path: 'batch-single-application/:orderId',
component:(resolve)=> require(['@/views/ecw/order/batchSingleApplication'],resolve), component:(resolve)=> require(['@/views/ecw/order/batchSingleApplication'],resolve),
name: 'batchSingleApplication', name: 'batchSingleApplication',
props: route => ({orderList:route.query.list}),
meta: { meta: {
title: '批量调仓申请', title: '批量调仓申请',
icon:'', icon:'',
activeMenu: '/order/batchSingleApplication' activeMenu: '/order/batchSingleApplication',
noCache:true
} }
}, },
{ {
...@@ -364,6 +354,30 @@ export const constantRoutes = [ ...@@ -364,6 +354,30 @@ export const constantRoutes = [
activeMenu: '/order/notMutexOrder', activeMenu: '/order/notMutexOrder',
noCache: true, noCache: true,
} }
},
{
path: 'withdrawal/:orderId',
component:()=>import ('@/views/ecw/order/withdrawal'),
name:'withdrawal',
props: true,
meta:{
title:'退仓',
icon:'',
activeMenu:'order/withdrawal',
noCache:true,
}
},
{
path: 'transfer-warehousing/:orderId',
component:()=>import('@/views/ecw/order/transferWarehousing'),
name:'transferWarehousing',
props: true,
meta:{
title:'调拨出仓',
icon:'',
activeMenu:'order/transferWarehousing',
noCache:true,
}
} }
], ],
}, },
......
...@@ -24,8 +24,10 @@ ...@@ -24,8 +24,10 @@
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="订单号" prop="orderNo"></el-table-column> <el-table-column label="订单号" prop="orderNo"></el-table-column>
<el-table-column label="唛头" prop="marks"></el-table-column> <el-table-column label="唛头" prop="marks"></el-table-column>
<el-table-column label="货物数据"></el-table-column> <el-table-column label="货物数据">
<el-table-column label="入仓时间" prop="rucangtime"></el-table-column>
</el-table-column>
<el-table-column label="入仓时间" prop="rucangTime"></el-table-column>
<el-table-column label="状态"> <el-table-column label="状态">
<template v-slot:default="scope"> <template v-slot:default="scope">
<dict-tag :value="scope.row.status" :type="DICT_TYPE.ORDER_STATUS"></dict-tag> <dict-tag :value="scope.row.status" :type="DICT_TYPE.ORDER_STATUS"></dict-tag>
......
...@@ -42,7 +42,11 @@ ...@@ -42,7 +42,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作人"></el-table-column> <el-table-column label="操作人"></el-table-column>
<el-table-column label="操作时间" prop="createTime"></el-table-column> <el-table-column label="操作时间">
<template v-slot="{row}">
{{parseTime(row.createTime)}}
</template>
</el-table-column>
<el-table-column label="操作"> <el-table-column label="操作">
<template v-slot:default='scope'> <template v-slot:default='scope'>
<el-button type="text" @click ="guanlianOrderByOrderId(scope.row.orderId)"> <el-button type="text" @click ="guanlianOrderByOrderId(scope.row.orderId)">
...@@ -72,6 +76,16 @@ export default { ...@@ -72,6 +76,16 @@ export default {
components:{ components:{
ordeDetailsForm ordeDetailsForm
}, },
computed:{
check(){
let flag = true;
if(this.list.length === 1 && this.list[0].status === 5){
flag = false
}else {
}
}
},
data(){ data(){
return { return {
orderDetails:{}, orderDetails:{},
......
<template> <template>
<div class="batch-single-application"> <div class="batch-single-application">
<h1 class="title">批量调仓申请</h1> <h1 class="title">调仓申请</h1>
<el-table> <el-table :data="list">
<el-table-column label="订单编号"></el-table-column> <el-table-column label="订单编号" prop="orderNo"></el-table-column>
<el-table-column label="唛头"></el-table-column> <el-table-column label="唛头" prop="marks"></el-table-column>
<el-table-column label="已到箱数/总箱数"></el-table-column> <el-table-column label="已到箱数/总箱数">
<el-table-column label="下单统计"></el-table-column> <template v-slot = {row}>
<el-table-column label="入仓统计"></el-table-column> {{row.sumQuantity || 0}}/{{row.totalNum}}
<el-table-column label="运输方式"></el-table-column> </template>
<el-table-column label="出货渠道"></el-table-column> </el-table-column>
<el-table-column label="始发仓"></el-table-column> <el-table-column label="下单统计">
<el-table-column label="目的地"></el-table-column>
<el-table-column label="送货时间"></el-table-column> </el-table-column>
<el-table-column label="入仓统计" width="150">
<template v-slot="{row}">
<div>总箱数:{{row.sumNum || 0}}</div>
<div>体积:{{row.sumVolume || 0}}CBM</div>
<div>重量:{{row.sumWeight || 0}}KG</div>
</template>
</el-table-column>
<el-table-column label="入仓时间">
</el-table-column>
<el-table-column label="运输方式">
<template v-slot = {row}>
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="row.transportId"></dict-tag>
</template>
</el-table-column>
<el-table-column label="出货渠道">
</el-table-column>
<el-table-column label="始发仓" prop="startWarehouseName"></el-table-column>
<el-table-column label="目的地" prop="objectiveName"></el-table-column>
<el-table-column label="发货人">
<template v-slot="{row}">
<div>
<p>
</p>
</div>
</template>
</el-table-column>
<el-table-column label="收货人">
<template v-slot="{row}">
<div>
<p>
{{row.consigneeName}}
</p>
<p>
{{row.consigneePhone}}
</p>
</div>
</template>
</el-table-column>
</el-table> </el-table>
<div style="display: flex;justify-content:center; margin-top: 20px"> <div style="display: flex;justify-content:center; margin-top: 20px">
<div style="width: 300px;height: 50px;border: 1px solid; margin: 0 10px"></div> <div style="width: 200px; margin: 0 10px">
<div style="width: 300px;height: 50px;border: 1px solid;"></div> {{list[0].startWarehouseName}}
</div>
<div style="width: 200px;">
<el-select v-model="params.warehouseInId">
<el-option v-for="(item ,index) in availableWarehouse" :value="item.id" :label="item.titleZh" :key="index"></el-option>
</el-select>
</div>
</div> </div>
<el-divider></el-divider> <el-divider></el-divider>
<h1 class="title"> <h1 class="title">
审批流程 审批流程
</h1> </h1>
<div style="padding: 20px">
<my-process-viewer key="designer" v-model="bpmnXML" v-bind="bpmnControlForm" />
</div>
<div style="height: 100px"></div> <div style="height: 100px"></div>
<el-form label-width="200px"> <!-- <el-form label-width="200px">-->
<el-form-item label="抄送"></el-form-item> <!-- <el-form-item label="抄送"></el-form-item>-->
<el-form-item label="抄送人"></el-form-item> <!-- <el-form-item label="抄送人"></el-form-item>-->
</el-form> <!-- </el-form>-->
<div style="text-align: center"> <div style="text-align: center">
<el-button style="margin-right: 50px">提交申请</el-button> <el-button style="margin-right: 50px" @click="submit" :disabled="isSubmit">提交申请</el-button>
<el-button>取消</el-button> <el-button @click="$router.push('/order/order')">取消</el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import {DICT_TYPE, getDictDatas} from "@/utils/dict";
import {
ecwOrderList,
orderWarehouseInAdjustApply,
warehouseAdjustmentList,
} from "@/api/ecw/batchSingleApplication";
import {getProcessDefinitionBpmnXMLByKey} from "@/api/bpm/definition";
import warehouseDetails from "@/views/ecw/order/components/warehouseDetails";
export default { export default {
name: "batchSingleApplication" name: "batchSingleApplication",
props:{
orderList:String,
},
components:{
warehouseDetails
},
created() {
this.list = JSON.parse(this.orderList);
warehouseAdjustmentList({id:this.list[0].startWarehouseId}).then( r => this.availableWarehouse = r.data)
getProcessDefinitionBpmnXMLByKey("warehouse_transfer").then(response => {
this.bpmnXML = response.data
})
},
computed:{
isSubmit(){
let flag = true;
if(this.list.length === 1 && this.list[0].status === 5){
flag = false
}else {
let l = this.list.map(e => e.startWarehouseId)
if(this.list.every(e => e.status === 5) && [...new Set(l)].length === 1) flag = false
}
return flag;
}
},
data(){
return {
list:[],
availableWarehouse:[],
DICT_TYPE,
departureWarehouse:undefined,
adjustment:undefined,
params:{
orderIds:undefined,
warehouseInId:undefined,
warehouseOutId: undefined
},
bpmnXML: null,
bpmnControlForm: {
prefix: "activiti"
},
}
},
methods:{
submit(){
let p = this.list.map(e => e.orderId).join(',');
this.params.orderIds = p;
this.params.warehouseOutId = this.list[0].startWarehouseId;
this.params.orderNo = this.list[0].orderNo
orderWarehouseInAdjustApply(this.params).then( r=>{
if(r.code === 0){
this.$message.success('调仓成功');
}
})
}
}
} }
</script> </script>
...@@ -45,6 +158,15 @@ export default { ...@@ -45,6 +158,15 @@ export default {
box-sizing: border-box; box-sizing: border-box;
.title{ .title{
font-weight: 600; font-weight: 600;
text-align: left;
} }
} }
.my-process-designer {
height: calc(100vh - 200px);
}
.box-card {
width: 100%;
margin-bottom: 20px;
}
</style> </style>
...@@ -2,24 +2,24 @@ ...@@ -2,24 +2,24 @@
<div> <div>
<el-descriptions class="margin-top" border :column="4"> <el-descriptions class="margin-top" border :column="4">
<el-descriptions-item label="唛头">{{details.marks}}</el-descriptions-item> <el-descriptions-item label="唛头">{{details.marks}}</el-descriptions-item>
<el-descriptions-item label="已到箱数/总箱数">{{details.sumQuantity}}/{{details.sumNum}}</el-descriptions-item> <el-descriptions-item label="已到箱数/总箱数">{{details.sumQuantity || 0}}/{{details.totalsumNum || 0}}</el-descriptions-item>
<el-descriptions-item label="订单状态"> <el-descriptions-item label="订单状态">
<dict-tag :type="DICT_TYPE.ORDER_ABNORMAL_STATE" :value="details.status" /> <dict-tag :type="DICT_TYPE.ORDER_ABNORMAL_STATE" :value="details.status" />
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="送货日期">{{}}</el-descriptions-item> <el-descriptions-item label="送货日期"></el-descriptions-item>
<el-descriptions-item label="运输方式"> <el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="details.transportId"></dict-tag> <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="details.transportId"></dict-tag>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="出货渠道"> <el-descriptions-item label="出货渠道">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="details.channelId"></dict-tag> <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="details.channelId"></dict-tag>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="始发地">{{details.logisticsInfoDto.startWarehouseId}}</el-descriptions-item> <el-descriptions-item label="始发地">{{details.logisticsInfoDto.startTitleZh}}</el-descriptions-item>
<el-descriptions-item label="目的地">{{details.logisticsInfoDto.destWarehouseId}}</el-descriptions-item> <el-descriptions-item label="目的地">{{details.logisticsInfoDto.destTitleZh}}</el-descriptions-item>
<el-descriptions-item label="发货人姓名">{{details.consignorVO.customerId}}</el-descriptions-item> <el-descriptions-item label="发货人姓名">{{details.consignorVO.name}}</el-descriptions-item>
<el-descriptions-item label="发货人公司">{{details.consignorVO.company}}</el-descriptions-item> <el-descriptions-item label="发货人公司">{{details.consignorVO.company}}</el-descriptions-item>
<el-descriptions-item label="发货人电话">{{details.consignorVO.phone}}</el-descriptions-item> <el-descriptions-item label="发货人电话">{{details.consignorVO.phone}}</el-descriptions-item>
<el-descriptions-item></el-descriptions-item> <el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="收货人姓名">{{details.consigneeVO.customerId}}</el-descriptions-item> <el-descriptions-item label="收货人姓名">{{details.consigneeVO.name}}</el-descriptions-item>
<el-descriptions-item label="收货人公司">{{details.consigneeVO.company}}</el-descriptions-item> <el-descriptions-item label="收货人公司">{{details.consigneeVO.company}}</el-descriptions-item>
<el-descriptions-item label="收货人电话">{{details.consigneeVO.phone}}</el-descriptions-item> <el-descriptions-item label="收货人电话">{{details.consigneeVO.phone}}</el-descriptions-item>
<el-descriptions-item></el-descriptions-item> <el-descriptions-item></el-descriptions-item>
......
<template>
<div>
<h1>
申请信息【订单信息】
</h1>
<el-table v-if="type === 1">
<el-table-column
label="订单编号">
</el-table-column>
<el-table-column
label="唛头">
</el-table-column>
<el-table-column
label="已到箱数/总箱数">
</el-table-column>
<el-table-column
label="下单统计">
</el-table-column>
<el-table-column
label="入仓统计">
</el-table-column>
<el-table-column
label="入仓时间">
</el-table-column>
<el-table-column
label="运输方式">
</el-table-column>
<el-table-column
label="出货渠道">
</el-table-column>
<el-table-column
label="始发仓">
</el-table-column>
<el-table-column
label="目的地">
</el-table-column>
<el-table-column
label="发货人">
</el-table-column>
<el-table-column
label="收货人">
</el-table-column>
</el-table>
<el-descriptions v-else :column="4" border>
<el-descriptions-item label="订单号">{{FeeDetails.orderNo}}</el-descriptions-item>
<el-descriptions-item label="运输方式">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="FeeDetails.transportId"></dict-tag>
</el-descriptions-item>
<el-descriptions-item label="出货方式">
{{selectChannel(FeeDetails.channelId)}}
</el-descriptions-item>
<el-descriptions-item label="订单状态">
<dict-tag :type="DICT_TYPE.ORDER_ABNORMAL_STATE" :value="FeeDetails.abnormalState"></dict-tag>
</el-descriptions-item>
<el-descriptions-item label="唛头">
{{FeeDetails.marks}}
</el-descriptions-item>
<el-descriptions-item label="始发仓">{{FeeDetails.startWarehouse}}</el-descriptions-item>
<el-descriptions-item label="目的仓">{{FeeDetails.destWarehouse}}</el-descriptions-item>
</el-descriptions>
<div v-if="type === 1">
<p>
申请说明
</p>
<div >
从【{{selectWarehouse(FeeDetails.details && FeeDetails.details.warehouseInId ? FeeDetails.details.warehouseInId : '' )}}】 调到
{{selectWarehouse(FeeDetails.details && FeeDetails.details.warehouseOutId ? FeeDetails.details.warehouseOutId : '' )}}
</div>
</div>
<div v-if="type === 2">
<p>申请理由</p>
<div>
{{FeeDetails.remarks}}
</div>
</div>
</div>
</template>
<script>
import {warehouseApprovalGetByFormId, warehouseAreaPositionList} from "@/api/ecw/batchSingleApplication";
import {applicationGetOrderByProcessId} from "@/api/ecw/order";
import { getChannelList } from '@/api/ecw/channel';
export default {
props:{
type:{
type: Number,
default:2,
},
processId:{
type:[Number,String],
}
},
name: "warehouseDetails",
data(){
return{
FeeDetails:{},
transfer:{},
warehouseList:[],
channelList:[]
}
},
created() {
getChannelList().then(r => this.channelList = r.data);
warehouseAreaPositionList().then(r => this.warehouseList = r.data)
switch (this.type){
case 1:
warehouseApprovalGetByFormId({formId:this.processId}).then( r => {
this.FeeDetails = r.data
this.FeeDetails.details = JSON.parse(r.data.details)
});
break;
case 2:
applicationGetOrderByProcessId({processId:this.processId}).then(r => this.FeeDetails = r.data)
break;
}
},
methods:{
selectWarehouse(val){
if(this.warehouseList.length > 0){
return this.warehouseList.find(e => e.id === val).titleZh
}
return ''
},
selectChannel(val){
if(this.channelList.length > 0) return this.channelList.find(e => e.channelId === val).nameEn
return ''
}
}
}
</script>
<style scoped>
</style>
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="费用类型"> <el-table-column label="费用类型">
<template v-slot:default = "scope"> <template v-slot:default = "scope">
<dict-selector :disabled="isModify[forbidden(scope.row)]" :type="DICT_TYPE.FEE_TYPE" v-model="scope.row.feeType" /> <dict-selector :disabled="isModify[forbidden(scope.row)]" :type="DICT_TYPE.FEE_TYPE" v-model="scope.row.feeType" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="金额"> <el-table-column label="金额">
...@@ -59,6 +59,9 @@ ...@@ -59,6 +59,9 @@
<el-button style="margin-right: 30px;" @click="submit">提交</el-button> <el-button style="margin-right: 30px;" @click="submit">提交</el-button>
<el-button>取消</el-button> <el-button>取消</el-button>
</div> </div>
<div style="padding: 20px">
<my-process-viewer key="designer" v-model="bpmnXML" v-bind="bpmnControlForm" />
</div>
</div> </div>
</template> </template>
...@@ -66,6 +69,7 @@ ...@@ -66,6 +69,7 @@
import {getOrder, feeApplicationCreate, ApplicationListByOrderId, applicationUpdate} from "@/api/ecw/order"; import {getOrder, feeApplicationCreate, ApplicationListByOrderId, applicationUpdate} from "@/api/ecw/order";
import { getDictDatas, DICT_TYPE } from '@/utils/dict'; import { getDictDatas, DICT_TYPE } from '@/utils/dict';
import Template from "@/views/cms/template"; import Template from "@/views/cms/template";
import { getProcessDefinitionBpmnXMLByKey} from "@/api/bpm/definition";
export default { export default {
name: "feeApplication", name: "feeApplication",
components: {Template}, components: {Template},
...@@ -80,7 +84,11 @@ export default { ...@@ -80,7 +84,11 @@ export default {
getDictDatas, getDictDatas,
STATUS:{}, STATUS:{},
isModify:[], isModify:[],
isModifyIf:false isModifyIf:false,
bpmnXML: null,
bpmnControlForm: {
prefix: "activiti"
},
} }
}, },
created() { created() {
...@@ -92,7 +100,10 @@ export default { ...@@ -92,7 +100,10 @@ export default {
this.getOrderList() this.getOrderList()
this.getDictDatas(this.DICT_TYPE.AUDIT_STATUS).forEach( e =>{ this.getDictDatas(this.DICT_TYPE.AUDIT_STATUS).forEach( e =>{
this.STATUS[e.value] = e.label this.STATUS[e.value] = e.label
}) }),
getProcessDefinitionBpmnXMLByKey("free_apply").then(response => {
this.bpmnXML = response.data
})
}, },
computed:{ computed:{
forbidden(){ forbidden(){
...@@ -145,13 +156,14 @@ export default { ...@@ -145,13 +156,14 @@ export default {
if(r.code === 0){ if(r.code === 0){
this.list = r.data; this.list = r.data;
this.list.forEach(()=>this.isModify.push(true)) this.list.forEach(()=>this.isModify.push(true))
let p = this.list.find(e => e.status === 1)
} }
}) })
}, },
modify(row){ modify(row){
this.isModifyIf = true; this.isModifyIf = true;
this.$set(this.isModify, this.list.findIndex(e => e.id = row.id), false ) this.$set(this.isModify, this.list.findIndex(e => e.id = row.id), false )
} },
} }
} }
</script> </script>
...@@ -167,4 +179,12 @@ export default { ...@@ -167,4 +179,12 @@ export default {
width: 200px; width: 200px;
} }
} }
.my-process-designer {
height: calc(100vh - 200px);
}
.box-card {
width: 100%;
margin-bottom: 20px;
}
</style> </style>
...@@ -166,7 +166,7 @@ ...@@ -166,7 +166,7 @@
v-hasPermi="['ecw:order:delete']">删除</el-button> v-hasPermi="['ecw:order:delete']">删除</el-button>
<el-button v-if="scope.row.status < 5" size="mini" type="text" icon="el-icon-delete" @click="oprateOrder(scope.row.orderId, 'cancelOrder')">取消订单</el-button> <el-button v-if="scope.row.status < 5" size="mini" type="text" icon="el-icon-delete" @click="oprateOrder(scope.row.orderId, 'cancelOrder')">取消订单</el-button>
<el-button v-if="scope.row.status == 88" size="mini" type="text" icon="el-icon-delete" @click="oprateOrder(scope.row.orderId, 'recoveryOrder')">恢复订单</el-button> <el-button v-if="scope.row.status == 88" size="mini" type="text" icon="el-icon-delete" @click="oprateOrder(scope.row.orderId, 'recoveryOrder')">恢复订单</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/fee-application/${scope.row.orderId}`)">费用申请</el-button> <el-button type="text" size="mini" @click="$router.push(`/order/fee-application/${scope.row.orderId}`)">费用申请</el-button>
<el-button type="text" size="mini" @click="orderId = scope.row.orderId;isShow = true" >特需</el-button> <el-button type="text" size="mini" @click="orderId = scope.row.orderId;isShow = true" >特需</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/associated-order/${scope.row.orderId}`)" >关联</el-button> <el-button type="text" size="mini" @click="$router.push(`/order/associated-order/${scope.row.orderId}`)" >关联</el-button>
...@@ -176,9 +176,18 @@ ...@@ -176,9 +176,18 @@
<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>
</div> </div>
</el-popover>
</el-popover>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:order:update']">编辑</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi="['ecw:order:update']">入仓</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:order:update']">退仓</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/special?id=' + scope.row.orderId)"
v-hasPermi="['ecw:order:update']">特价</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:order:delete']">删除</el-button>
<!--仓库相关的--> <!--仓库相关的-->
<el-popover <el-popover
style="margin-left: 10px;" style="margin-left: 10px;"
...@@ -189,10 +198,11 @@ ...@@ -189,10 +198,11 @@
<div style=" display:flex; flex-direction:column"> <div style=" display:flex; flex-direction:column">
<el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/warehousing?id=' + scope.row.orderId)" <el-button size="mini" type="text" icon="el-icon-edit" @click="$router.push('/order/warehousing?id=' + scope.row.orderId)"
v-hasPermi="['ecw:order:update']">入仓</el-button> v-hasPermi="['ecw:order: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= "$router.push(`/order/withdrawal/${scope.row.orderId}`)"
v-hasPermi="['ecw:order:update']">退仓</el-button> v-hasPermi="['ecw:order:update']">退仓</el-button>
<el-button type="text" v-if="scope.row.status === 5" size="mini" @click="$router.push({path:'/order/batch-single-application',query:{list:JSON.stringify([scope.row])}})" >调仓</el-button>
</div> </div>
</el-popover> </el-popover>
<!--打印相关的--> <!--打印相关的-->
...@@ -208,7 +218,7 @@ ...@@ -208,7 +218,7 @@
</div> </div>
<el-button type="text" slot="reference">打印</el-button> <el-button type="text" slot="reference">打印</el-button>
</el-popover> </el-popover>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -313,7 +323,7 @@ export default { ...@@ -313,7 +323,7 @@ export default {
page: 1, page: 1,
rows: 10 rows: 10
}, },
/* productRecordList: getDictDatas(DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE), /* productRecordList: getDictDatas(DICT_TYPE.PRODUCT_RECORD_ATTRIBUTE),
cargoControlStatusList: getDictDatas(DICT_TYPE.CONTROL_GOODS_STATUS), cargoControlStatusList: getDictDatas(DICT_TYPE.CONTROL_GOODS_STATUS),
customsTypeList: getDictDatas(DICT_TYPE.ECW_CUSTOMS_TYPE), customsTypeList: getDictDatas(DICT_TYPE.ECW_CUSTOMS_TYPE),
...@@ -334,6 +344,7 @@ export default { ...@@ -334,6 +344,7 @@ export default {
orderId:undefined, orderId:undefined,
/* DICT_TYPE, /* DICT_TYPE,
getDictDatas */ getDictDatas */
adjustmentList:[]
}; };
}, },
computed: { computed: {
...@@ -385,6 +396,7 @@ export default { ...@@ -385,6 +396,7 @@ export default {
this.getList() this.getList()
}) })
}, },
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
this.loading = true; this.loading = true;
...@@ -403,7 +415,7 @@ export default { ...@@ -403,7 +415,7 @@ export default {
this.loading = false; this.loading = false;
}); });
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
handleQuery() { handleQuery() {
this.queryParams.pageNo = 1; this.queryParams.pageNo = 1;
...@@ -422,7 +434,7 @@ export default { ...@@ -422,7 +434,7 @@ export default {
handleUpdate(row) { handleUpdate(row) {
this.$router.push('edit?id=' + row.orderId) this.$router.push('edit?id=' + row.orderId)
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
// 处理查询参数 // 处理查询参数
...@@ -440,8 +452,14 @@ export default { ...@@ -440,8 +452,14 @@ export default {
this.ids = selection.map(item => item.orderId) this.ids = selection.map(item => item.orderId)
this.single = selection.length !== 1 this.single = selection.length !== 1
this.multiple = !selection.length this.multiple = !selection.length
this.adjustmentList = selection;
},
handleEdit() {
this.$router.push({
path:'/order/batch-single-application',
query:{list:JSON.stringify(this.adjustmentList)}
})
}, },
handleEdit() { },
moleculeChange() { }, moleculeChange() { },
denominatorChange() { }, denominatorChange() { },
specialRendering(val){ specialRendering(val){
...@@ -461,7 +479,7 @@ export default { ...@@ -461,7 +479,7 @@ export default {
} }
} }
) )
} },
} }
}; };
</script> </script>
<template>
<div style="padding: 0 20px">
<h1>调拨出仓</h1>
<el-divider content-position="left">
订单信息
</el-divider>
<ordeDetailsForm :details="{}"></ordeDetailsForm>
<el-divider content-position="left">
货物信息
</el-divider>
<el-table>
<el-table-column label="序号"></el-table-column>
<el-table-column label="品名"></el-table-column>
<el-table-column label="填单货物属性"></el-table-column>
<el-table-column label="入库货物属性"></el-table-column>
<el-table-column label="最后操作时间"></el-table-column>
<el-table-column label="状态"></el-table-column>
</el-table>
<el-divider content-position="left">
调仓明细
</el-divider>
<el-table>
<el-table-column label="调仓编号"></el-table-column>
<el-table-column label="调出仓库"></el-table-column>
<el-table-column label="调入仓库"></el-table-column>
<el-table-column label="申请人"></el-table-column>
<el-table-column label="申请时间"></el-table-column>
<el-table-column label="状态"></el-table-column>
<el-table-column label="操作"></el-table-column>
</el-table>
<el-descriptions :column="4" border>
<el-descriptions-item label="集运仓库">kooriookami</el-descriptions-item>
<el-descriptions-item label="储位">18100000000</el-descriptions-item>
<el-descriptions-item label="调拨目标仓">苏州市</el-descriptions-item>
<el-descriptions-item label="物流公司"></el-descriptions-item>
<el-descriptions-item label="物流单号"> 1188 号</el-descriptions-item>
<el-descriptions-item label="联系电话"> 1188 号</el-descriptions-item>
<el-descriptions-item label="出仓日期"> 1188 号</el-descriptions-item>
<el-descriptions-item label="到仓日期"> 1188 号</el-descriptions-item>
</el-descriptions>
<el-divider content-position="left">
出仓影像
</el-divider>
<el-from>
<el-form-item label="备注"></el-form-item>
</el-from>
<div>
<el-button>确认出仓</el-button>
<el-button>返回</el-button>
</div>
</div>
</template>
<script>
import ordeDetailsForm from "@/views/ecw/order/components/ordeDetailsForm";
export default {
name: "transferWarehousing",
components:{
ordeDetailsForm
},
}
</script>
<style scoped>
</style>
<template>
<div style="padding: 0 20px">
<h1>申请退仓-{{orderDetails.orderNo}}</h1>
<el-divider></el-divider>
<el-form label-width="150px">
<el-form-item label="退仓原因">
<el-input v-model="params.reason" style="width:500px" type="textarea"></el-input>
</el-form-item>
</el-form>
<el-divider></el-divider>
<h2>审批流程</h2>
<div style="padding: 20px">
<my-process-viewer key="designer" v-model="bpmnXML" v-bind="bpmnControlForm" />
</div>
<div>
<el-button @click="submit" type="primary" style="margin-right: 20px;">确定退仓</el-button>
<el-button @click="$router.push('/order/order')">不,再考虑考虑</el-button>
</div>
</div>
</template>
<!--退仓-->
<script>
import {getOrder} from "@/api/ecw/order";
import {orderWarehouseInDelete} from "@/api/ecw/batchSingleApplication";
import {getProcessDefinitionBpmnXMLByKey} from "@/api/bpm/definition";
export default {
name: "withdrawal",
props:{
orderId:String
},
data(){
return {
orderDetails:{},
bpmnXML: null,
bpmnControlForm: {
prefix: "activiti"
},
params:{
orderId:undefined,
orderNo:undefined,
reason:'',
}
}
},
created() {
getOrder(this.orderId).then(r => this.orderDetails = r.data);
getProcessDefinitionBpmnXMLByKey("retired_warehouse").then(response => {
this.bpmnXML = response.data
})
},
methods:{
submit(){
this.params.orderId = this.orderDetails.orderId;
this.params.orderNo =this.orderDetails.orderNo;
orderWarehouseInDelete(this.params).then(r => {
if(r.code === 0){
this.$message.success('退仓成功');
}
})
}
}
}
</script>
<style scoped>
</style>
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