|  | @@ -1,270 +1,300 @@
 | 
	
		
			
				|  |  |  <template>
 | 
	
		
			
				|  |  | -    <div class="app-container">
 | 
	
		
			
				|  |  | -      <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
 | 
	
		
			
				|  |  | -        <el-form-item label="票务管理:">
 | 
	
		
			
				|  |  | -          <el-select
 | 
	
		
			
				|  |  | -            v-model="queryParams.goodsId"
 | 
	
		
			
				|  |  | -            placeholder="票务管理"
 | 
	
		
			
				|  |  | -            clearable
 | 
	
		
			
				|  |  | -            @change="goodsChangeEven"
 | 
	
		
			
				|  |  | -            style="width: 100%;"
 | 
	
		
			
				|  |  | -          >
 | 
	
		
			
				|  |  | -            <el-option
 | 
	
		
			
				|  |  | -              v-for="dict in ticketList"
 | 
	
		
			
				|  |  | -              :key="dict.id"
 | 
	
		
			
				|  |  | -              :label="dict.goodsName"
 | 
	
		
			
				|  |  | -              :value="dict.goodsId"
 | 
	
		
			
				|  |  | -            />
 | 
	
		
			
				|  |  | -          </el-select>
 | 
	
		
			
				|  |  | -        </el-form-item>
 | 
	
		
			
				|  |  | -        <el-form-item label="座位类型:">
 | 
	
		
			
				|  |  | -          <el-select
 | 
	
		
			
				|  |  | -            v-model="queryParams.seatTypeId"
 | 
	
		
			
				|  |  | -            placeholder="座位类型"
 | 
	
		
			
				|  |  | -            clearable
 | 
	
		
			
				|  |  | -            style="width: 100%;"
 | 
	
		
			
				|  |  | -          >
 | 
	
		
			
				|  |  | -            <el-option
 | 
	
		
			
				|  |  | -              v-for="dict in seatList"
 | 
	
		
			
				|  |  | -              :key="dict.seatTypeId"
 | 
	
		
			
				|  |  | -              :label="dict.seatTypeName"
 | 
	
		
			
				|  |  | -              :value="dict.seatTypeId"
 | 
	
		
			
				|  |  | -            />
 | 
	
		
			
				|  |  | -          </el-select>
 | 
	
		
			
				|  |  | -        </el-form-item>
 | 
	
		
			
				|  |  | -        <el-form-item label="场次日期">
 | 
	
		
			
				|  |  | -          <el-date-picker
 | 
	
		
			
				|  |  | -            v-model="queryParams.time"
 | 
	
		
			
				|  |  | -            type="daterange"
 | 
	
		
			
				|  |  | -            value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  | -            range-separator="至"
 | 
	
		
			
				|  |  | -            start-placeholder="开始日期"
 | 
	
		
			
				|  |  | -            end-placeholder="结束日期">
 | 
	
		
			
				|  |  | -          </el-date-picker>
 | 
	
		
			
				|  |  | -        </el-form-item>
 | 
	
		
			
				|  |  | -        <el-form-item>
 | 
	
		
			
				|  |  | -          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
 | 
	
		
			
				|  |  | -          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
 | 
	
		
			
				|  |  | -        </el-form-item>
 | 
	
		
			
				|  |  | -      </el-form>
 | 
	
		
			
				|  |  | -      <el-row :gutter="10" class="mb8"  style="margin-left: 0; margin-top: 10px">
 | 
	
		
			
				|  |  | -        <el-button
 | 
	
		
			
				|  |  | -          type="primary"
 | 
	
		
			
				|  |  | -          size="mini"
 | 
	
		
			
				|  |  | -          icon="el-icon-download"
 | 
	
		
			
				|  |  | -          :disabled="tableData.length === 0"
 | 
	
		
			
				|  |  | -          v-hasPermi="['statisticalReport:sessionInventory:downloadExcel']"
 | 
	
		
			
				|  |  | -          @click="handleExport"
 | 
	
		
			
				|  |  | -          v-loading.fullscreen.lock="handleExportLoading"
 | 
	
		
			
				|  |  | -          element-loading-text="正在拼命生成数据中..."
 | 
	
		
			
				|  |  | -          element-loading-spinner="el-icon-loading"
 | 
	
		
			
				|  |  | -          element-loading-background="rgba(0, 0, 0, 0.5)"
 | 
	
		
			
				|  |  | -        >导出excel</el-button>
 | 
	
		
			
				|  |  | -        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
 | 
	
		
			
				|  |  | -      </el-row>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -      <el-table ref="tables" v-loading="loading" :data="dataList" border>
 | 
	
		
			
				|  |  | -        <el-table-column label="序号" align="center" type="index" width="60"></el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="剧目名称" align="center" prop="performName" />
 | 
	
		
			
				|  |  | -        <el-table-column label="票务名称" align="center" prop="goodsName" />
 | 
	
		
			
				|  |  | -        <el-table-column label="座位类型" align="center" prop="seatTypeName" />
 | 
	
		
			
				|  |  | -        <el-table-column label="场次日期" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.performDate }}</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +  <div class="app-container">
 | 
	
		
			
				|  |  | +    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
 | 
	
		
			
				|  |  | +      <el-form-item label="票务管理:">
 | 
	
		
			
				|  |  | +        <el-select
 | 
	
		
			
				|  |  | +          v-model="queryParams.goodsId"
 | 
	
		
			
				|  |  | +          placeholder="票务管理"
 | 
	
		
			
				|  |  | +          clearable
 | 
	
		
			
				|  |  | +          @change="goodsChangeEven"
 | 
	
		
			
				|  |  | +          style="width: 100%;"
 | 
	
		
			
				|  |  | +        >
 | 
	
		
			
				|  |  | +          <el-option
 | 
	
		
			
				|  |  | +            v-for="dict in ticketList"
 | 
	
		
			
				|  |  | +            :key="dict.id"
 | 
	
		
			
				|  |  | +            :label="dict.goodsName"
 | 
	
		
			
				|  |  | +            :value="dict.goodsId"
 | 
	
		
			
				|  |  | +          />
 | 
	
		
			
				|  |  | +        </el-select>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +      <el-form-item label="座位类型:">
 | 
	
		
			
				|  |  | +        <el-select
 | 
	
		
			
				|  |  | +          v-model="queryParams.seatTypeId"
 | 
	
		
			
				|  |  | +          placeholder="座位类型"
 | 
	
		
			
				|  |  | +          clearable
 | 
	
		
			
				|  |  | +          style="width: 100%;"
 | 
	
		
			
				|  |  | +        >
 | 
	
		
			
				|  |  | +          <el-option
 | 
	
		
			
				|  |  | +            v-for="dict in seatList"
 | 
	
		
			
				|  |  | +            :key="dict.seatTypeId"
 | 
	
		
			
				|  |  | +            :label="dict.seatTypeName"
 | 
	
		
			
				|  |  | +            :value="dict.seatTypeId"
 | 
	
		
			
				|  |  | +          />
 | 
	
		
			
				|  |  | +        </el-select>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +      <el-form-item label="场次日期">
 | 
	
		
			
				|  |  | +        <el-date-picker
 | 
	
		
			
				|  |  | +          v-model="queryParams.time"
 | 
	
		
			
				|  |  | +          type="daterange"
 | 
	
		
			
				|  |  | +          value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  | +          range-separator="至"
 | 
	
		
			
				|  |  | +          start-placeholder="开始日期"
 | 
	
		
			
				|  |  | +          end-placeholder="结束日期">
 | 
	
		
			
				|  |  | +        </el-date-picker>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +      <el-form-item>
 | 
	
		
			
				|  |  | +        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
 | 
	
		
			
				|  |  | +        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +    </el-form>
 | 
	
		
			
				|  |  | +    <el-row :gutter="10" class="mb8"  style="margin-left: 0; margin-top: 10px">
 | 
	
		
			
				|  |  | +      <el-button
 | 
	
		
			
				|  |  | +        type="primary"
 | 
	
		
			
				|  |  | +        size="mini"
 | 
	
		
			
				|  |  | +        icon="el-icon-download"
 | 
	
		
			
				|  |  | +        :disabled="tableData.length === 0"
 | 
	
		
			
				|  |  | +        v-hasPermi="['statisticalReport:seatInventory:downloadExcel']"
 | 
	
		
			
				|  |  | +        @click="handleExport"
 | 
	
		
			
				|  |  | +        v-loading.fullscreen.lock="handleExportLoading"
 | 
	
		
			
				|  |  | +        element-loading-text="正在拼命生成数据中..."
 | 
	
		
			
				|  |  | +        element-loading-spinner="el-icon-loading"
 | 
	
		
			
				|  |  | +        element-loading-background="rgba(0, 0, 0, 0.5)"
 | 
	
		
			
				|  |  | +      >导出excel</el-button>
 | 
	
		
			
				|  |  | +      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
 | 
	
		
			
				|  |  | +    </el-row>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <el-table ref="tables" v-loading="loading" :data="dataList" border>
 | 
	
		
			
				|  |  | +      <el-table-column label="序号" align="center" type="index" width="60"></el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="剧目名称" align="center" prop="performName" />
 | 
	
		
			
				|  |  | +      <el-table-column label="票务名称" align="center" prop="goodsName" />
 | 
	
		
			
				|  |  | +      <el-table-column label="场次日期" align="center">
 | 
	
		
			
				|  |  | +        <template slot-scope="scope">
 | 
	
		
			
				|  |  | +          <span>{{ scope.row.performDate }}</span>
 | 
	
		
			
				|  |  | +        </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="场次" align="center">
 | 
	
		
			
				|  |  | +        <template slot-scope="scope">
 | 
	
		
			
				|  |  | +          <span>{{ scope.row.performTimeStart }} -- {{ scope.row.performTimeEnd }}</span>
 | 
	
		
			
				|  |  | +        </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="座位类型" align="center" prop="seatTypeName" />
 | 
	
		
			
				|  |  | +      <el-table-column label="座位总数" align="center">
 | 
	
		
			
				|  |  | +        <template slot-scope="scope">
 | 
	
		
			
				|  |  | +          <span>{{ scope.row.total }}张</span>
 | 
	
		
			
				|  |  | +        </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="自营" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province"
 | 
	
		
			
				|  |  | +          label="小程序">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="场次" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.performTimeStart }} -- {{ scope.row.performTimeEnd }}</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province1"
 | 
	
		
			
				|  |  | +          label="团购">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="总库存" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.total }}张</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province2"
 | 
	
		
			
				|  |  | +          label="窗口">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="已售数量" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.saleTotal }}张</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="OTA" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province3"
 | 
	
		
			
				|  |  | +          label="美团">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="已核销数量" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.usedTotal }}张</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province4"
 | 
	
		
			
				|  |  | +          label="携程">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="库存数量" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ (scope.row.total - scope.row.saleTotal) >= 0 ? (scope.row.total - scope.row.saleTotal) : '' }}张</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province5"
 | 
	
		
			
				|  |  | +          label="猫眼">
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -      </el-table>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -      <pagination
 | 
	
		
			
				|  |  | -        v-show="total>0"
 | 
	
		
			
				|  |  | -        :total="total"
 | 
	
		
			
				|  |  | -        :page.sync="queryParams.pageNum"
 | 
	
		
			
				|  |  | -        :limit.sync="queryParams.pageSize"
 | 
	
		
			
				|  |  | -        @pagination="getList"
 | 
	
		
			
				|  |  | -      />
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -    </div>
 | 
	
		
			
				|  |  | -  </template>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -  <script>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -  import { performTimeCount, downTimeCountListXls } from '@/api/statistics'
 | 
	
		
			
				|  |  | -  import { exportExcel } from '@/utils/exportexcel'
 | 
	
		
			
				|  |  | -  import { seatPricePageList } from '@/api/distribution/ticketMr'
 | 
	
		
			
				|  |  | -  export default {
 | 
	
		
			
				|  |  | -    name: "agreement",
 | 
	
		
			
				|  |  | -    dicts: ['agreement_type'],
 | 
	
		
			
				|  |  | -    data() {
 | 
	
		
			
				|  |  | -      return {
 | 
	
		
			
				|  |  | -        // 遮罩层
 | 
	
		
			
				|  |  | -        loading: true,
 | 
	
		
			
				|  |  | -        // 选中数组
 | 
	
		
			
				|  |  | -        ids: [],
 | 
	
		
			
				|  |  | -        // 非单个禁用
 | 
	
		
			
				|  |  | -        single: true,
 | 
	
		
			
				|  |  | -        // 非多个禁用
 | 
	
		
			
				|  |  | -        multiple: true,
 | 
	
		
			
				|  |  | -        // 显示搜索条件
 | 
	
		
			
				|  |  | -        showSearch: true,
 | 
	
		
			
				|  |  | -        // 总条数
 | 
	
		
			
				|  |  | -        total: 0,
 | 
	
		
			
				|  |  | -        // 用户表格数据
 | 
	
		
			
				|  |  | -        dataList: null,
 | 
	
		
			
				|  |  | -        // 弹出层标题
 | 
	
		
			
				|  |  | -        title: "",
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | -        // 是否显示弹出层
 | 
	
		
			
				|  |  | -        open: false,
 | 
	
		
			
				|  |  | -        // 日期范围
 | 
	
		
			
				|  |  | -        dateRange: [],
 | 
	
		
			
				|  |  | -        // 查询参数
 | 
	
		
			
				|  |  | -        queryParams: {
 | 
	
		
			
				|  |  | -          pageNum: 1,
 | 
	
		
			
				|  |  | -          pageSize: 10,
 | 
	
		
			
				|  |  | -        },
 | 
	
		
			
				|  |  | -        visibleStatus: false,
 | 
	
		
			
				|  |  | -        newObj: {},
 | 
	
		
			
				|  |  | -        visibleType: '',
 | 
	
		
			
				|  |  | -        handleExportLoading: false,
 | 
	
		
			
				|  |  | -        tableData: {},
 | 
	
		
			
				|  |  | -        ticketList: [],
 | 
	
		
			
				|  |  | -        seatList: [],
 | 
	
		
			
				|  |  | -      };
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province6"
 | 
	
		
			
				|  |  | +          label="抖音">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column
 | 
	
		
			
				|  |  | +          prop="province7"
 | 
	
		
			
				|  |  | +          label="去哪儿">
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="已售小计" align="center">
 | 
	
		
			
				|  |  | +        <template slot-scope="scope">
 | 
	
		
			
				|  |  | +          <span>{{ (scope.row.total - scope.row.saleTotal) >= 0 ? (scope.row.total - scope.row.saleTotal) : '' }}张</span>
 | 
	
		
			
				|  |  | +        </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +      <el-table-column label="剩余" align="center">
 | 
	
		
			
				|  |  | +        <template slot-scope="scope">
 | 
	
		
			
				|  |  | +          <span>{{ (scope.row.total - scope.row.saleTotal) >= 0 ? (scope.row.total - scope.row.saleTotal) : '' }}张</span>
 | 
	
		
			
				|  |  | +        </template>
 | 
	
		
			
				|  |  | +      </el-table-column>
 | 
	
		
			
				|  |  | +    </el-table>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <pagination
 | 
	
		
			
				|  |  | +      v-show="total>0"
 | 
	
		
			
				|  |  | +      :total="total"
 | 
	
		
			
				|  |  | +      :page.sync="queryParams.pageNum"
 | 
	
		
			
				|  |  | +      :limit.sync="queryParams.pageSize"
 | 
	
		
			
				|  |  | +      @pagination="getList"
 | 
	
		
			
				|  |  | +    />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  </div>
 | 
	
		
			
				|  |  | +</template>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<script>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import { performTimeCount, downTimeCountListXls } from '@/api/statistics'
 | 
	
		
			
				|  |  | +import { exportExcel } from '@/utils/exportexcel'
 | 
	
		
			
				|  |  | +import { seatPricePageList } from '@/api/distribution/ticketMr'
 | 
	
		
			
				|  |  | +export default {
 | 
	
		
			
				|  |  | +  name: "agreement",
 | 
	
		
			
				|  |  | +  dicts: ['agreement_type'],
 | 
	
		
			
				|  |  | +  data() {
 | 
	
		
			
				|  |  | +    return {
 | 
	
		
			
				|  |  | +      // 遮罩层
 | 
	
		
			
				|  |  | +      loading: true,
 | 
	
		
			
				|  |  | +      // 选中数组
 | 
	
		
			
				|  |  | +      ids: [],
 | 
	
		
			
				|  |  | +      // 非单个禁用
 | 
	
		
			
				|  |  | +      single: true,
 | 
	
		
			
				|  |  | +      // 非多个禁用
 | 
	
		
			
				|  |  | +      multiple: true,
 | 
	
		
			
				|  |  | +      // 显示搜索条件
 | 
	
		
			
				|  |  | +      showSearch: true,
 | 
	
		
			
				|  |  | +      // 总条数
 | 
	
		
			
				|  |  | +      total: 0,
 | 
	
		
			
				|  |  | +      // 用户表格数据
 | 
	
		
			
				|  |  | +      dataList: null,
 | 
	
		
			
				|  |  | +      // 弹出层标题
 | 
	
		
			
				|  |  | +      title: "",
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // 是否显示弹出层
 | 
	
		
			
				|  |  | +      open: false,
 | 
	
		
			
				|  |  | +      // 日期范围
 | 
	
		
			
				|  |  | +      dateRange: [],
 | 
	
		
			
				|  |  | +      // 查询参数
 | 
	
		
			
				|  |  | +      queryParams: {
 | 
	
		
			
				|  |  | +        pageNum: 1,
 | 
	
		
			
				|  |  | +        pageSize: 10,
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      visibleStatus: false,
 | 
	
		
			
				|  |  | +      newObj: {},
 | 
	
		
			
				|  |  | +      visibleType: '',
 | 
	
		
			
				|  |  | +      handleExportLoading: false,
 | 
	
		
			
				|  |  | +      tableData: {},
 | 
	
		
			
				|  |  | +      ticketList: [],
 | 
	
		
			
				|  |  | +      seatList: [],
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  created() {
 | 
	
		
			
				|  |  | +    this.getList();
 | 
	
		
			
				|  |  | +    this.ticketListApi();
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  methods: {
 | 
	
		
			
				|  |  | +    /** 查询列表 */
 | 
	
		
			
				|  |  | +    getList() {
 | 
	
		
			
				|  |  | +      this.loading = true;
 | 
	
		
			
				|  |  | +      if(this.queryParams.time){
 | 
	
		
			
				|  |  | +        this.queryParams.performStartDate = this.queryParams.time[0];
 | 
	
		
			
				|  |  | +        this.queryParams.performEndDate = this.queryParams.time[1];
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      performTimeCount(this.addDateRange(this.queryParams, this.dateRange))
 | 
	
		
			
				|  |  | +      .then(response => {
 | 
	
		
			
				|  |  | +          this.dataList = response.data.rows;
 | 
	
		
			
				|  |  | +          this.total = response.data.total;
 | 
	
		
			
				|  |  | +          this.loading = false;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    created() {
 | 
	
		
			
				|  |  | -      this.getList();
 | 
	
		
			
				|  |  | -      this.ticketListApi();
 | 
	
		
			
				|  |  | +    /** 票务列表查询 */
 | 
	
		
			
				|  |  | +    ticketListApi() {
 | 
	
		
			
				|  |  | +      this.ticketList = []
 | 
	
		
			
				|  |  | +      seatPricePageList(this.addDateRange({pageNum: 1, pageSize: 100}))
 | 
	
		
			
				|  |  | +        .then(response => {
 | 
	
		
			
				|  |  | +          let ticketItemList = []
 | 
	
		
			
				|  |  | +          response.data.rows.forEach(item => {
 | 
	
		
			
				|  |  | +            if(ticketItemList.indexOf(item.goodsId) == -1){
 | 
	
		
			
				|  |  | +              this.ticketList.push(item);
 | 
	
		
			
				|  |  | +              ticketItemList.push(item.goodsId);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    methods: {
 | 
	
		
			
				|  |  | -      /** 查询列表 */
 | 
	
		
			
				|  |  | -      getList() {
 | 
	
		
			
				|  |  | -        this.loading = true;
 | 
	
		
			
				|  |  | -        if(this.queryParams.time){
 | 
	
		
			
				|  |  | -          this.queryParams.performStartDate = this.queryParams.time[0];
 | 
	
		
			
				|  |  | -          this.queryParams.performEndDate = this.queryParams.time[1];
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        performTimeCount(this.addDateRange(this.queryParams, this.dateRange))
 | 
	
		
			
				|  |  | +    /** 座位类型列表 */
 | 
	
		
			
				|  |  | +    getSeatTypeList(obj) {
 | 
	
		
			
				|  |  | +      seatPricePageList(this.addDateRange({pageNum: 1, pageSize: 100, goodsId: obj.goodsId}))
 | 
	
		
			
				|  |  |          .then(response => {
 | 
	
		
			
				|  |  | -            this.dataList = response.data.rows;
 | 
	
		
			
				|  |  | -            this.total = response.data.total;
 | 
	
		
			
				|  |  | -            this.loading = false;
 | 
	
		
			
				|  |  | +          let ticketList = []
 | 
	
		
			
				|  |  | +          response.data.rows.forEach(item => {
 | 
	
		
			
				|  |  | +            if(ticketList.indexOf(item.seatTypeId) == -1){
 | 
	
		
			
				|  |  | +              this.seatList.push(item);
 | 
	
		
			
				|  |  | +              ticketList.push(item.seatTypeId);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    // 取消按钮
 | 
	
		
			
				|  |  | +    cancel() {
 | 
	
		
			
				|  |  | +      this.open = false;
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    // 票务改变事件
 | 
	
		
			
				|  |  | +    goodsChangeEven() {
 | 
	
		
			
				|  |  | +      this.seatList = [];
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'seatTypeId', '');
 | 
	
		
			
				|  |  | +      let selectMap = {goodsId: this.queryParams.goodsId}
 | 
	
		
			
				|  |  | +      this.getSeatTypeList(selectMap);
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    /** 搜索按钮操作 */
 | 
	
		
			
				|  |  | +    handleQuery() {
 | 
	
		
			
				|  |  | +      this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | +      this.getList();
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    /** 重置按钮操作 */
 | 
	
		
			
				|  |  | +    resetQuery() {
 | 
	
		
			
				|  |  | +      this.dateRange = [];
 | 
	
		
			
				|  |  | +      this.seatList = [];
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'time', '');
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'performStartDate', '');
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'performEndDate', '');
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'goodsId', '');
 | 
	
		
			
				|  |  | +      this.$set(this.queryParams, 'seatTypeId', '');
 | 
	
		
			
				|  |  | +      this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | +      this.handleQuery();
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 导出报表
 | 
	
		
			
				|  |  | +     * @date 2022-10-24
 | 
	
		
			
				|  |  | +     * @returns {any}
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    handleExport() {
 | 
	
		
			
				|  |  | +      this.$confirm('您确定要导出当前查询的数据吗?', '提示', {
 | 
	
		
			
				|  |  | +        confirmButtonText: '确定 ',
 | 
	
		
			
				|  |  | +        cancelButtonText: '取消 ',
 | 
	
		
			
				|  |  | +        type: 'warning'
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +        .then(() => {
 | 
	
		
			
				|  |  | +          this.handleExportLoading = true;
 | 
	
		
			
				|  |  | +          // const { pageNum, pageSize} = this.params;
 | 
	
		
			
				|  |  | +          let postMap = {}
 | 
	
		
			
				|  |  | +          for (let key in this.queryParams) {
 | 
	
		
			
				|  |  | +            if(key != 'pageNum' && key != 'pageSize'){
 | 
	
		
			
				|  |  | +              postMap[key] = this.queryParams[key]
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  | -        );
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      /** 票务列表查询 */
 | 
	
		
			
				|  |  | -      ticketListApi() {
 | 
	
		
			
				|  |  | -        this.ticketList = []
 | 
	
		
			
				|  |  | -        seatPricePageList(this.addDateRange({pageNum: 1, pageSize: 100}))
 | 
	
		
			
				|  |  | -          .then(response => {
 | 
	
		
			
				|  |  | -            let ticketItemList = []
 | 
	
		
			
				|  |  | -            response.data.rows.forEach(item => {
 | 
	
		
			
				|  |  | -              if(ticketItemList.indexOf(item.goodsId) == -1){
 | 
	
		
			
				|  |  | -                this.ticketList.push(item);
 | 
	
		
			
				|  |  | -                ticketItemList.push(item.goodsId);
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | +          downTimeCountListXls(postMap)
 | 
	
		
			
				|  |  | +            .then((res) => {
 | 
	
		
			
				|  |  | +              exportExcel(res, '场次统计', '.xlsx');
 | 
	
		
			
				|  |  | +              this.handleExportLoading = false;
 | 
	
		
			
				|  |  |              })
 | 
	
		
			
				|  |  | -          });
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      /** 座位类型列表 */
 | 
	
		
			
				|  |  | -      getSeatTypeList(obj) {
 | 
	
		
			
				|  |  | -        seatPricePageList(this.addDateRange({pageNum: 1, pageSize: 100, goodsId: obj.goodsId}))
 | 
	
		
			
				|  |  | -          .then(response => {
 | 
	
		
			
				|  |  | -            let ticketList = []
 | 
	
		
			
				|  |  | -            response.data.rows.forEach(item => {
 | 
	
		
			
				|  |  | -              if(ticketList.indexOf(item.seatTypeId) == -1){
 | 
	
		
			
				|  |  | -                this.seatList.push(item);
 | 
	
		
			
				|  |  | -                ticketList.push(item.seatTypeId);
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | -            })
 | 
	
		
			
				|  |  | -          });
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      // 取消按钮
 | 
	
		
			
				|  |  | -      cancel() {
 | 
	
		
			
				|  |  | -        this.open = false;
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      // 票务改变事件
 | 
	
		
			
				|  |  | -      goodsChangeEven() {
 | 
	
		
			
				|  |  | -        this.seatList = [];
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'seatTypeId', '');
 | 
	
		
			
				|  |  | -        let selectMap = {goodsId: this.queryParams.goodsId}
 | 
	
		
			
				|  |  | -        this.getSeatTypeList(selectMap);
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      /** 搜索按钮操作 */
 | 
	
		
			
				|  |  | -      handleQuery() {
 | 
	
		
			
				|  |  | -        this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | -        this.getList();
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      /** 重置按钮操作 */
 | 
	
		
			
				|  |  | -      resetQuery() {
 | 
	
		
			
				|  |  | -        this.dateRange = [];
 | 
	
		
			
				|  |  | -        this.seatList = [];
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'time', '');
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'performStartDate', '');
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'performEndDate', '');
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'goodsId', '');
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'seatTypeId', '');
 | 
	
		
			
				|  |  | -        this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | -        this.handleQuery();
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -      /**
 | 
	
		
			
				|  |  | -       * 导出报表
 | 
	
		
			
				|  |  | -       * @date 2022-10-24
 | 
	
		
			
				|  |  | -       * @returns {any}
 | 
	
		
			
				|  |  | -       */
 | 
	
		
			
				|  |  | -      handleExport() {
 | 
	
		
			
				|  |  | -        this.$confirm('您确定要导出当前查询的数据吗?', '提示', {
 | 
	
		
			
				|  |  | -          confirmButtonText: '确定 ',
 | 
	
		
			
				|  |  | -          cancelButtonText: '取消 ',
 | 
	
		
			
				|  |  | -          type: 'warning'
 | 
	
		
			
				|  |  | +            .catch(() => {
 | 
	
		
			
				|  |  | +              this.handleExportLoading = false;
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | -          .then(() => {
 | 
	
		
			
				|  |  | -            this.handleExportLoading = true;
 | 
	
		
			
				|  |  | -            // const { pageNum, pageSize} = this.params;
 | 
	
		
			
				|  |  | -            let postMap = {}
 | 
	
		
			
				|  |  | -            for (let key in this.queryParams) {
 | 
	
		
			
				|  |  | -              if(key != 'pageNum' && key != 'pageSize'){
 | 
	
		
			
				|  |  | -                postMap[key] = this.queryParams[key]
 | 
	
		
			
				|  |  | -              }
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            downTimeCountListXls(postMap)
 | 
	
		
			
				|  |  | -              .then((res) => {
 | 
	
		
			
				|  |  | -                exportExcel(res, '场次统计', '.xlsx');
 | 
	
		
			
				|  |  | -                this.handleExportLoading = false;
 | 
	
		
			
				|  |  | -              })
 | 
	
		
			
				|  |  | -              .catch(() => {
 | 
	
		
			
				|  |  | -                this.handleExportLoading = false;
 | 
	
		
			
				|  |  | -              });
 | 
	
		
			
				|  |  | -          })
 | 
	
		
			
				|  |  | -          .catch(() => {
 | 
	
		
			
				|  |  | -            this.$message.info('您已取消导出!');
 | 
	
		
			
				|  |  | -          });
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -  };
 | 
	
		
			
				|  |  | -  </script>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | +        .catch(() => {
 | 
	
		
			
				|  |  | +          this.$message.info('您已取消导出!');
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +</script>
 |