|  | @@ -13,7 +13,7 @@
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="系统内置" prop="configType">
 | 
	
		
			
				|  |  |            <el-radio-group v-model="ruleForm.configType">
 | 
	
		
			
				|  |  | -            <el-radio v-for="dict in sysYesNoOptions" :key="dict.value" :label="dict.value">{{dict.label}}</el-radio>
 | 
	
		
			
				|  |  | +            <el-radio v-for="dict in sysYesNoOptions" :key="dict.value" :label="Number(dict.value)">{{dict.label}}</el-radio>
 | 
	
		
			
				|  |  |            </el-radio-group>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="备注" prop="remark">
 | 
	
	
		
			
				|  | @@ -35,108 +35,108 @@ import { reactive, toRefs, defineComponent, ref, unref } from 'vue';
 | 
	
		
			
				|  |  |  import { ElMessage } from 'element-plus';
 | 
	
		
			
				|  |  |  import api from '/@/api/system';
 | 
	
		
			
				|  |  |  interface RuleFormState {
 | 
	
		
			
				|  |  | -	configId: number;
 | 
	
		
			
				|  |  | -	configName: string;
 | 
	
		
			
				|  |  | -	configKey: string;
 | 
	
		
			
				|  |  | -	configValue: string;
 | 
	
		
			
				|  |  | -	configType: string;
 | 
	
		
			
				|  |  | -	remark: string;
 | 
	
		
			
				|  |  | +  configId: number;
 | 
	
		
			
				|  |  | +  configName: string;
 | 
	
		
			
				|  |  | +  configKey: string;
 | 
	
		
			
				|  |  | +  configValue: string;
 | 
	
		
			
				|  |  | +  configType: string;
 | 
	
		
			
				|  |  | +  remark: string;
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  interface DicState {
 | 
	
		
			
				|  |  | -	isShowDialog: boolean;
 | 
	
		
			
				|  |  | -	ruleForm: RuleFormState;
 | 
	
		
			
				|  |  | -	rules: {};
 | 
	
		
			
				|  |  | +  isShowDialog: boolean;
 | 
	
		
			
				|  |  | +  ruleForm: RuleFormState;
 | 
	
		
			
				|  |  | +  rules: {};
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default defineComponent({
 | 
	
		
			
				|  |  | -	name: 'systemEditDicData',
 | 
	
		
			
				|  |  | -	props: {
 | 
	
		
			
				|  |  | -		sysYesNoOptions: {
 | 
	
		
			
				|  |  | -			type: Array,
 | 
	
		
			
				|  |  | -			default: () => [],
 | 
	
		
			
				|  |  | -		},
 | 
	
		
			
				|  |  | -	},
 | 
	
		
			
				|  |  | -	setup(prop, { emit }) {
 | 
	
		
			
				|  |  | -		const formRef = ref<HTMLElement | null>(null);
 | 
	
		
			
				|  |  | -		const state = reactive<DicState>({
 | 
	
		
			
				|  |  | -			isShowDialog: false,
 | 
	
		
			
				|  |  | -			ruleForm: {
 | 
	
		
			
				|  |  | -				configId: 0,
 | 
	
		
			
				|  |  | -				configName: '',
 | 
	
		
			
				|  |  | -				configKey: '',
 | 
	
		
			
				|  |  | -				configValue: '',
 | 
	
		
			
				|  |  | -				configType: '0',
 | 
	
		
			
				|  |  | -				remark: '',
 | 
	
		
			
				|  |  | -			},
 | 
	
		
			
				|  |  | -			rules: {
 | 
	
		
			
				|  |  | -				configName: [{ required: true, message: '参数名称不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | -				configKey: [{ required: true, message: '参数键名不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | -				configValue: [{ required: true, message: '参数键值不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | -			},
 | 
	
		
			
				|  |  | -		});
 | 
	
		
			
				|  |  | -		// 打开弹窗
 | 
	
		
			
				|  |  | -		const openDialog = (row: RuleFormState | null) => {
 | 
	
		
			
				|  |  | -			resetForm();
 | 
	
		
			
				|  |  | -			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;
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -			state.isShowDialog = true;
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -		const resetForm = () => {
 | 
	
		
			
				|  |  | -			state.ruleForm = {
 | 
	
		
			
				|  |  | -				configId: 0,
 | 
	
		
			
				|  |  | -				configName: '',
 | 
	
		
			
				|  |  | -				configKey: '',
 | 
	
		
			
				|  |  | -				configValue: '',
 | 
	
		
			
				|  |  | -				configType: '0',
 | 
	
		
			
				|  |  | -				remark: '',
 | 
	
		
			
				|  |  | -			};
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -		// 关闭弹窗
 | 
	
		
			
				|  |  | -		const closeDialog = () => {
 | 
	
		
			
				|  |  | -			state.isShowDialog = false;
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -		// 取消
 | 
	
		
			
				|  |  | -		const onCancel = () => {
 | 
	
		
			
				|  |  | -			closeDialog();
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -		// 新增
 | 
	
		
			
				|  |  | -		const onSubmit = () => {
 | 
	
		
			
				|  |  | -			const formWrap = unref(formRef) as any;
 | 
	
		
			
				|  |  | -			if (!formWrap) return;
 | 
	
		
			
				|  |  | -			formWrap.validate((valid: boolean) => {
 | 
	
		
			
				|  |  | -				if (valid) {
 | 
	
		
			
				|  |  | -					if (state.ruleForm.configId !== 0) {
 | 
	
		
			
				|  |  | -						//修改
 | 
	
		
			
				|  |  | -						api.config.edit(state.ruleForm).then(() => {
 | 
	
		
			
				|  |  | -							ElMessage.success('参数修改成功');
 | 
	
		
			
				|  |  | -							closeDialog(); // 关闭弹窗
 | 
	
		
			
				|  |  | -							emit('dataList');
 | 
	
		
			
				|  |  | -						});
 | 
	
		
			
				|  |  | -					} else {
 | 
	
		
			
				|  |  | -						//添加
 | 
	
		
			
				|  |  | -						api.config.add(state.ruleForm).then(() => {
 | 
	
		
			
				|  |  | -							ElMessage.success('参数添加成功');
 | 
	
		
			
				|  |  | -							closeDialog(); // 关闭弹窗
 | 
	
		
			
				|  |  | -							emit('dataList');
 | 
	
		
			
				|  |  | -						});
 | 
	
		
			
				|  |  | -					}
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -			});
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -		return {
 | 
	
		
			
				|  |  | -			openDialog,
 | 
	
		
			
				|  |  | -			closeDialog,
 | 
	
		
			
				|  |  | -			onCancel,
 | 
	
		
			
				|  |  | -			onSubmit,
 | 
	
		
			
				|  |  | -			formRef,
 | 
	
		
			
				|  |  | -			...toRefs(state),
 | 
	
		
			
				|  |  | -		};
 | 
	
		
			
				|  |  | -	},
 | 
	
		
			
				|  |  | +  name: 'systemEditDicData',
 | 
	
		
			
				|  |  | +  props: {
 | 
	
		
			
				|  |  | +    sysYesNoOptions: {
 | 
	
		
			
				|  |  | +      type: Array,
 | 
	
		
			
				|  |  | +      default: () => [],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  setup(prop, { emit }) {
 | 
	
		
			
				|  |  | +    const formRef = ref<HTMLElement | null>(null);
 | 
	
		
			
				|  |  | +    const state = reactive<DicState>({
 | 
	
		
			
				|  |  | +      isShowDialog: false,
 | 
	
		
			
				|  |  | +      ruleForm: {
 | 
	
		
			
				|  |  | +        configId: 0,
 | 
	
		
			
				|  |  | +        configName: '',
 | 
	
		
			
				|  |  | +        configKey: '',
 | 
	
		
			
				|  |  | +        configValue: '',
 | 
	
		
			
				|  |  | +        configType: '0',
 | 
	
		
			
				|  |  | +        remark: '',
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      rules: {
 | 
	
		
			
				|  |  | +        configName: [{ required: true, message: '参数名称不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | +        configKey: [{ required: true, message: '参数键名不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | +        configValue: [{ required: true, message: '参数键值不能为空', trigger: 'blur' }],
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +    // 打开弹窗
 | 
	
		
			
				|  |  | +    const openDialog = (row: RuleFormState | null) => {
 | 
	
		
			
				|  |  | +      resetForm();
 | 
	
		
			
				|  |  | +      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;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      state.isShowDialog = true;
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    const resetForm = () => {
 | 
	
		
			
				|  |  | +      state.ruleForm = {
 | 
	
		
			
				|  |  | +        configId: 0,
 | 
	
		
			
				|  |  | +        configName: '',
 | 
	
		
			
				|  |  | +        configKey: '',
 | 
	
		
			
				|  |  | +        configValue: '',
 | 
	
		
			
				|  |  | +        configType: '0',
 | 
	
		
			
				|  |  | +        remark: '',
 | 
	
		
			
				|  |  | +      };
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 关闭弹窗
 | 
	
		
			
				|  |  | +    const closeDialog = () => {
 | 
	
		
			
				|  |  | +      state.isShowDialog = false;
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 取消
 | 
	
		
			
				|  |  | +    const onCancel = () => {
 | 
	
		
			
				|  |  | +      closeDialog();
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 新增
 | 
	
		
			
				|  |  | +    const onSubmit = () => {
 | 
	
		
			
				|  |  | +      const formWrap = unref(formRef) as any;
 | 
	
		
			
				|  |  | +      if (!formWrap) return;
 | 
	
		
			
				|  |  | +      formWrap.validate((valid: boolean) => {
 | 
	
		
			
				|  |  | +        if (valid) {
 | 
	
		
			
				|  |  | +          if (state.ruleForm.configId !== 0) {
 | 
	
		
			
				|  |  | +            //修改
 | 
	
		
			
				|  |  | +            api.config.edit(state.ruleForm).then(() => {
 | 
	
		
			
				|  |  | +              ElMessage.success('参数修改成功');
 | 
	
		
			
				|  |  | +              closeDialog(); // 关闭弹窗
 | 
	
		
			
				|  |  | +              emit('dataList');
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +          } else {
 | 
	
		
			
				|  |  | +            //添加
 | 
	
		
			
				|  |  | +            api.config.add(state.ruleForm).then(() => {
 | 
	
		
			
				|  |  | +              ElMessage.success('参数添加成功');
 | 
	
		
			
				|  |  | +              closeDialog(); // 关闭弹窗
 | 
	
		
			
				|  |  | +              emit('dataList');
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    return {
 | 
	
		
			
				|  |  | +      openDialog,
 | 
	
		
			
				|  |  | +      closeDialog,
 | 
	
		
			
				|  |  | +      onCancel,
 | 
	
		
			
				|  |  | +      onSubmit,
 | 
	
		
			
				|  |  | +      formRef,
 | 
	
		
			
				|  |  | +      ...toRefs(state),
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  |  });
 | 
	
		
			
				|  |  |  </script>
 |