Przeglądaj źródła

内容发布页面调整

Shinohara Haruna 6 miesięcy temu
rodzic
commit
9447b0ead1
1 zmienionych plików z 66 dodań i 77 usunięć
  1. 66 77
      smsb-plus-ui/src/views/smsb/itemPush/index.vue

+ 66 - 77
smsb-plus-ui/src/views/smsb/itemPush/index.vue

@@ -1,6 +1,7 @@
 <template>
   <div class="p-2">
-    <transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
+    <transition :enter-active-class="proxy?.animate.searchAnimate.enter"
+      :leave-active-class="proxy?.animate.searchAnimate.leave">
       <div v-show="showSearch" class="mb-[10px]">
         <el-card shadow="hover" :style="{ height: '70px' }">
           <el-row :gutter="20" align="middle">
@@ -41,7 +42,8 @@
         <el-card shadow="hover" :style="{ marginTop: '10px', height: '60px' }">
           <el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="50px">
             <el-form-item label="名称" prop="name">
-              <el-input v-model="queryParams.name" style="width: 150px" placeholder="请输入名称" clearable @keyup.enter="handleQuery" />
+              <el-input v-model="queryParams.name" style="width: 150px" placeholder="请输入名称" clearable
+                @keyup.enter="handleQuery" />
             </el-form-item>
             <el-form-item label="类型" prop="itemType">
               <el-select v-model="queryParams.itemType" style="width: 150px" placeholder="请选择类型" clearable>
@@ -49,27 +51,24 @@
               </el-select>
             </el-form-item>
             <el-form-item label="时间" style="width: 250px">
-              <el-date-picker
-                v-model="dateRangeCreateTime"
-                value-format="YYYY-MM-DD HH:mm:ss"
-                type="daterange"
-                range-separator="-"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
-                :default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]"
-              />
+              <el-date-picker v-model="dateRangeCreateTime" value-format="YYYY-MM-DD HH:mm:ss" type="daterange"
+                range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
+                :default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]" />
             </el-form-item>
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['source:itemPush:add']">新增 </el-button>
-              <el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['source:itemPush:edit']"
-                >修改
+              <el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['source:itemPush:add']">新增
               </el-button>
-              <el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['source:itemPush:remove']"
-                >删除
+              <el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()"
+                v-hasPermi="['source:itemPush:edit']">修改
+              </el-button>
+              <el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()"
+                v-hasPermi="['source:itemPush:remove']">删除
+              </el-button>
+              <el-button type="warning" plain icon="Download" @click="handleExport"
+                v-hasPermi="['source:itemPush:export']">导出
               </el-button>
-              <el-button type="warning" plain icon="Download" @click="handleExport" v-hasPermi="['source:itemPush:export']">导出 </el-button>
             </el-form-item>
           </el-form>
         </el-card>
@@ -88,12 +87,12 @@
         </el-table-column>
         <el-table-column label="类型" align="center" width="100" prop="itemType">
           <template #default="scope">
-            <dict-tag :options="smsb_push_type" :value="scope.row.itemType"/>
+            <dict-tag :options="smsb_push_type" :value="scope.row.itemType" />
           </template>
         </el-table-column>
         <el-table-column label="审核状态" align="center" width="100" prop="status">
           <template #default="scope">
-            <dict-tag :options="smsb_push_state" :value="scope.row.status"/>
+            <dict-tag :options="smsb_push_state" :value="scope.row.status" />
           </template>
         </el-table-column>
         <el-table-column label="生效日期" align="left" prop="startDate" width="140">
