From c64c8f43ec1a3d88feb1f915fd488040b6358e7d Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: 星期二, 09 八月 2022 19:04:12 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqtOut

---
 src/views/contingencyManagement/emergencyResources/emergencySupplies/component/openAdd.vue |  942 ++++++++++++++++++++++++++++++---------------------------
 1 files changed, 495 insertions(+), 447 deletions(-)

diff --git a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/openAdd.vue b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/openAdd.vue
index e4c3e34..17defc0 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/openAdd.vue
@@ -1,467 +1,515 @@
 <template>
-  <div class="system-edit-user-container">
-    <el-dialog
-        title="新建应急物资代码"
-        v-model="isShowDialog"
-        width="769px"
-        draggable
-    >
-      <el-form
-          ref="ruleFormRef"
-          :model="ruleForm"
-          size="default"
-          label-width="120px"
-      >
-        <el-row :gutter="35">
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资名称" prop="teamName">
-              <el-input v-model="ruleForm.teamName" placeholder="请填写物资名称"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资编号" prop="responsibleDepartment">
-              <el-input v-model="ruleForm.responsibleDepartment" placeholder="请填写物资编号"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资用途" prop="teamLeader">
-              <el-input v-model="ruleForm.teamLeader" placeholder="请填写物资用途"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="所属区域" prop="telephone">
-              <el-input
-                  v-model="ruleForm.teamLeader"
-                  placeholder="请选择"
-                  class="input-with-select"
-              >
-                <template #append>
-                  <el-button :icon="Search" @click="regionsDialog"/>
-                </template>
-              </el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资型号" prop="teamPhone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写物资型号"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="负责部门" prop="telephone" >
-              <el-tree-select
-                  v-model="ruleForm.responsibleDepartment"
-                  :data="data"
-                  class="w100"
-                  placeholder="请选择"/>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资分类" prop="telephone">
-              <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择">
-                <el-option label="事故气体吸收装置" value="admin"></el-option>
-                <el-option label="通讯设施" value="common"></el-option>
-                <el-option label="交通运输工具" value="common"></el-option>
-                <el-option label="照明装置" value="common"></el-option>
-                <el-option label="防护器材" value="common"></el-option>
-                <el-option label="其它" value="common"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="存放位置" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写存放位置"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="存储数量" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写存储数量"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="生产日期" prop="telephone">
-              <el-date-picker
-                  v-model="value1"
-                  type="datetime"
-                  class="w100"
-                  placeholder="选择日期时间"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="使用期限(天)" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写使用期限"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="物资状态" prop="telephone">
-              <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择">
-                <el-option label="完好" value="admin"></el-option>
-                <el-option label="维修" value="common"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="检查周期月" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写使用期限"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="投用日期" prop="telephone">
-              <el-date-picker
-                  v-model="value1"
-                  type="datetime"
-                  class="w100"
-                  placeholder="选择日期时间"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-            <el-form-item label="使用说明" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写使用说明"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="检查日期" prop="telephone">
-              <el-date-picker
-                  v-model="value1"
-                  type="datetime"
-                  class="w100"
-                  placeholder="选择日期时间"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="下次检查日期" prop="telephone">
-              <el-date-picker
-                  v-model="value1"
-                  type="datetime"
-                  class="w100"
-                  placeholder="选择日期时间"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="经度(度)" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写经度(度)"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="纬度(度)" prop="telephone">
-              <el-input v-model="ruleForm.teamPhone" placeholder="请填写纬度(度)"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="负责人" prop="telephone">
-              <el-input
-                  v-model="ruleForm.teamLeader"
-                  placeholder="请选择"
-                  class="input-with-select"
-              >
-                <template #append>
-                  <el-button :icon="Search" @click="daiInpt"/>
-                </template>
-              </el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-      <template #footer>
+	<div class="system-edit-user-container">
+		<el-dialog :title="titles" v-model="isShowDialog" @close="resetForm(ruleFormRef)" width="50%" draggable :fullscreen="full">
+			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+			<el-form ref="ruleFormRef" :rules="rules" :model="ruleForm" size="default" label-width="120px" :disabled="disabled">
+				<el-row :gutter="35">
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资名称" prop="name">
+							<el-input v-model="ruleForm.name" placeholder="请填写物资名称"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资编号" prop="number">
+							<el-input v-model="ruleForm.number" placeholder="请填写物资编号"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资用途" prop="use">
+							<el-input v-model="ruleForm.use" placeholder="请填写物资用途"></el-input>
+						</el-form-item>
+					</el-col>
+					<!--					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">-->
+					<!--						<el-form-item label="所属区域">-->
+					<!--							<el-input v-model="ruleForm.areaId" placeholder="请选择" class="input-with-select">-->
+					<!--								<template #append>-->
+					<!--									<el-button :icon="Search" @click="regionsDialog" />-->
+					<!--								</template>-->
+					<!--							</el-input>-->
+					<!--						</el-form-item>-->
+					<!--					</el-col>-->
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资型号" prop="model">
+							<el-input v-model="ruleForm.model" placeholder="请填写物资型号"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="负责部门" prop="departmentId">
+							<el-tree-select
+								v-model="ruleForm.departmentId"
+								check-strictly
+								:data="data"
+								:props="propse"
+								class="w100"
+								clearable
+								:render-after-expand="false"
+								placeholder="请选择"
+							/>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资分类" prop="classification">
+							<el-select v-model="ruleForm.classification" class="w100" placeholder="请选择">
+								<el-option label="事故气体吸收装置" value="1"></el-option>
+								<el-option label="通讯设施" value="2"></el-option>
+								<el-option label="交通运输工具" value="3"></el-option>
+								<el-option label="照明装置" value="4"></el-option>
+								<el-option label="防护器材" value="5"></el-option>
+								<el-option label="其它" value="6"></el-option>
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="存放位置" prop="place">
+							<el-input v-model="ruleForm.place" placeholder="请填写存放位置"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="存储数量" prop="count">
+							<el-input v-model.number="ruleForm.count" maxlength="6" placeholder="请填写存储数量"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="生产日期" prop="productionDate">
+							<el-date-picker
+								v-model="ruleForm.productionDate"
+								type="datetime"
+								class="w100"
+								placeholder="选择日期时间"
+								value-format="YYYY-MM-DD HH:mm:ss"
+							/>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="使用期限(天)" prop="usePeriod">
+							<el-input v-model.number="ruleForm.usePeriod" maxlength="6" placeholder="请填写使用期限"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="物资状态" prop="status">
+							<el-select v-model="ruleForm.status" class="w100" placeholder="请选择">
+								<el-option label="完好" :value="1"></el-option>
+								<el-option label="维修" :value="2"></el-option>
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="检查周期月" prop="inspectPeriod">
+							<el-input v-model.number="ruleForm.inspectPeriod" type="" maxlength="4" placeholder="请填写使用期限"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="投用日期" prop="useDate">
+							<el-date-picker v-model="ruleForm.useDate" type="datetime" class="w100" placeholder="选择日期时间" value-format="YYYY-MM-DD HH:mm:ss" />
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+						<el-form-item label="使用说明" prop="useExplain">
+							<el-input v-model="ruleForm.useExplain" type="textarea" placeholder="请填写使用说明"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="检查日期" prop="inspectDate">
+							<el-date-picker
+								v-model="ruleForm.inspectDate"
+								type="datetime"
+								class="w100"
+								placeholder="选择日期时间"
+								value-format="YYYY-MM-DD HH:mm:ss"
+							/>
+						</el-form-item>
+					</el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="下次检查日期" prop="nextInspectDate">
+							<el-date-picker
+								v-model="ruleForm.nextInspectDate"
+								type="datetime"
+								value-format="YYYY-MM-DD HH:mm:ss"
+								class="w100"
+								placeholder="选择日期时间"
+							/>
+						</el-form-item>
+					</el-col>
+					<!--					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">-->
+					<!--						<el-form-item label="经度(度)">-->
+					<!--							<el-input v-model="ruleForm.longitude" placeholder="请填写经度(度)"></el-input>-->
+					<!--						</el-form-item>-->
+					<!--					</el-col>-->
+					<!--					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">-->
+					<!--						<el-form-item label="纬度(度)">-->
+					<!--							<el-input v-model="ruleForm.latitude" placeholder="请填写纬度(度)"></el-input>-->
+					<!--						</el-form-item>-->
+					<!--					</el-col>-->
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="负责人" prop="principalUserName">
+							<el-input v-model="ruleForm.principalUserName" placeholder="请选择" class="input-with-select">
+								<template #append>
+									<el-button :icon="Search" @click="daiInpt" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</el-form>
+			<template #footer>
 				<span class="dialog-footer">
