|  | @@ -3,15 +3,17 @@
 | 
	
		
			
				|  |  |        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="40px">
 | 
	
		
			
				|  |  |          <el-form-item label="日期">
 | 
	
		
			
				|  |  |            <el-date-picker
 | 
	
		
			
				|  |  | -            v-model="queryParams.performStartDate"
 | 
	
		
			
				|  |  | -            type="date"
 | 
	
		
			
				|  |  | +          style="width: 230px;"
 | 
	
		
			
				|  |  | +            v-model="selectTime"
 | 
	
		
			
				|  |  | +            type="daterange"
 | 
	
		
			
				|  |  | +            @change="dataChange"
 | 
	
		
			
				|  |  |              value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |              placeholder="日期">
 | 
	
		
			
				|  |  |            </el-date-picker>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="分销商类型" label-width="120px">
 | 
	
		
			
				|  |  |            <el-select
 | 
	
		
			
				|  |  | -            v-model="queryParams.type"
 | 
	
		
			
				|  |  | +            v-model="queryParams.personType"
 | 
	
		
			
				|  |  |              placeholder="分销商类型"
 | 
	
		
			
				|  |  |              @change="getList"
 | 
	
		
			
				|  |  |              clearable
 | 
	
	
		
			
				|  | @@ -50,52 +52,63 @@
 | 
	
		
			
				|  |  |          <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">
 | 
	
		
			
				|  |  | +        <el-table-column label="分销商类型" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.performDate }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.personType }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="场次" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column label="分销商名称" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.performTimeStart }} -- {{ scope.row.performTimeEnd }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.personName }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="销售量" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column label="票种(元)" align="center">
 | 
	
		
			
				|  |  | +          
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column label="结算价(元)" align="center">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.settlementAmount }}</span>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column label="人次" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.saleTotal?scope.row.saleTotal+'张' : '-' }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.personNext }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="核销量" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column label="收入" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.usedTotal?scope.row.usedTotal+'张' : '-' }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.salePriceAmount }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="核销率" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column label="收入占比" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.usedRate?scope.row.usedRate+'%' : '-' }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.incomeRatio?scope.row.incomeRatio+'%' : '-' }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="核销上座率" align="center">
 | 
	
		
			
				|  |  | +        <el-table-column label="备注" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span>{{ scope.row.occupancyRate?scope.row.occupancyRate+'%' : '-' }}</span>
 | 
	
		
			
				|  |  | +            <span>{{ scope.row.remark }}</span>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  |        </el-table>
 | 
	
		
			
				|  |  | +      <ul class="total-remark" v-if="responseData.saleTotalRemarkOnColor">
 | 
	
		
			
				|  |  | +        <li><span class="til">合计:</span><div class="html-wap" v-html="responseData.saleTotalRemarkOnColor||'-'"></div> </li>
 | 
	
		
			
				|  |  | +      </ul>
 | 
	
		
			
				|  |  |    
 | 
	
		
			
				|  |  | -      <pagination
 | 
	
		
			
				|  |  | +      <!-- <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/statisticalReport/statistics'
 | 
	
		
			
				|  |  | +  import { marketPersonSaleCount, downMarketPersonSaleCount } from '@/api/statisticalReport/statistics'
 | 
	
		
			
				|  |  |    import { exportExcel } from '@/utils/exportexcel'
 | 
	
		
			
				|  |  |    import { seatPricePageList } from '@/api/distribution/ticketMr'
 | 
	
		
			
				|  |  |    import moment from "moment"
 | 
	
	
		
			
				|  | @@ -127,8 +140,8 @@
 | 
	
		
			
				|  |  |          dateRange: [],
 | 
	
		
			
				|  |  |          // 查询参数
 | 
	
		
			
				|  |  |          queryParams: {
 | 
	
		
			
				|  |  | -          pageNum: 1,
 | 
	
		
			
				|  |  | -          pageSize: 10,
 | 
	
		
			
				|  |  | +          // pageNum: 1,
 | 
	
		
			
				|  |  | +          // pageSize: 10,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          visibleStatus: false,
 | 
	
		
			
				|  |  |          newObj: {},
 | 
	
	
		
			
				|  | @@ -137,10 +150,12 @@
 | 
	
		
			
				|  |  |          tableData: {},
 | 
	
		
			
				|  |  |          ticketList: [],
 | 
	
		
			
				|  |  |          seatList: [],
 | 
	
		
			
				|  |  | +        selectTime:'',
 | 
	
		
			
				|  |  | +        responseData:{},
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      created() {
 | 
	
		
			
				|  |  | -      this.$set(this.queryParams,'performStartDate',moment().format("yyyy-MM-DD"))
 | 
	
		
			
				|  |  | +      this.$set(this,'selectTime',[moment().format("yyyy-MM-DD"),moment().format("yyyy-MM-DD")]);
 | 
	
		
			
				|  |  |        this.getList();
 | 
	
		
			
				|  |  |        this.ticketListApi();
 | 
	
		
			
				|  |  |      },
 | 
	
	
		
			
				|  | @@ -148,18 +163,22 @@
 | 
	
		
			
				|  |  |        /** 查询列表 */
 | 
	
		
			
				|  |  |        getList() {
 | 
	
		
			
				|  |  |          this.loading = true;
 | 
	
		
			
				|  |  | -        if(this.queryParams.time){
 | 
	
		
			
				|  |  | -          this.queryParams.performStartDate = this.queryParams.time[0];
 | 
	
		
			
				|  |  | -          this.queryParams.performEndDate = this.queryParams.time[1];
 | 
	
		
			
				|  |  | +        if(this.selectTime){
 | 
	
		
			
				|  |  | +          this.queryParams.beginDate = this.selectTime[0];
 | 
	
		
			
				|  |  | +          this.queryParams.endDate = this.selectTime[1];
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        performTimeCount(this.addDateRange(this.queryParams, this.dateRange))
 | 
	
		
			
				|  |  | +        marketPersonSaleCount(this.addDateRange(this.queryParams, this.dateRange))
 | 
	
		
			
				|  |  |          .then(response => {
 | 
	
		
			
				|  |  | -            this.dataList = response.data.rows;
 | 
	
		
			
				|  |  | +            this.responseData = response.data;
 | 
	
		
			
				|  |  | +            this.dataList = response.data.dataList||[];
 | 
	
		
			
				|  |  |              this.total = response.data.total;
 | 
	
		
			
				|  |  |              this.loading = false;
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |          );
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | +      dataChange(data) {
 | 
	
		
			
				|  |  | +        this.getList()
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  |        /** 票务列表查询 */
 | 
	
		
			
				|  |  |        ticketListApi() {
 | 
	
		
			
				|  |  |          this.ticketList = []
 | 
	
	
		
			
				|  | @@ -200,7 +219,7 @@
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        /** 搜索按钮操作 */
 | 
	
		
			
				|  |  |        handleQuery() {
 | 
	
		
			
				|  |  | -        this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | +        // this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  |          this.getList();
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        /** 重置按钮操作 */
 | 
	
	
		
			
				|  | @@ -212,8 +231,9 @@
 | 
	
		
			
				|  |  |          this.$set(this.queryParams, 'performEndDate', '');
 | 
	
		
			
				|  |  |          this.$set(this.queryParams, 'goodsId', '');
 | 
	
		
			
				|  |  |          this.$set(this.queryParams, 'seatTypeId', '');
 | 
	
		
			
				|  |  | -        this.$set(this.queryParams, 'type', '');
 | 
	
		
			
				|  |  | -        this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | +        this.$set(this.queryParams, 'personType', '');
 | 
	
		
			
				|  |  | +        // this.queryParams.pageNum = 1;
 | 
	
		
			
				|  |  | +        this.$set(this,'selectTime',[moment().format("yyyy-MM-DD"),moment().format("yyyy-MM-DD")]);
 | 
	
		
			
				|  |  |          this.handleQuery();
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        /**
 | 
	
	
		
			
				|  | @@ -236,9 +256,9 @@
 | 
	
		
			
				|  |  |                  postMap[key] = this.queryParams[key]
 | 
	
		
			
				|  |  |                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            downTimeCountListXls(postMap)
 | 
	
		
			
				|  |  | +            downMarketPersonSaleCount(postMap)
 | 
	
		
			
				|  |  |                .then((res) => {
 | 
	
		
			
				|  |  | -                exportExcel(res, '场次销售分析', '.xlsx');
 | 
	
		
			
				|  |  | +                exportExcel(res, '分销明细', '.xlsx');
 | 
	
		
			
				|  |  |                  this.handleExportLoading = false;
 | 
	
		
			
				|  |  |                })
 | 
	
		
			
				|  |  |                .catch(() => {
 | 
	
	
		
			
				|  | @@ -252,4 +272,25 @@
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    };
 | 
	
		
			
				|  |  |    </script>
 | 
	
		
			
				|  |  | -  
 | 
	
		
			
				|  |  | +  <style lang="scss" scoped>
 | 
	
		
			
				|  |  | +  .total-remark{
 | 
	
		
			
				|  |  | +    margin-top: 24px;
 | 
	
		
			
				|  |  | +    margin-bottom: 24px;
 | 
	
		
			
				|  |  | +    padding-left: 0;
 | 
	
		
			
				|  |  | +    li{
 | 
	
		
			
				|  |  | +      list-style: none;
 | 
	
		
			
				|  |  | +      display: flex;
 | 
	
		
			
				|  |  | +      ::v-deep .html-wap{
 | 
	
		
			
				|  |  | +        span{
 | 
	
		
			
				|  |  | +          color: blue;
 | 
	
		
			
				|  |  | +          margin: 0 5px;
 | 
	
		
			
				|  |  | +          display: inline-block;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    .til{
 | 
	
		
			
				|  |  | +      font-weight: bold;
 | 
	
		
			
				|  |  | +      color: #333;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  </style>
 |