From 330375a684720f1801424028d4f592477b6d73d9 Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期二, 07 十一月 2023 10:11:33 +0800 Subject: [PATCH] 提交 workshop --- src/views/system/modules/SecretForm.vue | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 153 insertions(+), 0 deletions(-) diff --git a/src/views/system/modules/SecretForm.vue b/src/views/system/modules/SecretForm.vue new file mode 100644 index 0000000..0c22480 --- /dev/null +++ b/src/views/system/modules/SecretForm.vue @@ -0,0 +1,153 @@ +<template> + <a-spin :spinning="confirmLoading"> + <j-form-container :disabled="formDisabled"> + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="24"> + <a-form-model-item label="绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="type"> + <a-input v-model="model.type" placeholder="璇疯緭鍏ョ被鍨�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="24"> + <a-form-model-item label="鏌ヨ" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sql"> + <a-textarea v-model="model.sql" rows="4" placeholder="璇疯緭鍏ユ煡璇�" /> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </j-form-container> + </a-spin> +</template> + +<script> + + import { httpAction, getAction } from '@/api/manage' + import { validateDuplicateValue } from '@/utils/util' + + export default { + name: 'SecretForm', + components: { + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + data () { + return { + name:'', + code:'', + model:{ + }, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + confirmLoading: false, + validatorRules: { + type : [ + { required: true, message: '璇疯緭鍏ql绫诲瀷!'}, + ], + sql:[{ required: true, message: '璇疯緭鍏ql!'},] + }, + url: { + add: "/sys/permission/addSecret", + edit: "/base/departmentCategory/edit", + queryById: "/base/departmentCategory/queryById", + check:"/base/departmentCategory/check" + } + } + }, + computed: { + formDisabled(){ + return this.disabled + }, + }, + created () { + //澶囦唤model鍘熷鍊� + this.modelDefault = JSON.parse(JSON.stringify(this.model)); + }, + methods: { + add () { + this.edit(this.modelDefault); + }, + edit (record) { + this.model = Object.assign({}, record); + this.name=this.model.name; + this.code=this.model.code; + this.visible = true; + + }, + submitForm () { + const that = this; + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true; + let httpurl = ''; + let method = ''; + if(!this.model.id){ + httpurl+=this.url.add; + method = 'post'; + }else{ + httpurl+=this.url.edit; + method = 'put'; + } + httpAction(httpurl,this.model,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + }) + } + + }) + }, + validateCode(rule, value, callback){ + var params = { + code:value, + delFlag:'0', + }; + getAction(this.url.check,params).then(res=>{ + if(res.result.length==0){ + callback(); + } + else if(this.model.id&&this.code==value){ + callback(); + } + else{ + callback('閮ㄩ棬绫诲瀷缂栫爜閲嶅') + } + }) + }, + validateName(rule, value, callback){ + var params = { + name:value, + delFlag:'0', + }; + getAction(this.url.check,params).then(res=>{ + if(res.result.length==0){ + callback(); + } + else if(this.model.id&&this.name==value){ + callback(); + } + else{ + callback('閮ㄩ棬绫诲瀷鍚嶇О閲嶅') + } + }) + }, + } + } +</script> \ No newline at end of file -- Gitblit v1.9.3