dct vor 9 Monaten
Ursprung
Commit
e11de39cfb

+ 2 - 2
src/api/order.js

@@ -3,7 +3,7 @@ import { getPosPayChannel } from '@/utils/choosePay'
 
 // 订单类通用接口,需手动指定url
 export function apiOrder (url, params) {
-  return http.post(`order/${url}`, params)
+  return http.post(`/admin/statistics/${url}`, { data: params })
 }
 // 获取订单列表
 export function apiOrderList (params) {
@@ -72,7 +72,7 @@ export function getSingleOrder (id) {
 
 // 获取所有订单统计
 export function getOrderStatistics (params) {
-  return http.post('/orderStatistics/getOrderStatistics', params)
+  return http.post('/admin/statistics/orderSaleStatistics', { data: params })
 }
 
 // 获取妈祖日历票订单统计

+ 1 - 1
src/api/queryReport.js

@@ -45,7 +45,7 @@ export function exportSaleStatisticsByTicketSpot (params) {
 
 // 导出自定义售票统计
 export function exportCustomizeOrderStatistics (params) {
-  return http.post('/exportMission/exportCustomizeOrderStatistics', params)
+  return http.post('/admin/statistics/orderSaleStatistics', { data: params })
 }
 
 // 按日期导出售票统计

+ 48 - 50
src/pages/queryReport/OrderStatistics.vue

@@ -278,7 +278,7 @@
             v-model="form.keyWords28"
             placeholder="请选择">
             <el-option
-              v-for="item in order_tag_list"
+              v-for="item in orderTagList"
               :key="item"
               :label="item"
               :value="item">
@@ -371,12 +371,12 @@
         </el-table-column>
 
         <el-table-column
-          prop="sum_price"
+          prop="salePrice"
           label="售票金额">
         </el-table-column>
 
         <el-table-column
-          prop="sum_count">
+          prop="saleNum">
           <template
             slot="header">
             售票张数
@@ -385,7 +385,7 @@
         </el-table-column>
 
         <el-table-column
-          prop="sum_people"
+          prop="salePeopleNum"
           label="售票人数">
           <template
             slot="header">
@@ -395,7 +395,7 @@
         </el-table-column>
 
         <el-table-column
-          prop="sum_multi_people"
+          prop="actualPeopleNum"
           label="售票总人次">
           <template
             slot="header">
@@ -405,13 +405,13 @@
         </el-table-column>
 
         <el-table-column
-          prop="cancel_price"
+          prop="cancelPrice"
           label="退票金额">
         </el-table-column>
 
         <el-table-column
           width="100"
-          prop="sum_cancel"
+          prop="cancelNum"
           label="退票张数">
           <template
             slot="header">
@@ -421,7 +421,7 @@
         </el-table-column>
 
         <el-table-column
-          prop="cancel_people"
+          prop="cancelPeopleNum"
           label="退票人数">
           <template
             slot="header">
@@ -431,42 +431,40 @@
         </el-table-column>
 
         <el-table-column
-          prop="cancel_multi_people"
-          label="退票总人次">
-          <template
-            slot="header">
-            退票总人次
-            <Tip msg="退票人数 × 票种人数"></Tip>
-          </template>
-        </el-table-column>
-
-        <el-table-column
-          prop="actual_price"
+          prop="actualPrice"
           label="实售金额">
         </el-table-column>
         <el-table-column
-          prop="actual_count"
+          prop="actualNum"
           label="实售张数">
         </el-table-column>
         <el-table-column
-          prop="actual_people"
+          prop="actualPeopleNum"
           label="实售人数">
         </el-table-column>
-        <el-table-column
+        <!-- <el-table-column
           prop="actual_multi_people"
           width="110"
           label="实售总人次">
           <template slot-scope="scope">
-            {{ scope.row.sum_multi_people - scope.row.cancel_multi_people }}
+            {{ scope.row.actualPeopleNum - scope.row.cancel_multi_people }}
           </template>
+        </el-table-column> -->
+        <el-table-column
+          prop="ticketTypeName"
+          label="票种">
+        </el-table-column>
+        <el-table-column
+          prop="adminName"
+          label="售票员">
         </el-table-column>
         <el-table-column
-          prop="check_num"
-          label="检票人数">
+          prop="source"
+          label="销售渠道">
         </el-table-column>
         <el-table-column
-          prop="check_price"
-          label="检票金额">
+          prop="payChannel"
+          label="支付方式">
         </el-table-column>
       </el-table>
     </div>
@@ -486,17 +484,17 @@ import Tip from '@/components/Tip'
 import moment from 'moment'
 
 const groupKeys = [
-  { value: 'order_date_year', label: '订单日期(年)' },
-  { value: 'order_date_month', label: '订单日期(月)' },
-  { value: 'order_date_day', label: '订单日期(日)' },
-  { value: 'ota_name', label: 'OTA 名称' },
-  { value: 'batch_config_id', label: '场次名', prop: 'batch_config_name' },
-  { value: 'agency_name', label: '旅行社' },
-  { value: 'manager_id', label: '售票员', prop: 'manager_name' },
-  { value: 'ticket_type_id', label: '票种', prop: 'ticket_type_name' },
-  { value: 'pay_channel', label: '支付方式' },
-  { value: 'price_plan_id', label: '价格方案', prop: 'price_plan_name' },
-  { value: 'unit_price', label: '单价' }
+  { value: 'orderDateYear', label: '订单日期(年)' },
+  { value: 'orderDateMonth', label: '订单日期(月)' },
+  { value: 'orderDateDay', label: '订单日期(日)' },
+  { value: 'otaName', label: 'OTA 名称' },
+  { value: 'batchConfigId', label: '场次名', prop: 'batchConfigName' },
+  { value: 'agencyName', label: '旅行社' },
+  { value: 'managerId', label: '售票员', prop: 'managerName' },
+  { value: 'ticketTypeId', label: '票种', prop: 'ticketTypeName' },
+  { value: 'payChannel', label: '支付方式' },
+  { value: 'pricePlanId', label: '价格方案', prop: 'pricePlanName' },
+  { value: 'unitPrice', label: '单价' }
 ]
 
 export default {
@@ -514,7 +512,7 @@ export default {
       return this.$store.getters.payChannelOptions
     },
     userScenic () {
-      return this.$store.state.app.account.manager_scenic_matrix ? this.$store.state.app.account.manager_scenic_matrix : this.scenicList
+      return this.$store.state.app.account.managerScenicMatrix ? this.$store.state.app.account.managerScenicMatrix : this.scenicList
     }
   },
   components: {
@@ -523,8 +521,8 @@ export default {
   },
   data () {
     return {
-      finalGroup: [{ value: 'ticket_type_id', label: '票种', prop: 'ticket_type_name' }],
-      selectKeys: ['ticket_type_id'],
+      finalGroup: [{ value: 'ticketTypeId', label: '票种', prop: 'ticketTypeName' }],
+      selectKeys: ['ticketTypeId'],
       ticketStatusDic,
       ticketTypeList: [],
       oldTicketTypeOptions: [[]],
@@ -554,11 +552,11 @@ export default {
         keyList6: [],
         keyList7: [], // 售票员id
         keyList8: [],
-        keyGroupBy: ['ticket_type_id']
+        keyGroupBy: ['ticketTypeId']
       },
       tableData: [],
       loading: false,
-      order_tag_list: [],
+      orderTagList: [],
       ticketTagList: [],
       OrderIndexArr: [],
       index: 0,
@@ -582,10 +580,10 @@ export default {
     this.getTicketSpotList()
     const res = await getSystemConfigList()
     /*
-    const order_tag_list = res.list.find(v => v.config_key === 'order_tag_list')?.config_value || []
-    this.order_tag_list = order_tag_list.replace(/\s+/g, '').split(',')
+    const orderTagList = res.list.find(v => v.config_key === 'orderTagList')?.config_value || []
+    this.orderTagList = orderTagList.replace(/\s+/g, '').split(',')
     */
-    this.order_tag_list = res.list.find(v => v.config_key === 'order_tag_list')?.config_value?.replace(/\s+/g, '')?.split(',') || []
+    this.orderTagList = res.list.find(v => v.config_key === 'orderTagList')?.config_value?.replace(/\s+/g, '')?.split(',') || []
   },
   methods: {
 
@@ -623,9 +621,9 @@ export default {
       })
     },
     disabled (item) {
-      if (item.value.includes('order_date_')) {
-        if (this.selectKeys.find(v => v.includes('order_date_'))) {
-          if (item.value === this.selectKeys.find(v => v.includes('order_date_'))) {
+      if (item.value.includes('orderDate')) {
+        if (this.selectKeys.find(v => v.includes('orderDate'))) {
+          if (item.value === this.selectKeys.find(v => v.includes('orderDate'))) {
             return false
           } else {
             return true
@@ -739,7 +737,7 @@ export default {
       this.form.keyGroupBy = this.finalGroup.map(i => i.value)
 
       getOrderStatistics(this.form).then(res => {
-        this.tableData = res.data
+        this.tableData = res.data || []
 
         this.finalGroup.forEach(i => {
           groupArray.push({})

+ 7 - 6
src/pages/queryReport/checkStatistic.vue

@@ -1,7 +1,8 @@
 <template>
   <div class="form-wrap">
     <div class="tableBox">
-      <el-tabs v-model="activeName">
+      <CheckStatisticInTicketCount v-show="activeName==='CheckStatisticInTicketCount'"></CheckStatisticInTicketCount>
+      <!-- <el-tabs v-model="activeName">
         <el-tab-pane
           label="按票数统计"
           name="CheckStatisticInTicketCount">
@@ -22,21 +23,21 @@
 
           <CheckStatistic v-show="activeName==='CheckStatistic'"></CheckStatistic>
         </el-tab-pane>
-      </el-tabs>
+      </el-tabs> -->
     </div>
   </div>
 </template>
 
 <script>
-import CheckStatistic from './checkStatistic/CheckStatistic'
+// import CheckStatistic from './checkStatistic/CheckStatistic'
 import CheckStatisticInTicketCount from './checkStatistic/CheckStatisticInTicketCount'
-import Tip from '@/components/Tip'
+// import Tip from '@/components/Tip'
 
 export default {
   name: 'checkStatistic',
   components: {
-    Tip,
-    CheckStatistic,
+    // Tip,
+    // CheckStatistic,
     CheckStatisticInTicketCount
   },
   data () {

+ 47 - 92
src/pages/queryReport/checkStatistic/CheckStatisticInTicketCount.vue

@@ -10,27 +10,27 @@
       </div>
       <el-form-item
         label="起始时间"
-        prop="startDate">
+        prop="checkTimeBegin">
         <el-date-picker
-          v-model="form.startDate"
+          v-model="form.checkTimeBegin"
           type="datetime"
           placeholder="选择日期时间">
         </el-date-picker>
       </el-form-item>
       <el-form-item
         label="截止时间"
-        prop="endDate">
+        prop="checkTimeEnd">
         <el-date-picker
           default-time="23:59:59"
-          v-model="form.endDate"
+          v-model="form.checkTimeEnd"
           type="datetime"
           placeholder="选择日期时间">
         </el-date-picker>
       </el-form-item>
       <el-form-item
         label="票种"
-        prop="keyWords1">
-        <el-select v-model="form.keyWords1">
+        prop="ticketTypeIdList">
+        <el-select v-model="form.ticketTypeIdList">
           <el-option
             value=""
             label="全部"></el-option>
@@ -42,17 +42,12 @@
           </el-option>
         </el-select>
       </el-form-item>
-      <el-form-item
-        label="身份证号"
-        prop="keyWords6">
-        <ReaderInput v-model="form.keyWords6"></ReaderInput>
-      </el-form-item>
 
       <el-form-item
         label="销售渠道"
-        prop="keyList1">
+        prop="sourceList">
         <el-select
-          v-model="form.keyList1"
+          v-model="form.sourceList"
           multiple
           clearable>
           <el-option
@@ -64,47 +59,6 @@
           </el-option>
         </el-select>
       </el-form-item>
-
-      <el-form-item
-        v-if="scenicName==='铭投山庄'"
-        label="景点选择"
-        prop="keyList2"
-        :class="hideClear()"
-      >
-        <el-select
-          multiple
-          collapse-tags
-          v-model="form.keyList2"
-          placeholder="请选择">
-          <el-option
-            v-for="item in userScenic"
-            :disabled="disabled(item)"
-            :key="item.id"
-            :value="item.id"
-            :label="item.name">
-          </el-option>
-        </el-select>
-      </el-form-item>
-      <el-form-item
-        v-if="scenicName!=='铭投山庄'"
-        label="景点选择"
-        prop="keyWords3"
-      >
-        <el-select
-          v-model="form.keyWords3"
-          placeholder="请选择">
-          <el-option
-            value=""
-            label="全部">
-          </el-option>
-          <el-option
-            v-for="item in userScenic"
-            :key="item.id"
-            :value="item.id"
-            :label="item.name">
-          </el-option>
-        </el-select>
-      </el-form-item>
       <el-form-item
         label="售票类型"
         prop="keyWords7"
@@ -130,13 +84,13 @@
         label="是否按分销商分组"
         style="white-space:nowrap">
         <el-switch
-          v-model="isShow_ota_name"
+          v-model="isShow_otaName"
           active-color="#13ce66"
           inactive-color="#ff4949">
         </el-switch>
       </el-form-item> -->
 
-      <el-form-item
+      <!-- <el-form-item
         label="分组筛选"
         style="width:100%">
         <el-checkbox-group
@@ -153,7 +107,7 @@
           </draggable>
         </el-checkbox-group>
         (可拖拽排序)
-      </el-form-item>
+      </el-form-item> -->
 
       <div
         class="btn-wrap"
@@ -185,41 +139,45 @@
         v-loading="loading"
         :data="tableData"
         :row-class-name="totalRowClassName">
-        <el-table-column
+        <!-- <el-table-column
           v-for="(item,index) in finalGroup"
           :key="index"
           :prop="item.prop||item.value"
           :label="item.label">
-        </el-table-column>
+        </el-table-column> -->
         <!-- <el-table-column
-          v-if="tableData.find(v=>v.ota_name)"
-          prop="ota_name"
+          v-if="tableData.find(v=>v.otaName)"
+          prop="otaName"
           label="分销商">
         </el-table-column>
         <el-table-column
-          v-if="tableData.find(v=>v.tag_name)"
-          prop="tag_name"
+          v-if="tableData.find(v=>v.tagName)"
+          prop="tagName"
           label="票种标签">
         </el-table-column> -->
         <el-table-column
-          prop="ticket_type_name"
+          prop="otaSourceName"
+          label="订单渠道">
+        </el-table-column>
+        <el-table-column
+          prop="ticketTypeName"
           label="票种">
         </el-table-column>
         <el-table-column
-          prop="price"
-          label="价">
+          prop="unitPrice"
+          label="价">
         </el-table-column>
         <el-table-column
-          prop="count"
-          label="数量">
+          prop="checkCount"
+          label="检票数量">
         </el-table-column>
         <el-table-column
-          prop="people_count"
+          prop="检票人数"
           label="人数">
         </el-table-column>
         <el-table-column
-          prop="sum_price"
-          label="总计">
+          prop="checkPrice"
+          label="检票金额">
         </el-table-column>
       </el-table>
     </div>
@@ -230,10 +188,9 @@ import { exportCheckStatisticsInTicketCount } from '@/api/queryReport'
 import { getTicketTypeList } from '@/api/ticketType'
 import { totalRowClassName } from '@/utils'
 import { apiOrder } from '@/api/order.js'
-import ReaderInput from '@/components/ReaderInput'
-import draggable from 'vuedraggable'
-
-import moment from 'moment'
+// import ReaderInput from '@/components/ReaderInput'
+// import draggable from 'vuedraggable'
+// import moment from 'moment'
 export default {
   name: 'checkStatistic',
   computed: {
@@ -251,29 +208,25 @@ export default {
     }
   },
   components: {
-    draggable,
-    ReaderInput
   },
   data () {
     return {
-      groupKeys: [{ value: 'tag_name', label: '票种标签' }, { value: 'ota_name', label: '分销商' }],
+      groupKeys: [{ value: 'tagName', label: '票种标签' }, { value: 'otaName', label: '分销商' }],
       ticketTypeList: [],
       form: {
-        startDate: new Date(moment().format('YYYY-MM-DD') + ' 00:00:00'),
-        endDate: new Date(moment().format('YYYY-MM-DD') + ' 23:59:59'),
-        keyWords1: '', // ticket_type_id
-        keyList1: [],
-        keyWords3: '',
-        keyWords6: '', // 身份证
-        keyWords7: '', // 散票or团体
-        keyList2: [],
-        keyGroupBy: []
+        export: false,
+        checkTimeBegin: '',
+        checkTimeEnd: '',
+        ticketTypeIdList: '', //
+        sourceList: [],
+        pageNum: 1,
+        pageSize: 10
       },
       selectKeys: [],
       finalGroup: [],
       tableIndex: 1,
       OrderIndexArr: [],
-      isShow_ota_name: false,
+      isShow_otaName: false,
       tableData: [],
       loading: false
     }
@@ -290,9 +243,9 @@ export default {
     }, 1000)
   },
   watch: {
-    isShow_ota_name (newName, oldName) {
+    isShow_otaName (newName, oldName) {
       if (newName) {
-        this.form.keyGroupBy = ['ota_name']
+        this.form.keyGroupBy = ['otaName']
         this.getCheckStatistic()
       }
     }
@@ -347,8 +300,9 @@ export default {
       this.finalGroup = this.groupKeys.filter(i => {
         return this.selectKeys.includes(i.value)
       })
-      this.form.keyGroupBy = this.finalGroup.map(i => i.value)
-      apiOrder('getCheckStatisticsInTicketCount', this.form).then(res => {
+      // this.form.keyGroupBy = this.finalGroup.map(i => i.value)
+      apiOrder('orderCheckStatistics', this.form).then(res => {
+        console.log(res, '111')
         this.tableData = res.data
 
         this.finalGroup.forEach(i => {
@@ -406,6 +360,7 @@ export default {
       }
     },
     reportExport () {
+      this.form.export = true
       exportCheckStatisticsInTicketCount(this.form).then(() => {
         this.$message.success('导出成功。')
         this.goToDownload()

+ 52 - 66
src/pages/queryReport/salesQuery.vue

@@ -327,8 +327,8 @@
         </el-table-column>
         <el-table-column
           width="120"
-          prop="ota_3rd_orderNo"
-          label="渠道订单号"
+          prop="otaSourceName"
+          label="订单来源渠道"
         >
         </el-table-column>
         <el-table-column
@@ -337,9 +337,32 @@
           prop="payType">
         </el-table-column>
         <el-table-column
-          label="已开发票"
+          label="支付状态"
+          width="120"
+          prop="payStatus">
+        </el-table-column>
+        <el-table-column
+          label="支付状态"
+          fixed="right"
+        >
+          <template slot-scope="scope">
+            <el-tag
+              :type="getPayStatus(scope.row.payStatus,'type')"
+              size="normal"
+            >
+              {{ getPayStatus(scope.row.payStatus) }}
+            </el-tag>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="支付时间"
+          width="120"
+          prop="payTime">
+        </el-table-column>
+        <el-table-column
+          label="关闭时间"
           width="120"
-          prop="is_invoice_picked">
+          prop="closeTime">
         </el-table-column>
         <el-table-column
           label="票种"
@@ -352,48 +375,48 @@
           </template>
         </el-table-column>
         <el-table-column
-          width="100"
-          label="类型">
+          prop="saleAdminName"
+          width="120"
+          label="售票员"
+        >
+        </el-table-column>
+        <el-table-column
+          width="140"
+          label="售票时间"
+        >
           <template slot-scope="scope">
-            {{ scope.row.group_individual | groupIndividual }}
+            {{ scope.row.createTime | formatTime }}
           </template>
         </el-table-column>
         <el-table-column
-          width="80"
-          label="游客类型"
-          prop="customer_type">
+          prop="buyerName"
+          label="购买方名称"
+        ></el-table-column>
+        <el-table-column
+          prop="buyerPhone"
+          label="购买方手机">
         </el-table-column>
         <el-table-column
-          width="80"
-          label="销售渠道">
-          <!-- <template slot-scope="scope">
-            <el-tag
-              effect="dark"
-              :type="channelList[scope.row.sale_channel_id].type">
-              {{ channelList[scope.row.sale_channel_id].label }}
-            </el-tag>
-          </template> -->
+          prop="buyerIdentify"
+          label="购买方证件号">
         </el-table-column>
         <el-table-column
-          width="120"
-          label="售票员"
-        >
+          prop="buyerIdentifyType"
+          label="购买方证件类型">
           <template slot-scope="scope">
-            {{ scope.row.is_otaorder ? scope.row.ota_name : scope.row.manager }}
+            {{ papersType[scope.row.buyerIdentifyType] }}
           </template>
         </el-table-column>
         <el-table-column
-          width="140"
-          label="售票时间"
-        >
+          prop="buyerIdentifyType"
+          label="是否是线上订单">
           <template slot-scope="scope">
-            {{ scope.row.create_time | formatTime }}
+            {{ scope.row.isOnlineOrder ? '是' : '否' }}
           </template>
         </el-table-column>
-
         <el-table-column
           width="80"
-          prop="ticketList.length"
+          prop="ticketNum"
           label="所含票数"
         >
         </el-table-column>
@@ -413,20 +436,6 @@
             {{ scope.row.price }}
           </template>
         </el-table-column>
-        <el-table-column
-          width="90"
-          label="取票状态"
-          fixed="right"
-        >
-          <!-- <template slot-scope="scope">
-            <el-tag
-              :type="checkPrintStatus(scope.row.tickets).type"
-              size="normal"
-            >
-              {{ checkPrintStatus(scope.row.tickets).text }}
-            </el-tag>
-          </template> -->
-        </el-table-column>
         <el-table-column
           width="90"
           label="状态"
@@ -436,19 +445,6 @@
             <OrderStatusTag :value="scope.row.status"></OrderStatusTag>
           </template>
         </el-table-column>
-        <el-table-column
-          label="支付状态"
-          fixed="right"
-        >
-          <!-- <template slot-scope="scope">
-            <el-tag
-              :type="getPayStatus(scope.row.pay_status,'type')"
-              size="normal"
-            >
-              {{ getPayStatus(scope.row.pay_status) }}
-            </el-tag>
-          </template> -->
-        </el-table-column>
         <el-table-column
           width="80"
           label="备注"
@@ -543,11 +539,6 @@
             {{ scope.row.price/scope.row.check_num }}
           </template>
         </el-table-column>
-        <el-table-column
-          prop="guest_name"
-          label="游客姓名"
-        >
-        </el-table-column>
         <el-table-column
           prop="guest_papers_type"
           label="证件类型"
@@ -556,11 +547,6 @@
             {{ papersType[scope.row.guest_papers_type] }}
           </template>
         </el-table-column>
-        <el-table-column
-          prop="guest_identify"
-          label="证件号码"
-        >
-        </el-table-column>
 
         <el-table-column
           width="100"