Переглянути джерело

Merge branch 'master' of http://git.mydig.net/Sagoo-Cloud/sagoo-admin-ui

vera_min 1 рік тому
батько
коміт
b492b500f3

+ 11 - 2
src/views/iot/alarm/log/index.vue

@@ -15,6 +15,13 @@
 							end-placeholder="结束日期"
 						></el-date-picker>
 					</el-form-item>
+          <el-form-item label="告警状态" prop="status" style="width: 200px;">
+            <el-select v-model="tableData.param.status" placeholder="告警状态" clearable size="default" style="width: 240px">
+              <el-option label="未处理" :value="0" />
+              <el-option label="已处理" :value="1" />
+              <el-option label="已忽略" :value="2" />
+            </el-select>
+          </el-form-item>
 					<el-form-item>
 						<el-button size="default" type="primary" class="ml10" @click="typeList">
 							<el-icon>
@@ -50,8 +57,9 @@
 
 				<el-table-column prop="status" label="告警状态" width="100" align="center" v-col="'status'">
 					<template #default="scope">
-						<el-tag type="success" size="small" v-if="scope.row.status">已处理</el-tag>
-						<el-tag type="info" size="small" v-else>未处理</el-tag>
+            <el-tag type="danger" size="small" v-if="scope.row.status == 0">未处理</el-tag>
+						<el-tag type="success" size="small" v-if="scope.row.status == 1">已处理</el-tag>
+						<el-tag type="info" size="small" v-if="scope.row.status == 2">已忽略</el-tag>
 					</template>
 				</el-table-column>
 				<el-table-column prop="createdAt" label="告警时间" align="center" width="180" v-col="'createdAt'"></el-table-column>
@@ -103,6 +111,7 @@ interface TableDataState {
 			pageSize: number;
 
 			dateRange: string[];
+      status: string;
 		};
 	};
 }

+ 26 - 20
src/views/system/api/component/edit.vue

@@ -2,7 +2,7 @@
 	<el-dialog class="api-edit" v-model="showDialog" :title="`${formData.id ? '编辑接口' : '新增接口'}`" width="600px" :close-on-click-modal="false" :close-on-press-escape="false">
 		<el-form ref="formRef" :model="formData" :rules="ruleForm" label-width="80px" @keyup.enter="onSubmit">
 			<el-form-item label="选择类型" prop="types">
-				<el-radio-group v-model="formData.types">
+				<el-radio-group v-model="formData.types" @change="tabChange">
 					<el-radio-button :label="2">接口</el-radio-button>
 					<el-radio-button :label="1">分类</el-radio-button>
 				</el-radio-group>
@@ -23,12 +23,18 @@
 					</el-select>
 				</el-form-item>
 				<el-form-item label="分类名称" prop="name">
-					<el-input v-model="formData.name" placeholder="输入接口名称" />
+					<el-input v-model="formData.name" placeholder="输入分类名称" />
 				</el-form-item>
 			</template>
 			<template v-else>
 				<el-form-item label="上级分类" prop="parentId">
-					<el-cascader :options="typeData" :props="{ checkStrictly: true, multiple: false, emitPath: false, value: 'id', label: 'name' }" placeholder="请选择关联页面" clearable class="w100" v-model="formData.parentId"></el-cascader>
+					<el-cascader :options="[
+						{
+							id: -1,
+							name: '根节点',
+							children: typeData,
+						},
+					]" :props="{ checkStrictly: true, multiple: false, emitPath: false, value: 'id', label: 'name' }" placeholder="请选择关联页面" clearable class="w100" v-model="formData.parentId"></el-cascader>
 				</el-form-item>
 				<el-form-item label="关联页面" prop="menuIds">
 					<el-cascader :options="menuData" :props="{ checkStrictly: true, multiple: true, emitPath: false, value: 'id', label: 'title' }" placeholder="请选择关联页面" filterable clearable class="w100" v-model="formData.menuIds"></el-cascader>
@@ -49,17 +55,17 @@
 						<el-option v-for="item in methodOptions" :key="item.value" :label="item.key" :value="item.value"></el-option>
 					</el-select>
 				</el-form-item>
-				<el-form-item label="状态" prop="status">
-					<el-switch v-model="formData.status" :active-value="1" :inactive-value="0" />
-				</el-form-item>
 			</template>
