Przeglądaj źródła

1. 优化缓存

MONSTER-ygh 1 miesiąc temu
rodzic
commit
30594718d1
53 zmienionych plików z 198 dodań i 90 usunięć
  1. 20 2
      src/api/windowTicketSales/ticketingSales.js
  2. 4 0
      src/components/seatBox/index.vue
  3. 1 1
      src/views/device/IDcard/index.vue
  4. 1 1
      src/views/device/PDAperson/index.vue
  5. 1 1
      src/views/device/gateMr/index.vue
  6. 1 1
      src/views/device/printer/index.vue
  7. 1 1
      src/views/device/robot/index.vue
  8. 1 1
      src/views/device/scanCodeBox/index.vue
  9. 1 1
      src/views/distribution/detailMr/index.vue
  10. 1 1
      src/views/distribution/distributionapplication/index.vue
  11. 1 1
      src/views/distribution/personnelMr/index.vue
  12. 1 1
      src/views/distribution/recordMr/index.vue
  13. 1 1
      src/views/distribution/ticketMr/index.vue
  14. 1 1
      src/views/finance/Statements/StatementsIndex.vue
  15. 1 1
      src/views/finance/Statements/StatementsIndexNew.vue
  16. 1 1
      src/views/finance/Statements/guizhuoPOS.vue
  17. 1 1
      src/views/finance/Statements/mingsheng.vue
  18. 1 1
      src/views/finance/Statements/quickReconciliation.vue
  19. 1 1
      src/views/finance/flowingWaterMr/index.vue
  20. 1 1
      src/views/finance/refundMr/index.vue
  21. 1 1
      src/views/information/informationMr/index.vue
  22. 1 1
      src/views/marketing/activity/index.vue
  23. 1 1
      src/views/marketing/coupon/index.vue
  24. 1 1
      src/views/officesale/preorder.vue
  25. 1 1
      src/views/officesale/ticketingSales.vue
  26. 1 1
      src/views/otaMr/meituan/index.vue
  27. 1 1
      src/views/otaMr/thirdParty/index.vue
  28. 1 1
      src/views/otaMr/tiktok/index.vue
  29. 1 1
      src/views/perform/performMr/index.vue
  30. 1 1
      src/views/perform/programmeMr/index.vue
  31. 1 1
      src/views/priceConfigurationUilt/dialog/addAndEdit.vue
  32. 1 1
      src/views/priceConfigurationUilt/index.vue
  33. 1 1
      src/views/statistics/financial.vue
  34. 1 2
      src/views/statistics/operating.vue
  35. 1 1
      src/views/team/accountDetails/index.vue
  36. 1 1
      src/views/team/applicationMr/index.vue
  37. 1 1
      src/views/team/creditRecord/index.vue
  38. 1 1
      src/views/team/teamMr/index.vue
  39. 1 1
      src/views/team/ticketMr/index.vue
  40. 18 12
      src/views/ticket/InventoryTemplate/dialog/addAndEdit.vue
  41. 1 1
      src/views/ticket/InventoryTemplate/index.vue
  42. 1 1
      src/views/ticket/priceMr/index.vue
  43. 1 1
      src/views/ticket/ticketMr/index.vue
  44. 1 1
      src/views/userMr/index.vue
  45. 1 1
      src/views/venue/performanceHallMr/index.vue
  46. 1 1
      src/views/venue/schedulingMr/index.vue
  47. 1 1
      src/views/venue/seatTypeMr/index.vue
  48. 1 1
      src/views/venue/venueMr/index.vue
  49. 74 7
      src/views/windowTicketSales/model/rebookBox.vue
  50. 1 1
      src/views/windowTicketSales/ticketingCollection.vue
  51. 1 1
      src/views/windowTicketSales/ticketingInquiry.vue
  52. 34 20
      src/views/windowTicketSales/ticketingSales.vue
  53. 1 1
      src/views/wxapp/appletMr/index.vue

+ 20 - 2
src/api/windowTicketSales/ticketingSales.js

@@ -1,5 +1,4 @@
 import request from '@/utils/request'
-import { param } from 'jquery'
 
 // 座位列表
 export const querySeatList = (query) => {
@@ -10,6 +9,15 @@ export const querySeatList = (query) => {
   })
 }
 