@@ -106,39 +105,35 @@
             <span>{{ parseTime(scope.row.endDate, '{y}-{m}-{d}') }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="发布时间" align="left" prop="createTime" width="160"/>
-        <el-table-column label="创建人" align="left" prop="createUser" width="120" :show-overflow-tooltip="true"/>
+        <el-table-column label="发布时间" align="left" prop="createTime" width="160" />
+        <el-table-column label="创建人" align="left" prop="createUser" width="120" :show-overflow-tooltip="true" />
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="150">
           <template #default="scope">
-            <el-tooltip content="修改" placement="top">
+            <!-- <el-tooltip content="修改" placement="top">
               <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
-                         v-hasPermi="['source:itemPush:edit']"></el-button>
-            </el-tooltip>
+                v-hasPermi="['source:itemPush:edit']"></el-button>
+            </el-tooltip> -->
             <el-tooltip content="删除" placement="top">
               <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
-                         v-hasPermi="['source:itemPush:remove']"></el-button>
+                v-hasPermi="['source:itemPush:remove']"></el-button>
             </el-tooltip>
             <!--            <el-tooltip content="提交审核" placement="top">
                           <el-button link type="primary" icon="Top" @click="handleReview(scope.row)" v-hasPermi="['source:minioData:add']"></el-button>
                         </el-tooltip>-->
             <el-tooltip content="下发详情" placement="top">
-              <el-button link type="primary" icon="List" @click="handleDevice(scope.row)" v-hasPermi="['source:itemPush:edit']"></el-button>
+              <el-button link type="primary" icon="List" @click="handleDevice(scope.row)"
+                v-hasPermi="['source:itemPush:edit']"></el-button>
             </el-tooltip>
             <el-tooltip content="下架" placement="top">
-              <el-button
-                link
-                type="primary"
-                icon="Bottom"
-                v-if="scope.row.status == 'finish'"
-                @click="handleRemoveItem(scope.row)"
-                v-hasPermi="['source:itemPush:edit']"
-              ></el-button>
+              <el-button link type="primary" icon="Bottom" v-if="scope.row.status == 'finish'"
+                @click="handleRemoveItem(scope.row)" v-hasPermi="['source:itemPush:edit']"></el-button>
             </el-tooltip>
           </template>
         </el-table-column>
       </el-table>
 
-      <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
+      <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
+        v-model:limit="queryParams.pageSize" @pagination="getList" />
     </el-card>
     <!-- 添加或修改内容发布对话框 -->
     <el-dialog :title="dialog.title" v-model="dialog.visible" width="1500px" style="height: 700px" append-to-body>
@@ -146,8 +141,8 @@
         <!--设备列表-->
         <el-col :span="6" style="height: 100%; overflow: auto; border-right: 1px solid #eee; padding-right: 10px">
           <el-table v-loading="loading" :data="deviceList" @selection-change="handleSelectDevice" style="height: 520px">
-            <el-table-column type="selection" width="55" align="center"/>
-            <el-table-column label="设备名称" align="left" prop="name" :show-overflow-tooltip="true"/>
+            <el-table-column type="selection" width="55" align="center" />
+            <el-table-column label="设备名称" align="left" prop="name" :show-overflow-tooltip="true" />
           </el-table>
         </el-col>
         <!--发布名称-->
@@ -160,28 +155,24 @@
               <el-col :span="12">
                 <el-form-item label="类型" prop="itemType">
                   <el-select v-model="form.itemType" placeholder="请选择类型" @change="getItemList">
-                    <el-option v-for="dict in smsb_push_type" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option>
+                    <el-option v-for="dict in smsb_push_type" :key="dict.value" :label="dict.label"
+                      :value="parseInt(dict.value)"></el-option>
                   </el-select>
                 </el-form-item>
               </el-col>
               <el-col :span="12">
                 <el-form-item label="优先级" prop="level">
                   <el-select v-model="form.level" placeholder="请选择优先级">
-                    <el-option v-for="dict in smsb_push_level" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option>
+                    <el-option v-for="dict in smsb_push_level" :key="dict.value" :label="dict.label"
+                      :value="parseInt(dict.value)"></el-option>
                   </el-select>
                 </el-form-item>
               </el-col>
             </el-row>
             <el-form-item label="日期" prop="dateRange">
-              <el-date-picker
-                v-model="form.dateRange"
-                value-format="YYYY-MM-DD"
-                type="daterange"
-                range-separator="-"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
-                :default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]"
-              />
+              <el-date-picker v-model="form.dateRange" value-format="YYYY-MM-DD" type="daterange" range-separator="-"
+                start-placeholder="开始日期" end-placeholder="结束日期"
+                :default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]" />
             </el-form-item>
             <!-- Days of the Week -->
             <el-form-item label="每周">
@@ -216,11 +207,11 @@
             <el-table v-loading="loading" :data="itemList" style="height: 520px">
               <el-table-column label="ID" width="200" align="left" :show-overflow-tooltip="true">
                 <template #default="{ row }">
-                  <el-radio v-model="selectedRowId" :label="row.id" @change="handleRadioChange(row)"/>
+                  <el-radio v-model="selectedRowId" :label="row.id" @change="handleRadioChange(row)" />
                 </template>
               </el-table-column>
-              <el-table-column label="名称" align="left" prop="itemName" :show-overflow-tooltip="true"/>
-              <el-table-column label="资源数量" align="center" prop="sourceNum" width="80"/>
+              <el-table-column label="名称" align="left" prop="itemName" :show-overflow-tooltip="true" />
+              <el-table-column label="资源数量" align="center" prop="sourceNum" width="80" />
               <!--
                             <el-table-column label="创建人" align="left" prop="createUser" width="100" :show-overflow-tooltip="true" />
               -->
@@ -248,14 +239,16 @@
             <el-col :span="12">
               <el-form-item label="发布类型" prop="itemType">
                 <el-select v-model="form.itemType" placeholder="请选择类型" @change="getItemList" :disabled="true">
-                  <el-option v-for="dict in smsb_push_type" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option>
+                  <el-option v-for="dict in smsb_push_type" :key="dict.value" :label="dict.label"
+                    :value="parseInt(dict.value)"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="12">
               <el-form-item label="优先级" prop="level">
                 <el-select v-model="form.level" placeholder="请选择优先级" :disabled="true">
