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/CompSceneMixingPlantInfo.vue |  338 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 338 insertions(+), 0 deletions(-)

diff --git a/src/views/fysp/scene/CompSceneMixingPlantInfo.vue b/src/views/fysp/scene/CompSceneMixingPlantInfo.vue
new file mode 100644
index 0000000..602a35f
--- /dev/null
+++ b/src/views/fysp/scene/CompSceneMixingPlantInfo.vue
@@ -0,0 +1,338 @@
+<!-- 鎼呮媽绔欎笓灞炰俊鎭紪杈� -->
+<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="mpStatus">
+      <el-select v-model="formObj.mpStatus" 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="mpFloorSpace">
+          <el-input
+            clearable
+            v-model="formObj.mpFloorSpace"
+            placeholder="鍗犲湴闈㈢Н"
+          >
+            <template #append>銕�</template>
+          </el-input>
+        </el-form-item>
+        <el-form-item label="瑙勫垝闈㈢Н" prop="mpPlanningArea">
+          <el-input
+            clearable
+            v-model="formObj.mpPlanningArea"
+            placeholder="瑙勫垝闈㈢Н"
+          >
+            <template #append>銕�</template>
+          </el-input>
+        </el-form-item>
+        <el-form-item label="涓氫富鍗曚綅" prop="mpEmployerUnit">
+          <el-input
+            clearable
+            v-model="formObj.mpEmployerUnit"
+            placeholder="涓氫富鍗曚綅"
+          />
+        </el-form-item>
+        <el-form-item label="涓氫富鍗曚綅鑱旂郴浜�" prop="mpEmployerContacts">
+          <el-input
+            clearable
+            v-model="formObj.mpEmployerContacts"
+            placeholder="涓氫富鍗曚綅鑱旂郴浜�"
+          />
+        </el-form-item>
+        <el-form-item
+          label="涓氫富鍗曚綅鑱旂郴鐢佃瘽"
+          prop="mpEmployerContactsTel"
+          class="input-with-select"
+        >
+          <el-input
+            clearable
+            type="tel"
+            v-model="formObj.mpEmployerContactsTel"
+            placeholder="涓氫富鍗曚綅鑱旂郴鐢佃瘽"
+          >
+            <template #prepend>
+              <el-icon><Iphone /></el-icon>
+            </template>
+          </el-input>
+        </el-form-item>
+        <el-form-item label="鏄惁涓虹豢鑹茬幆淇濈珯鍘�" prop="mpGreenPlant">
+          <el-select
+            v-model="formObj.mpGreenPlant"
+            placeholder="鏄惁涓虹豢鑹茬幆淇濈珯鍘�"
+          >
+            <el-option
+              v-for="s in [
+                { value: false, label: '鍚�' },
+                { value: true, label: '鏄�' }
+              ]"
+              :key="s.value"
+              :label="s.label"
+              :value="s.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鏄惁涓烘枃鏄庡満绔�" prop="mpCivillyPlant">
+          <el-select
+            v-model="formObj.mpCivillyPlant"
+            placeholder="鏄惁涓烘枃鏄庡満绔�"
+          >
+            <el-option
+              v-for="s in [
+                { value: false, label: '鍚�' },
+                { value: true, label: '鏄�' }
+              ]"
+              :key="s.value"
+              :label="s.label"
+              :value="s.value"
+            />
+          </el-select>
+        </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
+            :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="鍗犲湴闈㈢Н"
+            ><el-input
+              :size="fontSize"
+              clearable
+              v-model="formObj.mpFloorSpace"
+              placeholder="鍗犲湴闈㈢Н"
+            >
+              <template #append>銕�</template>
+            </el-input></el-descriptions-item
+          >
+          <el-descriptions-item label="瑙勫垝闈㈢Н"
+            ><el-input
+              :size="fontSize"
+              clearable
+              v-model="formObj.mpPlanningArea"
+              placeholder="瑙勫垝闈㈢Н"
+            >
+              <template #append>銕�</template>
+            </el-input></el-descriptions-item
+          >
+          <el-descriptions-item label="涓氫富鍗曚綅">
+            <el-input
+              clearable
+              v-model="formObj.mpEmployerUnit"
+              placeholder="涓氫富鍗曚綅"
+            />
+          </el-descriptions-item>
+          <el-descriptions-item label="涓氫富鍗曚綅鑱旂郴浜�">
+            <el-input
+              clearable
+              v-model="formObj.mpEmployerContacts"
+              placeholder="涓氫富鍗曚綅鑱旂郴浜�"
+            />
+          </el-descriptions-item>
+          <el-descriptions-item
+            label="涓氫富鍗曚綅鑱旂郴鐢佃瘽"
+            prop="mpEmployerContactsTel"
+            class="input-with-select"
+            :span="2"
+          >
+            <el-input
+              clearable
+              type="tel"
+              v-model="formObj.mpEmployerContactsTel"
+              placeholder="涓氫富鍗曚綅鑱旂郴鐢佃瘽"
+            >
+              <template #prepend>
+                <el-icon><Iphone /></el-icon>
+              </template>
+            </el-input>
+          </el-descriptions-item>
+
+          <el-descriptions-item label="鏄惁涓虹豢鑹茬幆淇濈珯鍘�">
+            <el-select
+              v-model="formObj.mpGreenPlant"
+              placeholder="鏄惁涓虹豢鑹茬幆淇濈珯鍘�"
+            >
+              <el-option
+                v-for="s in [
+                  { value: false, label: '鍚�' },
+                  { value: true, label: '鏄�' }
+                ]"
+                :key="s.value"
+                :label="s.label"
+                :value="s.value"
+              />
+            </el-select>
+          </el-descriptions-item>
+          <el-descriptions-item label="鏄惁涓烘枃鏄庡満绔�">
+            <el-select
+              v-model="formObj.mpCivillyPlant"
+              placeholder="鏄惁涓烘枃鏄庡満绔�"
+            >
+              <el-option
+                v-for="s in [
+                  { value: false, label: '鍚�' },
+                  { value: true, label: '鏄�' }
+                ]"
+                :key="s.value"
+                :label="s.label"
+                :value="s.value"
+              />
+            </el-select>
+          </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>
+    </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