+			<el-form-item label="状态" prop="status">
+				<el-switch v-model="formData.status" :active-value="1" :inactive-value="0" />
+			</el-form-item>
 			<el-form-item label="备注" prop="remark">
 				<el-input v-model="formData.remark" type="textarea" :rows="3" />
 			</el-form-item>
 		</el-form>
 		<template #footer>
 			<div class="dialog-footer">
-				<el-button @click="showDialog = false">取消</el-button>
+				<el-button @click="cancel">取消</el-button>
 				<el-button type="primary" @click="onSubmit">确定</el-button>
 			</div>
 		</template>
@@ -97,24 +103,19 @@ const baseForm: ApiRow = {
 	status: 1,
 };
 
-const formData = reactive<ApiRow>({
-	...baseForm,
-});
+const formData = reactive<ApiRow>(JSON.parse(JSON.stringify(baseForm)));
 
 // 切换分类时清空上级分类的选择。因为接口里不能选择跟分类节点
-watch(
-	() => formData.types,
-	() => {
-		formData.parentId = undefined;
-	}
-);
+function tabChange() {
+	formData.parentId = undefined;
+}
 
 const ruleForm = {
 	parentId: [ruleRequired('上级分类不能为空', 'change')],
 	// menuIds: [ruleRequired('关联页面不能为空', 'change')],
 	method: [ruleRequired('请求方式不能为空', 'change')],
 	apiTypes: [ruleRequired('接口类型不能为空', 'change')],
-	name: [ruleRequired('接口名称不能为空')],
+	name: [ruleRequired('名称不能为空', 'change')],
 	address: [ruleRequired('接口地址不能为空')],
 };
 
@@ -141,8 +142,13 @@ const onSubmit = async () => {
 };
 
 const resetForm = async () => {
-	Object.assign(formData, { ...baseForm });
-	formRef.value && formRef.value.resetFields();
+	const types = formData.types
+	Object.assign(formData, { ...JSON.parse(JSON.stringify(baseForm)) });
+	formRef.value && formRef.value.resetFields(formData);
+};
+const cancel = async () => {
+	resetForm()
+	showDialog.value = false
 };
 
 const open = async (row: any) => {
@@ -152,7 +158,7 @@ const open = async (row: any) => {
 		typeData.value = res.Info;
 	});
 	nextTick(() => {
-		Object.assign(formData, { method: methodOptions.value.length ? methodOptions.value[0].value : '', ...row });
+		Object.assign(formData, { method: methodOptions.value.length ? methodOptions.value[0].value : '', ...JSON.parse(JSON.stringify(row)) });
 	});
 };
 

+ 1 - 1
src/views/system/assess/totalIndex/component/addItem.vue

