|
@@ -15,7 +15,8 @@
|
|
|
分段类型:
|
|
|
</div>
|
|
|
<el-select v-model="costTypevalue" placeholder="请选择" @change="costTypeSelect">
|
|
|
- <el-option v-for="item in costType" :key="item.value" :label="item.label" :value="item.value">
|
|
|
+ <el-option v-for="item in costType" :key="item.value" :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
@@ -82,15 +83,16 @@
|
|
|
<el-col :span="5">
|
|
|
<div> <el-form-item label="第一段开始时间:" prop="costTypeStartTime">
|
|
|
<el-date-picker v-model="AGroupCostParameter.costTypeStartTime" type="date"
|
|
|
- placeholder="第一段开始时间" format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
+ placeholder="第一段开始时间" format="yyyy 年 MM 月 dd 日"
|
|
|
+ value-format="yyyy-MM-dd">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col :span="4">
|
|
|
<div> <el-form-item label="结束时间:" prop="costTypeendTime"><el-date-picker
|
|
|
- v-model="AGroupCostParameter.costTypeendTime" type="date" placeholder="结束时间"
|
|
|
- format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
+ v-model="AGroupCostParameter.costTypeendTime" type="date"
|
|
|
+ placeholder="结束时间" format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
@@ -146,15 +148,16 @@
|
|
|
<el-col :span="5">
|
|
|
<div> <el-form-item label="第二段开始时间:" prop="costTypeStartTime">
|
|
|
<el-date-picker v-model="BGroupCostParameter.costTypeStartTime" type="date"
|
|
|
- placeholder="第二段开始时间" format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
+ placeholder="第二段开始时间" format="yyyy 年 MM 月 dd 日"
|
|
|
+ value-format="yyyy-MM-dd">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col :span="4">
|
|
|
<div> <el-form-item label="结束时间:" prop="costTypeendTime"><el-date-picker
|
|
|
- v-model="BGroupCostParameter.costTypeendTime" type="date" placeholder="结束时间"
|
|
|
- format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
+ v-model="BGroupCostParameter.costTypeendTime" type="date"
|
|
|
+ placeholder="结束时间" format="yyyy 年 MM 月 dd 日" value-format="yyyy-MM-dd">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
@@ -235,8 +238,8 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div style="color: #606266;font-size: 15px;font-weight: 600;">请选择要显示的项:</div>
|
|
|
- <el-checkbox-group class="form-ss" v-model="CheckBoxListSelect.filter(item => item.cbType == 'Top')[0].cbValues"
|
|
|
- @change="TopChange">
|
|
|
+ <el-checkbox-group class="form-ss"
|
|
|
+ v-model="CheckBoxListSelect.filter(item => item.cbType == 'Top')[0].cbValues" @change="TopChange">
|
|
|
<el-checkbox v-for="( item, index ) in checkOptions " :key="index" :title="item.tips"
|
|
|
:label="item.label" @change="(val) => { topcheckboxChange(val, item.label) }"></el-checkbox>
|
|
|
</el-checkbox-group>
|
|
@@ -244,8 +247,8 @@
|
|
|
size="small" row-class-name="row" cell-class-name="column" :highlight-current-row="true" :fit="true"
|
|
|
:height="centerheight">
|
|
|
<template v-for="( item, index ) in tableLabel ">
|
|
|
- <el-table-column :key="index" :prop="item.prop" :width="item.width == 150 ? columnWidth : item.width"
|
|
|
- :label="item.label"
|
|
|
+ <el-table-column :key="index" :prop="item.prop"
|
|
|
+ :width="item.width == 150 ? columnWidth : item.width" :label="item.label"
|
|
|
v-if="CheckBoxListSelect.filter(item => item.cbType == 'Top')[0].cbValues.includes(item.label)">
|
|
|
<!-- eslint-disable-next-line -->
|
|
|
<template slot="header" slot-scope="scope">
|
|
@@ -261,24 +264,31 @@
|
|
|
<el-input :ref="'el-input-' + index" v-model="scope.row[item.prop]" show-word-limit />
|
|
|
</div>
|
|
|
<div v-else-if="item.prop === 'day'">
|
|
|
- <el-input :ref="'el-input-' + index" v-model="scope.row[item.prop]" type="number" min="0"
|
|
|
- @change="NumberSetTime(scope.row[item.prop], scope.$index)" />
|
|
|
+ <el-input :ref="'el-input-' + index" v-model="scope.row[item.prop]" type="number"
|
|
|
+ min="0" @change="NumberSetTime(scope.row[item.prop], scope.$index)" />
|
|
|
</div>
|
|
|
<div v-else-if="item.prop === 'date'">
|
|
|
- <span :title="scope.row[item.prop]"><el-input placeholder="请输入日期"
|
|
|
+ <span :title="scope.row[item.prop]">
|
|
|
+ <!-- <el-input placeholder="请输入日期"
|
|
|
v-model="scope.row[item.prop]"
|
|
|
@change="dateChange(scope.row[item.prop], scope.$index)">
|
|
|
- </el-input></span>
|
|
|
+ </el-input> -->
|
|
|
+ <el-date-picker v-model="scope.row[item.prop]" type="date" value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </span>
|
|
|
</div>
|
|
|
<div v-else-if="item.prop === 'sale'">
|
|
|
<el-row class="figures-btn">
|
|
|
<el-button @click="handleEdit(scope.$index, scope.row, 1)" size="mini"
|
|
|
type="primary">司兼导</el-button>
|
|
|
- <el-button @click="handleEdit(scope.$index, scope.row, 2)" size="mini" type="primary">导
|
|
|
+ <el-button @click="handleEdit(scope.$index, scope.row, 2)" size="mini"
|
|
|
+ type="primary">导
|
|
|
游</el-button>
|
|
|
<el-button @click="handleEdit(scope.$index, scope.row, 3)" size="mini"
|
|
|
type="primary">车数据</el-button>
|
|
|
- <el-button @click="handleEdit(scope.$index, scope.row, 4)" size="mini" type="primary">景
|
|
|
+ <el-button @click="handleEdit(scope.$index, scope.row, 4)" size="mini"
|
|
|
+ type="primary">景
|
|
|
点</el-button>
|
|
|
</el-row>
|
|
|
</div>
|
|
@@ -334,7 +344,8 @@
|
|
|
<div v-else>
|
|
|
<!-- <el-input v-model="AGroupCostParameter[itemsheetone.prop]"
|
|
|
show-word-limit /> -->
|
|
|
- <el-input-number v-model="AGroupCostParameter[itemsheetone.prop]"
|
|
|
+ <el-input-number
|
|
|
+ v-model="AGroupCostParameter[itemsheetone.prop]"
|
|
|
@change="handleChange" :min="0" size="small"
|
|
|
:controls="false"></el-input-number>
|
|
|
</div>
|
|
@@ -420,7 +431,7 @@
|
|
|
<div class="biaoge"
|
|
|
v-if="CheckBoxListSelect.filter(item => item.cbType == 'Right')[0].cbValues.includes(cabinitem.label)">
|
|
|
<div style=" color: rgb(96, 98, 102);font-size: 15px;font-weight: 600;">{{
|
|
|
- cabinitem.label }}
|
|
|
+ cabinitem.label }}
|
|
|
</div>
|
|
|
<el-table :data="cabinitem.sheetInfo" border style="width: 100%">
|
|
|
<el-table-column
|
|
@@ -429,33 +440,34 @@
|
|
|
<template slot-scope="scope">
|
|
|
<div v-if="itemcabinone.prop === 'toll'">
|
|
|
<el-input :ref="'el-input-' + index"
|
|
|
- v-model="scope.row[itemcabinone.prop]" show-word-limit disabled />
|
|
|
+ v-model="scope.row[itemcabinone.prop]" show-word-limit
|
|
|
+ disabled />
|
|
|
</div>
|
|
|
<span
|
|
|
v-else-if="itemcabinone.prop === 'costPerson' || itemcabinone.prop === 'singleQuote'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- scope.row[itemcabinone.prop]
|
|
|
- }}</span>
|
|
|
+ scope.row[itemcabinone.prop]
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalCost'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- (scope.row['toll'] * scope.row['costPerson']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ (scope.row['toll'] * scope.row['costPerson']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalQuote'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- (scope.row['toll'] * scope.row['singleQuote']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ (scope.row['toll'] * scope.row['singleQuote']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'singleProfit'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- ((scope.row['singleQuote'] - scope.row['costPerson'])).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ ((scope.row['singleQuote'] - scope.row['costPerson'])).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalProfit'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- ((scope.row['singleQuote'] - scope.row['costPerson']) *
|
|
|
- scope.row['toll']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ ((scope.row['singleQuote'] - scope.row['costPerson']) *
|
|
|
+ scope.row['toll']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else :title="scope.row[itemcabinone.prop]">{{
|
|
|
- scope.row[itemcabinone.prop]
|
|
|
- }}</span>
|
|
|
+ scope.row[itemcabinone.prop]
|
|
|
+ }}</span>
|
|
|
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -469,7 +481,7 @@
|
|
|
<div class="biaogeB"
|
|
|
v-if="CheckBoxListSelect.filter(item => item.cbType == 'Right')[0].cbValues.includes(cabinitem.label)">
|
|
|
<div style=" color: rgb(96, 98, 102);font-size: 15px;font-weight: 600;">{{
|
|
|
- cabinitem.label }}
|
|
|
+ cabinitem.label }}
|
|
|
</div>
|
|
|
<el-table :data="cabinitem.sheetInfo" border style="width: 100%">
|
|
|
<el-table-column
|
|
@@ -478,33 +490,34 @@
|
|
|
<template slot-scope="scope">
|
|
|
<div v-if="itemcabinone.prop === 'toll'">
|
|
|
<el-input :ref="'el-input-' + index"
|
|
|
- v-model="scope.row[itemcabinone.prop]" show-word-limit disabled />
|
|
|
+ v-model="scope.row[itemcabinone.prop]" show-word-limit
|
|
|
+ disabled />
|
|
|
</div>
|
|
|
<span
|
|
|
v-else-if="itemcabinone.prop === 'costPerson' || itemcabinone.prop === 'singleQuote'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- scope.row[itemcabinone.prop]
|
|
|
- }}</span>
|
|
|
+ scope.row[itemcabinone.prop]
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalCost'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- (scope.row['toll'] * scope.row['costPerson']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ (scope.row['toll'] * scope.row['costPerson']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalQuote'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- (scope.row['toll'] * scope.row['singleQuote']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ (scope.row['toll'] * scope.row['singleQuote']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'singleProfit'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- (scope.row['singleQuote'] - scope.row['costPerson']).toFixed(2)
|
|
|
- }}</span>
|
|
|
+ (scope.row['singleQuote'] - scope.row['costPerson']).toFixed(2)
|
|
|
+ }}</span>
|
|
|
<span v-else-if="itemcabinone.prop === 'totalProfit'"
|
|
|
:title="scope.row[itemcabinone.prop]">{{
|
|
|
- ((scope.row['singleQuote'] - scope.row['costPerson']) *
|
|
|
- scope.row['toll']).toFixed(2)
|
|
|
+ ((scope.row['singleQuote'] - scope.row['costPerson']) *
|
|
|
+ scope.row['toll']).toFixed(2)
|
|
|
}}</span>
|
|
|
<span v-else :title="scope.row[itemcabinone.prop]">{{
|
|
|
scope.row[itemcabinone.prop]
|
|
|
- }}</span>
|
|
|
+ }}</span>
|
|
|
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -611,7 +624,7 @@ export default {
|
|
|
],
|
|
|
tableLabel: [
|
|
|
{ label: 'DAY', width: '90', prop: 'day', describe: '天数(DAY)' },
|
|
|
- { label: 'DATE', width: '150', prop: 'date', describe: '时间(DATE)' },
|
|
|
+ { label: 'DATE', width: '180', prop: 'date', describe: '时间(DATE)' },
|
|
|
{ label: 'ITIN', width: '200', prop: 'itin', describe: '行程描述(ITINERARY)' },
|
|
|
{ label: 'VA', width: '85', prop: 'sale', describe: '车服务区域(Vehicle Area)' }, // ??????????????
|
|
|
{ label: 'VT', width: '200', prop: 'carType', describe: '车型(VEHICLE TYPE)' },
|
|
@@ -2313,11 +2326,18 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
addStrip() {
|
|
|
+ var souerLength = this.tableData.length - 1;
|
|
|
+ var dataStr = "";
|
|
|
+ if (souerLength >= 0) {
|
|
|
+ dataStr = this.tableData[souerLength].date;
|
|
|
+ dataStr = this.addOneDay(dataStr, 1);
|
|
|
+ }
|
|
|
+
|
|
|
this.tableData.push(
|
|
|
{
|
|
|
"diid": this.diid,
|
|
|
"day": "-",
|
|
|
- "date": "",
|
|
|
+ "date": dataStr,
|
|
|
"itin": "",
|
|
|
"carType": "",
|
|
|
"carCost": 0,
|
|
@@ -3480,7 +3500,7 @@ export default {
|
|
|
console.log(number, index, this.grouptitleinfo.visitStartDate);
|
|
|
number = parseInt(number);
|
|
|
if (!isNaN(number)) {
|
|
|
- var time = this.addOneDay(this.grouptitleinfo.visitStartDate, number)
|
|
|
+ var time = this.addOneDay(this.grouptitleinfo.visitStartDate, number - 1)
|
|
|
this.tableData[index].date = time;
|
|
|
} else {
|
|
|
this.tableData[index].date = '';
|
|
@@ -3488,6 +3508,9 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
addOneDay(dateString, number) {
|
|
|
+ if (!dateString) {
|
|
|
+ return "";
|
|
|
+ }
|
|
|
let date = new Date(dateString);
|
|
|
date.setDate(date.getDate() + number);
|
|
|
let year = date.getFullYear();
|