Commit 863f251a authored by 黄奎's avatar 黄奎

页面修改

parent be803510
<style>
.groupTourOrderByTuan_ico{
.groupTourOrderByTuan_ico {
margin-left: 5px;
}
.groupTourOrderByTuan_ico>i{
.groupTourOrderByTuan_ico>i {
display: inline-block;
margin: 0 5px 0 0;
width: 8px;
......@@ -10,6 +11,7 @@
border-radius: 2px;
vertical-align: middle;
}
.HotelWorkList .has-gutter tr th,
.el-table th.is-leaf {
background-color: #EAEAEA !important;
......@@ -37,9 +39,9 @@
width: 110px;
}
</style>
</style>
<template>
<template>
<div class="HotelWorkList">
<div class="query-box HotelWorkInput" style="border-bottom: none;">
<ul>
......@@ -63,21 +65,19 @@
</li>
<li>
<span><em>{{$t('OrderList.search.orderNum')}}</em>
<el-input type="Number" v-model="msg.OrderNo" :placeholder="$t('OrderList.search.orderNum')"/>
<el-input type="Number" v-model="msg.OrderNo" :placeholder="$t('OrderList.search.orderNum')" />
</span>
</li>
<li>
<span><em>订单ID</em>
<el-input type="Number" v-model="msg.OrderId" placeholder="订单ID"/>
<el-input type="Number" v-model="msg.OrderId" placeholder="订单ID" />
</span>
</li>
<li v-if="pagesTitle!='销售'">
<span><em>业务员</em>
<el-select filterable v-model='msg.EnterID'>
<el-option :value="0" label="不限"></el-option>
<el-option v-for='item in EmployeeList'
:label='item.EmName'
:value='item.EmployeeId'
<el-option v-for='item in EmployeeList' :label='item.EmName' :value='item.EmployeeId'
:key='item.EmployeeId'>
</el-option>
</el-select>
......@@ -87,8 +87,7 @@
<span>
<em>{{$t('hotel.hotel')}}</em>
<!-- multiple_input w300 multiple collapse-tags-->
<el-select v-model="msg.HotelId" :placeholder="$t('pub.pleaseSel')" style="height: 34px;"
filterable>
<el-select v-model="msg.HotelId" :placeholder="$t('pub.pleaseSel')" style="height: 34px;" filterable>
<el-option :key="0" :value="0" :label="$t('OrderList.search.allHotel')"></el-option>
<el-option v-for="item in HotelList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
......@@ -97,13 +96,8 @@
<li>
<span>
<em>{{$t('OrderList.search.daterange')}}</em>
<el-date-picker
style="height: 34px;"
value-format="yyyy-MM-dd"
v-model="Datelist"
type="daterange"
:range-separator="$t('OrderList.zhi')"
:start-placeholder="$t('OrderList.star')"
<el-date-picker style="height: 34px;" 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>
</span>
......@@ -124,29 +118,36 @@
</span>
</li> -->
<li>
<input type="button" class="normalBtn" :value="$t('pub.searchBtn')" @click="msg.pageIndex=1,currentPage=1,GetList()" />
<input type="button" class="normalBtn" :value="$t('pub.searchBtn')"
@click="msg.pageIndex=1,currentPage=1,GetList()" />
<!-- <input type="button" class="normalBtn" :value="$t('adm.adm_download')" @click="DownLoadHotelWork()" /> -->
</li>
</ul>
</div>
<template>
<div style="display: flex;justify-content: end;margin-bottom: 10px;">
<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><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>
</div>
<OrderList :pagesTitle="pagesTitle" :OrderList="OrderList" v-loading="loading" @success="GetList"> </OrderList>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total">
</el-pagination>
</template>
</div>
</template>
<script>
</template>
<script>
import OrderList from './OrderList.vue';
export default {
props:['pagesTitle'],
components: { OrderList },
props: ['pagesTitle'],
components: {
OrderList
},
data() {
return {
userInfo: {},
......@@ -158,13 +159,13 @@
OrderList: [],
//默认高度
tableHeight: 0,
msg:{
msg: {
pageIndex: 1,
pageSize: 5,
HotelId: 0,
RoomType: 0,
StartTime: '',//new Date().Format("yyyy-MM-dd")
EndTime: '',//this.setEdate()
StartTime: '', //new Date().Format("yyyy-MM-dd")
EndTime: '', //this.setEdate()
OrderStatus: 0,
OrderNo: '',
OrderId: '',
......@@ -175,57 +176,88 @@
},
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'},
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'
},
],
roomType:[
{Name: this.$t('OrderList.rooms.normal'),ID:'1'},
{Name: this.$t('OrderList.rooms.big'),ID:'2'},
{Name: this.$t('OrderList.rooms.sing'),ID:'3'},
{Name: this.$t('OrderList.rooms.three'),ID:'4'},
{Name: this.$t('OrderList.rooms.driver'),ID:'5'},
roomType: [{
Name: this.$t('OrderList.rooms.normal'),
ID: '1'
},
{
Name: this.$t('OrderList.rooms.big'),
ID: '2'
},
{
Name: this.$t('OrderList.rooms.sing'),
ID: '3'
},
{
Name: this.$t('OrderList.rooms.three'),
ID: '4'
},
{
Name: this.$t('OrderList.rooms.driver'),
ID: '5'
},
],
orderType:[
{Name: this.$t('OrderList.orderType.tour'),ID:'1'},
{Name: this.$t('OrderList.orderType.guest'),ID:'2'},
orderType: [{
Name: this.$t('OrderList.orderType.tour'),
ID: '1'
},
{
Name: this.$t('OrderList.orderType.guest'),
ID: '2'
},
],
Datelist:'',
EmployeeList:[],
employeeMsg:{ // 员工
GroupId:'',
BranchId:-1,
DepartmentId:0,
PostId:0,
IsLeave:0,
Datelist: '',
EmployeeList: [],
employeeMsg: { // 员工
GroupId: '',
BranchId: -1,
DepartmentId: 0,
PostId: 0,
IsLeave: 0,
},
};
},
watch: {
pagesTitle(val,oldval){
pagesTitle(val, oldval) {
}
},
methods: {
getEmployee() { //员工
let userInfo=this.getLocalStorage();
let userInfo = this.getLocalStorage();
this.employeeMsg.GroupId = userInfo.RB_Group_id;
this.apipost('admin_get_EmployeeGetList', this.employeeMsg, res => {
if(res.data.resultCode == 1) {
if (res.data.resultCode == 1) {
this.EmployeeList = res.data.data;
}
}, err => {})
},
getDates(){
if(this.Datelist){
if(this.Datelist[0]){
getDates() {
if (this.Datelist) {
if (this.Datelist[0]) {
this.msg.StartTime = this.Datelist[0]
}if(this.Datelist[1]){
}
if (this.Datelist[1]) {
this.msg.EndTime = this.Datelist[1]
}
}else{
} else {
this.msg.StartTime = ''
this.msg.EndTime = ''
}
......@@ -254,24 +286,24 @@
err => {}
);
},
getyMDOne(){
getyMDOne() {
let myDate = new Date()
let myYear = myDate.getFullYear();//获取完整的年份(4位,1970-????)
let myMonth = myDate.getMonth()+ 1;//获取当前月份(0-11,8代表1月)
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'
myMonth = myMonth > 9 ? myMonth : '0' + myMonth
myToday = myToday > 9 ? myToday : '0' + myToday
let nowDate = myYear + '-' + myMonth + '-01'
return nowDate
},
getyMDTwo(){
getyMDTwo() {
let myDate = new Date()
let myYear = myDate.getFullYear();//获取完整的年份(4位,1970-????)
let myMonth = myDate.getMonth()+ 1;//获取当前月份(0-11,8代表1月)
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
myMonth = myMonth > 9 ? myMonth : '0' + myMonth
myToday = myToday > 9 ? myToday : '0' + myToday
let nowDate = myYear + '-' + myMonth + '-' + myToday
return nowDate
},
//获取酒店订单列表
......@@ -285,17 +317,17 @@
this.loading = true
let url
// 销售 OP
if(this.pagesTitle=='销售'){
if (this.pagesTitle == '销售') {
url = "dict_post_GetMySaleCustomerOrderPageList"
}else{
} else {
url = "dict_post_GetAdminCustomerOrderPageList"
}
this.apipost(url, this.msg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data.pageData
let addList = function(arr){
arr.forEach(x=>{
let addList = function (arr) {
arr.forEach(x => {
x.list = []
x.isMore = false
x.upIcon = false
......@@ -306,21 +338,21 @@
}
addList(data)
data.forEach(item => {
if(item.DetailList.length>2){
if (item.DetailList.length > 2) {
item.isMore = true
}
let dataLists = []
item.DetailList.forEach((x,index)=>{
item.DetailList.forEach((x, index) => {
x.Number = 0
x.PeopleNumber = 0
x.RoomList.forEach(r=>{
x.Number+=r.Number
x.PeopleNumber+=r.PeopleNumber
x.RoomList.forEach(r => {
x.Number += r.Number
x.PeopleNumber += r.PeopleNumber
})
x.Tax = x.TaxesPrice*x.Number
x.Tax2 = x.PriceInTangTax*x.PeopleNumber
x.Money = x.HotelMoeny+x.TaxesPrice
if(index<2){
x.Tax = x.TaxesPrice * x.Number
x.Tax2 = x.PriceInTangTax * x.PeopleNumber
x.Money = x.HotelMoeny + x.TaxesPrice
if (index < 2) {
dataLists.push(x)
}
})
......@@ -328,27 +360,29 @@
})
this.OrderList = data;
this.OrderList.forEach(item=>{
this.OrderList.forEach(item => {
let datas = {
Income: item.Income,
CostMoney: item.CostMoney,
PlatformTax: item.PlatformTax,
Refund: item.Refund,
PlatformMoney:item.PlatformMoney,
PlatformMoney: item.PlatformMoney,
HandFittingIncome: item.HandFittingIncome,
HandFittingTax: item.HandFittingTax,
DueInMoney:item.DueInMoney,
DueInMoney: item.DueInMoney,
...item
}
item.list.push(JSON.parse(JSON.stringify(datas)))
})
this.total = res.data.data.count;
}else {
} else {
this.Error(res.data.message);
}
this.loading = false
},
err => {this.loading = false}
err => {
this.loading = false
}
);
},
handleCurrentChange(val) {
......@@ -369,11 +403,11 @@
mounted() {
this.Datelist = this.getyMDOne()
this.userInfo = this.getLocalStorage();
if(this.$route.query.OrderId){
if (this.$route.query.OrderId) {
this.msg.OrderId = this.$route.query.OrderId
}
// crm自动登陆传过来的参数
if(this.$route.query.crmOrderObj){
if (this.$route.query.crmOrderObj) {
let crmOrderObj = JSON.parse(this.$route.query.crmOrderObj)
this.msg.OrderId = crmOrderObj.OrderId
}
......@@ -381,7 +415,7 @@
this.GetList();
this.initHotels();//酒店名称下拉
this.initHotels(); //酒店名称下拉
//自适应高度调节
this.com_onresize();
window.onresize = () => {
......@@ -390,8 +424,8 @@
},
};
</script>
</script>
<style>
<style>
</style>
</style>
<style scoped>
.row {
.row {
display: flex;
}
.row-c {
}
.row-c {
display: flex;
align-items: center;
}
.column {
}
.column {
display: flex;
flex-direction: column;
}
.column-jac {
}
.column-jac {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.column-ac {
}
.column-ac {
display: flex;
flex-direction: column;
align-items: center;
}
.wrap {
}
.wrap {
flex-wrap: wrap;
}
.justify-sb {
}
.justify-sb {
justify-content: space-between;
}
.justify-c {
}
.justify-c {
justify-content: center;
}
.justify-e {
}
.justify-e {
justify-content: flex-end;
align-items: flex-end;
}
.flex-g {
}
.flex-g {
flex-grow: 1;
}
.flex-s {
}
.flex-s {
flex-shrink: 0;
}
.align-c {
}
.align-c {
align-items: center;
}
.cblack {
}
.cblack {
color: black;
}
.cf {
}
.cf {
color: #ffffff;
}
.c9e {
}
.c9e {
color: #9e9e9e;
}
.c20C997 {
}
.c20C997 {
color: #20c997;
}
.c02C854 {
}
.c02C854 {
color: #02c854;
}
.cff9800 {
}
.cff9800 {
color: #ff9800;
}
.cF1416C {
}
.cF1416C {
color: #f1416c;
}
.cF57A98 {
}
.cF57A98 {
color: #f57a98;
}
.c04C8C8 {
}
.c04C8C8 {
color: #04c8c8;
}
.c059FF6 {
}
.c059FF6 {
color: #059ff6;
}
.c3FC4FF {
}
.c3FC4FF {
color: #3fc4ff;
}
.fz10 {
}
.fz10 {
font-size: 10px;
}
.fz11 {
}
.fz11 {
font-size: 11px;
}
.fz12 {
}
.fz12 {
font-size: 12px;
}
.fz13 {
}
.fz13 {
font-size: 13px;
}
.fz14 {
}
.fz14 {
font-size: 14px;
}
.fz15 {
}
.fz15 {
font-size: 15px;
}
.fz16 {
}
.fz16 {
font-size: 16px;
}
.fz17 {
}
.fz17 {
font-size: 17px;
}
.fz18 {
}
.fz18 {
font-size: 18px;
}
.fbold {
}
.fbold {
font-weight: bold;
}
.ml {
}
.ml {
margin-left: 10px;
}
.mr {
}
.mr {
margin-right: 10px;
}
.mt {
}
.mt {
margin-top: 10px;
}
.mt20 {
}
.mt20 {
margin-top: 20px;
}
.mb {
}
.mb {
margin-bottom: 10px;
}
.mb20 {
}
.mb20 {
margin-bottom: 20px;
}
.mx {
}
.mx {
margin-left: 10px;
margin-right: 10px;
}
.mx5 {
}
.mx5 {
margin-left: 5px;
margin-right: 5px;
}
.mb5 {
}
.mb5 {
margin-bottom: 5px;
}
.py {
}
.py {
padding: 15px 0;
}
.py5 {
}
.py5 {
padding: 5px 0;
}
.px5 {
}
.px5 {
padding: 0 5px;
}
.px15 {
}
.px15 {
padding: 0 15px;
}
.pa15 {
}
.pa15 {
padding: 15px;
}
.py20 {
}
.py20 {
padding: 20px 0;
}
.pb5 {
}
.pb5 {
padding: 0 0 5px 0;
}
.pa {
}
.pa {
padding: 10px 20px;
}
.pa20 {
}
.pa20 {
padding: 20px;
}
.pt20 {
}
.pt20 {
padding: 20px 0;
}
.borderD {
}
.borderD {
border-bottom: 1px dashed #dddddd;
}
.bgf {
}
.bgf {
background: #ffffff;
}
.bgf5 {
}
.bgf5 {
background: #f5f5f5;
}
.bgE8F5E9 {
}
.bgE8F5E9 {
background: #e8f5e9;
}
.bgD9F3FF {
}
.bgD9F3FF {
background: #d9f3ff;
}
.bgFAEAED {
}
.bgFAEAED {
background: #faeaed;
}
.bj {
}
.bj {
background: #ffffff;
}
.radius5 {
}
.radius5 {
border-radius: 5px;
}
.cursor-pointer {
}
.cursor-pointer {
cursor: pointer;
}
.relative {
}
.relative {
position: relative;
}
.absolute {
}
.absolute {
position: absolute;
}
.left0 {
}
.left0 {
left: 0;
}
.right0 {
}
.right0 {
right: 0;
}
.top0 {
}
.top0 {
top: 0;
}
.bottom0 {
}
.bottom0 {
bottom: 0;
}
.left20 {
}
.left20 {
left: 020px;
}
.right20 {
}
.right20 {
right: 20px;
}
.top20 {
}
.top20 {
top: 20px;
}
.bottom20 {
}
.bottom20 {
bottom: 20px;
}
.text-center {
}
.text-center {
text-align: center;
}
.orderType {
}
.orderType {
padding: 3px 15px;
border-radius: 3px;
background: #f57a98;
margin-right: 15px;
}
.orderType.active {
}
.orderType.active {
background: #4dd0e1;
}
.copy {
}
.copy {
display: inline-block;
padding: 3px 15px;
border-radius: 3px;
margin-left: 20px;
}
.copy:hover {
}
.copy:hover {
background: #f5f5f5;
}
.see-rec div {
}
.see-rec div {
padding: 1px 5px;
border-radius: 3px;
}
.see {
}
.see {
border: 1px solid #04c8c8;
}
.seeLK {
}
.seeLK {
border: 1px solid #059ff6;
}
.see:hover {
}
.see:hover {
background-color: rgba(4, 200, 200, 0.1);
}
.rec {
}
.rec {
border: 1px solid #04c8c8;
background-color: rgba(4, 200, 200, 1);
}
.rec:hover {
}
.rec:hover {
border: 1px solid rgba(4, 200, 200, 0.9);
background-color: rgba(4, 200, 200, 0.9);
}
.cancel:hover {
}
.cancel:hover {
background-color: #f3dce2;
}
.confirm:hover {
}
.confirm:hover {
background-color: #dcedc8;
}
.change:hover {
}
.change:hover {
background-color: #d7e9f3;
}
.change1:hover {
}
.change1:hover {
background-color: #dcedc8;
}
.orderop {
}
.orderop {
text-align: center;
}
.orderop div {
}
.orderop div {
width: auto;
height: 30px;
display: flex;
padding: 0 5px;
justify-content: center;
}
.RoomList div {
}
.RoomList div {
border-bottom: 1px solid #e7e7e7;
}
.RoomList div:last-child {
}
.RoomList div:last-child {
border: 0;
}
.el-table {
}
.el-table {
font-size: 13px;
}
.shezhifrom {
}
.shezhifrom {
position: relative;
}
.shebox {
}
.shebox {
position: absolute;
top: 0;
left: -100px;
display: none;
}
.shezhifrom:hover .shebox {
}
.shezhifrom:hover .shebox {
display: block;
}
}
</style>
<template>
<div>
<div style="text-align: right;position: fixed;top: 62px; right: 89px;">
<el-button class="hollowFixedBtn" v-if="pagesTitle=='OP'" @click="setCompleted"
:loading="CompletedLoading">{{$t('objFill.oneclickfinish')}}</el-button>
<el-button class="hollowFixedBtn" v-if="pagesTitle=='OP'" @click="setCompleted" :loading="CompletedLoading">
{{$t('objFill.oneclickfinish')}}</el-button>
</div>
<el-table ref="multipleTable" :data="OrderList" tooltip-effect="dark" style="width: 100%" row-key="OrderId"
@selection-change="handleSelectionChange">
<el-table-column type="selection" :selectable="selectable" :reserve-selection="true"
v-if="pagesTitle=='OP'">
<el-table-column type="selection" :selectable="selectable" :reserve-selection="true" v-if="pagesTitle=='OP'">
</el-table-column>
<el-table-column :label="pagesTitle=='OP'?$t('system.table_chekAll'):''">
<!-- <div
......@@ -329,10 +422,7 @@
<div class="row-c justify-sb align-c py">
<div class="row-c">
<div>
<div
class="orderType cf fz12"
:class="{ active: scope.row.OrderType == 1 }"
>
<div class="orderType cf fz12" :class="{ active: scope.row.OrderType == 1 }">
{{ scope.row.OrderType == 1 ? $t('OrderList.orderType.guest') : $t('OrderList.orderType.tour') }}
</div>
......@@ -350,50 +440,40 @@
<div class="c9e fz12">
<span>{{$t('OrderList.search.orderNum')}}:</span>
<span>{{ scope.row.OrderNo }}({{ scope.row.OrderId}})</span>
<span
class="copy cblack cursor-pointer"
v-if="copyId != scope.row.OrderId"
@click="CopyHandler(iscope.row)"
>{{$t('objFill.copy')}}</span
>
<span class="copy c059FF6 bgD9F3FF cursor-pointer" v-else
><i class="el-icon-check mr"></i>{{$t('objFill.copied')}}</span
>
<span class="copy cblack cursor-pointer" v-if="copyId != scope.row.OrderId"
@click="CopyHandler(iscope.row)">{{$t('objFill.copy')}}</span>
<span class="copy c059FF6 bgD9F3FF cursor-pointer" v-else><i
class="el-icon-check mr"></i>{{$t('objFill.copied')}}</span>
</div>
</div>
<div class="c9e fz12">
<span v-if="scope.row.OrderType == 1"
>{{$t('admin.admin_linkman')}}:{{ scope.row.ContactName }}/{{ scope.row.ContactNumber }}</span
>
<span
v-if="scope.row.OrderType == 1">{{$t('admin.admin_linkman')}}:{{ scope.row.ContactName }}/{{ scope.row.ContactNumber }}</span>
<span v-else>{{$t('objFill.zhutuanhao')}}:{{ scope.row.TCNum }}</span>
</div>
<div class="row c9e fz12">
<span class="mr" v-if="scope.row.LureEmpName">{{$t('objFill.yinliuren')}}:{{ scope.row.LureEmpName }}</span>
<span class="mr"
v-if="scope.row.LureEmpName">{{$t('objFill.yinliuren')}}:{{ scope.row.LureEmpName }}</span>
<span class="mr">{{$t('visaT.sale')}}:{{ scope.row.SaleName }}</span>
<span class="mr" v-if="scope.row.OpName&&pagesTitle=='OP'">{{$t('objFill.guanlian')}}OP:{{ scope.row.OpName }}</span>
<span class="mr"
v-if="scope.row.OpName&&pagesTitle=='OP'">{{$t('objFill.guanlian')}}OP:{{ scope.row.OpName }}</span>
<span class="mr" v-if="scope.row.CustomerName">{{$t('active.cl_addPp')}}:{{ scope.row.CustomerName }} ({{ scope.row.CustomerContact }}/{{
scope.row.CustomerTel
}}</span>
<span class="mr">{{$t('restaurant.res_oderTime')}}:{{ scope.row.CreateTime }}</span>
<div class="">
<i
class="mx5"
:class="{
<i class="mx5" :class="{
'el-icon-alarm-clock c20C997': scope.row.OrderStatus == 1,
'el-icon-check cblack': scope.row.OrderStatus == 2,
'el-icon-warning cff9800': scope.row.OrderStatus == 3,
'el-icon-refresh cF1416C': scope.row.OrderStatus == 4
}"
></i>
<span
class="fz12 cblack"
:class="{
}"></i>
<span class="fz12 cblack" :class="{
c20C997: scope.row.OrderStatus == 1,
cblack: scope.row.OrderStatus == 2,
cff9800: scope.row.OrderStatus == 3,
cF1416C: scope.row.OrderStatus == 4
}"
>
}">
{{ scope.row.OrderStatusName }}
</span>
</div>
......@@ -401,11 +481,7 @@
</div>
<div class="mb">
<el-table :data="scope.row.NewDetailList" style="width:100%" border>
<el-table-column
:label="$t('objFill.ruzhuriqi')"
min-width="100"
style="background:#EAEAEA"
>
<el-table-column :label="$t('objFill.ruzhuriqi')" min-width="100" style="background:#EAEAEA">
<template slot-scope="scope">
{{ scope.row.Date }}
</template>
......@@ -418,37 +494,25 @@
<el-table-column min-width="240">
<template slot="header" slot-scope="scope">
<span>{{$t('objFill.ruzhuxinxi')}}</span>
<el-tooltip
class="item"
effect="dark"
:content="$t('objFill.fangxinzonjia')"
placement="bottom"
>
<el-tooltip class="item" effect="dark" :content="$t('objFill.fangxinzonjia')" placement="bottom">
<i class="el-icon-question c059FF6 cursor-pointer"></i>
</el-tooltip>
</template>
<template slot-scope="scope">
<div class="RoomList">
<div class="fz12 c9e" v-for="(x, i) in scope.row.RoomList">
<span class="mr"
>{{ x.RoomTypeName }}{{ x.Number }} {{$t('objFill.renjian')}}</span
>
<span class="mr">{{ x.RoomTypeName }}{{ x.Number }} {{$t('objFill.renjian')}}</span>
<span class="ml mr">{{$t(' Airticket.Air_Number')}}{{ x.PeopleNumber }}</span>
<span class="ml mr">{{$t('fnc.danjia')}}{{ x.Unit_Price }}</span>
<span class="ml"
>{{$t('ground.xiaoji')}}{{ x.Money }} {{ scope.row.CurrencyName }}</span
>
<span class="ml">{{$t('ground.xiaoji')}}{{ x.Money }} {{ scope.row.CurrencyName }}</span>
</div>
</div>
</template>
</el-table-column>
<el-table-column :label="$t('ground.dfanghao')" min-width="100">
<template slot-scope="scope">
<span
v-if="!scope.row.ReserveRoomNo"
class="radius5 bgFAEAED cF1416C px5 fz12"
>{{$t('ground.weiqueren')}}</span
>
<span v-if="!scope.row.ReserveRoomNo"
class="radius5 bgFAEAED cF1416C px5 fz12">{{$t('ground.weiqueren')}}</span>
<template v-else>
<span class="radius5 bgE8F5E9 c20C997 px5 fz12">{{
scope.row.ReserveRoomNo
......@@ -461,49 +525,36 @@
{{ scope.row.Tax > 0 ? scope.row.Tax.toFixed(2) : "-" }}
</template>
</el-table-column>
<el-table-column
:label="$t('ground.rutangshui')"
min-width="60"
style="background:#EAEAEA"
>
<el-table-column :label="$t('ground.rutangshui')" min-width="60" style="background:#EAEAEA">
<template slot-scope="scope">
{{ scope.row.Tax2 > 0 ? scope.row.Tax2.toFixed(2) : "-" }}
</template>
</el-table-column>
<el-table-column
:label="$t('ground.xiaoji')"
min-width="70"
style="background:#EAEAEA"
>
<el-table-column :label="$t('ground.xiaoji')" min-width="70" style="background:#EAEAEA">
<template slot-scope="scope">
<span class="fz15 fbold">{{ scope.row.HotelMoeny.toFixed(2) }}</span>
</template>
</el-table-column>
<el-table-column
:label="$t('fnc.fkfangshi')"
min-width="80"
style="background:#EAEAEA"
>
<el-table-column :label="$t('fnc.fkfangshi')" min-width="80" style="background:#EAEAEA">
<template slot-scope="scope">
{{ scope.row.CustomerPayType == 1 ? $t('objFill.daodianfukuan') : $t('objFill.chufaqianfukuan') }}
</template>
</el-table-column>
<el-table-column
:label="$t('ground.shoupeifei')"
min-width="80"
style="background:#EAEAEA"
>
<el-table-column :label="$t('ground.shoupeifei')" min-width="80" style="background:#EAEAEA">
<template slot-scope="scope">
<span class="fz15 fbold">{{ scope.row.HandFittingFee ? scope.row.HandFittingFee : "-" }}</span>
</template>
</el-table-column>
<template slot="append" v-if="scope.row.Remark||scope.row.OPRemark||scope.row.isMore||(scope.row.OrderStatus>1||scope.row.OrderStatus!=3)">
<template slot="append"
v-if="scope.row.Remark||scope.row.OPRemark||scope.row.isMore||(scope.row.OrderStatus>1||scope.row.OrderStatus!=3)">
<div style="padding:10px;color:#f1416c">{{$t('pub.Customer')+$t('fnc.beizhu')}}{{scope.row.Remark}}
<i v-if="pagesTitle=='销售'&&scope.row.OrderStatus>1&&scope.row.OrderStatus!=3" class="el-icon-edit cursor-pointer c059FF6 mx" @click="editRemark(scope.row)"></i></div>
<i v-if="pagesTitle=='销售'&&scope.row.OrderStatus>1&&scope.row.OrderStatus!=3"
class="el-icon-edit cursor-pointer c059FF6 mx" @click="editRemark(scope.row)"></i></div>
<div style="padding:10px;color:#f1416c"
:style="{'padding':scope.row .isMore?'0 10px 30px 10px':'0 10px 10px 10px'}">
OP{{$t('fnc.beizhu')}}{{scope.row.OPRemark}}
<i v-if="pagesTitle=='OP'&&scope.row.OrderStatus>1&&scope.row.OrderStatus!=3" class="el-icon-edit cursor-pointer c059FF6 mx" @click="editRemark(scope.row)"></i>
<i v-if="pagesTitle=='OP'&&scope.row.OrderStatus>1&&scope.row.OrderStatus!=3"
class="el-icon-edit cursor-pointer c059FF6 mx" @click="editRemark(scope.row)"></i>
</div>
<more v-if="scope.row.isMore" @change="ViewMore(scope.row,index)" :upIcon="scope.row.upIcon"></more>
</template>
......@@ -559,16 +610,20 @@
</el-table-column>
<el-table-column :label="$t('restaurant.res_profit')" min-width="100">
<template slot-scope="scope">
<span class="fz15 fbold">{{ scope.row.Income-scope.row.CostMoney-scope.row.Refund>0?(scope.row.Income-scope.row.CostMoney-scope.row.Refund).toFixed(2):'-' }}</span>
<span
class="fz15 fbold">{{ scope.row.Income-scope.row.CostMoney-scope.row.Refund>0?(scope.row.Income-scope.row.CostMoney-scope.row.Refund).toFixed(2):'-' }}</span>
</template>
</el-table-column>
<el-table-column v-if="(scope.row.SellCommission&&scope.row.SellCommission>0)||(scope.row.OPCommission&&scope.row.OPCommission>0)"
<el-table-column
v-if="(scope.row.SellCommission&&scope.row.SellCommission>0)||(scope.row.OPCommission&&scope.row.OPCommission>0)"
:label="$t('salesModule.Commission')" style="background:#EAEAEA">
<template slot-scope="scope">
<div class="width100-float-l" v-if="scope.row.SellCommission&&scope.row.SellCommission>0"><span class="float-l">{{$t('visaT.sale')}}</span>
<div class="width100-float-l" v-if="scope.row.SellCommission&&scope.row.SellCommission>0"><span
class="float-l">{{$t('visaT.sale')}}</span>
<commissionDialog :objNew="scope.row" :OP="0"></commissionDialog>
</div>
<div class="width100-float-l" v-if="scope.row.OPCommission&&scope.row.OPCommission>0"><span class="float-l">OP:</span>
<div class="width100-float-l" v-if="scope.row.OPCommission&&scope.row.OPCommission>0"><span
class="float-l">OP:</span>
<commissionDialog :objNew="scope.row" :OP="1"></commissionDialog>
</div>
</template>
......@@ -595,12 +650,8 @@
{{ scope.row.GuestFileList[0].split("/").at(-1) }}
</div>
<div class="cursor-pointer ml mr rec cf">
<a
class="cf"
style="text-decoration:none"
:href="scope.row.GuestFileList[0]"
>{{$t('objFill.xz')}}}</a
>
<a class="cf" style="text-decoration:none"
:href="scope.row.GuestFileList[0]">{{$t('objFill.xz')}}}</a>
</div>
<!-- <div class="cursor-pointer see c04C8C8">查看支付方式</div>
<div class="cursor-pointer ml rec cf">提交付费凭证</div> -->
......@@ -612,12 +663,11 @@
<span class="cff9800">{{scope.row.UploadGuestDate}}</span>
</div>
<div class="row fz12 see-rec mt">
<el-upload ref="my-upload" :http-request="uploadFileBtn" v-loading="loading"
:multiple="true"
<el-upload ref="my-upload" :http-request="uploadFileBtn" v-loading="loading" :multiple="true"
:show-file-list="false" action="">
<div :class="{'cursor-pointer seeLK c059FF6':!loading,
'cursor-pointer see c04C8C8':loading}"
@click="uploadOrderId=scope.row.OrderId">{{$t('objFill.shangchuanlvkemindan')}}</div>
'cursor-pointer see c04C8C8':loading}" @click="uploadOrderId=scope.row.OrderId">
{{$t('objFill.shangchuanlvkemindan')}}</div>
</el-upload>
</div>
</template>
......@@ -626,99 +676,63 @@
<div class="column px15 bgf5 radius5 flex-g pa relative" style="min-width: 150px;">
<div class="fz12">{{$t('fnc.skdanju')}}</div>
<div class="row wrap orderNo fz12 py">
<span
class="cursor-pointer radius5 mr px5"
:class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}"
v-for="(x, i) in scope.row.IncomeList"
@click="openDetails(x)"
>{{ x.FrID }}</span
>
<span class="cursor-pointer radius5 mr px5" :class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}" v-for="(x, i) in scope.row.IncomeList"
@click="openDetails(x)">{{ x.FrID }}</span>
<span v-if="scope.row.IncomeList.length == 0" class="c9e fz12">
{{$t('objFill.nocollectiondocument')}}
</span>
</div>
<el-tooltip
v-if="scope.row.OrderStatus == 2"
class="item"
effect="dark"
:content="$t('objFill.preparedocument')"
placement="top"
>
<i
class="absolute right20 bottom20 el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(scope.row, index, 1)"
></i>
<el-tooltip v-if="scope.row.OrderStatus == 2" class="item" effect="dark"
:content="$t('objFill.preparedocument')" placement="top">
<i class="absolute right20 bottom20 el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(scope.row, index, 1)"></i>
</el-tooltip>
</div>
<div class="column px15 bgf5 radius5 ml flex-g pa relative" style="min-width: 150px;max-width:400px">
<div class="fz12">{{$t('objFill.refundreceipt')}}</div>
<div class="row wrap orderNo fz12 py">
<span
class="cursor-pointer radius5 mr px5"
:class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}"
v-for="(x, i) in scope.row.RefundList"
@click="openDetails(x)"
>{{ x.FrID }}</span
>
<span class="cursor-pointer radius5 mr px5" :class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}" v-for="(x, i) in scope.row.RefundList"
@click="openDetails(x)">{{ x.FrID }}</span>
<span v-if="scope.row.RefundList.length == 0" class="c9e fz12">
{{$t('objFill.norefundreceipt')}}
</span>
</div>
<el-tooltip
v-if="scope.row.OrderStatus == 2"
class="item"
effect="dark"
:content="$t('objFill.preparedocument')"
placement="top"
>
<i
class="absolute right20 bottom20 el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(scope.row, index, 2)"
></i>
<el-tooltip v-if="scope.row.OrderStatus == 2" class="item" effect="dark"
:content="$t('objFill.preparedocument')" placement="top">
<i class="absolute right20 bottom20 el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(scope.row, index, 2)"></i>
</el-tooltip>
</div>
<div class="column px15 bgf5 radius5 ml flex-g pa relative" style="min-width: 150px;max-width:400px">
<div class="fz12">{{$t('objFill.costdocument')}}</div>
<div class="row wrap orderNo fz12 py">
<span
class="cursor-pointer radius5 mr px5"
:class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}"
v-for="(x, i) in scope.row.CostList"
@click="openDetails(x)"
>{{ x.FrID }}</span
>
<span class="cursor-pointer radius5 mr px5" :class="{'bgD9F3FF':x.Status==1,'bgFAEAED':x.Status==2,'bjFFF3E0':x.Status==3,
'c3FC4FF':x.Status==1,'cF1416C':x.Status==2,'cff9800':x.Status==3}" v-for="(x, i) in scope.row.CostList"
@click="openDetails(x)">{{ x.FrID }}</span>
<span v-if="scope.row.CostList.length == 0" class="c9e fz12">
{{$t('objFill.nocostdocument')}}
</span>
</div>
<div class="item absolute right20 bottom20" v-if="scope.row.OrderStatus == 2 && pagesTitle != '销售'">
<el-tooltip class="" effect="dark" :content="$t('objFill.preparedocument')"
placement="top">
<i class="el-icon-circle-plus cursor-pointer c059FF6"
@click="makeAdocument(scope.row, index, 3)"></i>
<el-tooltip class="" effect="dark" :content="$t('objFill.preparedocument')" placement="top">
<i class="el-icon-circle-plus cursor-pointer c059FF6" @click="makeAdocument(scope.row, index, 3)"></i>
</el-tooltip>
<el-tooltip v-if="scope.row.OrderStatus == 2" class="" effect="dark" :content="$t('objFill.balanceout')" placement="top">
<i class="el-icon-circle-plus cursor-pointer c3FC4FF"
@click="isOffset(scope.row, index, 3,null)"></i>
<el-tooltip v-if="scope.row.OrderStatus == 2" class="" effect="dark" :content="$t('objFill.balanceout')"
placement="top">
<i class="el-icon-circle-plus cursor-pointer c3FC4FF" @click="isOffset(scope.row, index, 3,null)"></i>
</el-tooltip>
</div>
</div>
<div class="column px15 bgf5 radius5 ml flex-g pa relative" style="min-width: 150px;max-width:400px">
<div class="fz12">{{$t('objFill.invoicedocument')}}</div>
<div class="row wrap orderNo fz12 py">
<span
class="cursor-pointer radius5 mr px5"
:class="{'bgD9F3FF':x.InvoiceApplyState===6,'bgFAEAED':x.InvoiceApplyState===1||x.InvoiceApplyState===3,
<span class="cursor-pointer radius5 mr px5" :class="{'bgD9F3FF':x.InvoiceApplyState===6,'bgFAEAED':x.InvoiceApplyState===1||x.InvoiceApplyState===3,
'bjFFF3E0':x.InvoiceApplyState===2||x.InvoiceApplyState===4||x.InvoiceApplyState===5,
'c3FC4FF':x.InvoiceApplyState===6,'cF1416C':x.InvoiceApplyState===1||x.InvoiceApplyState===3,
'cff9800':x.InvoiceApplyState===2||x.InvoiceApplyState===4||x.InvoiceApplyState===5}"
v-for="(x, i) in scope.row.InvoiceApplyList"
@click="openDetails(x,scope.row)"
>{{ x.ID }}</span
>
v-for="(x, i) in scope.row.InvoiceApplyList" @click="openDetails(x,scope.row)">{{ x.ID }}</span>
<span v-if="scope.row.InvoiceApplyList&&scope.row.InvoiceApplyList.length == 0" class="c9e fz12">
{{$t('objFill.noinvoicedocument')}}
</span>
......@@ -763,20 +777,15 @@
<span class="fz12 ml">{{ scope.row.CurrencyName }}</span>
</div>
</div>
<div
class="row-c justify-sb borderD py5"
v-if="(scope.row.CustomerPayType == 1 || scope.row.CustomerPayType == 3)&&pagesTitle!='销售'"
>
<div class="row-c justify-sb borderD py5"
v-if="(scope.row.CustomerPayType == 1 || scope.row.CustomerPayType == 3)&&pagesTitle!='销售'">
<span class="fz12 c9e">{{$t('objFill.dindianfukuan')}}</span>
<div class="ml">
<span class="fz14">{{ scope.row.SelfPayMoney.toFixed(2) }}</span>
<span class="fz12 ml">{{ scope.row.CurrencyName }}</span>
</div>
</div>
<div
class="row-c justify-sb py5"
v-if="scope.row.CustomerPayType == 2 || scope.row.CustomerPayType == 3"
>
<div class="row-c justify-sb py5" v-if="scope.row.CustomerPayType == 2 || scope.row.CustomerPayType == 3">
<span class="fz12 c9e">{{$t('objFill.chufaqianfukuan')}}</span>
<div class="ml">
<span class="fz14">{{ scope.row.BeforeMoney.toFixed(2) }}</span>
......@@ -785,67 +794,42 @@
</div>
</div>
<!-- v-if="item.OrderStatus > 3 || item.OrderStatus < 3" -->
<div
class="row-c wrap justify-c px15 bgE8F5E9 radius5 ml fz12 orderop pa20 flex-s"
>
<div
v-if="
<div class="row-c wrap justify-c px15 bgE8F5E9 radius5 ml fz12 orderop pa20 flex-s">
<div v-if="
scope.row.OrderStatus == 1 &&
scope.row.IncomeList.length == 0 &&
scope.row.RefundList.length == 0 &&
scope.row.CostList.length == 0 &&
scope.row.HandFittingFinanceList.length == 0
"
class="row-c cursor-pointer radius5 cancel py5"
@click="clickRightButtom(scope.row, 0)"
>
" class="row-c cursor-pointer radius5 cancel py5" @click="clickRightButtom(scope.row, 0)">
<i v-loading="msg.OrderId==scope.row.OrderId&&loading0"></i>
<span class="cF1416C">{{$t('sm.exitOrder')}}</span>
</div>
<div
v-if="scope.row.OrderStatus == 1&&pagesTitle!='销售'"
class="row-c cursor-pointer radius5 confirm py5"
@click="clickRightButtom(scope.row, 1)"
>
<div v-if="scope.row.OrderStatus == 1&&pagesTitle!='销售'" class="row-c cursor-pointer radius5 confirm py5"
@click="clickRightButtom(scope.row, 1)">
<i v-loading="msg.OrderId==scope.row.OrderId&&loading1"></i>
<span class="c20C997">{{$t('ground.qrendindan')}}}</span>
</div>
<div
v-if="scope.row.OrderStatus == 2 || scope.row.OrderStatus == 4"
class="row-c cursor-pointer radius5 change py5"
@click="goRoomDetails(scope.row, '订房详情')"
>
<div v-if="scope.row.OrderStatus == 2 || scope.row.OrderStatus == 4"
class="row-c cursor-pointer radius5 change py5" @click="goRoomDetails(scope.row, '订房详情')">
<span class="c059FF6">{{$t('ground.mx')}}/{{$t('pub.edit')}}</span>
</div>
<div
v-if="scope.row.OrderStatus == 1&&pagesTitle=='销售'"
class="row-c cursor-pointer radius5 change py5"
@click="goRoomDetails(scope.row, '酒店预定变更')"
>
<div v-if="scope.row.OrderStatus == 1&&pagesTitle=='销售'" class="row-c cursor-pointer radius5 change py5"
@click="goRoomDetails(scope.row, '酒店预定变更')">
<span class="c059FF6">{{$t('objFill.dindanbiangeng')}}</span>
</div>
<div
v-if="scope.row.OrderStatus == 2"
class="row-c cursor-pointer radius5 change1 py5"
@click="clickRightButtom(scope.row, 2)"
>
<div v-if="scope.row.OrderStatus == 2" class="row-c cursor-pointer radius5 change1 py5"
@click="clickRightButtom(scope.row, 2)">
<i v-loading="msg.OrderId==scope.row.OrderId&&loading2"></i>
<span class="c20C997">{{$t('fnc.shousun')}}</span>
</div>
<div
v-if="scope.row.OrderStatus >1 && scope.row.OrderStatus != 3
&&pagesTitle=='OP'&&is_correlationOP"
class="row-c cursor-pointer radius5 change py5"
@click="clickCorrelation(scope.row, 1)"
>
<div v-if="scope.row.OrderStatus >1 && scope.row.OrderStatus != 3
&&pagesTitle=='OP'&&is_correlationOP" class="row-c cursor-pointer radius5 change py5"
@click="clickCorrelation(scope.row, 1)">
<span class="c059FF6">{{$t('pub.edit')}}{{$t('objFill.relevance')}}OP</span>
</div>
<div
v-if="scope.row.OrderStatus != 3
&&pagesTitle=='OP'"
class="row-c cursor-pointer radius5 change py5"
@click="clickCorrelation(scope.row,2)"
>
<div v-if="scope.row.OrderStatus != 3
&&pagesTitle=='OP'" class="row-c cursor-pointer radius5 change py5" @click="clickCorrelation(scope.row,2)">
<span class="c059FF6">{{$t('pub.edit')}}{{$t('fnc.a_zongjine')}}</span>
</div>
<!-- 申请发票 -->
......@@ -865,8 +849,10 @@
</div> -->
</div>
<div class="mt mb20 bgf5 pa15 row-c" v-if="scope.row.CancelRemark">
<div style="font-size:16px;font-weight:bold;font-family: pingfangR;">{{$t('objFill.groundsforcancellation')}}:</div>
<div style="margin-left:12px;font-size:12px;color: grey; font-family: microsoft yahei;">{{scope.row.CancelRemark}}</div>
<div style="font-size:16px;font-weight:bold;font-family: pingfangR;">
{{$t('objFill.groundsforcancellation')}}:</div>
<div style="margin-left:12px;font-size:12px;color: grey; font-family: microsoft yahei;">
{{scope.row.CancelRemark}}</div>
<div style="margin-left:12px;font-size:12px;font-family: microsoft yahei;">
{{scope.row.CancelEmpName}} {{scope.row.CancelTime}}
</div>
......@@ -874,72 +860,35 @@
</template>
</el-table-column>
</el-table>
<el-dialog
custom-class="w400"
:title="$t('objFill.ziugaishoushunje')"
:visible.sync="outerVisible"
>
<el-dialog custom-class="w400" :title="$t('objFill.ziugaishoushunje')" :visible.sync="outerVisible">
<div>
<el-form label-width="80px" :model="msg" :rules="rules" ref="msg">
<el-row :gutter="20">
<el-col :span="20">
<el-form-item :label="$t('salesModule.SSJE')" prop="LossMoney">
<el-input-number
class="w200"
v-model="msg.LossMoney"
:min="0"
:max="10000000"
></el-input-number>
<el-input-number class="w200" v-model="msg.LossMoney" :min="0" :max="10000000"></el-input-number>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style="margin-top: 20px;margin-bottom: 20px;">
<el-col :span="24" style="text-align: right;">
<input
type="button"
class="normalBtn"
:value="$t('pub.saveBtn')"
@click="submitForm('msg')"
/>
<input
type="button"
class="hollowFixedBtn"
:value="$t('pub.cancelBtn')"
@click="(outerVisible = false), $refs[msg].resetFields()"
/>
<input type="button" class="normalBtn" :value="$t('pub.saveBtn')" @click="submitForm('msg')" />
<input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')"
@click="(outerVisible = false), $refs[msg].resetFields()" />
</el-col>
</el-row>
</el-form>
</div>
</el-dialog>
<el-dialog
custom-class="w600"
:title="$t('sm.exitOrder')"
:visible.sync="cancelOrderDialog"
>
<el-dialog custom-class="w600" :title="$t('sm.exitOrder')" :visible.sync="cancelOrderDialog">
<div style="padding-bottom:20px">
<el-input
type="textarea"
autofocus
rows="5"
:placeholder="$t('objFill.quxiaodindanyy')"
clear="w300"
v-model="cancelRemark"
></el-input>
<el-input type="textarea" autofocus rows="5" :placeholder="$t('objFill.quxiaodindanyy')" clear="w300"
v-model="cancelRemark"></el-input>
<el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="24" style="text-align: right;">
<input
type="button"
class="normalBtn"
:value="$t('sm.exitOrder')"
@click="cancelOrderHandler"
/>
<input
type="button"
class="hollowFixedBtn"
:value="$t('pub.closeSel')"
@click="cancelOrderDialog = false"
/>
<input type="button" class="normalBtn" :value="$t('sm.exitOrder')" @click="cancelOrderHandler" />
<input type="button" class="hollowFixedBtn" :value="$t('pub.closeSel')"
@click="cancelOrderDialog = false" />
</el-col>
</el-row>
</div>
......@@ -951,7 +900,8 @@
</div>
</div> -->
<!-- op备注 -->
<el-dialog custom-class='addCompany' :title="pagesTitle=='销售'?$t('objFill.bianjikehubz'):$t('objFill.bianjiopbz')" :visible.sync="isShowRemark" center width="400px">
<el-dialog custom-class='addCompany' :title="pagesTitle=='销售'?$t('objFill.bianjikehubz'):$t('objFill.bianjiopbz')"
:visible.sync="isShowRemark" center width="400px">
<el-row class="flex" style="margin-top: 10px;">
<el-col>
<span style="display: block;margin-bottom: 10px;">{{$t('pub.pubRemark')}}:</span>
......@@ -968,8 +918,7 @@
</el-dialog>
<offset :isShow="cdState" :obj="queryObj" @close="cdState=false"></offset>
<correlationOP :isShowCorrelation="isShowCorrelation" :CorrelationObj="CorrelationObj"
@close="isShowCorrelation=false"
@success="success"></correlationOP>
@close="isShowCorrelation=false" @success="success"></correlationOP>
</div>
</template>
<script>
......@@ -978,14 +927,24 @@
import correlationOP from './correlationOP.vue';
import commissionDialog from "../../FinancialModule/TradeCommission/commissionDialog"
import ApplyFoInvoice from '../../public/ApplyFoInvoice';
export default {
components: { offset, more, correlationOP,commissionDialog, ApplyFoInvoice },
props: ["OrderList","pagesTitle"],
export default {
components: {
offset,
more,
correlationOP,
commissionDialog,
ApplyFoInvoice
},
props: ["OrderList", "pagesTitle"],
data() {
return {
postMsg:{OrderId:0,Type:1,Remark:''},
postMsg: {
OrderId: 0,
Type: 1,
Remark: ''
},
isShowRemark: false,
queryObj:null,
queryObj: null,
cdState: false,
CompletedLoading: false,
multipleSelection: [],
......@@ -1008,45 +967,43 @@ export default {
},
outerVisible: false,
rules: {
LossMoney: [
{
LossMoney: [{
required: true,
message: this.$t('objFill.qinshurushoushunje'),
trigger: "blur"
}
]
}]
},
cancelOrderDialog: false,
cancelRemark: "",
cancelOrderId:0,
cancelOrderId: 0,
uploadOrderId: 0,
loading: false,
fileList:[],
fileList: [],
GuestFile: '',
isShowCorrelation: false,
CorrelationObj:{},
CorrelationObj: {},
is_correlationOP: false,
};
},
watch: {
pagesTitle(val,oldval){
pagesTitle(val, oldval) {
},
OrderList:{
handler(val, oldVal){
OrderList: {
handler(val, oldVal) {
}
}
},
methods: {
close(){
close() {
this.isShowCorrelation = false
},
success(){
success() {
this.close()
this.$emit('success')
},
clickCorrelation(item, type){
clickCorrelation(item, type) {
// this.CorrelationObj = item
// this.CorrelationObj.TypeNum = 1
// this.isShowCorrelation = true
......@@ -1059,22 +1016,22 @@ export default {
this.isShowCorrelation = true;
},
isOffset(row, index, num,name){
isOffset(row, index, num, name) {
this.makeAdocument(row, index, num, name, 'Offset')
},
editRemark(item){
editRemark(item) {
this.postMsg.OrderId = item.OrderId
this.postMsg.Remark = this.pagesTitle=='销售'?item.Remark:item.OPRemark
this.postMsg.Remark = this.pagesTitle == '销售' ? item.Remark : item.OPRemark
this.isShowRemark = true
},
submitEditRemark(){
if(!this.postMsg.Remark){
submitEditRemark() {
if (!this.postMsg.Remark) {
this.$message.error(this.$t('objFill.opbeizhunonull'));
return
}
this.apipost('ticket_post_SetCustomerOrderRemark', {
OrderId: this.postMsg.OrderId,
Type: this.pagesTitle=='销售'?1:2,
Type: this.pagesTitle == '销售' ? 1 : 2,
Remark: this.postMsg.Remark
}, res => {
if (res.data.resultCode == 1) {
......@@ -1088,10 +1045,10 @@ export default {
},
selectable(row, index) {
if (((this.OrderList[index].IsFinish != 1 && this.OrderList[index].Income > 0 && this.OrderList[index]
.DueInMoney == 0)||(this.OrderList[index].Money==0&&this.OrderList[index].Income==0
&&this.OrderList[index].CostMoney==0&&this.OrderList[index].Refund==0
&&this.OrderList[index].PlatformTax==0&&this.OrderList[index].IncomeList
&&this.OrderList[index].IncomeList.length>0))) {
.DueInMoney == 0) || (this.OrderList[index].Money == 0 && this.OrderList[index].Income == 0 &&
this.OrderList[index].CostMoney == 0 && this.OrderList[index].Refund == 0 &&
this.OrderList[index].PlatformTax == 0 && this.OrderList[index].IncomeList &&
this.OrderList[index].IncomeList.length > 0))) {
return true;
} else {
return false;
......@@ -1154,24 +1111,24 @@ export default {
this.$message.info(`${this.$t('OrderList.orderStatus.cancel')}!`);
});
},
ViewMore(x,index){
ViewMore(x, index) {
x.upIcon = !x.upIcon
if(x.upIcon){
if (x.upIcon) {
x.NewDetailList = JSON.parse(JSON.stringify(x.DetailList))
}else{
} else {
x.NewDetailList = []
x.DetailList.forEach((y,index)=>{
if(index<2){
x.DetailList.forEach((y, index) => {
if (index < 2) {
x.NewDetailList.push(y)
}
})
}
},
uploadFileBtn(file){
uploadFileBtn(file) {
let ft = file.file.name.substring(file.file.name.lastIndexOf('.') + 1, file.file.name.length).toUpperCase();
let typeOk = false;
let FileName = file.file.name.substring(0,file.file.name.lastIndexOf("."))
let FileName = file.file.name.substring(0, file.file.name.lastIndexOf("."))
let newArr = [];
newArr.push(file.file)
let path = "/Upload/Temporary/"
......@@ -1182,21 +1139,21 @@ export default {
}, 1);
},
// 上传旅客名单
uploadHandleChange(){
if(this.loading) return
uploadHandleChange() {
if (this.loading) return
let msg = {
OrderId: this.uploadOrderId,
GuestFileList: [this.GuestFile]
}
this.loading = true
this.apipost(
"dict_post_SetSaleOrderGuestFile",msg,
"dict_post_SetSaleOrderGuestFile", msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.uploadOrderId=0
this.GuestFile=''
this.uploadOrderId = 0
this.GuestFile = ''
this.$emit("success");
} else {
this.Error(res.data.message);
......@@ -1208,22 +1165,22 @@ export default {
);
},
// 单据详情
openDetails(item,x) {
openDetails(item, x) {
let query = {
id: item.FrID?item.FrID:item.ID,
id: item.FrID ? item.FrID : item.ID,
blank: "y",
};
// 跳转发票详情页面
if(x){
if (x) {
this.$router.push({
name: "invoicesManagerDetail",
query: {
id: item.FrID?item.FrID:item.ID,
id: item.FrID ? item.FrID : item.ID,
InvoiceApplyType: 6,
blank: "y",
},
});
}else{
} else {
this.$router.push({
path: "/FinancialDocumentsDetail",
query
......@@ -1232,18 +1189,18 @@ export default {
},
// 制作单据
makeAdocument(row, index, num, name,Offset) {
if((num==2||num==3)&&(row.Income+row.PlatformMoney)<=0){
makeAdocument(row, index, num, name, Offset) {
if ((num == 2 || num == 3) && (row.Income + row.PlatformMoney) <= 0) {
this.Info(this.$t('objFill.qinxianzhidanzaizhicbtkdj'))
return
}
if(Offset){
if (Offset) {
this.cdState = true
}
let type = 0
if(num==3){
if (num == 3) {
type = 2
}else{
} else {
type = num
}
this.BillMakingMsg.ReFinanceId = row.OrderId;
......@@ -1267,13 +1224,13 @@ export default {
tradeObj: JSON.stringify(this.BillMakingMsg),
companyID: row.OutBranchId
};
if(num==2){
query.searchTitle='溢收团费退款';
}else if(num ==3 && this.cdState == false){
query.portTypeId= 4;
if (num == 2) {
query.searchTitle = '溢收团费退款';
} else if (num == 3 && this.cdState == false) {
query.portTypeId = 4;
}
this.queryObj = query
if(!Offset){
if (!Offset) {
this.$store.commit("ChoiceAddFinancialDocuments");
this.$router.push({
path: "/ChoiceAddFinancialDocuments",
......@@ -1284,7 +1241,7 @@ export default {
// 订单明细
goRoomDetails(obj, title) {
var path
if(title==='订房详情'){
if (title === '订房详情') {
path = "roomReservationsDetails";
if (this.userInfo.RB_Group_id == 91) {
path = "roomReservationsDetails_swt";
......@@ -1294,12 +1251,12 @@ export default {
query: {
id: obj.OrderId,
OrderType: 1,
isShoufeifei: obj.HandFittingTax?true:false,
isShoufeifei: obj.HandFittingTax ? true : false,
blank: "y",
tab: title
}
});
}else{//变更酒店预定
} else { //变更酒店预定
path = "singleProductModifyHotelOrder";
this.$router.push({
name: path,
......@@ -1319,9 +1276,9 @@ export default {
if (!this.loading0) {
this.cancelOrderId = item.OrderId
// 地接 销售 OP
if(this.pagesTitle!='销售'){
if (this.pagesTitle != '销售') {
this.cancelOrderDialog = true;
}else{
} else {
this.cancelOrder()
}
}
......@@ -1350,18 +1307,18 @@ export default {
OrderId: this.cancelOrderId
},
res => {
this.loading0= false
this.loading0 = false
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$emit("success");
} else {
this.Error(res.data.message);
}
}).catch(err=>{
}).catch(err => {
this.Error(err.message)
this.loading0= false
this.loading0 = false
})
}).catch(()=>{
}).catch(() => {
this.loading0 = false
})
},
......@@ -1387,17 +1344,16 @@ export default {
if (this.loading0) return;
this.loading0 = true
this.apipost(
"dict_post_CancelAdminCustomerOrder",
{
"dict_post_CancelAdminCustomerOrder", {
OrderId: this.cancelOrderId,
CancelRemark: this.cancelRemark
},
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.cancelOrderDialog=false
this.cancelOrderId=0
this.cancelRemark=''
this.cancelOrderDialog = false
this.cancelOrderId = 0
this.cancelRemark = ''
this.$emit("success");
} else {
this.Error(res.data.message);
......@@ -1448,8 +1404,7 @@ export default {
.then(() => {
this.loading1 = true;
this.apipost(
"dict_post_ConfirmAdminCustomerOrder",
{
"dict_post_ConfirmAdminCustomerOrder", {
OrderId: item.OrderId
},
res => {
......@@ -1474,7 +1429,7 @@ export default {
CopyHandler(item) {
this.copyId = item.OrderId;
let copyText = item.OrderId;
const save = function(e) {
const save = function (e) {
e.clipboardData.setData('text/plain', copyText)
e.preventDefault() // 阻止默认行为
}
......@@ -1513,7 +1468,7 @@ export default {
this.userInfo = this.getLocalStorage();
let ActionMenuCode = this.userInfo.ActionMenuCode;
if (ActionMenuCode.indexOf('is_correlationOP') != -1 ){
if (ActionMenuCode.indexOf('is_correlationOP') != -1) {
this.is_correlationOP = true
}
//自适应高度调节
......@@ -1524,7 +1479,8 @@ export default {
}
};
};
</script>
<style></style>
......@@ -6,16 +6,16 @@
<script>
import HotelOrderList from '../reservation/HotelOrderList.vue';
export default {
components: { HotelOrderList },
components: {
HotelOrderList
},
data() {
return {
pagesTitle:'OP',
pagesTitle: 'OP',
};
},
methods: {
},
mounted() {
......
<style>
.lineMG .query_box {
.lineMG .query_box {
font-size: 12px;
padding: 29px 0;
padding-right: 30px;
display: flex;
justify-content: space-between;
}
}
.lineMG .el-switch.is-checked .el-switch__core {
.lineMG .el-switch.is-checked .el-switch__core {
border-color: #4bca81;
background-color: #4bca81;
}
}
.lineMG .addCompany {
.lineMG .addCompany {
width: 440px;
max-height: 600px;
}
}
.lineMG .addCompany .el-dialog__body {
.lineMG .addCompany .el-dialog__body {
height: 486px;
overflow: auto;
}
}
.lineMG .query_box div label {
.lineMG .query_box div label {
display: inline-block;
min-width: 80px;
text-align: right;
font-style: normal;
margin: 0 20px 0 0;
}
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
}
}
input[type="number"] {
input[type="number"] {
-moz-appearance: textfield;
}
}
.lineType {
.lineType {
width: 51px;
height: 24px;
display: inline-block;
......@@ -49,15 +49,15 @@ input[type="number"] {
border-radius: 4px;
background-color: #ff9c00;
color: #ffffff;
}
}
.lineMG .LMTable tr {
.lineMG .LMTable tr {
height: 70px;
text-align: center !important;
background-color: #fff;
}
}
.comPanyNum {
.comPanyNum {
font-size: 14px;
color: #333333;
display: inline-block;
......@@ -65,155 +65,155 @@ input[type="number"] {
cursor: pointer;
margin-bottom: 5px;
text-decoration: underline;
}
}
.comPanyNum:hover {
.comPanyNum:hover {
color: #e95252;
}
}
.zhicai:first-child {
.zhicai:first-child {
margin-top: 23px;
}
}
.zhicai {
.zhicai {
color: #47bf8c;
}
}
.partCompany {
.partCompany {
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
}
}
.partCompany .popper__arrow::after {
.partCompany .popper__arrow::after {
border-bottom-color: #ededed !important;
}
}
.partCompany table {
.partCompany table {
padding: 10px 0 0 20px;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
}
.partCompany table th {
.partCompany table th {
background-color: #ededed;
padding: 5px;
}
}
.partCompany table td {
.partCompany table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
}
.partCompany table td._d_name {
.partCompany table td._d_name {
background-color: #ededed;
}
}
.partCompany table ._color_666 {
.partCompany table ._color_666 {
color: #666666;
}
}
.partCompany table tr._color_666 th {
.partCompany table tr._color_666 th {
padding: 9px 15px;
}
}
.LineName {
.LineName {
display: inline-block;
width: 170px;
margin: 30px 0 0 20px;
text-align: left;
}
}
.lineMG .LM_Back {
.lineMG .LM_Back {
background-color: #f2f2f2;
}
}
.redType {
.redType {
color: #e95252;
}
}
.lineMG .tbDiv {
.lineMG .tbDiv {
overflow-y: auto;
}
}
.departListDiv {
.departListDiv {
width: 100%;
height: 200px;
overflow-y: auto;
}
}
.lineMG .tbDiv::-webkit-scrollbar {
.lineMG .tbDiv::-webkit-scrollbar {
width: 4px;
height: 8px;
}
}
.lineMG .tbDiv::-webkit-scrollbar-track {
.lineMG .tbDiv::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
background: #ededed;
}
}
.lineMG .tbDiv::-webkit-scrollbar-thumb {
.lineMG .tbDiv::-webkit-scrollbar-thumb {
border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9;
}
}
.departListDiv::-webkit-scrollbar {
.departListDiv::-webkit-scrollbar {
width: 4px;
height: 8px;
}
}
.departListDiv::-webkit-scrollbar-track {
.departListDiv::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
background: #ededed;
}
}
.departListDiv::-webkit-scrollbar-thumb {
.departListDiv::-webkit-scrollbar-thumb {
border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9;
}
}
.LMTable {
.LMTable {
width: 100%;
font-size: 12px;
}
}
.lineMG .LMTable tr th {
.lineMG .LMTable tr th {
border-bottom: 1px solid #d1d1d1;
}
}
.lineMG .tbDiv .LMTable td {
.lineMG .tbDiv .LMTable td {
border-bottom: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
position: relative;
text-align: center;
padding: 5px;
min-width: 250px;
}
}
.lineMG .tbDiv table {
.lineMG .tbDiv table {
padding-right: 80px;
margin-top: 10px;
border-top: 1px solid #d1d1d1;
border-left: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
}
}
.upFentan {
.upFentan {
text-decoration: underline;
cursor: pointer;
position: absolute;
right: 13px;
top: 32%;
}
}
.subCountryList {
.subCountryList {
width: 150px;
text-align: left;
display: inline-block;
......@@ -222,32 +222,32 @@ input[type="number"] {
white-space: nowrap;
position: relative;
top: 3px;
}
}
.lineMG ._addLineTB tr {
.lineMG ._addLineTB tr {
height: 40px !important;
}
}
.saveCompanyBtn {
.saveCompanyBtn {
margin-top: 20px;
}
}
.setItem {
.setItem {
cursor: pointer;
text-decoration: underline;
position: absolute;
right: 13px;
top: 32%;
}
}
._LMComdiv {
._LMComdiv {
float: left;
width: 32%;
text-align: left;
margin-top: 20px;
}
}
.LineRank {
.LineRank {
width: 24px;
height: 24px;
background-color: #2aaef2;
......@@ -256,30 +256,30 @@ input[type="number"] {
line-height: 24px;
color: #fff;
margin: 15px auto 5px;
}
}
.lineMG .joinDepart {
.lineMG .joinDepart {
display: inline-block;
margin-right: 50px;
text-align: left;
float: left;
width: 180px;
}
}
.lineMG .LM_Rank {
.lineMG .LM_Rank {
text-align: center;
}
}
._LowDisMoney {
._LowDisMoney {
text-align: left;
margin: 20px 0 0 25px;
}
}
.LM_Btcontent {
.LM_Btcontent {
margin-left: 20px;
}
}
.LM_ul li {
.LM_ul li {
height: 78px;
margin: 20px 0 0px 0px;
transition: linear all 0.5s;
......@@ -288,30 +288,34 @@ input[type="number"] {
border: 1px solid #dddddd;
overflow: hidden;
position: relative;
}
}
.LM_BTNList {
.LM_BTNList {
margin-top: 25px;
}
}
.lineMG .el-button-group .el-button {
.lineMG .el-button-group .el-button {
padding: 5px;
}
}
.lineMG .LM_ul > li:hover {
.lineMG .LM_ul>li:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s;
}
.lineMG .el-date-editor.el-input,
.el-date-editor.el-input__inner {
}
.lineMG .el-date-editor.el-input,
.el-date-editor.el-input__inner {
width: auto;
}
.SP_datePicker .el-input__inner {
}
.SP_datePicker .el-input__inner {
padding-right: 0 !important;
}
.SP_AddTicket {
}
.SP_AddTicket {
margin: 10px 10px 0 30px;
}
}
</style>
<template>
<div class="flexOne lineMG">
......@@ -325,8 +329,10 @@ input[type="number"] {
</span>
</li>
<li>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="resetPageIndex(),initDataTable()" />
<input type="button" class="normalBtn" :value="$t('pub.addBtn')" @click="clearInfo(),isShowDIv=true,divTitle='新增报价'" />
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')"
@click="resetPageIndex(),initDataTable()" />
<input type="button" class="normalBtn" :value="$t('pub.addBtn')"
@click="clearInfo(),isShowDIv=true,divTitle='新增报价'" />
</li>
</ul>
</div>
......@@ -355,6 +361,7 @@ input[type="number"] {
<div>{{item.B2BPrice}}</div>
</div>
</el-col>
<template v-if="currentUserInfo&&currentUserInfo.RB_Group_id==2">
<el-col :span="2">
<div class="_LowDisMoney">
<div>B2C价格</div>
......@@ -367,6 +374,7 @@ input[type="number"] {
<div>{{item.SalesPrice}}</div>
</div>
</el-col>
</template>
<el-col :span="3">
<div class="_LowDisMoney">
<div>供应商</div>
......@@ -394,7 +402,8 @@ input[type="number"] {
<el-col :span="2">
<div class="LM_BTNList">
<el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start">
<el-button type="primary" circle icon="el-icon-edit" @click="isShowDIv = true,divTitle='修改报价',updateData(item.ID)"></el-button>
<el-button type="primary" circle icon="el-icon-edit"
@click="isShowDIv = true,divTitle='修改报价',updateData(item.ID)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
<el-button type="danger" circle icon="el-icon-delete" @click="isdelete(item.ID)"></el-button>
......@@ -414,15 +423,15 @@ input[type="number"] {
<el-form :model="addMsg" :rules="rules" ref="addMsg" @submit.native.prevent label-width="100px">
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_StartDate')" prop="StartDate">
<el-date-picker class="SP_datePicker" :clearable="false" v-model='addMsg.StartDate' type="date" :picker-options="addPickerBeginDateBefore"
value-format="yyyy-MM-dd" placeholder="">
<el-date-picker class="SP_datePicker" :clearable="false" v-model='addMsg.StartDate' type="date"
:picker-options="addPickerBeginDateBefore" value-format="yyyy-MM-dd" placeholder="">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_EndDate')" prop="EndDate">
<el-date-picker class="SP_datePicker" :clearable="false" v-model='addMsg.EndDate' type="date" value-format="yyyy-MM-dd" :picker-options="addPickerBeginDateAfter"
placeholder="">
<el-date-picker class="SP_datePicker" :clearable="false" v-model='addMsg.EndDate' type="date"
value-format="yyyy-MM-dd" :picker-options="addPickerBeginDateAfter" placeholder="">
</el-date-picker>
</el-form-item>
</el-col>
......@@ -433,7 +442,8 @@ input[type="number"] {
</el-col>
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_Inventory')" prop="Inventory">
<el-input type="text" maxlength="8" v-model="addMsg.Inventory" @keyup.native="checkInteger(addMsg,'Inventory')"></el-input>
<el-input type="text" maxlength="8" v-model="addMsg.Inventory"
@keyup.native="checkInteger(addMsg,'Inventory')"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
......@@ -441,6 +451,7 @@ input[type="number"] {
<el-input type="text" v-model="addMsg.B2BPrice" @keyup.native="checkPrice(addMsg,'B2BPrice')"></el-input>
</el-form-item>
</el-col>
<template v-if="currentUserInfo&&currentUserInfo.RB_Group_id==2">
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_B2CPrice')" prop="B2CPrice">
<el-input type="text" v-model="addMsg.B2CPrice" @keyup.native="checkPrice(addMsg,'B2CPrice')"></el-input>
......@@ -448,9 +459,11 @@ input[type="number"] {
</el-col>
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_SalesPrice')" prop="SalesPrice">
<el-input type="text" v-model="addMsg.SalesPrice" @keyup.native="checkPrice(addMsg,'SalesPrice')"></el-input>
<el-input type="text" v-model="addMsg.SalesPrice" @keyup.native="checkPrice(addMsg,'SalesPrice')">
</el-input>
</el-form-item>
</el-col>
</template>
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_Supplier')" v-if="IsSelfBook" prop="Supplier">
<!-- :placeholder="$t('hotel.hotel_inputholder')" -->
......@@ -462,7 +475,8 @@ input[type="number"] {
</el-col>
<el-col :span="4">
<el-form-item :label="$t('hotel.hotel_Currency')" prop="CurrencyId">
<el-select placeholder="请选币种" filterable @change="getCurrentRate(addMsg.CurrencyId)" v-model="addMsg.CurrencyId">
<el-select placeholder="请选币种" filterable @change="getCurrentRate(addMsg.CurrencyId)"
v-model="addMsg.CurrencyId">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="item in allCurrencyList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
......@@ -491,13 +505,13 @@ input[type="number"] {
</el-form>
</div>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage" layout="total,prev, pager, next, jumper"
:page-size="msg.pageSize" :total="msg.total">
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="msg.total">
</el-pagination>
</div>
</template>
<script>
export default {
export default {
data() {
var validateCurrent = (rule, value, callback) => {
if (value === 0) {
......@@ -531,26 +545,21 @@ export default {
EndDate: "",
CurrencyId: 0,
CurrentRate: 0.0,
MailingMoney: null,//邮寄费
MailingMoney: null, //邮寄费
},
rules: {
//表单必填验证
StartDate: [
{
StartDate: [{
required: true,
message: "开始日期必填",
trigger: "change"
}
],
EndDate: [
{
}],
EndDate: [{
required: true,
message: "结束日期必填",
trigger: "change"
}
],
CostPrice: [
{
}],
CostPrice: [{
required: true,
message: "请输入成本价",
trigger: "change"
......@@ -560,8 +569,7 @@ export default {
message: "请输入两位小数"
}
],
Inventory: [
{
Inventory: [{
required: true,
message: "请输入库存",
trigger: "change"
......@@ -571,8 +579,7 @@ export default {
message: "请输入正确的数字"
}
],
B2BPrice: [
{
B2BPrice: [{
required: true,
message: "请输入B2B价格",
trigger: "change"
......@@ -582,8 +589,7 @@ export default {
message: "请输入两位小数"
}
],
B2CPrice: [
{
B2CPrice: [{
required: true,
message: "请输入B2C价格",
trigger: "change"
......@@ -593,8 +599,7 @@ export default {
message: "请输入两位小数"
}
],
SalesPrice: [
{
SalesPrice: [{
required: true,
message: "请输入成本价格",
trigger: "change"
......@@ -604,28 +609,23 @@ export default {
message: "请输入两位小数"
}
],
Supplier: [
{
Supplier: [{
required: true,
message: "请选择供应商",
trigger: "change"
}
],
}],
CurrencyId: [
// {
// validator:validateCurrent,
// trigger: "change"
// }
],
CurrentRate: [
{
CurrentRate: [{
required: true,
message: "请输输入汇率",
trigger: "change"
}
],
MailingMoney: [
{
}],
MailingMoney: [{
required: true,
message: "请输入邮寄费",
trigger: "blur"
......@@ -662,10 +662,11 @@ export default {
addPickerBeginDateAfter: {
disabledDate: time => {
// let startTime = new Date(this.addMsg.StartDate);
let startTime = new Date(this.getBeforeDate(1,new Date(this.addMsg.StartDate).Format("yyyy-MM-dd")));
let startTime = new Date(this.getBeforeDate(1, new Date(this.addMsg.StartDate).Format("yyyy-MM-dd")));
return startTime.getTime() >= time.getTime();
}
}
},
currentUserInfo: {}
};
},
methods: {
......@@ -713,8 +714,9 @@ export default {
//修改报价信息
updateData(ID) {
this.apipost(
"ticketcouponsprice_post_Get",
{ID:ID},
"ticketcouponsprice_post_Get", {
ID: ID
},
res => {
if (res.data.resultCode == 1) {
this.addMsg = res.data.data;
......@@ -726,8 +728,7 @@ export default {
//获取所有币种
getAllCurrency() {
this.apipost(
"financeinfo_post_GetList",
{},
"financeinfo_post_GetList", {},
res => {
if (res.data.resultCode == 1) {
this.allCurrencyList = res.data.data;
......@@ -758,8 +759,9 @@ export default {
//HK新增查询条件
initSupplier() {
this.apipost(
"supplier_post_GetAllList",
{ Type: 3 },
"supplier_post_GetAllList", {
Type: 3
},
response => {
if (response.data.resultCode == 1) {
this.SupplierList = response.data.data;
......@@ -785,17 +787,16 @@ export default {
this.Error(res.data.message);
}
},
e=>{
e => {
}
);
},
isdelete(ID) {
var that = this;
that.Confirm("是否删除?", function() {
that.Confirm("是否删除?", function () {
that.apipost(
"ticketcouponsprice_post_Remove",
{
"ticketcouponsprice_post_Remove", {
ID: ID
},
res => {
......@@ -817,7 +818,7 @@ export default {
that.$refs[addMsg].validate(valid => {
if (valid) {
that.hotelOfferSet();
}else{
} else {
return false
}
});
......@@ -828,8 +829,7 @@ export default {
//获取供应商是否显示
getSuplier() {
this.apipost(
"ticketcoupons_post_Get",
{
"ticketcoupons_post_Get", {
ID: this.CouponsId
},
res => {
......@@ -848,6 +848,9 @@ export default {
});
},
},
created() {
this.currentUserInfo = this.getLocalStorage();
},
mounted() {
this.CouponsId = this.$route.query.CouponsId;
this.TicketID = this.$route.query.TicketID;
......@@ -857,7 +860,7 @@ export default {
this.initSupplier();
this.getAllCurrency();
this.initDataTable();
}
};
};
</script>
......@@ -204,8 +204,8 @@
<li>
<span>
<em>{{$t('commonPickUp.Pick_attractions')}}</em>
<el-select v-model="msg.CouponsIdList" :placeholder="$t('pub.pleaseSel')"
multiple collapse-tags filterable @change="getMultipleChoice">
<el-select v-model="msg.CouponsIdList" :placeholder="$t('pub.pleaseSel')" multiple collapse-tags filterable
@change="getMultipleChoice">
<el-option :label="$t('pub.unlimitedSel')" :value="defaultSelectValue"></el-option>
<el-option v-for="item in ScenicList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
......@@ -279,11 +279,11 @@
Year: 0,
Month: 0,
CouponsId: 0,
CouponsIdList:[],
CouponsIdList: [],
CouponsIds: '',
QStatus: 0,
loading: false,
uid:0,
uid: 0,
},
//餐厅列表
ScenicList: [],
......@@ -299,21 +299,21 @@
},
methods: {
// 多选
getMultipleChoice(){
if(this.msg.CouponsIdList.length>1){
if(this.msg.CouponsIdList.at(-1)==0){
getMultipleChoice() {
if (this.msg.CouponsIdList.length > 1) {
if (this.msg.CouponsIdList.at(-1) == 0) {
this.msg.CouponsIdList = [0]
}else if(this.msg.CouponsIdList.at(-1)!=0){
this.msg.CouponsIdList.forEach((x,index)=>{
if(x==0){
this.msg.CouponsIdList.splice(index,1)
} else if (this.msg.CouponsIdList.at(-1) != 0) {
this.msg.CouponsIdList.forEach((x, index) => {
if (x == 0) {
this.msg.CouponsIdList.splice(index, 1)
}
})
}
this.msg.CouponsId = 0
this.msg.CouponsIds = this.msg.CouponsIdList.join(',')
}
if(this.msg.CouponsIdList.length==1){
if (this.msg.CouponsIdList.length == 1) {
this.msg.CouponsId = this.msg.CouponsIdList[0]
this.msg.CouponsIds = ''
}
......@@ -407,10 +407,14 @@
},
//获取酒店列表
GetScenicList() {
var postMsg = {
QCountrys: ""
};
if (this.userInfo.RB_Group_id == 2) {
postMsg.QCountrys = "651";
}
this.apipost(
"ticketcoupons_post_GetList", {
QCountrys: "651"
},
"ticketcoupons_post_GetList", postMsg,
res => {
if (res.data.resultCode == 1) {
this.ScenicList = res.data.data;
......@@ -421,18 +425,18 @@
},
//下载餐厅统计
DownLoadDinnerSalesBoard() {
if (this.msg.CouponsId<=0&&!this.msg.CouponsIds) {
if (this.msg.CouponsId <= 0 && !this.msg.CouponsIds) {
this.Info("请选择景点!");
return;
}
let url
if(this.msg.CouponsId>0){
if (this.msg.CouponsId > 0) {
url = 'ticketcouponsorder_post_DownLoadScenicMonthStatistics'
}else{
url ='ticketcouponsorder_post_DownLoadScenicMonthStatisticsNew'
} else {
url = 'ticketcouponsorder_post_DownLoadScenicMonthStatisticsNew'
}
this.msg.loading = true;
this.msg.uid=this.userInfo.EmployeeId;
this.msg.uid = this.userInfo.EmployeeId;
let fileName = "门票下载" + this.$commonUtils.getCurrentDate() + ".xls";
this.GetLocalFile(url, this.msg, fileName,
res => {
......
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