Commit 04e8cfd2 authored by 吴春's avatar 吴春
parents 24f9f3cc e24a53f2
<template>
<div class="directorOrderDetails">
<div class="head-title">
<span @click="CommonJump('directorOrderList')" class="blue point">订单列表</span> / 订单详情
<span @click="gobaclk()" class="blue point">订单列表</span> / 订单详情
</div>
<div class="content app-order-detail">
<el-card class="app-order-status" shadow="never">
......@@ -123,7 +123,7 @@
</button>
</div>
</div>
<div flex="dir:left cross:center" class="item-box" v-if="dataInfo.DetailList[0].CarType!=5">
<div flex="dir:left cross:center" class="item-box" v-if="dataInfo.DetailList.length>0 && dataInfo.DetailList[0].CarType!=5">
<span class="label">目的地:</span>
<div class="express-address">
{{dataInfo.OrderInfo.DestinationAddress}}
......@@ -289,7 +289,7 @@
</el-col>
</el-row>
<el-card style="margin-top:15px" shadow="never">
<el-table border :data="dataInfo.DetailList" style="width: 100%">
<el-table border :data="dataInfo.DetailList" style="width: 100%">
<el-table-column prop="Id" label="商品标题">
<template slot-scope="scope">
<div flex="dir:left cross:center">
......@@ -344,10 +344,6 @@
</el-form>
</el-card>
<div flex="dir:right" class="action-box">
<el-button v-if="(activeStep==2 || activeStep==3) && !exitState" style="margin-left: 10px;" size="small"
type="primary">打印发货单</el-button>
<el-button style="margin-left: 10px;" size="small" type="primary">打印小票</el-button>
<el-button @click="qrEnd(dataInfo,3)" v-if="activeStep==4 && !exitState" style="margin-left: 10px;" size="small"
type="primary">确认完成</el-button>
<el-button @click="qrEnd(dataInfo,2)" v-if="activeStep==3 && !exitState" style="margin-left: 10px;"
......@@ -818,6 +814,9 @@
}
})
},
gobaclk(){
this.$router.go(-1);//返回上一层
}
},
mounted() {
......
......@@ -2007,6 +2007,7 @@
<tbody v-for="(childItem,childIndex) in subItem.List" :key="childIndex+2000">
<tr>
<td rowspan="3" style="position:relative;">
<div v-if="childItem.IsApplyForCancel==1" style="color:red;">有取消订单</div>
<div class="order_union">
<div v-if="childItem.IsReturnIntermodal==1 || childItem.IsIntermodal==1" class="fl">
{{$t('Operation.Op_lian')}}</div>
......@@ -2234,6 +2235,7 @@
<div v-if="childItem.ScoreNum >= 0"
@click='goInvetig("investigationList", childItem.tcid, childItem.OrderId)'>
{{$t('salesModule.LookTourse')}}</div>
<div v-if="childItem.IsApplyForCancel==1" @click="DingdanCancel(childItem)">取消审核</div>
</div>
<el-button slot="reference" type="primary"
style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;'
......@@ -3108,6 +3110,31 @@
<div slot="tip" class="el-upload__tip">{{$t('ground.znscexcel')}}</div>
</el-upload>
</el-dialog>
<el-dialog custom-class='w450' title="op确认" :visible.sync="isShowOpSure" center>
<el-form label-width="110px">
<el-form-item label="审核状态">
<el-radio v-model="OpSureMsg.AuditState" :label="1">通过</el-radio>
<el-radio v-model="OpSureMsg.AuditState" :label="2">拒绝</el-radio>
</el-form-item>
<template v-if="OpSureMsg.AuditState==1">
<el-form-item label="审核备注">
<el-input type="textarea" :rows="4" v-model="OpSureMsg.Remark"></el-input>
</el-form-item>
<el-form-item label="是否收损">
<el-radio v-model="OpSureMsg.IsLoss" :label="1"></el-radio>
<el-radio v-model="OpSureMsg.IsLoss" :label="2"></el-radio>
</el-form-item>
<el-form-item v-if="OpSureMsg.IsLoss==1" label="收损金额">
<el-input v-model="OpSureMsg.LossMoney" @keyup.native="checkPrice(OpSureMsg,'LossMoney')"></el-input>
</el-form-item>
</template>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="opSureAudit">{{$t('pub.saveBtn')}}</button>
<button class="hollowFixedBtn" @click="isShowOpSure=false">{{$t('pub.cancelBtn')}}</button>
</div>
</el-dialog>
</div>
</template>
......@@ -3118,6 +3145,7 @@
export default {
data() {
return {
isShowOpSure:false, //op确认弹窗
IsSupperOrderEdit: false, //获取总经理副总经理超级修改权限
IsLookOrder: false, //出纳查看订单权限
EditBtn: false, //恢复订单
......@@ -3534,6 +3562,13 @@
zhuijiaMsg: {},
SetShouSunGuestNum: 0,
RBBranchId: '',
OpSureMsg:{
OrderId:0,
AuditState:1, //1通过 2拒绝
Remark:'',
IsLoss:1, //是否受损 1是2否
LossMoney:'' //收损金额
}
};
},
components: {
......@@ -5697,6 +5732,27 @@
}
});
},
//点击取消订单
DingdanCancel(item){
this.OpSureMsg.OrderId = item.OrderId;
this.OpSureMsg.AuditState = 1, //1通过 2拒绝
this.OpSureMsg.Remark = '',
this.OpSureMsg.IsLoss = 1, //是否受损 1是2否
this.OpSureMsg.LossMoney = '' //收损金额
this.isShowOpSure=true;
},
//op确认取消
opSureAudit(){
this.apipost('sellorder_post_SetAuditUserApplyForCancel', this.OpSureMsg , res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.getList();
this.isShowOpSure=false;
} else {
this.Error(res.data.message);
}
}, err => {})
}
},
mounted() {
this.GetSupperOrderEditAuth();
......
<template>
<div class="CostManagement">
<div class="head-title">
成本管理
<el-button style="float:right" size="small" @click="creatDanju" type="primary">生成单据
</el-button>
</div>
<div class="content">
<div >
<span>下单时间:</span>
<el-date-picker v-model="dateList" @change="msg.pageIndex=1,getList()" size="small" type="datetimerange"
range-separator="至" value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="开始日期" end-placeholder="结束日期">
</el-date-picker>
<span style="margin-left:15px">订单来源:</span>
<el-select class="w120" @change="msg.pageIndex=1,getList()" v-model="msg.OrderSource" size="small"
placeholder="请选择">
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in platList" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
<span style="margin-left:15px">订单类型:</span>
<el-select class="w120" @change="msg.pageIndex=1,getList()" v-model="msg.OrderType" size="small"
placeholder="请选择">
<el-option label="全部订单" :value="0"></el-option>
<el-option v-for="item in orderTypeList" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
<span style="margin-left:15px">是否制单:</span>
<el-select class="w120" @change="msg.pageIndex=1,getList()" v-model="msg.IsSelectCostFinance" size="small"
placeholder="请选择">
<el-option label="不限" :value="0"></el-option>
<el-option label="已制单" :value="1"></el-option>
<el-option label="未制单" :value="2"></el-option>
</el-select>
<el-input @clear="msg.pageIndex=1,getList()" @keyup.enter.native="msg.pageIndex=1,getList()" clearable
style="margin-left:15px;width:300px" class="input-with-select" placeholder="请输入内容" v-model="msgVal"
size="small">
<el-select style="width:100px" @change="ChangeId" v-model="msgId" slot="prepend" placeholder="请选择">
<el-option v-for="item in option_t" :key="item.Id" :label="item.name" :value="item.Id">
</el-option>
</el-select>
</el-input>
</div>
<el-table :data="tableData" v-loading="loading" border style="width: 100%;margin-top:15px"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" style="text-align:center;" :selectable="checkSelectable">
</el-table-column>
<el-table-column prop="OrderNo" label="订单号" width="220">
</el-table-column>
<el-table-column prop="GoodsName" label="商品名称">
<template slot-scope="scope">
<div style="display: flex;align-items: center;">
<span v-if="scope.row.OrderType==1 && scope.row.HotelList.length>0">{{scope.row.HotelList[0].HotelName}}</span>
<span v-if="scope.row.OrderType==2 && scope.row.DiningList.length>0">{{scope.row.DiningList[0].MealName}}</span>
<span v-if="scope.row.OrderType==3 && scope.row.TicketList.length>0">{{scope.row.TicketList[0].TicketName}}</span>
<span v-if="scope.row.OrderType==4 && scope.row.CarList.length>0">{{scope.row.CarList[0].StartCityName}}-{{scope.row.CarList[0].ArriveCityName}}</span>
<span v-if="scope.row.OrderType==5 && scope.row.SDGoodsList.length>0">{{scope.row.SDGoodsList[0].GoodsName}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="Income" label="金额" width="80">
</el-table-column>
<el-table-column prop="CouponMoney" label="成本" width="80">
<template slot-scope="scope">
<div style="display: flex;align-items: center;">
<span v-if="scope.row.OrderType==1">{{scope.row.HotelList[0].CostMoney}}</span>
<span v-if="scope.row.OrderType==2">{{scope.row.DiningList[0].CostMoney}}</span>
<span v-if="scope.row.OrderType==3">{{scope.row.TicketList[0].CostMoney}}</span>
<span v-if="scope.row.OrderType==4">{{scope.row.CarList[0].CostMoney}}</span>
<span v-if="scope.row.OrderType==5">{{scope.row.SDGoodsList[0].CostMoney}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="CouponMoney" label="保险成本" width="80">
<template slot-scope="scope">
<div style="display: flex;align-items: center;">
<span v-if="scope.row.OrderType==5">{{scope.row.SDGoodsList[0].InsuranceCostMoney}}</span>
<span v-else>-</span>
</div>
</template>
</el-table-column>
<el-table-column prop="CostFinanceId" label="成本单据" width="100">
<template slot-scope="scope">
<div style="display: flex;align-items: center;">
{{scope.row.CostFinanceId>0?scope.row.CostFinanceId:'-'}}
</div>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize" :current-page.sync="msg.pageIndex"
:page-sizes="[15, 30, 45, 60,75,90,100]"
@size-change="handleSizeChange"
layout="sizes,prev, pager, next" :total="total">
</el-pagination>
</div>
<!-- 选择是否公账 -->
<el-dialog title="生成单据" :visible.sync="choiceFin" width="400px">
<div>
<span style="margin-right:10px">付款类型</span>
<el-radio v-model="finMsg.IsPublic" label="0">私账</el-radio>
<el-radio v-model="finMsg.IsPublic" label="1">公账</el-radio>
</div>
<div style="margin-top:10px">
<span style="margin-right:10px">客户类型</span>
<el-select class="w200" v-model="finMsg.ClientType" size="small" placeholder="请选择" @change="financeinfo_post_GetClientAccountList(finMsg.ClientType)">
<el-option v-for="item in ClientTypeList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</div>
<div style="margin-top:10px">
<span style="margin-right:10px">客户名称</span>
<el-select class="w200" v-model="finMsg.ClientID" size="small" placeholder="请选择" @change="getName(finMsg.ClientID)">
<el-option v-for="item in ClientAccountList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</div>
<div style="margin-top:10px">
<span style="margin-right:10px">{{objName}}</span>
</div>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="choiceFin=false">取消</el-button>
<el-button type="primary" size="small" @click="setFince()">确定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
//选择公账弹窗
choiceFin: false,
msg: {
pageIndex: 1,
pageSize: 15,
OrderSource:0,
OrderType: 0,
OrderId: 0,
StartTime: '',
EndTime: '',
OrderStatus: 0,
OrderNo: '',
UserName: '',
UserId: '',
Consignee: '',
Mobile: '',
ProductCode: '',
Recycled: 2,
IsSelectCostFinance: 0, //是否制单 0-全部 1-已制单 2-未制单
},
SupplierData: [], //供应商data
MakingType:[
{Id:0,Name:'全部'},
{Id:1,Name:'成本'},
{Id:2,Name:'运费'},
{Id:3,Name:'保险'},
],
OrderClass:[
{Id:0,Name:'商品订单'},
{Id:1,Name:'司导订单'},
],
dateList: [], //日期
total: 0,
tableData: [], //列表数据
finMsg: {
OrderList: [],
IsPublic: '0', //0-私账1-公账
ClientType:'',//客人类型
ClientID:'',//账户id
},
ERPEmpId:0,
platList: [],
orderTypeList:[],
msgId: 1,
option_t: [{Id: 1,name: '订单号' },
{ Id: 2, name: '用户名' },
{Id: 3,name: '用户ID' },
{Id: 4,name: '联系人' },
{Id: 5,name: '联系电话' },
],
msgVal: '',
ClientTypeList:[],
ClientAccountList:[],
objName:'',
}
},
created() {
let currentUser = this.getLocalStorage()
this.ERPEmpId = currentUser.ERPEmpId
},
mounted() {
this.getList();
this.getplat();
this.getOrderType();
this.getclientList()
},
methods: {
getList() {
this.ChangeId(this.msgId);
if (!this.msgVal || this.msgVal == '') {
this.msg.OrderNo = '';
this.msg.UserName = '';
this.msg.UserId = '';
this.msg.Consignee = '';
this.msg.Mobile = '';
}
if (this.dateList && this.dateList.length > 0) {
this.msg.StartTime = this.dateList[0];
this.msg.EndTime = this.dateList[1];
} else {
this.msg.StartTime = '';
this.msg.EndTime = '';
}
this.loading = true;
this.lxymallapipost("/api/DmcOrder/GetDmcOrderCostPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.tableData = res.data.data.pageData;
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
handleSizeChange(val){
this.msg.pageIndex = 1;
this.msg.pageSize = val;
this.getList();
},
//点击生成单据
creatDanju() {
if (this.finMsg.OrderList.length == 0) {
this.Info('请选择单据');
} else {
this.choiceFin = true;
}
},
handleSelectionChange(val) {
var selectRow = JSON.parse(JSON.stringify(val));
this.finMsg.OrderList = selectRow
},
//设置单据
setFince() {
if(this.finMsg.ClientType == ''){
this.Info('请选择客户类型');
return
}
if(this.finMsg.ClientID == ''){
this.Info('请选择客户名称');
return
}
const loading = this.$loading({
lock: true,
text: '生成财务单据中...',
spinner: 'el-icon-loading',
});
this.lxymallapipost("/api/DmcOrder/SetDmcOrderCostFinance", this.finMsg, res => {
if (res.data.resultCode == 1) {
this.Success('设置成功');
this.choiceFin = false;
loading.close();
}else {
this.Error(res.data.message)
this.choiceFin = false;
loading.close();
}
})
},
getOrderType() {
this.lxymallapipost("/api/DmcOrder/GetOrderTypeEnumList", {}, res => {
this.orderTypeList = res.data.data;
})
},
getplat() {
this.lxymallapipost("/api/DmcOrder/GetUserSourceEnumList", {}, res => {
this.platList = res.data.data;
})
},
ChangeId(val) {
let msgVal = this.msgVal;
if (val == 1) {
this.msg.OrderNo = msgVal;
this.msg.UserName = '';
this.msg.UserId = '';
this.msg.Consignee = '';
this.msg.Mobile = '';
} else if (val == 2) {
this.msg.OrderNo = '';
this.msg.UserName = msgVal;
this.msg.UserId = '';
this.msg.Consignee = '';
this.msg.Mobile = '';
} else if (val == 3) {
this.msg.OrderNo = '';
this.msg.UserName = '';
this.msg.UserId = msgVal;
this.msg.Consignee = '';
this.msg.Mobile = '';
} else if (val == 4) {
this.msg.OrderNo = '';
this.msg.UserName = '';
this.msg.UserId = '';
this.msg.Consignee = msgVal;
this.msg.Mobile = '';
} else if (val == 5) {
this.msg.OrderNo = '';
this.msg.UserName = '';
this.msg.UserId = '';
this.msg.Consignee = '';
this.msg.Mobile = msgVal;
}
},
getclientList(){ // 获取对象类型
this.apipost('financeinfo_post_GetClientTypeList',{}, res => {
if(res.data.resultCode == 1) {
this.ClientTypeList = res.data.data;
}
}, err => {})
},
financeinfo_post_GetClientAccountList(t){
let msg = {
ID:0,
Type:t,
ObjID:0,
CardNum:''
}
this.apipost('financeinfo_post_GetClientAccountList',msg, res => {
if(res.data.resultCode == 1) {
this.finMsg.ClientID = '';
this.objName = '';
let data = res.data.data;
let ClientAccountList = [];
data.forEach(x=>{
let obj = {
ID:x.ID,
Name:x.AccountHolder + `(${x.AccountAlias})`,
Nom:x.CardNum,
OpenBankName:x.OpenBankName,
ObjID:x.ObjID,
}
ClientAccountList.push(obj)
})
this.ClientAccountList = ClientAccountList;
}
}, err => {})
},
getName(id){
this.objName='';
this.ClientAccountList.map(x=>{
if(x.ID == id){
this.objName=x.Nom+' '+x.OpenBankName;
return
}
})
},
checkSelectable(row){//判断是否可以选择
return row.CostFinanceId==0
},
}
};
</script>
<style>
@import '../Lxy/css/index.css';
.CostManagement .content {
background: #fff;
margin-top: 10px;
padding: 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
</style>
......@@ -41,7 +41,7 @@
<!-- <div>
<el-checkbox v-model="IsSelectPayMoney" true-label="1" false-label="0" style="margin-left: 15px"
@change="msg.pageIndex=1,getList()">只看已付款</el-checkbox>
</div>
</div> -->
<div style="display: flex;flex-direction: row;align-items: center;font-size: 12px" v-if="TenantId==1">
<div class="fkbox">
<div class="fkbox_item" style="background: #00FFFF"></div>
......@@ -63,7 +63,7 @@
<div class="fkbox_item" style="background: #FFF100"></div>
<span>驳回</span>
</div>
</div> -->
</div>
</div>
<div>
<el-tabs style="margin-top:20px" v-model="activeName" @tab-click="handleClick">
......@@ -80,206 +80,214 @@
</div>
<div class="app-order-list">
<el-card v-for="(item,index) in tableData" :key="index" class="app-order-item" shadow="never">
<div slot="header" class="clearfix">
<div flex="cross:center" class="app-order-head">
<div class="app-order-time">{{item.CreateDate}}</div>
<div class="app-order-user">
<span class="app-order-time" style="margin-right: 5px">订单号:</span>{{item.OrderNo}}({{item.OrderId}})
<el-tag v-if="item.OrderSource==1" size="small">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==2" size="small" type="success">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==3" size="small" type="info">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==4" size="small" type="warning">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==5" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==6" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
</div>
<div flex="cross:center" class="app-order-user">
<img v-if="item.OrderSource==1" src="../../../assets/img/userman/wx.png" alt="">
<span>{{item.UserName}}({{item.UserId}})</span>
</div>
<div v-if="item.BuyerMessage && item.BuyerMessage!=''" flex="cross:center" class="remark-box">
<el-tooltip class="item" effect="dark" :content="item.BuyerMessage" placement="top">
<img src="../../../assets/img/userman/remark.png" alt="">
</el-tooltip>
<div v-if="item.OrderType!=5">
<div slot="header" class="clearfix">
<div flex="cross:center" class="app-order-head">
<div class="app-order-time">{{item.CreateDate}}</div>
<div class="app-order-user">
<span class="app-order-time" style="margin-right: 5px">订单号:</span>{{item.OrderNo}}({{item.OrderId}})
<el-tag v-if="item.OrderSource==1" size="small">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==2" size="small" type="success">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==3" size="small" type="info">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==4" size="small" type="warning">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==5" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==6" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
</div>
<div flex="cross:center" class="app-order-user">
<img v-if="item.OrderSource==1" src="../../../assets/img/userman/wx.png" alt="">
<span>{{item.UserName}}({{item.UserId}})</span>
</div>
<div v-if="item.BuyerMessage && item.BuyerMessage!=''" flex="cross:center" class="remark-box">
<el-tooltip class="item" effect="dark" :content="item.BuyerMessage" placement="top">
<img src="../../../assets/img/userman/remark.png" alt="">
</el-tooltip>
</div>
<div flex="dir:left wrap:wrap" class="app-order-offline">
<el-tag v-if="item.PaymentTime==''" style="margin-left:5px" size="small" type="warning">未付款</el-tag>
<el-tag v-if="item.OrderStatus== 2 " style="margin-left:5px" size="small" type="success">待确认</el-tag>
<!-- <el-tag
v-if="item.PaymentTime!='' && item.DeliveryTime=='' && item.ReceivingTime=='' && item.FinishTime==''"
style="margin-left:5px" size="small" type="warning">已付款</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">待出行</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">出行中</el-tag>
<el-tag v-if="item.ReceivingTime!='' && item.FinishTime==''" style="margin-left:5px" size="small"
type="success">出行完成</el-tag> -->
<el-tag v-if="item.OrderStatus==3" style="margin-left:5px" size="small" type="success">已完成</el-tag>
<el-tag v-if="item.OrderStatus==4" style="margin-left:5px" size="small" type="danger">已取消</el-tag>
</div>
<el-tooltip class="item" effect="dark" content="强制取消" placement="top-start">
<img v-if="item.OrderStatus==1 || item.OrderStatus==2" @click="OrderExit2(item)" style="right:60px"
class="app-order-btnimg" src="../../../assets/img/userman/force.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="加入回收站" placement="top-start">
<img v-if="msg.Recycled!=1" @click="fRhsz(item,3)" class="app-order-btnimg"
src="../../../assets/img/userman/del1.png" alt="">
</el-tooltip>
</div>
<div flex="dir:left wrap:wrap" class="app-order-offline">
<el-tag v-if="item.PaymentTime==''" style="margin-left:5px" size="small" type="warning">未付款</el-tag>
<el-tag v-if="item.OrderStatus== 2 " style="margin-left:5px" size="small" type="success">待确认</el-tag>
<!-- <el-tag
v-if="item.PaymentTime!='' && item.DeliveryTime=='' && item.ReceivingTime=='' && item.FinishTime==''"
style="margin-left:5px" size="small" type="warning">已付款</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">待出行</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">出行中</el-tag>
<el-tag v-if="item.ReceivingTime!='' && item.FinishTime==''" style="margin-left:5px" size="small"
type="success">出行完成</el-tag> -->
<el-tag v-if="item.OrderStatus==3" style="margin-left:5px" size="small" type="success">已完成</el-tag>
<el-tag v-if="item.OrderStatus==4" style="margin-left:5px" size="small" type="danger">已取消</el-tag>
</div>
<el-tooltip class="item" effect="dark" content="强制取消" placement="top-start">
<img v-if="item.OrderStatus==1 || item.OrderStatus==2" @click="OrderExit2(item)" style="right:60px"
class="app-order-btnimg" src="../../../assets/img/userman/force.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="加入回收站" placement="top-start">
<img v-if="msg.Recycled!=1" @click="fRhsz(item,3)" class="app-order-btnimg"
src="../../../assets/img/userman/del1.png" alt="">
</el-tooltip>
</div>
</div>
<div class="app-order-body">
<div class="goods-item" style="width: 65%;">
<div v-for="(list,index2) in getshangplist(item)" :key="index2" class="goods">
<div >
<el-image :src="list.HotelImage" v-if='item.OrderType == 1' class="goods-image" :preview-src-list="[list.HotelImage]"></el-image>
<el-image :src="list.DiningImg" v-if='item.OrderType == 2' class="goods-image" :preview-src-list="[list.DiningImg]"></el-image>
<el-image :src="list.TicketImg" v-if='item.OrderType == 3' class="goods-image" :preview-src-list="[list.TicketImg]"></el-image>
<div flex="dir:left" style='display:flex'>
<div class="goods-info">
<div class="goods-name">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 2;">
<span v-if='item.OrderType == 1'>{{list.HotelName}}</span>
<span v-if='item.OrderType == 2'>{{list.MealName}}</span>
<span v-if='item.OrderType == 3'>{{list.TicketName}}</span>
<span v-if='item.OrderType == 4'>{{list.StartCityName}} - {{list.ArriveCityName}}</span>
<div class="app-order-body">
<div class="goods-item" style="width: 65%;">
<div v-for="(list,index2) in getshangplist(item)" :key="index2" class="goods">
<div >
<img :src="list.HotelImage" v-if='item.OrderType == 1' class="goods-image" />
<img :src="list.DiningImg" v-if='item.OrderType == 2' class="goods-image" />
<img :src="list.TicketImg" v-if='item.OrderType == 3' class="goods-image" />
<div flex="dir:left" style='display:flex'>
<div class="goods-info">
<div class="goods-name">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 2;">
<span v-if='item.OrderType == 1'>{{list.HotelName}}</span>
<span v-if='item.OrderType == 2'>{{list.MealName}}</span>
<span v-if='item.OrderType == 3'>{{list.TicketName}}</span>
<span v-if='item.OrderType == 4'>{{list.StartCityName}} - {{list.ArriveCityName}}</span>
</div>
</div>
</div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;" v-if='item.OrderType == 1'>房间数:x{{list.RoomNumber}}</span>
<span style="margin-right: 10px;" v-if='item.OrderType == 2 || item.OrderType == 3'>数量:x{{list.PeopleNumber}}</span>
</div>
<div style="margin-bottom: 5px;" >单价:¥{{list.Unit_Price}} </div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 1'>入店时间:{{list.StartDate}} - {{list.EndDate}}</div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 4'>
上车地点:{{list.DepartAddress}} <span style='margin:0 5px'></span> 下车地点:{{list.ArriveAddress}}</div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 4'> </div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;" v-if='item.OrderType == 1'>到店时间:{{list.ArrivalTime}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 2'>就餐时间:{{list.Date}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 3'>入园时间:{{list.Date}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 4'>出行时间:{{list.Date}} {{list.DepartureTime}} </span>
</div>
</div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;" v-if='item.OrderType == 1'>房间数:x{{list.RoomNumber}}</span>
<span style="margin-right: 10px;" v-if='item.OrderType == 2 || item.OrderType == 3'>数量:x{{list.PeopleNumber}}</span>
</div>
<div style="margin-bottom: 5px;" >单价:¥{{list.Unit_Price}} </div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 1'>入店时间:{{list.StartDate}} - {{list.EndDate}}</div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 4'>
上车地点:{{list.DepartAddress}} <span style='margin:0 5px'></span> 下车地点:{{list.ArriveAddress}}</div>
<div style="margin-bottom: 5px;" v-if='item.OrderType == 4'> </div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;" v-if='item.OrderType == 1'>到店时间:{{list.ArrivalTime}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 2'>就餐时间:{{list.Date}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 3'>入园时间:{{list.Date}} </span>
<span style="margin-right: 10px;" v-if='item.OrderType == 4'>出行时间:{{list.Date}} {{list.DepartureTime}} </span>
<div flex="dir:left box:mean" style="width: 350px;">
<div flex="cross:center main:center"
style="display: flex;flex-direction: column;align-items: flex-start;width: 55%;">
<span style="cursor:pointer">小计:¥{{item.Income}}
<!-- <img v-if="item.PaymentTime==''" @click="EditPrice(item,1,list)"
src="../../../assets/img/userman/edit1.png" alt=""> -->
</span>
<span style="cursor:pointer">成本:¥{{ list.CostMoney}}
<img v-if="item.OrderStatus!==4" @click="costBtn_t(list,item)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer" v-if='item.OrderType == 4 && list.PeopleNumber && list.PeopleNumber>0'>成人:{{ list.PeopleNumber}}</span>
<span style="cursor:pointer" v-if='item.OrderType == 4 && list.ChildNumber && list.ChildNumber>0'>儿童:{{ list.ChildNumber}} </span>
</div>
</div>
</div>
<div flex="dir:left box:mean" style="width: 350px;">
<div flex="cross:center main:center"
style="display: flex;flex-direction: column;align-items: flex-start;width: 55%;">
<span style="cursor:pointer">小计:¥{{item.Income}}
<img v-if="item.PaymentTime==''" @click="EditPrice(item,1,list)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer">成本:¥{{ list.CostMoney}}
<img v-if="item.OrderStatus!==4" @click="costBtn(list,1)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer" v-if='item.OrderType == 4 && list.PeopleNumber && list.PeopleNumber>0'>成人:{{ list.PeopleNumber}}</span>
<span style="cursor:pointer" v-if='item.OrderType == 4 && list.ChildNumber && list.ChildNumber>0'>儿童:{{ list.ChildNumber}}</span>
<div v-if='item.OrderType ==1 '>
<el-table
:data="item.HotelList[0].PriceList"
border
style="width: 100%">
<el-table-column
prop="Date"
label="日期"
width="180">
</el-table-column>
<el-table-column
prop="B2BPrice"
label="b2b价格"
width="180">
</el-table-column>
</el-table>
<div style="width: 200px; display: flex;flex-direction:column;justify-content: center"
v-if="TenantId==1">
<div style="font-size: 12px" v-if="list.YSMoney!=0 || list.RealMoney!=0">
<span>应收:¥{{list.YSMoney}}</span>
<span style="margin-left: 10px">实收:¥{{list.RealMoney}}</span>
</div>
<div style="font-size: 12px" v-if="list.YFMoney!=0 || list.PayMoney!=0">
<span>应付:¥{{list.YFMoney}}</span>
<span style="margin-left: 10px">实付:¥{{list.PayMoney}}</span>
</div>
</div>
</div>
<div style="width: 200px; display: flex;flex-direction:column;justify-content: center"
v-if="TenantId==1">
<div style="font-size: 12px" v-if="list.YSMoney!=0 || list.RealMoney!=0">
<span>应收:¥{{list.YSMoney}}</span>
<span style="margin-left: 10px">实收:¥{{list.RealMoney}}</span>
</div>
<div class="billStyle"
v-if="((list.SFinanceList && list.SFinanceList.length>0)||(list.ZFinanceList && list.ZFinanceList.length >0) ) ">
<div class="billStyle_item" style="border-right: 1px solid #EBEEF5">
收入单据:
<span v-for="(item,index2) in list.SFinanceList" :key="index2" @click="goSF(item)">
<span class="billtext" v-if="item.Status == 0" :style="{color:'#00FFFF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&& item.Is_Cashier!=1"
:style="{color:'#0080FF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&&item.Is_Cashier==1"
:style="{color:'#FF4048'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 2">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 3" :style="{color:'#FFF100'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 4" :style="{color:'#800080'}">{{item.FrID}}</span>
</span>
</div>
<div style="font-size: 12px" v-if="list.YFMoney!=0 || list.PayMoney!=0">
<span>应付:¥{{list.YFMoney}}</span>
<span style="margin-left: 10px">实付:¥{{list.PayMoney}}</span>
<div class="billStyle_item">
支出单据:
<span v-for="(item,index2) in list.ZFinanceList" :key="index2" @click="goZF(item)">
<span class="billtext" v-if="item.Status == 0" :style="{color:'#00FFFF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1 && item.Is_Cashier!=1"
:style="{color:'#0080FF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&&item.Is_Cashier==1"
:style="{color:'#FF4048'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 2">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 3" :style="{color:'#FFF100'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 4" :style="{color:'#800080'}">{{item.FrID}}</span>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div flex="cross:center" class="app-order-info" style="width: 15%;">
<div flex="dir:top">
<div>
<span style="font-size: 16px;">{{item.Income}}</span>
<el-popover placement="bottom" width="200" trigger="hover" :content="'商品小计 '+ item.Income +'元'">
<img slot="reference" src="../../../assets/img/userman/price.png" alt="">
</el-popover>
</div>
<div>
<el-tag effect="dark" type="warning" size="mini">{{item.PaymentWayName}}</el-tag>
<div flex="cross:center" class="app-order-info" style="width: 15%;">
<div flex="dir:top">
<div>
<span style="font-size: 16px;">{{item.Income}}</span>
<el-popover placement="bottom" width="200" trigger="hover" :content="'商品小计 '+ item.Income +'元'">
<img slot="reference" src="../../../assets/img/userman/price.png" alt="">
</el-popover>
</div>
<div>
<el-tag effect="dark" type="warning" size="mini">{{item.PaymentWayName}}</el-tag>
</div>
</div>
</div>
</div>
<div class="app-order-info" style="padding: 10px; border-right: 0px; width: 20%;">
<div flex="wrap:wrap cross:center">
<template v-if="msg.Recycled==2">
<!-- 待确认 -->
<el-tooltip class="item" effect="dark" content="确认" placement="top" v-if="item.OrderStatus==2">
<img v-if="item.OrderStatus==2" @click="qrEnd(item,2)" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!-- 待出行 -->
<el-tooltip class="item" effect="dark" content="确认出行" placement="top" v-if="item.OrderStatus==3">
<img @click="qrEnd(item,2)" v-if="item.OrderStatus==3" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
<div class="app-order-info" style="padding: 10px; border-right: 0px; width: 20%;">
<div flex="wrap:wrap cross:center">
<template v-if="msg.Recycled==2">
<!-- 待确认 -->
<el-tooltip class="item" effect="dark" content="确认" placement="top" v-if="item.OrderStatus==2">
<img v-if="item.OrderStatus==2" @click="qrEnd(item,2)" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!-- 待出行 -->
<el-tooltip class="item" effect="dark" content="确认出行" placement="top" v-if="item.OrderStatus==3">
<img @click="qrEnd(item,2)" v-if="item.OrderStatus==3" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!--待处理-->
<el-tooltip class="item" effect="dark" content="同意" placement="top" v-if="item.OrderStatus==5">
<img @click="pending(item,1)" v-if="item.OrderStatus==5" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="拒绝" placement="top" v-if="item.OrderStatus==5">
<img @click="pending(item,2)" v-if="item.OrderStatus==5" class="app-order-icon"
src="../../../assets/img/userman/nopass.png" alt="">
</el-tooltip>
</template>
<!-- 回收站 -->
<el-tooltip class="item" effect="dark" content="恢复订单" placement="top">
<img @click="fRhsz(item,4)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/renew.png" alt="">
</el-tooltip>
<!-- 已收货 -->
<el-tooltip class="item" effect="dark" content="确认完成" placement="top" v-if="item.OrderStatus==4">
<img @click="qrEnd(item,3)" v-if="item.OrderStatus==4" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
<el-tooltip class="item" effect="dark" content="删除订单" placement="top">
<img @click="fRhsz(item,5)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/del.png" alt="">
</el-tooltip>
<!--待处理-->
<el-tooltip class="item" effect="dark" content="同意" placement="top" v-if="item.OrderStatus==6">
<img @click="pending(item,1)" v-if="item.OrderStatus==6" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
<template v-if="msg.Recycled==2">
<el-tooltip class="item" effect="dark" content="添加备注" placement="top">
<img @click="fRhsz(item,1)" class="app-order-icon"
src="../../../assets/img/userman/add_remark.png" alt="">
</el-tooltip>
</template>
<el-tooltip class="item" effect="dark" content="查看订单详情" placement="top">
<img @click="CommonJump('traveorderdetails',{OrderId:item.OrderId})" class="app-order-icon"
src="../../../assets/img/userman/detail.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="拒绝" placement="top" v-if="item.OrderStatus==6">
<img @click="pending(item,2)" v-if="item.OrderStatus==6" class="app-order-icon"
src="../../../assets/img/userman/nopass.png" alt="">
</el-tooltip>
</template>
<!-- 回收站 -->
<el-tooltip class="item" effect="dark" content="恢复订单" placement="top">
<img @click="fRhsz(item,4)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/renew.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除订单" placement="top">
<img @click="fRhsz(item,5)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/del.png" alt="">
</el-tooltip>
<template v-if="msg.Recycled==2">
<el-tooltip class="item" effect="dark" content="备注" placement="top">
<img @click="fRhsz(item,1)" class="app-order-icon"
src="../../../assets/img/userman/add_remark.png" alt="">
</el-tooltip>
</template>
<el-tooltip class="item" effect="dark" content="查看订单详情" placement="top">
<img @click="CommonJump('directorOrderDetails',{OrderId:item.OrderId})" class="app-order-icon"
src="../../../assets/img/userman/detail.png" alt="">
</el-tooltip>
</div>
</div>
</div>
</div>
<div class="card-footer">
<div class="card-footer">
<div>
<div flex="dir:left">
<div class="address-box">联系人: {{item.Consignee}} 电话:{{item.Mobile}} </div>
......@@ -287,7 +295,281 @@
class="el-button el-button--text is-circle"><i class="el-icon-edit"></i></button>
</div>
</div>
<div v-if="item.Remark && item.Remark!=''" class="seller-remark">备注:{{item.Remark}}</div>
<div v-if="item.Remark && item.Remark!=''" class="seller-remark">商家备注:{{item.Remark}}</div>
</div>
</div>
<!-- 城际样式 -->
<div v-if="item.OrderType==5">
<div slot="header" class="clearfix">
<div flex="cross:center" class="app-order-head">
<div class="app-order-time">{{item.CreateDate}}</div>
<div class="app-order-user">
<span class="app-order-time" style="margin-right: 5px">订单号:</span>{{item.OrderNo}}({{item.OrderId}})
<el-tag v-if="item.OrderSource==1" size="small">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==2" size="small" type="success">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==3" size="small" type="info">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==4" size="small" type="warning">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==5" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
<el-tag v-if="item.OrderSource==6" size="small" type="danger">{{item.OrderTypeName}}</el-tag>
</div>
<div flex="cross:center" class="app-order-user">
<img v-if="item.OrderSource==1" src="../../../assets/img/userman/wx.png" alt="">
<span>{{item.UserName}}({{item.UserId}})</span>
</div>
<div v-if="item.BuyerMessage && item.BuyerMessage!=''" flex="cross:center" class="remark-box">
<el-tooltip class="item" effect="dark" :content="item.BuyerMessage" placement="top">
<img src="../../../assets/img/userman/remark.png" alt="">
</el-tooltip>
</div>
<div flex="dir:left wrap:wrap" class="app-order-offline">
<el-tag v-if="item.PaymentTime==''" style="margin-left:5px" size="small" type="warning">未付款</el-tag>
<el-tag
v-if="item.PaymentTime!='' && item.DeliveryTime=='' && item.ReceivingTime=='' && item.FinishTime==''"
style="margin-left:5px" size="small" type="warning">已付款</el-tag>
<el-tag v-if="item.DeliveryTime=='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">待确认</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">待出行</el-tag>
<el-tag v-if="item.DeliveryTime!='' && item.ReceivingTime==''" style="margin-left:5px" size="small"
type="success">出行中</el-tag>
<el-tag v-if="item.ReceivingTime!='' && item.FinishTime==''" style="margin-left:5px" size="small"
type="success">出行完成</el-tag>
<el-tag v-if="item.FinishTime!=''" style="margin-left:5px" size="small" type="success">已完成</el-tag>
<el-tag v-if="item.OrderStatus==7" style="margin-left:5px" size="small" type="danger">已取消</el-tag>
</div>
<el-tooltip class="item" effect="dark" content="强制取消" placement="top-start">
<img v-if="item.OrderStatus==1 || item.OrderStatus==2" @click="OrderExit2(item)" style="right:60px"
class="app-order-btnimg" src="../../../assets/img/userman/force.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="加入回收站" placement="top-start">
<img v-if="msg.Recycled!=1" @click="fRhsz2(item,4)" class="app-order-btnimg"
src="../../../assets/img/userman/del1.png" alt="">
</el-tooltip>
</div>
</div>
<div class="app-order-body">
<div class="goods-item" style="width: 65%;">
<div v-for="(list,index2) in item.SDGoodsList" :key="index2" class="goods">
<div>
<img :src="list.CoverImagePath" class="goods-image" />
<div flex="dir:left" style="display:flex">
<div class="goods-info">
<div class="goods-name">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 2;">
<span class="el-tag el-tag--warning el-tag--mini el-tag--light is-hit"
style="margin-right: 5px;">
{{list.OrderTypeName}}
</span>
{{list.GoodsName}}
</div>
</div>
</div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;">
车辆:{{list.CarName}}、{{list.CarColorName}}、{{list.CarNumber}}
</span>
</div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;">
导游:{{list.GuideName}}
</span>
<span style="margin-right: 10px;">
服务类型:{{list.CarTypeName}}、{{list.CarType==5? (list.IsSpell==1?'拼车':'不拼车'):''}}
</span>
</div>
<div style="margin-bottom: 5px;">
<span style="margin-right: 10px;">
出发时间:{{list.TripSTime}}
</span>
</div>
<div style=" display: flex;flex-direction: row;align-items: center;"
v-if="list.SmallShopsCostPrice!=null && list.SmallShopsCostPrice!=''&& list.SmallShopsCostPrice>0&& item.SmallShopsId!=0">
<span>赞羊小计:¥{{list.SmallShopsCostPrice}}</span>
</div>
</div>
<div flex="dir:left box:mean" style="width: 350px;">
<div flex="cross:center main:center"
style="display: flex;flex-direction: column;align-items: flex-start;width: 55%;">
<span style="cursor:pointer">小计:¥{{list.Final_Price}}
<img v-if="item.PaymentTime==''" @click="EditPrice(item,1,list)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer">商品成本:¥{{ list.CostMoney}}
<img v-if="item.OrderStatus!==7" @click="costBtn(list,1)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer"> 保险成本:¥{{list.InsuranceCostMoney}}
<img v-if="item.OrderStatus!==7" @click="costBtn2(list,2)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
<span style="cursor:pointer">供应商:{{list.SupplierName !=null ? list.SupplierName :''}}
<img v-if="item.OrderStatus!==7" @click="UpdateSuplier(list)"
src="../../../assets/img/userman/edit1.png" alt="">
</span>
</div>
<div flex="cross:center main:center" >人数:x {{list.Number}}</div>
</div>
<div style="width: 200px; display: flex;flex-direction:column;justify-content: center"
v-if="TenantId==1">
<el-dropdown trigger="click" style="margin-left: 50px">
<span class="el-dropdown-link">制单</span>
<el-dropdown-menu slot="dropdown" class="TC-dropdown">
<el-dropdown-item @click.native="goCollection(item,list)">
收入制单
</el-dropdown-item>
<el-dropdown-item @click.native="goPayment(item,list)">
付款制单
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<div style="margin-top: 10px;font-size: 12px"
v-if="list.YSMoney!=0 || list.RealMoney!=0 || list.YFMoney!=0 || list.PayMoney!=0">
其他费用:
</div>
<div style="font-size: 12px" v-if="list.YSMoney!=0 || list.RealMoney!=0">
<span>应收:¥{{list.YSMoney}}</span>
<span style="margin-left: 10px">实收:¥{{list.RealMoney}}</span>
</div>
<div style="font-size: 12px" v-if="list.YFMoney!=0 || list.PayMoney!=0">
<span>应付:¥{{list.YFMoney}}</span>
<span style="margin-left: 10px">实付:¥{{list.PayMoney}}</span>
</div>
</div>
</div>
</div>
<div class="billStyle"
v-if="(list.SFinanceList.length>0|| list.ZFinanceList.length >0) && TenantId==1">
<div class="billStyle_item" style="border-right: 1px solid #EBEEF5">
收入单据:
<span v-for="(item,index2) in list.SFinanceList" :key="index2" @click="goSF(item)">
<span class="billtext" v-if="item.Status == 0" :style="{color:'#00FFFF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&& item.Is_Cashier!=1"
:style="{color:'#0080FF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&&item.Is_Cashier==1"
:style="{color:'#FF4048'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 2">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 3" :style="{color:'#FFF100'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 4" :style="{color:'#800080'}">{{item.FrID}}</span>
</span>
</div>
<div class="billStyle_item">
支出单据:
<span v-for="(item,index2) in list.ZFinanceList" :key="index2" @click="goZF(item)">
<span class="billtext" v-if="item.Status == 0" :style="{color:'#00FFFF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1 && item.Is_Cashier!=1"
:style="{color:'#0080FF'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 1&&item.Is_Cashier==1"
:style="{color:'#FF4048'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 2">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 3" :style="{color:'#FFF100'}">{{item.FrID}}</span>
<span class="billtext" v-if="item.Status == 4" :style="{color:'#800080'}">{{item.FrID}}</span>
</span>
</div>
</div>
</div>
</div>
<div flex="cross:center" class="app-order-info" style="width: 15%;">
<div flex="dir:top">
<div>
<span style="font-size: 16px;">¥{{item.Income}}</span>
<el-popover placement="bottom" width="200" trigger="hover" :content="'商品小计 '+ item.Income +'元'">
<img slot="reference" src="../../../assets/img/userman/price.png" alt="">
</el-popover>
</div>
<div class="express-price"><span>
<span style="color: rgb(144, 147, 153);">(含保险¥{{item.InsuranceMoney}})
</span>
</span></div>
<div>
<el-tag effect="dark" type="warning" size="mini">{{item.PaymentWayName}}</el-tag>
</div>
<div style="font-size: 12px" v-if="item.CouponMoney&& item.CouponMoney!=''&& item.CouponMoney>0">
<span>优惠金额:¥{{item.CouponMoney}}</span>
</div>
<div style="font-size: 12px"
v-if="item.IntegralMoney&& item.IntegralMoney!=''&& item.IntegralMoney>0">
<span>积分抵用金额:¥{{item.IntegralMoney}}</span>
</div>
<div style="font-size: 12px"
v-if="item.IntegralNumber&& item.IntegralNumber!=''&& item.IntegralNumber>0">
<span>积分数:¥{{item.IntegralNumber}}</span>
</div>
<div style="font-size: 12px"
v-if="item.MemberDiscountCouponList && item.MemberDiscountCouponList.length>0">
<span>优惠券信息:</span>
<span v-for="(MItem,Mindex) in item.MemberDiscountCouponList" :key="Mindex">
{{MItem.Name}}券,{{MItem.CouponType==1?'满'+MItem.MinConsumePrice+'元减'+MItem.DiscountsPrice+'元':'满'+MItem.MinConsumePrice+'元打'+MItem.DiscountsPrice+'折'}}
</span>
</div>
</div>
</div>
<div class="app-order-info" style="padding: 10px; border-right: 0px; width: 20%;">
<div flex="wrap:wrap cross:center">
<template v-if="msg.Recycled==2">
<!-- 待确认 -->
<el-tooltip class="item" effect="dark" content="确认" placement="top" v-if="item.OrderStatus==2">
<img v-if="item.OrderStatus==2" @click="qrEnd2(item,1)" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!-- 待出行 -->
<el-tooltip class="item" effect="dark" content="确认出行" placement="top" v-if="item.OrderStatus==3">
<img @click="qrEnd2(item,2)" v-if="item.OrderStatus==3" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!-- 已收货 -->
<el-tooltip class="item" effect="dark" content="确认完成" placement="top" v-if="item.OrderStatus==4">
<img @click="qrEnd2(item,3)" v-if="item.OrderStatus==4" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<!--待处理-->
<el-tooltip class="item" effect="dark" content="同意" placement="top" v-if="item.OrderStatus==5">
<img @click="pending(item,1)" v-if="item.OrderStatus==5" class="app-order-icon"
src="../../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="拒绝" placement="top" v-if="item.OrderStatus==5">
<img @click="pending(item,2)" v-if="item.OrderStatus==5" class="app-order-icon"
src="../../../assets/img/userman/nopass.png" alt="">
</el-tooltip>
</template>
<!-- 回收站 -->
<el-tooltip class="item" effect="dark" content="恢复订单" placement="top">
<img @click="fRhsz2(item,7)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/renew.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除订单" placement="top">
<img @click="DeleteOrder(item)" v-if="msg.Recycled==1" class="app-order-icon"
src="../../../assets/img/userman/del.png" alt="">
</el-tooltip>
<template v-if="msg.Recycled==2">
<el-tooltip class="item" effect="dark" content="添加备注" placement="top">
<img @click="OrderExit(item,1)" class="app-order-icon"
src="../../../assets/img/userman/add_remark.png" alt="">
</el-tooltip>
</template>
<el-tooltip class="item" effect="dark" content="查看订单详情" placement="top">
<img @click="CommonJump('directorOrderDetails',{OrderId:item.OrderId})" class="app-order-icon"
src="../../../assets/img/userman/detail.png" alt="">
</el-tooltip>
</div>
</div>
</div>
<div class="card-footer">
<div>
<div flex="dir:left">
<div class="address-box">联系人: {{item.Consignee}} 电话:{{item.Mobile}}
出发地:{{item.ShoppingAddress}}
{{item.SDGoodsList[0].CarType!=5 ?('目的地:'+item.DestinationAddress):''}}
</div>
<button v-if="item.OrderStatus==2" @click="ExitshAdress(item)" type="button"
class="el-button el-button--text is-circle"><i class="el-icon-edit"></i></button>
</div>
</div>
<div v-if="item.Remark && item.Remark!=''" class="seller-remark">商家备注:{{item.Remark}}</div>
</div>
</div>
</el-card>
<el-card v-if="tableData.length==0" class="app-order-item" shadow="never">
......@@ -325,8 +607,13 @@
</span>
</el-dialog>
<!--待处理-->
<el-dialog custom-class="app-send" :title="pendMgs.Type==1?'同意':'拒绝'" :visible.sync="pendD" width="15%" class="tyi">
<el-input v-if="pendMgs.Type==1" type="text" size="small" v-model="pendMgs.RefundMoney" placeholder="退款金额"></el-input>
<el-dialog custom-class="app-send" :title="pendMgs.Type==1?'同意':'拒绝'" :visible.sync="pendD" width="20%" class="tyi">
<div style="width100%;height:15px"></div>
<div v-if="pendMgs.Type==1 && pendMgs.OrderType!=5">
<span>退款金额</span>
<el-input type="text" size="small" v-model="pendMgs.RefundMoney" placeholder="退款金额"></el-input>
</div>
<el-input v-if="pendMgs.Type==2" type="textarea" size="small" v-model="pendMgs.Remark" placeholder="拒绝理由"></el-input>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="pendD = false">取 消</el-button>
......@@ -334,103 +621,7 @@
</span>
</el-dialog>
<!-- 发货 -->
<el-dialog custom-class="app-send" title="发货" :visible.sync="fhDig" width="35%">
<div class="title-box">
<span class="text">选择发货商品</span>
<span>(默认全选)</span>
</div>
<el-table ref="fahuoTable" :data="fahuoList" @selection-change="TableSelectChange" style="width: 100%">
<el-table-column :selectable="selectable" type="selection" width="55">
</el-table-column>
<el-table-column prop="id" label="图片" width="60">
<template slot-scope="scope">
<img style="width:30px;height:30px" :src="getIconLink(scope.row.CoverImagePath)" alt="">
</template>
</el-table-column>
<el-table-column prop="GoodsName" label="名称" width="314">
<template slot-scope="scope">
<el-tag v-if="scope.row.IsBindExpress==1" style="margin-left:5px" size="small" type="success">已发货</el-tag>
<span>{{scope.row.GoodsName}}</span>
</template>
</el-table-column>
<el-table-column prop="Number" label="数量" width="80">
</el-table-column>
<el-table-column prop="SpecificationList" label="规格">
<template slot-scope="scope">
<span :key="index2"
v-for="(msg,index2) in scope.row.SpecificationList">{{msg}}{{scope.row.SpecificationList.length == index2+1?'':','}}</span>
</template>
</el-table-column>
</el-table>
<div class="title-box"><span class="text">物流信息</span></div>
<el-form :model="fhMsg" ref="fhMsg" :rules="fhrules" label-width="130px">
<el-form-item label="物流快递">
<el-radio v-model="fhMsg.Type" :label="1">快递</el-radio>
<el-radio v-model="fhMsg.Type" :label="2">其他方式</el-radio>
</el-form-item>
<template v-if="fhMsg.Type==1">
<el-form-item label="快递公司" prop="ExpressId">
<el-select class="w200" size="small" v-model="fhMsg.ExpressId" filterable placeholder="请选择">
<el-option v-for="item in ExpressList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="收件人邮编">
<el-input type="number" min="1" size="small" v-model="fhMsg.PostCode"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="ExpressNumber">
<el-input size="small" v-model="fhMsg.ExpressNumber">
</el-input>
</el-form-item>
<el-form-item label="商家留言">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
<template v-if="fhMsg.Type==2">
<el-form-item label="物流内容">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="fhDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="FhsubmitForm('fhMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 修改收货地址 -->
<el-dialog title="修改收货地址" :visible.sync="shDig" width="600px">
<el-form :model="shMsg" :rules="shMsgrule" ref="shMsg" label-width="80px">
<el-form-item label="收件人" prop="Consignee">
<el-input size="small" v-model="shMsg.Consignee"></el-input>
</el-form-item>
<el-form-item label="电话" prop="Mobile">
<el-input type="number" size="small" v-model="shMsg.Mobile"></el-input>
</el-form-item>
<el-form-item label="所在区域" prop="Province">
<el-select size="small" @change="shMsg.City='',getCity(shMsg.Province)" v-model="shMsg.Province"
style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
<el-select size="small" @change="shMsg.District='',getArea(shMsg.City)" v-model="shMsg.City"
style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
<el-select size="small" v-model="shMsg.District" style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in areaList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="详细地址" prop="ShoppingAddress">
<el-input size="small" v-model="shMsg.ShoppingAddress"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="shDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="shsubmitForm('shMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 选择导出信息 -->
<el-dialog title="选择导出信息" :visible.sync="dialogVisible" width="960px">
<el-form style="border: 1px solid #F0F2F7;" :model="addMsg" ref="addMsg" label-width="100px">
......@@ -466,13 +657,25 @@
<span style="font-size:20px">提示</span>
</p>
<p class="center" style="padding: 10px 15px;">{{hstips}}</p>
<el-input size="small" v-if='hszMsg.Type == 1' v-model="hszMsg.Remark"></el-input>
<el-input style="margin-left: 10px; width: 400px;" size="small" type="textarea" v-if='hszMsg.Type == 1' v-model="hszMsg.Remark"></el-input>
<div style="text-align:center;margin-top:20px">
<el-button size="small" @click="hszDig=fasle">取消</el-button>
<el-button size="small" type="primary" @click="hszOk">确定</el-button>
</div>
</el-dialog>
<!-- 放入回收站 -->
<el-dialog custom-class="hszDigClass" :visible.sync="hszDig2" width="420px">
<p style="padding: 10px 15px;" class="center">
<i class="el-icon-warning" style="color:#E6A23C;font-size:24px"></i>
<span style="font-size:20px">提示</span>
</p>
<p class="center" style="padding: 10px 15px;">{{hstips}}</p>
<div style="text-align:center;margin-top:20px">
<el-button size="small" @click="hszDig2=fasle">取消</el-button>
<el-button size="small" type="primary" @click="hszOk2">确定</el-button>
</div>
</el-dialog>
<!-- 订单取消 -->
<el-dialog title="修改价格" :visible.sync="priceDig" width="600px">
......@@ -490,18 +693,18 @@
</span>
</el-dialog>
<!-- 商品、运费成本的修改 -->
<el-dialog :title="cosType==1?'商品成本修改':'运费成本修改'" :visible.sync="costDig" width="600px">
<el-form :model="costMsg" ref="costMsg" label-width="80px">
<el-form-item :label="cosType==1?'商品成本':'运费成本'">
<el-input size="small" v-model="costMsg.Money" step="1" min="0"
<!-- 成本修改 新增 6.2日 -->
<el-dialog title="商品成本修改" :visible.sync="costDig_t" width="600px">
<el-form :model="costMsg" ref="cost_tMSg" label-width="80px">
<el-form-item label="商品成本">
<el-input size="small" v-model="cost_tMSg.CostMoney" step="1" min="0"
onkeyup="this.value= this.value.match(/\d+(\.\d{0,3})?/) ? this.value.match(/\d+(\.\d{0,3})?/)[0] : ''">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="costDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="costForm('costMsg')">确 定</el-button>
<el-button size="small" @click="costDig_t = false">取 消</el-button>
<el-button size="small" type="primary" @click="costForm_t('costMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 保险成本的修改 -->
......@@ -518,27 +721,29 @@
<el-button size="small" type="primary" @click="costForm2('CostMoney')">确 定</el-button>
</span>
</el-dialog>
<!-- 商品 供应商修改 -->
<el-dialog title="修改供应商" :visible.sync="upSupliDilog" width="400px">
<el-form label-width="90px">
<el-form-item label="供应商">
<el-select filterable v-model="SupplierId" size="small" placeholder="请选择">
<el-option v-for="item in SuplierList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
<el-dialog :title="cosType==1?'商品成本修改':'运费成本修改'" :visible.sync="costDig" width="600px">
<el-form :model="costMsg" ref="costMsg" label-width="80px">
<el-form-item :label="cosType==1?'商品成本':'运费成本'">
<el-input size="small" v-model="costMsg.Money" step="1" min="0"
onkeyup="this.value= this.value.match(/\d+(\.\d{0,3})?/) ? this.value.match(/\d+(\.\d{0,3})?/)[0] : ''">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="upSupliDilog = false">取 消</el-button>
<el-button size="small" type="primary" @click="SaveSuplier">确 定</el-button>
<el-button size="small" @click="costDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="costForm('costMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
name: "orderList",
components:{
},
data() {
return {
importFileUrl: this.domainManager().UploadFileUrl,
......@@ -550,6 +755,7 @@
priceDig: false,
costDig: false, //商品、运费成本的修改
costDig2: false, //商品、运费成本的修改
costDig_t:false,
cosType: 1,
costMsg: {
Id: 0,
......@@ -710,13 +916,17 @@
moresendDig: false,
moresendtips: '',
hszDig: false,
hszDig2: false,
hszMsg: {},
hszMsg2: {},
btnLoad: false,
upSupliDilog: false, // 修改供应商弹窗
SuplierList: [], // 供应商下拉数据
SupplierId: 0, //公用供应商id 给弹窗用
CommonId: 0, //公用id 给弹窗用
TenantId: 0,
cost_tMSg:{},//成本管理
}
},
created() {
......@@ -730,9 +940,9 @@
this.msg.UserId = Number(this.$route.query.UserId)
}
this.getList();
// this.getplat();
this.getplat();
// this.getExpressInfo();
this.getProvince();
// this.getProvince();
this.getDown();
this.getOrderStatus();
this.getDelivery();
......@@ -835,6 +1045,21 @@
},
null
);
},
hszOk2() {
this.lxymallapipost('/api/order/SetOrderOperation', this.hszMsg2,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.hszDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
},
pending(item, type) {
this.pendD = true;
......@@ -842,13 +1067,18 @@
this.pendMgs.Type = type;
this.pendMgs.Remark = '';
this.pendMgs.RefundMoney = item.PreferPrice;
this.pendMgs.OrderType = item.OrderType;//来判断的否是城际专车 是的话用之前的接口
},
// 待处理调用接口
pendingForm() {
this.loading = true;
this.lxymallapipost('/api/DmcOrder/SetDmcOrderCancelAudit', this.pendMgs,
let url = '/api/DmcOrder/SetDmcOrderCancelAudit'
if(this.pendMgs.OrderType){
url = '/api/order/SetOrderApplyForCancelAudit'
}
this.lxymallapipost(url, this.pendMgs,
res => {
if (res.data.resultCode === 1) {
this.pendD = false;
......@@ -900,11 +1130,47 @@
});
},
// 司导的确认完成
qrEnd2(item, num) {
let msg = {
OrderId: item.OrderId,
Type: num
};
let that = this;
let text
if (num == 1) {
text = '是否确定订单?'
} else if (num == 2) {
text = '是否出行?'
} else if (num == 3) {
text = '是否完成该订单?'
}
that.$confirm(text, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.lxymallapipost('/api/order/SetSDOrderConfirm', msg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
// 放入回收站
fRhsz(item, num) {
let Remark = ''
if (num == 1) {
this.hstips = "备注修改?"
this.hstips = "备注修改"
Remark = item.Remark
}
if (num == 3) {
......@@ -923,6 +1189,20 @@
};
this.hszDig = true;
},
// 城际放入回收站
fRhsz2(item, num) {
if (num == 4) {
this.hstips = "是否放入回收站(可在回收站中恢复)?"
}
if (num == 7) {
this.hstips = "是否移出回收站?"
}
this.hszMsg2 = {
OrderId: item.OrderId,
Type: num
};
this.hszDig2 = true;
},
DeleteOrder(item) {
let msg = {
OrderId: item.OrderId,
......@@ -993,49 +1273,7 @@
});
},
// 判断是否有多个物流
getOrderSend(item) {
this.lxymallapipost("/api/order/GetOrderSendGoodsExpressIdByOrderId", {
OrderId: item.OrderId
}, res => {
let Id = res.data.data;
if (res.data.resultCode == 1) {
this.lxymallapipost("/api/order/GetOrderSendGoodsInfo", {
OrderExpressId: Id
}, res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
this.fhDig = true;
this.fhMsg = {
Id: Id,
OrderId: item.OrderId,
Type: data.Type,
ExpressId: data.ExpressId,
PostCode: data.PostCode,
ExpressNumber: data.ExpressNumber,
Remark: data.Remark,
OrderDetailIdList: [],
}
this.fahuoList = data.DetailList;
this.$nextTick(() => {
for (let i = 0; i < this.fahuoList.length; i++) {
this.$refs.fahuoTable.toggleRowSelection(
this.fahuoList[i],
true
);
}
});
} else {
this.moresendDig = true;
this.moresendtips = res.data.message;
}
})
} else {
this.moresendDig = true;
this.moresendtips = res.data.message;
}
})
},
FhsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
......@@ -1227,9 +1465,6 @@
},
);
});
},
handleClick(val) {
let dataId = val.$attrs.dataId;
......@@ -1261,7 +1496,7 @@
that.msg.EndTime = '';
}
that.loading = true;
that.lxymallapipost("/api/DmcOrder/GeDmcOrderCommonPageList", that.msg, res => {
that.lxymallapipost("/api/DmcOrder/GeDmcOrderCommonPageList_V2", that.msg, res => {
if (res.data.resultCode == 1) {
console.log(res.data.data,'res.data.data')
that.loading = false;
......@@ -1336,6 +1571,31 @@
}
})
},
costBtn_t(list,item){
this.cost_tMSg.OrderDetailId=list.Id;
this.cost_tMSg.OrderType=item.OrderType;
this.cost_tMSg.CostMoney=list.CostMoney;
console.log(list.CostMoney)
this.costDig_t = true
},
costForm_t(){//成本修改 新的
if(this.cost_tMSg.CostMoney==''){
this.Info('请输入修改成本金额')
return
}
this.lxymallapipost('/api/DmcOrder/SetDmcOrderCost', this.cost_tMSg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.costDig_t = false;
} else {
this.Error(res.data.message);
}
},
null
);
},
costBtn(list, type) {
this.cosType = type;
if (type == 1) {
......@@ -1354,6 +1614,7 @@
this.costDig2 = true;
},
costForm(formName) {
this.$refs[formName].validate((valid) => {
......@@ -1499,14 +1760,14 @@
JSON.stringify(orderObj))
},
goSF(item) { //收入详情
// window.open('http://www.test.com:8081/#/FinancialDocumentsDetail?id='+item.FrID+'&Conditon=1&tab=%E5%8D%95%E6%8D%AE%E8%AF%A6%E6%83%85')
window.open('http://yx.oytour.com/#/FinancialDocumentsDetail?id=' + item.FrID +
'&Conditon=1&tab=%E5%8D%95%E6%8D%AE%E8%AF%A6%E6%83%85')
this.CommonJump('FinancialDocumentsDetail',{id:item.FrID})
},
goZF(item) { //付款详情
// window.open('http://www.test.com:8081/#/FinancialDocumentsDetail?id='+item.FrID+'&Conditon=1&tab=%E5%8D%95%E6%8D%AE%E8%AF%A6%E6%83%85')
window.open('http://yx.oytour.com/#/FinancialDocumentsDetail?id=' + item.FrID +
'&Conditon=1&tab=%E5%8D%95%E6%8D%AE%E8%AF%A6%E6%83%85')
this.CommonJump('FinancialDocumentsDetail',{id:item.FrID})
}
},
};
......@@ -1514,6 +1775,8 @@
</script>
<style>
@import '../Lxy/css/index.css';
.orderList .remark-box {
padding-top: 3px;
margin-left: 7px;
......@@ -1789,4 +2052,5 @@
margin-right: 4px;
}
</style>
<template>
<div class="directorOrderDetails">
<div class="head-title">
<span @click="CommonJump('travelOrders')" class="blue point">订单列表</span> / 订单详情
</div>
<div class="content app-order-detail">
<el-card class="app-order-status" shadow="never">
<el-steps :active="activeStep" align-center>
<el-step title="已下单" icon="el-icon-edit" :description="dataInfo.CreateDate">
<i :class="activeStep>0?'step01Active':'step01'" slot="icon"></i>
</el-step>
<template>
<el-step v-if="dataInfo.PaymentTime=='' " title="未付款" icon="el-icon-edit">
<i :class="activeStep>0?'step02Active':'step02'" slot="icon"></i>
</el-step>
<el-step v-else title="已付款" icon="el-icon-edit" :description="dataInfo.PaymentTime">
<i :class="activeStep>1?'step02Active':'step02'" slot="icon"></i>
</el-step>
</template>
<template v-if="exitState">
<el-step title="已取消" icon="el-icon-edit" :description="dataInfo.CancelTime">
<i class="stepExit" slot="icon"></i>
</el-step>
</template>
<template v-else>
<template>
<el-step
v-if="activeStep==5"
title="已确定"
icon="el-icon-edit"
:description="dataInfo.ConfirmTime"
>
<i :class="activeStep==5?'step03Active':'step03'" slot="icon"></i>
</el-step>
<el-step v-else title="待确定" icon="el-icon-edit" description>
<i :class="activeStep>2?'step03Active':'step03'" slot="icon"></i>
</el-step>
</template>
<template>
<el-step v-if="activeStep==5" title="已结束" icon="el-icon-edit">
<i :class="activeStep==5?'step05Active':'step05'" slot="icon"></i>
</el-step>
</template>
</template>
</el-steps>
</el-card>
<el-row :gutter="16">
<el-col :span="8">
<div class="card-box">
<h3>订单信息</h3>
<template>
<div flex="dir:left cross:center" class="item-box">
<span class="label">订单号:</span>
<span>{{dataInfo.OrderNo}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">来源:</span>
<span
class="el-tag el-tag--warning el-tag--small el-tag--light is-hit"
>{{dataInfo.OrderTypeName}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">支付方式:</span>
<span
class="el-tag el-tag--success el-tag--small el-tag--light is-hit"
>{{dataInfo.PaymentWayName}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">联系人:</span>
<span>{{dataInfo.Consignee}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">电话:</span>
<span>{{dataInfo.Mobile}}</span>
</div>
</template>
</div>
</el-col>
<el-col :span="8">
<div class="card-box">
<h3>表单信息</h3>
<div flex="dir:left cross:center" class="item-box" style="flex-shrink: 0;">
<span class="label">商家备注:</span>
<span>
{{dataInfo.Remark}}
<i
v-if="activeStep==2 || activeStep==3"
@click="OrderExit"
class="el-icon-edit"
style="color: rgb(64, 158, 255); cursor: pointer; margin-left: 10px;"
></i>
</span>
</div>
<div
v-if="dataInfo.BuyerMessage && dataInfo.BuyerMessage!=''"
flex="dir:left cross:center"
class="item-box"
style="flex-shrink: 0;"
>
<span class="label">买家留言:</span>
<span>{{dataInfo.BuyerMessage}}</span>
</div>
</div>
</el-col>
<el-col :span="8">
<div flex="dir:top" class="card-box">
<div
v-if="dataInfo.DistributionInfo !=undefined &&dataInfo.DistributionInfo.length>0 && dataInfo.VipCommissionInfo!=undefined && dataInfo.VipCommissionInfo.length==0"
>
<h3>分销信息</h3>
<div v-for="(item,index) in dataInfo.DistributionInfo" :key="index">
<div class="share-title">
<span>{{item.GradeDescription}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">姓名:</span>
<div>{{item.UserName}}</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">手机号:</span>
<div>{{item.Mobile}}</div>
</div>
<div flex="dir:left cross:center" class="item-box share-price">
<span class="label orange-label">佣金:</span>
<div>¥{{item.Commission}}</div>
</div>
</div>
</div>
<div
v-if="dataInfo.VipCommissionInfo!=undefined && dataInfo.VipCommissionInfo.length>0"
>
<h3>Vip返利</h3>
<div v-for="(item,index2) in dataInfo.VipCommissionInfo" :key="index2">
<div class="share-title">
<span>{{item.GradeDescription}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">姓名:</span>
<div>{{item.UserName}}</div>
</div>
<div flex="dir:left cross:center" class="item-box share-price">
<span class="label orange-label">佣金:</span>
<div>¥{{item.Commission}}</div>
</div>
</div>
</div>
<div
v-if="dataInfo.OrderIntroductionInfo!=undefined && dataInfo.OrderIntroductionInfo.length>0"
>
<h3>推荐供应商返佣</h3>
<div v-for="(item,index2) in dataInfo.OrderIntroductionInfo" :key="index2">
<div flex="dir:left cross:center" class="item-box">
<span class="label">姓名:</span>
<div>{{item.UserName}}</div>
</div>
<div flex="dir:left cross:center" class="item-box share-price">
<span class="label orange-label">佣金:</span>
<div>¥{{item.Commission}}</div>
</div>
</div>
</div>
<div
v-if="dataInfo.SmallShopsCommissionInfo!=undefined && dataInfo.SmallShopsCommissionInfo.length>0"
>
<h3>微店佣金</h3>
<div v-for="(item,index2) in dataInfo.SmallShopsCommissionInfo" :key="index2">
<div class="share-title">
<span>{{item.SmallShopsName}}</span>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">姓名:</span>
<div>{{item.UserName}}</div>
</div>
<div flex="dir:left cross:center" class="item-box share-price">
<span class="label orange-label">佣金:</span>
<div>¥{{item.Commission}}</div>
</div>
</div>
</div>
</div>
</el-col>
</el-row>
<el-card style="margin-top:15px" shadow="never">
<!-- 酒店 -->
<div v-if="dataInfo.OrderType ==1 ">
<el-table border :data="dataInfo.HotelList" style="width: 100%">
<el-table-column prop="Id" label="酒店信息">
<template slot-scope="scope">
<div flex="dir:left cross:center" style="display:flex">
<img
:src="getIconLink(scope.row.HotelImage)"
alt
style="height: 60px; width: 60px; margin-right: 5px;"
/>
<div class="app-ellipsis">
<div
class="vue-line-clamp"
style="word-break: break-all; -webkit-line-clamp: 1;"
>{{scope.row.HotelName}}</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="name" label="信息" align="center">
<template slot-scope="scope">
<div>入店时间:{{scope.row.StartDate}}</div>
<div>离店时间:{{scope.row.EndDate}}</div>
</template>
</el-table-column>
<el-table-column prop="ArrivalTime" label="到店时间" align="center"></el-table-column>
<el-table-column prop="ArrivalTime" label="价格表" align="center">
<template slot-scope="scope">
<div style="border:1px solid #e2e2e2">
<div
style="border-bottom:1px solid #e2e2e2"
v-for="(x,y) in scope.row.PriceList"
:key="y"
>{{x.Date}}:¥{{x.B2BPrice}}</div>
</div>
</template>
</el-table-column>
<el-table-column prop="Unit_Price" label="单价" align="center" width="150">
<template slot-scope="scope">{{scope.row.Unit_Price}}</template>
</el-table-column>
<el-table-column prop="RoomNumber" label="数量" align="center" width="150"></el-table-column>
<el-table-column prop="Final_Price" label="结算价格" align="center" width="150">
<template slot-scope="scope">{{scope.row.Final_Price}}</template>
</el-table-column>
</el-table>
</div>
<!-- 餐食 -->
<div v-if="dataInfo.OrderType ==2 ">
<el-table border :data="dataInfo.DiningList" style="width: 100%">
<el-table-column prop="Id" label="餐厅信息">
<template slot-scope="scope">
<div flex="dir:left cross:center" style="display:flex">
<img
:src="getIconLink(scope.row.DiningImg)"
alt
style="height: 60px; width: 60px; margin-right: 5px;"
/>
<div class="app-ellipsis">
<div
class="vue-line-clamp"
style="word-break: break-all; -webkit-line-clamp: 1;"
>{{scope.row.MealName}}</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="Date" label="就餐时间" align="center" width="150"></el-table-column>
<el-table-column prop="Unit_Price" label="单价" align="center" width="150">
<template slot-scope="scope">{{scope.row.Unit_Price}}</template>
</el-table-column>
<el-table-column prop="PeopleNumber" label="就餐人数" align="center" width="150"></el-table-column>
<el-table-column prop="Final_Price" label="结算价格" align="center" width="150">
<template slot-scope="scope">{{scope.row.Final_Price}}</template>
</el-table-column>
</el-table>
</div>
<!-- 门票 -->
<div v-if="dataInfo.OrderType ==3 ">
<el-table border :data="dataInfo.TicketList" style="width: 100%">
<el-table-column prop="Id" label="门票信息">
<template slot-scope="scope">
<div flex="dir:left cross:center" style="display:flex">
<img
:src="getIconLink(scope.row.TicketImg)"
alt
style="height: 60px; width: 60px; margin-right: 5px;"
/>
<div class="app-ellipsis">
<div
class="vue-line-clamp"
style="word-break: break-all; -webkit-line-clamp: 1;"
>{{scope.row.TicketName!=null ?scope.row.TicketName:''}}</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="ArrivalTime" label="入园人员信息" align="center">
<template slot-scope="scope">
<div style="border:1px solid #e2e2e2" v-if="scope.row.GuestList.length>0">
<div
style="border-bottom:1px solid #e2e2e2"
v-for="(x,y) in scope.row.GuestList"
:key="y"
>
<span>{{x.Name}}</span>
<span style="margin:0 10px">{{x.IdCard}}</span>
<span>{{x.Mobile}}</span>
</div>
</div>
<div>暂无</div>
</template>
</el-table-column>
<el-table-column prop="Date" label="入园时间" align="center" width="150"></el-table-column>
<el-table-column prop="Unit_Price" label="单价" align="center" width="150">
<template slot-scope="scope">{{scope.row.Unit_Price}}</template>
</el-table-column>
<el-table-column prop="PeopleNumber" label="数量" align="center" width="150"></el-table-column>
<el-table-column prop="Final_Price" label="结算价格" align="center" width="150">
<template slot-scope="scope">{{scope.row.Final_Price}}</template>
</el-table-column>
</el-table>
</div>
<!-- 专车 -->
<div v-if="dataInfo.OrderType ==4 ">
<el-table border :data="dataInfo.CarList" style="width: 100%">
<el-table-column prop="Id" label="路线名称">
<template slot-scope="scope">{{scope.row.StartCityName}}-{{scope.row.ArriveCityName}}</template>
</el-table-column>
<el-table-column prop="Id" label="出发计划">
<template slot-scope="scope">
<div>上车地点:{{scope.row.DepartAddress}}</div>
<div>下车地点:{{scope.row.ArriveAddress}}</div>
</template>
</el-table-column>
<el-table-column prop="name" label="信息" width="300" align="center">
<template slot-scope="scope">
<div>车辆:{{scope.row.BrandName}}{{scope.row.CarModel}}{{scope.row.CarColor}}</div>
<div>车辆名称:{{scope.row.CarName}}</div>
</template>
</el-table-column>
<el-table-column prop="Unit_Price" label="单价" width="150" align="center">
<template slot-scope="scope">{{scope.row.Unit_Price}}</template>
</el-table-column>
<el-table-column prop="Number" label="数量" width="150" align="center">
<template slot-scope="scope">
<div v-if="scope.row.PeopleNumber>0">成人:{{scope.row.PeopleNumber}}</div>
<div v-if="scope.row.ChildNumber>0">儿童:{{scope.row.ChildNumber}}</div>
</template>
</el-table-column>
<el-table-column prop="Final_Price" label="结算价格" width="150" align="center">
<template slot-scope="scope">{{scope.row.Final_Price}}</template>
</el-table-column>
</el-table>
</div>
<el-form label-width="200px" class="app-order-count-price" style="background:#FFF" width="120">
<el-form-item label="商品小计">¥{{dataInfo.PreferPrice}}</el-form-item>
<el-form-item label="实付款">
<span style="color: rgb(255, 69, 68);">
<b>{{dataInfo.Income}}</b>
</span>
</el-form-item>
</el-form>
</el-card>
<div flex="dir:right" class="action-box">
<el-button
@click="qrEnd(dataInfo,2)"
v-if="activeStep==2 && !exitState"
style="margin-left: 10px;"
size="small"
type="primary"
>确认</el-button>
</div>
</div>
<!-- 订单取消 -->
<el-dialog title="修改" :visible.sync="exitDig" width="600px">
<el-form :model="exitMsg" ref="exitMsg" label-width="0">
<p style="padding:10px 0" v-if="exitMsg.Type==1">修改备注:</p>
<el-form-item>
<el-input type="textarea" row="2" size="small" v-model="exitMsg.Remark"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="exitDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="submitForm('exitMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
activeStep: 0,
tableData: [
{
Id: 1
}
],
OrderId: 0,
dataInfo: {},
OrderInfo: {},
shDig: false,
exitMsg: {
OrderId: 0,
Type: 1,
Remark: ""
},
exitDig: false,
fahuoList: [],
fhDig: false,
checkfhList: [],
ExpressList: [],
exitState: false
};
},
created() {
if (this.$route.query.OrderId) {
this.OrderId = this.$route.query.OrderId;
console.log(this.OrderId)
this.getData();
}
},
methods: {
// 确认完成
qrEnd(item, num) {
let msg = {
OrderId: item.OrderId,
Type: num,
Remark: ""
};
let that = this;
let text;
if (num == 2) {
text = "是否确定订单?";
}
that
.$confirm(text, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.lxymallapipost(
"/api/DmcOrder/SetDmcOrderOperation",
msg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
},
null
);
})
.catch(() => {});
},
getData() {
this.lxymallapipost(
"/api/DmcOrder/GetDmcOrderInfo",
{
OrderId: this.OrderId
},
res => {
this.dataInfo = res.data.data;
let data = res.data.data;
// 未付款
if (data.PaymentTime == "") {
this.activeStep = 1;
}
// 已付款 待确认
else if (
data.PaymentTime != "" &&
data.ConfirmTime == "" &&
data.CancelTime == ""
) {
this.activeStep = 2;
}
// 已付款 待确认 取消
else if (
data.PaymentTime != "" &&
data.ConfirmTime == "" &&
data.CancelTime != ""
) {
this.activeStep = 3;
}
// 已付款 已确认 取消
else if (
data.PaymentTime != "" &&
data.ConfirmTime != "" &&
data.CancelTime != ""
) {
this.activeStep = 4;
}
// 完成
else if (
data.PaymentTime != "" &&
data.ConfirmTime != "" &&
data.CancelTime == ""
) {
this.activeStep = 5;
}
if (data.OrderStatus == 4) {
this.exitState = true;
this.activeStep = 6;
}
if (data.OrderInfo) {
this.OrderInfo = data.OrderInfo;
}
}
);
},
// 修改备注
OrderExit() {
this.exitMsg = {
OrderId: this.dataInfo.OrderId,
Type: 1,
Remark: this.dataInfo.Remark
};
this.exitDig = true;
},
// 订单操作
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
this.lxymallapipost(
"/api/order/SetOrderOperation",
this.exitMsg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.Success(res.data.message);
this.exitDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
}
},
mounted() {}
};
</script>
<style>
@import "../Lxy/css/index.css";
.app-order-detail .goods-pic {
width: 35px;
height: 35px;
margin: 0 4px;
}
.app-order-detail .express-address {
width: 80%;
}
.app-order-detail .action-box {
padding: 10px 20px;
}
.app-order-detail .app-order-count-price .el-form-item {
margin-bottom: 5px;
}
.app-order-detail .app-order-count-price {
float: right;
margin-right: 55px;
font-size: 12px;
text-align: right;
margin-top: 15px;
}
.app-order-detail h3 {
padding: 15px 0;
}
.app-order-detail .share-price {
color: #ef8933;
}
.app-order-detail .share-title {
font-size: 15px;
margin: 10px 0 5px;
}
.app-order-detail .card-box .label {
color: #999999;
margin-right: 10px;
}
.app-order-detail .item-box {
margin-bottom: 10px;
}
.app-order-detail .card-box {
border: 1px solid #ebeef5;
border-radius: 3px;
padding: 10px;
height: 300px;
overflow-y: scroll;
}
.app-order-detail .stepExit {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_6_active.png");
}
.app-order-detail .step05 {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_5.png");
}
.app-order-detail .step04 {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_4.png");
}
.app-order-detail .step03 {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_3.png");
}
.app-order-detail .step02 {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_2.png");
}
.app-order-detail .step01 {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_2.png");
}
.app-order-detail .step05Active {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_5_active.png");
}
.app-order-detail .step04Active {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_4_active.png");
}
.app-order-detail .step03Active {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_3_active.png");
}
.app-order-detail .step02Active {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_2_active.png");
}
.app-order-detail .step01Active {
height: 30px;
width: 30px;
background-image: url("../../../assets/img/userman/status_1_active.png");
}
.app-order-detail .app-order-status {
padding: 50px 120px;
margin-bottom: 30px;
}
.directorOrderDetails .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
......@@ -2688,7 +2688,7 @@ export default {
name: 'travelOrders',
component: resolve => require(['@/components/TravelManager/customizedcar/travelOrders'], resolve),
meta: {
title: '线路报价'
title: '订单管理'
},
},
{
......@@ -2696,7 +2696,15 @@ export default {
name: 'traveorderdetails',
component: resolve => require(['@/components/TravelManager/customizedcar/traveorderdetails'], resolve),
meta: {
title: '线路报价'
title: '订单详情'
},
},
{
path: '/costManagement', //国内旅游=>成本管理
name: 'costManagement',
component: resolve => require(['@/components/TravelManager/customizedcar/costManagement'], resolve),
meta: {
title: '成本管理'
},
},
......
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