From d31a24ca22ffc8638ca8711eb3ee1cf5bbdecf73 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 03 三月 2025 16:36:55 +0800 Subject: [PATCH] 修复新增巡查子任务时,巡查人员信息没有正确录入的问题 --- src/views/fysp/scene/CompSceneWharfInfo.vue | 305 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 305 insertions(+), 0 deletions(-) diff --git a/src/views/fysp/scene/CompSceneWharfInfo.vue b/src/views/fysp/scene/CompSceneWharfInfo.vue new file mode 100644 index 0000000..d37487f --- /dev/null +++ b/src/views/fysp/scene/CompSceneWharfInfo.vue @@ -0,0 +1,305 @@ +<!-- 鐮佸ご涓撳睘淇℃伅缂栬緫 --> +<template> + <BaseSceneInfo ref="baseSceneInfo" :scene="scene" :formInfo="formInfo" :scene-type="sceneType"> + <template #form-items> + <el-form + v-show="showStyle == 'form'" + :inline="false" + :model="formObj" + ref="formRef" + :rules="rules" + label-position="right" + label-width="150px" + > + <el-form-item label="绫诲瀷" prop="wProjectType"> + <el-input + clearable + v-model="formObj.wProjectType" + placeholder="绫诲瀷" + /> + </el-form-item> + <!-- <el-form-item label="杩愯惀鐘舵��" prop="wStatus"> + <el-select v-model="formObj.wStatus" placeholder="杩愯惀鐘舵��"> + <el-option + v-for="s in status" + :key="s.value" + :label="s.label" + :value="s.value" + /> + </el-select> + </el-form-item> --> + <el-form-item label="涓氫富鍗曚綅" prop="wEmployerUnit"> + <el-input + clearable + v-model="formObj.wEmployerUnit" + placeholder="涓氫富鍗曚綅" + /> + </el-form-item> + <el-form-item label="涓氫富鍗曚綅鑱旂郴浜�" prop="wEmployerContacts"> + <el-input + clearable + v-model="formObj.wEmployerContacts" + placeholder="涓氫富鍗曚綅鑱旂郴浜�" + /> + </el-form-item> + <el-form-item + label="涓氫富鍗曚綅鑱旂郴鐢佃瘽" + prop="wEmployerContactsTel" + class="input-with-select" + > + <el-input + clearable + type="tel" + v-model="formObj.wEmployerContactsTel" + placeholder="涓氫富鍗曚綅鑱旂郴鐢佃瘽" + > + <template #prepend> + <el-icon><Iphone /></el-icon> + </template> + </el-input> + </el-form-item> + <el-form-item label="绉熻祦鍗曚綅" prop="wRentUnit"> + <el-input + clearable + v-model="formObj.wRentUnit" + placeholder="绉熻祦鍗曚綅" + /> + </el-form-item> + <el-form-item label="绉熻祦鍗曚綅鑱旂郴浜�" prop="wRentContacts"> + <el-input + clearable + v-model="formObj.wRentContacts" + placeholder="绉熻祦鍗曚綅鑱旂郴浜�" + /> + </el-form-item> + <el-form-item label="绉熻祦鍗曚綅鑱旂郴浜虹數璇�" prop="wRentContactsTel"> + <el-input + clearable + type="tel" + v-model="formObj.wRentContactsTel" + placeholder="绉熻祦鍗曚綅鑱旂郴浜虹數璇�" + > + <template #prepend> + <el-icon><Iphone /></el-icon> + </template> + </el-input> + </el-form-item> + <el-form-item> + <el-button + :disabled="!edit" + type="primary" + @click="onSubmit" + :loading="loading" + >鎻愪氦</el-button + > + <el-button :disabled="!edit" @click="onReset">閲嶇疆</el-button> + </el-form-item> + </el-form> + </template> + <template #description-items> + <el-descriptions + v-show="showStyle == 'descriptions'" + :column="2" + :size="fontSize" + direction="horizontal" + border + > + <template #title> + <el-text tag="h1">{{ title }}</el-text> + </template> + <template #extra> + <el-button + :disabled="!edit && !ignoreEdit" + :size="fontSize" + type="primary" + @click="onSubmit" + :loading="loading" + >鎻愪氦</el-button + > + <el-button + :size="fontSize" + :disabled="!edit && !ignoreEdit" + @click="onReset" + >閲嶇疆</el-button + > + </template> + <el-descriptions-item label="绫诲瀷" :span="2" + ><el-input + :size="fontSize" + clearable + v-model="formObj.wProjectType" + placeholder="绫诲瀷" + /></el-descriptions-item> + <el-descriptions-item label="鍗犲湴闈㈢Н" + ><el-input + :size="fontSize" + clearable + v-model="formObj.wFloorSpace" + placeholder="鍗犲湴闈㈢Н" + > + <template #append>銕�</template> + </el-input></el-descriptions-item + > + <el-descriptions-item label="瑙勫垝闈㈢Н" + ><el-input + :size="fontSize" + clearable + v-model="formObj.wPlanningArea" + placeholder="瑙勫垝闈㈢Н" + > + <template #append>銕�</template> + </el-input></el-descriptions-item + > + <el-descriptions-item label="涓氫富鍗曚綅"> + <el-input + clearable + v-model="formObj.wEmployerUnit" + placeholder="涓氫富鍗曚綅" + /> + </el-descriptions-item> + <el-descriptions-item label="涓氫富鍗曚綅鑱旂郴浜�"> + <el-input + clearable + v-model="formObj.wEmployerContacts" + placeholder="涓氫富鍗曚綅鑱旂郴浜�" + /> + </el-descriptions-item> + <el-descriptions-item + label="涓氫富鍗曚綅鑱旂郴鐢佃瘽" + prop="mpEmployerContactsTel" + class="input-with-select" + :span="2" + > + <el-input + clearable + type="tel" + v-model="formObj.wEmployerContactsTel" + placeholder="涓氫富鍗曚綅鑱旂郴鐢佃瘽" + > + <template #prepend> + <el-icon><Iphone /></el-icon> + </template> + </el-input> + </el-descriptions-item> + <el-descriptions-item label="鏂藉伐鍦板潃" span="2" + ><el-input + clearable + v-model="sceneObj.location" + placeholder="鏂藉伐鍦板潃" + :size="fontSize" + /></el-descriptions-item> + <el-descriptions-item label="椤圭洰璐熻矗浜�" + ><el-input + :size="fontSize" + clearable + v-model="sceneObj.contacts" + placeholder="椤圭洰璐熻矗浜�" + /></el-descriptions-item> + <el-descriptions-item label="椤圭洰璐熻矗浜虹數璇�" + ><el-input + :size="fontSize" + clearable + type="tel" + v-model="sceneObj.contactst" + placeholder="椤圭洰璐熻矗浜虹數璇�" + > + <template #prepend> + <el-icon><Iphone /></el-icon> + </template> </el-input + ></el-descriptions-item> + <el-descriptions-item label="绉熻祦鍗曚綅" + ><el-input + :size="fontSize" + clearable + v-model="formObj.wRentUnit" + placeholder="绉熻祦鍗曚綅" + /></el-descriptions-item> + </el-descriptions> + </template> + </BaseSceneInfo> +</template> +<script setup> +import { reactive, ref, watch, computed } from 'vue'; +import { useFormConfirm } from '@/composables/formConfirm'; +import BaseSceneInfo from './BaseSceneInfo.vue'; + +const props = defineProps({ + scene: Object, + //宸ュ湴棰濆淇℃伅 + formInfo: Object, + //鍦烘櫙绫诲瀷锛氬伐鍦� + sceneType: { + type: Number, + default: 1 + }, + // 灞曠ず鏍峰紡 form锛氳〃鍗曪紱descriptions锛氭弿杩板垪琛� + showStyle: { + type: String, + default: 'descriptions' + // default:'form' + }, + title: String +}); +const fontSize = ref('small'); +const emit = defineEmits([ + 'onSubmit', + 'onCancel', + 'update:scene', + 'update:formInfo' +]); + +const sceneObj = ref({}); +const { formObj, formRef, edit, onSubmit, onReset } = useFormConfirm({ + submit: { + do: submit + }, + cancel: { + do: cancel + } +}); +const ignoreEdit = computed(() => props.showStyle == 'descriptions'); + +const loading = ref(false); +const status = reactive([]); +const rules = reactive({}); + +const baseSceneInfo = ref(null); +function submit() { + return baseSceneInfo.value.submit() +} + +function cancel() { + emit('onCancel'); +} + +watch( + () => props.formInfo, + (nValue) => { + if (nValue) { + formObj.value = nValue; + } + }, + { deep: false, immediate: true } +); + +watch( + () => props.scene, + (nValue) => { + if (nValue) { + sceneObj.value = nValue; + } + }, + { deep: false, immediate: true } +); +</script> + +<style> +/* .input-with-select .el-input-group__prepend { + background-color: var(--el-fill-color-blank); +} */ +.sub-title { + font-size: var(--el-font-size-large); + margin-bottom: 20px; + margin-left: 20px; +} +</style> -- Gitblit v1.9.3