浏览代码

1. 完善

MONSTER-ygh 1 年之前
父节点
当前提交
de02b5b086

+ 22 - 3
src/views/officesale/ticketingSales.vue

@@ -72,10 +72,19 @@
       </el-form>
       <div class="seat-tool-box">
         <span class="demonstration">座位大小</span>
-        <div>
+        <div class="seat-tool-box-slider">
             <el-slider v-model="scaleNum" :min="30" :max="100"></el-slider>
         </div>
-        
+        <div style="display: flex;margin-left: 20px;" v-if="seatMapList&&JSON.stringify(seatMapList) != '{}'">
+            <div>各类型座位的剩余数量:</div>
+            <div
+            :key="index" 
+            v-for="(item,index) in seatTypeList"
+            style="margin-left: 10px;align-items: center;"
+            >
+                <span :style="{color: item.color?item.color:'none'}">{{item.name ? (item.name+'(剩余:'+ (item.num||0) +')') : '暂未命名'}}</span>
+            </div>
+        </div>
       </div>
       <div class="seat-box" :style="{'--scaleNum': scaleNum/100}">
         <!-- 选择座位  -->
@@ -349,10 +358,19 @@
             if(list && list.length > 0) {
                 let listCopy = {}
                 let lisyCopy1 = {}
+                let listNum = JSON.parse(JSON.stringify(this.seatTypeList))
+                listNum.forEach((item,index)=>{
+                    listNum[index]['num'] = 0 
+                })
                 list.forEach(item => {
                     item.isDisabled = (item.occupyStatus != null && (item.occupyStatus == 0 || item.occupyStatus == 1) ? true : false); // 座位是否已被选择
                     item.isSelect = this.setIsSelect(item);
                     if(item.rowNo){
+                        listNum.forEach((item1,index)=>{
+                            if(item1.id == item.seatTypeId && item.status ==1) {
+                                listNum[index]['num'] = listNum[index]['num'] + 1 
+                            }
+                        })
                         if(listCopy['my'+item.rowNo]){
                             listCopy['my'+item.rowNo].push(item)
                         }else {
@@ -360,6 +378,7 @@
                         }
                     }
                 })
+                this.seatTypeList = JSON.parse(JSON.stringify(listNum))
                 let width = 0
                 let flog = 0
                 let seatMapListKey = []
@@ -629,7 +648,7 @@
         flex-shrink: 0;
         font-size: 12px;
     }