-                  <el-option v-for="dict in smsb_push_level" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option>
+                  <el-option v-for="dict in smsb_push_level" :key="dict.value" :label="dict.label"
+                    :value="parseInt(dict.value)"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
@@ -263,8 +256,10 @@
         </el-form>
       </div>
       <!--设备列表-->
-      <el-button type="primary" v-if="removeItemTag" icon="Bottom" :disabled="removeButtonTag" @click="handleDoRemoveItem()"> 下架 </el-button>
-      <el-table v-loading="deviceLoading" :data="pushDeviceList" style="height: 500px; margin-top: 10px" @selection-change="handleDeviceSelectionChange">
+      <el-button type="primary" v-if="removeItemTag" icon="Bottom" :disabled="removeButtonTag"
+        @click="handleDoRemoveItem()"> 下架 </el-button>
+      <el-table v-loading="deviceLoading" :data="pushDeviceList" style="height: 500px; margin-top: 10px"
+        @selection-change="handleDeviceSelectionChange">
         <el-table-column type="selection" v-if="removeItemTag" width="55" align="center" />
         <el-table-column label="设备名称" align="left" prop="deviceName" :show-overflow-tooltip="true" />
         <el-table-column label="发布排序" align="center" prop="sortNum" width="100" :show-overflow-tooltip="true" />
@@ -274,10 +269,12 @@
           </template>
         </el-table-column>
         <el-table-column label="发布时间" align="left" prop="createTime" width="170" :show-overflow-tooltip="true" />
-        <el-table-column label="操作" v-if="removeItemTag" align="center" class-name="small-padding fixed-width" width="150">
+        <el-table-column label="操作" v-if="removeItemTag" align="center" class-name="small-padding fixed-width"
+          width="150">
           <template #default="scope">
             <el-tooltip content="下架" placement="top">
-              <el-button link type="primary" icon="Bottom" @click="handleDoRemoveItem(scope.row)" v-hasPermi="['source:itemPush:edit']"></el-button>
+              <el-button link type="primary" icon="Bottom" @click="handleDoRemoveItem(scope.row)"
+                v-hasPermi="['source:itemPush:edit']"></el-button>
             </el-tooltip>
           </template>
         </el-table-column>
@@ -292,25 +289,17 @@
 </template>
 
 <script setup name="ItemPush" lang="ts">
-import {
-  addItemPush,
-  delItemPush,
-  getItemPush,
-  listItemPush,
-  pushStatistics,
-  reviewItemPush,
-  updateItemPush
-} from '@/api/smsb/source/item_push';
-import {ItemPushForm, ItemPushQuery, ItemPushVO} from '@/api/smsb/source/item_push_type';
-import {DeviceQuery, DeviceVO} from '@/api/smsb/device/device_type';
-import {listDevice} from '@/api/smsb/device/device';
-import {ItemQuery, ItemVO} from '@/api/smsb/source/item_type';
-import {listItem} from '@/api/smsb/source/item';
-import {ItemPushDeviceVO} from '@/api/smsb/source/item_push_device_type';
-import {listItemPushDeviceV2, removeItemPushDevice} from '@/api/smsb/source/item_push_device';
-
-const {proxy} = getCurrentInstance() as ComponentInternalInstance;
-const {smsb_push_state, smsb_push_device_state, smsb_push_type, smsb_push_level} = toRefs<any>(
+import { addItemPush, delItemPush, getItemPush, listItemPush, pushStatistics, reviewItemPush, updateItemPush } from '@/api/smsb/source/item_push';
+import { ItemPushForm, ItemPushQuery, ItemPushVO } from '@/api/smsb/source/item_push_type';
+import { DeviceQuery, DeviceVO } from '@/api/smsb/device/device_type';
+import { listDevice } from '@/api/smsb/device/device';
+import { ItemQuery, ItemVO } from '@/api/smsb/source/item_type';
+import { listItem } from '@/api/smsb/source/item';
+import { ItemPushDeviceVO } from '@/api/smsb/source/item_push_device_type';
+import { listItemPushDeviceV2, removeItemPushDevice } from '@/api/smsb/source/item_push_device';
+
+const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const { smsb_push_state, smsb_push_device_state, smsb_push_type, smsb_push_level } = toRefs<any>(
   proxy?.useDict('smsb_push_state', 'smsb_push_device_state', 'smsb_push_type', 'smsb_push_level')
 );
 
@@ -357,7 +346,7 @@ const deviceDialog = reactive<DialogOption>({
 const initFormData: ItemPushForm = {
   name: undefined,
   level: undefined,
-  itemType: undefined,
+  itemType: 2, // "分屏组"类型
   deviceIds: undefined,
   itemIds: undefined,
   dateRange: undefined,