+// 座位列表
+export const querySeatListNew = (query) => {
+  return request({
+    url: '/merchant/merchantAuditoriumSeat/getChannelTypeSeatList',
+    method: 'get',
+    params: query
+  })
+}
+
 // 根据厅ID和日期查询场次
 export const merchantPerformTimeList = (query) => {
     return request({
@@ -18,6 +26,15 @@ export const merchantPerformTimeList = (query) => {
       params: query
     })
   }
+//  票务是否设置了价格
+
+export const merchantPerformTimeListNew = (query) => {
+  return request({
+    url: '/merchant/merchantPerformTime/listV2',
+    method: 'get',
+    params: query
+  })
+}
 
   // 订单提交
 export const orderInfoSubmit = (query) => {
@@ -103,7 +120,7 @@ export const lockOrUnLock = (query) => {
   })
 }
 
-//  价格查询
+//  票务是否设置了价格
 
 export const selectRegion = (query) => {
   return request({
@@ -114,6 +131,7 @@ export const selectRegion = (query) => {
 }
 
 
+
 // 票务查询
 
 export const goodsPageList = (query) => {

+ 4 - 0
src/components/seatBox/index.vue

@@ -320,6 +320,10 @@
                 this.$message.error('此座已被锁定,请先解锁!!!');
                 return
             }
+            if(this.seatTypeLimit['seatNum_'+row.seatTypeId].isNoSelect){
+                this.$message.error('该座位类型不可选!!!');
+                return
+            }
             if(!row.isSelect){
                 let seatTypeNum = 0
                 this.seatSelectList.forEach((item,index)=>{

+ 1 - 1
src/views/device/IDcard/index.vue

@@ -72,7 +72,7 @@
 import { pageList,deleteById } from "@/api/device/pda";
 import dataBox from "./dialog/dataBox.vue";
 export default {
-  name: "Pda",
+  name: "IDcard",
   components: { dataBox },
   dicts: ['device_sys_type'],
   data() {

+ 1 - 1
src/views/device/PDAperson/index.vue

@@ -161,7 +161,7 @@ import { pageList, deleteById, ionline,resetPwd } from '@/api/PDAperson/PDAperso
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "PDAperson",
   dicts: ['sys_user_sex'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/device/gateMr/index.vue

@@ -66,7 +66,7 @@
 
 import { pageList,openOrClose } from '@/api/device/gateMr'
 export default {
-  name: "gateMr",
+  name: "Pda",
   data() {
     return {
       // 遮罩层

+ 1 - 1
src/views/device/printer/index.vue

@@ -73,7 +73,7 @@
 import { pageList,deleteById } from "@/api/device/pda";
 import dataBox from "./dialog/dataBox.vue";
 export default {
-  name: "Pda",
+  name: "Printer",
   components: { dataBox },
   dicts: ['device_sys_type'],
   data() {

+ 1 - 1
src/views/device/robot/index.vue

@@ -72,7 +72,7 @@
 import { pageList,deleteById } from "@/api/device/pda";
 import dataBox from "./dialog/dataBox.vue";
 export default {
-  name: "Pda",
+  name: "Robot",
   components: { dataBox },
   dicts: ['device_sys_type'],
   data() {

+ 1 - 1
src/views/device/scanCodeBox/index.vue

@@ -72,7 +72,7 @@
 import { pageList,deleteById } from "@/api/device/pda";
 import dataBox from "./dialog/dataBox";
 export default {
-  name: "Pda",
+  name: "ScanCodeBox",
   components: { dataBox },
   dicts: ['device_sys_type'],
   data() {

+ 1 - 1
src/views/distribution/detailMr/index.vue

@@ -113,7 +113,7 @@
 import { pageList, downOrderListXls } from '@/api/distribution/detailsMr'
 import { exportExcel } from '@/utils/exportexcel'
 export default {
-  name: "agreement",
+  name: "DetailMr",
   dicts: ['distribution_type'],
   data() {
     return {

+ 1 - 1
src/views/distribution/distributionapplication/index.vue

@@ -82,7 +82,7 @@
 
 import { pageList,setRemark } from '@/api/distribution/distributionapplication'
 export default {
-  name: "distributionapplication",
+  name: "Distributionapplication",
   data() {
     return {
       // 遮罩层

+ 1 - 1
src/views/distribution/personnelMr/index.vue

@@ -395,7 +395,7 @@ import html2canvas from 'html2canvas'
 import linkSetVue from './dialog/linkSet.vue';
 
 export default {
-  name: "agreement",
+  name: "PersonnelMr",
   computed: {
     url() {
       return url

+ 1 - 1
src/views/distribution/recordMr/index.vue

@@ -212,7 +212,7 @@ import { exportExcel } from '@/utils/exportexcel'
 import { pagePerformTimeList } from "@/api/schedulingMr/schedulingMr"
 import moment from "moment"
 export default {
-  name: "agreement",
+  name: "RecordMr",
   dicts: ['agreement_type', 'distribution_type'],
   components: { detailsDia },
   data() {

+ 1 - 1
src/views/distribution/ticketMr/index.vue

@@ -146,7 +146,7 @@ import addAndEdit from "./dialog/addAndEdit.vue";
 import setTaxRate from "./dialog/setTaxRate.vue"
 import * as mathFun from 'mathjs' 
 export default {
-  name: "agreement",
+  name: "TicketMr",
   dicts: ['distribution_type'],
   components: { addAndEdit, setTaxRate},
   data() {

+ 1 - 1
src/views/finance/Statements/StatementsIndex.vue

@@ -251,7 +251,7 @@ import { exportExcel } from '@/utils/exportexcel';
 import detailsDia from "../../order/orderMr/dialog/details";
 
 export default {
-  name: 'Statements',
+  name: 'StatementsIndex',
   components: {
     detailsDia,
     'parkingrecord-pagination-select': () => import('@/components/CustPaginationSelect') // 支持分页搜索功能的[el-select]下拉框

+ 1 - 1
src/views/finance/Statements/StatementsIndexNew.vue

@@ -166,7 +166,7 @@ import { exportExcel } from '@/utils/exportexcel';
 import { pagePerformTimeList } from "@/api/schedulingMr/schedulingMr"
 import moment from "moment"
 export default {
-  name: 'Statements',
+  name: 'StatementsIndexNew',
   dicts: ['order_form_type', 'pay_way_type', 'transaction_type', 'order_withdraw_status', 'person_withdraw_status','has_bill'],
   data() {
     return {

+ 1 - 1
src/views/finance/Statements/guizhuoPOS.vue

@@ -161,7 +161,7 @@
   import { pagePerformTimeList } from "@/api/schedulingMr/schedulingMr"
   import moment from "moment"
   export default {
-    name: 'Statements',
+    name: 'GuizhuoPOS',
     dicts: ['pay_source_statu', 'pay_card_type'],
     data() {
       return {

+ 1 - 1
src/views/finance/Statements/mingsheng.vue

@@ -128,7 +128,7 @@
   import { exportExcel } from '@/utils/exportexcel';
   import moment from "moment"
   export default {
-    name: 'Statements',
+    name: 'Mingsheng',
     dicts: ['pay_source_statu', 'pay_card_type'],
     data() {
       return {

+ 1 - 1
src/views/finance/Statements/quickReconciliation.vue

@@ -89,7 +89,7 @@ import { exportExcel } from '@/utils/exportexcel';
 import detailsDia from "../../order/orderMr/dialog/details";
 import moment from "moment"
 export default {
-  name: 'Statements',
+  name: 'QuickReconciliation',
   components: {
     detailsDia,
     'parkingrecord-pagination-select': () => import('@/components/CustPaginationSelect') // 支持分页搜索功能的[el-select]下拉框

+ 1 - 1
src/views/finance/flowingWaterMr/index.vue

@@ -201,7 +201,7 @@ import detailsDia from "./dialog/details";
 import { pagePerformTimeList } from "@/api/schedulingMr/schedulingMr"
 import moment from "moment"
 export default {
-  name: "agreement",
+  name: "FlowingWaterMr",
   dicts: ['agreement_type','order_form_type','pay_way_type'],
   components: { detailsDia },
   data() {

+ 1 - 1
src/views/finance/refundMr/index.vue

@@ -169,7 +169,7 @@ import { pageList } from '@/api/financeMr/refundMr'
 import detailsDia from "./dialog/details.vue";
 import orderDetails from "./dialog/orderDetails.vue";
 export default {
-  name: "agreement",
+  name: "RefundMr",
   dicts: ['agreement_type'],
   components: { detailsDia, orderDetails },
   data() {

+ 1 - 1
src/views/information/informationMr/index.vue

@@ -171,7 +171,7 @@ import { pageList, deleteById, ionline } from '@/api/perform/perform'
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "InformationMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/marketing/activity/index.vue

@@ -185,7 +185,7 @@ import { pageList, deleteById, ionline,getSelectById } from '@/api/activity/acti
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "Activity",
   dicts: ['template_ident'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/marketing/coupon/index.vue

@@ -164,7 +164,7 @@ import { pageList, deleteById, ionline,resetPwd } from '@/api/coupon/coupon'
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "Coupon",
   dicts: ['template_ident'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/officesale/preorder.vue

@@ -52,7 +52,7 @@ import { ticketout } from "@/api/officesale/officesale";
 const https = require('https');
 const axios = require('axios');
     export default {
-        name: "Preorder1",
+        name: "Preorder",
         data() {
             return {
                 // 遮罩层

+ 1 - 1
src/views/officesale/ticketingSales.vue

@@ -228,7 +228,7 @@
  import selectListMixin from "./mixins/selectList"
 import LockSeat from './model/lockSeat.vue'
  export default {
-    name: "TicketingSales1",
+    name: "TicketingSales",
     components: {
         increaseViewers,
         LockSeat

+ 1 - 1
src/views/otaMr/meituan/index.vue

@@ -67,7 +67,7 @@ import { pageList, updateById,stockUpdateById } from '@/api/otaMr/meituan'
 import dataEdit from "./dialog/dataEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "Meituan",
   dicts: ['tiktok_process','tiktok_online','tiktok_category'],
   components: { dataEdit },
   data() {

+ 1 - 1
src/views/otaMr/thirdParty/index.vue

@@ -157,7 +157,7 @@ import addAndEdit from "./dialog/addAndEdit.vue";
 import dataEdit from "./dialog/dataEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "ThirdParty",
   dicts: ['agreement_type'],
   components: { addAndEdit, dataEdit },
   data() {

+ 1 - 1
src/views/otaMr/tiktok/index.vue

@@ -105,7 +105,7 @@ import { pageList, updateById,stockUpdateById } from '@/api/otaMr/tiktok'
 import dataEdit from "./dialog/dataEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "Tiktok",
   dicts: ['tiktok_process','tiktok_online','tiktok_category'],
   components: { dataEdit },
   data() {

+ 1 - 1
src/views/perform/performMr/index.vue

@@ -111,7 +111,7 @@ import { pageList, deleteById } from '@/api/performMr/performMr'
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "PerformMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/perform/programmeMr/index.vue

@@ -165,7 +165,7 @@ import detailsDia from "./dialog/details.vue";
 import programmeAddAndEdit from "./dialog/programmeAddAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "ProgrammeMr",
   dicts: ['agreement_type'],
   components: { addAndEdit, detailsDia, programmeAddAndEdit },
   data() {

+ 1 - 1
src/views/priceConfigurationUilt/dialog/addAndEdit.vue

@@ -314,7 +314,7 @@ export default {
       this.$refs["form"].validate(async (valid) => {
         if (valid) {
           try {
-            if(!['group'].includes(this.channelType) && this.form.weekType != 1 && this.chcekWeek()){
+            if(!['group'].includes(this.channelType) && this.form.weekType == 1 && this.chcekWeek()){
               return
             }
             let postEdit = JSON.parse(JSON.stringify(this.form))

+ 1 - 1
src/views/priceConfigurationUilt/index.vue

@@ -149,7 +149,7 @@ import calendarBox from './dialog/calendarBox.vue';
 import switchBoxVue from '@/components/switchBox.vue';
 import bindTeamBox from './dialog/bindTeamBox.vue';
 export default {
-  name: "agreement",
+  name: "PriceConfigurationUilt",
   components: { addAndEdit,calendarBox,switchBoxVue,bindTeamBox },
   data() {
     return {

+ 1 - 1
src/views/statistics/financial.vue

@@ -33,7 +33,7 @@
   import { pageList } from '@/api/userMr/userMr'
   
   export default {
-    name: "agreement",
+    name: "Financial",
     dicts: ['agreement_type'],
     data() {
       return {

+ 1 - 2
src/views/statistics/operating.vue

@@ -31,10 +31,9 @@
   <script>
   
   import { pageList } from '@/api/userMr/userMr'
-import { log } from 'mathjs';
   
   export default {
-    name: "agreement",
+    name: "Operating",
     dicts: ['agreement_type'],
     data() {
       return {

+ 1 - 1
src/views/team/accountDetails/index.vue

@@ -94,7 +94,7 @@
   import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
 
   export default {
-    name: "agreement",
+    name: "AccountDetails",
     dicts: ['accountDetails_type','balance_type'],
     components: { ElImageViewer },
     data() {

+ 1 - 1
src/views/team/applicationMr/index.vue

@@ -204,7 +204,7 @@ import orderDetails from "./dialog/orderDetails.vue";
 import { ticketPageList } from '@/api/ticketMr/ticketMr'
 import { mapGetters } from 'vuex'
 export default {
-  name: "agreement",
+  name: "ApplicationMr",
   dicts: ['team_type'],
   components: { addAndEdit, applicationDetails, orderDetails },
   data() {

+ 1 - 1
src/views/team/creditRecord/index.vue

@@ -173,7 +173,7 @@ import detailsDia from "./dialog/details.vue";
 
 import { exportExcel } from '@/utils/exportexcel'
 export default {
-  name: "GroupBuyingMr",
+  name: "CreditRecord",
   dicts: ['agreement_type', 'team_type','order_status_type','pay_way_type'],
   components: { detailsDia },
   data() {

+ 1 - 1
src/views/team/teamMr/index.vue

@@ -265,7 +265,7 @@ import creditGrantingBox from './dialog/creditGrantingBox.vue';
 import orderAllBox from './dialog/orderAllBox.vue';
 import { mapGetters } from 'vuex'
 export default {
-  name: "agreement",
+  name: "TeamMr",
   dicts: ['team_type','order_form_type'],
   components: { addAndEdit, creditGranting, rechargeBox, auditBox, creditGrantingBox, orderAllBox },
   data() {

+ 1 - 1
src/views/team/ticketMr/index.vue

@@ -137,7 +137,7 @@ import { pageList, deleteById, updateStatus } from '@/api/team/ticketMr'
 import addAndEdit from "./dialog/addAndEdit.vue";
 import dumplingEdit from "./dialog/dumplingEdit";
 export default {
-  name: "agreement",
+  name: "TicketMr",
   dicts: ['distribution_type', 'team_type'],
   components: { addAndEdit, dumplingEdit },
   data() {

+ 18 - 12
src/views/ticket/InventoryTemplate/dialog/addAndEdit.vue

@@ -104,7 +104,7 @@
                     </el-table-column>
                   </el-table>
                 </div>
-                <div v-else>
+                <div v-else-if="form.chennelListForm[chennelAtion].stockType == 1">
                   <seatBox 
                   ref="seatBox" 
                   :isOccupyStatus="false"
@@ -715,21 +715,27 @@ export default {
       let stockNum = 0
       let stockTotal= 0
       this.form.chennelListForm.forEach((item,index)=>{
-        if(item.stockType == -1) {
-          stockNum = "不限"
-        }else {
-          stockNum = 0
-        }
-        if(item.seatTypeList && item.seatTypeList.length>0) {
-          item.seatTypeList.forEach((item1,index1)=>{
-            if(item1.stockNum) {
-              stockNum = stockNum + item1.stockNum
-              stockTotal = stockTotal + item1.stockNum
+        if(!item.stockType) {
+          if(item.seatTypeList && item.seatTypeList.length>0) {
+            item.seatTypeList.forEach((item1,index1)=>{
+              if(item1.stockNum) {
+                if(index == this.chennelAtion) {
+                  stockNum = stockNum + item1.stockNum
+                }
+                stockTotal = stockTotal + item1.stockNum
+              }
+            })
+          }
+        }else if(item.stockType == 1){
+          Object.keys(item.chennelSeatList).forEach((item1,index1)=>{
+            if(item.chennelSeatList[item1]) {
+              stockTotal = stockTotal + item.chennelSeatList[item1].length
             }
           })
         }
-        this.form.chennelListForm[index].stockNum = stockNum
+        
       })
+      this.form.chennelListForm[this.chennelAtion].stockNum = stockNum
       this.configStockNum = stockTotal
     }
   },

+ 1 - 1
src/views/ticket/InventoryTemplate/index.vue

@@ -112,7 +112,7 @@ import { pageList, deleteById, releaseById } from '@/api/ticketMr/InventoryTempl
 import addAndEdit from "./dialog/addAndEdit";
 import { checkPermi } from "@/utils/permission"
 export default {
-  name: "agreement",
+  name: "InventoryTemplate",
   dicts: [],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/ticket/priceMr/index.vue

@@ -121,7 +121,7 @@ import { pageList, deleteById } from '@/api/ticketMr/priceMr'
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "PriceMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/ticket/ticketMr/index.vue

@@ -200,7 +200,7 @@ import addAndEdit from "./dialog/addAndEdit";
 import detailsDia from "./dialog/details.vue";
 
 export default {
-  name: "agreement",
+  name: "TicketMr",
   dicts: ['agreement_type'],
   components: { addAndEdit, detailsDia },
   data() {

+ 1 - 1
src/views/userMr/index.vue

@@ -131,7 +131,7 @@
 import { pageList, updateAuthStatus, addBlackList } from '@/api/userMr/userMr'
 import dataBox from "./dialog/dataBox";
 export default {
-  name: "agreement",
+  name: "UserMr",
   components: { dataBox },
   dicts:['user_source_type','user_is_black_list','user_certification'],
   data() {

+ 1 - 1
src/views/venue/performanceHallMr/index.vue

@@ -136,7 +136,7 @@ import seatTemplateEdit from "./dialog/seatTemplateEdit";
 import programmeAddAndEdit from "./dialog/programmeAddAndEdit";
 
 export default {
-  name: "agreement",
+  name: "PerformanceHallMr",
   components: { addAndEdit, seatTemplateEdit, programmeAddAndEdit },
   data() {
     return {

+ 1 - 1
src/views/venue/schedulingMr/index.vue

@@ -241,7 +241,7 @@ import addAndEdit from "./dialog/addAndEdit";
 import { pageList as goodsIdsListApi } from '@/api/ticketMr/ticketMr'
 import stockAll from "./dialog/stockAll.vue"
 export default {
-  name: "SchedulingMr1",
+  name: "SchedulingMr",
   dicts: ['agreement_type'],
   components: { addAndEdit,stockAll },
   data() {

+ 1 - 1
src/views/venue/seatTypeMr/index.vue

@@ -107,7 +107,7 @@ import { pageList, deleteById } from '@/api/seatTypeMr/seatTypeMr'
 import addAndEdit from "./dialog/addAndEdit";
 
 export default {
-  name: "agreement",
+  name: "SeatTypeMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {

+ 1 - 1
src/views/venue/venueMr/index.vue

@@ -117,7 +117,7 @@ import { pageList, deleteById } from '@/api/venueMr/venueMr'
 import addAndEdit from "./dialog/addAndEdit.vue";
 
 export default {
-  name: "agreement",
+  name: "VenueMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {

+ 74 - 7
src/views/windowTicketSales/model/rebookBox.vue

@@ -19,8 +19,16 @@
                         <p>温馨提示:每张票仅限改签一次,改签成功后原订单费用将原路返回退还给客户,请知悉。</p>
                     </div>
                     <el-form :model="rebookForm" ref="rebookForm" label-width="100px" :rules="rules">
-                        
-                        
+                        <el-form-item label="剧目名称:">
+                            <span>{{ rebookForm.performName }}</span>
+                        </el-form-item>    
+                        <el-form-item label="票务名称:">
+                            <span>{{ rebookForm.goodsName }}</span>
+                        </el-form-item>
+                        <el-form-item label="座位类型:">
+                            <span>{{ rebookForm.seatTypeName }}</span>
+                        </el-form-item>
+
                         <el-form-item label="选择日期:" prop="performDate">
                             <el-date-picker 
                             v-model="rebookForm.performDate" 
@@ -34,7 +42,7 @@
                                 v-model="rebookForm.performTimeId"
                                 placeholder="选择场次"
                                 style="width: 100%"
-                                @change="querySeatListFun"
+                                @change="selectRegionFun"
                                 >
                                     <el-option
                                     v-for="item in intervalList"
@@ -47,7 +55,7 @@
                         <el-form-item label="支付方式 :" prop="paymentType">
                             <el-radio-group v-model="rebookForm.paymentType">
                             <el-radio label="1">扫码支付</el-radio>
-                            <!-- <el-radio label="2">现金支付</el-radio> -->
+                            <el-radio label="2">现金支付</el-radio>
                             <!-- <el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="3">对公支付</el-radio> -->
                             <!-- <el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="4">账户余额({{ balance }})</el-radio>
                             <el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="5">授信余额({{ grantQuota }})</el-radio> -->
@@ -55,7 +63,7 @@
                         </el-form-item>
                     </el-form>
                 </div>
-                <div class="rebook1_seat">
+                <div class="rebook1_seat" v-loading="seatLoading" :element-loading-text="seatLoadText">
                     <seatBox 
                     ref="seatBox" 
                     :seatTypeLimit="configStockNumObj"
@@ -151,7 +159,8 @@ import {
   selectRegion,
   orderInfoCancel,
   factorAuth,
-  selectMarketTeamBySourceApi
+  selectMarketTeamBySourceApi,
+  querySeatListNew
  } from '@/api/windowTicketSales/ticketingSales'
  import { pageList as getPrintListApi } from "@/api/device/pda";
  import { printApi } from '@/api/windowTicketSales/ticketingCollection'
@@ -203,6 +212,9 @@ export default {
             configStockNumObj: {},
             countBySeatTypList:[],
             seatTypeListAll: [],
+
+            seatLoading: false,
+            seatLoadText: '获取座位中...',
             setList: [],
         }
     },
@@ -214,6 +226,11 @@ export default {
             this.rebookDialog = true
             this.payStatus = null
             this.rebookForm = {
+                performName: row.performName,
+                goodsName: row.goodsName,
+                seatTypeName: row.seatTypeName,
+                seatTypeId: row.seatTypeId,
+                goodsId: row.goodsId,
                 orderId: row.orderId,
                 performDate: undefined,
                 performTimeId: undefined,
@@ -286,6 +303,7 @@ export default {
                         document.removeEventListener('keydown',this.keydownAdd);
                         this.orderInfoCancelFun(true)
                     }else {
+                        this.$refs.seatBox.querySeatListFun(true,[],[],[])
                         this.rebookDialog = false
                     }
                 })
@@ -834,12 +852,56 @@ export default {
         },
 
 
+
+         /**  获取票务信息  */
+         async selectRegionFun(){
+            try {
+                this.seatLoading = true
+                this.seatLoadText = "获取座位中..."
+                let res = await selectRegion({
+                    "auditoriumId": this.rebookForm.auditoriumId, // 演艺厅ID
+                    "goodsId": this.rebookForm.goodsId, // 商品ID
+                    "performId": this.rebookForm.performId, // 上一界面节目ID
+                    "performTimeId": this.rebookForm.timeId, // 时段ID
+                    "retailId": "" // 分销ID
+                })
+                if(res.code == 200) {
+                    if(res.data.regionPriceList &&res.data.regionPriceList.length>0){
+                        let obj = {}
+                        res.data.regionPriceList.forEach((item,index)=>{
+                            if(this.rebookForm.seatTypeId == item.seatTypeId) {
+                                obj = item
+                            }
+                        }) 
+                        if(JSON.stringify(obj) != '{}'){
+                            this.querySeatListFun()
+                        }else {
+                            this.$message.error('存在座位未设置价格,请选择其他票!!!');
+                            this.seatLoading = false
+                        }
+                        
+                    }else {
+                        this.$message.error('存在座位未设置价格,请选择其他票!!!');
+                        this.seatLoading = false
+                    }
+                    console.log("res====",res)
+                }else {
+                    this.$message.error(res.msg);
+                    this.seatLoading = false
+                }
+            } catch (error) {
+                console.error("error=====",error)
+                this.$message.error('价格查询出错');
+                this.seatLoading = false
+            }
+        },
         /**  获取座位  */
         async querySeatListFun(type){
             try {
                 let res = await querySeatList({
                     auditoriumId: this.rebookForm.auditoriumId,
                     timeId: this.rebookForm.performTimeId,
+                    goodsId: this.rebookForm.goodsId,
                 })
                 if(res.code == 200){
                     this.setList = res.data;
@@ -876,8 +938,13 @@ export default {
                     obj['seatNum_'+item.seatTypeId] = {
                         stockTotal: item.stock,
                         stockSelect: item.stock,
-                        stockYes: 0,
+                        stockYes: item.stock,
                         stockNo: 0,
+                        isNoSelect: true,
+                    }
+                    if(item.seatTypeId == this.rebookForm.seatTypeId){
+                        obj['seatNum_'+item.seatTypeId].stockYes = item.stock-1
+                        obj['seatNum_'+item.seatTypeId].isNoSelect = false
                     }
                 })
                 this.configStockNumObj = obj

+ 1 - 1
src/views/windowTicketSales/ticketingCollection.vue

@@ -215,7 +215,7 @@
   const https = require('https');
   const axios = require('axios');
   export default {
-    name: "TicketingCollections1",
+    name: "TicketingCollections",
     dicts: ['order_form_type','order_status_type'],
     data() {
       return {

+ 1 - 1
src/views/windowTicketSales/ticketingInquiry.vue

@@ -6,6 +6,6 @@
 </template>
 <script>
     export default {
-        name: 'TicketingInquiry1'
+        name: 'TicketingInquiry'
     }
 </script>

+ 34 - 20
src/views/windowTicketSales/ticketingSales.vue

@@ -61,7 +61,7 @@
               :key="dict.id"
               :label="dict.goodsName"
               :value="dict.id"
-              :disabled="dict.status==1 || dict.goodsPerform.channelWindow != 0"
+              :disabled="dict.status==1"
             />
           </el-select>
         </el-form-item>
@@ -126,8 +126,7 @@
                                 <div 
                                 :class="[
                                     'seat-item-class',
-                                    item1.key == 'my_column'?'seat-item-class-column':
-                                    item.occupyStatus==0?item.occupyOrderId?'order-occupy-status':item.occupyStatus==0&&item.isSelect?'occupy-status-select occupy-status':'occupy-status': item.occupyStatus==1?'occupy-status-no':item.isDisabled || item.status != 1 ? 'disabled-class' : item.isSelect ? 'select-class' : ''
+                                    showSearStyle(item1,item)
                                 ]" 
                                 v-for="(item, index) in seatMapList[item1.key]" 
                                 :style="{backgroundColor: item.color && !(item.isDisabled || item.status != 1) ? item.color : 'none'}"
@@ -215,11 +214,13 @@
   import { 
   querySeatList,
   merchantPerformTimeList,
+  merchantPerformTimeListNew,
   lockOrUnLock,
   merchantTheatreAuditoriumList,
   goodsPageList,
   getGoodsPerformApi,
-  lockOrUnLockApi
+  lockOrUnLockApi,
+  querySeatListNew
  } from '@/api/windowTicketSales/ticketingSales'
  //import increaseViewers from "./model/increaseViewers"
  import increaseViewers from "./model/increaseViewersNew"
@@ -228,7 +229,7 @@
  import selectListMixin from "./mixins/selectList"
 import LockSeat from './model/lockSeat.vue'
  export default {
-    name: "TicketingSales1",
+    name: "TicketingSales",
     components: {
         increaseViewers,
         LockSeat
@@ -352,12 +353,12 @@ import LockSeat from './model/lockSeat.vue'
         /**  获取场次  */
         async merchantPerformTimeListFun(){
             try {
-                let param = this.queryParams;
+                let param = JSON.parse(JSON.stringify(this.queryParams));
                 param.status  = 1;
-                let res = await merchantPerformTimeList(param)
+                let res = await merchantPerformTimeListNew(param)
                 if(res.code == 200){
                     console.log('merchantPerformTimeListS',res.data.rows);
-                    this.merchantPerformTimeListS = res.data.rows
+                    this.merchantPerformTimeListS = res.data.list
                 }
             } catch (error) {
                 
@@ -422,7 +423,7 @@ import LockSeat from './model/lockSeat.vue'
                 }
                 this.seatMapList = {}
                 this.seatList = []
-                let res = await querySeatList({
+                let res = await querySeatListNew({
                     ...this.queryParams
                 })
                 if(res.code == 200){
@@ -537,17 +538,18 @@ import LockSeat from './model/lockSeat.vue'
                     let list2 = []
                     this.merchantPerformTimeListS.forEach((item,index)=>{
                         if(item.id==value) {
-                            let list = item.goodsIds ? item.goodsIds.split(','): []
-                            list.forEach((item,index)=>{
-                                this.goodsPageListSAll.forEach((item1,index1)=>{
-                                    if(item1.id == item) {
-                                        flog = true       
-                                        list2.push({
-                                            ...item1
-                                        })
-                                    }
-                                })
-                            })
+                            // let list = item.goodsIds ? item.goodsIds.split(','): []
+                            // list.forEach((item,index)=>{
+                            //     this.goodsPageListSAll.forEach((item1,index1)=>{
+                            //         if(item1.id == item) {
+                            //             flog = true       
+                            //             list2.push({
+                            //                 ...item1
+                            //             })
+                            //         }
+                            //     })
+                            // })
+                            list2 = item.goodsList
                         }
                     })
                     if(flog) {
@@ -857,6 +859,18 @@ import LockSeat from './model/lockSeat.vue'
         lockOrUnLockDeatilFun1() {
             this.isLcokShow = false
             this.seatId = null
+        },
+        /**  座位得样式  */
+        showSearStyle(item1,item) {
+            let srt = ''
+            srt = 
+            item1.key == 'my_column'?'seat-item-class-column':
+            item.occupyStatus==0?item.occupyOrderId?'order-occupy-status':
+            item.occupyStatus==0&&item.isSelect?'occupy-status-select occupy-status':
+            'occupy-status': item.occupyStatus==1?'occupy-status-no':
+            item.isDisabled || item.status != 1 ? 'disabled-class' : 
+            item.isSelect ? 'select-class' : ''
+            return srt
         }
     }   
   };

+ 1 - 1
src/views/wxapp/appletMr/index.vue

@@ -148,7 +148,7 @@ import addAndEdit from "./dialog/addAndEdit.vue";
 import { parseTime } from '@/utils/ruoyi'
 
 export default {
-  name: "agreement",
+  name: "AppletMr",
   dicts: ['agreement_type'],
   components: { addAndEdit },
   data() {