-    >div {
+    .seat-tool-box-slider {
         width: 100px;
         margin-left: 10px;
     }

+ 25 - 0
src/views/order/groupBuyingMr/index.vue

@@ -185,6 +185,31 @@
           <span>{{statusList[scope.row.status]}}</span>
         </template>
       </el-table-column>
+      <el-table-column label="已核销票数" align="center" prop="usedTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.usedTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="已核销金额" align="center" prop="usedPriceTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.usedPriceTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="退票数量" align="center" prop="refundTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.refundTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="退票金额" align="center" prop="refundPriceTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.refundPriceTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="开票时间" align="center" prop="invoiceTime">
+        <template slot-scope="scope">
+          <span>{{ scope.row.invoiceTime }}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="是否成功开票" align="center">
         <template slot-scope="scope">
           <el-tag type="danger" v-if="scope.row.ifSuccessInvoice  == '0'">否</el-tag>

+ 20 - 0
src/views/order/orderMr/index.vue

@@ -232,6 +232,26 @@
           <span>{{ scope.row.usedTotal }}</span>
         </template>
       </el-table-column>
+      <el-table-column label="已核销金额" align="center" prop="usedPriceTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.usedPriceTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="退票数量" align="center" prop="refundTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.refundTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="退票金额" align="center" prop="refundPriceTotal">
+        <template slot-scope="scope">
+          <span>{{ scope.row.refundPriceTotal }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="开票时间" align="center" prop="invoiceTime">
+        <template slot-scope="scope">
+          <span>{{ scope.row.invoiceTime }}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="是否成功开票" align="center">
         <template slot-scope="scope">
           <el-tag type="danger" v-if="scope.row.ifSuccessInvoice  == '0'">否</el-tag>

+ 53 - 14
src/views/order/viewers/index.vue

@@ -39,12 +39,29 @@
           end-placeholder="结束日期">
         </el-date-picker>
       </el-form-item>
-      <el-form-item label="场次时间">
-        <el-date-picker style="width: 230px;" v-model="queryParams.performDate" @change="pagePerformTimeListFun"
-          type="date" value-format="yyyy-MM-dd" placeholder="选择日期">
+      <el-form-item label="场次时间" label-width="70px">
+        <el-date-picker
+          style="width: 250px;"
+          v-model="queryParams.performDate"
+          @change="pagePerformTimeListFun"
+          type="daterange"
+          value-format="yyyy-MM-dd"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期">
         </el-date-picker>
       </el-form-item>
-      <el-form-item label="场次">
+      <!-- <el-form-item label="场次时间">
+        <el-date-picker 
+        style="width: 230px;" 
+        v-model="queryParams.performDate" 
+        @change="pagePerformTimeListFun"
+        type="date" 
+        value-format="yyyy-MM-dd" 
+        placeholder="选择日期">
+        </el-date-picker>
+      </el-form-item> -->
+      <el-form-item label="场次" v-if="!multiPerformDate">
         <el-select v-model="queryParams.performTimeId" placeholder="场次" clearable style="width: 100%">
           <el-option 
           v-for="dict in pagePerformTimeList" 
@@ -370,12 +387,14 @@ export default {
       refundSubmitSuccess:[], // 成功条数
       refundSubmitError: [], // 失败条数
       refundSubmitErrorList: [], //
+      multiPerformDate:false,
     };
   },
   created() {
     //this.$set(this.queryParams,'performDate',[moment().format("yyyy-MM-DD"),moment().format("yyyy-MM-DD")])
     this.getSeatTypeListFun()
-    this.$set(this.queryParams,'performDate',moment().format("yyyy-MM-DD"))
+    //this.$set(this.queryParams,'performDate',moment().format("yyyy-MM-DD"))
+    this.$set(this.queryParams,'performDate',[moment().format("yyyy-MM-DD"),moment().format("yyyy-MM-DD")])
     this.pagePerformTimeListFun(this.queryParams.performDate)
     this.getList();
   },
@@ -383,8 +402,13 @@ export default {
     /** 查询列表 */
     getList() {
       this.loading = true;
-      
-      pageList(this.addDateRange(this.queryParams))
+      let params = {...this.addDateRange(this.queryParams, this.dateRange)};
+      if(params.performDate&&params.performDate.length==2){
+        params.performDateStart = params.performDate[0];
+        params.performDateEnd = params.performDate[1];
+      }
+      delete params.performDate;
+      pageList(this.addDateRange(params))
         .then(response => {
           this.dataList = response.data.rows;
           this.total = response.data.total;
@@ -454,21 +478,27 @@ export default {
       this.$refs["detailsDia"].openDialog("详情", row, type);
     },
     async pagePerformTimeListFun(value) {
+      // console.log('value',value);
       try {
         this.pagePerformTimeList = []
-        this.$set(this.queryParams, 'performTimeId', null)
-        if (!value) {
-
+        this.$set(this.queryParams,'performTimeId',null)
+        if(!value){
+          return
+        }
+        if(value.length==2&&value[0]==value[1]){
+          this.multiPerformDate = false
+        }else{
+          this.multiPerformDate = true
           return
         }
-        let { data, code } = await pagePerformTimeList({
-          performDate: value,
+        let { data,code } = await pagePerformTimeList({
+          performDate: value[0],
           pageNum: 1,
           pageSize: 999
         })
         this.pagePerformTimeList = [].concat(data.rows)
       } catch (error) {
-
+        
       }
     },
     /**
@@ -510,9 +540,18 @@ export default {
             this.queryParams.payEndTime = null
             
           }
+
+          if(this.queryParams.performDate){
+            this.queryParams.performDateStart   = this.queryParams.performDate[0];
+            this.queryParams.performDateEnd = this.queryParams.performDate[1];
+          }else {
+            this.queryParams.performDateStart   = null
+            this.queryParams.performDateEnd = null
+          }
+
           let params = JSON.parse(JSON.stringify(this.queryParams))
           for (let key in params) {
-            if(key != 'pageNum' && key != 'pageSize' && key != 'time' && key != 'createTime' && key != 'payTime'){
+            if(key != 'pageNum' && key != 'pageSize' && key != 'time' && key != 'createTime' && key != 'payTime' && key != 'performDate'){
               postMap[key] = params[key]
             }
           }

+ 67 - 29
src/views/team/applicationMr/dialog/addAndEdit.vue

@@ -16,14 +16,25 @@
     :close-on-click-modal="false"
     @close="cancel"
   >
-    <div class="dialog">
+    <div 
+    class="dialog" 
+    v-loading="loading1"
+    element-loading-text="拼命加载中..."
+    element-loading-spinner="el-icon-loading"
+    element-loading-background="rgba(0, 0, 0, 0.8)"
+    >
       <el-form :model="form" ref="form" size="mini" :rules="rules" label-width="120px">
         <el-form-item label="选择团队:" prop="teamId">
           <el-select
             v-model="form.teamId"
-            placeholder="选择团队"
+            placeholder="请输入关键词搜索再选择"
             clearable
+            filterable
+            remote
+            reserve-keyword
+            :remote-method="teamPageListApi"
             @change="teamChange"
+            :loading="teamIdLoading"
             style="width: 100%;"
           >
             <el-option
@@ -186,8 +197,8 @@
       <el-button
         type="primary"
         @click="submitForm"
-        v-loading.fullscreen.lock="loading"
-        element-loading-text="提交中..."
+        v-loading="loading"
+        element-loading-text="拼命加载中..."
         element-loading-spinner="el-icon-loading"
         element-loading-background="rgba(0, 0, 0, 0.8)"
       >
@@ -226,6 +237,7 @@ export default {
       activeName: '01',
       open: false,
       loading: false,
+      loading1: false,
       uploadLoading: false,
       form: {
         id: undefined,
@@ -254,7 +266,8 @@ export default {
       theatreList: [],
       teamList: [],
       sessionList: [],
-      performTimeList: []
+      performTimeList: [],
+      teamIdLoading: false,
     };
   },
   methods: {
@@ -281,30 +294,41 @@ export default {
       }
     },
     /** 获取详情 */
-    getSelectByIdApi(row) {
-      const id = row.id
-      getSelectById(id).then(response => {
-        const obj = response.data;
-        this.$nextTick(() => {
-          this.$set(this.form, 'id', obj.id);
-          this.$set(this.form, 'goodsId', obj.goodsId);
-          this.$set(this.form, 'seatTypeId', obj.seatTypeId);
-          this.$set(this.form, 'performId', obj.performId);
-          this.$set(this.form, 'originalSalePrice', obj.originalSalePrice);
-          this.$set(this.form, 'salePrice', obj.salePrice);
-          this.$set(this.form, 'brokeragePrice', obj.brokeragePrice);
-
-          this.ticketListApi();
-          this.getSeatTypeList({goodsId: this.form.goodsId, performId: this.form.performId});
-        });
-      });
+    async getSelectByIdApi(row) {
+      try {
+        const id = row.id
+        this.loading1 = true
+        let response = await getSelectById(id)
+        let obj = response.data;
+        this.$set(this,'form',{
+          ...obj,
+          viewerList: obj.viewersList,
+          applyId: obj.id?obj.id:null
+        })
+        //this.ticketListApi();
+        //this.getSeatTypeList({goodsId: this.form.goodsId, performId: this.form.performId});
+        await this.merchantPageList(this.form.theatreId) // 获取演出厅
+        await this.selectRegionFun() // 获取票务管理
+        await this.getPerformTimeList() // 预约场次列表
+        this.setGoodsChangeEven(this.form.goodsId) // 座位类型
+        this.loading1 = false
+      } catch (error) {
+        console.error("error====",error)
+        this.loading1 = false
+        this.open = false
+      }
+      
     },
     /** 团队列表查询 */
-    teamPageListApi() {
-      teamPageList(this.addDateRange({pageNum: 1, pageSize: 100}))
+    teamPageListApi(key) {
+      this.teamIdLoading = true
+      teamPageList(this.addDateRange({pageNum: 1, pageSize: 900,name:key}))
         .then(response => {
           this.teamList = response.data.rows;
-        });
+          this.teamIdLoading = false
+        }).catch(()=>{
+          this.teamIdLoading = true
+        })
     },
     /** 场馆列表查询 */
     getList(name) {
@@ -488,10 +512,10 @@ export default {
       this.ticketList = [] // 票务
       this.seatList = [] // 座位类型
 
-      this.selectRegionFun()
+      this.selectRegionFun() // 获取票务管理
     },
-     // 票务改变事件
-     goodsChangeEven(id) {
+    // 票务改变事件
+    goodsChangeEven(id) {
       let list = []
       this.ticketList.forEach(item => {
         if(item.id == id){ // item.goodsId == id
@@ -517,6 +541,17 @@ export default {
       })
       //this.queryPriceApi();
     },
+    setGoodsChangeEven(id) {
+      let list = []
+      this.ticketList.forEach(item => {
+        if(item.id == id){ 
+          list = item.regionList
+        }
+      })
+      this.seatList = [];
+      this.seatList = [].concat(list)
+    },
+
     /**
      * 保存
      * @date 2023-11-22
@@ -527,7 +562,9 @@ export default {
         if (valid) {
           try {
             this.loading = true;
-            const { code } = await saveAndEdit({ ...this.form });
+            let params = JSON.parse(JSON.stringify(this.form))
+            delete params.viewersList
+            const { code } = await saveAndEdit({ ...params });
             if (code === 200) {
               this.$message.success("操作成功!");
               this.$emit("getList");
@@ -621,6 +658,7 @@ export default {
         
       }
     },
+    // 获取票务管理
     async selectRegionFun(){
       try {
         if(!this.form.teamId||!this.form.auditoriumId||!this.form.performId||!this.form.performTimeId){

+ 17 - 6
src/views/team/applicationMr/index.vue

@@ -101,12 +101,13 @@
       <el-table-column label="审核人" align="center" prop="checkorName" />
       <el-table-column label="操作" align="center" fixed="right" width="150" class-name="small-padding fixed-width">
         <template slot-scope="scope">
-<!--          <el-button-->
-<!--            size="mini"-->
-<!--            type="text"-->
-<!--            @click="handleUpdate(scope.row)"-->
-<!--            v-hasPermi="['teamTicketMr:teamTicketMr:edit']"-->
-<!--          >修改</el-button>-->
+         <el-button
+            size="mini"
+            type="text"
+            @click="handleUpdate(scope.row)"
+            v-if="name==scope.row.createBy && scope.row.status == 2"
+            v-hasPermi="['applicationMr:applicationMr:edit']"
+          >修改</el-button>
           <el-button
             size="mini"
             type="text"
@@ -188,6 +189,7 @@ import addAndEdit from "./dialog/addAndEdit.vue";
 import applicationDetails from "./dialog/applicationDetails.vue";
 import orderDetails from "./dialog/orderDetails.vue";
 import { ticketPageList } from '@/api/ticketMr/ticketMr'
+import { mapGetters } from 'vuex'
 export default {
   name: "agreement",
   dicts: ['team_type'],
@@ -236,6 +238,11 @@ export default {
       ticketList: []
     };
   },
+  computed: {
+    ...mapGetters([
+      'name',
+    ]),
+  },
   created() {
     this.getList();
     this.ticketListApi();
@@ -292,6 +299,10 @@ export default {
     handleAdd() {
       this.$refs["addAndEdit"].openDialog("新增数据", null);
     },
+    /**  修改  */
+    handleUpdate(row) {
+      this.$refs["addAndEdit"].openDialog("新增数据", {...row});
+    },
     /** 详情审核按钮操作 */
     handleDetails(row, type) {
       this.$refs["appDetails"].openDialog("查看详情", row, type);

+ 25 - 7
src/views/team/teamMr/dialog/addAndEdit.vue

@@ -17,7 +17,7 @@
     @close="cancel"
   >
     <div class="dialog">
-      <el-form :model="form" ref="form" :rules="rules" label-width="120px">
+      <el-form :model="form" ref="form" :rules="rules" label-width="150px">
         <el-form-item label="团队名称:" prop="name">
           <el-input
             v-model="form.name"
@@ -41,18 +41,34 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="负责人:" prop="contact">
+        <el-form-item label="销售员:" prop="salerPerson">
+          <el-input
+            v-model="form.salerPerson"
+            placeholder="销售员"
+            clearable
+            style="width: 100%;"
+          />
+        </el-form-item>
+        <el-form-item label="销售员联系电话:" prop="salerMobile">
+          <el-input
+            v-model="form.salerMobile"
+            placeholder="销售员联系电话"
+            clearable
+            style="width: 100%;"
+          />
+        </el-form-item>
+        <el-form-item label="客户负责人:" prop="contact">
           <el-input
             v-model="form.contact"
-            placeholder="负责人"
+            placeholder="客户负责人"
             clearable
             style="width: 100%;"
           />
         </el-form-item>
-        <el-form-item label="账号/联系电话:" prop="mobile">
+        <el-form-item label="客户账号/联系电话:" prop="mobile">
           <el-input
             v-model="form.mobile"
-            placeholder="账号/联系电话"
+            placeholder="客户账号/联系电话"
             clearable
             style="width: 100%;"
           />
@@ -131,8 +147,10 @@ export default {
       rules: {
         name: [{ required: true, message: "请输入团队名称", trigger: ["change","blur"] }],
         type: [{ required: true, message: "请选择团队类型", trigger: ["change","blur"] }],
-        contact: [{ required: true, message: "请输入负责人", trigger: ["change","blur"] }],
-        mobile: [{ required: true, message: "请输入账号/联系电话", trigger: ["change","blur"] }],
+        contact: [{ required: true, message: "请输入客户负责人", trigger: ["change","blur"] }],
+        mobile: [{ required: true, message: "请输入客户账号/联系电话", trigger: ["change","blur"] }],
+        salerPerson: [{ required: true, message: "请输入销售员", trigger: ["change","blur"] }],
+        salerMobile: [{ required: true, message: "请输入销售员联系电话", trigger: ["change","blur"] }],
       },
       uploadObj: {
         url: process.env.VUE_APP_UPLOAD_FILE_API + "/upload/single/minio",

+ 4 - 2
src/views/team/teamMr/index.vue

@@ -53,8 +53,10 @@
           <dict-tag :options="dict.type.team_type" :value="scope.row.type"/>
         </template>
       </el-table-column>
-      <el-table-column label="负责人" align="center" prop="contact" />
-      <el-table-column label="联系电话" align="center" prop="mobile" />
+      <el-table-column label="客户负责人" align="center" prop="contact" />
+      <el-table-column label="客户账号/联系电话" align="center" prop="mobile" />
+      <el-table-column label="销售员" align="center" prop="salerPerson" />
+      <el-table-column label="销售员联系电话" align="center" prop="salerMobile" />
       <el-table-column label="合约信息" align="center" prop="type">
         <template slot-scope="scope">
           <el-button type="text" @click="seeCenter(scope.row, 'img')">查看</el-button>

+ 22 - 0
src/views/team/ticketMr/dialog/addAndEdit.vue

@@ -66,6 +66,14 @@
             />
           </el-select>
         </el-form-item>
+        <el-form-item label="渠道票务别称:" prop="otherName">
+          <el-input
+            v-model="form.otherName"
+            placeholder="请输入渠道票务别称"
+            clearable
+            style="width: 100%;"
+          />
+        </el-form-item>
         <el-form-item label="销售价:" prop="originalSalePrice">
           <el-input
             disabled
@@ -99,6 +107,15 @@
           </el-input>
           <span style="margin-left: 5px">人起成团</span>
         </el-form-item>
+        <el-form-item label="备注:">
+          <el-input
+            v-model="form.remark"
+            type="textarea"
+            placeholder="备注"
+            clearable
+            style="width: 100%;"
+          />
+        </el-form-item>
       </el-form>
     </div>
     <span slot="footer" class="dialog-footer">
@@ -153,6 +170,7 @@ export default {
         salePrice: [{ required: true, message: "请输入团购单价", trigger: ["change","blur"] }],
         originalSalePrice: [{ required: true, message: "请输入销售价", trigger: ["change","blur"] }],
         teamPersonNum: [{ required: true, message: "请输入人数", trigger: ["change","blur"] }],
+        otherName: [{ required: true, message: "请输入渠道票务别称", trigger: ["change","blur"] }]
       },
       uploadObj: {
         url: process.env.VUE_APP_UPLOAD_FILE_API + "/upload/single/minio",
@@ -198,6 +216,8 @@ export default {
           this.$set(this.form, 'salePrice', obj.salePrice);
           this.$set(this.form, 'brokeragePrice', obj.brokeragePrice);
           this.$set(this.form, 'teamPersonNum', obj.teamPersonNum);
+          this.$set(this.form, 'otherName', obj.otherName);
+          this.$set(this.form, 'remark', obj.remark);
           this.ticketListApi();
           this.getSeatTypeList({goodsId: this.form.goodsId, performId: this.form.performId});
         });
@@ -307,6 +327,8 @@ export default {
       this.$set(this.form, 'salePrice', '');
       this.$set(this.form, 'brokeragePrice', '');
       this.$set(this.form, 'teamPersonNum', '');
+      this.$set(this.form, 'otherName', '');
+      this.$set(this.form, 'remark', '');
     },
     /**
      * 关闭弹框

+ 2 - 0
src/views/team/ticketMr/index.vue

@@ -35,6 +35,7 @@
       <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" prop="otherName" />
       <el-table-column label="销售价" align="center" prop="brokerageTotal">
         <template slot-scope="scope">
           <span v-if="scope.row.originalSalePrice || scope.row.originalSalePrice==0">¥{{ scope.row.originalSalePrice }}</span>
@@ -46,6 +47,7 @@
         </template>
       </el-table-column>
       <el-table-column label="成团人数" align="center" prop="teamPersonNum" />
+      <el-table-column label="备注" align="center" prop="remark" />
       <el-table-column label="状态" align="center">
         <template slot-scope="scope">
           <el-tag type="success" v-if="scope.row.status == 1">己上架</el-tag>

+ 24 - 4
src/views/windowTicketSales/ticketingSales.vue

@@ -72,10 +72,19 @@
       </el-form>
       <div class="seat-tool-box">
         <span class="demonstration">座位大小</span>
-        <div>
+        <div class="seat-tool-box-slider">
             <el-slider v-model="scaleNum" :min="30" :max="100"></el-slider>
         </div>
-        
+        <div style="display: flex;margin-left: 20px;" v-if="seatMapList&&JSON.stringify(seatMapList) != '{}'">
+            <div>各类型座位的剩余数量:</div>
+            <div
+            :key="index" 
+            v-for="(item,index) in seatTypeList"
+            style="margin-left: 10px;align-items: center;"
+            >
+                <span :style="{color: item.color?item.color:'none'}">{{item.name ? (item.name+'(剩余:'+ (item.num||0) +')') : '暂未命名'}}</span>
+            </div>
+        </div>
       </div>
       <div class="seat-box" :style="{'--scaleNum': scaleNum/100}">
         <!-- 选择座位  -->
@@ -201,7 +210,7 @@
         goodsPageListS: [], // 票务
         goodsPageListSAll: [], // 票务全部
         setList: [],
-        seatMapList: [],
+        seatMapList: {},
         seatMapListKey: [], // key
         seatSelectList: [],
 
@@ -350,10 +359,19 @@
             if(list && list.length > 0) {
                 let listCopy = {}
                 let lisyCopy1 = {}
+                let listNum = JSON.parse(JSON.stringify(this.seatTypeList))
+                listNum.forEach((item,index)=>{
+                    listNum[index]['num'] = 0 
+                })
                 list.forEach(item => {
                     item.isDisabled = (item.occupyStatus != null && (item.occupyStatus == 0 || item.occupyStatus == 1) ? true : false); // 座位是否已被选择
                     item.isSelect = this.setIsSelect(item);
                     if(item.rowNo){
+                        listNum.forEach((item1,index)=>{
+                            if(item1.id == item.seatTypeId && item.status ==1) {
+                                listNum[index]['num'] = listNum[index]['num'] + 1 
+                            }
+                        })
                         if(listCopy['my'+item.rowNo]){
                             listCopy['my'+item.rowNo].push(item)
                         }else {
@@ -361,6 +379,7 @@
                         }
                     }
                 })
+                this.seatTypeList = JSON.parse(JSON.stringify(listNum))
                 let width = 0
                 let flog = 0
                 let seatMapListKey = []
@@ -498,6 +517,7 @@
             this.seatMapList = {}
             this.seatList = []
             this.handleQuery();
+
         },
 
         // 座位点击事件
@@ -630,7 +650,7 @@
         flex-shrink: 0;
         font-size: 12px;
     }
-    >div {
+    .seat-tool-box-slider {
         width: 100px;
         margin-left: 10px;
     }