|
@@ -89,18 +89,30 @@
|
|
|
<el-table-column label="创建人" header-align="left" prop="createUser" width="120" :show-overflow-tooltip="true" />
|
|
<el-table-column label="创建人" header-align="left" prop="createUser" width="120" :show-overflow-tooltip="true" />
|
|
|
<el-table-column label="创建时间" header-align="left" prop="createTime" width="160" />
|
|
<el-table-column label="创建时间" header-align="left" prop="createTime" width="160" />
|
|
|
<el-table-column label="更新时间" header-align="left" prop="updateTime" width="160" />
|
|
<el-table-column label="更新时间" header-align="left" prop="updateTime" width="160" />
|
|
|
- <el-table-column label="操作" header-align="center" class-name="small-padding fixed-width" width="120">
|
|
|
|
|
- <template #default="scope">
|
|
|
|
|
- <el-tooltip content="修改" placement="top">
|
|
|
|
|
- <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
|
|
|
|
- v-hasPermi="['source:item:edit']"></el-button>
|
|
|
|
|
- </el-tooltip>
|
|
|
|
|
- <el-tooltip content="删除" placement="top">
|
|
|
|
|
- <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
|
|
|
|
|
- v-hasPermi="['source:item:remove']"></el-button>
|
|
|
|
|
- </el-tooltip>
|
|
|
|
|
- </template>
|
|
|
|
|
- </el-table-column>
|
|
|
|
|
|
|
+ <el-table-column label="操作" header-align="center" class-name="small-padding fixed-width" width="180">
|
|
|
|
|
+ <template #default="scope">
|
|
|
|
|
+ <el-tooltip content="修改" placement="top">
|
|
|
|
|
+ <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
|
|
|
|
+ v-hasPermi="['source:item:edit']"></el-button>
|
|
|
|
|
+ </el-tooltip>
|
|
|
|
|
+ <el-tooltip content="删除" placement="top">
|
|
|
|
|
+ <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
|
|
|
|
|
+ v-hasPermi="['source:item:remove']"></el-button>
|
|
|
|
|
+ </el-tooltip>
|
|
|
|
|
+ <el-tooltip content="编辑历史" placement="top">
|
|
|
|
|
+ <el-button link type="primary" icon="Clock" @click="onShowEditHistory(scope.row)"></el-button>
|
|
|
|
|
+ </el-tooltip>
|
|
|
|
|
+ </template>
|
|
|
|
|
+</el-table-column>
|
|
|
|
|
+
|
|
|
|
|
+<!-- 编辑历史弹窗 -->
|
|
|
|
|
+<el-dialog title="编辑历史" v-model="editHistoryDialog.visible" width="600px" append-to-body>
|
|
|
|
|
+ <el-table :data="editHistoryDialog.list" size="small" style="width: 100%">
|
|
|
|
|
+ <el-table-column prop="operName" label="操作人" width="120" />
|
|
|
|
|
+ <el-table-column prop="operParam" label="操作参数" />
|
|
|
|
|
+ <el-table-column prop="operTime" label="操作时间" width="180" />
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+</el-dialog>
|
|
|
</el-table>
|
|
</el-table>
|
|
|
|
|
|
|
|
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
|
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
|
@@ -293,9 +305,32 @@
|
|
|
|
|
|
|
|
<script setup name="Item" lang="ts">
|
|
<script setup name="Item" lang="ts">
|
|
|
import draggable from 'vuedraggable';
|
|
import draggable from 'vuedraggable';
|
|
|
-import { onActivated } from 'vue';
|
|
|
|
|
|
|
+import { onActivated, reactive } from 'vue';
|
|
|
|
|
+import { getEditHistory } from '@/api/smsb/source/item';
|
|
|
|
|
+import type { SplitEditHistoryVo, ItemVO, ItemQuery, ItemForm } from '@/api/smsb/source/item_type';
|
|
|
|
|
+
|
|
|
|
|
+// 编辑历史弹窗数据
|
|
|
|
|
+const editHistoryDialog = reactive({
|
|
|
|
|
+ visible: false,
|
|
|
|
|
+ list: [] as SplitEditHistoryVo[],
|
|
|
|
|
+});
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 打开编辑历史弹窗
|
|
|
|
|
+ * @param row 当前行数据
|
|
|
|
|
+ */
|
|
|
|
|
+function onShowEditHistory(row: ItemVO) {
|
|
|
|
|
+ editHistoryDialog.visible = true;
|
|
|
|
|
+ editHistoryDialog.list = [];
|
|
|
|
|
+ // type: 1=轮播组, 2=分屏组
|
|
|
|
|
+ const type = row.itemType === 1 ? 1 : 2;
|
|
|
|
|
+ getEditHistory(row.id, type).then(res => {
|
|
|
|
|
+ console.log('编辑历史数据:', res.data);
|
|
|
|
|
+ editHistoryDialog.list = res.data || [];
|
|
|
|
|
+ });
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
import { listItem, getItem, delItem, addItem, updateItem, itemStatistics } from '@/api/smsb/source/item';
|
|
import { listItem, getItem, delItem, addItem, updateItem, itemStatistics } from '@/api/smsb/source/item';
|
|
|
-import { ItemVO, ItemQuery, ItemForm } from '@/api/smsb/source/item_type';
|
|
|
|
|
import { MinioDataQuery, MinioDataVO } from '@/api/smsb/source/minioData_type';
|
|
import { MinioDataQuery, MinioDataVO } from '@/api/smsb/source/minioData_type';
|
|
|
import { listMinioData } from '@/api/smsb/source/minioData';
|
|
import { listMinioData } from '@/api/smsb/source/minioData';
|
|
|
import { nextTick } from 'vue';
|
|
import { nextTick } from 'vue';
|