dct 11 месяцев назад
Родитель
Сommit
5e0aa878b2

+ 5 - 13
src/api/printModal.js

@@ -9,23 +9,15 @@ export function addTicketPrintModel ({ content, name, ticket_type_id_list }) {
 }
 
 export function deleteTicketPrintModel (id) {
-  return http.post('/ticketPrintModel/deleteTicketPrintModel', {
-    id
-  })
+  return http.post('/ticketPrintModel/deleteTicketPrintModel', { data: { idList: [id] } })
 }
 
-export function getTicketPrintModelList () {
-  return http.post('/ticketPrintModel/getTicketPrintModelList', { pageSize: 0, pageNum: 0 })
+export function getTicketPrintModelList (params) {
+  return http.post('/admin/ticketPrintTemplate', { data: params })
 }
 
-export function updateTicketPrintModel ({ id, name, content, ticket_type_id_list }) {
-  return http.post('/ticketPrintModel/updateTicketPrintModel', {
-    id,
-    name,
-    content,
-    is_in_use: 0,
-    ticket_type_id_list
-  })
+export function updateTicketPrintModel (params) {
+  return http.post('/admin/ticketPrintTemplate/update', { data: params })
 }
 export function secondPrintTicket (list) {
   return http.post('/order/secondPrintTicket',

+ 13 - 5
src/globalData.vue

@@ -47,23 +47,31 @@ export default {
   methods: {
     // 提前设置打印模板
     getTicketPrintModelList () {
-      getTicketPrintModelList().then(res => {
+      const params = {
+        pageNum: 1,
+        pageSize: -1,
+        name: '',
+        content: ''
+      }
+      getTicketPrintModelList(params).then(res => {
+        const list = res.data.records
         let id = this.$localStore.get('defaultTemplate')
-        let target = res.list.find(i => i.id === id)
+        let target = list.find(i => i.id === id)
         // 设置当前打印模板
         this.$store.commit('SET_PRINT_TEMPLATE', target ? JSON.parse(target.content) : whitePaper)
         // 设置打印模板列表
-        res.list.length > 0 && this.$store.commit('SET_PRINT_TEMPLATE_LIST', res.list)
+        list.length > 0 && this.$store.commit('SET_PRINT_TEMPLATE_LIST', list)
       })
     },
     getReceiptPrintModel () {
       getReceiptPrintModel().then(res => {
         let id = this.$localStore.get('defaultSmallTicketTemplate')
-        let target = res.list.find(i => i.id === id)
+        const list = res.data.records
+        let target = list.find(i => i.id === id)
         // 设置当前打印模板
         target && this.$store.commit('SET_SMALL_TICKET_TEMPLATE', target ? JSON.parse(target.content) : defaultSmallTicket)
         // 设置打印模板列表
-        res.list.length > 0 && this.$store.commit('SET_SMALL_TICKET_TEMPLATE_LIST', res.list)
+        list.length > 0 && this.$store.commit('SET_SMALL_TICKET_TEMPLATE_LIST', res.list)
       })
     }
   }

+ 12 - 15
src/pages/queryReport/checkStatistic/CheckStatisticInTicketCount.vue

@@ -185,8 +185,8 @@
 </template>
 <script>
 import { exportCheckStatisticsInTicketCount } from '@/api/queryReport'
-import { getTicketTypeList } from '@/api/ticketType'
 import { totalRowClassName } from '@/utils'
+import moment from 'moment'
 import { apiOrder } from '@/api/order.js'
 // import ReaderInput from '@/components/ReaderInput'
 // import draggable from 'vuedraggable'
@@ -203,6 +203,9 @@ export default {
     scenicList () {
       return this.$store.state.app.scenicList
     },
+    ticketTypeList () {
+      return this.$store.state.app.ticketTypeList
+    },
     userScenic () {
       return this.$store.state.app.account.manager_scenic_matrix ? this.$store.state.app.account.manager_scenic_matrix : this.$store.state.app.scenicList
     }
@@ -212,11 +215,10 @@ export default {
   data () {
     return {
       groupKeys: [{ value: 'tagName', label: '票种标签' }, { value: 'otaName', label: '分销商' }],
-      ticketTypeList: [],
       form: {
         export: false,
-        checkTimeBegin: '',
-        checkTimeEnd: '',
+        checkTimeBegin: new Date(moment().subtract(7, 'day').format('YYYY-MM-DD HH:mm:ss')),
+        checkTimeEnd: new Date(moment().format('YYYY-MM-DD HH:mm:ss')),
         ticketTypeIdList: '', //
         sourceList: [],
         pageNum: 1,
@@ -232,7 +234,6 @@ export default {
     }
   },
   created () {
-    this.getTicketTypeList()
     this.getCheckStatistic()
   },
   mounted () {
@@ -281,15 +282,6 @@ export default {
     reset () {
       this.$refs.form.resetFields()
     },
-    // 获取票种列表
-    getTicketTypeList () {
-      return getTicketTypeList({
-        pageNum: 1,
-        pageSize: 999
-      }).then(res => {
-        this.ticketTypeList = res.list
-      })
-    },
     // 获取表格数据
     getCheckStatistic () {
       this.loading = true
@@ -300,9 +292,14 @@ export default {
       this.finalGroup = this.groupKeys.filter(i => {
         return this.selectKeys.includes(i.value)
       })
+      if (this.form.checkTimeBegin) {
+        this.form.checkTimeBegin = moment(this.form.checkTimeBegin).format('YYYY-MM-DD HH:mm:ss')
+      }
+      if (this.form.checkTimeEnd) {
+        this.form.checkTimeEnd = moment(this.form.checkTimeEnd).format('YYYY-MM-DD HH:mm:ss')
+      }
       // 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 => {

+ 1 - 1
src/pages/queryReport/salesQuery.vue

@@ -959,7 +959,7 @@ export default {
         partnerOrderNo: '', // OTA订单号
         otaOrderNo: '', // 渠道订单号
         orderNo: '', // 订单号
-        createTime: ['', ''], // 下单时间
+        createTime: [new Date(moment().subtract(7, 'day').format('YYYY-MM-DD HH:mm:ss')), new Date(moment().format('YYYY-MM-DD HH:mm:ss'))], // 下单时间
         createTimeBegin: '',
         createTimeEnd: '',
         playDate: ['', ''], // 游玩时间

+ 3 - 3
src/pages/sellManage/retail/FormInfo.vue

@@ -107,19 +107,19 @@
           >
           </el-date-picker>
         </el-form-item>
-        <!-- <el-form-item
-          verify
+        <el-form-item
           prop="playDateEnd"
           label="结束日期">
           <el-date-picker
             :clearable="false"
             :editable="false"
+            disabled
             :picker-options="dateOption"
             v-model="form.playDateEnd"
             type="date"
           >
           </el-date-picker>
-        </el-form-item> -->
+        </el-form-item>
         <el-form-item
           verify
           number

+ 4 - 6
src/pages/systemSetting/commonSetting.vue

@@ -10,18 +10,16 @@
           @click="showDialog('add')">新增配置</el-button>
       </div> -->
       <el-table border stripe v-loading="loading" :data="configList">
-        <el-table-column prop="id" label="ID">
-        </el-table-column>
-        <el-table-column prop="configKey" label="配置键">
-        </el-table-column>
+        <!-- <el-table-column prop="configKey" label="配置键">
+        </el-table-column> -->
         <el-table-column prop="configValue" label="配置值">
         </el-table-column>
         <el-table-column prop="configDesc" label="描述"></el-table-column>
-        <el-table-column label="创建时间">
+        <!-- <el-table-column label="创建时间">
           <template slot-scope="scope">
             {{ scope.row.createTime | formatTime }}
           </template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column fixed="right" label="操作" width="120">
           <template slot-scope="scope">
             <el-button type="text" size="small" @click="showDialog('edit', scope.row)">

+ 9 - 2
src/pages/systemSetting/operationLog.vue

@@ -138,6 +138,7 @@
 
 <script>
 import { getWebLog } from '@/api/systemSetting/webLog.js'
+import moment from 'moment'
 
 export default {
   computed: {
@@ -149,8 +150,8 @@ export default {
     return {
       ticketTypeList: [],
       form: {
-        createTimeStart: '',
-        createTimeEnd: '',
+        createTimeStart: new Date(moment().subtract(7, 'day').format('YYYY-MM-DD HH:mm:ss')),
+        createTimeEnd: new Date(moment().format('YYYY-MM-DD HH:mm:ss')),
         adminId: '',
         apiName: '',
         pageNum: 1,
@@ -171,6 +172,12 @@ export default {
     },
     getList (goFirst) {
       this.loading = true
+      if (this.form.createTimeStart) {
+        this.form.createTimeStart = moment(this.form.createTimeStart).format('YYYY-MM-DD HH:mm:ss')
+      }
+      if (this.form.createTimeEnd) {
+        this.form.createTimeEnd = moment(this.form.createTimeEnd).format('YYYY-MM-DD HH:mm:ss')
+      }
       goFirst && (this.form.pageNum = 1)
       getWebLog(this.form).then(res => {
         this.total = res.data.total

+ 75 - 23
src/pages/systemSetting/printManage.vue

@@ -1,5 +1,41 @@
 <template>
   <div class="tableBox">
+    <el-form
+      class="searchBox"
+      ref="form"
+      :model="form"
+      :inline="true"
+      label-width="70px">
+      <div class="block-title">
+        查询条件
+      </div>
+      <el-form-item
+        label="名称"
+        prop="name">
+        <el-input v-model="form.name"></el-input>
+      </el-form-item>
+
+      <el-form-item
+        label="内容"
+        prop="content">
+        <el-input v-model="form.content"></el-input>
+      </el-form-item>
+
+      <div class="btn-wrap">
+        <el-button
+          @click="reset"
+        >
+          重置
+        </el-button>
+        <el-button
+          :disabled="loading"
+          type="primary"
+          @click="getTicketPrintModelList"
+        >
+          搜索
+        </el-button>
+      </div>
+    </el-form>
     <div
       class="btn-wrap-left"
       style="padding:10px 24px">
@@ -33,23 +69,17 @@
         label="模板名"
       >
         <template slot-scope="scope">
-          {{ scope.row.name }} {{ currentTemplate===scope.row.id?'【当前模板】':'' }}
+          {{ scope.row.name }}
         </template>
       </el-table-column>
       <el-table-column
-        prop="ticket_type_list"
-        label="绑定票种"
+        prop="name"
+        label="是否默认"
       >
         <template slot-scope="scope">
-          <el-tag
-            v-for="(item,index) in scope.row.ticket_type_list"
-            :key="index"
-          >
-            {{ item.name }}
-          </el-tag>
+          {{ scope.row.isDefault === 1 ? '是' : '否' }}
         </template>
       </el-table-column>
-
       <el-table-column
         fixed="right"
         label="操作"
@@ -59,7 +89,7 @@
           <el-button
             type="text"
             size="small"
-            v-if="currentTemplate!==scope.row.id"
+            v-if="scope.row.isDefault !== 1"
             @click="setDefault(scope.row)"
           >
             设为默认
@@ -74,14 +104,13 @@
           <el-button
             type="text"
             size="small"
-            @click="$refs.printEditor.show('edit',scope.row)"
+            @click="$refs.printEditor.show('edit', scope.row)"
           >
             编辑
           </el-button>
           <el-button
             type="text"
             size="small"
-            v-if="currentTemplate!==scope.row.id"
             @click="delTemplate(scope.row.id)"
           >
             删除
@@ -98,7 +127,7 @@
 
 <script>
 import PrintEditor from './printManage/index.vue'
-import { addTicketPrintModel, getTicketPrintModelList, deleteTicketPrintModel } from '@/api/printModal'
+import { addTicketPrintModel, getTicketPrintModelList, updateTicketPrintModel, deleteTicketPrintModel } from '@/api/printModal'
 
 export default {
   components: {
@@ -110,25 +139,36 @@ export default {
     }
   },
   created () {
+    this.getTicketPrintModelList()
     this.currentTemplate = this.$localStore.get('defaultTemplate') || ''
   },
   data () {
     return {
       loading: false,
       tableData: [],
+      form: {
+        name: '',
+        content: '',
+        pageNum: 1,
+        pageSize: -1
+      },
       currentTemplate: ''
     }
   },
   methods: {
+    reset () {
+      this.$refs.form.resetFields()
+    },
     getTicketPrintModelList () {
       this.loading = false
-      getTicketPrintModelList().then(res => {
+      getTicketPrintModelList(this.form).then(res => {
+        const list = res.data.records
         let id = this.currentTemplate - 0
-        let target = res.list.find(i => i.id === id)
+        let target = list.find(i => i.id === id)
         // 设置当前打印模板
         target && this.$store.commit('SET_PRINT_TEMPLATE', JSON.parse(target.content))
         // 设置打印模板列表
-        this.$store.commit('SET_PRINT_TEMPLATE_LIST', res.list)
+        this.$store.commit('SET_PRINT_TEMPLATE_LIST', list)
       }).finally(() => {
         this.loading = false
       })
@@ -140,16 +180,24 @@ export default {
         type: 'warning'
       }).then(() => {
         deleteTicketPrintModel(id).then(res => {
-          this.$message.success('删除成功')
+          if (res.data.code === '200') {
+            this.$message.success('删除成功')
+          } else {
+            this.$message.error(res.msg || '删除失败')
+          }
           this.getTicketPrintModelList()
         })
       })
     },
     setDefault (item) {
-      this.$localStore.set('defaultTemplate', item.id)
-      this.currentTemplate = item.id
-      this.$store.commit('SET_PRINT_TEMPLATE', JSON.parse(item.content))
-      this.$message.success('设置成功')
+      updateTicketPrintModel({ ...item, isDefault: 1 }).then(res => {
+        if (res.data.code === '200') {
+          this.$message.success('设置成功')
+        } else {
+          this.$message.error(res.msg || '设置失败')
+        }
+        this.getTicketPrintModelList()
+      })
     },
     handleCopy (item) {
       this.$confirm('确定创建模板副本?', '提示', {
@@ -161,7 +209,11 @@ export default {
         copy.name = copy.name + ' - 副本'
 
         addTicketPrintModel(copy).then(res => {
-          this.$message.success('创建成功')
+          if (res.data.code === '200') {
+            this.$message.success('创建成功')
+          } else {
+            this.$message.error(res.msg || '创建失败')
+          }
 
           this.getTicketPrintModelList()
         })

+ 5 - 66
src/pages/systemSetting/printManage/index.vue

@@ -84,31 +84,6 @@
                 v-model="customStyle.canvas.height"
               ></el-input>
             </el-form-item>
-            <el-form-item
-              label="绑定票种"
-              prop="ticket_type_id_list">
-              <el-select
-                style="width:100%"
-                v-model="form.ticket_type_id_list"
-                multiple
-                collapse-tags
-                filterable
-                clearable
-                placeholder="请选择"
-                @change="selectAll">
-                <el-option
-                  :value="0"
-                  label="全部">
-                </el-option>
-                <el-option
-                  v-for="item in ticketTypeList"
-                  :key="item.id"
-                  :label="item.name"
-                  :value="item.id">
-                </el-option>
-              </el-select>
-              <span style="font-size:10px;color:#a5a5a5">(若一个票种同时绑定了多个模板,则后面绑定的会覆盖前面的)</span>
-            </el-form-item>
             <el-form-item label="翻转打印">
               <el-switch
                 v-model="customStyle.canvas.reverse"
@@ -198,7 +173,6 @@
           <el-form-item>
             <el-button
               @click="save"
-              v-if="checkPermission('system_setting:print_model')"
               type="primary">
               保存
             </el-button>
@@ -280,7 +254,7 @@ export default {
       },
       form: {
         name: '',
-        ticket_type_id_list: []
+        content: ''
       },
       options: [
         {
@@ -322,20 +296,15 @@ export default {
         case 'new':
           this.title = '新增模板'
           this.customStyle = JSON.parse(JSON.stringify(printOption[this.defaultTemplate]))
+          console.log(JSON.stringify(printOption[this.defaultTemplate]), '11212')
           this.form.name = ''
-          this.form.ticket_type_id_list = []
-          // 非大陈岛景区,新增模板时,不需要在模板中展示"序列号"
-          if (this.scenicName() !== '大陈岛景区') {
-            this.customStyle = this.deleteElementByName('序列号', this.customStyle)
-          }
           break
         case 'edit':
           this.title = '编辑模板'
           this.currentTemplate = data
-          this.customStyle = JSON.parse(data.content)
+          this.customStyle = JSON.parse(data.content.replace(/\\/g, ''))
           this.defaultTemplate = this.customStyle.canvas.direction
           this.form.name = data.name
-          this.form.ticket_type_id_list = data.ticket_type_list.map(item => item.id)
           let defaultStyle = JSON.parse(JSON.stringify(printOption[this.defaultTemplate]))
           let newElements = []
           defaultStyle.elements.forEach(item => {
@@ -416,8 +385,7 @@ export default {
     handleAdd () {
       addTicketPrintModel({
         name: this.form.name,
-        content: JSON.stringify(this.customStyle),
-        ticket_type_id_list: this.form.ticket_type_id_list
+        content: JSON.stringify(this.customStyle)
       }).then(res => {
         this.$message.success('添加成功')
         this.$emit('update')
@@ -429,7 +397,7 @@ export default {
         id: this.currentTemplate.id,
         name: this.form.name,
         content: JSON.stringify(this.customStyle),
-        ticket_type_id_list: this.form.ticket_type_id_list
+        isDefault: this.currentTemplate.isDefault
       }).then(res => {
         this.$message.success('编辑成功')
         this.$emit('update')
@@ -446,35 +414,6 @@ export default {
     handleTemplateChange (val) {
       this.customStyle = printOption[val]
       this.setCanvas()
-    },
-    selectAll (val) {
-      let allValues = this.ticketTypeList.map(i => i.id)
-
-      allValues.unshift(0) // 添加全部
-      // 用来储存上一次的值,可以进行对比
-      const oldVal = this.oldTicketTypeOptions.length === 1 ? [] : this.oldTicketTypeOptions[1]
-
-      // 若是全部选择
-      if (val.includes(0)) this.form.ticket_type_id_list = allValues
-
-      // 取消全部选中  上次有 当前没有 表示取消全选
-      if (oldVal.includes(0) && !val.includes(0)) this.form.ticket_type_id_list = []
-
-      // 点击非全部选中  需要排除全部选中 以及 当前点击的选项
-      // 新老数据都有全部选中
-      if (oldVal.includes(0) && val.includes(0)) {
-        const index = val.indexOf(0)
-        val.splice(index, 1) // 排除全选选项
-        this.form.ticket_type_id_list = val
-      }
-
-      // 全选未选 但是其他选项全部选上 则全选选上 上次和当前 都没有全选
-      if (!oldVal.includes(0) && !val.includes(0)) {
-        if (val.length === allValues.length - 1) this.form.ticket_type_id_list = [0].concat(val)
-      }
-
-      // 储存当前最后的结果 作为下次的老数据
-      this.oldTicketTypeOptions[1] = this.form.ticket_type_id_list
     }
   },
   watch: {

+ 5 - 5
src/pages/ticketSetting/ticket/Dialog.vue

@@ -118,7 +118,7 @@
         </el-radio>
       </el-form-item>
 
-      <el-form-item
+      <!-- <el-form-item
         v-if="form.useDateType === 2"
         label="消费日期"
         prop="validityUseDays"
@@ -131,7 +131,7 @@
           :step="1"
         ></el-input-number>
         天内可用
-      </el-form-item>
+      </el-form-item> -->
 
       <!-- <el-form-item
         label="是否限制使用日期"
@@ -212,7 +212,7 @@
         </el-checkbox>
       </el-form-item> -->
 
-      <el-form-item
+      <!-- <el-form-item
         label="是否限制售卖日期"
         prop="isSaleDateLimit"
       >
@@ -223,7 +223,7 @@
           active-text="限制"
           inactive-text="不限">
         </el-switch>
-      </el-form-item>
+      </el-form-item> -->
 
       <el-form-item
         v-if="form.isSaleDateLimit === 1"
@@ -659,7 +659,7 @@ const defaultForm = {
   realNameType: 1, // 在实名制购票下 1 【一证一人】:购买两张票需要两张实名。2【一证多人】:购买多张只需要一人实名
   buyProtocol: '', // 预定协议 富文本
   isAgreeProtocol: 0, // 是否必须同意预定协议才可以购买 开启为1 默认为0
-  isSaleDateLimit: 0, // 是否限制售卖日期 0为不限 1为限制 默认为0 如果限制 必须指定售卖时间
+  isSaleDateLimit: 1, // 是否限制售卖日期 0为不限 1为限制 默认为0 如果限制 必须指定售卖时间
   saleDateStart: moment().format('YYYY-MM-DD'), // 售卖时间开始
   saleDateEnd: moment().add(10, 'years').format('YYYY-MM-DD'), // 售卖时间结束
   isSalePreLimit: 0, // 是否限制预售范围 0为不限 1为限制 默认为0 如果限制 必须指定预售范围

+ 10 - 10
src/store/modules/app.js

@@ -233,21 +233,21 @@ const app = {
         pageNum: 0,
         pageSize: 0
       }).then(res => {
-        commit('SET_BATCH_LIST', res.list)
+        commit('SET_BATCH_LIST', res.data.records)
       })
     },
     getAgencyList ({ commit }) {
       return apiGetTravelAgencyList({
         pageNum: 0,
-        pageSize: 0,
+        pageSize: -1,
         keyWords6: 1
       }).then(res => {
-        commit('SET_AGENCY_LIST', res.list)
+        commit('SET_AGENCY_LIST', res.data.records)
       })
     },
     getSystemConfigList ({ commit }) {
       getSystemConfigList().then(res => {
-        commit('SET_SYSTEM_CONFIG', res.list)
+        commit('SET_SYSTEM_CONFIG', res.data.records)
       })
     },
     getSaleChannel ({ commit }) {
@@ -258,9 +258,9 @@ const app = {
     getMyAccount ({ commit, rootState }) {
       getAccountList({
         pageNum: 0,
-        pageSize: 0
+        pageSize: -1
       }).then(res => {
-        let target = res.list.find(i => i.nick_name === rootState.user.name)
+        let target = res.data.records.find(i => i.nick_name === rootState.user.name)
         // console.log(target)
         commit('SET_MY_ACCOUNT', target)
       })
@@ -268,7 +268,7 @@ const app = {
     getPayChannel ({ commit }) {
       return getPayChannel({
         pageNum: 0,
-        pageSize: 100,
+        pageSize: -1,
         keyWords1: '',
         type: ''
       }).then(res => {
@@ -288,15 +288,15 @@ const app = {
     },
     getTicketCategory ({ commit }) {
       return getTicketCategory().then(res => {
-        commit('SET_TICKET_CATEGORY', res.list)
+        commit('SET_TICKET_CATEGORY', res.data.records)
       })
     },
     getTicketTypeList ({ commit }) {
       return getTicketTypeList({
         pageNum: 0,
-        pageSize: 0
+        pageSize: -1
       }).then(res => {
-        commit('SET_TICKET_TYPE_LIST', res.list)
+        commit('SET_TICKET_TYPE_LIST', res.data.records)
       })
     },
     setLocalConfig ({ commit }, data) {