From 04dba6a17f836b5fbdf0eedff8a129c6785fd8a2 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 28 二月 2025 18:25:00 +0800
Subject: [PATCH] 111
---
admin/src/views/combo/index.vue | 114 ++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 88 insertions(+), 26 deletions(-)
diff --git a/admin/src/views/combo/index.vue b/admin/src/views/combo/index.vue
index 355231c..5951710 100644
--- a/admin/src/views/combo/index.vue
+++ b/admin/src/views/combo/index.vue
@@ -5,19 +5,52 @@
<el-button type="primary" @click="handleEdit()">鏂板</el-button>
</div>
<el-table v-loading="loading" :data="list" stripe border>
- <el-table-column prop="code" label="濂楅鍚嶇О" align="center" min-width="120" show-overflow-tooltip />
- <el-table-column prop="" label="濂楅绫诲瀷" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="娆℃暟" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="鏈夋晥鏈�" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="浠锋牸" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="鎬诲彂琛屾暟閲�" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="宸插敭鍞噺" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="閿�鍞笭閬�" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="閿�鍞椂娈�" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column prop="" label="鐘舵��" align="center" min-width="100" show-overflow-tooltip />
- <el-table-column label="鎿嶄綔" fixed="right" align="center" min-width="80" show-overflow-tooltip>
+ <el-table-column prop="name" label="濂楅鍚嶇О" align="center" min-width="120" show-overflow-tooltip>
<template v-slot="{ row }">
- <span @click="handleDetail(row)" class="primaryColor pointer">鏌ョ湅璇︽儏</span>
+ <span @click="handleDetail(row)" class="primaryColor pointer">{{ row.name }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" label="濂楅绫诲瀷" align="center" min-width="100" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <span v-if="row.type == 0">鏈熼檺鍗�</span>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column prop="" label="娆℃暟" align="center" min-width="100" show-overflow-tooltip /> -->
+ <el-table-column prop="useDays" label="鏈夋晥鏈�" align="center" min-width="90" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <span>{{ row.useDays }}澶�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="price" label="浠锋牸" align="center" min-width="80" show-overflow-tooltip />
+ <el-table-column prop="saleLimit" label="鎬诲彂琛屾暟閲�" align="center" min-width="100" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <span>{{ row.saleLimit ? row.saleLimit : '涓嶉檺棰�' }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="saleNum" label="宸插敭鍞噺" align="center" min-width="100" show-overflow-tooltip />
+ <el-table-column prop="" label="閿�鍞笭閬�" align="center" min-width="100" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <span v-if="row.channel == 0">灏忕▼搴�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" label="閿�鍞椂娈�" align="center" min-width="120" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <div>璧凤細{{ row.startDate }}</div>
+ <div>姝細{{ row.endDate }}</div>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" fixed="right" label="鐘舵��" align="center" min-width="80" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <el-switch @change="changeStatus(row)" v-model="row.status" :active-value="0" :inactive-value="1" />
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" fixed="right" align="center" min-width="120" show-overflow-tooltip>
+ <template v-slot="{ row }">
+ <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="handleDel(row)" class="red pointer">鍒犻櫎</span>
+ </div>
</template>
</el-table-column>
</el-table>
@@ -35,6 +68,8 @@
import TableLayout from '@/layouts/TableLayout'
import Edit from './components/Edit'
import ComboDetail from './components/ComboDetail.vue'
+import { comboListPost, comboUpdatePost, comboDelPost } from '@/api/business/combo.js'
+import { Message } from 'element-ui'
export default {
extends: BasePageTemp,
components: {
@@ -55,27 +90,35 @@
label: '濂楅鍚嶇О',
},
{
- filed: 'type',
+ filed: 'bikeOrElec',
type: 'select',
label: '閫傜敤椤圭洰',
labelCode: 'name',
valueCode: 'id',
- options: []
+ options: [
+ { name: '鑷杞�', id: 1 },
+ { name: '鐢靛姩杞�', id: 2 },
+ ]
},
{
filed: 'status',
type: 'select',
label: '鐘舵��',
- options: []
+ labelCode: 'name',
+ valueCode: 'id',
+ options: [
+ { name: '姝e父', id: 0 },
+ { name: '鍋滅敤', id: 1 },
+ ]
},
],
online: true
},
- list: [{}]
+ list: []
}
},
created() {
- // this.getList()
+ this.getList()
// this.initData()
},
methods: {
@@ -86,17 +129,41 @@
}
})
},
- handleEdit() {
+ changeStatus(row) {
+ 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(() => {
this.$refs.EditRef.isShowModal = true
+ if (row && row.id) {
+ this.$refs.EditRef.getDetail(row.id, type)
+ }
})
},
handleDetail(row) {
this.isShowDetail = true
this.$nextTick(() => {
this.$refs.DetailRef.isShowModal = true
- // this.$refs.DetailRef.getDetail(row.id)
+ this.$refs.DetailRef.getDetail(row.id)
})
},
handleEx() {
@@ -129,20 +196,15 @@
const { pagination, filters } = this
this.loading = true
if (page) { pagination.page = page }
- ywOutinboundPage({
+ comboListPost({
model: {
- ...filters,
- inOut: 0
+ ...filters
},
- // sorts: [{ direction: 'DESC', property: 'param1' }],
capacity: pagination.pageSize,
page: page,
}).then(res => {
this.loading = false
this.list = res.records || []
- this.list.forEach(item => {
- item.typeName = this.StoreTypeOps[item.type].name
- })
this.pagination.total = res.total || 0
}, () => {
this.loading = false
--
Gitblit v1.9.3