@@ -176,7 +176,7 @@ export default defineComponent({
 		};
 		// 删除标识项
 		const onRowDel = (row: TableDataRow) => {
-			ElMessageBox.confirm(`此操作将永久删除账户:“${row.userName}”,是否继续?`, '提示', {
+			ElMessageBox.confirm(`此操作将永久删除指数:“${row.userName}”,是否继续?`, '提示', {
 				confirmButtonText: '确认',
 				cancelButtonText: '取消',
 				type: 'warning',

+ 1 - 1
src/views/system/assess/totalIndex/component/editItem.vue

@@ -196,7 +196,7 @@ export default defineComponent({
 		};
 		// 删除标识项
 		const onRowDel = (row: TableDataRow, index: number) => {
-			ElMessageBox.confirm(`此操作将永久删除账户:“${row.title}”,是否继续?`, '提示', {
+			ElMessageBox.confirm(`此操作将永久删除指标:“${row.title}”,是否继续?`, '提示', {
 				confirmButtonText: '确认',
 				cancelButtonText: '取消',
 				type: 'warning',

+ 1 - 1
src/views/system/city/index.vue

@@ -141,7 +141,7 @@ export default defineComponent({
       let msg = '你确定要删除所选数据?';
       // let ids: number[] = [];
       // if (row) {
-      msg = `此操作将永久删除设备:“${row.name}”,是否继续?`;
+      msg = `此操作将永久删除城市:“${row.name}”,是否继续?`;
       // ids = [row.id];
       // } else {
       // 	ids = state.ids;

+ 17 - 19
src/views/system/config/component/editConfig.vue

@@ -45,7 +45,7 @@ interface RuleFormState {
   configName: string;
   configKey: string;
   configValue: string;
-  configType: string;
+  configType: number;
   remark: string;
   moduleClassify:string; // 字典分类
 }
@@ -55,6 +55,16 @@ interface DicState {
   rules: {};
 }
 
+const baseForm: RuleFormState = {
+  configId: 0,
+  configName: '',
+  configKey: '',
+  configValue: '',
+  configType: 0,
+  remark: '',
+  moduleClassify: '',
+}
+
 export default defineComponent({
   name: 'systemEditDicData',
   props: {
@@ -70,18 +80,13 @@ export default defineComponent({
     const state = reactive<DicState>({
       isShowDialog: false,
       ruleForm: {
-        configId: 0,
-        configName: '',
-        configKey: '',
-        configValue: '',
-        configType: '0',
-        remark: '',
-        moduleClassify: '',
+        ...baseForm
       },
       rules: {
-        configName: [{ required: true, message: '参数名称不能为空', trigger: 'blur' }],
-        configKey: [{ required: true, message: '参数键名不能为空', trigger: 'blur' }],
-        configValue: [{ required: true, message: '参数键值不能为空', trigger: 'blur' }],
+        configName: [{ required: true, message: '参数名称不能为空', trigger: 'change' }],
+        configKey: [{ required: true, message: '参数键名不能为空', trigger: 'change' }],
+        moduleClassify: [{ required: true, message: '字典分类不能为空', trigger: 'change' }],
+        configValue: [{ required: true, message: '参数键值不能为空', trigger: 'change' }],
       },
     });
     // 打开弹窗
@@ -90,7 +95,6 @@ export default defineComponent({
       if (row) {
         api.config.detail(row.configId).then((res: any) => {
           const data: RuleFormState = res.data.data;
-          data.configType = String(data.configType);
           state.ruleForm = data;
         });
         state.ruleForm = row;
@@ -99,13 +103,7 @@ export default defineComponent({
     };
     const resetForm = () => {
       state.ruleForm = {
-        configId: 0,
-        configName: '',
-        configKey: '',
-        configValue: '',
-        configType: '0',
-        moduleClassify: '',
-        remark: '',
+        ...baseForm
       };
     };
     // 关闭弹窗

+ 2 - 2
src/views/system/menu/component/editMenu.vue

@@ -122,7 +122,7 @@
 			<template #footer>
 				<span class="dialog-footer">
 					<el-button @click="onCancel" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmit" size="default" :loading="loading">{{ acType === 'add' ? '新 增' : '修 改' }}</el-button>
+					<el-button type="primary" @click="onSubmit" size="default" :loading="loading">提 交</el-button>
 				</span>
 			</template>
 		</el-dialog>
@@ -189,7 +189,7 @@ export default defineComponent({
 				component: [{ required: true, message: '组件地址不能为空', trigger: 'blur' }],
 				path: [{ required: true, message: '路由地址不能为空', trigger: 'blur' }],
 				title: [{ required: true, message: '菜单名称不能为空', trigger: 'blur' }],
-				name: [{ required: true, message: '菜单名称不能为空', trigger: 'blur' }],
+				name: [{ required: true, message: '规则名称不能为空', trigger: 'blur' }],
 				menuType: [{ required: true, message: '菜单类型不能为空', trigger: 'blur' }],
 			},
 		});

+ 8 - 11
src/views/system/monitor/plugin/index.vue

@@ -47,19 +47,15 @@
 				</el-table-column>
 				<el-table-column label="操作" width="180" align="center" fixed="right" v-col="'handle'">
 					<template #default="scope">
-						<el-button v-if="scope.row.status == 1" type="warning" size="small" link @click="changeStatus(scope.row, 0)" v-auth="'stop'"
-							>停用</el-button
-						>
-						<el-button v-if="scope.row.status == 0" size="small" type="success" link @click="changeStatus(scope.row, 1)" v-auth="'start'"
-							>启用</el-button
-						>
+						<el-button v-if="scope.row.status == 1" type="warning" size="small" link @click="changeStatus(scope.row, 0)" v-auth="'stop'">停用</el-button>
+						<el-button v-if="scope.row.status == 0" size="small" type="success" link @click="changeStatus(scope.row, 1)" v-auth="'start'">启用</el-button>
 						<el-button v-if="scope.row.status == 0" size="small" type="info" link @click="onDel(scope.row)" v-auth="'del'">删除</el-button>
 						<el-button size="small" type="plain" link @click="addOrEdit(scope.row)">编辑</el-button>
 					</template>
 				</el-table-column>
 			</el-table>
 
-	    <pagination v-if="params.total" :total="params.total" v-model:page="params.pageNum" v-model:limit="params.pageSize" @pagination="getList()" />
+			<pagination v-if="params.total" :total="params.total" v-model:page="params.pageNum" v-model:limit="params.pageSize" @pagination="getList()" />
 		</el-card>
 		<EditForm ref="editFormRef" @getList="getList(1)"></EditForm>
 	</div>
@@ -91,13 +87,14 @@ const addOrEdit = (row?: any) => {
 	if (row) {
 		editFormRef.value.open(row)
 	} else {
+		uploadFile = null
 		// add
 		ElMessageBox({
 			title: '上传插件',
 			message: h('input', {
 				type: 'file',
 				accept: '.zip',
-				onchange: (file: any) => {
+				onchange: function (file: any) {
 					uploadFile = file.target.files[0]
 					// console.log(uploadFile)
 				},
@@ -121,14 +118,14 @@ const addOrEdit = (row?: any) => {
 							ElMessage.success('上传成功')
 							getList(1)
 							done()
-						})
-						.finally(() => {
+						}).finally(() => {
 							instance.confirmButtonLoading = false
+							instance.confirmButtonText = '上传'
 						})
 				} else {
+					uploadFile = null
 					done()
 				}
-				uploadFile = null
 			},
 		})
 	}

+ 4 - 4
src/views/system/task/component/editConfig.vue

@@ -3,7 +3,7 @@
 		<el-dialog :title="(ruleForm.jobId ? '修改' : '添加' ) + '任务'" v-model="isShowDialog" width="650px">
 			<el-form :model="ruleForm" ref="formRef" :rules="rules" size="default" label-width="100px">
 				<el-form-item label="任务名称" prop="jobName">
-					<el-input v-model="ruleForm.jobName" placeholder="请输入任务名称" />
+					<el-input v-model.trim="ruleForm.jobName" placeholder="请输入任务名称" />
 				</el-form-item>
 				<el-form-item label="任务描述" prop="remark">
 					<el-input v-model="ruleForm.remark" placeholder="请输入任务描述" type="textarea" />
@@ -93,8 +93,8 @@
 					<el-radio v-model="ruleForm.misfirePolicy" :label="0">执行一次</el-radio>
 				</el-form-item>
 				<el-form-item label="状态" prop="status">
-					<el-radio v-model="ruleForm.status" :label="0">正常</el-radio>
-					<el-radio v-model="ruleForm.status" :label="1">暂停</el-radio>
+					<el-radio v-model="ruleForm.status" :label="0">启用</el-radio>
+					<el-radio v-model="ruleForm.status" :label="1">禁用</el-radio>
 				</el-form-item>
 			</el-form>
 			<template #footer>
@@ -167,7 +167,7 @@ export default defineComponent({
 			},
 			rules: {
 				jobName: [{ required: true, message: '任务名称不能为空', trigger: 'blur' }],
-				invokeTarget: [{ required: true, message: '执行方法不能为空', trigger: 'blur' }],
+				invokeTarget: [{ required: true, message: '调用方法不能为空', trigger: 'blur' }],
 				cronExpression: [{ required: true, message: 'cron表达式不能为空', trigger: 'blur' }],
 			},
 		});

+ 2 - 2
src/views/system/task/index.vue

@@ -13,8 +13,8 @@
           </el-form-item>
           <el-form-item label="任务状态" prop="status" style="width: 200px">
             <el-select v-model="tableData.param.status" size="mini" placeholder="请选择">
-              <el-option label="正常" :value="0" />
-              <el-option label="暂停" :value="1" />
+              <el-option label="启用" :value="0" />
+              <el-option label="禁用" :value="1" />
             </el-select>
           </el-form-item>