|
@@ -0,0 +1,163 @@
|
|
|
|
|
+<template>
|
|
|
|
|
+ <a-modal
|
|
|
|
|
+ :title="title"
|
|
|
|
|
+ :width="800"
|
|
|
|
|
+ :visible="visible"
|
|
|
|
|
+ :confirmLoading="confirmLoading"
|
|
|
|
|
+ @ok="handleOk"
|
|
|
|
|
+ @cancel="handleCancel"
|
|
|
|
|
+ cancelText="关闭"
|
|
|
|
|
+ wrapClassName="ant-modal-cust-warp"
|
|
|
|
|
+ style="top:5%;height: 85%;overflow-y: hidden">
|
|
|
|
|
+
|
|
|
|
|
+ <a-spin :spinning="confirmLoading">
|
|
|
|
|
+ <a-form-model ref="form" v-bind="layout" :model="model" :rules="validatorRules">
|
|
|
|
|
+ <a-form-model-item label="配置名称" required prop="roleName">
|
|
|
|
|
+ <a-input v-model="model.configName" placeholder="请输入配置名称"/>
|
|
|
|
|
+ </a-form-model-item>
|
|
|
|
|
+
|
|
|
|
|
+ <a-form-model-item label="数值" required prop="roleName">
|
|
|
|
|
+ <a-input v-model="model.configNumber" placeholder="请输入数值"/>
|
|
|
|
|
+ </a-form-model-item>
|
|
|
|
|
+
|
|
|
|
|
+ </a-form-model>
|
|
|
|
|
+ </a-spin>
|
|
|
|
|
+ </a-modal>
|
|
|
|
|
+</template>
|
|
|
|
|
+
|
|
|
|
|
+<script>
|
|
|
|
|
+ import {addRole,editRole,duplicateCheck } from '@/api/api'
|
|
|
|
|
+ export default {
|
|
|
|
|
+ name: "expireModal",
|
|
|
|
|
+ data () {
|
|
|
|
|
+ return {
|
|
|
|
|
+ title:"操作",
|
|
|
|
|
+ visible: false,
|
|
|
|
|
+ roleDisabled: false,
|
|
|
|
|
+ model: {},
|
|
|
|
|
+ layout: {
|
|
|
|
|
+ labelCol: { span: 3 },
|
|
|
|
|
+ wrapperCol: { span: 14 },
|
|
|
|
|
+ },
|
|
|
|
|
+ confirmLoading: false,
|
|
|
|
|
+ validatorRules:{
|
|
|
|
|
+ configName: [
|
|
|
|
|
+ { required: true, message: '请输入配置名称!' },
|
|
|
|
|
+ { min: 2, max: 30, message: '长度在 2 到 30 个字符', trigger: 'blur' },
|
|
|
|
|
+ { validator: this.validateRoleName}
|
|
|
|
|
+ ],
|
|
|
|
|
+ configNumber: [
|
|
|
|
|
+ { required: true, message: '请输入配置名称!' },
|
|
|
|
|
+ { min: 2, max: 30, message: '长度在 2 到 30 个字符', trigger: 'blur' },
|
|
|
|
|
+ { validator: this.validateRoleName}
|
|
|
|
|
+ ]
|
|
|
|
|
+ },
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ created () {
|
|
|
|
|
+ //备份model原始值
|
|
|
|
|
+ this.modelDefault = JSON.parse(JSON.stringify(this.model));
|
|
|
|
|
+ },
|
|
|
|
|
+ methods: {
|
|
|
|
|
+ codeActive(){
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ add () {
|
|
|
|
|
+ this.edit(this.modelDefault);
|
|
|
|
|
+ },
|
|
|
|
|
+ edit (record) {
|
|
|
|
|
+ this.model = Object.assign({}, record);
|
|
|
|
|
+ this.visible = true;
|
|
|
|
|
+ //编辑页面禁止修改角色编码
|
|
|
|
|
+ if(this.model.id){
|
|
|
|
|
+ this.roleDisabled = true;
|
|
|
|
|
+ }else{
|
|
|
|
|
+ this.roleDisabled = false;
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ close () {
|
|
|
|
|
+ this.$refs.form.clearValidate();
|
|
|
|
|
+ this.$emit('close');
|
|
|
|
|
+ this.visible = false;
|
|
|
|
|
+ },
|
|
|
|
|
+ handleOk () {
|
|
|
|
|
+ const that = this;
|
|
|
|
|
+ // 触发表单验证
|
|
|
|
|
+ this.$refs.form.validate(valid => {
|
|
|
|
|
+ if (valid) {
|
|
|
|
|
+ that.confirmLoading = true;
|
|
|
|
|
+ let obj;
|
|
|
|
|
+ if(!this.model.id){
|
|
|
|
|
+ obj=addRole(this.model);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ obj=editRole(this.model);
|
|
|
|
|
+ }
|
|
|
|
|
+ obj.then((res)=>{
|
|
|
|
|
+ if(res.success){
|
|
|
|
|
+ that.$message.success(res.message);
|
|
|
|
|
+ that.$emit('ok');
|
|
|
|
|
+ }else{
|
|
|
|
|
+ that.$message.warning(res.message);
|
|
|
|
|
+ }
|
|
|
|
|
+ }).finally(() => {
|
|
|
|
|
+ that.confirmLoading = false;
|
|
|
|
|
+ that.close();
|
|
|
|
|
+ })
|
|
|
|
|
+ }else{
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ handleCancel () {
|
|
|
|
|
+ this.close()
|
|
|
|
|
+ },
|
|
|
|
|
+ validateRoleCode(rule, value, callback){
|
|
|
|
|
+ if(/[\u4E00-\u9FA5]/g.test(value)){
|
|
|
|
|
+ callback("角色编码不可输入汉字!");
|
|
|
|
|
+ }else{
|
|
|
|
|
+ let params = {
|
|
|
|
|
+ tableName: "sys_role",
|
|
|
|
|
+ fieldName: "role_code",
|
|
|
|
|
+ fieldVal: value,
|
|
|
|
|
+ dataId: this.model.id,
|
|
|
|
|
+ };
|
|
|
|
|
+ duplicateCheck(params).then((res)=>{
|
|
|
|
|
+ if(res.success){
|
|
|
|
|
+ callback();
|
|
|
|
|
+ }else{
|
|
|
|
|
+ callback(res.message);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ validatePower(rule, value, callback) {
|
|
|
|
|
+ if ( value !=='' && value!==null) {
|
|
|
|
|
+ callback();
|
|
|
|
|
+ } else {
|
|
|
|
|
+ callback("请选择!");
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ validateRoleName(rule, value, callback){
|
|
|
|
|
+
|
|
|
|
|
+ let params = {
|
|
|
|
|
+ tableName: "sys_role",
|
|
|
|
|
+ fieldName: "role_name",
|
|
|
|
|
+ fieldVal: value,
|
|
|
|
|
+ dataId: this.model.id,
|
|
|
|
|
+ };
|
|
|
|
|
+ duplicateCheck(params).then((res)=>{
|
|
|
|
|
+ if(res.success){
|
|
|
|
|
+ callback();
|
|
|
|
|
+ }else{
|
|
|
|
|
+ callback(res.message);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+</script>
|
|
|
|
|
+
|
|
|
|
|
+<style scoped>
|
|
|
|
|
+
|
|
|
|
|
+</style>
|