马宇豪
2024-11-21 cc3e08bda13360c88b7189e8f8d043b60783c7fb
src/views/safetyReview/baseSet/evaluateType/components/typeDialog.vue
@@ -7,9 +7,18 @@
            :before-close="handleClose"
        >
            <el-form :model="state.form" size="default" ref="busRef" :rules="state.formRules" label-width="110px" >
                <el-form-item label="类型:" prop="label">
                    <el-input v-model.trim="state.form.label"></el-input>
                </el-form-item>
              <el-form-item label="类型:" prop="label">
                <el-radio-group v-model="state.form.scoreType">
                  <el-radio label="1" size="large" border>加分项</el-radio>
                  <el-radio label="2" size="large" border>扣分项</el-radio>
                </el-radio-group>
              </el-form-item>
              <el-form-item label="标准分值:" prop="score">
                  <el-input v-model.trim="state.form.score"></el-input>
              </el-form-item>
              <el-form-item label="内容:" prop="content">
                <el-input v-model.trim="state.form.content" type="textarea" :autosize="{minRows: 2}"></el-input>
              </el-form-item>
            </el-form>
            <template #footer>
                    <span class="dialog-footer">
@@ -25,7 +34,7 @@
import Editor from "@/components/Editor/index.vue";
import {ElMessage} from "element-plus";
import {addNotice} from "@/api/backManage/notice";
import {addDict, editDict, getDictDetail} from "@/api/backManage/evaluate";
import {addDict, addReview, editDict, editReview, getDictDetail} from "@/api/backManage/evaluate";
const dialogVisible = ref(false);
const title = ref("");
@@ -34,33 +43,25 @@
const emit = defineEmits(["getList"]);
const state = reactive({
    form: {
        id: '',
        label: '',
        value: '',
        dictType: "sys_assess_type",
      id: '',
      score: '',
      content: '',
      scoreType: null
    },
    formRules:{
        label: [{ required: true, message: '请输入类型', trigger: 'blur' }],
      scoreType: [{ required: true, message: '请选择类型', trigger: 'blur' }],
      score: [{ required: true, message: '请输入标准分值', trigger: 'blur' }],
      content: [{ required: true, message: '请输入内容', trigger: 'blur' }]
    },
})
const openDialog = async (type, value) => {
    length.value = value.listLength
    title.value = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看' ;
    title.value = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看';
    if(type === 'edit') {
        state.form = value;
        const param = {
            dictId: value.id
        }
        const res = await getDictDetail(param);
        if(res.code === 200){
            state.form = res.data
        }else{
            ElMessage.warning(res.message)
        }
        state.form = value
    }
    dialogVisible.value = true;
    dialogVisible.value = true
}
const onSubmit = async () => {
@@ -68,11 +69,11 @@
    if(valid){
        if(title.value === '新增'){
            const param = {
                dictType: "sys_assess_type",
                label: state.form.label,
                value: length.value.toString()
              score: state.form.score,
              content: state.form.content,
              scoreType: state.form.scoreType
            }
            const res = await addDict(param)
            const res = await addReview(param)
            if(res.code === 200){
                ElMessage({
                    type: 'success',
@@ -83,27 +84,25 @@
            }
            emit("getList")
            busRef.value.clearValidate();
            reset();
            dialogVisible.value = false;
        }else if(title.value === '编辑'){
            const param = {
                id: state.form.id,
                dictType: state.form.dictType,
                label: state.form.label,
                value: state.form.value
              id: state.form.id,
              score: state.form.score,
              content: state.form.content,
              scoreType: state.form.scoreType
            }
            const res = await editDict(param)
            const res = await editReview(param)
            if(res.code === 200){
                ElMessage({
                    type: 'success',
                    message: '新增成功'
                    message: '修改成功'
                });
            }else{
                ElMessage.warning(res.message)
            }
            emit("getList")
            busRef.value.clearValidate();
            reset();
            dialogVisible.value = false;
        }
    }
@@ -117,10 +116,10 @@
}
const reset = () => {
    state.form = {
        id: '',
        label: '',
        value: '',
        dictType: "sys_assess_type",
      id: '',
      score: '',
      content: '',
      scoreType: null
    }
}
defineExpose({