From 0924fcc06ead4d10ea5d0d579c8224850a0f37a4 Mon Sep 17 00:00:00 2001
From: fuchengshen <men883234@gmail.com>
Date: 星期五, 24 六月 2022 09:15:09 +0800
Subject: [PATCH] 更改设备分组页面样式
---
vite.config.ts | 4
src/cool/modules/hntask/views/immediate_task.vue | 31 ++++
src/cool/modules/base/views/user.vue | 174 +++++++++++-------------
src/cool/modules/base/components/role/select_device.vue | 66 +++++++++
src/cool/modules/hntask/views/periodic_task.vue | 57 +++++++
src/cool/modules/basedevice/views/basedevice_group.vue | 54 ++++++-
6 files changed, 280 insertions(+), 106 deletions(-)
diff --git a/src/cool/modules/base/components/role/select_device.vue b/src/cool/modules/base/components/role/select_device.vue
new file mode 100644
index 0000000..6223fe1
--- /dev/null
+++ b/src/cool/modules/base/components/role/select_device.vue
@@ -0,0 +1,66 @@
+<template>
+ <el-select v-model="value"
+ v-bind="props"
+ multiple
+ @change="onChange">
+ <el-option v-for="(item, index) in list"
+ :key="index"
+ :value="item.logic_id"
+ :label="item.logic_id" />
+ </el-select>
+</template>
+
+<script lang="ts">
+import { defineComponent, onMounted, ref, watch } from "vue";
+import { useCool } from "/@/cool";
+import { isArray } from "/@/cool/utils";
+
+export default defineComponent({
+ name: "cl-device-select",
+
+ props: {
+ modelValue: [String, Number, Array],
+ props: Object
+ },
+
+ emits: ["update:modelValue"],
+
+ setup(props, { emit }) {
+ // 璇锋眰鏈嶅姟
+ const { service } = useCool();
+
+ // 鏁版嵁鍒楄〃
+ const list = ref<any[]>([]);
+
+ // 缁戝畾鍊�
+ const value = ref<any>();
+
+ // 缁戝畾鍊煎洖璋�
+ function onChange(val: any) {
+ emit("update:modelValue", val);
+ }
+
+ // 瑙f瀽鍊�
+ watch(
+ () => props.modelValue,
+ (val: any) => {
+ value.value = (isArray(val) ? val : [val]).filter(Boolean);
+ },
+ {
+ immediate: true
+ }
+ );
+
+ onMounted(async () => {
+ console.log(list, "list");
+ list.value = await service.business.basedeviceinfo.list();
+ });
+
+ return {
+ list,
+ value,
+ onChange
+ };
+ }
+});
+</script>
diff --git a/src/cool/modules/base/views/user.vue b/src/cool/modules/base/views/user.vue
index 843550d..5fc4114 100644
--- a/src/cool/modules/base/views/user.vue
+++ b/src/cool/modules/base/views/user.vue
@@ -1,104 +1,94 @@
<template>
- <div class="system-user">
- <div class="pane">
- <!-- 缁勭粐鏋舵瀯 -->
- <div class="dept" :class="[isExpand ? '_expand' : '_collapse']">
- <cl-dept-tree
- @row-click="onDeptRowClick"
- @user-add="onDeptUserAdd"
- @list-change="onDeptListChange"
- />
- </div>
+ <div class="system-user">
+ <div class="pane">
+ <!-- 缁勭粐鏋舵瀯 -->
+ <div class="dept"
+ :class="[isExpand ? '_expand' : '_collapse']">
+ <cl-dept-tree @row-click="onDeptRowClick"
+ @user-add="onDeptUserAdd"
+ @list-change="onDeptListChange" />
+ </div>
- <!-- 鎴愬憳鍒楄〃 -->
- <div class="user">
- <div class="header">
- <div class="icon" @click="deptExpand">
- <i class="el-icon-arrow-left" v-if="isExpand"></i>
- <i class="el-icon-arrow-right" v-else></i>
- </div>
+ <!-- 鎴愬憳鍒楄〃 -->
+ <div class="user">
+ <div class="header">
+ <div class="icon"
+ @click="deptExpand">
+ <i class="el-icon-arrow-left"
+ v-if="isExpand"></i>
+ <i class="el-icon-arrow-right"
+ v-else></i>
+ </div>
- <span>鎴愬憳鍒楄〃</span>
- </div>
+ <span>鎴愬憳鍒楄〃</span>
+ </div>
- <div class="container">
- <cl-crud :ref="setRefs('crud')" :on-refresh="onRefresh" @load="onLoad">
- <el-row type="flex">
- <cl-refresh-btn />
- <cl-add-btn />
- <cl-multi-delete-btn />
- <el-button
- v-permission="service.base.sys.user.permission.move"
- size="mini"
- type="success"
- :disabled="selects.ids.length == 0"
- @click="toMove()"
- >杞Щ</el-button
- >
- <cl-flex1 />
- <cl-search-key />
- </el-row>
+ <div class="container">
+ <cl-crud :ref="setRefs('crud')"
+ :on-refresh="onRefresh"
+ @load="onLoad">
+ <el-row type="flex">
+ <cl-refresh-btn />
+ <cl-add-btn />
+ <cl-multi-delete-btn />
+ <el-button v-permission="service.base.sys.user.permission.move"
+ size="mini"
+ type="success"
+ :disabled="selects.ids.length == 0"
+ @click="toMove()">杞Щ</el-button>
+ <cl-flex1 />
+ <cl-search-key />
+ </el-row>
- <el-row>
- <cl-table
- :ref="setRefs('table')"
- v-bind="table"
- @selection-change="onSelectionChange"
- >
- <!-- 澶村儚 -->
- <template #column-headImg="{ scope }">
- <cl-avatar
- shape="square"
- size="medium"
- :src="scope.row.headImg"
- :style="{ margin: 'auto' }"
- />
- </template>
+ <el-row>
+ <cl-table :ref="setRefs('table')"
+ v-bind="table"
+ @selection-change="onSelectionChange">
+ <!-- 澶村儚 -->
+ <template #column-headImg="{ scope }">
+ <cl-avatar shape="square"
+ size="medium"
+ :src="scope.row.headImg"
+ :style="{ margin: 'auto' }" />
+ </template>
- <!-- 鏉冮檺 -->
- <template #column-roleName="{ scope }">
- <el-tag
- v-for="(item, index) in scope.row.roleNameList"
- :key="index"
- disable-transitions
- size="small"
- effect="dark"
- style="margin: 2px"
- >{{ item }}</el-tag
- >
- </template>
+ <!-- 鏉冮檺 -->
+ <template #column-roleName="{ scope }">
+ <el-tag v-for="(item, index) in scope.row.roleNameList"
+ :key="index"
+ disable-transitions
+ size="small"
+ effect="dark"
+ style="margin: 2px">{{ item }}</el-tag>
+ </template>
- <!-- 鍗曚釜杞Щ -->
- <template #slot-move-btn="{ scope }">
- <el-button
- v-permission="service.base.sys.user.permission.move"
- type="text"
- size="mini"
- @click="toMove(scope.row)"
- >杞Щ</el-button
- >
- </template>
- </cl-table>
- </el-row>
+ <!-- 鍗曚釜杞Щ -->
+ <template #slot-move-btn="{ scope }">
+ <el-button v-permission="service.base.sys.user.permission.move"
+ type="text"
+ size="mini"
+ @click="toMove(scope.row)">杞Щ</el-button>
+ </template>
+ </cl-table>
+ </el-row>
- <el-row type="flex">
- <cl-flex1 />
- <cl-pagination />
- </el-row>
+ <el-row type="flex">
+ <cl-flex1 />
+ <cl-pagination />
+ </el-row>
- <cl-upsert
- :ref="setRefs('upsert')"
- v-bind="upsert"
- :on-submit="onUpsertSubmit"
- />
- </cl-crud>
- </div>
- </div>
- </div>
+ <cl-upsert :ref="setRefs('upsert')"
+ v-bind="upsert"
+ :on-submit="onUpsertSubmit" />
+ </cl-crud>
+ </div>
+ </div>
+ </div>
- <!-- 閮ㄩ棬绉诲姩 -->
- <cl-dept-move :ref="setRefs('dept-move')" @success="refresh({ page: 1 })" />
- </div>
+ <!-- 閮ㄩ棬绉诲姩 -->
+ <cl-dept-move :ref="setRefs('dept-move')"
+ @success="refresh({ page: 1 })" />
+ </div>
</template>
<script lang="ts">
@@ -395,9 +385,11 @@
// 鍒锋柊鐩戝惉
async function onRefresh(params: any, { next, render }: any) {
const { list } = await next(params);
+ console.log(list, "list");
render(
list.map((e: any) => {
+ console.log(e, "鍒锋柊鎵撳嵃e");
if (e.roleName) {
e.roleNameList = e.roleName.split(",");
}
diff --git a/src/cool/modules/basedevice/views/basedevice_group.vue b/src/cool/modules/basedevice/views/basedevice_group.vue
index 21d5575..2eda7d6 100644
--- a/src/cool/modules/basedevice/views/basedevice_group.vue
+++ b/src/cool/modules/basedevice/views/basedevice_group.vue
@@ -48,11 +48,19 @@
{
label: "閫昏緫ID",
prop: "logic_id",
+ value: [],
component: {
- name: "el-input"
+ name: "cl-device-select",
+ props: {
+ props: {
+ "multiple-limit": 3
+ }
+ }
},
- //鏄惁涓哄繀濉」,娉細鎺ュ彛閰嶇疆瀛楁鏃舵病鏈夎缃粯璁ゅ�兼椂锛岄兘闇�瑕侀�夋嫨蹇呭~
- required: true
+ rules: {
+ required: true,
+ message: "瑙掕壊涓嶈兘涓虹┖"
+ }
},
{
label: "鎿嶄綔浜�",
@@ -73,7 +81,17 @@
label: "鐘舵��",
prop: "status",
component: {
- name: "el-input"
+ name: "el-radio-group",
+ options: [
+ {
+ label: "鏈惎鐢�",
+ value: 0
+ },
+ {
+ label: "鍚敤",
+ value: 1
+ }
+ ]
}
}
]
@@ -105,7 +123,28 @@
},
{
label: "鐘舵��",
- prop: "status"
+ prop: "status",
+ dict: [
+ {
+ label: "鍋滅敤",
+ value: 0,
+ type: "info" //success warning danger info鍙��
+ },
+ {
+ label: "鍚敤",
+ value: 1
+ }
+ ],
+ filters: [
+ {
+ text: "鍋滅敤",
+ value: 0
+ },
+ {
+ text: "鍚敤",
+ value: 1
+ }
+ ]
},
{
label: "鎿嶄綔",
@@ -121,11 +160,6 @@
}
async function onRefresh(params: any, { next, done, render }: any) {
- // params 鏄瘡娆¤姹傜殑鍙傛暟
- // next(params) 鏄户缁線涓嬫墽琛� page 鐨勮姹�
- // done() 瀹屾垚璇锋眰锛屽叧闂璴oading
- // render(list, pagination) 娓叉煋鍒楄〃鍙婂垎椤典俊鎭�
-
let { list, pagination } = await next({});
list.map((_e: any) => {});
diff --git a/src/cool/modules/hntask/views/immediate_task.vue b/src/cool/modules/hntask/views/immediate_task.vue
index 11f2d52..27b91f1 100644
--- a/src/cool/modules/hntask/views/immediate_task.vue
+++ b/src/cool/modules/hntask/views/immediate_task.vue
@@ -204,7 +204,36 @@
},
{
label: "鐘舵��",
- prop: "status"
+ prop: "status",
+ dict: [
+ {
+ label: "鏈墽琛�",
+ value: 0,
+ type: "info" //success warning danger info鍙��
+ },
+ {
+ label: "鎵ц涓�",
+ value: 1
+ },
+ {
+ label: "鏈墽琛�",
+ value: 2
+ }
+ ],
+ filters: [
+ {
+ text: "鏈墽琛�",
+ value: 0
+ },
+ {
+ text: "鎵ц涓�",
+ value: 1
+ },
+ {
+ text: "宸叉墽琛�",
+ value: 2
+ }
+ ]
},
{
label: "鎿嶄綔",
diff --git a/src/cool/modules/hntask/views/periodic_task.vue b/src/cool/modules/hntask/views/periodic_task.vue
index fd80db3..ad44778 100644
--- a/src/cool/modules/hntask/views/periodic_task.vue
+++ b/src/cool/modules/hntask/views/periodic_task.vue
@@ -54,6 +54,20 @@
required: true
},
{
+ label: "浠诲姟鎸囦护",
+ prop: "task_command",
+ component: {
+ name: "el-input"
+ }
+ },
+ {
+ label: "浠诲姟鍐呭鎻忚堪",
+ prop: "task_content",
+ component: {
+ name: "el-input"
+ }
+ },
+ {
prop: "task_type",
value: 1,
label: "浠诲姟绫诲瀷",
@@ -104,7 +118,17 @@
label: "鐘舵��",
prop: "status",
component: {
- name: "el-input"
+ name: "el-radio-group",
+ options: [
+ {
+ label: "鏈惎鐢�",
+ value: 0
+ },
+ {
+ label: "鍚敤",
+ value: 1
+ }
+ ]
}
}
]
@@ -161,6 +185,14 @@
width: 100
},
{
+ label: "浠诲姟鎸囦护",
+ prop: "task_command"
+ },
+ {
+ label: "浠诲姟鍐呭鎻忚堪",
+ prop: "task_content"
+ },
+ {
label: "璁惧鍒嗙粍ID",
prop: "group_id"
},
@@ -174,7 +206,28 @@
},
{
label: "鐘舵��",
- prop: "status"
+ prop: "status",
+ dict: [
+ {
+ label: "鍋滅敤",
+ value: 0,
+ type: "info" //success warning danger info鍙��
+ },
+ {
+ label: "鍚敤",
+ value: 1
+ }
+ ],
+ filters: [
+ {
+ text: "鍋滅敤",
+ value: 0
+ },
+ {
+ text: "鍚敤",
+ value: 1
+ }
+ ]
},
{
label: "鎿嶄綔",
diff --git a/vite.config.ts b/vite.config.ts
index fda841e..16657bf 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -18,8 +18,8 @@
const proxy = {
"/dev": {
// target: "http://192.168.1.16:8001",
- target: "http://47.92.33.19:8001",
- // target: "http://127.0.0.1:8001",
+ // target: "http://47.92.33.19:8001",
+ target: "http://127.0.0.1:8001",
changeOrigin: true,
rewrite: (path: string) => path.replace(/^\/dev/, "")
},
--
Gitblit v1.9.1