ll
liukangdong
2025-02-24 afc417a4279fac75893ebe4376a0991aa4088540
ll
已修改10个文件
81 ■■■■ 文件已修改
admin/package-lock.json 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/api/business/combo.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/components/ComboDetail.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/components/Edit.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/components/OrderDetail.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/components/Refund.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/index.vue 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/order.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/combo/record.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/package-lock.json
@@ -5266,6 +5266,11 @@
      "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==",
      "dev": true
    },
    "dayjs": {
      "version": "1.11.13",
      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
      "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg=="
    },
    "de-indent": {
      "version": "1.0.2",
      "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
admin/package.json
@@ -21,6 +21,7 @@
    "@wangeditor/editor-for-vue": "^1.0.2",
    "axios": "^0.21.1",
    "core-js": "^3.6.5",
    "dayjs": "^1.11.13",
    "echarts": "^5.4.2",
    "ele-calendar": "^2.0.0",
    "element-ui": "^2.15.13",
admin/src/api/business/combo.js
@@ -10,6 +10,15 @@
    trim: true
  })
}
export function comboUpdatePost(data) {
  return request.post('/business/discount/updStatus', data, {
    trim: true
  })
}
export function comboDelPost(id) {
  return request.get(`/business/discount/delete/${id}`)
}
export function comboListPost(data) {
  return request.post('/business/discount/page', data, {
    trim: true
admin/src/views/combo/components/ComboDetail.vue
@@ -31,9 +31,9 @@
      </div>
      <div class="createTime_wrap">
        <span class="item">创建时间:{{ detail.createDate }}</span>
        <span class="item">创建人:{{ detail.creator }}</span>
        <span class="item">最后更新时间:{{ detail.editDate }}</span>
        <span class="item">更新人:{{ detail.editor }}</span>
        <span class="item">创建人:{{ detail.creatorName }}</span>
        <span class="item">最后更新时间:{{ detail.endDate }}</span>
        <span class="item">更新人:{{ detail.editorName }}</span>
      </div>
    </div>
    <div class="separate" />
@@ -55,7 +55,7 @@
    <div class="line">
      <div class="key">套餐简介:</div>
      <div class="value">
        <div>{{ detail.desc }}</div>
        <div>{{ detail.descs }}</div>
      </div>
    </div>
@@ -72,11 +72,11 @@
    </div>
    <div class="line">
      <div class="key">适用范围:</div>
      <div class="value">{{ detail.useWorkday == 1 && '工作日' }} {{ detail.useWorkday && detail.useHoliday && '|' }} {{ detail.useHoliday == 1 && '节假日' }}</div>
      <div class="value">{{ detail.useWorkday == 1 ? '工作日' : ''}} {{ detail.useWorkday && detail.useHoliday ? '|' : '' }} {{ detail.useHoliday == 1 ? '节假日' : '' }}</div>
    </div>
    <div class="line">
      <div class="key">适用项目:</div>
      <div class="value">{{ detail.isbike == 1 && '自行车' }} {{ detail.isbike && detail.iselecbike && '|' }} {{ detail.iselecbike == 1 && '电动车' }}</div>
      <div class="value">{{ detail.isbike == 1 ? '自行车' : '' }} {{ detail.isbike && detail.iselecbike ? '|' : '' }} {{ detail.iselecbike == 1 ? '电动车' :'' }}</div>
    </div>
    <div class="line">
admin/src/views/combo/components/Edit.vue
@@ -100,13 +100,13 @@
        </div>
      </el-form-item>
      <el-form-item label="总限额">
        <el-input class="w400" v-model="param.saleLimit" oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 12)"
        <el-input class="w400" v-model="param.saleLimit" oninput="value=value.replace(/^(-1+)|[^\d]+/g, '').slice(0, 12)"
          placeholder="请输入总发售数量" v-trim />
        <div class="placeholder9">请输入总发售数量,销量大于该数量后,不再支持销售;为空表示不限制</div>
      </el-form-item>
      <el-form-item label="日限额">
        <el-input class="w400" v-model="param.saleDayLimit"
          oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 12)" placeholder="请输入单日发售数量" v-trim />
          oninput="value=value.replace(/^(-1+)|[^\d]+/g, '').slice(0, 12)" placeholder="请输入单日发售数量" v-trim />
        <div class="placeholder9">请输入日发售数量,当日销量大于该数量后,不再支持销售;为空表示不限制</div>
      </el-form-item>
@@ -230,7 +230,7 @@
        if (res.useStartDate && res.useEndDate) {
          this.$set(this.param, 'useDate', [res.useStartDate, res.useEndDate])
        }
        this.$set(this.param, id, type == 'copy' ? null : this.param.id)
        this.$set(this.param, 'id', type == 'copy' ? null : this.param.id)
      })
    },
  }
admin/src/views/combo/components/OrderDetail.vue
@@ -1,5 +1,5 @@
<template>
  <GlobalWindow :title="title" width="1000px" :visible.sync="visible" :confirm-working="isWorking">
  <GlobalWindow :title="title" width="1100px" :visible.sync="visible" :confirm-working="isWorking">
    <div class="title">订单信息</div>
    <div class="info_warp">
      <div class="item">
