| | |
| | | @submit="submitFormValue" |
| | | > |
| | | <el-form :model="dialogFormValue" ref="dialogFormRef" :rules="dialogFormRules" label-width="86"> |
| | | <el-form-item label="工单编号" prop="title"> |
| | | <el-form-item label="工单编号" prop="id" disabled> |
| | | <el-input v-model="dialogFormValue.id" readonly></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="工单名称" prop="title"> |
| | | <el-input v-model="dialogFormValue.title"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="工单名称" prop="prompt"> |
| | | <el-input v-model="dialogFormValue.prompt"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="工单类型" prop="prompt"> |
| | | <el-select v-model="dialogFormValue.prompt"> |
| | | <el-form-item label="工单类型" prop="type"> |
| | | <el-select v-model="dialogFormValue.type"> |
| | | <el-option |
| | | v-for="item in [ |
| | | { ID: '1', Name: '工单类型1' }, |
| | | { ID: '2', Name: '工单类型2' }, |
| | | { ID: '设备维修', Name: '设备维修' }, |
| | | { ID: '流量异常', Name: '流量异常' }, |
| | | { ID: '压力异常', Name: '压力异常' }, |
| | | { ID: '水质异常', Name: '水质异常' }, |
| | | { ID: '用户投诉', Name: '用户投诉' }, |
| | | |
| | | ]" |
| | | :key="item.ID" |
| | | :value="item.ID" |
| | |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工单内容" prop="prompt"> |
| | | <el-input v-model="dialogFormValue.prompt" type="textarea" :rows="3"></el-input> |
| | | <el-form-item label="工单内容" prop="content"> |
| | | <el-input v-model="dialogFormValue.content" type="textarea" :rows="3"></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="上报人" prop="question"> |
| | | <el-select v-model="dialogFormValue.prompt"> |
| | |
| | | </el-select> |
| | | </el-form-item> --> |
| | | |
| | | <el-form-item label="备注" prop="note"> |
| | | <el-input v-model="dialogFormValue.note" type="textarea" :rows="3"></el-input> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="dialogFormValue.remark" type="textarea" :rows="3"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="附件图片" prop="note"> |
| | | <el-form-item label="附件图片" prop="pic"> |
| | | <el-upload |
| | | ref="uploadRef" |
| | | action="#" |
| | |
| | | import { useCompRef } from '/@/utils/types'; |
| | | |
| | | const props = defineProps(['item']); |
| | | const emit = defineEmits(['update', 'insert']); |
| | | const emit = defineEmits(['update', 'insert','cancelSubmit']); |
| | | //#region ====================== 增加、修改记录操作, dialog init====================== |
| | | const isEditDialog = ref(false); |
| | | const dialogTitle = computed(() => { |
| | | return isEditDialog.value ? '修改页面' : '添加工单'; |
| | | return isEditDialog.value ? '创建工单' : '创建工单'; |
| | | }); |
| | | const dialogHeaderIcon = computed(() => { |
| | | return isEditDialog.value ? 'ele-Edit' : 'ele-Plus'; |
| | |
| | | const dialogFormRef = ref<FormInstance>(null); |
| | | |
| | | const dialogFormRules = ref<FormRules>({ |
| | | title: [{ required: true, message: '请输入标题', trigger: 'blur' }], |
| | | prompt: [{ required: true, message: '请输入提示词', trigger: 'blur' }], |
| | | // title: [{ required: true, message: '请输入标题', trigger: 'blur' }], |
| | | // prompt: [{ required: true, message: '请输入提示词', trigger: 'blur' }], |
| | | }); |
| | | const openOperateDialog = (row?) => { |
| | | if (row) { |
| | | isEditDialog.value = true; |
| | | const { id, note, prompt, question, title } = row; |
| | | dialogFormValue.value = deepClone({ id, note, prompt, question, title }); |
| | | const { title,type,content,remark,} = row; |
| | | dialogFormValue.value = deepClone({id: `GM_${formatDate(new Date(),'YYYY_mmdd_HHMMSS')}`,title,type,content,remark}); |
| | | } else { |
| | | isEditDialog.value = false; |
| | | console.log('🚀 ~ isEditDialog.value:', isEditDialog.value); |
| | | dialogFormValue.value = { title: null, prompt: null, note: null, question: null }; |
| | | dialogFormValue.value = {id: `GM_${formatDate(new Date(),'YYYY_mmdd_HHMMSS')}`, name: '', type: '', content: '', note: ''}; |
| | | } |
| | | }; |
| | | const closeDialog = () => { |
| | | console.log('🚀 ~ close dialog'); |
| | | dialogIsShow.value = false; |
| | | dialogFormRef.value.clearValidate(); |
| | | if(notSubmit){ |
| | | emit('cancelSubmit','取消提交') |
| | | } |
| | | }; |
| | | const stores = useUserInfo(); |
| | | const { userInfos } = storeToRefs(stores); |
| | | |
| | | const submitFormValue = async () => { |
| | | emit('insert') |
| | | notSubmit = false; |
| | | closeDialog(); |
| | | ElMessage.success('创建工单成功'); |
| | | return; |
| | | const valid = await dialogFormRef.value.validate().catch(() => {}); |
| | | if (!valid) return; |
| | | |
| | |
| | | }; |
| | | |
| | | const handleUploadSuccess = (value) => {}; |
| | | |
| | | //#endregion |
| | | |
| | | let notSubmit = true; |
| | | watch( |
| | | () => dialogIsShow.value, |
| | | (val) => { |
| | | console.log('🚀 ~ val:', val); |
| | | if (!val) return; |
| | | console.log('🚀 ~ ywDialog:', ywDialog); |
| | | notSubmit = true; |
| | | openOperateDialog(props.item); |
| | | } |
| | | ); |