Commit 8331223a authored by “yiyousong”'s avatar “yiyousong”

feat:添加设备应用黑名单板块

parent dec872c0
...@@ -9,12 +9,9 @@ ...@@ -9,12 +9,9 @@
@click="handleUpload" @click="handleUpload"
>上传配置文件</a-button >上传配置文件</a-button
> >
<a-tab-pane key="/appmarket/terminalapp" tab="终端应用"> <a-tab-pane key="/appmarket/terminalapp" tab="终端应用"> </a-tab-pane>
<!-- <TerminalApp></TerminalApp> --> <a-tab-pane key="/appmarket/moveapp" tab="移动端应用"> </a-tab-pane>
</a-tab-pane> <a-tab-pane key="/appmarket/blackapp" tab="应用黑名单"> </a-tab-pane>
<a-tab-pane key="/appmarket/moveapp" tab="移动端应用" force-render>
<!-- <MoveApp></MoveApp> -->
</a-tab-pane>
</a-tabs> </a-tabs>
<div class="app-out-box flex1"> <div class="app-out-box flex1">
<router-view></router-view> <router-view></router-view>
......
<template>
<div>
<a-modal
v-model="Visible"
:maskClosable="false"
title="新增应用黑名单"
@cancel="handleClose"
destroyOnClose
centered
>
<template slot="footer">
<a-button @click="handleReset">重置</a-button>
<a-button type="primary" @click="handleOk">确定</a-button>
</template>
<a-form-model
ref="form"
:model="form"
:rules="rules"
:label-col="{ span: 4 }"
:wrapper-col="{ span: 20 }"
>
<a-form-model-item label="应用" prop="appId">
<a-select
@change="handleChange"
labelInValue
placeholder="请选择应用"
v-model="selectInfo"
>
<a-select-option v-for="v in appList" :key="v.id" :value="v.id">
{{ v.appName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import { saveBlackApp, getAppList } from "@/services/market";
export default {
props: {
addVisile: {
type: Boolean,
require: true,
default: false,
},
},
components: {},
data() {
return {
selectInfo: undefined,
form: {
siteId: "", // 站点id
deviceId: "", // 设备id
deviceCode: "", // 设备编码
deviceName: "", // 设备名称
appId: "", // 应用id
appName: "", // 应用名称
appCode: "", // 应用编码
},
appList: [], // app列表
devList: [], // 设备列表
rules: {
appId: [{ required: true, message: "请选择应用", trigger: "change" }],
},
};
},
computed: {
Visible: {
get() {
return this.addVisile;
},
set(val) {
this.$emit("update:addVisile", val);
},
},
},
created() {
this.getAppList();
},
methods: {
// 获取应用列表
async getAppList() {
let res = await getAppList({
page: 1,
size: -1,
type: 1,
});
if (res.data.code == 1) {
let { data } = res.data.data;
this.appList = data;
}
},
// 切换选择
handleChange(row) {
this.form.appId = row.key;
this.form.appName = row.label;
},
// 新增
onAdd(row) {
this.form.siteId = row.siteId;
this.form.deviceId = row.id;
this.form.deviceCode = row.deviceCode;
this.form.deviceName = row.deviceName;
},
// 关闭弹窗
handleClose() {
this.selectInfo = undefined;
this.$refs.form.resetFields();
this.Visible = false;
},
// 保存
handleOk() {
this.$refs.form.validate(async (valid) => {
if (valid) {
let res = await saveBlackApp(this.form);
let { code, msg } = res.data;
if (code == 1) {
this.$message.success(msg);
this.$emit("addSuccess");
this.handleClose();
}
}
});
},
// 重置
handleReset() {
this.selectInfo = undefined;
this.$refs.form.resetFields();
},
},
};
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
...@@ -256,6 +256,14 @@ const options = { ...@@ -256,6 +256,14 @@ const options = {
// keepAlive: true, // keepAlive: true,
}, },
}, },
{
path: "blackapp",
component: () =>
import("@/pages/basicset/appmarket/components/BlackApp"),
meta: {
invisible: true,
},
},
], ],
}, },
{ {
......
...@@ -355,4 +355,14 @@ module.exports = { ...@@ -355,4 +355,14 @@ module.exports = {
batchSave: `${BASE_URL}/base/window/hall/batchSave`, batchSave: `${BASE_URL}/base/window/hall/batchSave`,
delete: `${BASE_URL}/base/window/hall/delete`, delete: `${BASE_URL}/base/window/hall/delete`,
}, },
// 设备
device: {
list: `${BASE_URL}/base/device/list`,
},
// 应用黑名单
blackapp: {
list: `${BASE_URL}/base/device/blackapp/list`,
save: `${BASE_URL}/base/device/blackapp/save`,
delete: `${BASE_URL}/device/blackapp/delete`,
},
}; };
...@@ -4,6 +4,8 @@ import { ...@@ -4,6 +4,8 @@ import {
appField, appField,
templete, templete,
version, version,
device,
blackapp,
} from "@/services/basicsetApi"; } from "@/services/basicsetApi";
import { request, METHOD } from "@/utils/request"; import { request, METHOD } from "@/utils/request";
...@@ -136,3 +138,29 @@ export async function usedVersion(data) { ...@@ -136,3 +138,29 @@ export async function usedVersion(data) {
export async function previewVersion(data) { export async function previewVersion(data) {
return request(version.preview, METHOD.GET, data); return request(version.preview, METHOD.GET, data);
} }
/**
* 设备列表
*/
export async function getDeviceList(data) {
return request(device.list, METHOD.POST, data);
}
/**
* 设备应用黑名单
*/
// 获取应用黑名单列表
export async function getBlackAppList(data) {
return request(blackapp.list, METHOD.POST, data);
}
// 保存
export async function saveBlackApp(data) {
return request(blackapp.save, METHOD.POST, data);
}
// 删除
export async function deleteBlackapp(data) {
return request(blackapp.delete, METHOD.GET, data);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment