Commit 4f48ee9c authored by huangyuanyuan's avatar huangyuanyuan
parents 120be057 97cf171d
...@@ -193,7 +193,7 @@ ...@@ -193,7 +193,7 @@
</select> </select>
</span> </span>
<span class="ql-formats" v-if="toolbar.fontColor||toolbar.fontBackgroundColor"> <span class="ql-formats" v-if="toolbar.fontColor||toolbar.fontBackgroundColor">
<span class="ql-color ql-picker ql-color-picker" v-if="toolbar.fontColor"> <span class="ql-color ql-picker ql-color-picker" v-if="toolbar.fontColor" style="display:none">
<span class="ql-picker-label" tabindex="0" role="button" aria-expanded="false" aria-controls="ql-picker-options-35"> <span class="ql-picker-label" tabindex="0" role="button" aria-expanded="false" aria-controls="ql-picker-options-35">
<svg viewbox="0 0 18 18"> <svg viewbox="0 0 18 18">
<line class="ql-color-label ql-stroke ql-transparent" x1="3" x2="15" y1="15" y2="15"></line> <line class="ql-color-label ql-stroke ql-transparent" x1="3" x2="15" y1="15" y2="15"></line>
...@@ -237,7 +237,7 @@ ...@@ -237,7 +237,7 @@
tabindex="0" role="button" class="ql-picker-item" data-value="#002966" style="background-color: rgb(0, 41, 102);"></span><span tabindex="0" role="button" class="ql-picker-item" data-value="#002966" style="background-color: rgb(0, 41, 102);"></span><span
tabindex="0" role="button" class="ql-picker-item" data-value="#3d1466" style="background-color: rgb(61, 20, 102);"></span></span> tabindex="0" role="button" class="ql-picker-item" data-value="#3d1466" style="background-color: rgb(61, 20, 102);"></span></span>
</span> </span>
<select class="ql-color" style="display: none;" v-if="toolbar.fontColor"> <select class="ql-color" v-if="toolbar.fontColor">
<option selected="selected"></option> <option selected="selected"></option>
<option value="#e60000"></option> <option value="#e60000"></option>
<option value="#ff9900"></option> <option value="#ff9900"></option>
...@@ -273,8 +273,8 @@ ...@@ -273,8 +273,8 @@
<option value="#003700"></option> <option value="#003700"></option>
<option value="#002966"></option> <option value="#002966"></option>
<option value="#3d1466"></option> <option value="#3d1466"></option>
</select> </select>
<span class="ql-background ql-picker ql-color-picker" v-if="toolbar.fontBackgroundColor"> <span class="ql-background ql-picker ql-color-picker" v-if="toolbar.fontBackgroundColor" style="display:none;">
<span class="ql-picker-label" tabindex="0" role="button" aria-expanded="false" aria-controls="ql-picker-options-36"> <span class="ql-picker-label" tabindex="0" role="button" aria-expanded="false" aria-controls="ql-picker-options-36">
<svg viewbox="0 0 18 18"> <svg viewbox="0 0 18 18">
<g class="ql-fill ql-color-label"> <g class="ql-fill ql-color-label">
...@@ -365,7 +365,7 @@ ...@@ -365,7 +365,7 @@
tabindex="0" role="button" class="ql-picker-item" data-value="#002966" style="background-color: rgb(0, 41, 102);"></span><span tabindex="0" role="button" class="ql-picker-item" data-value="#002966" style="background-color: rgb(0, 41, 102);"></span><span
tabindex="0" role="button" class="ql-picker-item" data-value="#3d1466" style="background-color: rgb(61, 20, 102);"></span></span> tabindex="0" role="button" class="ql-picker-item" data-value="#3d1466" style="background-color: rgb(61, 20, 102);"></span></span>
</span> </span>
<select class="ql-background" style="display: none;" v-if="toolbar.fontBackgroundColor"> <select class="ql-background" v-if="toolbar.fontBackgroundColor">
<option value="#000000"></option> <option value="#000000"></option>
<option value="#e60000"></option> <option value="#e60000"></option>
<option value="#ff9900"></option> <option value="#ff9900"></option>
......
...@@ -302,7 +302,7 @@ ...@@ -302,7 +302,7 @@
<el-option v-for="item in roomlist" :key="item.ID" :label="item.HouseInfo" :value="item.ID"> <el-option v-for="item in roomlist" :key="item.ID" :label="item.HouseInfo" :value="item.ID">
</el-option> </el-option>
</el-select> </el-select>
<input type="button" value="新增" class="normalBtn" @click="addhouse()" /> <input type="button" value="新增房间" class="normalBtn" @click="addhouse()" title="需要拼房,但没有双人间(半间)的点击新增房间"/>
</el-form-item> </el-form-item>
</li> </li>
<li> <li>
......
...@@ -1723,8 +1723,11 @@ ...@@ -1723,8 +1723,11 @@
<div <div
@click='Discount(item.tcid),SOMsg.OrderId = item.orderId,SOMsg.OrderUnitPrice = item.unit_Price'> @click='Discount(item.tcid),SOMsg.OrderId = item.orderId,SOMsg.OrderUnitPrice = item.unit_Price'>
申请优惠</div> 申请优惠</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')" <div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3') && item.isCanClear==0"
@click='deleteItem(item)'>取消 @click='deleteItem(item)'>取消
</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3') && item.isCanClear==1" title="如需取消订单清联系OP" style="color:red;">
订单已确认,取消请联系OP
</div> </div>
</div> </div>
......
...@@ -1735,7 +1735,10 @@ ...@@ -1735,7 +1735,10 @@
</div> </div>
<div v-if="item.orderState==2" @click='Discount(item.tcid),SOMsg.OrderId = item.orderId,SOMsg.OrderUnitPrice = item.unit_Price'>申请优惠</div> <div v-if="item.orderState==2" @click='Discount(item.tcid),SOMsg.OrderId = item.orderId,SOMsg.OrderUnitPrice = item.unit_Price'>申请优惠</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')" @click='deleteItem(item)'>取消</div> <div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')&& item.isCanClear==0" @click='deleteItem(item)'>取消</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3') && item.isCanClear==1" title="如需取消订单清联系OP" style="color:red;">
订单已确认,取消请联系OP
</div>
</div> </div>
<el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button> <el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button>
</el-popover> </el-popover>
......
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
</tbody> </tbody>
<tbody v-show="tableList.length===0" class="passengerSaleList_table_noInfo"> <tbody v-show="tableList.length===0" class="passengerSaleList_table_noInfo">
<tr> <tr>
<td colspan="17" class="">暂无数据</td> <td colspan="18" class="">暂无数据</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
......
...@@ -5,15 +5,12 @@ ...@@ -5,15 +5,12 @@
<li> <li>
<span> <span>
<em>月份</em> <em>月份</em>
<el-date-picker <el-date-picker v-model="msg.Month" type="month" placeholder="选择月">
v-model="msg.Month"
type="month"
placeholder="选择月">
</el-date-picker> </el-date-picker>
</span> </span>
</li> </li>
<li style="position:absolute;right:10px;top:0;"> <li style="position:absolute;right:10px;top:0;">
<input type="button" class="normalBtn" value="查询" @click="getList();resetPageIndex()" /> <input type="button" class="normalBtn" value="查询" @click="getList()" />
<input type="button" class="normalBtn" value="下载" @click="DownLoadHotel()" /> <input type="button" class="normalBtn" value="下载" @click="DownLoadHotel()" />
</li> </li>
</ul> </ul>
...@@ -28,21 +25,109 @@ ...@@ -28,21 +25,109 @@
</div><br /> </div><br />
<table border="0" cellspacing="1" cellpadding="0" class="roomQuery_SupplierTable" v-loading='loading'> <table border="0" cellspacing="1" cellpadding="0" class="roomQuery_SupplierTable" v-loading='loading'>
<tr> <tr>
<th width="100">序号</th> <th width="100">订团号</th>
<th width="120">出发地</th>
<th width="100">公司团号</th> <th width="100">公司团号</th>
<th width="80">团队状态</th> <th width="100">航班</th>
<th width="100">系列</th> <th width="120">机位总数</th>
<th width="120">机位总数<br />(Y/E/F)</th> <th width="100">当前人数</th>
<th width="100">时间</th> <th width="100">导游</th>
<th width="150">酒店</th> <th width="100">领队</th>
<th width="100">酒店使用情况</th> <th width="150">酒店详情</th>
<th width="100">操作</th>
</tr> </tr>
<tbody v-for="(item,index) in dataList">
<tr>
<td>
{{item.NewCombinationNum}}
</td>
<td>
{{item.TCNUMS}}({{item.TCID}})
</td>
<td>
<template v-for="(subItem,subIndex) in item.FlightList2">
<span class="roomNowrap"><span class="roomFlightNumber">{{subItem.Flight_number}}</span> {{subItem.TicketDepartureTime}} {{subItem.DepartureName}}({{subItem.DIATA}})
{{subItem.TicketArrivalTime}} {{subItem.ArrivalCityName}}({{subItem.AIATA}})</span>
</template>
</td>
<td>
{{item.TotalSeat}}
</td>
<td>
{{item.RealNum}}
</td>
<td>
{{item.GuideName}} <template v-if="item.GuideTel">(电话: {{item.GuideTel}})</template>
</td>
<td>
{{item.LeaderName}} <template v-if="item.LeaderTel">(电话: {{item.LeaderTel}})</template>
</td>
<td>
<el-tooltip class="item" effect="dark" content="酒店信息" placement="top-start">
<el-popover placement="bottom" width="500" trigger="click" popper-class="rq_HotelDetails">
<table class="rq_HotelTable">
<tr>
<th width="160">
时间
</th>
<th width="200">
酒店
</th>
<th width="200">
更换名称
</th>
<th width="250">
价格
</th>
</tr>
<template v-for="(subItem,subIndex) in HotelList">
<tbody v-for="(childItem,childIndex) in subItem.HotelOrderList">
<tr>
<td v-if="childIndex==0" :rowspan="subItem.HotelOrderList.length">
{{subIndex+1}}<br/>
{{subItem.UseTimeStr}}
</td>
<td>
{{childItem.HotelName}}
</td>
<td>
{{childItem.NewHotelName}}
</td>
<td>
<template v-for="(detailsItem,detailsIndex) in childItem.OrderDetailsList" v-if="detailsItem.HouseTypeCount>0" >
<template v-if="detailsItem.HouseType==1">单间</template>
<template v-if="detailsItem.HouseType==2">标准双人间</template>
<template v-if="detailsItem.HouseType==3">大床房</template>
<template v-if="detailsItem.HouseType==4">三人间</template>
<template v-if="detailsItem.HouseType==4">司导间</template>
{{detailsItem.HouseTypeCount}} 间
价格: {{detailsItem.UnitPrice}}
税入/税别
返佣: {{detailsItem.RebateRatio}}
<br/>
</template>
</td>
</tr>
<tr >
<td colspan="4">
<span style="display:inline-block;width:40px;vertical-align:top;">备注:</span>
<span style="display:inline-block;width:400px;">{{childItem.Remarks}}</span></td>
</tr>
</tbody>
</template>
</table>
<a class="hotelLink" slot="reference" @click="getHotelList(item.TCID,item.NewCombinationNum)">酒店使用情况</a>
</el-popover>
</el-tooltip>
</td>
</tr>
<tr>
<td colspan="5" style="text-align:left;padding-left:5px;">
注意事项: {{item.SupplierRemarks}}
</td>
</tr>
</tbody>
</table> </table>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
...@@ -50,6 +135,7 @@ ...@@ -50,6 +135,7 @@
data() { data() {
return { return {
loading: false, loading: false,
hotelLoading:false,
total: 0, total: 0,
msg: { msg: {
pageIndex: 1, pageIndex: 1,
...@@ -74,15 +160,9 @@ ...@@ -74,15 +160,9 @@
CombinationNum: '', CombinationNum: '',
Month: "" //月份字符串 Month: "" //月份字符串
}, },
UserInfo: {}, UserInfo: {}, //用户信息
//分公司类表 dataList: [], //数据列表
companyList: [], HotelList: [], //酒店列表
//酒店列表
HotelList: [],
LineList: [],
LineTeamList: [],
thLengthTitle: [],
dataList: [],
//日志信息 //日志信息
LogsList: [], LogsList: [],
queryLogMsg: { queryLogMsg: {
...@@ -93,22 +173,9 @@ ...@@ -93,22 +173,9 @@
HotelId: 0, HotelId: 0,
TCID: 0 TCID: 0
}, },
queryCommonData: {
//公司数据
BranchList: [],
//国家
PlaceList: [],
LineList: [],
LineTeamList: [],
AirlineList: [],
EmployeeList: [],
},
//当前酒店列表
CurrentHotelList: [],
} }
}, },
methods: { methods: {
//获取日志 //获取日志
getLogsList(TCID) { getLogsList(TCID) {
// if (TCID) { // if (TCID) {
...@@ -125,16 +192,29 @@ ...@@ -125,16 +192,29 @@
this.loading = true; this.loading = true;
this.ApiPost2('dmcstatistics_post_GetUniteCombinationNumService_Supplier_V2', this.msg, res => { this.ApiPost2('dmcstatistics_post_GetUniteCombinationNumService_Supplier_V2', this.msg, res => {
this.loading = false; this.loading = false;
console.log(res.data);
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.dataList = res.data.data;
// this.total = res.data.data.count;
// this.dataList = res.data.data.pageData;
} else { } else {
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
}, err => {}) }, err => {})
}, },
//获取日志
getHotelList(TCID, NewCombinationNum) {
this.hotelLoading=true;
this.HotelList = [];
var qMsg = {
TCID: TCID,
NewCombinationNum: NewCombinationNum
};
this.ApiPost2('dmcstatistics_post_GetSupplierHotelListService', qMsg, res => {
this.hotelLoading=false;
if (res.data.resultCode == 1) {
this.HotelList = res.data.data;
console.log("this.HotelList",this.HotelList);
}
}, err => {})
},
//下载Excel //下载Excel
DownLoadHotel() { DownLoadHotel() {
this.loading = true; this.loading = true;
...@@ -159,17 +239,7 @@ ...@@ -159,17 +239,7 @@
parseInt(myDate.getMonth() + 1) + parseInt(myDate.getMonth() + 1) +
"-" + "-" +
myDate.getDate(); myDate.getDate();
if (this.$route.query.hotelId) { this.msg.Month = myDate.getFullYear() + "-" + parseInt(myDate.getMonth() + 1);
this.msg.HotelId = this.$route.query.hotelId;
}
if (this.$route.query.dateStr) {
this.msg.DateStr = this.$route.query.dateStr;
}
if (this.$route.query.hotelId || this.$route.query.dateStr) {
this.msg.StartDate = "";
} else {
this.msg.StartDate = nowDate;
}
this.getList(); this.getList();
}, },
} }
...@@ -243,4 +313,27 @@ ...@@ -243,4 +313,27 @@
background-color: red; background-color: red;
} }
.roomQuery .hotelLink {
color: blue;
text-decoration: underline;
cursor: pointer;
}
.roomQuery .roomNowrap{
white-space: nowrap;
margin-bottom:5px;
display: block;
text-align: left;
padding-left:20px;
}
.roomQuery .roomFlightNumber{
color:#FF0066;
font-weight: bold;
}
.rq_HotelTable { padding: 10px 0 0 20px; background-color: #ededed; border-collapse: collapse; border: 1px solid #d2d2d2; font-size: 12px;}
.rq_HotelTable th { background-color: #ededed; padding: 5px 10px;}
.rq_HotelTable td { background-color: #ffffff; padding: 9px 10px;color: #333333;border: 1px solid #d2d2d2;}
.rq_HotelDetails{
max-height:400px;
overflow: auto;
}
</style> </style>
...@@ -54,6 +54,7 @@ ...@@ -54,6 +54,7 @@
<tr> <tr>
<th width='80'>商品编号</th> <th width='80'>商品编号</th>
<th>商品名称</th> <th>商品名称</th>
<th>商品数量</th>
<th>购买等级要求</th> <th>购买等级要求</th>
<th>价格</th> <th>价格</th>
<th>市场价</th> <th>市场价</th>
...@@ -66,6 +67,7 @@ ...@@ -66,6 +67,7 @@
<tr v-for="item in dataList"> <tr v-for="item in dataList">
<td>{{item.id}}</td> <td>{{item.id}}</td>
<td>{{item.name}}</td> <td>{{item.name}}</td>
<td>{{item.storeNum}}</td>
<td>{{item.isReqRate === -1 ? '不限' : `${item.isReqRate}级`}}</td> <td>{{item.isReqRate === -1 ? '不限' : `${item.isReqRate}级`}}</td>
<td>{{item.price}}{{item.priceUnit === 1 ? '人民币' : '积分'}}</td> <td>{{item.price}}{{item.priceUnit === 1 ? '人民币' : '积分'}}</td>
<td>{{item.marketPrice}}</td> <td>{{item.marketPrice}}</td>
......
...@@ -194,6 +194,9 @@ ...@@ -194,6 +194,9 @@
.addIntegralMall .bottom_sub { .addIntegralMall .bottom_sub {
padding-top: 25px; padding-top: 25px;
} }
.addIntegralMall .ql-editor{
min-height: 200px;
}
</style> </style>
<template> <template>
<el-row class="addIntegralMall"> <el-row class="addIntegralMall">
...@@ -240,6 +243,9 @@ ...@@ -240,6 +243,9 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="商品数量" prop="storeNum">
<el-input v-model="addMsg.storeNum" class="w217"/>
</el-form-item>
<el-form-item label="商品状态"> <el-form-item label="商品状态">
<el-select filterable v-model="addMsg.state"> <el-select filterable v-model="addMsg.state">
<el-option label="上架" :value="1" :key="1"></el-option> <el-option label="上架" :value="1" :key="1"></el-option>
...@@ -313,8 +319,11 @@ ...@@ -313,8 +319,11 @@
</div> </div>
<p class="tips tips2">最多上传5张图片</p> <p class="tips tips2">最多上传5张图片</p>
<span class="resource-lititle resource-lititle2">商品描述</span> <span class="resource-lititle resource-lititle2">商品描述</span>
<quill-editor :options="editorOption" v-model="addMsg.description"></quill-editor>
<span class="resource-lititle resource-lititle2">图片介绍</span> <my-edit v-on:edit-value="addMsg.description = arguments[0]" v-bind:editValue="addMsg.description"
v-bind:toolbarShow="toolbar" v-bind:placeholder="placeholder"></my-edit>
<!-- <span class="resource-lititle resource-lititle2">图片介绍</span>
<div class="resource-imglist clearfix"> <div class="resource-imglist clearfix">
<div class="re-img re-img2" v-for="(item,index) in DiningImageArray2" :key="index"> <div class="re-img re-img2" v-for="(item,index) in DiningImageArray2" :key="index">
<img v-if="!item" src="../../assets/img/bg_c3@3x.png"> <img v-if="!item" src="../../assets/img/bg_c3@3x.png">
...@@ -361,7 +370,7 @@ ...@@ -361,7 +370,7 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div> -->
</div> </div>
<div class="bottom_sub"> <div class="bottom_sub">
<button <button
...@@ -378,9 +387,23 @@ ...@@ -378,9 +387,23 @@
</template> </template>
<script> <script>
import { setInterval, setTimeout } from "timers"; import { setInterval, setTimeout } from "timers";
import MyEdit from "../EditTemplate.vue";
export default { export default {
data() { data() {
return { return {
toolbar: {
clean: true,
font: false, //字体
narrative: false, //叙述,
image:true,
bold: true, //加粗
underline: true, //下划线
header1: true, //H1
header2: true, //H2
fontColor: true, //字体颜色
fontBackgroundColor: true, //背景颜色
},
placeholder: "请输入内容",
editorOption: { editorOption: {
modules: { modules: {
toolbar: [ toolbar: [
...@@ -410,6 +433,7 @@ export default { ...@@ -410,6 +433,7 @@ export default {
quota: 0, quota: 0,
ishot: 0, ishot: 0,
descripImg: '', descripImg: '',
storeNum:''
}, },
MenberList: [], MenberList: [],
GoodsTypeList: [], GoodsTypeList: [],
...@@ -431,7 +455,8 @@ export default { ...@@ -431,7 +455,8 @@ export default {
tradePeopleReq: [ tradePeopleReq: [
{ required: true, message: "交易人头数要求", trigger: "blur" } { required: true, message: "交易人头数要求", trigger: "blur" }
], ],
remark: [{ required: true, message: "请输入备注", trigger: "blur" }] remark: [{ required: true, message: "请输入备注", trigger: "blur" }],
storeNum:[{ required: true, message: "请输入商品数量", trigger: "blur" }]
}, },
//上传的文件数组 //上传的文件数组
DiningImageArray: [], DiningImageArray: [],
...@@ -446,6 +471,9 @@ export default { ...@@ -446,6 +471,9 @@ export default {
GoodsSeriesList: [], GoodsSeriesList: [],
}; };
}, },
components: {
"my-edit": MyEdit
},
methods: { methods: {
getGoodsSeries() { getGoodsSeries() {
this.loading = true; this.loading = true;
......
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