Commit fe173ede authored by youjie's avatar youjie

no message

parent 55863c8d
<style>
</style>
<template>
<div>
<TicketOrder :pagesTitle="pagesTitle" :dataObj="dataObj"></TicketOrder>
</div>
</template>
<script>
import TicketOrder from './components/TicketOrder.vue';
export default {
components: { TicketOrder },
data() {
return {
pagesTitle: 'OP',
dataObj:{
OrderId: '',
}
};
},
watch: {
pagesTitle(val,oldval){
},
},
methods: {
},
created() {
},
mounted() {
if(this.$route.query.OrderId){
this.dataObj.OrderId = this.$route.query.OrderId
}
},
};
</script>
<style>
</style>
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
<li> <li>
<span><em>{{$t('OrderList.search.orderNum')}}</em> <span><em>{{$t('OrderList.search.orderNum')}}</em>
<el-input clearable type="Number" v-model="msg.OrderId" :placeholder="$t('OrderList.search.orderNum')" class="w200"/> <el-input clearable type="" v-model="msg.OrderId" :placeholder="$t('OrderList.search.orderNum')" class="w200"/>
</span> </span>
</li> </li>
<!-- <li> <!-- <li>
......
<template>
<el-table
stripe
ref="multipleTable"
:data="OrderList"
tooltip-effect="dark"
style="width: 100%"
:default-sort = "{prop: 'date', order: 'descending'}">
<el-table-column
width="200"
prop="CreateTimeStr"
label="订单Id"
show-overflow-tooltip>
<template slot-scope="scope">
<div>
<p style="font-size: 18px;display: flex;align-items: center;"><el-tag style="margin-right: 5px;" size="mini">{{scope.row.OrderTypeName}}</el-tag><span>{{scope.row.OrderId}}</span> </p>
<p>下单日期:{{scope.row.CreateTimeStr}}</p>
</div>
</template>
</el-table-column>
<el-table-column
width="200"
prop="CreateTimeStr"
label="团号"
show-overflow-tooltip>
<template slot-scope="scope">
<div>
<p style="font-size: 14px;">{{scope.row.TCNUM}}</p>
<p>出发日期:{{scope.row.StartDate}}</p>
</div>
</template>
</el-table-column>
<el-table-column
label="客人姓名"
show-overflow-tooltip>
<template slot-scope="scope">
<span :class="{'colorblue font-color-link':pagesTitle!='详情'}" @click="pagesTitle!='详情'?openNameDetails(scope.row):''">
{{scope.row.GuestName}}
</span>
</template>
</el-table-column>
<el-table-column
prop="SaleName"
label="销售姓名"
show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="LureEmpName"
label="引流姓名"
show-overflow-tooltip>
</el-table-column>
<el-table-column
label="商品名称"
show-overflow-tooltip>
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" :content="scope.row.Name" placement="top">
<span style="max-width: 100px;overflow: hidden;text-overflow: ellipsis">{{scope.row.Name}}</span>
</el-tooltip>
</template>
</el-table-column>
<el-table-column
label="商品详情"
show-overflow-tooltip>
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" :content="scope.row.Description" placement="top">
<span style="max-width: 100px;overflow: hidden;text-overflow: ellipsis">{{scope.row.Description}}</span>
</el-tooltip>
</template>
</el-table-column>
<el-table-column
sortable
prop="Money"
label="总金额"
show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.Money}}({{scope.row.CurrencyName}})
</template>
</el-table-column>
<el-table-column
sortable
prop="Income"
label="实收"
show-overflow-tooltip>
</el-table-column>
<el-table-column
sortable
prop="PlatformTax"
label="手续费"
show-overflow-tooltip>
</el-table-column>
<el-table-column
sortable
prop="Refund"
label="退款"
show-overflow-tooltip>
</el-table-column>
<el-table-column
sortable
prop="CostMoney"
label="成本"
show-overflow-tooltip>
</el-table-column>
<el-table-column
sortable
label="待收"
show-overflow-tooltip>
<template slot-scope="scope">
<span :class="{'red':scope.row.DueInMoney>0}">{{scope.row.DueInMoney}}</span>
</template>
</el-table-column>
<el-table-column
sortable
prop="DiscountsMoney"
label="优惠"
show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="StateName"
label="状态"
show-overflow-tooltip>
<template slot-scope="scope">
<span>{{scope.row.StateName}}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
show-overflow-tooltip>
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="goDetails(scope.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
</template>
<script>
import offset from '../../public/offset.vue';
export default {
components: { offset },
props: ["OrderList","pagesTitle"],
data() {
return {
queryObj:null,
cdState: false,
copyId: 0,
loading0: false,
loading1: false,
loading2: false,
loading3: false,
BillMakingMsg: {
// PeroidsId: null,
// Type: null,
// EmpIds:'',
OtherType: 61,
ReFinanceId: "",
ReFinanceId2: ""
},
userInfo: {},
msg: {
OrderId: "",
LossMoney: 0,
State: '',//状态 1确认 2已邮寄 3设置自提 4收损
SelffetchAddress: ''
},
msgParameter: {
IsUpdateMailing: 1,
OrderId: 0,
Money: 0.0,
Remark: '',
MailingState: '1',//邮寄状态 1自取 2邮寄
MailingAddress: '',//MailingState =2 填写邮寄
UseDate:'',//门票日期
Name:'',
EName:'',
Sex: '1',//1男2女
Birthday: '',
Mobile:'',
CouponsId:'',//景点id
DetailList:[],
},
rules2:{
Name: [{
required: true,
message: '请输入中文名',
trigger: 'blur'
}],
EName: [{
required: true,
message: '请输入英文名',
trigger: 'blur'
}],
Mobile: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{
pattern: this.$commonUtils.Regex.el_ISphone,
message: "请输入正确的电话"
}
],
MailingAddress: [{
required: true,
message: '请输入邮寄地址',
trigger: 'blur'
}],
},
outerVisible: false,
rules: {
State: [
{
required: true,
message: "请选择订单状态",
trigger: "change"
}
],
SelffetchAddress: [
{
required: true,
message: "请输入自提地址",
trigger: "blur"
}
],
LossMoney: [
{
required: true,
message: "请输入收损金额",
trigger: "blur"
}
]
},
cancelOrderDialog: false,
cancelRemark: "",
cancelOrderId:0,
uploadOrderId: 0,
loading: false,
fileList:[],
GuestFile: '',
ChangeOrderDialog: false,
OrderStatusType:[
{Name: this.$t('OrderList.orderStatus.apply'),ID:'1'},
{Name: this.$t('OrderList.orderStatus.check'),ID:'2'},
{Name: this.$t('OrderList.orderStatus.cancel'),ID:'3'},
{Name: this.$t('OrderList.orderStatus.sun'),ID:'4'},
],
items: null,
typeState: '',
Title: ''
};
},
watch: {
pagesTitle(val,oldval){
this.Title = val
},
OrderList:{
handler(val, oldVal){
}
}
},
methods: {
goDetails(item){
let data = [
{
path: "myCustomerOrder",
OrderId: item.OrderId
},
];
let href = this.domainManager().crmRoutingUrl +
"automaticLogin?token=" +
this.getLocalStorage().token +
"&data=" +
JSON.stringify(data);
window.open(href);
},
// 签证状态
AmendVisa(){
},
// 签证
CheckOutDetails(){
},
// 提成
commissionDetails(){
},
// 修改订单状态
modifyStatus(row){
},
// 查看出票状态
viewCredentials(item){
},
isOffset(row, index, num){
this.makeAdocument(row, index, num,'Offset')
setTimeout(()=>{
this.cdState = true
},100)
},
submit2(){
if(this.loading3) return
this.$refs['msgParameter'].validate((valid) => {
if (valid) {
this.setFormMsg2()
} else {
return false;
}
});
},
setFormMsg2(){
if(this.msgParameter.MailingState=='1'){
this.msgParameter.MailingAddress = ''
}
let m = {
IsUpdateMailing: 1,
OrderId: this.msgParameter.OrderId,
CouponsId: this.msgParameter.CouponsId,
Money: this.msgParameter.Money,
UseDate: this.msgParameter.UseDate,
Birthday: this.msgParameter.Birthday,
DetailList: this.msgParameter.DetailList,
MailingState: this.msgParameter.MailingState,//邮寄状态 1自取 2邮寄
MailingAddress: this.msgParameter.MailingAddress,//MailingState =2 填写邮寄
Name: this.msgParameter.Name,
EName: this.msgParameter.EName,
Sex: this.msgParameter.Sex,//1男2女
Mobile: this.msgParameter.Mobile,
Remark: this.msgParameter.Remark,
}
this.loading3 = true
this.apipost("ticket_post_SetSaleTicketOrder", m,
res => {
this.loading3 = false
if (res.data.resultCode == 1) {
this.Success('变更成功');
this.$emit('success')
this.ChangeOrderDialog = false
} else {
this.Error('变更失败')
}
},
err => {
this.loading3 = false
this.Error(err.message)
});
},
// 上传旅客名单
uploadHandleChange(){
if(this.loading) return
let msg = {
OrderId: this.uploadOrderId,
GuestFileList: [this.GuestFile]
}
this.loading = true
this.apipost(
"dict_post_SetSaleOrderGuestFile",msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.uploadOrderId=0
this.GuestFile=''
this.$emit("success");
} else {
this.Error(res.data.message);
}
},
err => {
this.loading = false;
}
);
},
// 单据详情
openDetails(item) {
let query = {
id: item.FrID
};
this.$router.push({
path: "/FinancialDocumentsDetail",
query
});
},
// 制作单据
makeAdocument(row, index, num, Offset) {
let type = 0
if(num==3){
type = 2
}else{
type = num
}
let data = {
// path: "ChoiceAddFinancialDocuments",
type: type,
OtherType: 55,
ReFinanceId: row.OrderId,
ReFinanceId2: num,
GuestId: row.GuestId,
RelevanceFrId: row.selectedType, // 单据类型
}
this.BillMakingMsg.ReFinanceId = row.OrderId;
this.BillMakingMsg.ReFinanceId2 = num;
this.BillMakingMsg.OtherType = 55;
let text = "";
let query = {};
if (num == 1) {
text = "收款";
} else if (num == 2) {
text = "付款";
} else if (num == 3) {
text = "成本";
}
query = {
blank: "y",
tab: `新增${text}单据`,
Type: type,
crmOrderObj: JSON.stringify(data)
};
this.$store.commit("ChoiceAddFinancialDocuments");
this.$router.push({
path: "/ChoiceAddFinancialDocuments",
query
});
return
this.queryObj = query
if(!Offset){
this.$store.commit("ChoiceAddFinancialDocuments");
this.$router.push({
path: "/ChoiceAddFinancialDocuments",
query
});
}
},
// 订单明细
goRoomDetails(obj, title) {
var path
if(title==='订房详情'){
path = "roomReservationsDetails";
if (this.userInfo.RB_Group_id == 91) {
path = "roomReservationsDetails_swt";
}
this.$router.push({
name: path,
query: {
id: obj.OrderId,
OrderType: 1,
blank: "y",
tab: title
}
});
}else{//变更预定
this.$router.push({
name: 'CharterPreview',
query: {
OrderId: obj.OrderId,
id: obj.ProductId,
blank: "y",
tab: title
}
});
}
},
clickRightButtom(item, type) {
// 0取消订单 1确认订单 2收损
this.msg.OrderId = item.OrderId;
this.msg.SelffetchAddress = item.SelffetchAddress
this.items = item
this.typeState = type
if (type == 0) {
if (!this.loading0) {
this.cancelOrderId = item.OrderId
// 销售 OP
if(this.Title!='销售'){
this.cancelOrderDialog = true;
}else{
let that = this
that.$confirm(`是否确定取消订单?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.cancelOrderHandler()
}).catch(err=>{
this.loading0= false
})
}
}
} else if (type == 1) {
if (!this.loading1) {
this.confirmFun(item, type);
}
}else if (type == 2) {
if (!this.loading2) {
this.outerVisible = true;
this.msg.LossMoney = item.LossMoney ? item.LossMoney : 0;
}
}
},
// 销售取消订单
cancelOrder() {
let that = this
if (this.loading0) return;
that.$confirm(`是否确定取消订单?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.loading0 = true
this.apipost("ticket_post_CancelSaleTicketOrder", {
OrderId: this.cancelOrderId,
IsOPCancel: this.Title!='销售'?1:0,
Remark: this.cancelRemark
},
res => {
this.loading0= false
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$emit("success");
} else {
this.Error(res.data.message);
}
}).catch(err=>{
this.loading0= false
})
}).catch(()=>{
this.loading0 = false
})
},
//提交
submitForm(msg) {
//提交创建、修改表单
this.$refs[msg].validate(valid => {
if (valid) {
if (!this.loading2) {
this.saveUpdate();
}
} else {
// this.Error("请完成必填项");
return false;
}
});
},
cancelOrderHandler() {
if (this.cancelRemark == ""&&this.Title!='销售') {
this.Error("请填写取消订单的缘由");
return;
}
if (this.loading0) return;
this.loading0 = true
this.apipost(
"CarSingle_post_CancelSaleCarOrder",
{
OrderId: this.cancelOrderId,
IsOPCancel: this.Title!='销售'?1:0,
Remark: this.Title!='销售'?this.cancelRemark:''
},
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.cancelOrderDialog=false
this.cancelOrderId=0
this.cancelRemark=''
this.$emit("success");
} else {
this.Error(res.data.message);
}
this.loading0 = false;
},
err => {
this.loading0 = false;
}
);
},
saveUpdate() {
let text = '是否确认设置收损?'
this.$confirm(text, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.loading2 = true;
this.apipost(
"CarSingle_post_SetAdminCarOrderState",
{
OrderId: this.msg.OrderId,
State: this.typeState,
LossMoney: this.msg.LossMoney,
},
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$emit("success");
} else {
this.Error(res.data.message);
}
this.loading2 = false;
this.outerVisible = false;
},
err => {
(this.loading2 = false), (this.outerVisible = false);
}
);
})
.catch(() => {});
},
confirmFun(item,type) {
let text = '是否确认订单?'
this.$confirm(text, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.loading1 = true;
this.apipost(
"CarSingle_post_SetAdminCarOrderState",
{
OrderId: item.OrderId,
State: type,
LossMoney: type==2?this.msg.LossMoney:'',
},
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$emit("success");
} else {
this.Error(res.data.message);
}
this.loading1 = false;
},
err => {
this.loading1 = false;
}
);
})
.catch(() => {
this.$message.info("已取消!");
});
},
//复制信息
CopyHandler(item) {
this.copyId = item.OrderId;
setTimeout(() => {
this.copyId = 0;
}, 2000);
},
setEdate() {
return this.addMoth(new Date().Format("yyyy-MM-dd"), 1);
},
addMoth(d, m) {
let ds = d.split("-"),
_d = ds[2] - 0;
let nextM = new Date(ds[0], ds[1] - 1 + m + 1, 0);
let max = nextM.getDate();
d = new Date(ds[0], ds[1] - 1 + m, _d > max ? max : _d);
return d
.toLocaleDateString()
.match(/\d+/g)
.join("-");
},
com_onresize() {
//clientHeight的值由DIV内容的实际高度和CSS中的padding值决定,
var contentsHeight = document.body.clientHeight;
var h = contentsHeight - 50 - 180 - 40;
if (h < 110) {
return;
}
//设置table的行高
// this.tableHeight = h;
}
},
mounted() {
this.userInfo = this.getLocalStorage();
//自适应高度调节
this.com_onresize();
window.onresize = () => {
this.com_onresize();
};
}
};
</script>
<style></style>
\ No newline at end of file
<style scoped>
.TC_leftSearch>div{
padding: 5px 0;
}
.groupTourOrderByTuan_ico{
margin-left: 5px;
}
.groupTourOrderByTuan_ico>i{
display: inline-block;
margin: 0 5px 0 0;
width: 8px;
height: 8px;
border-radius: 2px;
vertical-align: middle;
}
.HotelWorkList .has-gutter tr th,
.el-table th.is-leaf {
background-color: #EAEAEA !important;
}
.HotelWorkList .HW_hotelDialog {
width: 900px;
}
.HotelWorkList .Hw_tableOne {
width: 100%;
height: 40px;
background-color: #EAEAEA;
}
.HotelWorkList .Hw_tableOne th {
text-align: center;
}
.HotelWorkList .HotelWorkInput .el-input {
width: 223px;
}
.HotelWorkList .HworkInput .el-input {
width: 210px;
}
/deep/.query-box li span>em{
min-width: 60px;
}
</style>
<template>
<div class="HotelWorkList" @click="showWarningSearch=false">
<div class="query-box HotelWorkInput" style="border-bottom: none;">
<ul>
<li>
<span><em>客人姓名</em>
<el-input clearable v-model="msg.CustomerName" placeholder="客人姓名" class="w200"/>
</span>
</li>
<li>
<span><em>商品名称</em>
<el-input clearable type="" v-model="msg.ProductName" placeholder="请商品名称" class="w200"/>
</span>
</li>
<li>
<span><em>{{$t('OrderList.search.orderNum')}}</em>
<el-input clearable type="" v-model="msg.OrderId" :placeholder="$t('OrderList.search.orderNum')" class="w200"/>
</span>
</li>
<li>
<span><em>团号</em>
<el-input clearable type="" v-model="msg.TCNUM" placeholder="请输入团号" class="w200"/>
</span>
</li>
<!-- <li>
<span><em>电话</em>
<el-input clearable v-model="msg.Mobile" placeholder="电话" class="w200"/>
</span>
</li> -->
<li>
<span>
<em>引流人</em>
<el-select filterable v-model='msg.LureEmpId' class="w200">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in EmployeeList'
:label='item.EmName'
:value='item.EmployeeId'
:key='item.EmployeeId'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{$t('OrderList.search.status')}}</em>
<el-select v-model="msg.OrderStatus" class="w200 HworkInput">
<el-option :key="0" :value="0" :label="$t('OrderList.orderStatus.normal')"></el-option>
<el-option v-for="item in OrderStatusType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</span>
</li>
<li v-if="!Title">
<span>
<em>业务员</em>
<el-select filterable v-model='msg.EnterId' class="w200">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in EmployeeList'
:label='item.EmName'
:value='item.EmployeeId'
:key='item.EmployeeId'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>订单状态</em>
<el-select v-model='msg.OrderState' class="w200">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in OrderStatusList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>收款状态</em>
<el-select v-model='msg.Q_IsCollect' class="w200">
<el-option v-for='item in QIsCollectList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>报名时间</em>
<el-date-picker
style="height: 34px;"
value-format="yyyy-MM-dd"
v-model="DatelistBM"
type="daterange"
:range-separator="$t('OrderList.zhi')"
:start-placeholder="$t('OrderList.star')"
:end-placeholder="$t('OrderList.end')" @change="getDatesBM">
</el-date-picker>
</span>
</li>
<li>
<span>
<em>出发时间</em>
<el-date-picker
style="height: 34px;"
value-format="yyyy-MM-dd"
v-model="DatelistUse"
type="daterange"
:range-separator="$t('OrderList.zhi')"
:start-placeholder="$t('OrderList.star')"
:end-placeholder="$t('OrderList.end')" @change="getDatesUse">
</el-date-picker>
</span>
</li>
<li>
<span>
<em @click.stop="showWarningSearch=true"
style="margin-top: 10px;cursor: pointer;"> 高级查询 <i class="el-icon-caret-bottom"></i></em>
<el-popover width="300" v-model="showWarningSearch" trigger="click">
<div>
<div class="TC_queryTitle">订单高级查询</div>
<div class="clearfix">
<div class="TC_leftSearch">
<div>
<span>出票状态</span>
<el-select v-model='msg.TicketStatus' class="w150">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in ticketingStatusList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</div>
<div>
<span>出签状态</span>
<el-select v-model='msg.VisaStatus' class="w150">
<el-option v-for='item in VisaList'
:label='item.Name'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</div>
<div>
<span>线路</span>
<el-select v-model='msg.LineId' class="w150">
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in LineList'
:label='item.LineName'
:value='item.LineID'
:key='item.LineID'>
</el-option>
</el-select>
</div>
<div>
<span>完结时间</span>
<el-date-picker
style="height: 34px;width: 210px;"
value-format="yyyy-MM-dd"
v-model="Datelist"
type="daterange"
:range-separator="$t('OrderList.zhi')"
:start-placeholder="$t('OrderList.star')"
:end-placeholder="$t('OrderList.end')" @change="getDates">
</el-date-picker>
</div>
</div>
<div style="text-align: right;margin-top: 10px;">
<button class="normalBtn TC_SearchBtn"
@click.stop="GetList(),showWarningSearch=false">{{$t('pub.searchBtn')}}
</button>
</div>
</div>
</div>
</el-popover>
</span>
</li>
<li>
<input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click.stop="msg.pageIndex=1,currentPage=1,GetList()" />
</li>
</ul>
</div>
<!-- 统计版块 -->
<div class="groupTourOrder_count" v-if="TotalMsg">
<el-row :gutter="20">
<el-col :span="5" class="groupTourOrder_count_col">
<div class="groupTourOrder_count_item HT_total">
<div>
<i class="iconfont icon-qian groupTourOrder_count_green"></i>
<span>{{$t('op.TotalMoney')}}</span>
</div>
<p>
<span class="groupTourOrder_count_green">{{$t('op.TotalMoney')}}
{{TotalMsg.Money.toFixed(2)}}
</span>
<span class="groupTourOrder_count_green">{{$t('salesModule.TotalIncome')}}
{{(TotalMsg.Money-TotalMsg.PayMoney).toFixed(2)}}
</span>
<span class="color_red_order">{{$t('op.Tocollected')}}
{{TotalMsg.DueinMoney.toFixed(2)}}
</span>
</p>
</div>
</el-col>
<el-col :span="5" class="groupTourOrder_count_col">
<div class="groupTourOrder_count_item HT_total">
<div>
<i class="iconfont icon-tongji1 groupTourOrder_count_blue"></i>
<span>{{$t('restaurant.res_Number')}}</span>
</div>
<p>
<span class="groupTourOrder_count_green">报名数:
{{TotalMsg.NorNumber}}
</span>
<span class="color_red_order">取消数:
{{TotalMsg.CancelNum}}
</span>
</p>
</div>
</el-col>
<!-- <el-col :span="5" class="groupTourOrder_count_col">
<div class="groupTourOrder_count_item HT_total">
<div>
<i class="iconfont icon-tongji1 groupTourOrder_count_gray"></i>
<span>{{$t('fnc.qtxtongji')}}</span>
</div>
<p>
<span class="groupTourOrder_count_green">{{$t('fnc.nbbaoming')}}
{{TotalMsg.totalERP}}
</span>
<span class="color_red_order">{{$t('fnc.B2BWAP')}}
{{TotalMsg.totalB2B}}
</span>
</p>
</div>
</el-col> -->
<el-col :span="5" class="groupTourOrder_count_col">
<div class="groupTourOrder_count_item HT_totalFinacel">
<div>
<i class="iconfont icon-tongji1 groupTourOrder_count_gray"></i>
<span>{{$t('fnc.cwdjshuoming')}}</span>
</div>
<p>
<p><span class="groupTourOrderByTuan_ico"><i style="background-color:#3FC4FF"></i><span>{{$t('fnc.yidadan')}}</span></span>
<span class="groupTourOrderByTuan_ico"><i style="background-color:#F1416C"></i><span>{{$t('fnc.yhcnyshenhe')}}</span></span>
<span class="groupTourOrderByTuan_ico"><i style="background-color:#ff9800"></i><span>{{$t('fnc.ytongguo')}}</span></span></p>
</p>
</div>
</el-col>
</el-row>
</div>
<OrderList :pagesTitle="Title" :OrderList="OrderList" v-loading="loading" @success="msg.pageIndex=1,GetList()"> </OrderList>
<div v-if="OrderList&&OrderList.length==0" style="text-align: center;padding: 100px;">暂无数据</div>
<el-pagination v-if="OrderList&&OrderList.length>0" background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination>
</div>
</template>
<script>
import OrderList from './OrderList.vue';
export default {
props:['pagesTitle','dataObj'],
components: { OrderList },
data() {
return {
showWarningSearch: false,
TotalMsg: null,
MultipleChoiceList: [ //多选项目
{
Name: '机票',
Id: '1'
}, {
Name: '签证',
Id: '2'
}, {
Name: '地接',
Id: '3'
}, {
Name: '套餐',
Id: '4'
}, {
Name: '其他',
Id: '5'
}
],
userInfo: {},
HotelList: [],
loading: false,
isShow: false,
outerVisible: false,
//订单列表
OrderList: [],
//默认高度
tableHeight: 0,
msg:{
pageIndex: 1,
pageSize: 15,
OrderId: "", //订单id
GuestId: 0, //客人id
EnterId: 0, //业务员id
OrderState: 1, //订单状态
Q_IsCollect: "0", //收款状态
StartTime: "",//报名开始日期
EndTime: "",//报名结束日期
FinishSTime: "",//完结开始时间
FinishETime: "",//完结结束时间
DepartSTime: "",//出发开始
DepartETime: "",//出发结束
TCNUM: "",//团号
ProductName: "",//商品名称
CustomerName: "",//客户名称
LureEmpId: 0,//引流人员
LineId: 0,//线路
TravelType: 0,//跟团类型 1跟团 2当地游
OrderType: "0",//订单类型
IsSelectCRM: 0,//1来源crm
IsMyOrder: 1,//1我的订单
},
total: 0,
currentPage: 1,
OrderStatusType:[
{Name: this.$t('OrderList.orderStatus.apply'),ID:'1'},
{Name: this.$t('OrderList.orderStatus.check'),ID:'2'},
{Name: this.$t('OrderList.orderStatus.cancel'),ID:'3'},
{Name: this.$t('OrderList.orderStatus.sun'),ID:'4'},
],
OrderStateType:[
{Name: '接机',ID:'1'},
{Name: '送机',ID:'2'},
{Name: '包车',ID:'3'},
],
orderType:[
{Name: this.$t('OrderList.orderType.tour'),ID:'1'},
{Name: this.$t('OrderList.orderType.guest'),ID:'2'},
],
Datelist:'',
DatelistUse:'',
DatelistBM: [],
Title:'',
EmployeeList:[],
employeeMsg:{ // 员工
GroupId:'',
BranchId:-1,
DepartmentId:0,
PostId:0,
IsLeave:0,
},
OrderStatusList: [],
QIsCollectList: [
{ Name: "不限", Id: "0" },
{ Name: "已收齐", Id: "1" },
{ Name: "未收齐", Id: "2" },
],
ticketingStatusList: [],
VisaList: [
{ Name: "不限", Id: "0" },
{ Name: "未出签", Id: "1" },
{ Name: "已出签", Id: "2" },
],
LineList: []
};
},
watch: {
pagesTitle(val,oldval){
this.Title = val
},
dataObj:{
handler(val, oldVal) {
this.msg.OrderType = val.tab
this.msg.OrderId = val.OrderId
this.GetList()
},
deep: true,
}
},
methods: {
getLineList() {
this.apipost(
"line_post_GetAllList", {
LineDirection: 0,
},
(res) => {
if (res.data.resultCode == 1) {
this.LineList = res.data.data;
} else {
this.$message.error(res.data.message);
}
}
);
},
// 获取出票状态枚举
GetTicketStatusEnumList() {
this.crmapipost("/api/Order/GetTicketStatusEnumList", {}, (res) => {
if (res.data.resultCode == 1) {
this.ticketingStatusList = res.data.data;
} else {
this.$message.error(res.data.message);
}
});
},
// 获取订单状态枚举
GetOrderStatusEnumList() {
this.crmapipost("/api/Order/GetOrderStatusEnumList", {}, (res) => {
if (res.data.resultCode == 1) {
this.OrderStatusList = res.data.data;
} else {
this.$message.error(res.data.message);
}
});
},
getEmployee() { //员工
this.apipost('admin_get_EmployeeGetList', this.employeeMsg, res => {
if(res.data.resultCode == 1) {
this.EmployeeList = res.data.data;
}
}, err => {})
},
getDatesBM(){
if(this.DatelistBM){
this.msg.StartTime = this.DatelistBM[0]
this.msg.EndTime = this.DatelistBM[1]
}if(!this.DatelistBM){
this.msg.StartTime = ''
this.msg.EndTime = ''
}
},
getDatesUse(){
if(this.DatelistUse){
this.msg.DepartSTime = this.DatelistUse[0]
this.msg.DepartETime = this.DatelistUse[1]
}if(!this.DatelistUse){
this.msg.DepartSTime = ''
this.msg.DepartETime = ''
}
},
getDates(){
if(this.Datelist){
this.msg.FinishSTime = this.Datelist[0]
this.msg.FinishETime = this.Datelist[1]
}if(!this.Datelist){
this.msg.FinishSTime = ''
this.msg.FinishETime = ''
}
},
setEdate() {
return this.addMoth(new Date().Format("yyyy-MM-dd"), 1)
},
addMoth(d, m) {
let ds = d.split('-'),
_d = ds[2] - 0;
let nextM = new Date(ds[0], ds[1] - 1 + m + 1, 0);
let max = nextM.getDate();
d = new Date(ds[0], ds[1] - 1 + m, _d > max ? max : _d);
return d.toLocaleDateString().match(/\d+/g).join('-')
},
getyMDOne(){
let myDate = new Date()
let myYear = myDate.getFullYear();//获取完整的年份(4位,1970-????)
let myMonth = myDate.getMonth()+ 1;//获取当前月份(0-11,8代表1月)
let myToday = myDate.getDate(); //获取当前日(1-31)
myMonth = myMonth > 9 ? myMonth : '0'+ myMonth
myToday = myToday > 9 ? myToday : '0'+ myToday
let nowDate = myYear +'-'+ myMonth +'-01'
return nowDate
},
getyMDTwo(){
let myDate = new Date()
let myYear = myDate.getFullYear();//获取完整的年份(4位,1970-????)
let myMonth = myDate.getMonth()+ 1;//获取当前月份(0-11,8代表1月)
let myToday = myDate.getDate(); //获取当前日(1-31)
myMonth = myMonth > 9 ? myMonth : '0'+ myMonth
myToday = myToday > 9 ? myToday : '0'+ myToday
let nowDate = myYear +'-'+ myMonth +'-'+ myToday
return nowDate
},
//获取酒店订单列表
GetList() {
this.loading = true
let url = "CarSingle_post_GetGuestOrderStatisticsPageList"
// 销售 OP
if(this.pagesTitle=='销售'){
this.msg.IsMyOrder = '1'
}else{
this.msg.IsMyOrder = '0'
}
this.apipost(url, this.msg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data.pageData
this.OrderList = data;
this.total = res.data.data.count;
// this.TotalMsg = res.data.data.StatModel
}else {
this.Error(res.data.message);
}
this.loading = false
},
err => {this.loading = false}
);
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.GetList();
},
com_onresize() {
//clientHeight的值由DIV内容的实际高度和CSS中的padding值决定,
var contentsHeight = document.body.clientHeight;
var h = contentsHeight - 50 - 180 - 40;
if (h < 110) {
return;
}
//设置table的行高
this.tableHeight = h;
},
},
created() {
if(this.$route.query.OrderId){
this.msg.OrderId=this.$route.query.OrderId
}
let userInfo=this.getLocalStorage();
this.employeeMsg.GroupId = userInfo.RB_Group_id; //集团ID
// this.msg.EnterID = userInfo.EmployeeId;
},
mounted() {
this.Title = this.pagesTitle
if(this.Title!='销售'){
this.getEmployee()
}
this.msg.StartTime = this.getBeforeDate(31, new Date())
this.msg.EndTime = this.getBeforeDate(0, new Date())
this.DatelistBM = [new Date(this.msg.StartTime),new Date()]
this.GetOrderStatusEnumList()
this.GetTicketStatusEnumList()
this.getLineList()
this.Datelist = this.getyMDOne()
this.userInfo = this.getLocalStorage();
this.GetList();
//自适应高度调节
this.com_onresize();
window.onresize = () => {
this.com_onresize();
}
},
};
</script>
<style>
</style>
\ No newline at end of file
<style>
</style>
<template>
<div>
<allList :pagesTitle="pagesTitle" :dataObj="dataObj"></allList>
</div>
</template>
<script>
import allList from './components/allList.vue';
export default {
components: { allList },
data() {
return {
pagesTitle: 'OP',
dataObj:{
OrderId: '',
}
};
},
watch: {
pagesTitle(val,oldval){
},
},
methods: {
},
created() {
},
mounted() {
if(this.$route.query.OrderId){
this.dataObj.OrderId = this.$route.query.OrderId
}
},
};
</script>
<style>
</style>
<style>
</style>
<template>
<div>
<allList :pagesTitle="pagesTitle" :dataObj="dataObj"></allList>
</div>
</template>
<script>
import allList from './components/allList.vue';
export default {
components: { allList },
data() {
return {
pagesTitle: '销售',
dataObj:{
OrderId: '',
}
};
},
watch: {
pagesTitle(val,oldval){
},
},
methods: {
},
created() {
},
mounted() {
if(this.$route.query.OrderId){
this.dataObj.OrderId = this.$route.query.OrderId
}
},
};
</script>
<style>
</style>
...@@ -3287,6 +3287,22 @@ export default { ...@@ -3287,6 +3287,22 @@ export default {
title: '机票订单' title: '机票订单'
}, },
}, },
{ // 销售 我的所有类型订单
path: '/erpMyCustomerOrder',
name: 'erpMyCustomerOrder',
component: resolve => require(['@/components/myOrdersAllType/erpMyCustomerOrder'], resolve),
meta: {
title: '我的订单'
},
},
{ // 销售 我的今日订单
path: '/erpCustomerOrderDay',
name: 'erpCustomerOrderDay',
component: resolve => require(['@/components/myOrdersAllType/erpCustomerOrderDay'], resolve),
meta: {
title: '今日订单'
},
},
{ // 销售 散卖机票订单 { // 销售 散卖机票订单
path: '/BulkAirTicketOrders', path: '/BulkAirTicketOrders',
name: 'BulkAirTicketOrders', name: 'BulkAirTicketOrders',
......
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