| | |
| | | :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"> |
| | | <el-button @click="handleClose" size="default">取 消</el-button> |
| | | <el-button type="primary" @click="onSubmit" size="default">确认</el-button> |
| | | <el-button type="primary" @click="onSubmit" size="default" v-preReClick>确认</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | |
| | | 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(""); |
| | |
| | | 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 () => { |
| | |
| | | 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', |
| | |
| | | } |
| | | 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; |
| | | } |
| | | } |
| | |
| | | } |
| | | const reset = () => { |
| | | state.form = { |
| | | id: '', |
| | | label: '', |
| | | value: '', |
| | | dictType: "sys_assess_type", |
| | | id: '', |
| | | score: '', |
| | | content: '', |
| | | scoreType: null |
| | | } |
| | | } |
| | | defineExpose({ |