@@ -32,7 +32,7 @@
      </div>
      <div class="item">
        <div class="la">完成时间:</div>
        <div class="val">{{ info.closeDate }}</div>
        <div class="val">{{ info.payDate }}</div>
      </div>
      <div class="item">
        <div class="la">备注:</div>
admin/src/views/combo/components/Refund.vue
@@ -72,7 +72,8 @@
        comboReDetailPost({ orderId: id }).then(res => {
          if (res) {
            this.form = res
            this.form.backType = 0
            // this.form.backType = 0
            this.$set(this.form, 'backType', 0)
            this.form.orderId = id
          }
        })
admin/src/views/combo/index.vue
@@ -49,7 +49,7 @@
          <div>
            <span v-if="row.status == 0" @click="handleEdit(row, 'copy')" class="primaryColor pointer">复制</span>
            <span v-if="row.status == 1" @click="handleEdit(row)" class="primaryColor pointer mr10">编辑</span>
            <span v-if="row.status == 1" @click="handleDetail(row)" class="red pointer">删除</span>
            <span v-if="row.status == 1" @click="handleDel(row)" class="red pointer">删除</span>
          </div>
        </template>
      </el-table-column>
@@ -68,7 +68,7 @@
import TableLayout from '@/layouts/TableLayout'
import Edit from './components/Edit'
import ComboDetail from './components/ComboDetail.vue'
import { comboListPost, comboEditPost } from '@/api/business/combo.js'
import { comboListPost, comboUpdatePost, comboDelPost } from '@/api/business/combo.js'
import { Message } from 'element-ui'
export default {
  extends: BasePageTemp,
@@ -130,12 +130,26 @@
      })
    },
    changeStatus(row) {
      comboEditPost({ ...row }).then(res => {
      comboUpdatePost({ ...row }).then(res => {
        if (res.code == 200) {
          return Message.success('更新成功')
        }
      })
    },
    handleDel(row) {
      this.$confirm('您确认要删除当前套餐吗?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
      }).then(() => {
        comboDelPost(row.id).then(res => {
          if (res) {
            Message.success('删除成功')
            this.getList()
          }
        })
      })
    },
    handleEdit(row, type = 'edit') {
      this.isShowEdit = true
      this.$nextTick(() => {
admin/src/views/combo/order.vue
@@ -15,7 +15,7 @@
      <el-table-column prop="money" align="center" label="合计(元)" min-width="80" show-overflow-tooltip />
      <el-table-column prop="money" align="center" label="实付(元)" min-width="80" show-overflow-tooltip />
      <el-table-column prop="refundMoney" align="center" label="已退金额(元)" min-width="100" show-overflow-tooltip />
      <el-table-column prop="memberId" align="center" label="用户信息" min-width="200" show-overflow-tooltip />
      <el-table-column prop="openid" align="center" label="用户信息" min-width="200" show-overflow-tooltip />
      <el-table-column prop="payWay" align="center" label="支付方式" min-width="80" show-overflow-tooltip>
        <template v-slot="{ row }">
          <span v-if="row.payWay == 0">微信支付</span>
@@ -62,6 +62,7 @@
  comboListOrderEx,
  comboOrderDetailPost
} from '@/api/business/combo.js'
import dayjs from 'dayjs'
export default {
  extends: BasePageTemp,
  components: {
@@ -105,7 +106,7 @@
          },
          {
            filed: 'selDate',
            type: 'date',
            type: 'daterange',
            label: '支付时间',
          },
          {
@@ -119,6 +120,8 @@
    }
  },
  created() {
    let date = dayjs().format('YYYY-MM-DD')
    this.$set(this.filters, 'selDate', [date,date])
    this.getList()
    // this.initData()
  },
@@ -144,8 +147,8 @@
        .then(() => {
          this.loading = true
          if (filters.selDate && filters.selDate.length > 0) {
            filters.startDate = filters.selDate[0]
            filters.endDate = filters.selDate[1]
            filters.startDate = filters.selDate[0] + ' 00:00:00'
            filters.endDate = filters.selDate[1] + ' 00:00:00'
          } else {
            filters.startDate = null
            filters.endDate = null
@@ -175,14 +178,14 @@
    getList(page) {
      const { pagination, filters } = this
      this.loading = true
      if (page) { pagination.page = page }
      if (filters.selDate && filters.selDate.length > 0) {
        filters.startDate = filters.selDate[0]
        filters.endDate = filters.selDate[1]
        filters.startDate = filters.selDate[0] + ' 00:00:00'
        filters.endDate = filters.selDate[1] + ' 00:00:00'
      } else {
        filters.startDate = null
        filters.endDate = null
      }
      if (page) { pagination.page = page }
      comboOrderPost({
        model: {
          ...filters,
admin/src/views/combo/record.vue
@@ -1,7 +1,7 @@
<template>
  <div class="main_app">
    <Breadcrumb />
    <QueryForm v-model="querys" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clearQueryForm">
    <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clearQueryForm">
    </QueryForm>
    <div class="table_btns">
      <el-button plain type="primary" @click="handleEx">导出</el-button>
@@ -249,7 +249,7 @@
    },
    clearQueryForm() {
      // eslint-disable-next-line no-unused-vars
      this.querys = {}
      this.filters = {}
      this.getList(1)
    },
    // 打开modal 冻结 解冻 作废