-					<el-button @click="onCancel" size="default">关闭</el-button>
-          <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button>
+					<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+					<el-button size="default" type="primary" v-if="disabled == true ? false : true" @click="submitForm(titles, ruleFormRef)">确定</el-button>
 				</span>
-      </template>
-    </el-dialog>
-    <PersonInCharge ref="Shows"/>
-    <userSelections ref="userRef"/>
-    <RegionsCheckbox ref="openRef"/>
-  </div>
+			</template>
+		</el-dialog>
+		<DailogSearchUser ref="Shows" @SearchUser="onUser"></DailogSearchUser>
+		<userSelections ref="userRef" />
+		<RegionsCheckbox ref="openRef" />
+	</div>
 </template>
 
 <script lang="ts">
-import {
-  reactive,
-  ref,
-  defineComponent
-} from 'vue';
+import { reactive, ref, defineComponent, onMounted } from 'vue';
 
-import type {
-  FormInstance,
-  // FormRules,
-} from 'element-plus'
-
-import {
-  Search
-} from '@element-plus/icons-vue'
-import UserSelections from "/@/components/userSelections/index.vue"
-import PersonInCharge from '/@/views/contingencyManagement/emergencyResources/emergencySupplies/component/personInCharge.vue'
-import RegionsCheckbox from '/@/views/contingencyManagement/emergencyResources/emergencySupplies/component/regionsCheckbox.vue'
+import type { FormInstance, FormRules } from 'element-plus';
+import { ElMessage } from 'element-plus';
+import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
+import { Search, FullScreen } from '@element-plus/icons-vue';
+import UserSelections from '/@/components/userSelections/index.vue';
+import PersonInCharge from '/@/views/contingencyManagement/emergencyResources/emergencySupplies/component/personInCharge.vue';
+import RegionsCheckbox from '/@/views/contingencyManagement/emergencyResources/emergencySupplies/component/regionsCheckbox.vue';
+import { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';
+import { goalManagementApi } from '/@/api/goalManagement';
 
 export default defineComponent({
-  name: 'openAdd',
-  components: {
-    PersonInCharge,
-    UserSelections,
-    RegionsCheckbox,
-  },
-  setup() {
-    const isShowDialog = ref(false)
+	name: 'openAdd',
+	components: {
+		PersonInCharge,
+		UserSelections,
+		RegionsCheckbox,
+		DailogSearchUser,
+	},
+	setup(props, { emit }) {
+		const isShowDialog = ref(false);
 
-    const ruleFormRef = ref<FormInstance>()
-    //定义表单
-    const ruleForm = reactive({
-        teamName: '', // 队伍名称
-        teamLeader: '', //队伍负责人
-        department: [], // 负责人部门
-        phone: '', // 负责人手机
-        telephone: '', // 固定电话
-    });
-    // 打开弹窗
-    const openDialog = () => {
-      // state.ruleForm = row;
-      isShowDialog.value = true;
-    };
-    // 关闭弹窗
-    const closeDialog = () => {
-      isShowDialog.value = false;
-    };
-    // 取消
-    const onCancel = () => {
-      closeDialog();
-    };
-    //日期选择器
-    const value1 = ref('')
-    // 可选择树
-    const treeSelect = ref()
-    const tree = [
-      {
-        value: '1',
-        label: 'Level one 1',
-        children: [
-          {
-            value: '1-1',
-            label: 'Level two 1-1',
-            children: [
-              {
-                value: '1-1-1',
-                label: 'Level three 1-1-1',
-              },
-            ],
-          },
-        ],
-      },
-      {
-        value: '2',
-        label: 'Level one 2',
-        children: [
-          {
-            value: '2-1',
-            label: 'Level two 2-1',
-            children: [
-              {
-                value: '2-1-1',
-                label: 'Level three 2-1-1',
-              },
-            ],
-          },
-          {
-            value: '2-2',
-            label: 'Level two 2-2',
-            children: [
-              {
-                value: '2-2-1',
-                label: 'Level three 2-2-1',
-              },
-            ],
-          },
-        ],
-      },
-      {
-        value: '3',
-        label: 'Level one 3',
-        children: [
-          {
-            value: '3-1',
-            label: 'Level two 3-1',
-            children: [
-              {
-                value: '3-1-1',
-                label: 'Level three 3-1-1',
-              },
-            ],
-          },
-          {
-            value: '3-2',
-            label: 'Level two 3-2',
-            children: [
-              {
-                value: '3-2-1',
-                label: 'Level three 3-2-1',
-              },
-            ],
-          },
-        ],
-      },
-    ]
-    //定义树形下拉框
-    const responsibleDepartment = ref()
-    const data = [
-      {
-        value: '1',
-        label: '广汇能源综合物流发展有限责任公司',
-        children: [
-          {
-            value: '1-1',
-            label: '经营班子',
-            children: [],
-          },
-        ],
-      },
-      {
-        value: '2',
-        label: '生产运行部',
-        children: [
-          {
-            value: '2-1',
-            label: '灌装一班',
-            children: []
-          },
-          {
-            value: '2-2',
-            label: '工艺四班',
-            children: [],
-          },
-        ],
-      },
-      {
-        value: '3',
-        label: '设备部',
-        children: [
-          {
-            value: '3-1',
-            label: '仪表班',
-            children: [],
-          },
-          {
-            value: '3-2',
-            label: '机修班',
-            children: [],
-          },
-        ],
-      },
-    ]
-    // 必填项提示
-    // const rules = reactive<FormRules>({
-    //   teamName: [
-    //     {
-    //       required: true,
-    //       message: '队伍名称不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    //   teamLevel: [
-    //     {
-    //       required: true,
-    //       message: '队伍级别不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    //   teamLeader: [
-    //     {
-    //       required: true,
-    //       message: '队伍负责人不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    //   responsibleDepartment: [
-    //     {
-    //       required: true,
-    //       message: '负责人部门不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    //   teamPhone: [
-    //     {
-    //       required: true,
-    //       message: '负责人手机不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    //   telephone: [
-    //     {
-    //       required: true,
-    //       message: '固定电话不能为空',
-    //       trigger: 'change',
-    //     },
-    //   ],
-    // })
-    // 表单提交验证必填项
-    const submitForm = async (formEl: FormInstance | undefined) => {
-      if (!formEl) return
-      await formEl.validate((valid, fields) => {
-        if (valid) {
-          console.log('submit!')
-        } else {
-          console.log('error submit!', fields)
-        }
-      })
-    }
-    // 应急队伍弹窗
-    const Shows=ref()
-    const daiInpt=()=>{
-      Shows.value.openDailog()
-    }
-    // 选择区域弹窗
-    const openRef=ref()
-    const regionsDialog=()=>{
-      openRef.value.openDailog()
-    }
-    // 打开用户选择弹窗
-    const userRef = ref();
-    const openUser = () => {
-      userRef.value.openDialog();
-    };
-    return {
-      openDialog,
-      closeDialog,
-      isShowDialog,
-      onCancel,
-      responsibleDepartment,
-      data,
-      Search,
-      ruleForm,
-      value1,
-      treeSelect,
-      tree,
-      daiInpt,
-      Shows,
-      ruleFormRef,
-      submitForm,
-      // rules,
-      openUser,
-      userRef,
-      regionsDialog,
-      openRef,
-    };
-  },
+		const ruleFormRef = ref<FormInstance>();
+		//定义表单
+		const ruleForm = ref({
+			productionDate: '',
+			useDate: '',
+			inspectDate: '',
+			nextInspectDate: '',
+			inspectPeriod: '',
+			count: '',
+			usePeriod: '',
+			departmentId: '',
+			principalUserUid: '',
+			principalUserName: '',
+			status: '',
+			classification: '',
+			name: '',
+			number: '',
+			model: '',
+			longitude: '',
+			latitude: '',
+			use: '',
+			areaId: null,
+			place: '',
+			useExplain: '',
+		});
+		const titles = ref();
+		const disabled = ref();
+		// 打开弹窗
+		const openDialog = (title: string, id: number, type: boolean) => {
+			isShowDialog.value = true;
+			titles.value = title;
+			disabled.value = type;
+			if (title == '查看应急物资代码' || title == '修改应急物资代码') {
+				emergencySuppliesApi()
+					.seeEmergencySupplies(id)
+					.then((res) => {
+						if (res.data.code == 200) {
+							ruleForm.value = res.data.data;
+						}
+					});
+			}
+		};
+		//日期选择器
+		const value1 = ref('');
+		//部门树
+		const department = () => {
+			goalManagementApi()
+				.getTreedepartment()
+				.then((res) => {
+					if (res.data.code == 200) {
+						data.value = res.data.data;
+					} else {
+						ElMessage.error(res.data.msg);
+					}
+				});
+		};
+		//定义树形下拉框
+		const responsibleDepartment = ref();
+		const data = ref();
+		const propse = {
+			label: 'depName',
+			children: 'children',
+			value: 'depId',
+		};
+		onMounted(() => {
+			department();
+		});
+		// 必填项提示
+		const rules = reactive<FormRules>({
+			name: [
+				{
+					required: true,
+					message: '物资名称不能为空',
+					trigger: 'change',
+				},
+			],
+			number: [
+				{
+					required: true,
+					message: '物资编号不能为空',
+					trigger: 'change',
+				},
+			],
+			use: [
+				{
+					required: true,
+					message: '物资用途不能为空',
+					trigger: 'change',
+				},
+			],
+			model: [
+				{
+					required: true,
+					message: '物资型号不能为空',
+					trigger: 'change',
+				},
+			],
+			departmentId: [
+				{
+					required: true,
+					message: '负责部门不能为空',
+					trigger: 'change',
+				},
+			],
+			classification: [
+				{
+					required: true,
+					message: '物资分类不能为空',
+					trigger: 'change',
+				},
+			],
+			place: [
+				{
+					required: true,
+					message: '存放位置不能为空',
+					trigger: 'change',
+				},
+			],
+			count: [
+				{
+					required: true,
+					message: '存储数量不能为空',
+					trigger: 'change',
+				},
+				{ type: 'number', message: '请输入数字类型', trigger: 'change' },
+			],
+			productionDate: [
+				{
+					required: true,
+					message: '生产日期不能为空',
+					trigger: 'change',
+				},
+			],
+			usePeriod: [
+				{
+					required: true,
+					message: '使用期限不能为空',
+					trigger: 'change',
+				},
+				{ type: 'number', message: '请输入数字类型', trigger: 'change' },
+			],
+			status: [
+				{
+					required: true,
+					message: '物资状态不能为空',
+					trigger: 'change',
+				},
+			],
+			inspectPeriod: [
+				{
+					required: true,
+					message: '检查周期月不能为空',
+					trigger: 'change',
+				},
+				{ type: 'number', message: '请输入数字类型', trigger: 'change' },
+			],
+			useDate: [
+				{
+					required: true,
+					message: '投用日期不能为空',
+					trigger: 'change',
+				},
+			],
+			inspectDate: [
+				{
+					required: true,
+					message: '检查日期不能为空',
+					trigger: 'change',
+				},
+			],
+			nextInspectDate: [
+				{
+					required: true,
+					message: '下次检查日期不能为空',
+					trigger: 'change',
+				},
+			],
+			principalUserName:[],
+			useExplain:[]
+		});
+		// 表单提交验证必填项
+		const submitForm = async (title: string, formEl: FormInstance | undefined) => {
+			if (title == '新建应急物资代码') {
+				if (!formEl) return;
+				await formEl.validate((valid, fields) => {
+					if (valid) {
+						isShowDialog.value = false;
+						emergencySuppliesApi()
+							.addEmergencySupplies(ruleForm.value)
+							.then((res) => {
+								if (res.data.code == 200) {
+									ElMessage({
+										showClose: true,
+										message: res.data.msg,
+										type: 'success',
+									});
+									emit('myAdd', true);
+								} else {
+									ElMessage({
+										showClose: true,
+										message: res.data.msg,
+										type: 'error',
+									});
+									emit('myAdd', true);
+								}
+								formEl.resetFields();
+							});
+					} else {
+						console.log('error submit!', fields);
+					}
+				});
+			} else if (title == '修改应急物资代码') {
+				if (!formEl) return;
+				await formEl.validate((valid, fields) => {
+					if (valid) {
+						isShowDialog.value = false;
+						emergencySuppliesApi()
+							.editEmergencySupplies(ruleForm.value)
+							.then((res) => {
+								if (res.data.code == 200) {
+									ElMessage({
+										showClose: true,
+										message: '修改成功',
+										type: 'success',
+									});
+									emit('myAdd', true);
+								} else {
+									ElMessage({
+										showClose: true,
+										message: res.data.msg,
+										type: 'error',
+									});
+									emit('myAdd', true);
+								}
+								formEl.resetFields();
+							});
+					} else {
+						console.log('error submit!', fields);
+					}
+				});		
+			}
+		};
+		const resetForm = (formEl: FormInstance | undefined) => {
+			isShowDialog.value = false;
+			if (!formEl) return;
+			formEl.resetFields();
+		};
+		// 人名
+		const Shows = ref();
+		const daiInpt = () => {
+			Shows.value.openDailog();
+		};
+		// 选择区域弹窗
+		const openRef = ref();
+		const regionsDialog = () => {
+			openRef.value.openDailog();
+		};
+		// 打开用户选择弹窗
+		const userRef = ref();
+		const openUser = () => {
+			userRef.value.openDialog();
+		};
+		//全屏
+		const full = ref(false);
+		const toggleFullscreen = () => {
+			if (full.value == false) {
+				full.value = true;
+			} else {
+				full.value = false;
+			}
+		};
+			const onUser = (e: any) => {
+			ruleForm.value.principalUserUid = e.uid;
+			ruleForm.value.principalUserName = e.realName;
+		};
+		return {
+			openDialog,
+			isShowDialog,
+			responsibleDepartment,
+			data,
+			propse,
+			department,
+			Search,
+			ruleForm,
+			value1,
+			daiInpt,
+			Shows,
+			ruleFormRef,
+			submitForm,
+			rules,
+			openUser,
+			userRef,
+			regionsDialog,
+			openRef,
+			toggleFullscreen,
+			FullScreen,
+			full,
+			resetForm,
+			titles,
+			disabled,
+			emit,
+			onUser
+		};
+	},
 });
 </script>
 <style scoped lang="scss">
-.textarea{
-  height: 168px!important;
+.textarea {
+	height: 168px !important;
 }
-.textarea ::v-deep .el-textarea__inner{
-  height: 168px!important;
+.textarea ::v-deep .el-textarea__inner {
+	height: 168px !important;
 }
 ::v-deep .el-table__cell {
-  font-weight: 400;
+	font-weight: 400;
 }
-.el-divider--horizontal{
-  height: 0;
-  margin: 0;
-  border-top: transparent;
+.el-divider--horizontal {
+	height: 0;
+	margin: 0;
+	border-top: transparent;
 }
-.el-select{
-  width: 100%;
+.el-select {
+	width: 100%;
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.2