From f12c45e54d27f27886d8bc9ee96624979fa7de2e Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期一, 22 八月 2022 18:39:25 +0800 Subject: [PATCH] Xiugai --- src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue | 2 /dev/null | 4 - src/views/specialWorkSystem/workFlow/approveRule/index.vue | 2 src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue | 167 ++++++++++++++++++++++++----------------- src/views/specialWorkSystem/workFlow/approveRule/components/approveRuleDialog.vue | 8 +- src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue | 2 src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue | 1 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue | 1 src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue | 6 9 files changed, 106 insertions(+), 87 deletions(-) diff --git "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54_\133Default_Changelist\135/shelved.patch" "b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54_\133Default_Changelist\135/shelved.patch" deleted file mode 100644 index 2e27374..0000000 --- "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54_\133Default_Changelist\135/shelved.patch" +++ /dev/null @@ -1,3989 +0,0 @@ -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"checkData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"checkData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"checkData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"applyTime\" label=\"整改时间\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip min-width=\"150px\">\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"验收状态\" show-overflow-tooltip min-width=\"150px\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"checkAcceptPerson\" label=\"验收人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 1\" @click=\"onOpenDialogRef('验收', scope.row)\">验收</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"checkData.params.pageIndex\" background v-model:page-size=\"checkData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"checkData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <checkDialog ref=\"checkDialogRef\" @refreshCheck=\"initCheckTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport checkDialog from './components/checkDialog.vue';\r\nimport { Check, Delete, View } from '@element-plus/icons-vue';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { hiddenCheckApi } from '/@/api/doublePreventSystem/check';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n checkData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'check',\r\n components: { checkDialog, Check, Delete, View },\r\n setup() {\r\n const checkDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n checkData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: 1\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initCheckTableData = async () => {\r\n let res = await hiddenCheckApi().getHiddenCheckList(state.checkData.params);\r\n if (res.data.code === '200') {\r\n state.checkData.data = res.data.data;\r\n state.checkData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n checkDialogRef.value.openCheckDialog(type, value, state.departmentList);\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.checkData.params.pageSize = val;\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.checkData.params.pageIndex = val;\r\n initCheckTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initCheckTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Check,\r\n Delete,\r\n View,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n checkDialog,\r\n checkDialogRef,\r\n initCheckTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (date 1660353607563) -@@ -12,7 +12,12 @@ - <span>整改部门:</span> - <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-box" v-model="checkData.params.rectifyDepId"> </el-cascader> - </div> -- -+ <div class="basic-line"> -+ <span>整改状态:</span> -+ <el-select class="input-box" v-model="checkData.params.dangerStatus" placeholder="整改状态" clearable filterable> -+ <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> -+ </el-select> -+ </div> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -120,10 +125,7 @@ - { id: 2, name: '限期整改' } - ], - dangerStatusList: [ -- { id: 0, name: '整改中' }, - { id: 1, name: '待验收' }, -- { id: 2, name: '延期整改' }, -- { id: 4, name: '超期未整改' }, - { id: 9, name: '已验收' } - ] - }); -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"rectifyData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>隐患状态:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.dangerStatus\" placeholder=\"隐患状态\" filterable clearable>\r\n <el-option v-for=\"item in dangerStatusList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"rectifyData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyTime\" label=\"整改期限\" min-width=\"130px\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n <span>{{ scope.row.rectifyTime }}</span>\r\n <span v-if=\"scope.row.dangerStatus === 4\" class=\"overdue-img\">逾期</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"隐患整改状态\" show-overflow-tooltip align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"createByUserName\" label=\"创建人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtCreate\" label=\"创建时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"lastEditUserName\" label=\"最后修改人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtModitify\" label=\"最后修改时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('整改', scope.row)\">整改</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Edit\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('延期', scope.row)\">延期</el-button>\r\n <el-button size=\"small\" text type=\"danger\" :icon=\"Delete\" @click=\"onDelHiddenRectify(scope.row)\">删除</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"rectifyData.params.pageIndex\" background v-model:page-size=\"rectifyData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"rectifyData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <rectifyDialog ref=\"rectifyDialogRef\" @refreshRectify=\"initRectifyTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport rectifyDialog from './components/rectifyDialog.vue';\r\nimport { Edit, Delete, Check, View } from '@element-plus/icons-vue';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n rectifyData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'rectify',\r\n components: { rectifyDialog, Edit, Delete, View },\r\n setup() {\r\n const rectifyDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n rectifyData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: null\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initRectifyTableData = async () => {\r\n let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params);\r\n if (res.data.code === '200') {\r\n state.rectifyData.data = res.data.data;\r\n state.rectifyData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n rectifyDialogRef.value.openRectifyDialog(type, value, state.departmentList);\r\n };\r\n // 删除\r\n const onDelHiddenRectify = (row: any) => {\r\n ElMessageBox.confirm(`此操作将永久删除该隐患整改,是否继续?`, '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n })\r\n .then(async () => {\r\n let res = await hiddenRectifyApi().deleteHiddenRectify({ id: row.id });\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n duration: 2000,\r\n message: '删除成功'\r\n });\r\n await initRectifyTableData();\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n })\r\n .catch(() => {});\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.rectifyData.params.pageSize = val;\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.rectifyData.params.pageIndex = val;\r\n initRectifyTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initRectifyTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Edit,\r\n View,\r\n Check,\r\n Delete,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onDelHiddenRectify,\r\n onHandleCurrentChange,\r\n rectifyDialog,\r\n rectifyDialogRef,\r\n initRectifyTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n.overdue-img {\r\n position: absolute;\r\n background-color: #f56c6c;\r\n border-radius: 4px;\r\n color: #fff;\r\n display: inline-block;\r\n font-size: 12px;\r\n height: 21px;\r\n line-height: 18px;\r\n text-align: center;\r\n white-space: nowrap;\r\n border: 1px solid #fff;\r\n transform: scale(0.8);\r\n padding: 1px 3px 0 3px;\r\n}\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (date 1660364159687) -@@ -3,6 +3,16 @@ - <el-card shadow="hover"> - <div class="system-user-search mb15"> - <div class="basic-line"> -+ <div style="display: inline-block">整改编号:</div> -+ <div style="display: inline-block"> -+ <el-autocomplete :fetch-suggestions="querySearch" v-model="rectifyData.params.serialCode" placeholder="整改编号"> -+ <template #prepend> -+ <el-date-picker value-format="YYYY-MM-DD" v-model="rectifyData.dateTime" @change="getSerialCodeList" placeholder="选择日期"> </el-date-picker> -+ </template> -+ </el-autocomplete> -+ </div> -+ </div> -+ <div class="basic-line"> - <span>整改类型:</span> - <el-select class="input-box" v-model="rectifyData.params.rectifyType" placeholder="整改类型" filterable> - <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option> -@@ -27,6 +37,7 @@ - </div> - <el-table :data="rectifyData.data" style="width: 100%" fit highlight-current-row> - <el-table-column type="index" label="序号" width="60" /> -+ <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip width="170px"></el-table-column> - <el-table-column prop="dangerCode" label="隐患名称" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyTime" label="整改期限" min-width="130px" show-overflow-tooltip> -@@ -106,6 +117,7 @@ - rectifyTypeList: Array<enumType>; - dangerStatusList: Array<enumType>; - departmentList: []; -+ dateTime: string; - } - interface enumType { - id: number; -@@ -127,9 +139,11 @@ - pageSize: 10, - rectifyType: null, - rectifyDepId: null, -- dangerStatus: null -+ dangerStatus: null, -+ serialCode: null - } - }, -+ dateTime: '', - departmentList: [], - rectifyTypeList: [ - { id: 1, name: '即查即改' }, -@@ -144,6 +158,11 @@ - ] - }); - -+ const querySearch = () => { -+ return [{ value: 1 }, { value: 12 }]; -+ }; -+ const getSerialCodeList = () => {}; -+ - // 初始化表格数据 - const initRectifyTableData = async () => { - let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -@@ -233,8 +252,10 @@ - View, - Check, - Delete, -+ querySearch, - parseNumber, - handleSearch, -+ getSerialCodeList, - onOpenDialogRef, - onHandleSizeChange, - onDelHiddenRectify, -@@ -274,4 +295,7 @@ - :deep(.el-input.is-disabled .el-input__wrapper) { - background-color: var(--el-card-bg-color); - } -+:deep(.el-input-group__prepend) { -+ padding: 0; -+} - </style> -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-add-menu-container\">\r\n <el-dialog :title=\"title\" v-model=\"isShowRectifyDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"rectifyForm\" :rules=\"rectifyFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改说明\" prop=\"rectifyInfo\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"rectifyForm.rectifyInfo\" placeholder=\"请输入整改说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改时间\" prop=\"applyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"rectifyForm.applyTime\" placeholder=\"请选择整改时间\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\">\r\n <el-button @click=\"isShowRectifyDialog = !isShowRectifyDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitRectify\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowDelayDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"delayForm\" :rules=\"delayFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"延期说明\" prop=\"timeOutDesc\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"delayForm.timeOutDesc\" placeholder=\"请输入延期说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改期限\" prop=\"rectifyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"delayForm.rectifyTime\" placeholder=\"请选择整改期限\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\" v-show=\"disabled\">\r\n <el-button @click=\"isShowDelayDialog = !isShowDelayDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitDelay\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowCheckInfoDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"checkInfoForm\" ref=\"checkFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改内容说明\" prop=\"rectifyDesc\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"textarea\" :rows=\"2\" v-model.trim=\"checkInfoForm.rectifyDesc\" readonly></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改类型\" prop=\"rectifyType\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.rectifyType\" readonly>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改部门\" prop=\"rectifyDepId\">\r\n <el-cascader @change=\"achieveUserList\" :disabled=\"!disabled\" :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-add\" v-model=\"checkInfoForm.rectifyDepId\" readonly> </el-cascader>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改责任人\" prop=\"liablePersonId\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.liablePersonId\" clearable filterable readonly>\r\n <el-option v-for=\"item in userList\" :key=\"item.uid\" :label=\"item.username\" :value=\"item.uid\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改资金\" prop=\"dangerResult\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"number\" v-model=\"checkInfoForm.cost\" readonly> </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.createByUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtCreate\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.lastEditUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtModitify\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { getUserByDepartment } from '/@/assets/methods';\r\n\r\ninterface stateType {\r\n disabled: Boolean;\r\n personTime: Boolean;\r\n isShowRectifyDialog: Boolean;\r\n isShowDelayDialog: Boolean;\r\n isShowCheckInfoDialog: Boolean;\r\n rectifyForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyInfo: string | null;\r\n applyTime: string | null;\r\n };\r\n delayForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyTime: string | null;\r\n timeOutDesc: string | null;\r\n };\r\n title: string;\r\n departmentList: [];\r\n userList: [];\r\n rectifyTypeList: Array<rectifyTypeState>;\r\n rectifyFormRules: {};\r\n delayFormRules: {};\r\n checkInfoForm: {\r\n rectifyDepId: number | null;\r\n liablePersonId: number | null;\r\n };\r\n}\r\ninterface rectifyTypeState {\r\n regionType: string;\r\n id: number;\r\n}\r\n\r\nimport { reactive, toRefs, ref } from 'vue';\r\nimport { ElMessage } from 'element-plus';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nexport default {\r\n name: 'rectifyDialog',\r\n setup(props: any, context: any) {\r\n const rectifyFormRef = ref();\r\n const state = reactive<stateType>({\r\n title: '',\r\n disabled: false,\r\n personTime: false,\r\n rectifyTypeList: [],\r\n departmentList: [],\r\n userList: [],\r\n isShowCheckInfoDialog: false,\r\n checkInfoForm: {\r\n rectifyDepId: null,\r\n liablePersonId: null\r\n },\r\n isShowDelayDialog: false,\r\n isShowRectifyDialog: false,\r\n rectifyForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyInfo: null,\r\n applyTime: null\r\n },\r\n delayForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyTime: null,\r\n timeOutDesc: null\r\n },\r\n rectifyFormRules: {\r\n rectifyInfo: [{ required: true, message: '请填写整改说明', trigger: 'blur' }],\r\n applyTime: [{ required: true, message: '请选择整改时间', trigger: 'change' }]\r\n },\r\n delayFormRules: {\r\n timeOutDesc: [{ required: true, message: '请填写延期说明', trigger: 'blur' }],\r\n rectifyTime: [{ required: true, message: '请选择整改期限', trigger: 'change' }]\r\n }\r\n });\r\n\r\n //打开模态框\r\n const openRectifyDialog = async (type: string, value: object, departmentList: []) => {\r\n state.departmentList = departmentList;\r\n if (type === '延期') {\r\n state.title = '延期';\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.isShowDelayDialog = true;\r\n const delayForm = JSON.parse(JSON.stringify(value));\r\n state.delayForm.id = delayForm.id;\r\n state.delayForm.dangerManagerId = delayForm.dangerManagerId;\r\n state.delayForm.timeOutDesc = null;\r\n state.delayForm.rectifyTime = null;\r\n } else if (type === '查看') {\r\n state.title = '查看';\r\n state.personTime = true;\r\n state.isShowCheckInfoDialog = true;\r\n state.checkInfoForm.rectifyDepId = JSON.parse(JSON.stringify(value)).rectifyDepId;\r\n await achieveUserList();\r\n state.checkInfoForm = JSON.parse(JSON.stringify(value));\r\n } else {\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.title = '整改';\r\n state.isShowRectifyDialog = true;\r\n const rectifyForm = JSON.parse(JSON.stringify(value));\r\n state.rectifyForm.id = rectifyForm.id;\r\n state.rectifyForm.dangerManagerId = rectifyForm.dangerManagerId;\r\n state.rectifyForm.rectifyInfo = null;\r\n state.rectifyForm.applyTime = null;\r\n }\r\n };\r\n\r\n //提交整改\r\n const submitRectify = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().submitHiddenRectify(state.rectifyForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '整改提交成功',\r\n duration: 2000\r\n });\r\n state.isShowRectifyDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n //提交延期\r\n const submitDelay = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().delayHiddenRectifyTime(state.delayForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '隐患延期成功',\r\n duration: 2000\r\n });\r\n state.isShowDelayDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n const achieveUserList = async () => {\r\n state.checkInfoForm.liablePersonId = null;\r\n const user: unknown = await getUserByDepartment(state.checkInfoForm.rectifyDepId);\r\n state.userList = user as [];\r\n };\r\n\r\n return {\r\n ...toRefs(state),\r\n rectifyFormRef,\r\n submitDelay,\r\n achieveUserList,\r\n submitRectify,\r\n openRectifyDialog\r\n };\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (date 1660306190000) -@@ -10,7 +10,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="整改时间" prop="applyTime"> -- <el-date-picker type="datetime" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> -+ <el-date-picker type="datetime" :disabled-date="disabledDate" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> - </el-form-item> - </el-col> - </el-row> -@@ -125,6 +125,8 @@ - rectifyTime: string | null; - timeOutDesc: string | null; - }; -+ disabledDate: any; -+ rangeTime: any; - title: string; - departmentList: []; - userList: []; -@@ -168,6 +170,13 @@ - rectifyInfo: null, - applyTime: null - }, -+ disabledDate: (time: any) => { -+ const r = new Date().getTime(); -+ return time.getTime() > new Date().getTime(); -+ }, -+ rangeTime: () => { -+ return '15:15:14'; -+ }, - delayForm: { - id: null, - dangerManagerId: null, -Index: src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"900px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"emergencyPlanName\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.emergencyPlanName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillAddress\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.departmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.departmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"0\"></el-option>\r\n <el-option label=\"桌面\" value=\"1\"></el-option>\r\n <el-option label=\"专项\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"drillName\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.drillName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.makingPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.drillPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"修改时间\" prop=\"updateDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.updateDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserUid\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.makingDepartmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.makingDepartmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"planUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.planUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实际到场人员\" prop=\"executeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.executeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练过程描述\" prop=\"processDesc\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.processDesc\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写演练过程描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录人\" prop=\"recordUserName\" >\r\n <el-input\r\n v-model=\"ruleForm.recordUserName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录时间\" prop=\"drillRecordDate\">\r\n <el-date-picker\r\n v-model=\"ruleForm.drillRecordDate\"\r\n class=\"w100\"\r\n type=\"datetime\"\r\n placeholder=\"选择日期时间\"\r\n :disabled=\"true\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <div class=\"el-divider--horizontal\">\r\n <div class=\"el-divider__text\">\r\n <h3>评价</h3>\r\n </div>\r\n </div>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"evaluationUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.evaluationUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"disabled\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-适宜性\" prop=\"suitable\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.suitable\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部能够执行\" value=\"1\"></el-option>\r\n <el-option label=\"全部不能够执行\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-充分性\" prop=\"sufficient\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.sufficient\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"完全满足应急要求\" value=\"1\"></el-option>\r\n <el-option label=\"不完全满足应急要求\" value=\"2\"></el-option>\r\n <el-option label=\"完全不满足应急要求\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"人员到位情况\" prop=\"arrival\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.arrival\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"迅速准确,基本按时到位\" value=\"1\"></el-option>\r\n <el-option label=\"未按时到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-现场物资\" prop=\"supplies\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.supplies\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"现场物资充分,全部有效\" value=\"1\"></el-option>\r\n <el-option label=\"现场物资不充分\" value=\"2\"></el-option>\r\n <el-option label=\"现场没有物资\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-个人防护\" prop=\"protection\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.protection\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部人员防护到位\" value=\"1\"></el-option>\r\n <el-option label=\"人员未防护到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-整体组织\" prop=\"whole\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.whole\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"协调基本顺利,能够满足要求\" value=\"1\"></el-option>\r\n <el-option label=\"协调不顺利\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-疏散组分工\" prop=\"division\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.division\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"安全,快速\" value=\"1\"></el-option>\r\n <el-option label=\"安全,不快速\" value=\"2\"></el-option>\r\n <el-option label=\"不安全,快速\" value=\"3\"></el-option>\r\n <el-option label=\"不安全,不快速\" value=\"4\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实战效果评价\" prop=\"effect\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.effect\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"基本达到目的,部分环节有待改进\" value=\"1\"></el-option>\r\n <el-option label=\"未达到目的\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-报告上级\" prop=\"report\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.report\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"报告及时\" value=\"1\"></el-option>\r\n <el-option label=\"报告不及时\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-安全部门\" prop=\"safety\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.safety\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-救援后勤部门\" prop=\"rescue\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.rescue\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-警戒撤离配合\" prop=\"evacuate\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.evacuate\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求配合\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求配合\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"是否需要修改应急预案\" prop=\"needModify\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.needModify\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"是\" :value=\"true\"></el-option>\r\n <el-option label=\"否\" :value=\"false\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"存在问题和改进措施\" prop=\"questionAndImprove\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.questionAndImprove\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写备注信息\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"修改内容\" prop=\"modifyContent\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.modifyContent\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写修改内容\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"附件列表\">\r\n <el-upload\r\n v-model:file-list=\"ruleForm.userList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button v-if=\"!disabled\" size=\"default\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\"/>\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"selectUser\"/>\r\n<!-- <RegionsDialog ref=\"openRef\"/>-->\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport {\r\n UploadUserFile,\r\n FormInstance,\r\n ElMessage\r\n} from 'element-plus'\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport UserSelections from \"/@/components/userSelections/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport {emergencyDrillEvaluationApi} from \"/@/api/contingencyManagement/emergencyDrillEvaluation\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nexport default defineComponent({\r\n name: 'approvalProgress',\r\n components: {\r\n UserSelections,\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n //定义表单\r\n const realRuleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看演练实施评价') {\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n //演练人员\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n //演练负责人员\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n //实际到场人员\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n //演练负责人(评价)\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施查看评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n };\r\n // 关闭弹窗\r\n const closeDialog = () => {\r\n isShowDialog.value = false;\r\n };\r\n // 取消\r\n const onCancel = () => {\r\n closeDialog();\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ,\r\n ]\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = [\r\n\r\n ]\r\n // 必填项提示\r\n // const rules = reactive<FormRules>({\r\n // teamName: [\r\n // {\r\n // required: true,\r\n // message: '队伍名称不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLevel: [\r\n // {\r\n // required: true,\r\n // message: '队伍级别不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLeader: [\r\n // {\r\n // required: true,\r\n // message: '队伍负责人不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // responsibleDepartment: [\r\n // {\r\n // required: true,\r\n // message: '负责人部门不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamPhone: [\r\n // {\r\n // required: true,\r\n // message: '负责人手机不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // telephone: [\r\n // {\r\n // required: true,\r\n // message: '固定电话不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // })\r\n\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n //演练负责人(评价)\r\n ruleForm.value.userList = ruleForm.value.evaluationUserList\r\n\r\n\r\n\r\n realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId\r\n realRuleForm.value.suitable=ruleForm.value.suitable\r\n realRuleForm.value.sufficient=ruleForm.value.sufficient\r\n realRuleForm.value.arrival=ruleForm.value.arrival\r\n realRuleForm.value.supplies=ruleForm.value.supplies\r\n realRuleForm.value.protection=ruleForm.value.protection\r\n realRuleForm.value.whole=ruleForm.value.whole\r\n realRuleForm.value.division=ruleForm.value.division\r\n realRuleForm.value.effect=ruleForm.value.effect\r\n realRuleForm.value.report=ruleForm.value.report\r\n realRuleForm.value.safety=ruleForm.value.safety\r\n realRuleForm.value.rescue=ruleForm.value.rescue\r\n realRuleForm.value.evacuate=ruleForm.value.evacuate\r\n realRuleForm.value.needModify=ruleForm.value.needModify\r\n realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove\r\n realRuleForm.value.modifyContent=ruleForm.value.modifyContent\r\n realRuleForm.value.fileList=ruleForm.value.fileList\r\n if(ruleForm.value.userList){\r\n for(var a = 0;a<ruleForm.value.userList.length;a++){\r\n realRuleForm.value.userList.push({\r\n userUid:ruleForm.value.userList[a].userUid,\r\n userName:ruleForm.value.userList[a].userName\r\n })\r\n }\r\n }\r\n // console.log(ruleForm.value.evaluationUserList)\r\n // ruleForm.value.userList=[]\r\n // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){\r\n // // += res.data.data.evaluationUserList[a].userName+';'\r\n // }\r\n if (title == '演练实施评价') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n // console.log(ruleForm.value)\r\n emergencyDrillEvaluationApi()\r\n .editEmergencyDrillEvaluation(realRuleForm.value)\r\n // emergencyDrillExecuteApi()\r\n // .editEmergencyDrillExecute(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '评价成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n isShowDialog.value = false;\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n drillRecordDate: '', // 演练记录时间\r\n drillPlanId: '', //演练计划ID\r\n drillName:'',\r\n recordUserUid: '', // 记录人ID\r\n processDesc: '', // 演练过程描述\r\n userList: [\r\n {\r\n userUid: '',\r\n },\r\n {\r\n userUid: '',\r\n }\r\n ]\r\n };\r\n }\r\n }\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt=()=>{\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.drillPlanId=e.id\r\n };\r\n // 选择区域弹窗\r\n const openRef=ref()\r\n const regionsDialog=()=>{\r\n openRef.value.openDailog()\r\n }\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog(0);\r\n };\r\n\r\n const selectUser = (e) =>{\r\n ruleForm.value.evaluationUserListString=''\r\n ruleForm.value.evaluationUserList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.evaluationUserList.push(\r\n {\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.evaluationUserListString+=e[a].realName+';'\r\n }\r\n console.log(ruleForm.value.evaluationUserList)\r\n }\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n closeDialog,\r\n isShowDialog,\r\n onCancel,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n onUser,\r\n ruleFormRef,\r\n // rules,\r\n openUser,\r\n userRef,\r\n regionsDialog,\r\n openRef,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n resetForm,\r\n titles,\r\n disabled,\r\n emit,\r\n propse,\r\n department,\r\n newTreeList,\r\n selectUser,\r\n submitForm,\r\n realRuleForm\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.el-form .el-form-item{\r\n margin-bottom: 18px !important;\r\n display: flex;\r\n align-items: flex-start;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label{\r\n text-align: right;\r\n height: 100%;\r\n}\r\n.textarea{\r\n height: 90px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 90px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n.el-divider--horizontal {\r\n display: block;\r\n height: 1px;\r\n width: 100%;\r\n margin: 24px 0;\r\n background-color: #dcdfe6;\r\n position: relative;\r\n}\r\n.el-divider__text {\r\n position: absolute;\r\n background-color: #fff;\r\n padding: 0 20px;\r\n color: #303133;\r\n left: 50%;\r\n font-weight: 500;\r\n font-size: 14px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue ---- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (date 1660303400435) -@@ -167,20 +167,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="ruleForm.planFileList" :disabled="true"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -368,20 +355,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="附件列表"> -- <el-upload -- v-model:file-list="ruleForm.userList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -421,12 +396,14 @@ - import DailogSearchUser from "/@/components/DailogSearchUser/index.vue" - import {emergencyDrillEvaluationApi} from "/@/api/contingencyManagement/emergencyDrillEvaluation"; - import {goalManagementApi} from "/@/api/goalManagement"; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'approvalProgress', - components: { - UserSelections, - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -512,6 +489,8 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施评价'){ -@@ -548,6 +527,8 @@ - } - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施查看评价'){ -@@ -584,15 +565,41 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -- -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - } - }); - } -+ - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<ruleForm.value.planFileList.length;a++){ -+ ruleForm.value.planFileList[a].name = ruleForm.value.planFileList[a].fileName -+ } -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - }; - // 关闭弹窗 - const closeDialog = () => { -@@ -605,7 +612,7 @@ - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -663,6 +670,9 @@ - // }) - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - //演练负责人(评价) - ruleForm.value.userList = ruleForm.value.evaluationUserList - -@@ -861,7 +871,9 @@ - newTreeList, - selectUser, - submitForm, -- realRuleForm -+ realRuleForm, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/contingencyManagement/panManagement/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-form :inline=\"true\" class=\"demo-form-inline\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.name\" placeholder=\"预案名称\" style=\"max-width: 215px\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select size=\"default\" v-model=\"listQuery.searchParams.type\" placeholder=\"请选择预案类型\" class=\"ml10\" style=\"max-width: 215px\">\r\n\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\"> 查询 </el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-form>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Plus /> </el-icon\r\n\t\t\t\t\t\t>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Edit /> </el-icon\r\n\t\t\t\t\t\t>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onabolishLibrary\"> 废止库 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Upload />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Download />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Refresh />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column prop=\"name\" label=\"预案名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column prop=\"type\" label=\"预案类型\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.type == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.type == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.type == 3\">专项应急预案</span>\r\n <span v-if=\"scope.row.type == 4\">其他预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"level\" label=\"预案级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.level == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.level == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.level == 3\">专项应急预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"releaseDate\" label=\"发布实施日期\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"isDialogFormVisible(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPlay /> </el-icon\r\n\t\t\t\t\t\t\t>启动\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"abolish(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPause /> </el-icon\r\n\t\t\t\t\t\t\t>废止\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<EditPen /> </el-icon\r\n\t\t\t\t\t\t\t>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 0 || scope.row.approveStatus === null\"\r\n\t\t\t\t\t\t\t@click=\"initiateApproval(scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t发起审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === true\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('修改',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === false\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('详情',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n 查看审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" v-if=\"scope.row.approveStatus === 3\" @click=\"onApprovalProcess(scope.row.id)\">\r\n\t\t\t\t\t\t\t查看审批流程\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"jumpFrom(0)\">-->\r\n\t\t\t\t\t\t<!-- <el-icon style=\"margin-right: 5px;\">-->\r\n\t\t\t\t\t\t<!-- <EditPen />-->\r\n\t\t\t\t\t\t<!-- </el-icon>修改-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"abolish(0)\">-->\r\n\t\t\t\t\t\t<!-- 发起审批-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t\t>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tclass=\"mt15\"\r\n\t\t\t\t\tbackground\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"onHandleSizeChange\"\r\n\t\t\t\t\t@current-change=\"onHandleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<AbolishLibrary ref=\"abolishRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<InitiateApproval ref=\"initiateApprovalRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<Approval ref=\"approvalRef\" @myAdd=\"onMyAdd\" />\r\n <ApprovalProcess ref=\"processRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<!-- <StartUp ref=\"startRef\" @myAdd=\"startUp\"/>-->\r\n\t\t<el-dialog v-model=\"dialogFormVisible\" width=\"30%\" title=\"启动\" :fullscreen=\"full\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" label-width=\"80px\">\r\n\t\t\t\t<el-form-item label=\"备注\">\r\n\t\t\t\t\t<el-input v-model=\"form.remark\" type=\"textarea\" autocomplete=\"off\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"dialogFormVisible = false\">取消</el-button>\r\n\t\t\t\t\t<el-button type=\"primary\" @click=\"onDetermine\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\n// import {useRouter} from \"vue-router\"\r\nimport type {} from // FormInstance,\r\n'element-plus';\r\nimport { Plus, Edit, Delete, Upload, Download, Refresh, VideoPause, VideoPlay, EditPen, FullScreen } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/contingencyManagement/panManagement/component/openAdd.vue';\r\n// import StartUp from '/@/views/contingencyManagement/panManagement/component/startUp.vue';\r\nimport AbolishLibrary from '/@/views/contingencyManagement/panManagement/component/abolishLibrary.vue';\r\nimport ApprovalProcess from '/@/views/contingencyManagement/panManagement/component/approvalProcess.vue';\r\nimport InitiateApproval from '/@/views/contingencyManagement/panManagement/component/initiateApproval.vue';\r\nimport Approval from '/@/views/contingencyManagement/panManagement/component/approval.vue';\r\n// import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { emergencyPlanLogApi } from '/@/api/contingencyManagement/emergencyPlanLog';\r\n\r\nexport default defineComponent({\r\n\tname: 'systemUser',\r\n\tcomponents: {\r\n\t\tOpenAdd,\r\n\t\t// StartUp,\r\n\t\tInitiateApproval,\r\n\t\tAbolishLibrary,\r\n\t\tApproval,\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tVideoPause,\r\n\t\tVideoPlay,\r\n ApprovalProcess,\r\n\t\t// UpData,\r\n\t\temergencyPlanApi,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tname: '',\r\n\t\t\t\ttype: '',\r\n\t\t\t\tabolishStatus: false,\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst onSubmit = async () => {\r\n\t\t\tlet res = await emergencyPlanApi().getEmergencyPlanList(listQuery);\r\n\t\t\tif (res.data.code === '200') {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.name = '';\r\n\t\t\tlistQuery.searchParams.type = '';\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\r\n\t\t// 上传\r\n\t\t// const upShow=ref()\r\n\t\t// const upButton=()=>{\r\n\t\t// upShow.value.openDialog()\r\n\t\t// }\r\n\t\t// 启动弹窗\r\n\t\tconst isDialogFormVisible = (data: any) => {\r\n\t\t\tdialogFormVisible.value = true;\r\n\t\t\tform.value.planId = data;\r\n\t\t};\r\n\t\tconst dialogFormVisible = ref(false);\r\n\t\tconst form = ref({\r\n\t\t\tremark: '',\r\n\t\t});\r\n\t\tconst onDetermine = () => {\r\n\t\t\tdialogFormVisible.value = false;\r\n\t\t\temergencyPlanLogApi()\r\n\t\t\t\t.addEmergencyPlanLog(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tremark: '',\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 打开新增用户弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建应急预案管理', false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tonSubmit();\r\n\t\t\t} else {\r\n\t\t\t\tonSubmit();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 打开修改应急预案管理弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看应急预案管理', row, true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改应急预案管理', row, false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t//打开废止库弹窗\r\n\t\tconst abolishRef = ref();\r\n\t\tconst onabolishLibrary = () => {\r\n\t\t\tabolishRef.value.openDialog();\r\n\t\t};\r\n\t\t// 废止\r\n\t\tconst abolish = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定要废止所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.EmergencyTeam(data)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\t// 删除用户\r\n\t\tconst onRowDel = (id: number) => {\r\n\t\t\tlet arr = [];\r\n\t\t\tarr.push(id);\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\tconst deleteAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeleteAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(deleteAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst onHandleSizeChange = (val: number) => {\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst onHandleCurrentChange = (val: number) => {\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\r\n\t\t// const router=useRouter()\r\n\t\t// 修改跳转\r\n\t\t// const jumpFrom=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/processForm\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批跳转\r\n\t\t// const abolish=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/abolishDialog\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批弹窗\r\n\t\tconst initiateApprovalRef = ref();\r\n\t\tconst initiateApproval = (row: object) => {\r\n\t\t\tinitiateApprovalRef.value.openDialog('发起审批',row, true);\r\n\t\t};\r\n\t\t// 审批\r\n\t\tconst approvalRef = ref();\r\n\t\tconst onApproval = (val: string,row: object,id) => {\r\n if(val=='详情'){\r\n approvalRef.value.openDialog('查看审批', row, true);\r\n } else {\r\n approvalRef.value.openDialog('审批', row, false,id);\r\n }\r\n\t\t};\r\n // 审批流程\r\n const processRef = ref();\r\n const onApprovalProcess = (row:object,id) => {\r\n processRef.value.openDialog(row,id);\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 页面加载时\r\n\t\tonMounted(() => {\r\n\t\t\tonSubmit();\r\n\t\t});\r\n\t\treturn {\r\n\t\t\ttableData,\r\n\t\t\tonSubmit,\r\n\t\t\tonOpenAdd, //新增\r\n\t\t\taddRef,\r\n\t\t\tonabolishLibrary,\r\n\t\t\tabolishRef,\r\n\t\t\tabolish,\r\n\t\t\tonRowDel,\r\n\t\t\tonHandleSizeChange,\r\n\t\t\tonHandleCurrentChange,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tlistQuery,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\tsubmitReset,\r\n\t\t\tonMounted,\r\n\t\t\tdeleteAll,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDeleteAll,\r\n\t\t\tdialogFormVisible,\r\n\t\t\tisDialogFormVisible,\r\n\t\t\tform,\r\n\t\t\temit,\r\n\t\t\tonDetermine,\r\n\t\t\tonEdit,\r\n\t\t\tinitiateApproval,\r\n\t\t\tinitiateApprovalRef,\r\n\t\t\tonApproval,\r\n\t\t\tapprovalRef,\r\n onApprovalProcess,\r\n processRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n\tmargin-bottom: 10px;\r\n}\r\n.el-form .el-form-item {\r\n\tmargin-bottom: 0 !important;\r\n}\r\n.el-button--text {\r\n\tmargin-right: 15px;\r\n}\r\n.el-select {\r\n\twidth: 300px;\r\n}\r\n.el-input {\r\n\twidth: 300px;\r\n}\r\n.dialog-footer button:first-child {\r\n\tmargin-right: 10px;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer {\r\n\tborder-top: 1px solid #e8e8e8;\r\n\tborder-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n\tborder-bottom: 1px solid #e8e8e8;\r\n\tmargin-right: 0;\r\n\tborder-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n\tbackground-color: #f6f7fa;\r\n\tfont-weight: 400;\r\n\tcolor: #909399;\r\n}\r\n.el-table .sort-caret.ascending {\r\n\tborder-bottom-color: #c0c4cc;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue ---- a/src/views/contingencyManagement/panManagement/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/panManagement/index.vue (date 1660303400437) -@@ -23,19 +23,13 @@ - <div class="button_Line"> - <div class="button_Left"> - <el-button size="default" type="primary" @click="onOpenAdd"> -- <el-icon> -- <Plus /> </el-icon -- >新建 -+ <el-icon> <Plus /> </el-icon>新建 - </el-button> - <el-button size="default" type="warning" plain :disabled="warning"> -- <el-icon> -- <Edit /> </el-icon -- >修改 -+ <el-icon> <Edit /> </el-icon>修改 - </el-button> - <el-button size="default" type="danger" plain :disabled="danger" @click="onDeleteAll"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - <el-button size="default" type="primary" @click="onabolishLibrary"> 废止库 </el-button> - </div> -@@ -61,37 +55,31 @@ - <el-table-column type="selection" width="55" /> - <el-table-column prop="name" label="预案名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.type == 1">综合应急预案</span> -- <span v-if="scope.row.type == 2">现场处置方案</span> -- <span v-if="scope.row.type == 3">专项应急预案</span> -- <span v-if="scope.row.type == 4">其他预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.type == 1">综合应急预案</span> -+ <span v-if="scope.row.type == 2">现场处置方案</span> -+ <span v-if="scope.row.type == 3">专项应急预案</span> -+ <span v-if="scope.row.type == 4">其他预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="level" label="预案级别" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.level == 1">综合应急预案</span> -- <span v-if="scope.row.level == 2">现场处置方案</span> -- <span v-if="scope.row.level == 3">专项应急预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.level == 1">综合应急预案</span> -+ <span v-if="scope.row.level == 2">现场处置方案</span> -+ <span v-if="scope.row.level == 3">专项应急预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="releaseDate" label="发布实施日期" show-overflow-tooltip sortable></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="isDialogFormVisible(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPlay /> </el-icon -- >启动 -+ <el-icon style="margin-right: 5px"> <VideoPlay /> </el-icon>启动 - </el-button> - <el-button size="small" text type="primary" @click="abolish(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPause /> </el-icon -- >废止 -+ <el-icon style="margin-right: 5px"> <VideoPause /> </el-icon>废止 - </el-button> - <el-button size="small" text type="primary" @click="onEdit('修改', scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <EditPen /> </el-icon -- >修改 -+ <el-icon style="margin-right: 5px"> <EditPen /> </el-icon>修改 - </el-button> - <el-button - size="small" -@@ -107,7 +95,7 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === true" -- @click="onApproval('修改',scope.row.approveId,scope.row.id)" -+ @click="onApproval('修改', scope.row.approveId, scope.row.id)" - > - 审批 - </el-button> -@@ -116,9 +104,9 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === false" -- @click="onApproval('详情',scope.row.approveId,scope.row.id)" -+ @click="onApproval('详情', scope.row.approveId, scope.row.id)" - > -- 查看审批 -+ 查看审批 - </el-button> - <el-button size="small" text type="primary" v-if="scope.row.approveStatus === 3" @click="onApprovalProcess(scope.row.id)"> - 查看审批流程 -@@ -132,9 +120,7 @@ - <!-- 发起审批--> - <!-- </el-button>--> - <el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - </template> - </el-table-column> -@@ -159,7 +145,7 @@ - <AbolishLibrary ref="abolishRef" @myAdd="onMyAdd" /> - <InitiateApproval ref="initiateApprovalRef" @myAdd="onMyAdd" /> - <Approval ref="approvalRef" @myAdd="onMyAdd" /> -- <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> -+ <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> - <!-- <StartUp ref="startRef" @myAdd="startUp"/>--> - <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -@@ -212,7 +198,7 @@ - Refresh, - VideoPause, - VideoPlay, -- ApprovalProcess, -+ ApprovalProcess, - // UpData, - emergencyPlanApi, - }, -@@ -469,22 +455,22 @@ - // 发起审批弹窗 - const initiateApprovalRef = ref(); - const initiateApproval = (row: object) => { -- initiateApprovalRef.value.openDialog('发起审批',row, true); -+ initiateApprovalRef.value.openDialog('发起审批', row, true); - }; - // 审批 - const approvalRef = ref(); -- const onApproval = (val: string,row: object,id) => { -- if(val=='详情'){ -- approvalRef.value.openDialog('查看审批', row, true); -- } else { -- approvalRef.value.openDialog('审批', row, false,id); -- } -+ const onApproval = (val: string, row: object, id) => { -+ if (val == '详情') { -+ approvalRef.value.openDialog('查看审批', row, true); -+ } else { -+ approvalRef.value.openDialog('审批', row, false, id); -+ } - }; -- // 审批流程 -- const processRef = ref(); -- const onApprovalProcess = (row:object,id) => { -- processRef.value.openDialog(row,id); -- }; -+ // 审批流程 -+ const processRef = ref(); -+ const onApprovalProcess = (row: object, id) => { -+ processRef.value.openDialog(row, id); -+ }; - - //全屏 - const full = ref(false); -@@ -535,8 +521,8 @@ - initiateApprovalRef, - onApproval, - approvalRef, -- onApprovalProcess, -- processRef, -+ onApprovalProcess, -+ processRef, - }; - }, - }); -Index: src/views/goalManagement/targetDecompositionYear/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title,ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\tadd,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue ---- a/src/views/goalManagement/targetDecompositionYear/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetDecompositionYear/index.vue (date 1660303400448) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="tableData.targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -103,6 +103,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/targetDecompositionYear/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"目标分解\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"formUp.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" property=\"dutyDepartmentName\" label=\"责任部门\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"value\" label=\"考核指标\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makerDepartmentName\" label=\"制定人部门\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"commitPersonName\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"Delete(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"disabled == false\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { emit } from 'process';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { DailogAdd, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tqName: '',\r\n\t\t\tindexNum: '',\r\n\t\t\tyear: '',\r\n\t\t\tvalue: '',\r\n\t\t\ttargetDivideDetailList: [],\r\n\t\t});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t\tformUp.targetDivideDetailList = form.value.targetDivideDetailList;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (val: object) => {\r\n\t\t\tform.value = val;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = formUp.targetDivideDetailList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst formUp = reactive({\r\n\t\t\ttargetId: '', //关联的目标指标/外键\r\n\t\t\tdelTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n\t\t\ttargetDivideDetailList: [], //目标指标分解列表\r\n\t\t});\r\n\r\n\t\tconst add = (val: any) => {\r\n\t\t\tconst item = deepClone(val);\r\n\t\t\tconsole.log(item)\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tformUp.targetDivideDetailList.push(item);\r\n\t\t\t} else {\r\n\t\t\t\tformUp.targetDivideDetailList[index.value] = item;\r\n\t\t\t}\r\n\r\n\t\t\t// let obj=JSON.parse(JSON.stringify(form.value))\r\n\t\t};\r\n\t\t// 新增\r\n\t\tconst submitForm = () => {\r\n\t\t\tformUp.delTargetDivideDetails = arr.value.toString();\r\n\t\t\tformUp.targetId = form.value.id;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tfor(let i=0;i<formUp.targetDivideDetailList.length;i++){\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].dutyDepartmentName\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].makerDepartmentName\r\n\t\t\t}\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDivideDetail(formUp)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('addList');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\tconst arr = ref([]);\r\n\t\t// 删除\r\n\t\tconst Delete = (data: any) => {\r\n\t\t\tformUp.targetDivideDetailList.splice(form.value.targetDivideDetailList.indexOf(data), 1);\r\n\t\t\tformUp.targetId = data.targetId;\r\n\t\t\tarr.value.push(data.id);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\t\t// 关闭\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 时间格式处理\r\n\t\t// const timeDate = (data: any) => {\r\n\t\t// \tlet result = new Date(data).getTime();\r\n\t\t// \treturn result;\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\ttimeDate,\r\n\t\t\tarr,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tonNumber,\r\n\t\t\ttargetType,\r\n\t\t\tdisabled,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tadd,\r\n\t\t\tformUp,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue ---- a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (date 1660303400448) -@@ -40,7 +40,7 @@ - <el-table-column align="center" property="dutyDepartmentName" label="责任部门" width="180" /> - <el-table-column align="center" property="value" label="考核指标" width="180" /> - <el-table-column align="center" property="makerDepartmentName" label="制定人部门" /> -- <el-table-column align="center" property="makeDate" label="制定日期" /> -+ <el-table-column align="center" property="makeDate" :formatter="timeDate" label="制定日期" /> - <el-table-column align="center" property="commitPersonName" label="上报人" /> - <el-table-column align="center" property="操作"> - <template #default="scope"> -@@ -96,12 +96,28 @@ - if (res.data.code == 200) { - form.value = res.data.data; - formUp.targetDivideDetailList = form.value.targetDivideDetailList; -+ for(let i=0;i<formUp.targetDivideDetailList.length;i++){ -+ formUp.targetDivideDetailList[i].makeDate=timeC(formUp.targetDivideDetailList[i].makeDate) -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - } - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - const onNumber = (val: object) => { - form.value = val; - }; -@@ -209,6 +225,7 @@ - // return result; - // }; - return { -+ timeC, - index, - timeDate, - arr, -Index: src/components/uploaderFile/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderFile/index.vue b/src/components/uploaderFile/index.vue -new file mode 100644 ---- /dev/null (date 1660303400398) -+++ b/src/components/uploaderFile/index.vue (date 1660303400398) -@@ -0,0 +1,178 @@ -+<template> -+ <el-upload -+ v-model:file-list="fileList" -+ multiple -+ :disabled="disabled" -+ class="upload-demo" -+ :http-request="uploadSectionFile" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" -+ > -+ <el-button type="primary">点击上传</el-button> -+ <template #tip> -+ <div class="el-upload__tip"> -+ 请上传文件 -+ <!--jpg/png files with a size less than 500KB.--> -+ </div> -+ <slot name="file"> -+ -+ </slot> -+ </template> -+ </el-upload> -+ -+ <!--<el-dialog v-model="dialogVisible">--> -+ <!--<img w-full :src="dialogImageUrl" alt="Preview Image" />--> -+ <!--</el-dialog>--> -+</template> -+<script lang="ts"> -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+ -+export default defineComponent({ -+ props: { -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, -+ }, -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); -+ -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ emit('deleteFile',uploadFiles); -+ }; -+ -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ goalManagementApi() -+ .searchFile(uploadFile.fileName) -+ .then((res) => { -+ window.open(res.data, "_blank"); -+ }) -+ dialogImageUrl.value = uploadFile.url!; -+ // dialogVisible.value = true; -+ }; -+ -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] -+ } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].name=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; -+ -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; -+ -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -+<style scoped> -+ .upload-demo{ -+ width: 100%; -+ } -+</style> -\ No newline at end of file -Index: src/views/contingencyManagement/panManagement/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog\r\n\t\t\t:title=\"titles\"\r\n\t\t\tv-model=\"isShowDialog\"\r\n\t\t\twidth=\"50%\"\r\n\t\t\tdraggable\r\n\t\t\t:fullscreen=\"full\"\r\n\t\t\t:close-on-click-modal=\"false\"\r\n\t\t\t@close=\"resetForm(ruleFormRef)\"\r\n\t\t>\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :disabled=\"disabled\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案名称\" prop=\"name\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.name\" placeholder=\"请填写队伍名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"适用部门\" prop=\"responsibleDepartment\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"responsibleDepartment\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\t\tcheck-on-click-node\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t\t@change=\"changeDepartment\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t<el-divider />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案类型\" prop=\"type\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.type\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"危险源关联\" prop=\"associatedDanger\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.associatedDanger\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"是\" :value=\"false\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"否\" :value=\"true\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案级别\" prop=\"level\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.level\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"公司级\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"分厂级\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"车间级\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写人\" prop=\"authorId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.authorName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写部门\" prop=\"authorDeptId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.authorDeptId\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发布实施日期\" prop=\"releaseDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.releaseDate\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急队伍\" prop=\"emergencyTeam\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.teamName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt(0)\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\t\t:on-change=\"handleChange\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"区域名称\" prop=\"areaName\">-->\r\n\t\t\t\t\t<!-- <el-input-->\r\n\t\t\t\t\t<!-- v-model=\"ruleForm.areaName\"-->\r\n\t\t\t\t\t<!-- placeholder=\"请选择\"-->\r\n\t\t\t\t\t<!-- class=\"input-with-select\"-->\r\n\t\t\t\t\t<!-- >-->\r\n\t\t\t\t\t<!-- <template #append>-->\r\n\t\t\t\t\t<!-- <el-button :icon=\"Search\" @click=\"regionsDialog\"/>-->\r\n\t\t\t\t\t<!-- </template>-->\r\n\t\t\t\t\t<!-- </el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<CheckTemplate ref=\"Shows\" @SearchUser=\"SearchUser\" />\r\n\t\t<DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { ref, defineComponent, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst ruleForm = ref({\r\n\t\t\tname: '', // 预案名称\r\n\t\t\ttype: '', //预案类型\r\n\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\tlevel: '', // 预案级别\r\n\t\t\tauthorUid: '', // 编写人\r\n\t\t\tauthorName: '',\r\n\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\tfileList: [],\r\n\t\t\tareaList: [], //区域列表\r\n\t\t\tteamList: [],\r\n\t\t\t// teamId: '', //应急队伍\r\n\t\t\tdeptList: [],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看应急预案管理' || title == '修改应急预案管理') {\r\n\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t.seeEmergencyTeam(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\truleForm.value.teamName = ''\r\n\t\t\t\t\t\t\tresponsibleDepartment.value = []\r\n\t\t\t\t\t\t\tif(res.data.data.teamList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.teamList.length;a++){\r\n\t\t\t\t\t\t\t\t\truleForm.value.teamName+=res.data.data.teamList[a].teamName+';'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif(res.data.data.deptList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.deptList.length;a++){\r\n\r\n\t\t\t\t\t\t\t\t\tresponsibleDepartment.value.push(res.data.data.deptList[a].departmentId)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst releaseDate = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst changeDepartment = (e) => {\r\n\t\t\tvar temList = [];\r\n\t\t\tfor (var a = 0; a < e.length; a++) {\r\n\t\t\t\ttemList.push({\r\n departmentId: e[a],\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.deptList = temList;\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t};\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref([]);\r\n\t\tconst data = ref();\r\n\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\tdelete ruleForm.value.teamName\r\n\t\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t\t.addEmergencyPlan(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n delete ruleForm.value.teamName\r\n emergencyPlanApi()\r\n\t\t\t\t\t\t\t.editEmergencyTeam(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tname: '', // 预案名称\r\n\t\t\t\t\ttype: '', //预案类型\r\n\t\t\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\t\t\tlevel: '', // 预案级别\r\n\t\t\t\t\tauthorUid: '', // 编写人\r\n\t\t\t\t\tauthorName: '',\r\n\t\t\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\t// teamId: '', //应急队伍ID\r\n\t\t\t\t\tareaList: [], //区域列表\r\n\t\t\t\t\tteamList: [],\r\n\t\t\t\t\tdeptList: [],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\truleForm.value = {};\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (data: any) => {\r\n\t\t\tShows.value.openDailog(data);\r\n\t\t};\r\n\t\tconst SearchUser = (val: any) => {\r\n\t\t\tlet arr = [];\r\n\t\t\truleForm.value.teamList = [];\r\n\t\t\tfor (let i = 0; i < val.length; i++) {\r\n\t\t\t\tarr.push(val[i].teamName);\r\n\t\t\t\truleForm.value.teamList.push({\r\n\t\t\t\t\tteamId: val[i].id,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.teamName = arr.toString();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\t//回显\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\truleForm.value.authorUid = e[0].uid;\r\n\t\t\truleForm.value.authorName = e[0].realName;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\treleaseDate,\r\n\t\t\t// treeSelect,\r\n\t\t\t// trees,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\tSearchUser,\r\n\t\t\tsubmitForm,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tisShowDialog,\r\n\t\t\truleFormRef,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonUser,\r\n\t\t\tnewTreeList,\r\n\t\t\tchangeDepartment,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue ---- a/src/views/contingencyManagement/panManagement/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue (date 1660303400437) -@@ -106,17 +106,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <!-- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">--> -@@ -158,13 +149,14 @@ - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan'; - import { goalManagementApi } from '/@/api/goalManagement'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - CheckTemplate, - DailogSearchUserManger, - RegionsDialog, -+ uploaderFile - }, - setup(prop, { emit }) { - const isShowDialog = ref(false); -@@ -211,15 +203,35 @@ - responsibleDepartment.value.push(res.data.data.deptList[a].departmentId) - } - } -- -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const releaseDate = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ const fileList = ref([]); - //el-tree-select回显 - const propse = { - label: 'depName', -@@ -272,6 +284,9 @@ - const data = ref(); - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急预案管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -306,10 +321,9 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] -- isShowDialog.value = false; -- delete ruleForm.value.teamName -- emergencyPlanApi() -+ isShowDialog.value = false; -+ delete ruleForm.value.teamName -+ emergencyPlanApi() - .editEmergencyTeam(ruleForm.value) - .then((res) => { - if (res.data.code == 200) { -@@ -356,6 +370,7 @@ - if (!formEl) return; - formEl.resetFields(); - ruleForm.value = {}; -+ fileList.value = [] - }; - // 应急队伍弹窗 - const Shows = ref(); -@@ -429,6 +444,8 @@ - onUser, - newTreeList, - changeDepartment, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/targetDecompositionMonth/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport search from '../targetSettings/component/search.vue';\r\nimport Dailog from '../targetDecompositionYear/component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '2', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tadd,\r\n\t\t\tlistApi,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue ---- a/src/views/goalManagement/targetDecompositionMonth/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue (date 1660303400447) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -105,6 +105,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/performanceAppraisal/component/DailogAq.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"handleClose(ruleFormRef)\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核标题\" size=\"default\" prop=\"title\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\" placeholder=\"请填写考核标题\"></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核日期\" size=\"default\" prop=\"examineDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.examineDate\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\" prop=\"acceptanceNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"总分\" size=\"default\" prop=\"examineTotalNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examineTotalNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核部门\" size=\"default\" prop=\"examineDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.examineDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData1\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核人\" size=\"default\" prop=\"examinePersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examinePersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(1)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"被考核部门\" size=\"default\" prop=\"beExaminedDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.beExaminedDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData2\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"被考核人\" size=\"default\" prop=\"beExaminedPersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.beExaminedPersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(0)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\" size=\"default\" prop=\"examineTemplateName\">\r\n\t\t\t\t\t\t<el-input disabled v-model=\"form.examineTemplateName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiAdd\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"考核项目\" name=\"1\">\r\n\t\t\t\t<!-- <el-button type=\"primary\" size=\"default\" @click=\"daiAdd\">新增</el-button> -->\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"考核项目\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"考核分数\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t<el-input v-model=\"scope.row.address\" type=\"textarea\"> </el-input>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t\t<!-- <el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default>\r\n\t\t\t\t\t<el-button link type=\"primary\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column> -->\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Show\"></DailogSearch>\r\n\t<DailogSearchUser ref=\"Shows\" @SearchUser=\"userId\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tbeExaminedDepartmentId: '', ////被考核部门ID/外键\r\n\t\t\tbeExaminedDepartmentName: '',\r\n\t\t\tbeExaminedPersonId: '', ////被考核人ID/外键(可能有多个,用逗号隔开)\r\n\t\t\tbeExaminedPersonName: '',\r\n\t\t\texamineDate: '', ////考核日期\r\n\t\t\texamineDepartmentId: '', ////考核部门ID/外键\r\n\t\t\texamineDepartmentName: '',\r\n\t\t\texaminePersonId: '', ////考核人ID/外键\r\n\t\t\texaminePersonName: '',\r\n\t\t\texamineTemplateId: 1, ////绩效考核模板ID/外键\r\n\t\t\texamineTemplateName: '',\r\n\t\t\texamineTotalNumber: '', ////总分\r\n\t\t\textraFile: '9', //责任书附件\r\n\t\t\titemDetail: '', ////考核项目\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tnumberDetailJson: '[{\"id\":\"123\",\"number\":\"123\"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:\"123\",\"number\":\"123\"}]\r\n\t\t\ttitle: '', ////考核标题\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdepartment();\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 验证\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\ttitle: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }],\r\n\t\t\texamineDate: [{ required: true, message: '考核日期不能为空', trigger: 'blur' }],\r\n\t\t\texamineDepartmentId: [{ required: true, message: '考核部门不能为空', trigger: 'blur' }],\r\n\t\t\texaminePersonName: [],\r\n\t\t\texaminePersonId: [],\r\n\t\t\tbeExaminedDepartmentId: [{ required: true, message: '被考核部门不能为空', trigger: 'blur' }],\r\n\t\t\tbeExaminedPersonName: [],\r\n\t\t\tbeExaminedPersonId: [],\r\n\t\t\texamineTemplateId: [],\r\n\t\t\texamineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }],\r\n\t\t\tmemo: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst handleClose=(formEl: FormInstance | undefined)=>{\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t}\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (type: any) => {\r\n\t\t\tShows.value.openDailog(type);\r\n\t\t};\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst userId = (val: any, type: any) => {\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.examinePersonId = val.uid;\r\n\t\t\t\tform.value.examinePersonName = val.realName;\r\n\t\t\t} else if (type == 0) {\r\n\t\t\t\tlet uid=[]\r\n\t\t\t\tlet realName=[]\r\n\t\t\t\tfor(let i=0;i<val.length;i++){\r\n\t\t\t\t\tuid.push(val[i].uid)\r\n\t\t\t\t\trealName.push(val[i].realName)\r\n\t\t\t\t}\r\n\t\t\t\tform.value.beExaminedPersonId = uid.toString();\r\n\t\t\t\tform.value.beExaminedPersonName =realName.toString();\r\n\t\t\t\tconsole.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName)\r\n\t\t\t}\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst nameData1 = (val: any) => {\r\n\t\t\tform.value.examineDepartmentName = val.depName;\r\n\t\t};\r\n\t\tconst nameData2 = (val: any) => {\r\n\t\t\tform.value.beExaminedDepartmentName = val.depName;\r\n\t\t\tconsole.log(form.value);\r\n\t\t};\r\n\t\treturn {\r\n\t\t\trules,\r\n\t\t\thandleClose,\r\n\t\t\tnameData1,\r\n\t\t\tnameData2,\r\n\t\t\truleFormRef,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tuserId,\r\n\t\t\tactiveName,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\topenDailog,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (date 1660303400442) -@@ -10,7 +10,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="考核日期" size="default" prop="examineDate"> -- <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.examineDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -72,30 +79,16 @@ - </el-row> - <el-row> - <el-col :span="24"> -- <el-form-item label="考核模板"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <el-form-item label="附件"> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="考核模板" size="default" prop="examineTemplateName"> -- <el-input disabled v-model="form.examineTemplateName"> -+ <el-input v-model="form.examineTemplateName"> - <template #append> <el-button :icon="Search" @click="daiAdd" /></template> - </el-input> - </el-form-item> -@@ -112,12 +105,12 @@ - <!-- <el-button type="primary" size="default" @click="daiAdd">新增</el-button> --> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" prop="date" label="考核项目" /> -- <el-table-column align="center" prop="name" label="考核内容" /> -+ <el-table :data="form.numberDetailJson" style="width: 100%"> -+ <el-table-column align="center" prop="itemDetail" label="考核项目" /> -+ <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" label="考核分数"> - <template #default="scope"> -- <el-input v-model="scope.row.address" type="textarea"> </el-input> -+ <el-input @blur="numberC" v-model.number="scope.row.number"> </el-input> - </template> - </el-table-column> - <!-- <el-table-column align="center" prop="address" label="制定日期" /> -@@ -135,7 +128,7 @@ - </span> - </template> - </el-dialog> -- <DailogSearch ref="Show"></DailogSearch> -+ <DailogSearch ref="Show" @typeDome="onType"></DailogSearch> - <DailogSearchUser ref="Shows" @SearchUser="userId"></DailogSearchUser> - </template> - <script lang="ts"> -@@ -147,8 +140,9 @@ - import { goalManagementApi } from '/@/api/goalManagement'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearchUser, DailogSearch }, -+ components: { DailogSearchUser, DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const ruleFormRef = ref<FormInstance>(); -@@ -162,13 +156,14 @@ - examineDepartmentName: '', - examinePersonId: '', ////考核人ID/外键 - examinePersonName: '', -- examineTemplateId: 1, ////绩效考核模板ID/外键 -+ examineTemplateId: '', ////绩效考核模板ID/外键 - examineTemplateName: '', - examineTotalNumber: '', ////总分 -- extraFile: '9', //责任书附件 -+ acceptanceNumber: '', ///合格分数 -+ extraFile: '', //责任书附件 - itemDetail: '', ////考核项目 - memo: '', ////备注信息 -- numberDetailJson: '[{"id":"123","number":"123"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] -+ numberDetailJson: [], ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] - title: '', ////考核标题 - }); - const titles = ref(); -@@ -185,11 +180,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.examineDate = timeC(form.value.examineDate); -+ form.value.numberDetailJson = form.value.currentExamineDtoList; -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } -+ -+ // fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m + `:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 验证 - const rules = reactive<FormRules>({ - title: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }], -@@ -204,12 +258,39 @@ - examineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }], - memo: [], - }); -+ // 接收 -+ const onType = (data: any, val: any) => { -+ form.value.examineTotalNumber = ''; -+ form.value.examineTemplateId = data.id; -+ form.value.examineTemplateName = data.title; -+ form.value.acceptanceNumber = data.acceptanceNumber; -+ form.value.numberDetailJson = val.examineItemList; -+ }; -+ const numberC = () => { -+ let arr = 0; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ if (form.value.numberDetailJson[i].number != undefined) { -+ arr = parseInt(arr) + parseInt(form.value.numberDetailJson[i].number); -+ } else { -+ arr = parseInt(arr) + 0; -+ } -+ } -+ form.value.examineTotalNumber = arr; -+ }; - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - dialogVisible.value = false; -+ let arr = []; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ arr.push({ -+ id: form.value.numberDetailJson[i].id, -+ number: form.value.numberDetailJson[i].number, -+ }); -+ } -+ form.value.numberDetailJson = JSON.stringify(arr); - goalManagementApi() - .getexamineMngAddOrUpdate(form.value) - .then((res) => { -@@ -234,10 +315,11 @@ - dialogVisible.value = false; - formEl.resetFields(); - }; -- const handleClose=(formEl: FormInstance | undefined)=>{ -+ const handleClose = (formEl: FormInstance | undefined) => { - if (!formEl) return; - formEl.resetFields(); -- } -+ fileList.value=[] -+ }; - const activeName = ref('1'); - // 新增弹窗 - const Show = ref(); -@@ -250,16 +332,7 @@ - Shows.value.openDailog(type); - }; - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref<UploadUserFile[]>([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -284,15 +357,15 @@ - form.value.examinePersonId = val.uid; - form.value.examinePersonName = val.realName; - } else if (type == 0) { -- let uid=[] -- let realName=[] -- for(let i=0;i<val.length;i++){ -- uid.push(val[i].uid) -- realName.push(val[i].realName) -+ let uid = []; -+ let realName = []; -+ for (let i = 0; i < val.length; i++) { -+ uid.push(val[i].uid); -+ realName.push(val[i].realName); - } - form.value.beExaminedPersonId = uid.toString(); -- form.value.beExaminedPersonName =realName.toString(); -- console.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName) -+ form.value.beExaminedPersonName = realName.toString(); -+ console.log(form.value.beExaminedPersonId, form.value.beExaminedPersonName); - } - }; - //全屏 -@@ -331,6 +404,9 @@ - }; - return { - rules, -+ timeC, -+ numberC, -+ onType, - handleClose, - nameData1, - nameData2, -@@ -360,6 +436,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -Index: src/views/goalManagement/performanceAppraisal/component/DailogKh.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"新建考核标准设定\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"标准标题\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"适用范围\" size=\"default\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.applyRange\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<div v-if=\"clickType\">\r\n\t\t\t\t<el-row>\r\n\t\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"form.setPersonId\" disabled>\r\n\t\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /></template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人部门\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"form.setPersonDepartmentId\" disabled style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone one\" value=\"shanghai\" />\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone two\" value=\"beijing\" />\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</div>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"模板分类编码\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.templateCode\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\" v-if=\"clickType\">\r\n\t\t\t\t\t<el-form-item label=\"设定日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker disabled v-model=\"form.setTimem\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增','')\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"form.examineItemList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogKhS ref=\"Show\" @onAdd=\"AddObj\"></DailogKhS>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogKhS from './DailogKhS.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogKhS },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\tsetTimem: 1658386392466,\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\ttitle: '', ////标准标题\r\n\t\t\tsetPersonId: 1, //设定人\r\n\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\tapplyRange: '', ////适用范围\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst clickType = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineTemplateDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tclickType.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 接受传值\r\n\t\tconst AddObj = (val: any) => {\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.examineItemList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.examineItemList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.examineItemList.splice(form.value.examineItemList.indexOf(tag), 1);\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateAddOrUpdate(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.examineItemList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\tdeleteA,\r\n\t\t\tAddObj,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\tclickType,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (date 1660303400443) -@@ -62,7 +62,7 @@ - </el-row> - </el-form> - <el-tabs v-model="activeName" class="demo-tabs"> -- <el-tab-pane label="目标指标分解" name="1"> -+ <el-tab-pane label="考核项目" name="1"> - <el-button type="primary" size="default" @click="daiAdd('新增','')">新增</el-button> - </el-tab-pane> - </el-tabs> -Index: src/views/goalManagement/performanceAppraisal/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"安全考核管理\" name=\"1\">\r\n\t\t\t\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.searchParams.examineDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.currentExamineDtoList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"number\" label=\"考核分数\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column property=\"examineDate\" align=\"center\" :formatter=\"timeDate\" label=\"考核日期\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examineDepartmentName\" align=\"center\" label=\"考核部门\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examinePersonName\" label=\"考核人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"beExaminedDepartmentName\" label=\"被考核部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"examineTotalNumber\" label=\"总分\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"numberDetailJson.number\" label=\"考核结果\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"extraFile\" label=\"附件\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"考核标准设定\" name=\"2\">\r\n\t\t\t\t\t<el-form :model=\"ruleForms\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForms.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApis\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForms\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openDs('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warnings\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"dangers\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAlls\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableDatas\" style=\"width: 100%\" @selection-change=\"handleSelectionChanges\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableDatas.examineItemList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column label=\"标准标题\" property=\"title\" align=\"center\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"applyRange\" align=\"center\" label=\"适用范围\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonName\" label=\"设定人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonDepartmentName\" label=\"设定人部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setTimem\" label=\"设定日期\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"templateCode\" label=\"模板分类编码\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"acceptanceNumber\" label=\"合格分数\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDs('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openDs('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDeletes(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4s\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4s\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"totals\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChanges\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChanges\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t</div>\r\n\t\t<DailogAq ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAq>\r\n\t\t<DailogKh ref=\"openAdds\" @navAddorUpdata=\"onAddorUpdatas\"></DailogKh>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogAq from './component/DailogAq.vue';\r\nimport DailogKh from './component/DailogKh.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAq, DailogKh },\r\n\tsetup() {\r\n\t\t// 搜索条件 安全考核管理\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\texamineDepartmentId: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD= (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 切换\r\n\t\tconst activeName = ref('1');\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tif (val == '1') {\r\n\t\t\t\tlistApi();\r\n\t\t\t}else{\r\n\t\t\t\tlistApis();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 搜索条件 考核标准设定\r\n\t\tconst ruleForms = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForms = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApis = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableDatas.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4s.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4s.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotals.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApis();\r\n\t\t\tdepartment()\r\n\t\t});\r\n\t\tconst onAddorUpdatas = () => {\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableDatas = ref();\r\n\t\tconst currentPage4s = ref();\r\n\t\tconst pageSize4s = ref();\r\n\t\tconst totals = ref();\r\n\t\tconst handleSizeChanges = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForms.pageSize = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\tconst handleCurrentChanges = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForms.pageIndex = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdds = ref();\r\n\t\tconst openDs = (title: String, id: number) => {\r\n\t\t\topenAdds.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDeletes = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warnings = ref(true);\r\n\t\tconst dangers = ref(true);\r\n\t\tconst deletAlls = ref();\r\n\t\tconst handleSelectionChanges = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAlls.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarnings.value = false;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAlls = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tactiveName,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\truleForms,\r\n\t\t\tresetForms,\r\n\t\t\tlistApis,\r\n\t\t\tonAddorUpdatas,\r\n\t\t\ttableDatas,\r\n\t\t\tcurrentPage4s,\r\n\t\t\tpageSize4s,\r\n\t\t\ttotals,\r\n\t\t\thandleSizeChanges,\r\n\t\t\thandleCurrentChanges,\r\n\t\t\topenAdds,\r\n\t\t\topenDs,\r\n\t\t\tonDeletes,\r\n\t\t\twarnings,\r\n\t\t\tdangers,\r\n\t\t\tdeletAlls,\r\n\t\t\thandleSelectionChanges,\r\n\t\t\tonDeleteAlls,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 20px;\r\n}\r\n.topTitle {\r\n\tpadding: 5px 0 20px 0;\r\n\tborder-bottom: 1px solid #dedede;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue ---- a/src/views/goalManagement/performanceAppraisal/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/performanceAppraisal/index.vue (date 1660303400444) -@@ -28,9 +28,9 @@ - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableData.currentExamineDtoList" style="width: 100%"> -+ <el-table :data="scope.row.currentExamineDtoList" style="width: 100%"> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" prop="number" label="考核分数" /> -@@ -91,9 +91,9 @@ - <el-table ref="multipleTableRef" :data="tableDatas" style="width: 100%" @selection-change="handleSelectionChanges"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableDatas.examineItemList" style="width: 100%"> -+ <el-table :data="scope.row.examineItemList" style="width: 100%"> - <el-table-column align="center" prop="itemType" label="类型" /> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> -@@ -141,8 +141,9 @@ - import DailogAq from './component/DailogAq.vue'; - import DailogKh from './component/DailogKh.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; --import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; -+import { ElMessageBox, ElMessage, ElButton, ElInput, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; -+import type { TabsPaneContext } from 'element-plus' - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - components: { ElButton, ElInput, DailogAq, DailogKh }, -@@ -158,6 +159,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.examineDepartmentId = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -@@ -283,8 +285,9 @@ - }; - // 切换 - const activeName = ref('1'); -- const handleClick = (val: any) => { -- if (val == '1') { -+ const handleClick = (val: TabsPaneContext) => { -+ console.log(val) -+ if (val.props.name == '1') { - listApi(); - }else{ - listApis(); -@@ -300,11 +303,12 @@ - }); - // 重置 - const resetForms = () => { -- ruleForm.searchParams.examineDepartmentId = ''; -+ ruleForms.searchParams.title = ''; -+ listApis() - }; - const listApis = () => { - goalManagementApi() -- .getexamineTemplateList(ruleForm) -+ .getexamineTemplateList(ruleForms) - .then((res) => { - if (res.data.code == 200) { - tableDatas.value = res.data.data; -Index: src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择安全目标指标\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi()\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"reset\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\" @click=\"clear\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\" width=\"70px\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"title\" label=\"标准标题\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.title }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\tlistApi()\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n // 重置\r\n\tconst reset=()=>{\r\n\t\truleForm.searchParams.title=\"\"\r\n\t\tlistApi()\r\n\t}\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\treset,\r\n\t\t\tdialogVisible,\r\n\t\t\tlistApi,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (date 1660303400443) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete" @click="clear">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > - <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -64,7 +64,7 @@ - <template #footer> - <span class="dialog-footer"> - <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -75,7 +75,7 @@ - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- setup() { -+ setup(props,{emit}) { - const dialogVisible = ref<boolean>(false); - const openDailog = () => { - dialogVisible.value = true; -@@ -122,6 +122,12 @@ - ruleForm.pageIndex = val; - listApi(); - }; -+ // 提交 -+ const submitForm=()=>{ -+ dialogVisible.value = false -+ emit("typeDome",dynamicTags.value[0],list.value) -+ clear() -+ } - // 右方点击添加后显示标签 - const dynamicTags = ref(['']); - const handleClose = (tag: string) => { -@@ -129,8 +135,19 @@ - radio1.value = ''; - }; - const radio1 = ref(''); -+ const list=ref([]) - const radio = (event: any) => { -- dynamicTags.value[0] = event; -+ -+ goalManagementApi() -+ .getexamineTemplateDetail(event.id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ list.value = res.data.data; -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ dynamicTags.value[0] = event; - }; - const clear=()=>{ - dynamicTags.value=[''] -@@ -146,6 +163,8 @@ - } - }; - return { -+ submitForm, -+ list, - reset, - dialogVisible, - listApi, -Index: src/views/goalManagement/IncentiveRecording/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.personName\" placeholder=\"请选择被奖惩者\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openSearch\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"createTime\" align=\"center\" label=\"奖惩日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column label=\"奖惩类型\" align=\"center\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"personName\" align=\"center\" label=\"被奖惩者\" sortable />\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"奖惩依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearchUser ref=\"openUser\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearchUser },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tpersonId: '', ////员工\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.personId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.personId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.personId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\tconst userId = (val: any) => {\r\n\t\t\truleForm.searchParams.personId = val.uid;\r\n\t\t\truleForm.searchParams.personName = val.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\truleForm,\r\n\t\t\tuserId,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\topenAdd,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\topenSearch,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue ---- a/src/views/goalManagement/IncentiveRecording/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/IncentiveRecording/index.vue (date 1660303400438) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.personName" placeholder="请选择被奖惩者"> -+ <el-input v-model="personName" placeholder="请选择被奖惩者"> - <template #append> - <el-button :icon="Search" @click="openSearch" /> - </template> -@@ -92,8 +92,10 @@ - }, - }); - // 重置 -+ const personName=ref() - const resetForm = () => { - ruleForm.searchParams.personId = ''; -+ personName.value = ''; - listApi(); - }; - const listApi = () => { -@@ -229,10 +231,11 @@ - }; - const userId = (val: any) => { - ruleForm.searchParams.personId = val.uid; -- ruleForm.searchParams.personName = val.realName; -+ personName.value = val.realName; - }; - return { - timeDate, -+ personName, - ruleForm, - userId, - resetForm, -Index: src/views/contingencyManagement/contingency/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-user-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <el-form :inline=\"true\" class=\"demo-form-inline\">\r\n <el-form-item>\r\n <el-input size=\"default\" v-model=\"listQuery.searchParams.teamName\" placeholder=\"队伍名称\"> </el-input>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-select size=\"default\" v-model=\"listQuery.searchParams.teamLevel\" placeholder=\"请选择队伍级别\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\">\r\n 查询\r\n </el-button>\r\n <el-button size=\"default\" class=\"ml10\" @click=\"submitReset\">\r\n 重置\r\n </el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n <div class=\"button_Line\">\r\n <div class=\"button_Left\">\r\n <el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n <el-icon>\r\n <Plus />\r\n </el-icon>新建\r\n </el-button>\r\n<!-- <el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Edit />-->\r\n<!-- </el-icon>修改-->\r\n<!-- </el-button>-->\r\n <el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </div>\r\n<!-- <div class=\"button_Right\">-->\r\n<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Upload />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Download />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Refresh />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- </div>-->\r\n </div>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%\"\r\n ref=\"multipleTableRef\"\r\n @selection-change=\"handleSelectionChange\"\r\n >\r\n <el-table-column\r\n type=\"selection\"\r\n width=\"55\"\r\n />\r\n <el-table-column prop=\"teamName\" label=\"队伍名称\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"teamLevel\" label=\"队伍级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.teamLevel == 1\">公司</span>\r\n <span v-if=\"scope.row.teamLevel == 2\">分厂-车间</span>\r\n <span v-if=\"scope.row.teamLevel == 3\">工序-班组等</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"teamDesc\" label=\"队伍描述\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"principalPhone\" label=\"负责人手机\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"attachments\" label=\"相关附件\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column label=\"操作\" width=\"200\" align=\"center\" fixed=\"right\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <View />\r\n </el-icon>查看\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <EditPen />\r\n </el-icon>修改\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"pages\">\r\n <el-pagination\r\n v-if=\"tableData.length == 0 ? false : true\"\r\n @size-change=\"onHandleSizeChange\"\r\n @current-change=\"onHandleCurrentChange\"\r\n class=\"mt15\"\r\n :pager-count=\"5\"\r\n :page-sizes=\"[10, 20, 30]\"\r\n v-model:currentPage=\"pageIndex\"\r\n background\r\n v-model:page-size=\"pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\"\r\n >\r\n </el-pagination>\r\n </div>\r\n </el-card>\r\n <OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n <upData ref=\"upShow\"></upData>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // toRefs,\r\n reactive,\r\n onMounted,\r\n ref,\r\n defineComponent\r\n} from 'vue';\r\nimport {\r\n ElMessageBox,\r\n ElMessage,\r\n} from 'element-plus';\r\nimport {\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n View,\r\n EditPen,\r\n} from '@element-plus/icons-vue'\r\n\r\nimport OpenAdd from '../../contingencyManagement/contingency/component/openAdd.vue'\r\nimport UpData from '../../contingencyManagement/contingency/component/upData.vue';\r\nimport {contingencyApi} from \"../../../api/contingencyManagement/contingency\";\r\n\r\nexport default defineComponent({\r\n name: 'systemUser',\r\n components: {\r\n OpenAdd,\r\n View,\r\n EditPen,\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n UpData,\r\n contingencyApi\r\n },\r\n setup() {\r\n // 列表参数\r\n const listQuery = reactive({\r\n pageIndex: 1,\r\n pageSize: 10,\r\n searchParams: {\r\n teamName: \"\",\r\n teamLevel: \"\",\r\n }\r\n })\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n // 列表数据请求\r\n const onSubmit = async () => {\r\n let res = await contingencyApi().getTeamManagementList(listQuery)\r\n if(res.data.code === '200'){\r\n tableData.value = res.data.data;\r\n pageIndex.value = res.data.pageIndex;\r\n pageSize.value = res.data.pageSize;\r\n total.value = res.data.total;\r\n }else{\r\n ElMessage({\r\n showClose: true,\r\n type:'error',\r\n message:res.data.msg\r\n })\r\n }\r\n }\r\n // 重置\r\n const submitReset = () => {\r\n listQuery.searchParams.teamName = '';\r\n listQuery.searchParams.teamLevel = '';\r\n onSubmit();\r\n };\r\n // const warning = ref(true);\r\n const danger = ref(true);\r\n const deleteAll = ref();\r\n const handleSelectionChange = (val: any) => {\r\n let valId = JSON.parse(JSON.stringify(val));\r\n let arr = [];\r\n for (let i = 0; i < valId.length; i++) {\r\n arr.push(valId[i].id);\r\n }\r\n deleteAll.value = arr;\r\n if (val.length == 1) {\r\n // warning.value = false;\r\n danger.value = false;\r\n } else if (val.length == 0) {\r\n // warning.value = true;\r\n danger.value = true;\r\n } else {\r\n // warning.value = true;\r\n danger.value = false;\r\n }\r\n };\r\n\r\n // 上传\r\n // const upShow=ref()\r\n // const upButton=()=>{\r\n // upShow.value.openDialog()\r\n // }\r\n // 打开新增应急队伍弹窗\r\n const addRef = ref();\r\n const onOpenAdd = () => {\r\n addRef.value.openDialog('新建应急队伍管理');\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: boolean) => {\r\n if (e) {\r\n onSubmit();\r\n } else {\r\n onSubmit();\r\n }\r\n };\r\n // 打开修改应急队伍弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '详情') {\r\n addRef.value.openDialog('查看应急队伍管理',row,true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍管理',row,false);\r\n }\r\n };\r\n // 删除用户\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam([data])\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n }).catch(() => {});\r\n };\r\n // 多选删除\r\n const onDeleteAll = () => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n })\r\n .then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam(deleteAll.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n })\r\n .catch(() => {});\r\n };\r\n // 分页\r\n const pageIndex = ref();\r\n const pageSize = ref();\r\n const total = ref();\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n listQuery.pageSize = val;\r\n onSubmit();\r\n };\r\n const onHandleCurrentChange = (val: number) => {\r\n listQuery.pageIndex = val;\r\n onSubmit();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n onSubmit();\r\n });\r\n return {\r\n listQuery,\r\n onSubmit,\r\n // upButton,\r\n // upShow,\r\n onOpenAdd, //新增\r\n addRef,\r\n pageIndex,\r\n pageSize,\r\n total,\r\n onEdit,\r\n handleSelectionChange,\r\n submitReset,\r\n onRowDel,\r\n onMyAdd,\r\n tableData,\r\n onDeleteAll,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n deleteAll,\r\n // warning,\r\n danger,\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box{\r\n padding: 20px;\r\n background-color: #fff;\r\n}\r\n.tableForm{\r\n margin-top: 10px;\r\n}\r\n/*按钮行*/\r\n .button_Line{\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n margin-bottom: 10px;\r\n }\r\n//分页\r\n.pages{\r\n display: flex;\r\n justify-content: flex-end;\r\n margin-top: 15px;\r\n}\r\n.el-form .el-form-item{\r\n margin-bottom: 0px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n background-color: #f6f7fa;\r\n font-weight: 400;\r\n color: #909399;\r\n}\r\n.el-table .sort-caret.ascending{\r\n border-bottom-color: #c0c4cc;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue ---- a/src/views/contingencyManagement/contingency/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/contingency/index.vue (date 1660303400434) -@@ -79,7 +79,9 @@ - </el-table-column> - <el-table-column prop="teamDesc" label="队伍描述" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="principalPhone" label="负责人手机" show-overflow-tooltip sortable></el-table-column> -- <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column prop="fileList" label="相关附件" show-overflow-tooltip sortable> -+ -+ </el-table-column> - <el-table-column label="操作" width="200" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="onEdit('详情',scope.row.id)"> -@@ -179,6 +181,11 @@ - let res = await contingencyApi().getTeamManagementList(listQuery) - if(res.data.code === '200'){ - tableData.value = res.data.data; -+ for(var a = 0;a<tableData.value.length;a++){ -+ if(tableData.value[a].fileList!=null&&tableData.value[a].fileList!=''&&tableData.value[a].fileList.length!=0){ -+ tableData.value[a].fileList = tableData.value[a].fileList[0].fileName -+ } -+ } - pageIndex.value = res.data.pageIndex; - pageSize.value = res.data.pageSize; - total.value = res.data.total; -Index: src/views/contingencyManagement/contingency/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"120px\"\r\n :disabled=\"disabled\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍名称\" prop=\"teamName\">\r\n <el-input v-model=\"ruleForm.teamName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍级别\" prop=\"teamLevel\">\r\n <el-select v-model=\"ruleForm.teamLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍负责人\" prop=\"principalName\">\r\n <el-input v-model=\"ruleForm.principalName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人部门\" prop=\"principalDepartmentId\">\r\n <el-tree-select v-model=\"ruleForm.principalDepartmentId\" :data=\"newTreeList\" class=\"w100\"\r\n :props=\"propse\" clearable placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人手机\" prop=\"principalPhone\">\r\n <el-input v-model=\"ruleForm.principalPhone\" placeholder=\"请填写负责人手机\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"固定电话\" prop=\"telephoneNumber\">\r\n <el-input v-model=\"ruleForm.telephoneNumber\" placeholder=\"请填写固定电话\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"队伍描述\" prop=\"teamDesc\">\r\n <el-input class=\"textarea\" v-model=\"ruleForm.teamDesc\" type=\"textarea\" maxlength=\"150\"\r\n placeholder=\"请填写队伍描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"相关附件\" prop=\"fileList\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\">点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">添加相关附件</div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n <el-tab-pane label=\"应急队伍人员\" name=\"first\" >\r\n <el-button type=\"primary\" size=\"default\" @click=\"onAddEmergencyPersonnel\" :disabled=\"disabled\">新增\r\n </el-button>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%; margin-top: 15px\"\r\n ref=\"multipleTableRef\"\r\n :header-cell-style=\"{ background: '#f6f7fa', color: '#909399' }\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-table-column prop=\"jobNumber\" label=\"人员工号\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"name\" label=\"人员名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"phone\" label=\"手机号码\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"position\" label=\"职位\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('查看应急队伍人员',scope.row.id)\">查看\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('修改应急队伍人员',scope.row.id)\"\r\n style=\"margin-right: 5px\">编辑\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onRowDel(scope.row.id)\"\r\n style=\"margin-right: 5px\">删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-col>\r\n </el-row>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"onSubmit(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <AddEmergencyPersonnel ref=\"addRef\" @myAdd=\"onMyAdd\"/>\r\n <DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\"/>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\n import {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n // toRefs,\r\n } from 'vue';\r\n import {\r\n ElMessage,\r\n ElMessageBox,\r\n } from 'element-plus';\r\n\r\n import type {\r\n UploadUserFile,\r\n TabsPaneContext,\r\n FormInstance,\r\n FormRules,\r\n } from 'element-plus'\r\n\r\n import {\r\n Search,\r\n FullScreen\r\n } from '@element-plus/icons-vue'\r\n import AddEmergencyPersonnel from \"/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue\";\r\n import DailogSearchUserManger from \"/@/components/DailogSearchUserManger/index.vue\"\r\n import {contingencyApi} from \"/@/api/contingencyManagement/contingency\";\r\n import {goalManagementApi} from \"/@/api/goalManagement\";\r\n // import {releaseDrillPlanApi} from \"/@/api/releaseDrillPlan\";\r\n\r\n\r\n export default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n AddEmergencyPersonnel,\r\n DailogSearchUserManger,\r\n },\r\n setup(prop, {emit}) {\r\n const isShowDialog = ref(false);\r\n const ruleFormRef = ref<FormInstance>();\r\n const ruleForm = ref({\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalName: '',\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n const peopleInsertBtn = ref(false)\r\n const teamId = ref()\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n teamId.value = id\r\n //如果是新增 无法添加人员\r\n if(title == '新建应急队伍管理'){\r\n peopleInsertBtn.value = true\r\n }else{\r\n peopleInsertBtn.value = false\r\n }\r\n if (title == '查看应急队伍管理' || title == '修改应急队伍管理') {\r\n contingencyApi()\r\n .seeEmergencyTeam(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n listApi()\r\n }\r\n });\r\n }\r\n }\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n\r\n //定义树形下拉框\r\n const principalDepartmentId = ref()\r\n const data = ref()\r\n\r\n\r\n\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n\r\n\r\n\r\n\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog();\r\n };\r\n const onUser = (e: any) => {\r\n ruleForm.value.principalUid = e[0].uid\r\n ruleForm.value.principalName = e[0].realName\r\n };\r\n //定义tabs切换\r\n const activeName = ref('first')\r\n const handleClick = (tab: TabsPaneContext, event: Event) => {\r\n console.log(tab, event)\r\n }\r\n\r\n // 必填项提示\r\n const rules = reactive<FormRules>({\r\n teamName: [\r\n {\r\n required: true,\r\n message: '队伍名称不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n teamLevel: [\r\n {\r\n required: true,\r\n message: '队伍级别不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalUid: [\r\n {\r\n required: true,\r\n message: '队伍负责人不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalDepartmentId: [\r\n {\r\n required: true,\r\n message: '负责人部门不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalPhone: [\r\n {\r\n required: true,\r\n message: '负责人手机不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n telephoneNumber: [\r\n {\r\n required: true,\r\n message: '固定电话不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n })\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n const onSubmit = async (title: string, formEl: FormInstance | undefined) => {\r\n if (title == '新建应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .addEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n } else if (title == '修改应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .editEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n };\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n tableData.value=[]\r\n ruleForm.value = {}\r\n };\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n //添加队伍负责人弹窗\r\n const addRef = ref();\r\n const onAddEmergencyPersonnel = () => {\r\n //未添加队伍 无法修改人员\r\n if(peopleInsertBtn.value == true){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加应急队伍',\r\n type: 'warning',\r\n });\r\n }else {\r\n addRef.value.openDialog('新建应急队伍人员','',teamId.value);\r\n }\r\n };\r\n // 请求列表数据\r\n const listApi = async () => {\r\n let res = await contingencyApi().getEmergencyTeamPersonnelList(teamId.value);\r\n if (res.data.code == 200) {\r\n tableData.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: object) => {\r\n listApi();\r\n };\r\n // 打开修改弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '查看应急队伍人员') {\r\n addRef.value.openDialog('查看应急队伍人员', row,teamId.value, true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍人员', row,teamId.value, false);\r\n }\r\n };\r\n // 删除\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeamPersonnel(data)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n listApi()\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n listApi()\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n });\r\n };\r\n return {\r\n openDialog,\r\n fileList,\r\n principalDepartmentId,\r\n data,\r\n activeName,\r\n handleClick,\r\n tableData,\r\n Search,\r\n resetForm,\r\n isShowDialog,\r\n ruleFormRef,\r\n ruleForm,\r\n rules,\r\n addRef,\r\n userRef,\r\n titles,\r\n disabled,\r\n propse,\r\n emit,\r\n onSubmit,\r\n openUser,\r\n onAddEmergencyPersonnel,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n onUser,\r\n onMyAdd,\r\n listApi,\r\n onEdit,\r\n onRowDel,\r\n department,\r\n peopleInsertBtn,\r\n teamId,\r\n newTreeList\r\n };\r\n },\r\n });\r\n</script>\r\n<style scoped lang=\"scss\">\r\n .textarea {\r\n height: 168px !important;\r\n }\r\n\r\n .textarea ::v-deep .el-textarea__inner {\r\n height: 168px !important;\r\n }\r\n\r\n ::v-deep .el-table__cell {\r\n font-weight: 400;\r\n }\r\n</style>\r\n\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue ---- a/src/views/contingencyManagement/contingency/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue (date 1660303400433) -@@ -52,17 +52,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件" prop="fileList"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -142,6 +133,7 @@ - import DailogSearchUserManger from "/@/components/DailogSearchUserManger/index.vue" - import {contingencyApi} from "/@/api/contingencyManagement/contingency"; - import {goalManagementApi} from "/@/api/goalManagement"; -+ import uploaderFile from '/@/components/uploaderFile/index.vue'; - // import {releaseDrillPlanApi} from "/@/api/releaseDrillPlan"; - - -@@ -150,6 +142,7 @@ - components: { - AddEmergencyPersonnel, - DailogSearchUserManger, -+ uploaderFile - }, - setup(prop, {emit}) { - const isShowDialog = ref(false); -@@ -188,14 +181,34 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - listApi() - } - }); - } - } - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -- -+ const fileList = ref([]) -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //定义树形下拉框 - const principalDepartmentId = ref() - const data = ref() -@@ -313,6 +326,9 @@ - } - }; - const onSubmit = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急队伍管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -346,7 +362,6 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] - isShowDialog.value = false; - contingencyApi() - .editEmergencyTeam(ruleForm.value) -@@ -390,6 +405,7 @@ - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - tableData.value=[] - ruleForm.value = {} - }; -@@ -494,7 +510,9 @@ - department, - peopleInsertBtn, - teamId, -- newTreeList -+ newTreeList, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentExpress/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.accidentName\" placeholder=\"事故名称\" style=\"max-width: 215px\" />\r\n\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"listApi\"> 查询 </el-button>\r\n\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon> <Plus /> </el-icon>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon> <Edit /> </el-icon>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" @click=\"onDeleteAll\" plain :disabled=\"danger\">\r\n\t\t\t\t\t\t<el-icon> <Delete /> </el-icon>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button @click=\"upButton\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Upload />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Download />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Refresh />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentName\" label=\"事故名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"deptName\" label=\"事故部门\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrencePlace\" label=\"发生地点\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrenceTime\" label=\"发生时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentCause\" label=\"事故原因\" show-overflow-tooltip sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='1'\">人的不安全行为</div>\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='2'\">物的不安全状态</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"createName\" label=\"创建人\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"gmtModitify\" label=\"更新时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text disabled>\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Upload /> </el-icon>上报\r\n\t\t\t\t\t\t</el-button> -->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <EditPen /> </el-icon>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <View /> </el-icon>详情\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onDelete(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Delete /> </el-icon>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<upData ref=\"upShow\"></upData>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElTable, ElMessage, ElMessageBox } from 'element-plus';\r\nimport { Plus, View, Download, Refresh, EditPen, Edit, Delete, Upload } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/accidentManagementSystem/accidentExpress/component/openAdd.vue';\r\nimport UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nexport default defineComponent({\r\n\tname: 'index',\r\n\tcomponents: {\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpData,\r\n\t\tOpenAdd,\r\n\t\tView,\r\n\t},\r\n\r\n\tsetup() {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\taccidentName: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst listApi = async () => {\r\n\t\t\tlet res = await accidentManagementSystemApi().accidentList(listQuery);\r\n\t\t\tif (res.data.code == 200) {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.accidentName = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// 打开新增弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建事故快报',false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tlistApi();\r\n\t\t\t} else {\r\n\t\t\t\tlistApi();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele([data])\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst upShow = ref();\r\n\t\tconst upButton = () => {\r\n\t\t\tupShow.value.openDialog();\r\n\t\t};\r\n\r\n\t\t// 打开修改用户弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看事故快报',row,true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改事故快报',row,false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tupButton,\r\n\t\t\tupShow,\r\n\t\t\ttableData,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonEdit,\r\n\t\t\tonOpenAdd,\r\n\t\t\taddRef,\r\n\t\t\tlistQuery,\r\n\t\t\tlistApi,\r\n\t\t\tsubmitReset,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDelete,\r\n\t\t\tdeletAll,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/index.vue b/src/views/accidentManagementSystem/accidentExpress/index.vue ---- a/src/views/accidentManagementSystem/accidentExpress/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/accidentManagementSystem/accidentExpress/index.vue (date 1660303400400) -@@ -41,7 +41,8 @@ - <el-table-column align="center" prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="deptName" label="事故部门" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="occurrencePlace" label="发生地点" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column align="center" prop="accidentCause" label="事故原因" show-overflow-tooltip sortable> - <template #default="scope"> - <div v-if="scope.row.accidentCause=='1'">人的不安全行为</div> -@@ -49,7 +50,8 @@ - </template> - </el-table-column> - <el-table-column align="center" prop="createName" label="创建人" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <!-- <el-button size="small" text disabled> -@@ -268,7 +270,16 @@ - addRef.value.openDialog('修改事故快报',row,false); - } - }; -- -+//格式化表格时间 -+ const dateFormat = (row,column) => { -+ // 获取单元格数据 -+ let data = row[column.property]; -+ if(data == null) { -+ return null; -+ } -+ let dt = new Date(data) -+ return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds() -+ }; - return { - upButton, - upShow, -@@ -291,6 +302,7 @@ - onDelete, - deletAll, - onDeleteAll, -+ dateFormat - }; - }, - }); -Index: src/views/goalManagement/targetEscalation/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"检查\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"上报\" name=\"2\"></el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"审核\" name=\"3\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column v-if=\"activeName == 1\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(0)\">检查</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDai(scope.row.targetDivideDetailList)\">记录</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 2\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(1)\">上报</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 3\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom\">待审批</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { useRouter } from 'vue-router';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\t// let targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = val.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeName = ref<any>('1');\r\n\t\t// 记录弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openDai = (data: any) => {\r\n\t\t\tShow.value.openDailog(data);\r\n\t\t};\r\n\t\t// 流程表单\r\n\t\tconst router = useRouter();\r\n\t\tconst jumpFrom = (data: any) => {\r\n\t\t\trouter.push({\r\n\t\t\t\tpath: '/processForms',\r\n\t\t\t\tquery: {\r\n\t\t\t\t\ttype: data,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tactiveName,\r\n\t\t\ttotal,\r\n\t\t\thandleClick,\r\n\t\t\truleForm,\r\n\t\t\tlistApi,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tresetForm,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenDai,\r\n\t\t\trouter,\r\n\t\t\tjumpFrom,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/index.vue b/src/views/goalManagement/targetEscalation/index.vue ---- a/src/views/goalManagement/targetEscalation/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetEscalation/index.vue (date 1660303400450) -@@ -24,7 +24,6 @@ - <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> - <el-tab-pane label="检查" name="1"> </el-tab-pane> - <el-tab-pane label="上报" name="2"></el-tab-pane> -- <el-tab-pane label="审核" name="3"></el-tab-pane> - </el-tabs> - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%"> - <el-table-column label="安全目标指标" align="center" property="qName" sortable /> -@@ -33,18 +32,18 @@ - <el-table-column property="value" label="指标值" align="center" sortable show-overflow-tooltip /> - <el-table-column v-if="activeName == 1" label="操作" align="center" show-overflow-tooltip> - <template #default="scope"> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(0)">检查</el-button> -- <el-button link type="primary" size="default" :icon="View" @click="openDai(scope.row.targetDivideDetailList)">记录</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,1)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,1)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,1)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,1)" >查看审批流程</el-button> - </template> - </el-table-column> - <el-table-column v-if="activeName == 2" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(1)">上报</el-button> -- </template> -- </el-table-column> -- <el-table-column v-if="activeName == 3" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom">待审批</el-button> -+ <template #default="scope"> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,2)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,2)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,2)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,2)" >查看审批流程</el-button> - </template> - </el-table-column> - </el-table> -@@ -61,17 +60,19 @@ - </div> - </div> - <Dailog ref="Show"></Dailog> -+ <TypeDailog ref="TypeD" @onType="typeAlign" /> - </div> - </template> - <script lang="ts"> - import Dailog from './component/Dailog.vue'; -+import TypeDailog from './component/TypeDailog.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; - import { useRouter } from 'vue-router'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- components: { ElButton, ElInput, Dailog }, -+ components: { ElButton, ElInput, Dailog,TypeDailog }, - setup() { - // 搜索条件 - const ruleForm = reactive({ -@@ -80,8 +81,9 @@ - searchParams: { - qName: '', ////安全目标指标 - indexNum: '', ////目标指标编号 -- targetType: '1', ////指标类型 1:年指标 2:月指标 -- divideStatus: '', ////分解状态 1:已分解 2:未分解 -+ targetType: 1, ////指标类型 1:年指标 2:月指标 -+ divideStatus: 1, ////分解状态 1:已分解 2:未分解 -+ relateType: 1, ////关联业务类型 1:目标检查 2:目标上报 - }, - }); - // 重置 -@@ -91,7 +93,7 @@ - }; - const listApi = () => { - goalManagementApi() -- .getTargetMngList(ruleForm) -+ .getworkApproveList(ruleForm) - .then((res) => { - if (res.data.code == 200) { - tableData.value = res.data.data; -@@ -106,7 +108,7 @@ - // - const handleClick = (val: any) => { - // let targetType = JSON.parse(JSON.stringify(val)); -- ruleForm.searchParams.targetType = val.paneName; -+ ruleForm.searchParams.relateType = val.paneName; - listApi(); - }; - onMounted(() => { -@@ -133,20 +135,21 @@ - const activeName = ref<any>('1'); - // 记录弹窗 - const Show = ref(); -- const openDai = (data: any) => { -- Show.value.openDailog(data); -+ const openDai = (data: any,num:number) => { -+ Show.value.openDailog(data,num); - }; -- // 流程表单 -- const router = useRouter(); -- const jumpFrom = (data: any) => { -- router.push({ -- path: '/processForms', -- query: { -- type: data, -- }, -- }); -+ // 发起审批弹窗 -+ const TypeD = ref(); -+ const TypeDailog = (title:string,name:string,id:number,type:number) => { -+ TypeD.value.openDialog(title,name,id,type); - }; -+ const typeAlign=()=>{ -+ listApi(); -+ } - return { -+ TypeD, -+ typeAlign, -+ TypeDailog, - activeName, - total, - handleClick, -@@ -161,8 +164,6 @@ - handleCurrentChange, - Show, - openDai, -- router, -- jumpFrom, - Plus, - Delete, - Upload, -Index: src/api/goalManagement/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\nexport function goalManagementApi() {\r\n return {\r\n // 目标设置、目标指标分解列表\r\n getTargetMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置详情\r\n getTargetMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标设置新增或者修改数据\r\n getTargetMngAddOrupdata: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置删除\r\n getTargetMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标指标分解-新增或者修改数据\r\n gettargetDivideDetail: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDivideDetail/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 统计\r\n getEquipmentInfo: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/equipmentInfo/statistics',\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 分页查询数据\r\n gettargetDutyfileInfoList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutyfileInfo/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 查询单条数据\r\n gettargetDutyfileInfoDetail: (params: number) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 新增或者修改数据\r\n gettargetDutyfileInfoAddorUpdata: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 删除\r\n gettargetDutyfileInfoDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 分页查询数据\r\n getrewardPunishmentStandardList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 查询单条数据\r\n getrewardPunishmentStandardDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩标准设定 新增或者修改数据\r\n getrewardPunishmentStandardaddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 删除\r\n getrewardPunishmentStandardDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 分页查询数据\r\n getrewardPunishmentList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentDetail/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 查询单条数据\r\n getrewardPunishmentDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩记录 新增或者修改数据\r\n getrewardPunishmentAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 删除\r\n getrewardPunishmentDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 分页查询数据\r\n getexamineMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 查询单条数据\r\n getexamineMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 新增或者修改数据\r\n getexamineMngAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 删除\r\n getexamineMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 分页查询数据\r\n getexamineTemplateList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineTemplate/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 查询单条数据\r\n getexamineTemplateDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 新增或者修改数据\r\n getexamineTemplateAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 删除\r\n getexamineTemplateDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 分页查询数据\r\n gettargetDutySummaryList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutySummary/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 查询单条数据\r\n gettargetDutySummaryDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标汇总 新增或者修改数据\r\n gettargetDutySummaryAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 删除\r\n gettargetDutySummaryDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/delete?ids=${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 查询单条数据\r\n gettargetExamineDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetExamine/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 新增或者修改数据\r\n gettargetExamineAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetExamine/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标检查上报 (有疑问) 新增或者修改数据 ---???\r\n getworkApproveAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 部门树\r\n getTreedepartment: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/department/list',\r\n method: 'post'\r\n });\r\n },\r\n // 人员\r\n getManName: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`,\r\n method: 'get'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/goalManagement/index.ts b/src/api/goalManagement/index.ts ---- a/src/api/goalManagement/index.ts (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/api/goalManagement/index.ts (date 1660303610803) -@@ -247,10 +247,50 @@ - data: params - }); - }, -- // 目标检查上报 (有疑问) 新增或者修改数据 ---??? -- getworkApproveAddOrUpdate: (params: object) => { -+ // 目标检查上报 分页查询数据 -+ getworkApproveList: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetMng/checkAndSubimt/list', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 分页查询检查记录 -+ getworkApproveListCheckData: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/page/listCheckData', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 查询单条数据 -+ getworkApproveDetail: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + `/targetDutyWorkApprove/selectOne/${params}`, -+ method: 'get' -+ }); -+ }, -+ -+ // 目标检查上报 新增数据 -+ getworkApproveAdd: (params: object) => { - return request({ -- url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove', -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/add', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 新增数据 -+ getworkApproveUpdata: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/update', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 删除 -+ getworkApproveDelete: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/delete', - method: 'post', - data: params - }); -@@ -267,6 +307,18 @@ - return request({ - url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`, - method: 'get' -+ }); -+ }, -+ beforeUploadFile(fileName1: string, fileName2: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/presign?prefixName=' + fileName1 + '&suffixName=' + fileName2, -+ method: 'get' -+ }); -+ }, -+ searchFile(fileName: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/view?obj=' + fileName, -+ method: 'get' - }); - } - }; -Index: src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" :rules=\"rules\" size=\"default\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"disabled\" placeholder=\"请填写事故名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentDepartmentId\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.occurrencePlace\" :disabled=\"disabled\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.occurrenceTime\" :disabled=\"disabled\" placeholder=\"请填写发生时间\"></el-input>-->\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人的不安全行为\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"物的不安全状态\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"是否有伤亡\" prop=\"casualties\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.casualties\" :disabled=\"disabled\" @change=\"typeChang\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t\t<el-button v-if=\"ruleForm.casualties\" type=\"primary\" style=\"margin-left: 20px\"\r\n\t\t\t\t\t\t\t\t\t :icon=\"Edit\" @click=\"openDai\" round plain />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故简要经过\" prop=\"accidentBriefProcess\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentBriefProcess\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故简要经过\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因初步分析\" prop=\"accidentCausesPreliminaryAnalysis\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentCausesPreliminaryAnalysis\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故原因初步分析\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急防范措施\" prop=\"emergencyPrecautions\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.emergencyPrecautions\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写应急防范措施\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故照片\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.fileList\" :disabled=\"disabled\"-->\r\n\t\t\t\t\t\t\t<!--type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileListDemo\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<NumberOfCasualties ref=\"ShowUser\"></NumberOfCasualties>\r\n\t\t<CheckTemplate ref=\"Shows\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent, defineEmits, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen, Edit } from '@element-plus/icons-vue';\r\nimport NumberOfCasualties from '/@/views/accidentManagementSystem/accidentExpress/component/numberOfCasualties.vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tNumberOfCasualties,\r\n\t\tuploaderImg,\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\temergencyPrecautions: '',\r\n\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\taccidentBriefProcess: '',\r\n\t\t\tcasualties: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\toccurrenceTime: '',\r\n\t\t\toccurrencePlace: '',\r\n\t\t\taccidentDepartmentId: '',\r\n\t\t\taccidentName: '',\r\n\t\t\tfileList: [],\r\n\t\t\tid: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看事故快报' || title == '修改事故快报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.accidentScarh(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\tconst fileListDemo = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故名称不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故部门不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrencePlace: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '发生地点不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrenceTime: [{ type: 'date', required: true, message: '发生时间不能为空', trigger: 'blur' }],\r\n\t\t\taccidentCause: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcasualties: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '是否有伤亡不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentBriefProcess: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故简要经过不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentCausesPreliminaryAnalysis: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因初步分析不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\temergencyPrecautions: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '应急防范措施不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\t// 子传父\r\n\t\t// const emit=defineEmits(['myAdd'])\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.id = null;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList = [\r\n\t\t\t\t\t\t\t// {\r\n\t\t\t\t\t\t\t// \tfileUrl: 'url',\r\n\t\t\t\t\t\t\t// \tfileName: 'name',\r\n\t\t\t\t\t\t\t// },\r\n\t\t\t\t\t\t];\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t}\r\n\t\t\truleForm.value = {\r\n\t\t\t\taccidentExpressId: '',\r\n\t\t\t\temergencyPrecautions: '',\r\n\t\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\t\taccidentBriefProcess: '',\r\n\t\t\t\tcasualties: '',\r\n\t\t\t\taccidentCause: '',\r\n\t\t\t\toccurrenceTime: '',\r\n\t\t\t\toccurrencePlace: '',\r\n\t\t\t\taccidentDepartmentId: '',\r\n\t\t\t\taccidentName: '',\r\n\t\t\t\tfileList: [],\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 是否有伤亡弹窗\r\n\t\tconst typeChang = () => {\r\n\t\t\tconsole.log('tag', ruleForm);\r\n\t\t};\r\n\t\tconst ShowUser = ref();\r\n\t\tconst openDai = () => {\r\n if(ruleForm.value.id==null||ruleForm.value.id==''){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加事故快报',\r\n type: 'info',\r\n });\r\n }else {\r\n ShowUser.value.openDialog(ruleForm.value.id, disabled.value);\r\n }\r\n\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tShowUser,\r\n\t\t\ttypeChang,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\tEdit,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenDai,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tcloseDialog,\r\n\t\t\tfileListDemo,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (date 1660303400400) -@@ -1,6 +1,7 @@ - <template> - <div class="system-edit-user-container"> -- <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" @close="closeDialog(ruleFormRef)"> -+ <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" -+ destroy-on-close @close="closeDialog(ruleFormRef)"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" size="default" label-width="140px"> - <el-row :gutter="35"> -@@ -94,7 +95,8 @@ - <el-form-item label="事故照片" prop="fileList"> - <!--<el-input v-model="ruleForm.fileList" :disabled="disabled"--> - <!--type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <uploaderImg :fileList="fileListDemo"></uploaderImg> -+ <uploaderImg :fileList="fileList" :disabled="disabled" -+ :systemName="'INCIDENT_MANAGE'" @successUploader="successUploader"></uploaderImg> - </el-form-item> - </el-col> - </el-row> -@@ -157,7 +159,7 @@ - const titles = ref(); - const disabled = ref(); - // 打开弹窗 -- const openDialog = (title: string, id: number, type: boolean) => { -+ const openDialog = async (title: string, id: number, type: boolean) => { - isShowDialog.value = true; - titles.value = title; - disabled.value = type; -@@ -167,24 +169,39 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -- const fileListDemo = ref<UploadUserFile[]>([ -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- ]); -+ const fileList = ref([]); -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 可选择树 - const treeSelect = ref(); - -@@ -292,6 +309,9 @@ - // const emit=defineEmits(['myAdd']) - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故快报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -327,12 +347,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList = [ -- // { -- // fileUrl: 'url', -- // fileName: 'name', -- // }, -- ]; - accidentManagementSystemApi() - .accidentView(ruleForm.value) - .then((res) => { -@@ -380,6 +394,7 @@ - }; - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value = [] - console.log(ruleForm); - isShowDialog.value = false; - }; -@@ -459,7 +474,7 @@ - getTreeList, - newTreeList, - closeDialog, -- fileListDemo, -+ successUploader - }; - }, - }); -Index: src/views/goalManagement/targetEscalation/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"记录\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" label=\"序号\" type=\"index\" width=\"80\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"检查值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"检查人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"检查时间\" />\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst tableData = ref();\r\n\t\tconst openDailog = (data: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\t// console.log(data)\r\n\t\t\ttableData.value = data;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdialogVisible,\r\n\t\t\ttableData,\r\n\t\t\topenDailog,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/Dailog.vue b/src/views/goalManagement/targetEscalation/component/Dailog.vue ---- a/src/views/goalManagement/targetEscalation/component/Dailog.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetEscalation/component/Dailog.vue (date 1660303400449) -@@ -1,15 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="记录" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="查看审批流程" width="50%" draggable> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" label="序号" type="index" width="80" /> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -- <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定部门" /> -- <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="value" label="检查值" /> -- <el-table-column align="center" prop="commitPersonId" label="检查人" /> -- <el-table-column align="center" prop="makeDate" label="检查时间" /> -+ <el-table-column property="workName" label="审批人" sortable></el-table-column> -+ <el-table-column property="title" label="审批标题" sortable></el-table-column> -+ <el-table-column property="approvePersonName" label="编写人" sortable></el-table-column> -+ <el-table-column property="approveMemo" label="审批意见" sortable></el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -@@ -22,14 +18,28 @@ - <script lang="ts"> - import { defineComponent, reactive, ref } from 'vue'; - import { FullScreen } from '@element-plus/icons-vue'; -+import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - setup() { - const dialogVisible = ref(false); -+ const form = ref({ -+ pageSize: 10, -+ pageIndex: 1, -+ searchParams: { -+ relateId: '', ////检查记录ID -+ relateType:"", -+ }, -+ }); - const tableData = ref(); -- const openDailog = (data: any) => { -+ const openDailog = (data: any,type:number) => { - dialogVisible.value = true; -- // console.log(data) -- tableData.value = data; -+ form.value.searchParams.relateId=data -+ form.value.searchParams.relateType=type -+ goalManagementApi().getworkApproveListCheckData(form.value).then(res=>{ -+ if(res.data.code==200){ -+ tableData.value=res.data.data -+ } -+ }) - }; - //全屏 - const full = ref(false); -@@ -46,6 +56,7 @@ - openDailog, - full, - toggleFullscreen, -+ form, - FullScreen, - }; - }, -Index: src/views/goalManagement/targetEscalation/component/TypeDailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/TypeDailog.vue b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue -new file mode 100644 ---- /dev/null (date 1660303400450) -+++ b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue (date 1660303400450) -@@ -0,0 +1,271 @@ -+<template> -+ <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="50%" draggable :fullscreen="full" :close-on-click-modal="false"> -+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -+ <el-form ref="ruleFormRef" :model="form" size="default" :disabled="disabled" label-width="120px"> -+ <div v-if="titleName=='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="titleName!='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="typeScope"> -+ <el-row> -+ <el-col> -+ <el-form-item label="审批结果" prop="authorUid"> -+ <el-radio-group v-model="form.approveResult"> -+ <el-radio :label="0">不通过</el-radio> -+ <el-radio :label="1">通过</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="审批意见" prop="approveMemo"> -+ <el-input v-model="form.approveMemo" type="textarea" placeholder="请填写审批意见"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="是否完成" prop="complete"> -+ <el-radio-group v-model="form.approveStatus"> -+ <el-radio :label="3">是</el-radio> -+ <el-radio :label="2">否</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <div v-if="form.approveStatus==2"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ </div> -+ </el-form> -+ <template #footer> -+ <span class="dialog-footer"> -+ <el-button @click="resetForm" size="default">关闭</el-button> -+ <el-button size="default" type="primary" @click="submitForm">确定</el-button> -+ </span> -+ </template> -+ </el-dialog> -+ <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> -+</template> -+<script lang="ts"> -+import { ref, defineComponent } from 'vue'; -+import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+import { Search, FullScreen } from '@element-plus/icons-vue'; -+export default defineComponent({ -+ components: { DailogSearchUserManger }, -+ setup(props, { emit }) { -+ const dialogVisible = ref(false); -+ const form = ref({ -+ workName: '', // 审批名称 -+ title: '', //审批标题 -+ approvePersonId: '', -+ approvePersonName: '', -+ approveStatus: 2, -+ approveResult: '', -+ relateType: 1, -+ relateId: '', -+ }); -+ // 提交 -+ const submitForm = () => { -+ if (titleName.value == '发起审批') { -+ goalManagementApi() -+ .getworkApproveAdd(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } else if (titleName.value == '审批') { -+ goalManagementApi() -+ .getworkApproveUpdata(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ // 关闭 -+ const resetForm = () => { -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ const titleName = ref(); -+ const typeScope = ref(); -+ const disabledT = ref(false); -+ const disabled = ref(false); -+ const formUp=ref({ -+ workName:"", -+ title:"", -+ approvePersonName:"" -+ }) -+ // 打开弹窗 -+ const openDialog = (title: string, name: string, id: number,type:number) => { -+ dialogVisible.value = true; -+ titleName.value = title; -+ form.value.relateType=type -+ if (title == '发起审批') { -+ form.value.relateId = id; -+ typeScope.value = false; -+ } else if (title == '审批'||title == '查看审批') { -+ goalManagementApi() -+ .getworkApproveDetail(id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ form.value = res.data.data; -+ form.value.approveStatus="" -+ formUp.value.workName=form.value.workName -+ formUp.value.title=form.value.title -+ formUp.value.approvePersonName=form.value.approvePersonName -+ if (form.value.approvePersonName === form.value.submitPersonName) { -+ disabled.value = false; -+ } else { -+ disabled.value = true; -+ } -+ } -+ }); -+ typeScope.value = true; -+ disabledT.value = true; -+ } -+ }; -+ // 打开用户选择弹窗 -+ const userRef = ref(); -+ const openUser = () => { -+ userRef.value.openDailog(); -+ }; -+ const onUser = (val: any) => { -+ form.value.approvePersonId = val[0].uid; -+ form.value.approvePersonName = val[0].realName; -+ }; -+ //全屏 -+ const full = ref(false); -+ const toggleFullscreen = () => { -+ if (full.value == false) { -+ full.value = true; -+ } else { -+ full.value = false; -+ } -+ }; -+ return { -+ formUp, -+ onUser, -+ dialogVisible, -+ form, -+ disabledT, -+ submitForm, -+ resetForm, -+ titleName, -+ typeScope, -+ disabled, -+ openDialog, -+ userRef, -+ openUser, -+ full, -+ toggleFullscreen, -+ Search, -+ FullScreen, -+ }; -+ }, -+}); -+</script> -+<style> -+.el-row { -+ padding-bottom: 20px; -+} -+</style> -\ No newline at end of file -Index: src/views/goalManagement/Incentivestandard/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select v-model=\"ruleForm.searchParams.standardType\" size=\"default\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"奖励\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"惩罚\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\" >新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" :disabled=\"warning\" plain :icon=\"EditPen\" @click=\"openD\">修改 </el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"handleSelectionChange\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"qname\" align=\"center\" label=\"奖惩名称\" sortable />\r\n\t\t\t\t<el-table-column property=\"name\" align=\"center\" label=\"奖惩类型\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<!-- <upData ref=\"upShow\"></upData> -->\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, upData, DailogAdd },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tstandardType: '', ////奖惩类型 1:奖励 2:惩罚\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.standardType = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentStandardList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.standardType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.standardType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/Incentivestandard/index.vue b/src/views/goalManagement/Incentivestandard/index.vue ---- a/src/views/goalManagement/Incentivestandard/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/Incentivestandard/index.vue (date 1660303400439) -@@ -27,7 +27,7 @@ - <div class="btns"> - <div> - <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')" >新建</el-button> -- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> -+ <!-- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="handleSelectionChange">删除</el-button> - </div> - <div> -Index: src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"769px\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :rules=\"rules\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人姓名\" prop=\"declareUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.declareUserName\" :disabled=\"disabled\" placeholder=\"请填写申报人姓名\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人性别\" prop=\"declareUserGender\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.declareUserGender\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">男</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">女</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人部门\" placeholder=\"请选择\" prop=\"declareDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.declareDepartmentId\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t:data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"工伤类型\" prop=\"workInjuryType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.workInjuryType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻微伤\" value=\"轻微伤\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻伤\" value=\"轻伤\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报日期\" prop=\"declareDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.declareDate\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"损失工时\" prop=\"lostTime\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.lostTime\" :disabled=\"disabled\" placeholder=\"请填写损失工时\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊医院\" prop=\"visitHospital\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitHospital\" :disabled=\"disabled\" placeholder=\"请填写就诊医院\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊结果\" prop=\"visitResult\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitResult\" :disabled=\"disabled\" placeholder=\"请填写就诊结果\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"注意事项\" prop=\"mattersNeedingAttention\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.mattersNeedingAttention\" :disabled=\"disabled\" placeholder=\"请填写注意事项\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"材料是否齐全\" prop=\"completeMaterials\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.completeMaterials\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"备注\" prop=\"remark\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.remark\" :disabled=\"disabled\" type=\"textarea\" placeholder=\"请填写备注\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"showRef\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n\treactive,\r\n\tref,\r\n\tdefineComponent,\r\n\tonMounted\r\n} from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance,FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\tdeclareUserName: '',\r\n\t\t\tdeclareUserGender: '',\r\n\t\t\tdeclareDepartmentId: '',\r\n\t\t\taccidentName:'',\r\n\t\t\taccidentExpressId: '',\r\n\t\t\tworkInjuryType: '',\r\n\t\t\tdeclareDate: '',\r\n\t\t\tlostTime: '',\r\n\t\t\tvisitHospital: '',\r\n\t\t\tvisitResult: '',\r\n\t\t\tmattersNeedingAttention: '',\r\n\t\t\tcompleteMaterials: '',\r\n\t\t\tremark: '',\r\n\t\t\tfileList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfileName: '',\r\n\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看工伤申报' || title == '修改工伤申报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentManagementSystem(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\tconst tree = [\r\n\t\t];\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\r\n\t\t];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 关闭弹窗\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdeclareUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人姓名不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareUserGender: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人性别不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人部门不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '事故名称不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tworkInjuryType: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '工伤类型不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDate: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报日期不能为空',\r\n\t\t\t\t trigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tlostTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '损失工时不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitHospital: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊医院不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitResult: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊结果不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmattersNeedingAttention: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '注意事项不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcompleteMaterials: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '材料状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tremark: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '备注不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\t// 事故名称弹窗\r\n\t\tconst showRef = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tshowRef.value.openDailog();\r\n\t\t};\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value.accidentName = item[0].accidentName\r\n\t\t\truleForm.value.occurrenceTime = item[0].occurrenceTime\r\n\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\tdelete ruleForm.value.id\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tdeclareUserName: '',\r\n\t\t\t\t\tdeclareUserGender: '',\r\n\t\t\t\t\tdeclareDepartmentId: '',\r\n\t\t\t\t\taccidentExpressId: '',\r\n\t\t\t\t\tworkInjuryType: '',\r\n\t\t\t\t\tdeclareDate: '',\r\n\t\t\t\t\tlostTime: '',\r\n\t\t\t\t\tvisitHospital: '',\r\n\t\t\t\t\tvisitResult: '',\r\n\t\t\t\t\tmattersNeedingAttention: '',\r\n\t\t\t\t\tcompleteMaterials: '',\r\n\t\t\t\t\tremark: '',\r\n\t\t\t\t\tfileList: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfileName: '',\r\n\t\t\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdaiInpt,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\ttree,\r\n\t\t\tshowRef,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tonSelectItem,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tpropse,\r\n\t\t\tcloseDialog,\r\n\t\t\tuploaderImg\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue ---- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (date 1660303400432) -@@ -81,7 +81,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <uploaderImg :fileList="fileList" :name="INCIDENT_MANAGE" -+ @successUploader="successUploader" :disabled="disabled"></uploaderImg> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -184,10 +185,35 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -@@ -241,6 +267,7 @@ - // 关闭弹窗 - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value=[] - isShowDialog.value = false; - }; - // 必填项提示 -@@ -346,12 +373,14 @@ - }; - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建工伤申报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - delete ruleForm.value.id -@@ -384,7 +413,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - accidentManagementSystemApi() -@@ -491,7 +519,9 @@ - newTreeList, - propse, - closeDialog, -- uploaderImg -+ uploaderImg, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"目标考核\" width=\"70%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n <el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n </el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" type=\"index\" label=\"序号\" width=\"70\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报时间\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核结果\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核时间\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n <DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport {deepClone} from \"/@/utils/other\";\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch ,DailogAdd},\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (e: object) => {\r\n\t\t\tform.value = e;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\r\n // 新增弹窗\r\n const index=ref<any>()\r\n const Show = ref();\r\n const daiAdd = (title: string, data: any) => {\r\n // index.value = formUp.targetDivideDetailList.indexOf(data);\r\n Show.value.openDailog(title, data);\r\n };\r\n const formUp = reactive({\r\n targetId: '', //关联的目标指标/外键\r\n delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n // targetDivideDetailList: [], //目标指标分解列表\r\n });\r\n\r\n const add = (val: any) => {\r\n const item = deepClone(val)\r\n if(index.value==-1){\r\n formUp.targetDivideDetailList.push(item);\r\n }else{\r\n formUp.targetDivideDetailList[index.value] = item;\r\n }\r\n\r\n // let obj=JSON.parse(JSON.stringify(form.value))\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\ttargetType,\r\n\t\t\tonNumber,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n daiAdd,\r\n index,\r\n Show,\r\n formUp,\r\n add,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/Dailog.vue b/src/views/goalManagement/safetyAssessment/component/Dailog.vue ---- a/src/views/goalManagement/safetyAssessment/component/Dailog.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/safetyAssessment/component/Dailog.vue (date 1660303400445) -@@ -1,5 +1,5 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable @close="closeDialog"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" label-width="120px"> - <el-row> -@@ -34,27 +34,38 @@ - <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -+ <el-table :data="formUp.examineList" style="width: 100%"> - <el-table-column align="center" type="index" label="序号" width="70" /> -- <el-table-column align="center" prop="date" label="责任部门" /> -- <el-table-column align="center" prop="name" label="考核指标" /> -- <el-table-column align="center" prop="address" label="制定部门" /> -- <el-table-column align="center" prop="address" label="制定日期" /> -- <el-table-column align="center" prop="address" label="上报值" /> -- <el-table-column align="center" prop="address" label="上报时间" /> -- <el-table-column align="center" prop="address" label="考核结果" /> -- <el-table-column align="center" prop="address" label="考核人" /> -- <el-table-column align="center" prop="address" label="考核时间" /> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> -+ <el-table-column align="center" prop="examineValue" label="考核指标" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定部门" /> -+ <el-table-column align="center" prop="makeDate" label="制定日期" /> -+ <el-table-column align="center" prop="uploadValue" label="上报值" /> -+ <el-table-column align="center" prop="uploadDate" label="上报时间" /> -+ <el-table-column align="center" prop="examineResult" label="考核结果" > -+ <template #default="scope"> -+ <div v-if="scope.row.examineResult==1"> -+ 合格 -+ </div> -+ <div v-if="scope.row.examineResult==2"> -+ 不合格 -+ </div> -+ </template> -+ </el-table-column> -+ <el-table-column align="center" prop="examinePersonName" label="考核人" /> -+ <el-table-column align="center" prop="examineDate" label="考核时间" /> - <el-table-column align="center" label="操作"> - <template #default="scope"> -- <el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('查看', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('修改', scope.row)">修改</el-button> -+ <el-button link type="primary" @click="Delete(scope.row)">删除</el-button> - </template> - </el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -- <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button @click="closeDialog" size="default">关闭</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -84,15 +95,62 @@ - disabled.value = title == '查看' ? true : false; - if (title == '查看' || title == '修改') { - goalManagementApi() -- .getTargetMngDetail(id) -+ .gettargetExamineDetail(id) - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ formUp.examineList = res.data.data.examineList -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ }; -+ const closeDialog = () => { -+ form.value = {} -+ formUp.examineList = [] -+ dialogVisible.value = false -+ }; -+ const submitForm = () => { -+ // formUp.delTargetDivideDetails = arr.value.toString(); -+ // formUp.targetId = form.value.id; -+ dialogVisible.value = false; -+ for(let i=0;i<formUp.examineList.length;i++){ -+ delete formUp.examineList[i].dutyDepartmentName -+ delete formUp.examineList[i].makerDepartmentName -+ } -+ formUp.id = form.value.id -+ formUp.delIds = arr.value.toString(); -+ goalManagementApi() -+ .gettargetExamineAddOrUpdate(formUp) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('addList'); - } else { - ElMessage.error(res.data.msg); - } - }); -- } -+ form.value = { -+ qName: '', -+ indexNum: '', -+ year: '', -+ value: '', -+ examineList: [], -+ }; -+ tableData.value = []; -+ formUp.targetId = ''; -+ formUp.delTargetDivideDetails = ''; -+ formUp.examineList = []; -+ }; -+ const arr = ref([]); -+ // 删除 -+ const Delete = (data: any) => { -+ formUp.examineList.splice(form.value.examineList.indexOf(data), 1); -+ arr.value.push(data.id); - }; - const onNumber = (e: object) => { - form.value = e; -@@ -107,29 +165,30 @@ - Shows.value.openDailog(targetType.value); - }; - -- // 新增弹窗 -- const index=ref<any>() -- const Show = ref(); -- const daiAdd = (title: string, data: any) => { -- // index.value = formUp.targetDivideDetailList.indexOf(data); -- Show.value.openDailog(title, data); -- }; -- const formUp = reactive({ -- targetId: '', //关联的目标指标/外键 -- delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -- // targetDivideDetailList: [], //目标指标分解列表 -- }); -+ // 新增弹窗 -+ const index=ref<any>() -+ const Show = ref(); -+ const daiAdd = (title: string, data: any) => { -+ index.value = formUp.examineList.indexOf(data); -+ Show.value.openDailog(title, data); -+ }; -+ const formUp = reactive({ -+ targetId: '', //关联的目标指标/外键 -+ delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -+ examineList: [], //目标指标分解列表 -+ }); - -- const add = (val: any) => { -- const item = deepClone(val) -- if(index.value==-1){ -- formUp.targetDivideDetailList.push(item); -- }else{ -- formUp.targetDivideDetailList[index.value] = item; -- } -- -- // let obj=JSON.parse(JSON.stringify(form.value)) -- }; -+ const add = (val: any) => { -+ const item = deepClone(val) -+ if(index.value==-1){ -+ -+ formUp.examineList.push(item); -+ }else{ -+ formUp.examineList[index.value] = item; -+ } -+ console.log(formUp) -+ // let obj=JSON.parse(JSON.stringify(form.value)) -+ }; - - //全屏 - const full = ref(false); -@@ -156,11 +215,14 @@ - full, - toggleFullscreen, - FullScreen, -- daiAdd, -- index, -- Show, -- formUp, -- add, -+ daiAdd, -+ index, -+ Show, -+ formUp, -+ add, -+ closeDialog, -+ submitForm, -+ Delete - }; - }, - }); -Index: src/views/goalManagement/targetSettings/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"ruleForm.searchParams.targetType\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t<el-button type=\"danger\" :disabled=\"danger\" size=\"default\" @click=\"onDeleteAll\" :icon=\"Delete\" plain>删除</el-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(年)\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(月)\" name=\"2\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"level\" label=\"指标级别\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"completeDate\" label=\"完成期限\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"状态\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 1\">已分解</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 2\">未分解</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<dailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></dailogAdd>\r\n\t\t\t<upData ref=\"upShow\"></upData>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport dailogAdd from './component/dailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, dailogAdd, upData },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst small = ref(false);\r\n\t\tconst disabled = ref(false);\r\n\t\tconst background = ref(false);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDialog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\t// const warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\t// warning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 上传\r\n\t\t// const upShow = ref();\r\n\t\t// const upButton = () => {\r\n\t\t// \tupShow.value.openDialog();\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\thandleClick,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\t// upShow,\r\n\t\t\t// upButton,\r\n\t\t\tsmall,\r\n\t\t\tdisabled,\r\n\t\t\tbackground,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonAddorUpdata,\r\n\t\t\tonDelete,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tdeletAll,\r\n\t\t\tdanger,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/index.vue b/src/views/goalManagement/targetSettings/index.vue ---- a/src/views/goalManagement/targetSettings/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetSettings/index.vue (date 1660303400452) -@@ -102,6 +102,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/safetyAssessment/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable @close=\"resetForm(ruleFormRef)\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"责任部门\" prop=\"dutyDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.dutyDepartmentId\" check-strictly=\"true\" :data=\"data\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核指标\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.value\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"制定人部门\" prop=\"makerDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.makerDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"制定日期\" prop=\"makeDate\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"上报值\" prop=\"commitPersonName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.commitPersonName\">\r\n<!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"上报时间\" prop=\"makeDate\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n\t\t\t</el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核结果\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"考核人\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核时间\" prop=\"commitPersonName\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\"></el-col>\r\n </el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearchUser ref=\"Show\" @SearchUser=\"onUser\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive, onMounted } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport DailogSearchUser from '../../../../components/DailogSearchUser/index.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser },\r\n\tsetup(props, { emit }) {\r\n\t\tconst ruleFormRef = ref<FormInstance>()\r\n\t\tconst form = ref({\r\n\t\t\tdutyDepartmentId: '', ////责任部门/外键\r\n\t\t\tmakerDepartmentId: '', ////制定人部门/外键\r\n\t\t\tcommitPersonId: '', ////上报人/外键\r\n\t\t\tcommitPersonName: '',\r\n\t\t\tvalue: '', ////考核指标值\r\n\t\t\tmakeDate: '', ////制定日期\r\n\t\t});\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst disabled = ref(false);\r\n\t\t// 开启弹窗\r\n\t\tconst titles = ref();\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst openDailog = (title: string, data: any) => {\r\n\t\t\ttitles.value = `${title}目标考核`;\r\n\t\t\tif (title == '查看') {\r\n\t\t\t\tdisabled.value = true;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else if (title == '修改') {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t}\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 开启用户弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdutyDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '责任部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakerDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定人部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '上报人不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '考核指标值不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'number',\r\n\t\t\t\t\tmessage: '考核指标值只能为数字类型',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakeDate: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonName: [],\r\n\t\t});\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\temit('onAdd', form.value);\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\t// handleClose(formEl)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\t// console.log(formEl);\r\n\t\t\tif (!formEl) return\r\n\t\t\tformEl.resetFields();\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value={}\r\n\t\t};\r\n\t\t// const handleClose = (formEl: any) => {\r\n\t\t// \tformEl.resetFields();\r\n\t\t// };\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\tconsole.log(e)\r\n\t\t\tform.value.commitPersonId = e.uid;\r\n\t\t\tform.value.commitPersonName = e.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\t// handleClose,\r\n\t\t\tform,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tShow,\r\n\t\t\topenUser,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tdata,\r\n\t\t\tonUser,\r\n\t\t\truleFormRef,\r\n\t\t\trules,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue ---- a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (date 1660303400446) -@@ -5,19 +5,20 @@ - <el-row> - <el-col :span="11"> - <el-form-item label="责任部门" prop="dutyDepartmentId" size="default"> -- <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核指标" prop="value" size="default"> -- <el-input v-model.number="form.value" /> -+ <el-form-item label="考核指标" prop="examineValue" size="default"> -+ <el-input v-model.number="form.examineValue" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="制定人部门" prop="makerDepartmentId" size="default"> -- <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" -+ @current-change="makerDepartmentName" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -@@ -28,29 +29,30 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="上报值" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="上报值" prop="uploadValue" size="default"> -+ <el-input v-model="form.uploadValue"> - <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> - </el-input> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="上报时间" prop="makeDate" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="上报时间" prop="uploadDate" size="default"> -+ <el-date-picker v-model="form.uploadDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核结果" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -- <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> -- </el-input> -+ <el-form-item label="考核结果" prop="examineResult" size="default"> -+ <el-select v-model="form.examineResult" placeholder="请选择" style="width: 100%"> -+ <el-option label="合格" :value="1" /> -+ <el-option label="不合格" :value="2" /> -+ </el-select> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核人" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="考核人" prop="examinePersonName" size="default"> -+ <el-input v-model="form.examinePersonName"> - <template #append> <el-button :icon="Search" @click="openUser" /> </template> - </el-input> - </el-form-item> -@@ -58,8 +60,8 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核时间" prop="commitPersonName" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="考核时间" prop="examineDate" size="default"> -+ <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"></el-col> -@@ -87,12 +89,15 @@ - setup(props, { emit }) { - const ruleFormRef = ref<FormInstance>() - const form = ref({ -- dutyDepartmentId: '', ////责任部门/外键 -- makerDepartmentId: '', ////制定人部门/外键 -- commitPersonId: '', ////上报人/外键 -- commitPersonName: '', -- value: '', ////考核指标值 -- makeDate: '', ////制定日期 -+ "dutyDepartmentId": '', ////责任部门id/外键 -+ "examineDate": '', ////考核时间 -+ "examinePersonId": '', ////考核人ID/外键 -+ "examineResult": '', ////考核结果 1:合格 2:不合格 -+ "examineValue": '', ////考核指标 -+ "makeDate": '', ////制定日期 -+ "makerDepartmentId": '', ////制定部门/外键 -+ "uploadDate": '', ////上报时间 -+ "uploadValue": "", ////上报值 - }); - //部门 - const department = () => { -@@ -158,7 +163,7 @@ - trigger: 'blur', - }, - ], -- value: [ -+ examineValue: [ - { - required: true, - message: '考核指标值不能为空', -@@ -179,6 +184,13 @@ - ], - commitPersonName: [], - }); -+ const dutyName=(data:any)=>{ -+ form.value.dutyDepartmentName=data.depName -+ } -+ const makerDepartmentName=(data:any)=>{ -+ form.value.makerDepartmentName=data.depName -+ } -+ - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -214,8 +226,8 @@ - const data = ref(); - const onUser = (e: any) => { - console.log(e) -- form.value.commitPersonId = e.uid; -- form.value.commitPersonName = e.realName; -+ form.value.examinePersonId = e.uid; -+ form.value.examinePersonName = e.realName; - }; - return { - disabled, -@@ -238,6 +250,8 @@ - rules, - submitForm, - resetForm, -+ dutyName, -+ makerDepartmentName - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentReport/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"800px\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故快报\" prop=\"accidentExpressId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.accidentDepartmentName\" class=\"input-with-select\" />-->\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"accidentDepartmentId\" :disabled=\"true\" :data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\t\t\t\t:props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"occurrencePlace\" :disabled=\"true\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故类别\" prop=\"accidentType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人员伤亡事故\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"火灾爆炸事故\" value=\"火灾爆炸事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"危险品泄露事故\" value=\"危险品泄露事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"设备事故\" value=\"设备事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"工艺事故\" value=\"工艺事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故等级\" prop=\"accidentGrade\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentGrade\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特别重大\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大\" value=\"重大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大\" value=\"较大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般\" value=\"一般\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"经济损失\" prop=\"economicLoss\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.economicLoss\" :disabled=\"disabled\" placeholder=\"请填写经济损失\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"轻伤人数\" prop=\"minorInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.minorInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写轻伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"重伤人数\" prop=\"seriousInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.seriousInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写重伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"死亡人数\" prop=\"deathNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.deathNum\" :disabled=\"disabled\" placeholder=\"请填写死亡人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" placeholder=\"请填写事故原因\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"要求报告完成期限\" prop=\"reportDeadline\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.reportDeadline\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故级别\" prop=\"accidentLevel\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentLevel\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特大事故\" value=\"特大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大事故\" value=\"重大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大事故\" value=\"较大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般事故\" value=\"一般事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故延期申请\" prop=\"accidentDelayApply\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentDelayApply\" :disabled=\"disabled\" placeholder=\"请填写事故延期申请\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(直接分析)\" prop=\"comprehensiveAnalysisDirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisDirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(直接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(间接分析)\" prop=\"comprehensiveAnalysisIndirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisIndirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(间接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"整改措施\" prop=\"rectificationMeasures\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.rectificationMeasures\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写整改措施\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故处理\" prop=\"accidentHandling\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentHandling\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写事故处理\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写人\" prop=\"fillInUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.fillInUserName\" :disabled=\"true\"\r\n\t\t\t\t\t\t\t\t\t placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写日期\" prop=\"fillInTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.fillInTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"事故照片\">-->\r\n\t\t\t\t\t<!-- <el-input v-model=\"ruleForm.describe\" type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关人员笔录\" prop=\"relevantPersonnelRecords\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.relevantPersonnelRecords\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写相关人员笔录\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故状态\" prop=\"status\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.status\" :disabled=\"statusDisabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"处理中\" :value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"已处理\" :value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故分析会议纪要\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"其他材料\" prop=\"otherMaterials\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.otherMaterials\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写其他材料\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"Shows\" />\r\n\t\t<DailogSearchUserManger @SearchUser=\"onUser\" ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent,onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\taccidentExpressId:'',\r\n\r\n\t\t\taccidentType: '',\r\n\t\t\taccidentGrade: '',\r\n\t\t\teconomicLoss: '',\r\n\t\t\tminorInjuryNum: '',\r\n\t\t\tseriousInjuryNum: '',\r\n\t\t\tdeathNum: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\treportDeadline: '',\r\n\t\t\taccidentLevel: '',\r\n\t\t\taccidentDelayApply: '',\r\n\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\trectificationMeasures: '',\r\n\t\t\taccidentHandling: '',\r\n\t\t\tfillInUserUid: '',\r\n\t\t\tfillInUserName:'',\r\n\t\t\tfillInTime: '',\r\n\t\t\trelevantPersonnelRecords: '',\r\n\t\t\totherMaterials: '',\r\n\t\t\tfileList: [],\r\n\t\t\tstatus:''\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\tconst statusDisabled = ref(true)\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif(statusDisabledFlag.value=='first'){\r\n\t\t\t\truleForm.value.status = 1\r\n\t\t\t}else if(statusDisabledFlag.value=='second'){\r\n\t\t\t\truleForm.value.status = 2\r\n\t\t\t}\r\n\t\t\tif (title == '修改事故报告') {\r\n\t\t\t\tstatusDisabled.value = false\r\n\t\t\t}else {\r\n\t\t\t\tstatusDisabled.value = true\r\n\t\t\t}\r\n\t\t\tif (title == '查看事故报告' || title == '修改事故报告') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentReport(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\taccidentName.value = res.data.data.accidentName\r\n\t\t\t\t\t\t\taccidentDepartmentId.value = res.data.data.accidentDepartmentId\r\n\t\t\t\t\t\t\toccurrencePlace.value = res.data.data.occurrencePlace\r\n\t\t\t\t\t\t\toccurrenceTime.value = res.data.data.occurrenceTime\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst onCancel = (formEl: FormInstance | undefined) => {\r\n\t\t\tresetForm(formEl);\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\t\t];\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentExpressId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '快报不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentType: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故类别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentGrade: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故等级不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\teconomicLoss: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '经济损失不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\treportDeadline: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '要求报告完成期限不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentLevel: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故级别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisDirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(直接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisIndirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(间接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\trectificationMeasures: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '整改措施不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentHandling: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故处理不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写人不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'date',\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tstatus: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst accidentDepartmentId = ref()\r\n\t\tconst occurrencePlace = ref()\r\n\t\tconst occurrenceTime = ref()\r\n\t\tconst accidentName = ref()\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item[0]);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\taccidentName.value = item[0].accidentName\r\n\t\t\taccidentDepartmentId.value = item[0].accidentDepartmentId\r\n\t\t\toccurrencePlace.value = item[0].occurrencePlace\r\n\t\t\toccurrenceTime.value = item[0].occurrenceTime\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\tdelete ruleForm.value.accidentDepartmentId\r\n\t\t\tdelete ruleForm.value.occurrencePlace\r\n\t\t\tdelete ruleForm.value.occurrenceTime\r\n\r\n\t\t\tif (title == '新建事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.addAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\t//TODO 上传组件待定\r\n\t\t\t\t\t\truleForm.value.fileList = []\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.editAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\taccidentExpressId:'',\r\n\r\n\t\t\t\t\taccidentType: '',\r\n\t\t\t\t\taccidentGrade: '',\r\n\t\t\t\t\teconomicLoss: '',\r\n\t\t\t\t\tminorInjuryNum: '',\r\n\t\t\t\t\tseriousInjuryNum: '',\r\n\t\t\t\t\tdeathNum: '',\r\n\t\t\t\t\taccidentCause: '',\r\n\t\t\t\t\treportDeadline: '',\r\n\t\t\t\t\taccidentLevel: '',\r\n\t\t\t\t\taccidentDelayApply: '',\r\n\t\t\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\t\t\trectificationMeasures: '',\r\n\t\t\t\t\taccidentHandling: '',\r\n\t\t\t\t\tfillInUserUid: '',\r\n\t\t\t\t\tfillInUserName:'',\r\n\t\t\t\t\tfillInTime: '',\r\n\t\t\t\t\trelevantPersonnelRecords: '',\r\n\t\t\t\t\totherMaterials: '',\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\tstatus:''\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\t// ruleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value = {}\r\n\t\t\taccidentName.value = ''\r\n\t\t\taccidentDepartmentId.value = ''\r\n\t\t\toccurrencePlace.value = ''\r\n\t\t\toccurrenceTime.value = ''\r\n\t\t};\r\n\t\tconst handleChange = (val: number) => {\r\n\t\t\tconsole.log(val);\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\tconst onUser = (userItem: any) => {\r\n\t\t\truleForm.value.fillInUserUid = userItem[0].uid;\r\n\t\t\truleForm.value.fillInUserName = userItem[0].realName;\r\n\t\t};\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tonCancel,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tonUser,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\thandleChange,\r\n\t\t\tonSelectItem,\r\n\t\t\tnewTreeList,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tpropse,\r\n\t\t\tstatusDisabled,\r\n\t\t\taccidentDepartmentId,\r\n\t\t\toccurrencePlace,\r\n\t\t\toccurrenceTime,\r\n\t\t\taccidentName\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label {\r\n\theight: 100%;\r\n\ttext-align: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (date 1660303400431) -@@ -166,11 +166,11 @@ - /> - </el-form-item> - </el-col> -- <!-- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">--> -- <!-- <el-form-item label="事故照片">--> -- <!-- <el-input v-model="ruleForm.describe" type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <!-- </el-form-item>--> -- <!-- </el-col>--> -+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -+ <el-form-item label="事故照片"> -+ <uploaderImg :fileList="ruleForm.expressFileList" :disabled="true"></uploaderImg> -+ </el-form-item> -+ </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="相关人员笔录" prop="relevantPersonnelRecords"> - <el-input v-model="ruleForm.relevantPersonnelRecords" :disabled="disabled" -@@ -186,8 +186,9 @@ - </el-form-item> - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -- <el-form-item label="事故分析会议纪要" prop="fileList"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <el-form-item label="事故分析会议纪要"> -+ <uploaderFile :fileList="fileList" :systemName="'INCIDENT_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -221,6 +222,7 @@ - import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue'; - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import uploaderImg from '/@/components/uploaderImg/index.vue'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - import { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources'; - import { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration'; - import { goalManagementApi } from '/@/api/goalManagement'; -@@ -231,7 +233,8 @@ - AccidentName, - DailogSearchUserManger, - RegionsDialog, -- uploaderImg -+ uploaderImg, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false); -@@ -266,6 +269,8 @@ - const titles = ref(); - const disabled = ref(); - const statusDisabled = ref(true) -+ // 上传附件 -+ const fileList = ref([]); - // 打开弹窗 - const openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => { - isShowDialog.value = true; -@@ -291,18 +296,53 @@ - accidentDepartmentId.value = res.data.data.accidentDepartmentId - occurrencePlace.value = res.data.data.occurrencePlace - occurrenceTime.value = res.data.data.occurrenceTime -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ //事故照片 -+ if(ruleForm.value.expressFileList){ -+ for(var a = 0;a<ruleForm.value.expressFileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(ruleForm.value.expressFileList[a].fileName) -+ .then((res) => { -+ ruleForm.value.expressFileList[a].url = res.data -+ console.log('ruleForm',ruleForm) -+ }) -+ } -+ }else { -+ ruleForm.value.expressFileList = [] -+ } -+ -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 取消 - const onCancel = (formEl: FormInstance | undefined) => { - resetForm(formEl); - }; - //日期选择器 - const value1 = ref(''); -- // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ - // 可选择树 - const treeSelect = ref(); - //定义树形下拉框 -@@ -423,7 +463,9 @@ - delete ruleForm.value.accidentDepartmentId - delete ruleForm.value.occurrencePlace - delete ruleForm.value.occurrenceTime -- -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故报告') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -458,7 +500,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - //TODO 上传组件待定 -- ruleForm.value.fileList = [] - isShowDialog.value = false; - accidentManagementSystemApi() - .editAccidentReport(ruleForm.value) -@@ -512,12 +553,14 @@ - }; - } - }; -+ - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); - // ruleForm.value.accidentExpressId = item[0].id - ruleForm.value = {} -+ fileList.value = [] - accidentName.value = '' - accidentDepartmentId.value = '' - occurrencePlace.value = '' -@@ -629,7 +672,9 @@ - accidentDepartmentId, - occurrencePlace, - occurrenceTime, -- accidentName -+ accidentName, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" placeholder=\"请输入目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"考核指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<Dailog ref=\"openAdd\"></Dailog>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tvar arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\thandleClick,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttotal,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/index.vue b/src/views/goalManagement/safetyAssessment/index.vue ---- a/src/views/goalManagement/safetyAssessment/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/safetyAssessment/index.vue (date 1660303400446) -@@ -39,7 +39,7 @@ - <template #default="scope"> - <el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button> - <el-button link type="primary" size="default" :icon="View" @click="openD('修改', scope.row.id)">修改</el-button> -- <el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button> -+ <!--<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button>--> - </template> - </el-table-column> - </el-table> -Index: src/views/goalManagement/targetSettings/component/dailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"Shows\" @close=\"handleClose(ruleFormRef)\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" ref=\"ruleFormRef\" :rules=\"rules\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" prop=\"qName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" prop=\"indexNum\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" placeholder=\"请填写目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" prop=\"year\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.year\" maxlength=\"8\" placeholder=\"请填写年度\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" placeholder=\"请填写指标值\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"指标级别\" size=\"default\" prop=\"level\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.level\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t<el-option label=\"公司级\" :value=\"1\">公司级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"部门分厂级\" :value=\"2\">部门分厂级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"工段班组级\" :value=\"3\">工段班组级</el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"完成期限\" size=\"default\" prop=\"completeDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.completeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t<el-input v-model=\"form.memo\" size=\"default\" type=\"textarea\" />\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"titles == '查看目标设定' ? false : true\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue';\r\nimport screenfull from 'screenfull';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup(props, { emit }) {\r\n\t\tlet Shows = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tqName: '', //安全目标指标\r\n\t\t\tyear: '', //年度\r\n\t\t\tlevel: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttargetType: '', ////指标类型 1:年指标 2:月指标\r\n\t\t\tcompleteDate: '', ////完成期限\r\n\t\t\tdivideStatus: '2', ////分解状态 1:已分解 2:未分解\r\n\t\t\tvalue: '', ////指标值\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, value: any, id: number) => {\r\n\t\t\tShows.value = true;\r\n\t\t\ttitles.value = `${title}目标设定`;\r\n\t\t\tform.value.targetType = value;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '安全目标指标不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tindexNum: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '目标指标编号不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyear: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '年度不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '指标值不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tlevel:[],\r\n\t\t\tcompleteDate:[],\r\n\t\t\tmemo:[]\r\n\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tShows.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngAddOrupdata(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tShows.value = false;\r\n\t\t};\r\n\t\tconst handleClose = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\thandleClose,\r\n\t\t\ttitles,\r\n\t\t\tShows,\r\n\t\t\tform,\r\n\t\t\tfull,\r\n\t\t\tdisabled,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\trules,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/component/dailogAdd.vue b/src/views/goalManagement/targetSettings/component/dailogAdd.vue ---- a/src/views/goalManagement/targetSettings/component/dailogAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/targetSettings/component/dailogAdd.vue (date 1660303400451) -@@ -38,7 +38,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="完成期限" size="default" prop="completeDate"> -- <el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.completeDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -56,6 +63,7 @@ - </template> - <script lang="ts"> - import { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue'; -+// import { timeDate } from '/@/assets/index.ts'; - import screenfull from 'screenfull'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -@@ -90,11 +98,25 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.completeDate = timeC(form.value.completeDate); - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - //全屏 - const full = ref(false); - const toggleFullscreen = () => { -@@ -133,10 +155,9 @@ - trigger: 'change', - }, - ], -- level:[], -- completeDate:[], -- memo:[] -- -+ level: [], -+ completeDate: [], -+ memo: [], - }); - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { -@@ -158,7 +179,7 @@ - formEl.resetFields(); - } - }); -- formEl.resetFields(); -+ formEl.resetFields(); - } else { - console.log('error submit!', fields); - } -@@ -174,9 +195,11 @@ - formEl.resetFields(); - }; - return { -+ timeC, - openDialog, - handleClose, - titles, -+ // timeDate, - Shows, - form, - full, -Index: src/views/goalManagement/TargetBook/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择岗位\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.pass\" placeholder=\"岗位名称\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"11\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"submitForm(ruleFormRef)\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm(ruleFormRef)\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"岗位名称\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[100, 200, 300, 400]\"\r\n\t\t\t\t\t:small=\"small\"\r\n\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t:background=\"background\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"400\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.id }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup(props,{emit}) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpass: '',\r\n\t\t\tcheckPass: '',\r\n\t\t});\r\n\t\t// 表格\r\n\t\tconst tableData = [\r\n\t\t\t{ id:1,\r\n\t\t\t\tdate: '2016-05-03',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid:2,\r\n\t\t\t\tdate: '2016-05-02',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\t\r\n\t\t\t\tid:3,\t\r\n\t\t\t\tdate: '2016-05-04',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\tid:4,\r\n\t\t\t\tdate: '2016-05-01',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t];\r\n\t\tconst pageSize4 = ref(100);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\tconsole.log(`${val} items per page`);\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\tconsole.log(`current page: ${val}`);\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t\tconst submitForm=()=>{\r\n\t\t\tlet obj=JSON.parse(JSON.stringify(dynamicTags.value))\r\n\t\t\temit(\"backNum\",obj[0])\r\n\t\t\tdialogVisible.value = false\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogSearch.vue b/src/views/goalManagement/TargetBook/component/DailogSearch.vue ---- a/src/views/goalManagement/TargetBook/component/DailogSearch.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/TargetBook/component/DailogSearch.vue (date 1660303400441) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -- <el-table-column align="center"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > -+ <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -59,7 +59,7 @@ - :disable-transitions="false" - @close="handleClose(tag)" - > -- {{ tag.id }} -+ {{ tag.date }} - </el-tag> - </div> - </el-col> -@@ -89,24 +89,24 @@ - // 表格 - const tableData = [ - { id:1, -- date: '2016-05-03', -+ date: '岗位1', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - id:2, -- date: '2016-05-02', -+ date: '岗位2', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - id:3, -- date: '2016-05-04', -+ date: '岗位3', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { id:4, -- date: '2016-05-01', -+ date: '岗位4', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -Index: src/components/uploaderImg/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-upload\r\n\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\tlist-type=\"picture-card\"\r\n\t\t\t:on-preview=\"handlePictureCardPreview\"\r\n\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t:on-success=\"successFile\"\r\n\t\t\t:on-error=\"errorFile\"\r\n\t>\r\n\t\t<el-icon><Plus /></el-icon>\r\n\t</el-upload>\r\n\r\n\t<el-dialog v-model=\"dialogVisible\">\r\n\t\t<img w-full :src=\"dialogImageUrl\" alt=\"Preview Image\" />\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\n\timport { ref,defineComponent } from 'vue'\r\n\timport { Plus } from '@element-plus/icons-vue'\r\n\timport type { UploadProps, UploadUserFile } from 'element-plus'\r\n\r\n\texport default defineComponent({\r\n\t\tprops: {\r\n\t\t\t// svg 图标组件名字\r\n\t\t\tfileList: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t},\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tPlus\r\n\t\t},\r\n\t\tsetup() {\r\n\r\n\t\t\tconst dialogImageUrl = ref('')\r\n\t\t\tconst dialogVisible = ref(false)\r\n\r\n\t\t\tconst handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\t\tconsole.log(uploadFile, uploadFiles)\r\n\t\t\t}\r\n\r\n\t\t\tconst handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\t\tdialogImageUrl.value = uploadFile.url!\r\n\t\t\t\tdialogVisible.value = true\r\n\t\t\t}\r\n\r\n\t\t\tconst successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(response, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\t\t\tconst errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(error, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\r\n\r\n\t\t\treturn {\r\n\t\t\t\tdialogImageUrl,\r\n\t\t\t\tdialogVisible,\r\n\t\t\t\thandleRemove,\r\n\t\t\t\thandlePictureCardPreview,\r\n\t\t\t\tsuccessFile,\r\n\t\t\t\terrorFile\r\n\t\t\t};\r\n\t\t},\r\n\t});\r\n</script> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderImg/index.vue b/src/components/uploaderImg/index.vue ---- a/src/components/uploaderImg/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/components/uploaderImg/index.vue (date 1660303400399) -@@ -1,12 +1,13 @@ - <template> - <el-upload -- v-model:file-list="fileList" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- list-type="picture-card" -- :on-preview="handlePictureCardPreview" -- :on-remove="handleRemove" -- :on-success="successFile" -- :on-error="errorFile" -+ v-model:file-list="fileList" -+ :disabled="disabled" -+ :http-request="uploadSectionFile" -+ list-type="picture-card" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" - > - <el-icon><Plus /></el-icon> - </el-upload> -@@ -16,50 +17,141 @@ - </el-dialog> - </template> - <script lang="ts"> -- import { ref,defineComponent } from 'vue' -- import { Plus } from '@element-plus/icons-vue' -- import type { UploadProps, UploadUserFile } from 'element-plus' -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; - -- export default defineComponent({ -- props: { -- // svg 图标组件名字 -- fileList: { -- type: Array, -- }, -+export default defineComponent({ -+ props: { -+ // svg 图标组件名字 -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, - }, -- components: { -- Plus -- }, -- setup() { -- -- const dialogImageUrl = ref('') -- const dialogVisible = ref(false) -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); - -- const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -- console.log(uploadFile, uploadFiles) -- } -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ }; - -- const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -- dialogImageUrl.value = uploadFile.url! -- dialogVisible.value = true -- } -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ dialogImageUrl.value = uploadFile.url!; -+ dialogVisible.value = true; -+ }; - -- const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(response, uploadFile,uploadFiles) -- } -- const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(error, uploadFile,uploadFiles) -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] - } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; - -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; - -- return { -- dialogImageUrl, -- dialogVisible, -- handleRemove, -- handlePictureCardPreview, -- successFile, -- errorFile -- }; -- }, -- }); --</script> -\ No newline at end of file -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -Index: src/views/goalManagement/TargetBook/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.jobId\" placeholder=\"请选择岗位\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openSearch\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"index\" label=\"序号\" align=\"center\" width=\"70\" />\r\n\t\t\t\t<el-table-column property=\"jobId\" align=\"center\" label=\"岗位\" sortable />\r\n\t\t\t\t<el-table-column property=\"signDate\" align=\"center\" label=\"责任书签订日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column property=\"extraFile\" align=\"center\" label=\"附件\" sortable />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" style=\"width: 300px\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearch ref=\"openUser\"></DailogSearch>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearch from './component/DailogSearch.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearch },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tjobId: '', ////岗位号/外键\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.jobId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.jobId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.jobId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\topenSearch,\r\n\t\t\ttimeDate,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/index.vue b/src/views/goalManagement/TargetBook/index.vue ---- a/src/views/goalManagement/TargetBook/index.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/TargetBook/index.vue (date 1660303400441) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.jobId" placeholder="请选择岗位"> -+ <el-input v-model="jobName" placeholder="请选择岗位"> - <template #append> <el-button :icon="Search" @click="openSearch" /> </template - ></el-input> - </el-form-item> -@@ -61,7 +61,7 @@ - /> - </div> - <DailogAdd ref="openAdd" @navAddorUpdata="onAddorUpdata"></DailogAdd> -- <DailogSearch ref="openUser"></DailogSearch> -+ <DailogSearch ref="openUser" @backNum="IdNumber"></DailogSearch> - </div> - </div> - </template> -@@ -88,6 +88,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.jobId = ''; -+ jobName.value="" - listApi(); - }; - const listApi = () => { -@@ -116,6 +117,11 @@ - const onAddorUpdata = () => { - listApi(); - }; -+ const jobName=ref() -+ const IdNumber=(val:any)=>{ -+ ruleForm.jobId=val.id -+ jobName.value=val.date -+ } - // 表格 - const tableData = ref(); - const currentPage4 = ref(); -@@ -222,6 +228,7 @@ - openUser.value.openDailog(); - }; - return { -+ IdNumber, - ruleForm, - resetForm, - listApi, -Index: src/views/goalManagement/TargetBook/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"岗位\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.jobId\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书签订日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.signDate\" style=\"width:100%\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择日期时间\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书附件\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"IdNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\textraFile: '666', //责任书附件\r\n\t\t\tjobId: '', //岗位\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value =`${title}目标责任书`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.gettargetDutyfileInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoAddorUpdata(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\tconst IdNumber=(val:any)=>{\r\n form.value.jobId=val.id\r\n\t\t}\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tIdNumber,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\topenDailog,\r\n\t\t\tdaiInpt,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShows,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogAdd.vue b/src/views/goalManagement/TargetBook/component/DailogAdd.vue ---- a/src/views/goalManagement/TargetBook/component/DailogAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/goalManagement/TargetBook/component/DailogAdd.vue (date 1660303400440) -@@ -1,11 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" :disabled="disabled" label-width="120px"> - <el-row> - <el-col :span="24"> - <el-form-item label="岗位" size="default"> -- <el-input v-model="form.jobId" placeholder="请选择"> -+ <el-input v-model="form.jobName" placeholder="请选择"> - <template #append> <el-button :icon="Search" @click="daiInpt" /> </template - ></el-input> - </el-form-item> -@@ -14,7 +14,7 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书签订日期" size="default"> -- <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> -+ <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> - </el-form-item> - </el-col> - </el-row> -@@ -28,22 +28,8 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -64,8 +50,9 @@ - import { ElMessage, ElMessageBox } from 'element-plus'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearch }, -+ components: { DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const form = ref({ -@@ -88,14 +75,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.signDate=timeC(form.value.signDate) -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 提交 - const submitForm = () => { - dialogVisible.value = false; -+ delete form.value.jobName - goalManagementApi() - .gettargetDutyfileInfoAddorUpdata(form.value) - .then((res) => { -@@ -127,6 +170,7 @@ - extraFile: '666', //责任书附件 - jobId: '', //岗位 - }; -+ fileList.value = [] - }; - // 安全目标指标弹窗 - const Shows = ref(); -@@ -135,17 +179,10 @@ - }; - const IdNumber=(val:any)=>{ - form.value.jobId=val.id -+ form.value.jobName=val.date - } - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -+ const fileList = ref([ - ]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { -@@ -176,6 +213,7 @@ - } - }; - return { -+ timeC, - IdNumber, - dialogVisible, - form, -@@ -195,6 +233,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -Index: src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"769px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"drillName\">\r\n <el-input v-model=\"ruleForm.drillName\" placeholder=\"请填写演练名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input v-model=\"ruleForm.drillAddress\" placeholder=\"请填写演练地点\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.departmentId\"\r\n :data=\"data\"\r\n check-strictly\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"1\"></el-option>\r\n <el-option label=\"桌面\" value=\"2\"></el-option>\r\n <el-option label=\"专项\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"planName\" >\r\n <el-input\r\n v-model=\"ruleForm.planName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.makingPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.drillPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <!--<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n <!--<el-form-item label=\"修改时间\" prop=\"gmtModitify\">-->\r\n <!--<el-date-picker v-model=\"ruleForm.gmtModitify\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />-->\r\n <!--</el-form-item>-->\r\n <!--</el-col>-->\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserName\">\r\n <el-input v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\" disabled></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.makingDepartmentId\"\r\n check-strictly\r\n :data=\"data\"\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"userListString\" >\r\n <el-input\r\n v-model=\"ruleForm.userListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(0)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(1)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <!--<el-upload-->\r\n <!--v-model:file-list=\"fileList\"-->\r\n <!--class=\"upload-demo\"-->\r\n <!--action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"-->\r\n <!--:on-change=\"handleChange\"-->\r\n <!-->-->\r\n <!--<el-button type=\"primary\"-->\r\n <!-->点击上传</el-button>-->\r\n <!--<template #tip>-->\r\n <!--<div class=\"el-upload__tip\">-->\r\n <!--添加相关附件-->\r\n <!--</div>-->\r\n <!--</template>-->\r\n <!--</el-upload>-->\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\" />\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"SearchUser\" />\r\n <DailogSearchUser ref=\"userFZRef\" @SearchUser=\"SearchFZUser\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport type {\r\n UploadUserFile,\r\n FormInstance,\r\n} from 'element-plus'\r\nimport { ElMessage } from 'element-plus';\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport {releaseDrillPlanApi} from \"/@/api/contingencyManagement/emergencyDrillPlan\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nimport { Session } from '/@/utils/storage';\r\n\r\nexport default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingUserName: '', //计划制定人Name\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n ruleForm.value.makingUserUid = Session.get('uid');\r\n ruleForm.value.makingUserName = Session.get('realName');\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看应急演练计划发布' || title == '修改应急演练计划发布') {\r\n releaseDrillPlanApi()\r\n .seeReleaseDrillPlan(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.userListString=''\r\n ruleForm.value.chargeUserListString=''\r\n for(var a = 0;a<res.data.data.userList.length;a++){\r\n if(res.data.data.userList[a].type==1){\r\n ruleForm.value.userListString += res.data.data.userList[a].userName+';'\r\n }\r\n // if(res.data.data.userList[a].type==2){\r\n // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'\r\n // }\r\n }\r\n // alert(res.data.data.chargeUserList.length)\r\n for(var a = 0;a<res.data.data.chargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ]\r\n //部门树\r\n const department = () => {\r\n goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = ref()\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n value: 'depId',\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n // 表单提交验证必填项\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)\r\n delete ruleForm.value.planName\r\n delete ruleForm.value.chargeUserListString\r\n delete ruleForm.value.userListString\r\n delete ruleForm.value.chargeUserList\r\n delete ruleForm.value.gmtModitify\r\n if (title == '新建应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .addReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n }\r\n else if (title == '修改应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .editReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n }\r\n }\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n formEl.resetFields();\r\n };\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt = () => {\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.planId=e.id\r\n ruleForm.value.planName=e.name\r\n };\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const userFZRef = ref();\r\n //打开演练人员和演练负责人弹窗 type 0 演练人员 1 演练负责人\r\n const openUser = (type:number) => {\r\n if(type==0){\r\n userRef.value.openDailog(0);\r\n }else if(type==1){\r\n userFZRef.value.openDailog(0);\r\n }\r\n };\r\n const SearchUser = (e:any) => {\r\n console.log('演练人员',e)\r\n ruleForm.value.userListString=''\r\n ruleForm.value.userList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.userList.push(\r\n {\r\n type: 1,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.userListString+=e[a].realName+';'\r\n }\r\n\r\n };\r\n const SearchFZUser = (e:any) => {\r\n console.log('演练负责人员',e[0].userName)\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.chargeUserList=[]\r\n // ruleForm.value.chargeUserList = []\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.chargeUserList.push(\r\n {\r\n type: 2,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.chargeUserListString+=e[a].realName+';'\r\n }\r\n };\r\n // 计划定制日期\r\n const datetime = ref('');\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n isShowDialog,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n department,\r\n propse,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n ruleFormRef,\r\n submitForm,\r\n openUser,\r\n userRef,\r\n datetime,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n titles,\r\n disabled,\r\n resetForm,\r\n emit,\r\n onUser,\r\n userFZRef,\r\n SearchUser,\r\n SearchFZUser\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea{\r\n height: 168px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 168px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n//多行文本框\r\n.textarea{\r\n height: 70px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 70px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue ---- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (date 1660303400436) -@@ -162,20 +162,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <!--<el-upload--> -- <!--v-model:file-list="fileList"--> -- <!--class="upload-demo"--> -- <!--action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"--> -- <!--:on-change="handleChange"--> -- <!-->--> -- <!--<el-button type="primary"--> -- <!-->点击上传</el-button>--> -- <!--<template #tip>--> -- <!--<div class="el-upload__tip">--> -- <!--添加相关附件--> -- <!--</div>--> -- <!--</template>--> -- <!--</el-upload>--> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -215,12 +203,13 @@ - import {releaseDrillPlanApi} from "/@/api/contingencyManagement/emergencyDrillPlan"; - import {goalManagementApi} from "/@/api/goalManagement"; - import { Session } from '/@/utils/storage'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -281,14 +270,35 @@ - for(var a = 0;a<res.data.data.chargeUserList.length;a++){ - ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';' - } -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -318,6 +328,9 @@ - }); - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList) - delete ruleForm.value.planName - delete ruleForm.value.chargeUserListString -@@ -412,6 +425,7 @@ - } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; -+ fileList.value=[] - if (!formEl) return; - ruleForm.value = { - makingPlanDate: '', // 计划制定日期 -@@ -473,7 +487,6 @@ - ) - ruleForm.value.userListString+=e[a].realName+';' - } -- - }; - const SearchFZUser = (e:any) => { - console.log('演练负责人员',e[0].userName) -@@ -532,7 +545,9 @@ - onUser, - userFZRef, - SearchUser, -- SearchFZUser -+ SearchFZUser, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/components/equipmentDailog/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\" draggable :title=\"titles\" width=\"60%\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" :rules=\"rules\" :disabled=\"disabled\" label-width=\"120px\" class=\"formType\">\r\n\t\t\t<el-form-item label=\"装置设施名称\" size=\"default\" prop=\"qName\">\r\n\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写装置设施名称\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施位号\" size=\"default\" prop=\"positionNum\">\r\n\t\t\t\t<el-input disabled v-model=\"form.positionNum\" placeholder=\"请填写装置设施位号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施用途\" size=\"default\" prop=\"qUsage\">\r\n\t\t\t\t<el-input v-model=\"form.qUsage\" placeholder=\"请填写装置设施用途\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施型号\" size=\"default\" prop=\"model\">\r\n\t\t\t\t<el-input v-model=\"form.model\" placeholder=\"请填写装置设施型号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"类型/类别外键\" size=\"default\" prop=\"equipmentTypeName\">\r\n\t\t\t\t<el-input v-model=\"form.equipmentTypeName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"opencategory\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<!-- <el-form-item label=\"区域名称\" size=\"default\">\r\n <el-input v-model=\"form.name\" placeholder=\"请选择\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openRegion\"></el-button>\r\n </template>\r\n </el-input>\r\n </el-form-item> -->\r\n\t\t\t<el-form-item label=\"单位部门\" size=\"default\" prop=\"departmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.departmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"设置部位\" size=\"default\" prop=\"setPart\">\r\n\t\t\t\t<el-input v-model=\"form.setPart\" placeholder=\"请填写设置部位\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生产日期\" size=\"default\" prop=\"produceTime\">\r\n\t\t\t\t<el-date-picker v-model=\"form.produceTime\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用期限(天)\" size=\"default\" prop=\"useEndDay\">\r\n\t\t\t\t<el-input v-model=\"form.useEndDay\" placeholder=\"请填写使用期限\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生命周期\" size=\"default\" prop=\"lifeCycle\">\r\n\t\t\t\t<el-select v-model=\"form.lifeCycle\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"已投用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"库存中\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"3\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"投用日期\" size=\"default\" prop=\"useDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.useDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"维修状态\" size=\"default\" prop=\"repairStatus\">\r\n\t\t\t\t<el-select v-model=\"form.repairStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"维修中\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"已修好\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用状态\" size=\"default\" prop=\"stopStatus\">\r\n\t\t\t\t<el-select v-model=\"form.stopStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"停用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"在用\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"维修\" :value=\"3\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"4\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检查日期\" size=\"default\" prop=\"previousCheckDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousCheckDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检测日期\" size=\"default\" prop=\"previousTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.previousTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次保养日期\" size=\"default\" prop=\"previousTakecareDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousTakecareDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检查日期\" size=\"default\" prop=\"nextCheckDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextCheckDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检测日期\" size=\"default\" prop=\"nextTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次保养日期\" size=\"default\" prop=\"nextTakecareDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTakecareDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人\" size=\"default\" prop=\"leadingPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.leadingPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(1)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人部门\" size=\"default\" prop=\"leadingPersonDepartmentId\">\r\n\t\t\t\t<el-tree-select\r\n\t\t\t\t\tv-model=\"form.leadingPersonDepartmentId\"\r\n\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\tcheck-strictly=\"true\"\r\n\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"供应商\" size=\"default\" prop=\"supplyName\">\r\n\t\t\t\t<el-input v-model=\"form.supplyName\" placeholder=\"请填写供应商\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用说明\" size=\"default\" prop=\"useMemo\">\r\n\t\t\t\t<el-input v-model=\"form.useMemo\" placeholder=\"请填写使用说明\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检查\" size=\"default\" prop=\"isNeedCheck\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedCheck\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查周期\" size=\"default\" prop=\"checkCycle\">\r\n\t\t\t\t<el-input v-model=\"form.checkCycle\" placeholder=\"请填写检查周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查提前提醒\" size=\"default\" prop=\"checkWarn\">\r\n\t\t\t\t<el-input v-model=\"form.checkWarn\" placeholder=\"请填写检查提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检测\" size=\"default\" prop=\"isNeedTest\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTest\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测周期\" size=\"default\" prop=\"testCycle\">\r\n\t\t\t\t<el-input v-model=\"form.testCycle\" placeholder=\"请填写检测周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测提前提醒\" size=\"default\" prop=\"testWarn\">\r\n\t\t\t\t<el-input v-model=\"form.testWarn\" placeholder=\"请填写检测提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否保养\" size=\"default\" prop=\"isNeedTakecare\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTakecare\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查内容\" size=\"default\" prop=\"checkContent\">\r\n\t\t\t\t<el-input v-model=\"form.checkContent\" placeholder=\"请填写检查内容\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责部门\" size=\"default\" prop=\"leadingDepartmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.leadingDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查指标\" size=\"default\" prop=\"checkPoint\">\r\n\t\t\t\t<el-input v-model=\"form.checkPoint\" placeholder=\"请填写检查指标\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"预警值\" size=\"default\" prop=\"alertNum\">\r\n\t\t\t\t<el-input v-model=\"form.alertNum\" placeholder=\"请填写预警值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"联锁值\" size=\"default\" prop=\"lockNum\">\r\n\t\t\t\t<el-input v-model=\"form.lockNum\" placeholder=\"请填写联锁值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用理由\" size=\"default\" prop=\"stopReason\">\r\n\t\t\t\t<el-input v-model=\"form.stopReason\" placeholder=\"请填写停用理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用后措施\" size=\"default\" prop=\"afterStopStep\">\r\n\t\t\t\t<el-input v-model=\"form.afterStopStep\" placeholder=\"请填写停用后措施\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际停用日期\" size=\"default\" prop=\"actualStopDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.actualStopDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交人\" size=\"default\" prop=\"stopSubmitPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.stopSubmitPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(2)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交日期\" size=\"default\" prop=\"stopSubmitDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.stopSubmitDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复理由\" size=\"default\" prop=\"recoveryReason\">\r\n\t\t\t\t<el-input v-model=\"form.recoveryReason\" placeholder=\"请填写恢复理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复填报日期\" size=\"default\" prop=\"recoverySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.recoverySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际恢复日期\" size=\"default\" prop=\"actualRecoveryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualRecoveryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废理由\" size=\"default\" prop=\"destoryReason\">\r\n\t\t\t\t<el-input v-model=\"form.destoryReason\" placeholder=\"请填写报废理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废填报日期\" size=\"default\" prop=\"destorySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.destorySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际报废日期\" size=\"default\" prop=\"actualDestoryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualDestoryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"设备保养\" name=\"first\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openMaintenance('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.takecareDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareMemo\" label=\"保养情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonName\" label=\"保养负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareDate\" :formatter=\"timeDate\" label=\"保养日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonDepartmentName\" label=\"保养负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备检测\" name=\"second\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openDetect('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.testDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonName\" label=\"检测人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testDate\" :formatter=\"timeDate\" label=\"检测日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonDepartmentName\" label=\"检测人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testMemo\" label=\"检测内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"检测结果\" >\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==1\">成功</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==2\">失败</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testStatus\" label=\"检测状态\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteB(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备维修\" name=\"third\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openRepair('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.repaireDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"exceptionInfo\" label=\"设施异常项\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"维修状态\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==1\">维修中</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==2\">已修好</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairMemo\" label=\"维修情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonName\" label=\"维修负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonDepartmentName\" label=\"维修负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairStartDate\" :formatter=\"timeDate\" label=\"维修开始日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairEndDate\" :formatter=\"timeDate\" label=\"维修结束日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteC(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"检查标准设置\" name=\"fourth\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openStandard('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.checkStandardeDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"indexNum\" label=\"序号\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkContent\" label=\"检查内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkTarget\" label=\"检查指标\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"unit\" label=\"单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkPart\" label=\"巡检部位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"rate\" label=\"频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteD(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"巡检记录\" size=\"default\" name=\"five\">\r\n\t\t\t\t<el-table :data=\"name\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"name\" label=\"任务编号\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"任务名称\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"点位类型\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"检查频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" :formatter=\"timeDate\" label=\"巡检时间\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"巡检人\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"保养维修标准\" name=\"six\" v-if=\"Dailogtype\">\r\n\t\t\t\t<el-upload\r\n\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\tmultiple\r\n\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t<div class=\"el-upload__tip\"></div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-upload>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<categoryDailog ref=\"categoryShow\"></categoryDailog>\r\n\t<categoryDailog ref=\"categoryShow\" @typeId=\"Tid\"></categoryDailog>\r\n\t<regionDailog ref=\"regionShow\"></regionDailog>\r\n\t<DailogSearchUser ref=\"UserShow\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t<maintenanceDailog ref=\"maintenanceShow\" @onMain=\"main\"></maintenanceDailog>\r\n\t<detectDailog ref=\"detectShow\" @onDelect=\"delect\"></detectDailog>\r\n\t<repairDailog ref=\"repairShow\" @onRepair=\"Repair\"></repairDailog>\r\n\t<standardDailog ref=\"standardShow\" @onStand=\"Stand\"></standardDailog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport categoryDailog from './categoryDailog.vue';\r\nimport regionDailog from './regionDailog.vue';\r\nimport maintenanceDailog from './maintenanceDailog.vue';\r\nimport detectDailog from './detectDailog.vue';\r\nimport repairDailog from './repairDailog.vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport standardDailog from './standardDailog.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox, FormInstance, FormRules } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { facilityManagementApi } from '/@/api/facilityManagement';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tsupplyName: '',\r\n\r\n\t\t\tnextTestDate: '',\r\n\r\n\t\t\tqUsage: '',\r\n\r\n\t\t\tdepartmentId: '',\r\n\r\n\t\t\tproduceTime: '',\r\n\r\n\t\t\tactualStopDate: '',\r\n\r\n\t\t\ttakecareDetailList: [],\r\n\r\n\t\t\tinfoType: '',\r\n\r\n\t\t\tleadingDepartmentId: '',\r\n\r\n\t\t\tuseEndDay: '',\r\n\r\n\t\t\tpreviousTakecareDate: '',\r\n\r\n\t\t\tpreviousCheckDate: '',\r\n\r\n\t\t\tmodel: '',\r\n\r\n\t\t\tstopStatus: '',\r\n\r\n\t\t\ttestWarn: '',\r\n\r\n\t\t\tstopSubmitDate: '',\r\n\r\n\t\t\trepairStatus: '',\r\n\r\n\t\t\ttakecareStardardeDetailList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfilePath: '123',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\r\n\t\t\tnextCheckDate: '',\r\n\r\n\t\t\tcheckCycle: '',\r\n\r\n\t\t\tcheckPoint: '',\r\n\r\n\t\t\tleadingPersonId: '',\r\n\t\t\tleadingPersonName: '',\r\n\r\n\t\t\tqName: '',\r\n\r\n\t\t\tnextTakecareDate: '',\r\n\r\n\t\t\tsetPart: '',\r\n\r\n\t\t\tcheckStandardeDetailList: [],\r\n\r\n\t\t\tactualDestoryDate: '',\r\n\r\n\t\t\tisNeedTest: '',\r\n\r\n\t\t\talertNum: '',\r\n\r\n\t\t\tcheckContent: '',\r\n\r\n\t\t\tuseMemo: '',\r\n\r\n\t\t\tpreviousTestDate: '',\r\n\r\n\t\t\tisNeedTakecare: '',\r\n\r\n\t\t\tdestoryReason: '',\r\n\r\n\t\t\tcheckDetailList: [],\r\n\r\n\t\t\tpositionNum: '',\r\n\r\n\t\t\ttestCycle: '',\r\n\r\n\t\t\trecoveryReason: '',\r\n\r\n\t\t\tisNeedCheck: '',\r\n\r\n\t\t\tactualRecoveryDate: '',\r\n\r\n\t\t\tleadingPersonDepartmentId: '',\r\n\r\n\t\t\tstopReason: '',\r\n\r\n\t\t\tdestorySubmitDate: '',\r\n\r\n\t\t\ttestDetailList: [],\r\n\r\n\t\t\tcheckWarn: '',\r\n\r\n\t\t\trepaireDetailList: [],\r\n\r\n\t\t\tequipmentTypeId: '',\r\n\r\n\t\t\tuseDate: '',\r\n\r\n\t\t\trecoverySubmitDate: '',\r\n\r\n\t\t\tlockNum: '',\r\n\r\n\t\t\tstopSubmitPersonId: '',\r\n\t\t\tstopSubmitPersonName: '',\r\n\t\t\tafterStopStep: '',\r\n\r\n\t\t\tlifeCycle: '',\r\n\r\n\t\t\tdelCheckStandardeDetails: '',\r\n\r\n\t\t\tdelTakecareStardardeDetails: '',\r\n\r\n\t\t\tdelTakecareDetails: '',\r\n\r\n\t\t\tdelRepaireDetails: '',\r\n\r\n\t\t\tdelTestDetails: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst titleT = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst Dailogtype = ref(false);\r\n\t\tconst openDailog = (title: string, type: boolean, id: number, num: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitleT.value = title;\r\n\t\t\tdepartment();\r\n\t\t\tDailogtype.value = type;\r\n\t\t\tif (num == 0) {\r\n\t\t\t\ttitles.value = `${title}仪表信息`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 1) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 2) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t}\r\n\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t.getequipmentInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [],\r\n\t\t\tpositionNum: [],\r\n\t\t\tqUsage: [],\r\n\t\t\tmodel: [],\r\n\t\t\tequipmentTypeId: [],\r\n\t\t\tequipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],\r\n\t\t\tdepartmentId: [],\r\n\t\t\tsetPart: [],\r\n\t\t\tproduceTime: [],\r\n\t\t\tuseEndDay: [],\r\n\t\t\tlifeCycle: [],\r\n\t\t\tuseDate: [],\r\n\t\t\trepairStatus: [],\r\n\t\t\tstopStatus: [],\r\n\t\t\tpreviousCheckDate: [],\r\n\t\t\tpreviousTestDate: [],\r\n\t\t\tpreviousTakecareDate: [],\r\n\t\t\tnextCheckDate: [],\r\n\t\t\tnextTestDate: [],\r\n\t\t\tnextTakecareDate: [],\r\n\t\t\tleadingPersonName: [],\r\n\t\t\tleadingPersonDepartmentId: [],\r\n\t\t\tsupplyName: [],\r\n\t\t\tuseMemo: [],\r\n\t\t\tisNeedCheck: [],\r\n\t\t\tcheckCycle: [],\r\n\t\t\tcheckWarn: [],\r\n\t\t\tisNeedTest: [],\r\n\t\t\ttestCycle: [],\r\n\t\t\ttestWarn: [],\r\n\t\t\tisNeedTakecare: [],\r\n\t\t\tcheckContent: [],\r\n\t\t\tleadingDepartmentId: [],\r\n\t\t\tcheckPoint: [],\r\n\t\t\talertNum: [],\r\n\t\t\tlockNum: [],\r\n\t\t\tstopReason: [],\r\n\t\t\tafterStopStep: [],\r\n\t\t\tactualStopDate: [],\r\n\t\t\tstopSubmitPersonName: [],\r\n\t\t\tstopSubmitDate: [],\r\n\t\t\trecoveryReason: [],\r\n\t\t\trecoverySubmitDate: [],\r\n\t\t\tactualRecoveryDate: [],\r\n\t\t\tdestoryReason: [],\r\n\t\t\tdestorySubmitDate: [],\r\n\t\t\tactualDestoryDate: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tform.value.delTakecareDetails = deleteAId.value.toString();\r\n\t\t\t\t\tform.value.delTestDetails = deleteBId.value.toString();\r\n\t\t\t\t\tform.value.delRepaireDetails = deleteCId.value.toString();\r\n\t\t\t\t\tform.value.delCheckStandardeDetails = deleteDId.value.toString();\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tdelete form.value.equipmentTypeName;\r\n\t\t\t\t\tdelete form.value.departmentName;\r\n\t\t\t\t\tdelete form.value.leadingPersonDepartmentName;\r\n\t\t\t\t\tdelete form.value.leadingDepartmentName;\r\n\t\t\t\t\tif (titleT.value == '新建') {\r\n\t\t\t\t\t\tdelete form.value.id;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t\t.getequipmentInfoAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t\tdialogVisible.value = false;\r\n\t\t};\r\n\t\tconst activeName = ref('first');\r\n\t\tconst index = ref<any>();\r\n\t\tconst categoryShow = ref();\r\n\t\tconst opencategory = () => {\r\n\t\t\tcategoryShow.value.openDailog();\r\n\t\t};\r\n\t\tconst regionShow = ref();\r\n\t\tconst openRegion = () => {\r\n\t\t\tregionShow.value.openDailog();\r\n\t\t};\r\n\t\tconst UserShow = ref();\r\n\t\tconst openUser = (type: any) => {\r\n\t\t\tUserShow.value.openDailog(type);\r\n\t\t};\r\n\t\tconst maintenanceShow = ref();\r\n\t\tconst openMaintenance = (title: string, data: any) => {\r\n index.value = form.value.takecareDetailList.indexOf(data);\r\n\t\t\tmaintenanceShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst detectShow = ref();\r\n\t\tconst openDetect = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.testDetailList.indexOf(data);\r\n\t\t\tdetectShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst repairShow = ref();\r\n\t\tconst openRepair = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.repaireDetailList.indexOf(data);\r\n\t\t\trepairShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst standardShow = ref();\r\n\t\tconst openStandard = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.checkStandardeDetailList.indexOf(data);\r\n\t\t\tstandardShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteAId = ref([]);\r\n\t\tconst deleteBId = ref([]);\r\n\t\tconst deleteCId = ref([]);\r\n\t\tconst deleteDId = ref([]);\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.takecareDetailList.splice(form.value.takecareDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteAId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteB = (tag: any) => {\r\n\t\t\tform.value.testDetailList.splice(form.value.testDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteBId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteC = (tag: any) => {\r\n\t\t\tform.value.repaireDetailList.splice(form.value.repaireDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteCId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteD = (tag: any) => {\r\n\t\t\tform.value.checkStandardeDetailList.splice(form.value.checkStandardeDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteDId.value.push(tag.id);\r\n\t\t};\r\n\t\t// 回传\r\n\t\tconst main = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.takecareDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.takecareDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst delect = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.testDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.testDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Repair = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.repaireDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.repaireDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Stand = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.checkStandardeDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.checkStandardeDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst userId = (val: any, type: number) => {\r\n\t\t\tconsole.log(val, type);\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.leadingPersonId = val.uid;\r\n\t\t\t\tform.value.leadingPersonName = val.realName;\r\n\t\t\t} else if (type == 2) {\r\n\t\t\t\tform.value.stopSubmitPersonId = val.uid;\r\n\t\t\t\tform.value.stopSubmitPersonName = val.realName;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Tid = (data: any) => {\r\n\t\t\tform.value.equipmentTypeId = data.id;\r\n\t\t\tform.value.equipmentTypeName = data.typeName;\r\n\t\t\tform.value.positionNum = data.sortNum;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\tTid,\r\n\t\t\tdeepClone,\r\n\t\t\trules,\r\n\t\t\tuserId,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tdeleteAId,\r\n\t\t\tdeleteBId,\r\n\t\t\tdeleteCId,\r\n\t\t\tdeleteDId,\r\n\t\t\tdeleteA,\r\n\t\t\tdeleteB,\r\n\t\t\tdeleteC,\r\n\t\t\tdeleteD,\r\n\t\t\tmain,\r\n\t\t\tindex,\r\n\t\t\tdelect,\r\n\t\t\tRepair,\r\n\t\t\tStand,\r\n\t\t\tresetForm,\r\n\t\t\tsubmitForm,\r\n\t\t\ttitles,\r\n\t\t\tdialogVisible,\r\n\t\t\tdisabled,\r\n\t\t\tDailogtype,\r\n\t\t\tform,\r\n\t\t\topenDailog,\r\n\t\t\tSearch,\r\n\t\t\tactiveName,\r\n\t\t\tcategoryShow,\r\n\t\t\topencategory,\r\n\t\t\tregionShow,\r\n\t\t\topenRegion,\r\n\t\t\tUserShow,\r\n\t\t\topenUser,\r\n\t\t\tmaintenanceShow,\r\n\t\t\topenMaintenance,\r\n\t\t\tdetectShow,\r\n\t\t\topenDetect,\r\n\t\t\trepairShow,\r\n\t\t\topenRepair,\r\n\t\t\tstandardShow,\r\n\t\t\topenStandard,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\ttimeDate,\r\n\t\t\truleFormRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-form-item {\r\n\twidth: 400px;\r\n}\r\n.formType:after {\r\n\tcontent: '';\r\n\twidth: 400px;\r\n}\r\n.formType {\r\n\tpadding: 20px 20px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n\tflex-wrap: wrap;\r\n}\r\n.el-form .el-form-item:last-of-type {\r\n\tmargin-bottom: 22px !important;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue ---- a/src/components/equipmentDailog/Dailog.vue (revision 1bda425cb245d951bc64ac170e2f6751fb0fcf0e) -+++ b/src/components/equipmentDailog/Dailog.vue (date 1660303400397) -@@ -324,22 +324,8 @@ - </el-table> - </el-tab-pane> - <el-tab-pane label="保养维修标准" name="six" v-if="Dailogtype"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"></div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EQUIPMENT'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-tab-pane> - </el-tabs> - <template #footer> -@@ -374,8 +360,10 @@ - import { facilityManagementApi } from '/@/api/facilityManagement'; - import { goalManagementApi } from '/@/api/goalManagement'; - import { deepClone } from '/@/utils/other'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog }, -+ components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, -+ detectDailog, repairDailog, standardDailog,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref(false); - const ruleFormRef = ref<FormInstance>(); -@@ -415,9 +403,6 @@ - repairStatus: '', - - takecareStardardeDetailList: [ -- { -- filePath: '123', -- }, - ], - - nextCheckDate: '', -@@ -528,11 +513,61 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ -+ //初始化日期格式 -+ form.value.actualDestoryDate = timeC(form.value.actualDestoryDate); -+ form.value.actualRecoveryDate = timeC(form.value.actualRecoveryDate); -+ form.value.actualStopDate = timeC(form.value.actualStopDate); -+ form.value.destorySubmitDate = timeC(form.value.destorySubmitDate); -+ form.value.nextCheckDate = timeC(form.value.nextCheckDate); -+ form.value.nextTakecareDate = timeC(form.value.nextTakecareDate); -+ form.value.nextTestDate = timeC(form.value.nextTestDate); -+ form.value.previousCheckDate = timeC(form.value.previousCheckDate); -+ form.value.previousTakecareDate = timeC(form.value.previousTakecareDate); -+ form.value.previousTestDate = timeC(form.value.previousTestDate); -+ form.value.produceTime = timeC(form.value.produceTime); -+ form.value.recoverySubmitDate = timeC(form.value.recoverySubmitDate); -+ form.value.stopSubmitDate = timeC(form.value.stopSubmitDate); -+ form.value.useDate = timeC(form.value.useDate); -+ -+ fileList.value = (res.data.data.takecareStardardeDetailList?res.data.data.takecareStardardeDetailList:[]) -+ initFileListData() - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].filePath -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ filePath:fileList.value[a].fileName -+ } -+ ) -+ } -+ form.value.takecareStardardeDetailList = formFileList -+ } - const rules = reactive<FormRules>({ - qName: [], - positionNum: [], -@@ -628,6 +663,7 @@ - form.value.testDetailList = []; - form.value.repaireDetailList = []; - form.value.checkStandardeDetailList = []; -+ fileList.value = [] - dialogVisible.value = false; - }; - const activeName = ref('first'); -@@ -665,16 +701,7 @@ - standardShow.value.openDailog(title, data); - }; - // 上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -845,6 +872,9 @@ - FullScreen, - timeDate, - ruleFormRef, -+ successUploader, -+ initFileListData, -+ timeC - }; - }, - }); diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54__Default_Changelist_.xml deleted file mode 100644 index 75b6123..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54__Default_Changelist_.xml +++ /dev/null @@ -1,4 +0,0 @@ -<changelist name="Uncommitted_changes_before_Update_at_2022_8_13_13_54_[Default_Changelist]" date="1660370067632" recycled="true" deleted="true"> - <option name="PATH" value="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_13_54_[Default_Changelist]/shelved.patch" /> - <option name="DESCRIPTION" value="Uncommitted changes before Update at 2022/8/13 13:54 [Default Changelist]" /> -</changelist> \ No newline at end of file diff --git "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08_\133Default_Changelist\135/shelved.patch" "b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08_\133Default_Changelist\135/shelved.patch" deleted file mode 100644 index 8bd144a..0000000 --- "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08_\133Default_Changelist\135/shelved.patch" +++ /dev/null @@ -1,4259 +0,0 @@ -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"checkData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"checkData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"checkData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"applyTime\" label=\"整改时间\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip min-width=\"150px\">\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"验收状态\" show-overflow-tooltip min-width=\"150px\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"checkAcceptPerson\" label=\"验收人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 1\" @click=\"onOpenDialogRef('验收', scope.row)\">验收</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"checkData.params.pageIndex\" background v-model:page-size=\"checkData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"checkData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <checkDialog ref=\"checkDialogRef\" @refreshCheck=\"initCheckTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport checkDialog from './components/checkDialog.vue';\r\nimport { Check, Delete, View } from '@element-plus/icons-vue';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { hiddenCheckApi } from '/@/api/doublePreventSystem/check';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n checkData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'check',\r\n components: { checkDialog, Check, Delete, View },\r\n setup() {\r\n const checkDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n checkData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: 1\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initCheckTableData = async () => {\r\n let res = await hiddenCheckApi().getHiddenCheckList(state.checkData.params);\r\n if (res.data.code === '200') {\r\n state.checkData.data = res.data.data;\r\n state.checkData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n checkDialogRef.value.openCheckDialog(type, value, state.departmentList);\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.checkData.params.pageSize = val;\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.checkData.params.pageIndex = val;\r\n initCheckTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initCheckTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Check,\r\n Delete,\r\n View,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n checkDialog,\r\n checkDialogRef,\r\n initCheckTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (date 1660370066871) -@@ -12,7 +12,12 @@ - <span>整改部门:</span> - <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-box" v-model="checkData.params.rectifyDepId"> </el-cascader> - </div> -- -+ <div class="basic-line"> -+ <span>整改状态:</span> -+ <el-select class="input-box" v-model="checkData.params.dangerStatus" placeholder="整改状态" clearable filterable> -+ <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> -+ </el-select> -+ </div> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -120,10 +125,7 @@ - { id: 2, name: '限期整改' } - ], - dangerStatusList: [ -- { id: 0, name: '整改中' }, - { id: 1, name: '待验收' }, -- { id: 2, name: '延期整改' }, -- { id: 4, name: '超期未整改' }, - { id: 9, name: '已验收' } - ] - }); -Index: src/api/doublePreventSystem/rectify/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\n\r\nexport function hiddenRectifyApi() {\r\n return {\r\n // v1\r\n getHiddenRectifyList: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/select/getDangerRectifyPage`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n submitHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/applyReport`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n delayHiddenRectifyTime: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/timeOutRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n deleteHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/delete/deleteDangerRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n getAllHiddenRectifyList: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`,\r\n method: 'post'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/doublePreventSystem/rectify/index.ts b/src/api/doublePreventSystem/rectify/index.ts ---- a/src/api/doublePreventSystem/rectify/index.ts (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/api/doublePreventSystem/rectify/index.ts (date 1660370308913) -@@ -40,6 +40,12 @@ - url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`, - method: 'post' - }); -+ }, -+ getCodeByTime: (date: string) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL + `/prevent/dangerManage/count/byCreateDate?date=${date}`, -+ method: 'get' -+ }); - } - }; - } -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"rectifyData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>隐患状态:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.dangerStatus\" placeholder=\"隐患状态\" filterable clearable>\r\n <el-option v-for=\"item in dangerStatusList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"rectifyData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyTime\" label=\"整改期限\" min-width=\"130px\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n <span>{{ scope.row.rectifyTime }}</span>\r\n <span v-if=\"scope.row.dangerStatus === 4\" class=\"overdue-img\">逾期</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"隐患整改状态\" show-overflow-tooltip align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"createByUserName\" label=\"创建人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtCreate\" label=\"创建时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"lastEditUserName\" label=\"最后修改人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtModitify\" label=\"最后修改时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('整改', scope.row)\">整改</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Edit\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('延期', scope.row)\">延期</el-button>\r\n <el-button size=\"small\" text type=\"danger\" :icon=\"Delete\" @click=\"onDelHiddenRectify(scope.row)\">删除</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"rectifyData.params.pageIndex\" background v-model:page-size=\"rectifyData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"rectifyData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <rectifyDialog ref=\"rectifyDialogRef\" @refreshRectify=\"initRectifyTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport rectifyDialog from './components/rectifyDialog.vue';\r\nimport { Edit, Delete, Check, View } from '@element-plus/icons-vue';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n rectifyData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'rectify',\r\n components: { rectifyDialog, Edit, Delete, View },\r\n setup() {\r\n const rectifyDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n rectifyData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: null\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initRectifyTableData = async () => {\r\n let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params);\r\n if (res.data.code === '200') {\r\n state.rectifyData.data = res.data.data;\r\n state.rectifyData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n rectifyDialogRef.value.openRectifyDialog(type, value, state.departmentList);\r\n };\r\n // 删除\r\n const onDelHiddenRectify = (row: any) => {\r\n ElMessageBox.confirm(`此操作将永久删除该隐患整改,是否继续?`, '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n })\r\n .then(async () => {\r\n let res = await hiddenRectifyApi().deleteHiddenRectify({ id: row.id });\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n duration: 2000,\r\n message: '删除成功'\r\n });\r\n await initRectifyTableData();\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n })\r\n .catch(() => {});\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.rectifyData.params.pageSize = val;\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.rectifyData.params.pageIndex = val;\r\n initRectifyTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initRectifyTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Edit,\r\n View,\r\n Check,\r\n Delete,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onDelHiddenRectify,\r\n onHandleCurrentChange,\r\n rectifyDialog,\r\n rectifyDialogRef,\r\n initRectifyTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n.overdue-img {\r\n position: absolute;\r\n background-color: #f56c6c;\r\n border-radius: 4px;\r\n color: #fff;\r\n display: inline-block;\r\n font-size: 12px;\r\n height: 21px;\r\n line-height: 18px;\r\n text-align: center;\r\n white-space: nowrap;\r\n border: 1px solid #fff;\r\n transform: scale(0.8);\r\n padding: 1px 3px 0 3px;\r\n}\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (date 1660381672775) -@@ -3,6 +3,19 @@ - <el-card shadow="hover"> - <div class="system-user-search mb15"> - <div class="basic-line"> -+ <div style="display: inline-block">整改编号:</div> -+ -+ <div style="display: inline-block"> -+ <el-autocomplete :fetch-suggestions="querySearch" v-model="rectifyData.params.serialCode" v-on:input="checkDate($event)" placeholder="整改编号(前八位日期)"> </el-autocomplete> -+ <i class="el-icon-date"></i> -+ </div> -+ <!-- <div style="display: inline-block">--> -+ <!-- <el-button>--> -+ <!-- <el-date-picker value-format="YYYY-MM-DD" :disabled-date="disabledDate" v-model="dateTime" @change="getSerialCodeList" placeholder="选择日期"> </el-date-picker>--> -+ <!-- </el-button>--> -+ <!-- </div>--> -+ </div> -+ <div class="basic-line"> - <span>整改类型:</span> - <el-select class="input-box" v-model="rectifyData.params.rectifyType" placeholder="整改类型" filterable> - <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option> -@@ -18,6 +31,7 @@ - <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> - </el-select> - </div> -+ <i class="el-icon-date"></i> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -27,6 +41,7 @@ - </div> - <el-table :data="rectifyData.data" style="width: 100%" fit highlight-current-row> - <el-table-column type="index" label="序号" width="60" /> -+ <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip width="170px"></el-table-column> - <el-table-column prop="dangerCode" label="隐患名称" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyTime" label="整改期限" min-width="130px" show-overflow-tooltip> -@@ -72,7 +87,7 @@ - </template> - - <script lang="ts"> --import { toRefs, reactive, onMounted, ref, defineComponent } from 'vue'; -+import { toRefs, reactive, onMounted, ref, defineComponent, computed } from 'vue'; - import { ElMessageBox, ElMessage } from 'element-plus'; - import rectifyDialog from './components/rectifyDialog.vue'; - import { Edit, Delete, Check, View } from '@element-plus/icons-vue'; -@@ -94,6 +109,7 @@ - rectifyData: { - data: Array<TableData>; - total: number; -+ disabled: boolean; - loading: boolean; - params: { - pageIndex: number; -@@ -101,16 +117,24 @@ - rectifyType: number | null; - rectifyDepId: number | null; - dangerStatus: number | null; -+ serialCode: string; - }; - }; - rectifyTypeList: Array<enumType>; - dangerStatusList: Array<enumType>; - departmentList: []; -+ disabledDate: any; -+ serialCodeList: Array<type>; -+ dateTime: string; - } - interface enumType { - id: number; - name: string; - } -+interface type { -+ id: number; -+ value: number; -+} - - export default defineComponent({ - name: 'rectify', -@@ -121,16 +145,23 @@ - rectifyData: { - data: [], - total: 0, -+ disabled: true, - loading: false, - params: { - pageIndex: 1, - pageSize: 10, - rectifyType: null, - rectifyDepId: null, -- dangerStatus: null -+ dangerStatus: null, -+ serialCode: '' - } -+ }, -+ dateTime: '', -+ disabledDate: (time: any) => { -+ return time.getTime() > new Date().getTime(); - }, - departmentList: [], -+ serialCodeList: [], - rectifyTypeList: [ - { id: 1, name: '即查即改' }, - { id: 2, name: '限期整改' } -@@ -144,6 +175,87 @@ - ] - }); - -+ const querySearch = () => { -+ return state.serialCodeList.filter((item) => item.value.toString().indexOf(state.rectifyData.params.serialCode) !== -1); -+ }; -+ const handleChange = (value: string): Boolean => { -+ let year = value.substr(0, 4); -+ let month = value.substr(4, 2); -+ let day = value.substr(6, 2); -+ if (Number(year) < 1000 || Number(year) > new Date().getFullYear()) { -+ return false; -+ } -+ if (Number(month) > 12 || month === '00') { -+ return false; -+ } -+ let leapYearTab = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ let notLeapYearTab = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ if (isLeapYear(year)) { -+ const maxDay = leapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } else { -+ const maxDay = notLeapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } -+ return true; -+ }; -+ -+ const isLeapYear = (value: string) => { -+ return Number(value) % 4 === 0; -+ }; -+ -+ const checkDate = async (value: string) => { -+ if (value.length >= 8) { -+ if (handleChange(value.substr(0, 8))) { -+ let res = await hiddenRectifyApi().getCodeByTime(value.substr(0, 4) + '-' + value.substr(4, 2) + '-' + value.substr(6, 2)); -+ if (res.data.code === '200' && res.data.data > 0) { -+ let date = parseInt(value.substr(0, 8) + '0000'); -+ for (let i = 0; i < res.data.data; i++) { -+ state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ } -+ } else if (res.data.code === '200' && res.data.data === 0) { -+ ElMessage({ -+ type: 'warning', -+ message: '当天无隐患上报' -+ }); -+ } -+ } else { -+ state.rectifyData.params.serialCode = ''; -+ ElMessage({ -+ type: 'warning', -+ message: '前八位请输入正确得日期格式' -+ }); -+ } -+ } else { -+ } -+ // if (state.dateTime === '' || state.dateTime === null) { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // } else { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // let res = await hiddenRectifyApi().getCodeByTime(state.dateTime); -+ // if (res.data.code === '200' && res.data.data > 0) { -+ // state.rectifyData.disabled = false; -+ // let date = parseInt(state.dateTime.replaceAll('-', '') + '0000'); -+ // for (let i = 0; i < res.data.data; i++) { -+ // state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ // } -+ // state.rectifyData.params.serialCode = state.dateTime.replaceAll('-', ''); -+ // } else if (res.data.code === '200' && res.data.data === 0) { -+ // state.rectifyData.disabled = true; -+ // ElMessage({ -+ // type: 'warning', -+ // message: '当天无隐患上报' -+ // }); -+ // } -+ // } -+ }; -+ - // 初始化表格数据 - const initRectifyTableData = async () => { - let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -@@ -233,8 +345,10 @@ - View, - Check, - Delete, -+ querySearch, - parseNumber, - handleSearch, -+ checkDate, - onOpenDialogRef, - onHandleSizeChange, - onDelHiddenRectify, -@@ -274,4 +388,7 @@ - :deep(.el-input.is-disabled .el-input__wrapper) { - background-color: var(--el-card-bg-color); - } -+:deep(.el-input-group__prepend) { -+ padding: 0; -+} - </style> -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-add-menu-container\">\r\n <el-dialog :title=\"title\" v-model=\"isShowRectifyDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"rectifyForm\" :rules=\"rectifyFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改说明\" prop=\"rectifyInfo\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"rectifyForm.rectifyInfo\" placeholder=\"请输入整改说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改时间\" prop=\"applyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"rectifyForm.applyTime\" placeholder=\"请选择整改时间\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\">\r\n <el-button @click=\"isShowRectifyDialog = !isShowRectifyDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitRectify\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowDelayDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"delayForm\" :rules=\"delayFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"延期说明\" prop=\"timeOutDesc\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"delayForm.timeOutDesc\" placeholder=\"请输入延期说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改期限\" prop=\"rectifyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"delayForm.rectifyTime\" placeholder=\"请选择整改期限\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\" v-show=\"disabled\">\r\n <el-button @click=\"isShowDelayDialog = !isShowDelayDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitDelay\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowCheckInfoDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"checkInfoForm\" ref=\"checkFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改内容说明\" prop=\"rectifyDesc\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"textarea\" :rows=\"2\" v-model.trim=\"checkInfoForm.rectifyDesc\" readonly></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改类型\" prop=\"rectifyType\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.rectifyType\" readonly>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改部门\" prop=\"rectifyDepId\">\r\n <el-cascader @change=\"achieveUserList\" :disabled=\"!disabled\" :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-add\" v-model=\"checkInfoForm.rectifyDepId\" readonly> </el-cascader>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改责任人\" prop=\"liablePersonId\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.liablePersonId\" clearable filterable readonly>\r\n <el-option v-for=\"item in userList\" :key=\"item.uid\" :label=\"item.username\" :value=\"item.uid\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改资金\" prop=\"dangerResult\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"number\" v-model=\"checkInfoForm.cost\" readonly> </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.createByUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtCreate\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.lastEditUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtModitify\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { getUserByDepartment } from '/@/assets/methods';\r\n\r\ninterface stateType {\r\n disabled: Boolean;\r\n personTime: Boolean;\r\n isShowRectifyDialog: Boolean;\r\n isShowDelayDialog: Boolean;\r\n isShowCheckInfoDialog: Boolean;\r\n rectifyForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyInfo: string | null;\r\n applyTime: string | null;\r\n };\r\n delayForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyTime: string | null;\r\n timeOutDesc: string | null;\r\n };\r\n title: string;\r\n departmentList: [];\r\n userList: [];\r\n rectifyTypeList: Array<rectifyTypeState>;\r\n rectifyFormRules: {};\r\n delayFormRules: {};\r\n checkInfoForm: {\r\n rectifyDepId: number | null;\r\n liablePersonId: number | null;\r\n };\r\n}\r\ninterface rectifyTypeState {\r\n regionType: string;\r\n id: number;\r\n}\r\n\r\nimport { reactive, toRefs, ref } from 'vue';\r\nimport { ElMessage } from 'element-plus';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nexport default {\r\n name: 'rectifyDialog',\r\n setup(props: any, context: any) {\r\n const rectifyFormRef = ref();\r\n const state = reactive<stateType>({\r\n title: '',\r\n disabled: false,\r\n personTime: false,\r\n rectifyTypeList: [],\r\n departmentList: [],\r\n userList: [],\r\n isShowCheckInfoDialog: false,\r\n checkInfoForm: {\r\n rectifyDepId: null,\r\n liablePersonId: null\r\n },\r\n isShowDelayDialog: false,\r\n isShowRectifyDialog: false,\r\n rectifyForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyInfo: null,\r\n applyTime: null\r\n },\r\n delayForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyTime: null,\r\n timeOutDesc: null\r\n },\r\n rectifyFormRules: {\r\n rectifyInfo: [{ required: true, message: '请填写整改说明', trigger: 'blur' }],\r\n applyTime: [{ required: true, message: '请选择整改时间', trigger: 'change' }]\r\n },\r\n delayFormRules: {\r\n timeOutDesc: [{ required: true, message: '请填写延期说明', trigger: 'blur' }],\r\n rectifyTime: [{ required: true, message: '请选择整改期限', trigger: 'change' }]\r\n }\r\n });\r\n\r\n //打开模态框\r\n const openRectifyDialog = async (type: string, value: object, departmentList: []) => {\r\n state.departmentList = departmentList;\r\n if (type === '延期') {\r\n state.title = '延期';\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.isShowDelayDialog = true;\r\n const delayForm = JSON.parse(JSON.stringify(value));\r\n state.delayForm.id = delayForm.id;\r\n state.delayForm.dangerManagerId = delayForm.dangerManagerId;\r\n state.delayForm.timeOutDesc = null;\r\n state.delayForm.rectifyTime = null;\r\n } else if (type === '查看') {\r\n state.title = '查看';\r\n state.personTime = true;\r\n state.isShowCheckInfoDialog = true;\r\n state.checkInfoForm.rectifyDepId = JSON.parse(JSON.stringify(value)).rectifyDepId;\r\n await achieveUserList();\r\n state.checkInfoForm = JSON.parse(JSON.stringify(value));\r\n } else {\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.title = '整改';\r\n state.isShowRectifyDialog = true;\r\n const rectifyForm = JSON.parse(JSON.stringify(value));\r\n state.rectifyForm.id = rectifyForm.id;\r\n state.rectifyForm.dangerManagerId = rectifyForm.dangerManagerId;\r\n state.rectifyForm.rectifyInfo = null;\r\n state.rectifyForm.applyTime = null;\r\n }\r\n };\r\n\r\n //提交整改\r\n const submitRectify = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().submitHiddenRectify(state.rectifyForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '整改提交成功',\r\n duration: 2000\r\n });\r\n state.isShowRectifyDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n //提交延期\r\n const submitDelay = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().delayHiddenRectifyTime(state.delayForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '隐患延期成功',\r\n duration: 2000\r\n });\r\n state.isShowDelayDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n const achieveUserList = async () => {\r\n state.checkInfoForm.liablePersonId = null;\r\n const user: unknown = await getUserByDepartment(state.checkInfoForm.rectifyDepId);\r\n state.userList = user as [];\r\n };\r\n\r\n return {\r\n ...toRefs(state),\r\n rectifyFormRef,\r\n submitDelay,\r\n achieveUserList,\r\n submitRectify,\r\n openRectifyDialog\r\n };\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (date 1660370066895) -@@ -10,7 +10,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="整改时间" prop="applyTime"> -- <el-date-picker type="datetime" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> -+ <el-date-picker type="datetime" :disabled-date="disabledDate" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> - </el-form-item> - </el-col> - </el-row> -@@ -125,6 +125,8 @@ - rectifyTime: string | null; - timeOutDesc: string | null; - }; -+ disabledDate: any; -+ rangeTime: any; - title: string; - departmentList: []; - userList: []; -@@ -168,6 +170,13 @@ - rectifyInfo: null, - applyTime: null - }, -+ disabledDate: (time: any) => { -+ const r = new Date().getTime(); -+ return time.getTime() > new Date().getTime(); -+ }, -+ rangeTime: () => { -+ return '15:15:14'; -+ }, - delayForm: { - id: null, - dangerManagerId: null, -Index: src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"900px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"emergencyPlanName\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.emergencyPlanName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillAddress\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.departmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.departmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"0\"></el-option>\r\n <el-option label=\"桌面\" value=\"1\"></el-option>\r\n <el-option label=\"专项\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"drillName\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.drillName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.makingPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.drillPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"修改时间\" prop=\"updateDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.updateDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserUid\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.makingDepartmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.makingDepartmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"planUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.planUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实际到场人员\" prop=\"executeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.executeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练过程描述\" prop=\"processDesc\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.processDesc\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写演练过程描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录人\" prop=\"recordUserName\" >\r\n <el-input\r\n v-model=\"ruleForm.recordUserName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录时间\" prop=\"drillRecordDate\">\r\n <el-date-picker\r\n v-model=\"ruleForm.drillRecordDate\"\r\n class=\"w100\"\r\n type=\"datetime\"\r\n placeholder=\"选择日期时间\"\r\n :disabled=\"true\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <div class=\"el-divider--horizontal\">\r\n <div class=\"el-divider__text\">\r\n <h3>评价</h3>\r\n </div>\r\n </div>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"evaluationUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.evaluationUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"disabled\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-适宜性\" prop=\"suitable\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.suitable\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部能够执行\" value=\"1\"></el-option>\r\n <el-option label=\"全部不能够执行\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-充分性\" prop=\"sufficient\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.sufficient\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"完全满足应急要求\" value=\"1\"></el-option>\r\n <el-option label=\"不完全满足应急要求\" value=\"2\"></el-option>\r\n <el-option label=\"完全不满足应急要求\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"人员到位情况\" prop=\"arrival\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.arrival\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"迅速准确,基本按时到位\" value=\"1\"></el-option>\r\n <el-option label=\"未按时到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-现场物资\" prop=\"supplies\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.supplies\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"现场物资充分,全部有效\" value=\"1\"></el-option>\r\n <el-option label=\"现场物资不充分\" value=\"2\"></el-option>\r\n <el-option label=\"现场没有物资\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-个人防护\" prop=\"protection\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.protection\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部人员防护到位\" value=\"1\"></el-option>\r\n <el-option label=\"人员未防护到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-整体组织\" prop=\"whole\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.whole\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"协调基本顺利,能够满足要求\" value=\"1\"></el-option>\r\n <el-option label=\"协调不顺利\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-疏散组分工\" prop=\"division\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.division\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"安全,快速\" value=\"1\"></el-option>\r\n <el-option label=\"安全,不快速\" value=\"2\"></el-option>\r\n <el-option label=\"不安全,快速\" value=\"3\"></el-option>\r\n <el-option label=\"不安全,不快速\" value=\"4\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实战效果评价\" prop=\"effect\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.effect\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"基本达到目的,部分环节有待改进\" value=\"1\"></el-option>\r\n <el-option label=\"未达到目的\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-报告上级\" prop=\"report\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.report\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"报告及时\" value=\"1\"></el-option>\r\n <el-option label=\"报告不及时\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-安全部门\" prop=\"safety\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.safety\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-救援后勤部门\" prop=\"rescue\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.rescue\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-警戒撤离配合\" prop=\"evacuate\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.evacuate\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求配合\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求配合\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"是否需要修改应急预案\" prop=\"needModify\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.needModify\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"是\" :value=\"true\"></el-option>\r\n <el-option label=\"否\" :value=\"false\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"存在问题和改进措施\" prop=\"questionAndImprove\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.questionAndImprove\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写备注信息\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"修改内容\" prop=\"modifyContent\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.modifyContent\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写修改内容\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"附件列表\">\r\n <el-upload\r\n v-model:file-list=\"ruleForm.userList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button v-if=\"!disabled\" size=\"default\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\"/>\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"selectUser\"/>\r\n<!-- <RegionsDialog ref=\"openRef\"/>-->\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport {\r\n UploadUserFile,\r\n FormInstance,\r\n ElMessage\r\n} from 'element-plus'\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport UserSelections from \"/@/components/userSelections/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport {emergencyDrillEvaluationApi} from \"/@/api/contingencyManagement/emergencyDrillEvaluation\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nexport default defineComponent({\r\n name: 'approvalProgress',\r\n components: {\r\n UserSelections,\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n //定义表单\r\n const realRuleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看演练实施评价') {\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n //演练人员\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n //演练负责人员\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n //实际到场人员\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n //演练负责人(评价)\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施查看评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n };\r\n // 关闭弹窗\r\n const closeDialog = () => {\r\n isShowDialog.value = false;\r\n };\r\n // 取消\r\n const onCancel = () => {\r\n closeDialog();\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ,\r\n ]\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = [\r\n\r\n ]\r\n // 必填项提示\r\n // const rules = reactive<FormRules>({\r\n // teamName: [\r\n // {\r\n // required: true,\r\n // message: '队伍名称不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLevel: [\r\n // {\r\n // required: true,\r\n // message: '队伍级别不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLeader: [\r\n // {\r\n // required: true,\r\n // message: '队伍负责人不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // responsibleDepartment: [\r\n // {\r\n // required: true,\r\n // message: '负责人部门不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamPhone: [\r\n // {\r\n // required: true,\r\n // message: '负责人手机不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // telephone: [\r\n // {\r\n // required: true,\r\n // message: '固定电话不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // })\r\n\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n //演练负责人(评价)\r\n ruleForm.value.userList = ruleForm.value.evaluationUserList\r\n\r\n\r\n\r\n realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId\r\n realRuleForm.value.suitable=ruleForm.value.suitable\r\n realRuleForm.value.sufficient=ruleForm.value.sufficient\r\n realRuleForm.value.arrival=ruleForm.value.arrival\r\n realRuleForm.value.supplies=ruleForm.value.supplies\r\n realRuleForm.value.protection=ruleForm.value.protection\r\n realRuleForm.value.whole=ruleForm.value.whole\r\n realRuleForm.value.division=ruleForm.value.division\r\n realRuleForm.value.effect=ruleForm.value.effect\r\n realRuleForm.value.report=ruleForm.value.report\r\n realRuleForm.value.safety=ruleForm.value.safety\r\n realRuleForm.value.rescue=ruleForm.value.rescue\r\n realRuleForm.value.evacuate=ruleForm.value.evacuate\r\n realRuleForm.value.needModify=ruleForm.value.needModify\r\n realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove\r\n realRuleForm.value.modifyContent=ruleForm.value.modifyContent\r\n realRuleForm.value.fileList=ruleForm.value.fileList\r\n if(ruleForm.value.userList){\r\n for(var a = 0;a<ruleForm.value.userList.length;a++){\r\n realRuleForm.value.userList.push({\r\n userUid:ruleForm.value.userList[a].userUid,\r\n userName:ruleForm.value.userList[a].userName\r\n })\r\n }\r\n }\r\n // console.log(ruleForm.value.evaluationUserList)\r\n // ruleForm.value.userList=[]\r\n // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){\r\n // // += res.data.data.evaluationUserList[a].userName+';'\r\n // }\r\n if (title == '演练实施评价') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n // console.log(ruleForm.value)\r\n emergencyDrillEvaluationApi()\r\n .editEmergencyDrillEvaluation(realRuleForm.value)\r\n // emergencyDrillExecuteApi()\r\n // .editEmergencyDrillExecute(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '评价成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n isShowDialog.value = false;\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n drillRecordDate: '', // 演练记录时间\r\n drillPlanId: '', //演练计划ID\r\n drillName:'',\r\n recordUserUid: '', // 记录人ID\r\n processDesc: '', // 演练过程描述\r\n userList: [\r\n {\r\n userUid: '',\r\n },\r\n {\r\n userUid: '',\r\n }\r\n ]\r\n };\r\n }\r\n }\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt=()=>{\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.drillPlanId=e.id\r\n };\r\n // 选择区域弹窗\r\n const openRef=ref()\r\n const regionsDialog=()=>{\r\n openRef.value.openDailog()\r\n }\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog(0);\r\n };\r\n\r\n const selectUser = (e) =>{\r\n ruleForm.value.evaluationUserListString=''\r\n ruleForm.value.evaluationUserList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.evaluationUserList.push(\r\n {\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.evaluationUserListString+=e[a].realName+';'\r\n }\r\n console.log(ruleForm.value.evaluationUserList)\r\n }\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n closeDialog,\r\n isShowDialog,\r\n onCancel,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n onUser,\r\n ruleFormRef,\r\n // rules,\r\n openUser,\r\n userRef,\r\n regionsDialog,\r\n openRef,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n resetForm,\r\n titles,\r\n disabled,\r\n emit,\r\n propse,\r\n department,\r\n newTreeList,\r\n selectUser,\r\n submitForm,\r\n realRuleForm\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.el-form .el-form-item{\r\n margin-bottom: 18px !important;\r\n display: flex;\r\n align-items: flex-start;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label{\r\n text-align: right;\r\n height: 100%;\r\n}\r\n.textarea{\r\n height: 90px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 90px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n.el-divider--horizontal {\r\n display: block;\r\n height: 1px;\r\n width: 100%;\r\n margin: 24px 0;\r\n background-color: #dcdfe6;\r\n position: relative;\r\n}\r\n.el-divider__text {\r\n position: absolute;\r\n background-color: #fff;\r\n padding: 0 20px;\r\n color: #303133;\r\n left: 50%;\r\n font-weight: 500;\r\n font-size: 14px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue ---- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (date 1660370066904) -@@ -167,20 +167,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="ruleForm.planFileList" :disabled="true"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -368,20 +355,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="附件列表"> -- <el-upload -- v-model:file-list="ruleForm.userList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -421,12 +396,14 @@ - import DailogSearchUser from "/@/components/DailogSearchUser/index.vue" - import {emergencyDrillEvaluationApi} from "/@/api/contingencyManagement/emergencyDrillEvaluation"; - import {goalManagementApi} from "/@/api/goalManagement"; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'approvalProgress', - components: { - UserSelections, - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -512,6 +489,8 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施评价'){ -@@ -548,6 +527,8 @@ - } - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施查看评价'){ -@@ -584,15 +565,41 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -- -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - } - }); - } -+ - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<ruleForm.value.planFileList.length;a++){ -+ ruleForm.value.planFileList[a].name = ruleForm.value.planFileList[a].fileName -+ } -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - }; - // 关闭弹窗 - const closeDialog = () => { -@@ -605,7 +612,7 @@ - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -663,6 +670,9 @@ - // }) - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - //演练负责人(评价) - ruleForm.value.userList = ruleForm.value.evaluationUserList - -@@ -861,7 +871,9 @@ - newTreeList, - selectUser, - submitForm, -- realRuleForm -+ realRuleForm, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -910,4 +922,4 @@ - font-weight: 500; - font-size: 14px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/panManagement/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-form :inline=\"true\" class=\"demo-form-inline\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.name\" placeholder=\"预案名称\" style=\"max-width: 215px\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select size=\"default\" v-model=\"listQuery.searchParams.type\" placeholder=\"请选择预案类型\" class=\"ml10\" style=\"max-width: 215px\">\r\n\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\"> 查询 </el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-form>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Plus /> </el-icon\r\n\t\t\t\t\t\t>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Edit /> </el-icon\r\n\t\t\t\t\t\t>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onabolishLibrary\"> 废止库 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Upload />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Download />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Refresh />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column prop=\"name\" label=\"预案名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column prop=\"type\" label=\"预案类型\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.type == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.type == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.type == 3\">专项应急预案</span>\r\n <span v-if=\"scope.row.type == 4\">其他预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"level\" label=\"预案级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.level == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.level == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.level == 3\">专项应急预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"releaseDate\" label=\"发布实施日期\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"isDialogFormVisible(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPlay /> </el-icon\r\n\t\t\t\t\t\t\t>启动\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"abolish(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPause /> </el-icon\r\n\t\t\t\t\t\t\t>废止\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<EditPen /> </el-icon\r\n\t\t\t\t\t\t\t>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 0 || scope.row.approveStatus === null\"\r\n\t\t\t\t\t\t\t@click=\"initiateApproval(scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t发起审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === true\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('修改',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === false\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('详情',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n 查看审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" v-if=\"scope.row.approveStatus === 3\" @click=\"onApprovalProcess(scope.row.id)\">\r\n\t\t\t\t\t\t\t查看审批流程\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"jumpFrom(0)\">-->\r\n\t\t\t\t\t\t<!-- <el-icon style=\"margin-right: 5px;\">-->\r\n\t\t\t\t\t\t<!-- <EditPen />-->\r\n\t\t\t\t\t\t<!-- </el-icon>修改-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"abolish(0)\">-->\r\n\t\t\t\t\t\t<!-- 发起审批-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t\t>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tclass=\"mt15\"\r\n\t\t\t\t\tbackground\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"onHandleSizeChange\"\r\n\t\t\t\t\t@current-change=\"onHandleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<AbolishLibrary ref=\"abolishRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<InitiateApproval ref=\"initiateApprovalRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<Approval ref=\"approvalRef\" @myAdd=\"onMyAdd\" />\r\n <ApprovalProcess ref=\"processRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<!-- <StartUp ref=\"startRef\" @myAdd=\"startUp\"/>-->\r\n\t\t<el-dialog v-model=\"dialogFormVisible\" width=\"30%\" title=\"启动\" :fullscreen=\"full\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" label-width=\"80px\">\r\n\t\t\t\t<el-form-item label=\"备注\">\r\n\t\t\t\t\t<el-input v-model=\"form.remark\" type=\"textarea\" autocomplete=\"off\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"dialogFormVisible = false\">取消</el-button>\r\n\t\t\t\t\t<el-button type=\"primary\" @click=\"onDetermine\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\n// import {useRouter} from \"vue-router\"\r\nimport type {} from // FormInstance,\r\n'element-plus';\r\nimport { Plus, Edit, Delete, Upload, Download, Refresh, VideoPause, VideoPlay, EditPen, FullScreen } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/contingencyManagement/panManagement/component/openAdd.vue';\r\n// import StartUp from '/@/views/contingencyManagement/panManagement/component/startUp.vue';\r\nimport AbolishLibrary from '/@/views/contingencyManagement/panManagement/component/abolishLibrary.vue';\r\nimport ApprovalProcess from '/@/views/contingencyManagement/panManagement/component/approvalProcess.vue';\r\nimport InitiateApproval from '/@/views/contingencyManagement/panManagement/component/initiateApproval.vue';\r\nimport Approval from '/@/views/contingencyManagement/panManagement/component/approval.vue';\r\n// import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { emergencyPlanLogApi } from '/@/api/contingencyManagement/emergencyPlanLog';\r\n\r\nexport default defineComponent({\r\n\tname: 'systemUser',\r\n\tcomponents: {\r\n\t\tOpenAdd,\r\n\t\t// StartUp,\r\n\t\tInitiateApproval,\r\n\t\tAbolishLibrary,\r\n\t\tApproval,\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tVideoPause,\r\n\t\tVideoPlay,\r\n ApprovalProcess,\r\n\t\t// UpData,\r\n\t\temergencyPlanApi,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tname: '',\r\n\t\t\t\ttype: '',\r\n\t\t\t\tabolishStatus: false,\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst onSubmit = async () => {\r\n\t\t\tlet res = await emergencyPlanApi().getEmergencyPlanList(listQuery);\r\n\t\t\tif (res.data.code === '200') {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.name = '';\r\n\t\t\tlistQuery.searchParams.type = '';\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\r\n\t\t// 上传\r\n\t\t// const upShow=ref()\r\n\t\t// const upButton=()=>{\r\n\t\t// upShow.value.openDialog()\r\n\t\t// }\r\n\t\t// 启动弹窗\r\n\t\tconst isDialogFormVisible = (data: any) => {\r\n\t\t\tdialogFormVisible.value = true;\r\n\t\t\tform.value.planId = data;\r\n\t\t};\r\n\t\tconst dialogFormVisible = ref(false);\r\n\t\tconst form = ref({\r\n\t\t\tremark: '',\r\n\t\t});\r\n\t\tconst onDetermine = () => {\r\n\t\t\tdialogFormVisible.value = false;\r\n\t\t\temergencyPlanLogApi()\r\n\t\t\t\t.addEmergencyPlanLog(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tremark: '',\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 打开新增用户弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建应急预案管理', false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tonSubmit();\r\n\t\t\t} else {\r\n\t\t\t\tonSubmit();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 打开修改应急预案管理弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看应急预案管理', row, true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改应急预案管理', row, false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t//打开废止库弹窗\r\n\t\tconst abolishRef = ref();\r\n\t\tconst onabolishLibrary = () => {\r\n\t\t\tabolishRef.value.openDialog();\r\n\t\t};\r\n\t\t// 废止\r\n\t\tconst abolish = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定要废止所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.EmergencyTeam(data)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\t// 删除用户\r\n\t\tconst onRowDel = (id: number) => {\r\n\t\t\tlet arr = [];\r\n\t\t\tarr.push(id);\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\tconst deleteAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeleteAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(deleteAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst onHandleSizeChange = (val: number) => {\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst onHandleCurrentChange = (val: number) => {\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\r\n\t\t// const router=useRouter()\r\n\t\t// 修改跳转\r\n\t\t// const jumpFrom=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/processForm\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批跳转\r\n\t\t// const abolish=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/abolishDialog\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批弹窗\r\n\t\tconst initiateApprovalRef = ref();\r\n\t\tconst initiateApproval = (row: object) => {\r\n\t\t\tinitiateApprovalRef.value.openDialog('发起审批',row, true);\r\n\t\t};\r\n\t\t// 审批\r\n\t\tconst approvalRef = ref();\r\n\t\tconst onApproval = (val: string,row: object,id) => {\r\n if(val=='详情'){\r\n approvalRef.value.openDialog('查看审批', row, true);\r\n } else {\r\n approvalRef.value.openDialog('审批', row, false,id);\r\n }\r\n\t\t};\r\n // 审批流程\r\n const processRef = ref();\r\n const onApprovalProcess = (row:object,id) => {\r\n processRef.value.openDialog(row,id);\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 页面加载时\r\n\t\tonMounted(() => {\r\n\t\t\tonSubmit();\r\n\t\t});\r\n\t\treturn {\r\n\t\t\ttableData,\r\n\t\t\tonSubmit,\r\n\t\t\tonOpenAdd, //新增\r\n\t\t\taddRef,\r\n\t\t\tonabolishLibrary,\r\n\t\t\tabolishRef,\r\n\t\t\tabolish,\r\n\t\t\tonRowDel,\r\n\t\t\tonHandleSizeChange,\r\n\t\t\tonHandleCurrentChange,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tlistQuery,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\tsubmitReset,\r\n\t\t\tonMounted,\r\n\t\t\tdeleteAll,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDeleteAll,\r\n\t\t\tdialogFormVisible,\r\n\t\t\tisDialogFormVisible,\r\n\t\t\tform,\r\n\t\t\temit,\r\n\t\t\tonDetermine,\r\n\t\t\tonEdit,\r\n\t\t\tinitiateApproval,\r\n\t\t\tinitiateApprovalRef,\r\n\t\t\tonApproval,\r\n\t\t\tapprovalRef,\r\n onApprovalProcess,\r\n processRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n\tmargin-bottom: 10px;\r\n}\r\n.el-form .el-form-item {\r\n\tmargin-bottom: 0 !important;\r\n}\r\n.el-button--text {\r\n\tmargin-right: 15px;\r\n}\r\n.el-select {\r\n\twidth: 300px;\r\n}\r\n.el-input {\r\n\twidth: 300px;\r\n}\r\n.dialog-footer button:first-child {\r\n\tmargin-right: 10px;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer {\r\n\tborder-top: 1px solid #e8e8e8;\r\n\tborder-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n\tborder-bottom: 1px solid #e8e8e8;\r\n\tmargin-right: 0;\r\n\tborder-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n\tbackground-color: #f6f7fa;\r\n\tfont-weight: 400;\r\n\tcolor: #909399;\r\n}\r\n.el-table .sort-caret.ascending {\r\n\tborder-bottom-color: #c0c4cc;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue ---- a/src/views/contingencyManagement/panManagement/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/panManagement/index.vue (date 1660370066925) -@@ -23,19 +23,13 @@ - <div class="button_Line"> - <div class="button_Left"> - <el-button size="default" type="primary" @click="onOpenAdd"> -- <el-icon> -- <Plus /> </el-icon -- >新建 -+ <el-icon> <Plus /> </el-icon>新建 - </el-button> - <el-button size="default" type="warning" plain :disabled="warning"> -- <el-icon> -- <Edit /> </el-icon -- >修改 -+ <el-icon> <Edit /> </el-icon>修改 - </el-button> - <el-button size="default" type="danger" plain :disabled="danger" @click="onDeleteAll"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - <el-button size="default" type="primary" @click="onabolishLibrary"> 废止库 </el-button> - </div> -@@ -61,37 +55,31 @@ - <el-table-column type="selection" width="55" /> - <el-table-column prop="name" label="预案名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.type == 1">综合应急预案</span> -- <span v-if="scope.row.type == 2">现场处置方案</span> -- <span v-if="scope.row.type == 3">专项应急预案</span> -- <span v-if="scope.row.type == 4">其他预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.type == 1">综合应急预案</span> -+ <span v-if="scope.row.type == 2">现场处置方案</span> -+ <span v-if="scope.row.type == 3">专项应急预案</span> -+ <span v-if="scope.row.type == 4">其他预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="level" label="预案级别" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.level == 1">综合应急预案</span> -- <span v-if="scope.row.level == 2">现场处置方案</span> -- <span v-if="scope.row.level == 3">专项应急预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.level == 1">综合应急预案</span> -+ <span v-if="scope.row.level == 2">现场处置方案</span> -+ <span v-if="scope.row.level == 3">专项应急预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="releaseDate" label="发布实施日期" show-overflow-tooltip sortable></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="isDialogFormVisible(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPlay /> </el-icon -- >启动 -+ <el-icon style="margin-right: 5px"> <VideoPlay /> </el-icon>启动 - </el-button> - <el-button size="small" text type="primary" @click="abolish(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPause /> </el-icon -- >废止 -+ <el-icon style="margin-right: 5px"> <VideoPause /> </el-icon>废止 - </el-button> - <el-button size="small" text type="primary" @click="onEdit('修改', scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <EditPen /> </el-icon -- >修改 -+ <el-icon style="margin-right: 5px"> <EditPen /> </el-icon>修改 - </el-button> - <el-button - size="small" -@@ -107,7 +95,7 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === true" -- @click="onApproval('修改',scope.row.approveId,scope.row.id)" -+ @click="onApproval('修改', scope.row.approveId, scope.row.id)" - > - 审批 - </el-button> -@@ -116,9 +104,9 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === false" -- @click="onApproval('详情',scope.row.approveId,scope.row.id)" -+ @click="onApproval('详情', scope.row.approveId, scope.row.id)" - > -- 查看审批 -+ 查看审批 - </el-button> - <el-button size="small" text type="primary" v-if="scope.row.approveStatus === 3" @click="onApprovalProcess(scope.row.id)"> - 查看审批流程 -@@ -132,9 +120,7 @@ - <!-- 发起审批--> - <!-- </el-button>--> - <el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - </template> - </el-table-column> -@@ -159,7 +145,7 @@ - <AbolishLibrary ref="abolishRef" @myAdd="onMyAdd" /> - <InitiateApproval ref="initiateApprovalRef" @myAdd="onMyAdd" /> - <Approval ref="approvalRef" @myAdd="onMyAdd" /> -- <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> -+ <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> - <!-- <StartUp ref="startRef" @myAdd="startUp"/>--> - <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -@@ -212,7 +198,7 @@ - Refresh, - VideoPause, - VideoPlay, -- ApprovalProcess, -+ ApprovalProcess, - // UpData, - emergencyPlanApi, - }, -@@ -469,22 +455,22 @@ - // 发起审批弹窗 - const initiateApprovalRef = ref(); - const initiateApproval = (row: object) => { -- initiateApprovalRef.value.openDialog('发起审批',row, true); -+ initiateApprovalRef.value.openDialog('发起审批', row, true); - }; - // 审批 - const approvalRef = ref(); -- const onApproval = (val: string,row: object,id) => { -- if(val=='详情'){ -- approvalRef.value.openDialog('查看审批', row, true); -- } else { -- approvalRef.value.openDialog('审批', row, false,id); -- } -+ const onApproval = (val: string, row: object, id) => { -+ if (val == '详情') { -+ approvalRef.value.openDialog('查看审批', row, true); -+ } else { -+ approvalRef.value.openDialog('审批', row, false, id); -+ } - }; -- // 审批流程 -- const processRef = ref(); -- const onApprovalProcess = (row:object,id) => { -- processRef.value.openDialog(row,id); -- }; -+ // 审批流程 -+ const processRef = ref(); -+ const onApprovalProcess = (row: object, id) => { -+ processRef.value.openDialog(row, id); -+ }; - - //全屏 - const full = ref(false); -@@ -535,8 +521,8 @@ - initiateApprovalRef, - onApproval, - approvalRef, -- onApprovalProcess, -- processRef, -+ onApprovalProcess, -+ processRef, - }; - }, - }); -@@ -625,4 +611,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetDecompositionYear/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title,ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\tadd,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue ---- a/src/views/goalManagement/targetDecompositionYear/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetDecompositionYear/index.vue (date 1660370066930) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="tableData.targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -103,6 +103,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/targetDecompositionYear/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"目标分解\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"formUp.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" property=\"dutyDepartmentName\" label=\"责任部门\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"value\" label=\"考核指标\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makerDepartmentName\" label=\"制定人部门\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"commitPersonName\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"Delete(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"disabled == false\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { emit } from 'process';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { DailogAdd, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tqName: '',\r\n\t\t\tindexNum: '',\r\n\t\t\tyear: '',\r\n\t\t\tvalue: '',\r\n\t\t\ttargetDivideDetailList: [],\r\n\t\t});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t\tformUp.targetDivideDetailList = form.value.targetDivideDetailList;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (val: object) => {\r\n\t\t\tform.value = val;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = formUp.targetDivideDetailList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst formUp = reactive({\r\n\t\t\ttargetId: '', //关联的目标指标/外键\r\n\t\t\tdelTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n\t\t\ttargetDivideDetailList: [], //目标指标分解列表\r\n\t\t});\r\n\r\n\t\tconst add = (val: any) => {\r\n\t\t\tconst item = deepClone(val);\r\n\t\t\tconsole.log(item)\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tformUp.targetDivideDetailList.push(item);\r\n\t\t\t} else {\r\n\t\t\t\tformUp.targetDivideDetailList[index.value] = item;\r\n\t\t\t}\r\n\r\n\t\t\t// let obj=JSON.parse(JSON.stringify(form.value))\r\n\t\t};\r\n\t\t// 新增\r\n\t\tconst submitForm = () => {\r\n\t\t\tformUp.delTargetDivideDetails = arr.value.toString();\r\n\t\t\tformUp.targetId = form.value.id;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tfor(let i=0;i<formUp.targetDivideDetailList.length;i++){\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].dutyDepartmentName\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].makerDepartmentName\r\n\t\t\t}\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDivideDetail(formUp)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('addList');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\tconst arr = ref([]);\r\n\t\t// 删除\r\n\t\tconst Delete = (data: any) => {\r\n\t\t\tformUp.targetDivideDetailList.splice(form.value.targetDivideDetailList.indexOf(data), 1);\r\n\t\t\tformUp.targetId = data.targetId;\r\n\t\t\tarr.value.push(data.id);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\t\t// 关闭\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 时间格式处理\r\n\t\t// const timeDate = (data: any) => {\r\n\t\t// \tlet result = new Date(data).getTime();\r\n\t\t// \treturn result;\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\ttimeDate,\r\n\t\t\tarr,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tonNumber,\r\n\t\t\ttargetType,\r\n\t\t\tdisabled,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tadd,\r\n\t\t\tformUp,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue ---- a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (date 1660370066935) -@@ -40,7 +40,7 @@ - <el-table-column align="center" property="dutyDepartmentName" label="责任部门" width="180" /> - <el-table-column align="center" property="value" label="考核指标" width="180" /> - <el-table-column align="center" property="makerDepartmentName" label="制定人部门" /> -- <el-table-column align="center" property="makeDate" label="制定日期" /> -+ <el-table-column align="center" property="makeDate" :formatter="timeDate" label="制定日期" /> - <el-table-column align="center" property="commitPersonName" label="上报人" /> - <el-table-column align="center" property="操作"> - <template #default="scope"> -@@ -96,12 +96,28 @@ - if (res.data.code == 200) { - form.value = res.data.data; - formUp.targetDivideDetailList = form.value.targetDivideDetailList; -+ for(let i=0;i<formUp.targetDivideDetailList.length;i++){ -+ formUp.targetDivideDetailList[i].makeDate=timeC(formUp.targetDivideDetailList[i].makeDate) -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - } - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - const onNumber = (val: object) => { - form.value = val; - }; -@@ -209,6 +225,7 @@ - // return result; - // }; - return { -+ timeC, - index, - timeDate, - arr, -Index: src/views/contingencyManagement/panManagement/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog\r\n\t\t\t:title=\"titles\"\r\n\t\t\tv-model=\"isShowDialog\"\r\n\t\t\twidth=\"50%\"\r\n\t\t\tdraggable\r\n\t\t\t:fullscreen=\"full\"\r\n\t\t\t:close-on-click-modal=\"false\"\r\n\t\t\t@close=\"resetForm(ruleFormRef)\"\r\n\t\t>\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :disabled=\"disabled\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案名称\" prop=\"name\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.name\" placeholder=\"请填写队伍名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"适用部门\" prop=\"responsibleDepartment\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"responsibleDepartment\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\t\tcheck-on-click-node\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t\t@change=\"changeDepartment\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t<el-divider />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案类型\" prop=\"type\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.type\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"危险源关联\" prop=\"associatedDanger\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.associatedDanger\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"是\" :value=\"false\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"否\" :value=\"true\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案级别\" prop=\"level\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.level\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"公司级\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"分厂级\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"车间级\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写人\" prop=\"authorId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.authorName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写部门\" prop=\"authorDeptId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.authorDeptId\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发布实施日期\" prop=\"releaseDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.releaseDate\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急队伍\" prop=\"emergencyTeam\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.teamName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt(0)\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\t\t:on-change=\"handleChange\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"区域名称\" prop=\"areaName\">-->\r\n\t\t\t\t\t<!-- <el-input-->\r\n\t\t\t\t\t<!-- v-model=\"ruleForm.areaName\"-->\r\n\t\t\t\t\t<!-- placeholder=\"请选择\"-->\r\n\t\t\t\t\t<!-- class=\"input-with-select\"-->\r\n\t\t\t\t\t<!-- >-->\r\n\t\t\t\t\t<!-- <template #append>-->\r\n\t\t\t\t\t<!-- <el-button :icon=\"Search\" @click=\"regionsDialog\"/>-->\r\n\t\t\t\t\t<!-- </template>-->\r\n\t\t\t\t\t<!-- </el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<CheckTemplate ref=\"Shows\" @SearchUser=\"SearchUser\" />\r\n\t\t<DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { ref, defineComponent, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst ruleForm = ref({\r\n\t\t\tname: '', // 预案名称\r\n\t\t\ttype: '', //预案类型\r\n\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\tlevel: '', // 预案级别\r\n\t\t\tauthorUid: '', // 编写人\r\n\t\t\tauthorName: '',\r\n\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\tfileList: [],\r\n\t\t\tareaList: [], //区域列表\r\n\t\t\tteamList: [],\r\n\t\t\t// teamId: '', //应急队伍\r\n\t\t\tdeptList: [],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看应急预案管理' || title == '修改应急预案管理') {\r\n\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t.seeEmergencyTeam(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\truleForm.value.teamName = ''\r\n\t\t\t\t\t\t\tresponsibleDepartment.value = []\r\n\t\t\t\t\t\t\tif(res.data.data.teamList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.teamList.length;a++){\r\n\t\t\t\t\t\t\t\t\truleForm.value.teamName+=res.data.data.teamList[a].teamName+';'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif(res.data.data.deptList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.deptList.length;a++){\r\n\r\n\t\t\t\t\t\t\t\t\tresponsibleDepartment.value.push(res.data.data.deptList[a].departmentId)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst releaseDate = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst changeDepartment = (e) => {\r\n\t\t\tvar temList = [];\r\n\t\t\tfor (var a = 0; a < e.length; a++) {\r\n\t\t\t\ttemList.push({\r\n departmentId: e[a],\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.deptList = temList;\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t};\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref([]);\r\n\t\tconst data = ref();\r\n\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\tdelete ruleForm.value.teamName\r\n\t\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t\t.addEmergencyPlan(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n delete ruleForm.value.teamName\r\n emergencyPlanApi()\r\n\t\t\t\t\t\t\t.editEmergencyTeam(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tname: '', // 预案名称\r\n\t\t\t\t\ttype: '', //预案类型\r\n\t\t\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\t\t\tlevel: '', // 预案级别\r\n\t\t\t\t\tauthorUid: '', // 编写人\r\n\t\t\t\t\tauthorName: '',\r\n\t\t\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\t// teamId: '', //应急队伍ID\r\n\t\t\t\t\tareaList: [], //区域列表\r\n\t\t\t\t\tteamList: [],\r\n\t\t\t\t\tdeptList: [],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\truleForm.value = {};\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (data: any) => {\r\n\t\t\tShows.value.openDailog(data);\r\n\t\t};\r\n\t\tconst SearchUser = (val: any) => {\r\n\t\t\tlet arr = [];\r\n\t\t\truleForm.value.teamList = [];\r\n\t\t\tfor (let i = 0; i < val.length; i++) {\r\n\t\t\t\tarr.push(val[i].teamName);\r\n\t\t\t\truleForm.value.teamList.push({\r\n\t\t\t\t\tteamId: val[i].id,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.teamName = arr.toString();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\t//回显\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\truleForm.value.authorUid = e[0].uid;\r\n\t\t\truleForm.value.authorName = e[0].realName;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\treleaseDate,\r\n\t\t\t// treeSelect,\r\n\t\t\t// trees,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\tSearchUser,\r\n\t\t\tsubmitForm,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tisShowDialog,\r\n\t\t\truleFormRef,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonUser,\r\n\t\t\tnewTreeList,\r\n\t\t\tchangeDepartment,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue ---- a/src/views/contingencyManagement/panManagement/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue (date 1660370066964) -@@ -106,17 +106,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <!-- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">--> -@@ -158,13 +149,14 @@ - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan'; - import { goalManagementApi } from '/@/api/goalManagement'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - CheckTemplate, - DailogSearchUserManger, - RegionsDialog, -+ uploaderFile - }, - setup(prop, { emit }) { - const isShowDialog = ref(false); -@@ -211,15 +203,35 @@ - responsibleDepartment.value.push(res.data.data.deptList[a].departmentId) - } - } -- -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const releaseDate = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ const fileList = ref([]); - //el-tree-select回显 - const propse = { - label: 'depName', -@@ -272,6 +284,9 @@ - const data = ref(); - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急预案管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -306,10 +321,9 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] -- isShowDialog.value = false; -- delete ruleForm.value.teamName -- emergencyPlanApi() -+ isShowDialog.value = false; -+ delete ruleForm.value.teamName -+ emergencyPlanApi() - .editEmergencyTeam(ruleForm.value) - .then((res) => { - if (res.data.code == 200) { -@@ -356,6 +370,7 @@ - if (!formEl) return; - formEl.resetFields(); - ruleForm.value = {}; -+ fileList.value = [] - }; - // 应急队伍弹窗 - const Shows = ref(); -@@ -429,6 +444,8 @@ - onUser, - newTreeList, - changeDepartment, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -451,4 +468,4 @@ - .el-select { - width: 100%; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetDecompositionMonth/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport search from '../targetSettings/component/search.vue';\r\nimport Dailog from '../targetDecompositionYear/component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '2', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tadd,\r\n\t\t\tlistApi,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue ---- a/src/views/goalManagement/targetDecompositionMonth/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue (date 1660370066984) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -105,6 +105,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/performanceAppraisal/component/DailogAq.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"handleClose(ruleFormRef)\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核标题\" size=\"default\" prop=\"title\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\" placeholder=\"请填写考核标题\"></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核日期\" size=\"default\" prop=\"examineDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.examineDate\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\" prop=\"acceptanceNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"总分\" size=\"default\" prop=\"examineTotalNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examineTotalNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核部门\" size=\"default\" prop=\"examineDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.examineDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData1\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核人\" size=\"default\" prop=\"examinePersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examinePersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(1)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"被考核部门\" size=\"default\" prop=\"beExaminedDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.beExaminedDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData2\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"被考核人\" size=\"default\" prop=\"beExaminedPersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.beExaminedPersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(0)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\" size=\"default\" prop=\"examineTemplateName\">\r\n\t\t\t\t\t\t<el-input disabled v-model=\"form.examineTemplateName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiAdd\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"考核项目\" name=\"1\">\r\n\t\t\t\t<!-- <el-button type=\"primary\" size=\"default\" @click=\"daiAdd\">新增</el-button> -->\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"考核项目\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"考核分数\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t<el-input v-model=\"scope.row.address\" type=\"textarea\"> </el-input>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t\t<!-- <el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default>\r\n\t\t\t\t\t<el-button link type=\"primary\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column> -->\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Show\"></DailogSearch>\r\n\t<DailogSearchUser ref=\"Shows\" @SearchUser=\"userId\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tbeExaminedDepartmentId: '', ////被考核部门ID/外键\r\n\t\t\tbeExaminedDepartmentName: '',\r\n\t\t\tbeExaminedPersonId: '', ////被考核人ID/外键(可能有多个,用逗号隔开)\r\n\t\t\tbeExaminedPersonName: '',\r\n\t\t\texamineDate: '', ////考核日期\r\n\t\t\texamineDepartmentId: '', ////考核部门ID/外键\r\n\t\t\texamineDepartmentName: '',\r\n\t\t\texaminePersonId: '', ////考核人ID/外键\r\n\t\t\texaminePersonName: '',\r\n\t\t\texamineTemplateId: 1, ////绩效考核模板ID/外键\r\n\t\t\texamineTemplateName: '',\r\n\t\t\texamineTotalNumber: '', ////总分\r\n\t\t\textraFile: '9', //责任书附件\r\n\t\t\titemDetail: '', ////考核项目\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tnumberDetailJson: '[{\"id\":\"123\",\"number\":\"123\"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:\"123\",\"number\":\"123\"}]\r\n\t\t\ttitle: '', ////考核标题\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdepartment();\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 验证\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\ttitle: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }],\r\n\t\t\texamineDate: [{ required: true, message: '考核日期不能为空', trigger: 'blur' }],\r\n\t\t\texamineDepartmentId: [{ required: true, message: '考核部门不能为空', trigger: 'blur' }],\r\n\t\t\texaminePersonName: [],\r\n\t\t\texaminePersonId: [],\r\n\t\t\tbeExaminedDepartmentId: [{ required: true, message: '被考核部门不能为空', trigger: 'blur' }],\r\n\t\t\tbeExaminedPersonName: [],\r\n\t\t\tbeExaminedPersonId: [],\r\n\t\t\texamineTemplateId: [],\r\n\t\t\texamineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }],\r\n\t\t\tmemo: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst handleClose=(formEl: FormInstance | undefined)=>{\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t}\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (type: any) => {\r\n\t\t\tShows.value.openDailog(type);\r\n\t\t};\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst userId = (val: any, type: any) => {\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.examinePersonId = val.uid;\r\n\t\t\t\tform.value.examinePersonName = val.realName;\r\n\t\t\t} else if (type == 0) {\r\n\t\t\t\tlet uid=[]\r\n\t\t\t\tlet realName=[]\r\n\t\t\t\tfor(let i=0;i<val.length;i++){\r\n\t\t\t\t\tuid.push(val[i].uid)\r\n\t\t\t\t\trealName.push(val[i].realName)\r\n\t\t\t\t}\r\n\t\t\t\tform.value.beExaminedPersonId = uid.toString();\r\n\t\t\t\tform.value.beExaminedPersonName =realName.toString();\r\n\t\t\t\tconsole.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName)\r\n\t\t\t}\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst nameData1 = (val: any) => {\r\n\t\t\tform.value.examineDepartmentName = val.depName;\r\n\t\t};\r\n\t\tconst nameData2 = (val: any) => {\r\n\t\t\tform.value.beExaminedDepartmentName = val.depName;\r\n\t\t\tconsole.log(form.value);\r\n\t\t};\r\n\t\treturn {\r\n\t\t\trules,\r\n\t\t\thandleClose,\r\n\t\t\tnameData1,\r\n\t\t\tnameData2,\r\n\t\t\truleFormRef,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tuserId,\r\n\t\t\tactiveName,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\topenDailog,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (date 1660370066991) -@@ -10,7 +10,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="考核日期" size="default" prop="examineDate"> -- <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.examineDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -72,30 +79,16 @@ - </el-row> - <el-row> - <el-col :span="24"> -- <el-form-item label="考核模板"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <el-form-item label="附件"> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="考核模板" size="default" prop="examineTemplateName"> -- <el-input disabled v-model="form.examineTemplateName"> -+ <el-input v-model="form.examineTemplateName"> - <template #append> <el-button :icon="Search" @click="daiAdd" /></template> - </el-input> - </el-form-item> -@@ -112,12 +105,12 @@ - <!-- <el-button type="primary" size="default" @click="daiAdd">新增</el-button> --> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" prop="date" label="考核项目" /> -- <el-table-column align="center" prop="name" label="考核内容" /> -+ <el-table :data="form.numberDetailJson" style="width: 100%"> -+ <el-table-column align="center" prop="itemDetail" label="考核项目" /> -+ <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" label="考核分数"> - <template #default="scope"> -- <el-input v-model="scope.row.address" type="textarea"> </el-input> -+ <el-input @blur="numberC" v-model.number="scope.row.number"> </el-input> - </template> - </el-table-column> - <!-- <el-table-column align="center" prop="address" label="制定日期" /> -@@ -135,7 +128,7 @@ - </span> - </template> - </el-dialog> -- <DailogSearch ref="Show"></DailogSearch> -+ <DailogSearch ref="Show" @typeDome="onType"></DailogSearch> - <DailogSearchUser ref="Shows" @SearchUser="userId"></DailogSearchUser> - </template> - <script lang="ts"> -@@ -147,8 +140,9 @@ - import { goalManagementApi } from '/@/api/goalManagement'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearchUser, DailogSearch }, -+ components: { DailogSearchUser, DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const ruleFormRef = ref<FormInstance>(); -@@ -162,13 +156,14 @@ - examineDepartmentName: '', - examinePersonId: '', ////考核人ID/外键 - examinePersonName: '', -- examineTemplateId: 1, ////绩效考核模板ID/外键 -+ examineTemplateId: '', ////绩效考核模板ID/外键 - examineTemplateName: '', - examineTotalNumber: '', ////总分 -- extraFile: '9', //责任书附件 -+ acceptanceNumber: '', ///合格分数 -+ extraFile: '', //责任书附件 - itemDetail: '', ////考核项目 - memo: '', ////备注信息 -- numberDetailJson: '[{"id":"123","number":"123"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] -+ numberDetailJson: [], ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] - title: '', ////考核标题 - }); - const titles = ref(); -@@ -185,11 +180,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.examineDate = timeC(form.value.examineDate); -+ form.value.numberDetailJson = form.value.currentExamineDtoList; -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } -+ -+ // fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m + `:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 验证 - const rules = reactive<FormRules>({ - title: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }], -@@ -204,12 +258,39 @@ - examineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }], - memo: [], - }); -+ // 接收 -+ const onType = (data: any, val: any) => { -+ form.value.examineTotalNumber = ''; -+ form.value.examineTemplateId = data.id; -+ form.value.examineTemplateName = data.title; -+ form.value.acceptanceNumber = data.acceptanceNumber; -+ form.value.numberDetailJson = val.examineItemList; -+ }; -+ const numberC = () => { -+ let arr = 0; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ if (form.value.numberDetailJson[i].number != undefined) { -+ arr = parseInt(arr) + parseInt(form.value.numberDetailJson[i].number); -+ } else { -+ arr = parseInt(arr) + 0; -+ } -+ } -+ form.value.examineTotalNumber = arr; -+ }; - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - dialogVisible.value = false; -+ let arr = []; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ arr.push({ -+ id: form.value.numberDetailJson[i].id, -+ number: form.value.numberDetailJson[i].number, -+ }); -+ } -+ form.value.numberDetailJson = JSON.stringify(arr); - goalManagementApi() - .getexamineMngAddOrUpdate(form.value) - .then((res) => { -@@ -234,10 +315,11 @@ - dialogVisible.value = false; - formEl.resetFields(); - }; -- const handleClose=(formEl: FormInstance | undefined)=>{ -+ const handleClose = (formEl: FormInstance | undefined) => { - if (!formEl) return; - formEl.resetFields(); -- } -+ fileList.value=[] -+ }; - const activeName = ref('1'); - // 新增弹窗 - const Show = ref(); -@@ -250,16 +332,7 @@ - Shows.value.openDailog(type); - }; - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref<UploadUserFile[]>([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -284,15 +357,15 @@ - form.value.examinePersonId = val.uid; - form.value.examinePersonName = val.realName; - } else if (type == 0) { -- let uid=[] -- let realName=[] -- for(let i=0;i<val.length;i++){ -- uid.push(val[i].uid) -- realName.push(val[i].realName) -+ let uid = []; -+ let realName = []; -+ for (let i = 0; i < val.length; i++) { -+ uid.push(val[i].uid); -+ realName.push(val[i].realName); - } - form.value.beExaminedPersonId = uid.toString(); -- form.value.beExaminedPersonName =realName.toString(); -- console.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName) -+ form.value.beExaminedPersonName = realName.toString(); -+ console.log(form.value.beExaminedPersonId, form.value.beExaminedPersonName); - } - }; - //全屏 -@@ -331,6 +404,9 @@ - }; - return { - rules, -+ timeC, -+ numberC, -+ onType, - handleClose, - nameData1, - nameData2, -@@ -360,6 +436,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -368,4 +446,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/component/DailogKh.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"新建考核标准设定\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"标准标题\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"适用范围\" size=\"default\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.applyRange\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<div v-if=\"clickType\">\r\n\t\t\t\t<el-row>\r\n\t\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"form.setPersonId\" disabled>\r\n\t\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /></template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人部门\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"form.setPersonDepartmentId\" disabled style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone one\" value=\"shanghai\" />\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone two\" value=\"beijing\" />\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</div>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"模板分类编码\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.templateCode\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\" v-if=\"clickType\">\r\n\t\t\t\t\t<el-form-item label=\"设定日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker disabled v-model=\"form.setTimem\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增','')\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"form.examineItemList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogKhS ref=\"Show\" @onAdd=\"AddObj\"></DailogKhS>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogKhS from './DailogKhS.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogKhS },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\tsetTimem: 1658386392466,\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\ttitle: '', ////标准标题\r\n\t\t\tsetPersonId: 1, //设定人\r\n\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\tapplyRange: '', ////适用范围\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst clickType = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineTemplateDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tclickType.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 接受传值\r\n\t\tconst AddObj = (val: any) => {\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.examineItemList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.examineItemList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.examineItemList.splice(form.value.examineItemList.indexOf(tag), 1);\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateAddOrUpdate(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.examineItemList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\tdeleteA,\r\n\t\t\tAddObj,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\tclickType,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (date 1660370066996) -@@ -62,7 +62,7 @@ - </el-row> - </el-form> - <el-tabs v-model="activeName" class="demo-tabs"> -- <el-tab-pane label="目标指标分解" name="1"> -+ <el-tab-pane label="考核项目" name="1"> - <el-button type="primary" size="default" @click="daiAdd('新增','')">新增</el-button> - </el-tab-pane> - </el-tabs> -@@ -238,4 +238,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"安全考核管理\" name=\"1\">\r\n\t\t\t\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.searchParams.examineDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.currentExamineDtoList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"number\" label=\"考核分数\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column property=\"examineDate\" align=\"center\" :formatter=\"timeDate\" label=\"考核日期\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examineDepartmentName\" align=\"center\" label=\"考核部门\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examinePersonName\" label=\"考核人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"beExaminedDepartmentName\" label=\"被考核部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"examineTotalNumber\" label=\"总分\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"numberDetailJson.number\" label=\"考核结果\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"extraFile\" label=\"附件\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"考核标准设定\" name=\"2\">\r\n\t\t\t\t\t<el-form :model=\"ruleForms\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForms.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApis\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForms\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openDs('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warnings\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"dangers\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAlls\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableDatas\" style=\"width: 100%\" @selection-change=\"handleSelectionChanges\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableDatas.examineItemList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column label=\"标准标题\" property=\"title\" align=\"center\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"applyRange\" align=\"center\" label=\"适用范围\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonName\" label=\"设定人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonDepartmentName\" label=\"设定人部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setTimem\" label=\"设定日期\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"templateCode\" label=\"模板分类编码\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"acceptanceNumber\" label=\"合格分数\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDs('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openDs('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDeletes(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4s\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4s\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"totals\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChanges\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChanges\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t</div>\r\n\t\t<DailogAq ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAq>\r\n\t\t<DailogKh ref=\"openAdds\" @navAddorUpdata=\"onAddorUpdatas\"></DailogKh>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogAq from './component/DailogAq.vue';\r\nimport DailogKh from './component/DailogKh.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAq, DailogKh },\r\n\tsetup() {\r\n\t\t// 搜索条件 安全考核管理\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\texamineDepartmentId: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD= (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 切换\r\n\t\tconst activeName = ref('1');\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tif (val == '1') {\r\n\t\t\t\tlistApi();\r\n\t\t\t}else{\r\n\t\t\t\tlistApis();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 搜索条件 考核标准设定\r\n\t\tconst ruleForms = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForms = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApis = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableDatas.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4s.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4s.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotals.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApis();\r\n\t\t\tdepartment()\r\n\t\t});\r\n\t\tconst onAddorUpdatas = () => {\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableDatas = ref();\r\n\t\tconst currentPage4s = ref();\r\n\t\tconst pageSize4s = ref();\r\n\t\tconst totals = ref();\r\n\t\tconst handleSizeChanges = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForms.pageSize = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\tconst handleCurrentChanges = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForms.pageIndex = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdds = ref();\r\n\t\tconst openDs = (title: String, id: number) => {\r\n\t\t\topenAdds.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDeletes = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warnings = ref(true);\r\n\t\tconst dangers = ref(true);\r\n\t\tconst deletAlls = ref();\r\n\t\tconst handleSelectionChanges = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAlls.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarnings.value = false;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAlls = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tactiveName,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\truleForms,\r\n\t\t\tresetForms,\r\n\t\t\tlistApis,\r\n\t\t\tonAddorUpdatas,\r\n\t\t\ttableDatas,\r\n\t\t\tcurrentPage4s,\r\n\t\t\tpageSize4s,\r\n\t\t\ttotals,\r\n\t\t\thandleSizeChanges,\r\n\t\t\thandleCurrentChanges,\r\n\t\t\topenAdds,\r\n\t\t\topenDs,\r\n\t\t\tonDeletes,\r\n\t\t\twarnings,\r\n\t\t\tdangers,\r\n\t\t\tdeletAlls,\r\n\t\t\thandleSelectionChanges,\r\n\t\t\tonDeleteAlls,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 20px;\r\n}\r\n.topTitle {\r\n\tpadding: 5px 0 20px 0;\r\n\tborder-bottom: 1px solid #dedede;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue ---- a/src/views/goalManagement/performanceAppraisal/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/performanceAppraisal/index.vue (date 1660370067017) -@@ -28,9 +28,9 @@ - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableData.currentExamineDtoList" style="width: 100%"> -+ <el-table :data="scope.row.currentExamineDtoList" style="width: 100%"> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" prop="number" label="考核分数" /> -@@ -91,9 +91,9 @@ - <el-table ref="multipleTableRef" :data="tableDatas" style="width: 100%" @selection-change="handleSelectionChanges"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableDatas.examineItemList" style="width: 100%"> -+ <el-table :data="scope.row.examineItemList" style="width: 100%"> - <el-table-column align="center" prop="itemType" label="类型" /> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> -@@ -141,8 +141,9 @@ - import DailogAq from './component/DailogAq.vue'; - import DailogKh from './component/DailogKh.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; --import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; -+import { ElMessageBox, ElMessage, ElButton, ElInput, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; -+import type { TabsPaneContext } from 'element-plus' - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - components: { ElButton, ElInput, DailogAq, DailogKh }, -@@ -158,6 +159,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.examineDepartmentId = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -@@ -283,8 +285,9 @@ - }; - // 切换 - const activeName = ref('1'); -- const handleClick = (val: any) => { -- if (val == '1') { -+ const handleClick = (val: TabsPaneContext) => { -+ console.log(val) -+ if (val.props.name == '1') { - listApi(); - }else{ - listApis(); -@@ -300,11 +303,12 @@ - }); - // 重置 - const resetForms = () => { -- ruleForm.searchParams.examineDepartmentId = ''; -+ ruleForms.searchParams.title = ''; -+ listApis() - }; - const listApis = () => { - goalManagementApi() -- .getexamineTemplateList(ruleForm) -+ .getexamineTemplateList(ruleForms) - .then((res) => { - if (res.data.code == 200) { - tableDatas.value = res.data.data; -Index: src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择安全目标指标\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi()\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"reset\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\" @click=\"clear\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\" width=\"70px\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"title\" label=\"标准标题\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.title }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\tlistApi()\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n // 重置\r\n\tconst reset=()=>{\r\n\t\truleForm.searchParams.title=\"\"\r\n\t\tlistApi()\r\n\t}\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\treset,\r\n\t\t\tdialogVisible,\r\n\t\t\tlistApi,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (date 1660370067022) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete" @click="clear">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > - <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -64,7 +64,7 @@ - <template #footer> - <span class="dialog-footer"> - <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -75,7 +75,7 @@ - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- setup() { -+ setup(props,{emit}) { - const dialogVisible = ref<boolean>(false); - const openDailog = () => { - dialogVisible.value = true; -@@ -122,6 +122,12 @@ - ruleForm.pageIndex = val; - listApi(); - }; -+ // 提交 -+ const submitForm=()=>{ -+ dialogVisible.value = false -+ emit("typeDome",dynamicTags.value[0],list.value) -+ clear() -+ } - // 右方点击添加后显示标签 - const dynamicTags = ref(['']); - const handleClose = (tag: string) => { -@@ -129,8 +135,19 @@ - radio1.value = ''; - }; - const radio1 = ref(''); -+ const list=ref([]) - const radio = (event: any) => { -- dynamicTags.value[0] = event; -+ -+ goalManagementApi() -+ .getexamineTemplateDetail(event.id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ list.value = res.data.data; -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ dynamicTags.value[0] = event; - }; - const clear=()=>{ - dynamicTags.value=[''] -@@ -146,6 +163,8 @@ - } - }; - return { -+ submitForm, -+ list, - reset, - dialogVisible, - listApi, -Index: src/views/goalManagement/IncentiveRecording/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.personName\" placeholder=\"请选择被奖惩者\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openSearch\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"createTime\" align=\"center\" label=\"奖惩日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column label=\"奖惩类型\" align=\"center\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"personName\" align=\"center\" label=\"被奖惩者\" sortable />\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"奖惩依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearchUser ref=\"openUser\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearchUser },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tpersonId: '', ////员工\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.personId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.personId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.personId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\tconst userId = (val: any) => {\r\n\t\t\truleForm.searchParams.personId = val.uid;\r\n\t\t\truleForm.searchParams.personName = val.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\truleForm,\r\n\t\t\tuserId,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\topenAdd,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\topenSearch,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue ---- a/src/views/goalManagement/IncentiveRecording/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/IncentiveRecording/index.vue (date 1660370067027) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.personName" placeholder="请选择被奖惩者"> -+ <el-input v-model="personName" placeholder="请选择被奖惩者"> - <template #append> - <el-button :icon="Search" @click="openSearch" /> - </template> -@@ -92,8 +92,10 @@ - }, - }); - // 重置 -+ const personName=ref() - const resetForm = () => { - ruleForm.searchParams.personId = ''; -+ personName.value = ''; - listApi(); - }; - const listApi = () => { -@@ -229,10 +231,11 @@ - }; - const userId = (val: any) => { - ruleForm.searchParams.personId = val.uid; -- ruleForm.searchParams.personName = val.realName; -+ personName.value = val.realName; - }; - return { - timeDate, -+ personName, - ruleForm, - userId, - resetForm, -@@ -292,4 +295,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-user-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <el-form :inline=\"true\" class=\"demo-form-inline\">\r\n <el-form-item>\r\n <el-input size=\"default\" v-model=\"listQuery.searchParams.teamName\" placeholder=\"队伍名称\"> </el-input>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-select size=\"default\" v-model=\"listQuery.searchParams.teamLevel\" placeholder=\"请选择队伍级别\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\">\r\n 查询\r\n </el-button>\r\n <el-button size=\"default\" class=\"ml10\" @click=\"submitReset\">\r\n 重置\r\n </el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n <div class=\"button_Line\">\r\n <div class=\"button_Left\">\r\n <el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n <el-icon>\r\n <Plus />\r\n </el-icon>新建\r\n </el-button>\r\n<!-- <el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Edit />-->\r\n<!-- </el-icon>修改-->\r\n<!-- </el-button>-->\r\n <el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </div>\r\n<!-- <div class=\"button_Right\">-->\r\n<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Upload />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Download />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Refresh />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- </div>-->\r\n </div>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%\"\r\n ref=\"multipleTableRef\"\r\n @selection-change=\"handleSelectionChange\"\r\n >\r\n <el-table-column\r\n type=\"selection\"\r\n width=\"55\"\r\n />\r\n <el-table-column prop=\"teamName\" label=\"队伍名称\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"teamLevel\" label=\"队伍级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.teamLevel == 1\">公司</span>\r\n <span v-if=\"scope.row.teamLevel == 2\">分厂-车间</span>\r\n <span v-if=\"scope.row.teamLevel == 3\">工序-班组等</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"teamDesc\" label=\"队伍描述\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"principalPhone\" label=\"负责人手机\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"attachments\" label=\"相关附件\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column label=\"操作\" width=\"200\" align=\"center\" fixed=\"right\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <View />\r\n </el-icon>查看\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <EditPen />\r\n </el-icon>修改\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"pages\">\r\n <el-pagination\r\n v-if=\"tableData.length == 0 ? false : true\"\r\n @size-change=\"onHandleSizeChange\"\r\n @current-change=\"onHandleCurrentChange\"\r\n class=\"mt15\"\r\n :pager-count=\"5\"\r\n :page-sizes=\"[10, 20, 30]\"\r\n v-model:currentPage=\"pageIndex\"\r\n background\r\n v-model:page-size=\"pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\"\r\n >\r\n </el-pagination>\r\n </div>\r\n </el-card>\r\n <OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n <upData ref=\"upShow\"></upData>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // toRefs,\r\n reactive,\r\n onMounted,\r\n ref,\r\n defineComponent\r\n} from 'vue';\r\nimport {\r\n ElMessageBox,\r\n ElMessage,\r\n} from 'element-plus';\r\nimport {\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n View,\r\n EditPen,\r\n} from '@element-plus/icons-vue'\r\n\r\nimport OpenAdd from '../../contingencyManagement/contingency/component/openAdd.vue'\r\nimport UpData from '../../contingencyManagement/contingency/component/upData.vue';\r\nimport {contingencyApi} from \"../../../api/contingencyManagement/contingency\";\r\n\r\nexport default defineComponent({\r\n name: 'systemUser',\r\n components: {\r\n OpenAdd,\r\n View,\r\n EditPen,\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n UpData,\r\n contingencyApi\r\n },\r\n setup() {\r\n // 列表参数\r\n const listQuery = reactive({\r\n pageIndex: 1,\r\n pageSize: 10,\r\n searchParams: {\r\n teamName: \"\",\r\n teamLevel: \"\",\r\n }\r\n })\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n // 列表数据请求\r\n const onSubmit = async () => {\r\n let res = await contingencyApi().getTeamManagementList(listQuery)\r\n if(res.data.code === '200'){\r\n tableData.value = res.data.data;\r\n pageIndex.value = res.data.pageIndex;\r\n pageSize.value = res.data.pageSize;\r\n total.value = res.data.total;\r\n }else{\r\n ElMessage({\r\n showClose: true,\r\n type:'error',\r\n message:res.data.msg\r\n })\r\n }\r\n }\r\n // 重置\r\n const submitReset = () => {\r\n listQuery.searchParams.teamName = '';\r\n listQuery.searchParams.teamLevel = '';\r\n onSubmit();\r\n };\r\n // const warning = ref(true);\r\n const danger = ref(true);\r\n const deleteAll = ref();\r\n const handleSelectionChange = (val: any) => {\r\n let valId = JSON.parse(JSON.stringify(val));\r\n let arr = [];\r\n for (let i = 0; i < valId.length; i++) {\r\n arr.push(valId[i].id);\r\n }\r\n deleteAll.value = arr;\r\n if (val.length == 1) {\r\n // warning.value = false;\r\n danger.value = false;\r\n } else if (val.length == 0) {\r\n // warning.value = true;\r\n danger.value = true;\r\n } else {\r\n // warning.value = true;\r\n danger.value = false;\r\n }\r\n };\r\n\r\n // 上传\r\n // const upShow=ref()\r\n // const upButton=()=>{\r\n // upShow.value.openDialog()\r\n // }\r\n // 打开新增应急队伍弹窗\r\n const addRef = ref();\r\n const onOpenAdd = () => {\r\n addRef.value.openDialog('新建应急队伍管理');\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: boolean) => {\r\n if (e) {\r\n onSubmit();\r\n } else {\r\n onSubmit();\r\n }\r\n };\r\n // 打开修改应急队伍弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '详情') {\r\n addRef.value.openDialog('查看应急队伍管理',row,true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍管理',row,false);\r\n }\r\n };\r\n // 删除用户\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam([data])\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n }).catch(() => {});\r\n };\r\n // 多选删除\r\n const onDeleteAll = () => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n })\r\n .then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam(deleteAll.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n })\r\n .catch(() => {});\r\n };\r\n // 分页\r\n const pageIndex = ref();\r\n const pageSize = ref();\r\n const total = ref();\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n listQuery.pageSize = val;\r\n onSubmit();\r\n };\r\n const onHandleCurrentChange = (val: number) => {\r\n listQuery.pageIndex = val;\r\n onSubmit();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n onSubmit();\r\n });\r\n return {\r\n listQuery,\r\n onSubmit,\r\n // upButton,\r\n // upShow,\r\n onOpenAdd, //新增\r\n addRef,\r\n pageIndex,\r\n pageSize,\r\n total,\r\n onEdit,\r\n handleSelectionChange,\r\n submitReset,\r\n onRowDel,\r\n onMyAdd,\r\n tableData,\r\n onDeleteAll,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n deleteAll,\r\n // warning,\r\n danger,\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box{\r\n padding: 20px;\r\n background-color: #fff;\r\n}\r\n.tableForm{\r\n margin-top: 10px;\r\n}\r\n/*按钮行*/\r\n .button_Line{\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n margin-bottom: 10px;\r\n }\r\n//分页\r\n.pages{\r\n display: flex;\r\n justify-content: flex-end;\r\n margin-top: 15px;\r\n}\r\n.el-form .el-form-item{\r\n margin-bottom: 0px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n background-color: #f6f7fa;\r\n font-weight: 400;\r\n color: #909399;\r\n}\r\n.el-table .sort-caret.ascending{\r\n border-bottom-color: #c0c4cc;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue ---- a/src/views/contingencyManagement/contingency/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/contingency/index.vue (date 1660370067033) -@@ -79,7 +79,9 @@ - </el-table-column> - <el-table-column prop="teamDesc" label="队伍描述" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="principalPhone" label="负责人手机" show-overflow-tooltip sortable></el-table-column> -- <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column prop="fileList" label="相关附件" show-overflow-tooltip sortable> -+ -+ </el-table-column> - <el-table-column label="操作" width="200" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="onEdit('详情',scope.row.id)"> -@@ -179,6 +181,11 @@ - let res = await contingencyApi().getTeamManagementList(listQuery) - if(res.data.code === '200'){ - tableData.value = res.data.data; -+ for(var a = 0;a<tableData.value.length;a++){ -+ if(tableData.value[a].fileList!=null&&tableData.value[a].fileList!=''&&tableData.value[a].fileList.length!=0){ -+ tableData.value[a].fileList = tableData.value[a].fileList[0].fileName -+ } -+ } - pageIndex.value = res.data.pageIndex; - pageSize.value = res.data.pageSize; - total.value = res.data.total; -@@ -389,4 +396,4 @@ - .el-table .sort-caret.ascending{ - border-bottom-color: #c0c4cc; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"120px\"\r\n :disabled=\"disabled\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍名称\" prop=\"teamName\">\r\n <el-input v-model=\"ruleForm.teamName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍级别\" prop=\"teamLevel\">\r\n <el-select v-model=\"ruleForm.teamLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍负责人\" prop=\"principalName\">\r\n <el-input v-model=\"ruleForm.principalName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人部门\" prop=\"principalDepartmentId\">\r\n <el-tree-select v-model=\"ruleForm.principalDepartmentId\" :data=\"newTreeList\" class=\"w100\"\r\n :props=\"propse\" clearable placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人手机\" prop=\"principalPhone\">\r\n <el-input v-model=\"ruleForm.principalPhone\" placeholder=\"请填写负责人手机\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"固定电话\" prop=\"telephoneNumber\">\r\n <el-input v-model=\"ruleForm.telephoneNumber\" placeholder=\"请填写固定电话\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"队伍描述\" prop=\"teamDesc\">\r\n <el-input class=\"textarea\" v-model=\"ruleForm.teamDesc\" type=\"textarea\" maxlength=\"150\"\r\n placeholder=\"请填写队伍描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"相关附件\" prop=\"fileList\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\">点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">添加相关附件</div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n <el-tab-pane label=\"应急队伍人员\" name=\"first\" >\r\n <el-button type=\"primary\" size=\"default\" @click=\"onAddEmergencyPersonnel\" :disabled=\"disabled\">新增\r\n </el-button>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%; margin-top: 15px\"\r\n ref=\"multipleTableRef\"\r\n :header-cell-style=\"{ background: '#f6f7fa', color: '#909399' }\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-table-column prop=\"jobNumber\" label=\"人员工号\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"name\" label=\"人员名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"phone\" label=\"手机号码\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"position\" label=\"职位\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('查看应急队伍人员',scope.row.id)\">查看\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('修改应急队伍人员',scope.row.id)\"\r\n style=\"margin-right: 5px\">编辑\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onRowDel(scope.row.id)\"\r\n style=\"margin-right: 5px\">删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-col>\r\n </el-row>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"onSubmit(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <AddEmergencyPersonnel ref=\"addRef\" @myAdd=\"onMyAdd\"/>\r\n <DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\"/>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\n import {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n // toRefs,\r\n } from 'vue';\r\n import {\r\n ElMessage,\r\n ElMessageBox,\r\n } from 'element-plus';\r\n\r\n import type {\r\n UploadUserFile,\r\n TabsPaneContext,\r\n FormInstance,\r\n FormRules,\r\n } from 'element-plus'\r\n\r\n import {\r\n Search,\r\n FullScreen\r\n } from '@element-plus/icons-vue'\r\n import AddEmergencyPersonnel from \"/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue\";\r\n import DailogSearchUserManger from \"/@/components/DailogSearchUserManger/index.vue\"\r\n import {contingencyApi} from \"/@/api/contingencyManagement/contingency\";\r\n import {goalManagementApi} from \"/@/api/goalManagement\";\r\n // import {releaseDrillPlanApi} from \"/@/api/releaseDrillPlan\";\r\n\r\n\r\n export default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n AddEmergencyPersonnel,\r\n DailogSearchUserManger,\r\n },\r\n setup(prop, {emit}) {\r\n const isShowDialog = ref(false);\r\n const ruleFormRef = ref<FormInstance>();\r\n const ruleForm = ref({\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalName: '',\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n const peopleInsertBtn = ref(false)\r\n const teamId = ref()\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n teamId.value = id\r\n //如果是新增 无法添加人员\r\n if(title == '新建应急队伍管理'){\r\n peopleInsertBtn.value = true\r\n }else{\r\n peopleInsertBtn.value = false\r\n }\r\n if (title == '查看应急队伍管理' || title == '修改应急队伍管理') {\r\n contingencyApi()\r\n .seeEmergencyTeam(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n listApi()\r\n }\r\n });\r\n }\r\n }\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n\r\n //定义树形下拉框\r\n const principalDepartmentId = ref()\r\n const data = ref()\r\n\r\n\r\n\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n\r\n\r\n\r\n\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog();\r\n };\r\n const onUser = (e: any) => {\r\n ruleForm.value.principalUid = e[0].uid\r\n ruleForm.value.principalName = e[0].realName\r\n };\r\n //定义tabs切换\r\n const activeName = ref('first')\r\n const handleClick = (tab: TabsPaneContext, event: Event) => {\r\n console.log(tab, event)\r\n }\r\n\r\n // 必填项提示\r\n const rules = reactive<FormRules>({\r\n teamName: [\r\n {\r\n required: true,\r\n message: '队伍名称不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n teamLevel: [\r\n {\r\n required: true,\r\n message: '队伍级别不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalUid: [\r\n {\r\n required: true,\r\n message: '队伍负责人不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalDepartmentId: [\r\n {\r\n required: true,\r\n message: '负责人部门不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalPhone: [\r\n {\r\n required: true,\r\n message: '负责人手机不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n telephoneNumber: [\r\n {\r\n required: true,\r\n message: '固定电话不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n })\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n const onSubmit = async (title: string, formEl: FormInstance | undefined) => {\r\n if (title == '新建应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .addEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n } else if (title == '修改应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .editEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n };\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n tableData.value=[]\r\n ruleForm.value = {}\r\n };\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n //添加队伍负责人弹窗\r\n const addRef = ref();\r\n const onAddEmergencyPersonnel = () => {\r\n //未添加队伍 无法修改人员\r\n if(peopleInsertBtn.value == true){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加应急队伍',\r\n type: 'warning',\r\n });\r\n }else {\r\n addRef.value.openDialog('新建应急队伍人员','',teamId.value);\r\n }\r\n };\r\n // 请求列表数据\r\n const listApi = async () => {\r\n let res = await contingencyApi().getEmergencyTeamPersonnelList(teamId.value);\r\n if (res.data.code == 200) {\r\n tableData.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: object) => {\r\n listApi();\r\n };\r\n // 打开修改弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '查看应急队伍人员') {\r\n addRef.value.openDialog('查看应急队伍人员', row,teamId.value, true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍人员', row,teamId.value, false);\r\n }\r\n };\r\n // 删除\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeamPersonnel(data)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n listApi()\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n listApi()\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n });\r\n };\r\n return {\r\n openDialog,\r\n fileList,\r\n principalDepartmentId,\r\n data,\r\n activeName,\r\n handleClick,\r\n tableData,\r\n Search,\r\n resetForm,\r\n isShowDialog,\r\n ruleFormRef,\r\n ruleForm,\r\n rules,\r\n addRef,\r\n userRef,\r\n titles,\r\n disabled,\r\n propse,\r\n emit,\r\n onSubmit,\r\n openUser,\r\n onAddEmergencyPersonnel,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n onUser,\r\n onMyAdd,\r\n listApi,\r\n onEdit,\r\n onRowDel,\r\n department,\r\n peopleInsertBtn,\r\n teamId,\r\n newTreeList\r\n };\r\n },\r\n });\r\n</script>\r\n<style scoped lang=\"scss\">\r\n .textarea {\r\n height: 168px !important;\r\n }\r\n\r\n .textarea ::v-deep .el-textarea__inner {\r\n height: 168px !important;\r\n }\r\n\r\n ::v-deep .el-table__cell {\r\n font-weight: 400;\r\n }\r\n</style>\r\n\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue ---- a/src/views/contingencyManagement/contingency/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue (date 1660370067050) -@@ -52,17 +52,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件" prop="fileList"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -142,6 +133,7 @@ - import DailogSearchUserManger from "/@/components/DailogSearchUserManger/index.vue" - import {contingencyApi} from "/@/api/contingencyManagement/contingency"; - import {goalManagementApi} from "/@/api/goalManagement"; -+ import uploaderFile from '/@/components/uploaderFile/index.vue'; - // import {releaseDrillPlanApi} from "/@/api/releaseDrillPlan"; - - -@@ -150,6 +142,7 @@ - components: { - AddEmergencyPersonnel, - DailogSearchUserManger, -+ uploaderFile - }, - setup(prop, {emit}) { - const isShowDialog = ref(false); -@@ -188,14 +181,34 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - listApi() - } - }); - } - } - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -- -+ const fileList = ref([]) -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //定义树形下拉框 - const principalDepartmentId = ref() - const data = ref() -@@ -313,6 +326,9 @@ - } - }; - const onSubmit = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急队伍管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -346,7 +362,6 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] - isShowDialog.value = false; - contingencyApi() - .editEmergencyTeam(ruleForm.value) -@@ -390,6 +405,7 @@ - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - tableData.value=[] - ruleForm.value = {} - }; -@@ -494,7 +510,9 @@ - department, - peopleInsertBtn, - teamId, -- newTreeList -+ newTreeList, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentExpress/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.accidentName\" placeholder=\"事故名称\" style=\"max-width: 215px\" />\r\n\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"listApi\"> 查询 </el-button>\r\n\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon> <Plus /> </el-icon>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon> <Edit /> </el-icon>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" @click=\"onDeleteAll\" plain :disabled=\"danger\">\r\n\t\t\t\t\t\t<el-icon> <Delete /> </el-icon>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button @click=\"upButton\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Upload />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Download />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Refresh />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentName\" label=\"事故名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"deptName\" label=\"事故部门\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrencePlace\" label=\"发生地点\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrenceTime\" label=\"发生时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentCause\" label=\"事故原因\" show-overflow-tooltip sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='1'\">人的不安全行为</div>\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='2'\">物的不安全状态</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"createName\" label=\"创建人\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"gmtModitify\" label=\"更新时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text disabled>\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Upload /> </el-icon>上报\r\n\t\t\t\t\t\t</el-button> -->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <EditPen /> </el-icon>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <View /> </el-icon>详情\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onDelete(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Delete /> </el-icon>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<upData ref=\"upShow\"></upData>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElTable, ElMessage, ElMessageBox } from 'element-plus';\r\nimport { Plus, View, Download, Refresh, EditPen, Edit, Delete, Upload } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/accidentManagementSystem/accidentExpress/component/openAdd.vue';\r\nimport UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nexport default defineComponent({\r\n\tname: 'index',\r\n\tcomponents: {\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpData,\r\n\t\tOpenAdd,\r\n\t\tView,\r\n\t},\r\n\r\n\tsetup() {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\taccidentName: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst listApi = async () => {\r\n\t\t\tlet res = await accidentManagementSystemApi().accidentList(listQuery);\r\n\t\t\tif (res.data.code == 200) {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.accidentName = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// 打开新增弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建事故快报',false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tlistApi();\r\n\t\t\t} else {\r\n\t\t\t\tlistApi();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele([data])\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst upShow = ref();\r\n\t\tconst upButton = () => {\r\n\t\t\tupShow.value.openDialog();\r\n\t\t};\r\n\r\n\t\t// 打开修改用户弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看事故快报',row,true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改事故快报',row,false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tupButton,\r\n\t\t\tupShow,\r\n\t\t\ttableData,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonEdit,\r\n\t\t\tonOpenAdd,\r\n\t\t\taddRef,\r\n\t\t\tlistQuery,\r\n\t\t\tlistApi,\r\n\t\t\tsubmitReset,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDelete,\r\n\t\t\tdeletAll,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/index.vue b/src/views/accidentManagementSystem/accidentExpress/index.vue ---- a/src/views/accidentManagementSystem/accidentExpress/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/accidentManagementSystem/accidentExpress/index.vue (date 1660370067056) -@@ -41,7 +41,8 @@ - <el-table-column align="center" prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="deptName" label="事故部门" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="occurrencePlace" label="发生地点" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column align="center" prop="accidentCause" label="事故原因" show-overflow-tooltip sortable> - <template #default="scope"> - <div v-if="scope.row.accidentCause=='1'">人的不安全行为</div> -@@ -49,7 +50,8 @@ - </template> - </el-table-column> - <el-table-column align="center" prop="createName" label="创建人" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <!-- <el-button size="small" text disabled> -@@ -268,7 +270,16 @@ - addRef.value.openDialog('修改事故快报',row,false); - } - }; -- -+//格式化表格时间 -+ const dateFormat = (row,column) => { -+ // 获取单元格数据 -+ let data = row[column.property]; -+ if(data == null) { -+ return null; -+ } -+ let dt = new Date(data) -+ return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds() -+ }; - return { - upButton, - upShow, -@@ -291,6 +302,7 @@ - onDelete, - deletAll, - onDeleteAll, -+ dateFormat - }; - }, - }); -@@ -343,4 +355,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetEscalation/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"检查\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"上报\" name=\"2\"></el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"审核\" name=\"3\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column v-if=\"activeName == 1\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(0)\">检查</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDai(scope.row.targetDivideDetailList)\">记录</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 2\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(1)\">上报</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 3\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom\">待审批</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { useRouter } from 'vue-router';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\t// let targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = val.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeName = ref<any>('1');\r\n\t\t// 记录弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openDai = (data: any) => {\r\n\t\t\tShow.value.openDailog(data);\r\n\t\t};\r\n\t\t// 流程表单\r\n\t\tconst router = useRouter();\r\n\t\tconst jumpFrom = (data: any) => {\r\n\t\t\trouter.push({\r\n\t\t\t\tpath: '/processForms',\r\n\t\t\t\tquery: {\r\n\t\t\t\t\ttype: data,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tactiveName,\r\n\t\t\ttotal,\r\n\t\t\thandleClick,\r\n\t\t\truleForm,\r\n\t\t\tlistApi,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tresetForm,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenDai,\r\n\t\t\trouter,\r\n\t\t\tjumpFrom,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/index.vue b/src/views/goalManagement/targetEscalation/index.vue ---- a/src/views/goalManagement/targetEscalation/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetEscalation/index.vue (date 1660370067061) -@@ -24,7 +24,6 @@ - <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> - <el-tab-pane label="检查" name="1"> </el-tab-pane> - <el-tab-pane label="上报" name="2"></el-tab-pane> -- <el-tab-pane label="审核" name="3"></el-tab-pane> - </el-tabs> - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%"> - <el-table-column label="安全目标指标" align="center" property="qName" sortable /> -@@ -33,18 +32,18 @@ - <el-table-column property="value" label="指标值" align="center" sortable show-overflow-tooltip /> - <el-table-column v-if="activeName == 1" label="操作" align="center" show-overflow-tooltip> - <template #default="scope"> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(0)">检查</el-button> -- <el-button link type="primary" size="default" :icon="View" @click="openDai(scope.row.targetDivideDetailList)">记录</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,1)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,1)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,1)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,1)" >查看审批流程</el-button> - </template> - </el-table-column> - <el-table-column v-if="activeName == 2" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(1)">上报</el-button> -- </template> -- </el-table-column> -- <el-table-column v-if="activeName == 3" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom">待审批</el-button> -+ <template #default="scope"> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,2)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,2)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,2)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,2)" >查看审批流程</el-button> - </template> - </el-table-column> - </el-table> -@@ -61,17 +60,19 @@ - </div> - </div> - <Dailog ref="Show"></Dailog> -+ <TypeDailog ref="TypeD" @onType="typeAlign" /> - </div> - </template> - <script lang="ts"> - import Dailog from './component/Dailog.vue'; -+import TypeDailog from './component/TypeDailog.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; - import { useRouter } from 'vue-router'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- components: { ElButton, ElInput, Dailog }, -+ components: { ElButton, ElInput, Dailog,TypeDailog }, - setup() { - // 搜索条件 - const ruleForm = reactive({ -@@ -80,8 +81,9 @@ - searchParams: { - qName: '', ////安全目标指标 - indexNum: '', ////目标指标编号 -- targetType: '1', ////指标类型 1:年指标 2:月指标 -- divideStatus: '', ////分解状态 1:已分解 2:未分解 -+ targetType: 1, ////指标类型 1:年指标 2:月指标 -+ divideStatus: 1, ////分解状态 1:已分解 2:未分解 -+ relateType: 1, ////关联业务类型 1:目标检查 2:目标上报 - }, - }); - // 重置 -@@ -91,7 +93,7 @@ - }; - const listApi = () => { - goalManagementApi() -- .getTargetMngList(ruleForm) -+ .getworkApproveList(ruleForm) - .then((res) => { - if (res.data.code == 200) { - tableData.value = res.data.data; -@@ -106,7 +108,7 @@ - // - const handleClick = (val: any) => { - // let targetType = JSON.parse(JSON.stringify(val)); -- ruleForm.searchParams.targetType = val.paneName; -+ ruleForm.searchParams.relateType = val.paneName; - listApi(); - }; - onMounted(() => { -@@ -133,20 +135,21 @@ - const activeName = ref<any>('1'); - // 记录弹窗 - const Show = ref(); -- const openDai = (data: any) => { -- Show.value.openDailog(data); -+ const openDai = (data: any,num:number) => { -+ Show.value.openDailog(data,num); - }; -- // 流程表单 -- const router = useRouter(); -- const jumpFrom = (data: any) => { -- router.push({ -- path: '/processForms', -- query: { -- type: data, -- }, -- }); -+ // 发起审批弹窗 -+ const TypeD = ref(); -+ const TypeDailog = (title:string,name:string,id:number,type:number) => { -+ TypeD.value.openDialog(title,name,id,type); - }; -+ const typeAlign=()=>{ -+ listApi(); -+ } - return { -+ TypeD, -+ typeAlign, -+ TypeDailog, - activeName, - total, - handleClick, -@@ -161,8 +164,6 @@ - handleCurrentChange, - Show, - openDai, -- router, -- jumpFrom, - Plus, - Delete, - Upload, -@@ -195,4 +196,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/api/goalManagement/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\nexport function goalManagementApi() {\r\n return {\r\n // 目标设置、目标指标分解列表\r\n getTargetMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置详情\r\n getTargetMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标设置新增或者修改数据\r\n getTargetMngAddOrupdata: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置删除\r\n getTargetMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标指标分解-新增或者修改数据\r\n gettargetDivideDetail: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDivideDetail/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 统计\r\n getEquipmentInfo: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/equipmentInfo/statistics',\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 分页查询数据\r\n gettargetDutyfileInfoList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutyfileInfo/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 查询单条数据\r\n gettargetDutyfileInfoDetail: (params: number) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 新增或者修改数据\r\n gettargetDutyfileInfoAddorUpdata: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 删除\r\n gettargetDutyfileInfoDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 分页查询数据\r\n getrewardPunishmentStandardList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 查询单条数据\r\n getrewardPunishmentStandardDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩标准设定 新增或者修改数据\r\n getrewardPunishmentStandardaddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 删除\r\n getrewardPunishmentStandardDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 分页查询数据\r\n getrewardPunishmentList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentDetail/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 查询单条数据\r\n getrewardPunishmentDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩记录 新增或者修改数据\r\n getrewardPunishmentAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 删除\r\n getrewardPunishmentDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 分页查询数据\r\n getexamineMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 查询单条数据\r\n getexamineMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 新增或者修改数据\r\n getexamineMngAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 删除\r\n getexamineMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 分页查询数据\r\n getexamineTemplateList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineTemplate/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 查询单条数据\r\n getexamineTemplateDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 新增或者修改数据\r\n getexamineTemplateAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 删除\r\n getexamineTemplateDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 分页查询数据\r\n gettargetDutySummaryList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutySummary/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 查询单条数据\r\n gettargetDutySummaryDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标汇总 新增或者修改数据\r\n gettargetDutySummaryAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 删除\r\n gettargetDutySummaryDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/delete?ids=${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 查询单条数据\r\n gettargetExamineDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetExamine/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 新增或者修改数据\r\n gettargetExamineAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetExamine/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标检查上报 (有疑问) 新增或者修改数据 ---???\r\n getworkApproveAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 部门树\r\n getTreedepartment: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/department/list',\r\n method: 'post'\r\n });\r\n },\r\n // 人员\r\n getManName: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`,\r\n method: 'get'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/goalManagement/index.ts b/src/api/goalManagement/index.ts ---- a/src/api/goalManagement/index.ts (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/api/goalManagement/index.ts (date 1660370067078) -@@ -247,10 +247,50 @@ - data: params - }); - }, -- // 目标检查上报 (有疑问) 新增或者修改数据 ---??? -- getworkApproveAddOrUpdate: (params: object) => { -+ // 目标检查上报 分页查询数据 -+ getworkApproveList: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetMng/checkAndSubimt/list', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 分页查询检查记录 -+ getworkApproveListCheckData: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/page/listCheckData', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 查询单条数据 -+ getworkApproveDetail: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + `/targetDutyWorkApprove/selectOne/${params}`, -+ method: 'get' -+ }); -+ }, -+ -+ // 目标检查上报 新增数据 -+ getworkApproveAdd: (params: object) => { - return request({ -- url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove', -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/add', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 新增数据 -+ getworkApproveUpdata: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/update', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 删除 -+ getworkApproveDelete: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/delete', - method: 'post', - data: params - }); -@@ -267,6 +307,18 @@ - return request({ - url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`, - method: 'get' -+ }); -+ }, -+ beforeUploadFile(fileName1: string, fileName2: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/presign?prefixName=' + fileName1 + '&suffixName=' + fileName2, -+ method: 'get' -+ }); -+ }, -+ searchFile(fileName: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/view?obj=' + fileName, -+ method: 'get' - }); - } - }; -Index: src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" :rules=\"rules\" size=\"default\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"disabled\" placeholder=\"请填写事故名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentDepartmentId\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.occurrencePlace\" :disabled=\"disabled\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.occurrenceTime\" :disabled=\"disabled\" placeholder=\"请填写发生时间\"></el-input>-->\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人的不安全行为\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"物的不安全状态\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"是否有伤亡\" prop=\"casualties\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.casualties\" :disabled=\"disabled\" @change=\"typeChang\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t\t<el-button v-if=\"ruleForm.casualties\" type=\"primary\" style=\"margin-left: 20px\"\r\n\t\t\t\t\t\t\t\t\t :icon=\"Edit\" @click=\"openDai\" round plain />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故简要经过\" prop=\"accidentBriefProcess\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentBriefProcess\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故简要经过\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因初步分析\" prop=\"accidentCausesPreliminaryAnalysis\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentCausesPreliminaryAnalysis\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故原因初步分析\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急防范措施\" prop=\"emergencyPrecautions\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.emergencyPrecautions\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写应急防范措施\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故照片\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.fileList\" :disabled=\"disabled\"-->\r\n\t\t\t\t\t\t\t<!--type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileListDemo\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<NumberOfCasualties ref=\"ShowUser\"></NumberOfCasualties>\r\n\t\t<CheckTemplate ref=\"Shows\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent, defineEmits, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen, Edit } from '@element-plus/icons-vue';\r\nimport NumberOfCasualties from '/@/views/accidentManagementSystem/accidentExpress/component/numberOfCasualties.vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tNumberOfCasualties,\r\n\t\tuploaderImg,\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\temergencyPrecautions: '',\r\n\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\taccidentBriefProcess: '',\r\n\t\t\tcasualties: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\toccurrenceTime: '',\r\n\t\t\toccurrencePlace: '',\r\n\t\t\taccidentDepartmentId: '',\r\n\t\t\taccidentName: '',\r\n\t\t\tfileList: [],\r\n\t\t\tid: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看事故快报' || title == '修改事故快报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.accidentScarh(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\tconst fileListDemo = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故名称不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故部门不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrencePlace: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '发生地点不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrenceTime: [{ type: 'date', required: true, message: '发生时间不能为空', trigger: 'blur' }],\r\n\t\t\taccidentCause: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcasualties: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '是否有伤亡不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentBriefProcess: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故简要经过不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentCausesPreliminaryAnalysis: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因初步分析不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\temergencyPrecautions: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '应急防范措施不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\t// 子传父\r\n\t\t// const emit=defineEmits(['myAdd'])\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.id = null;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList = [\r\n\t\t\t\t\t\t\t// {\r\n\t\t\t\t\t\t\t// \tfileUrl: 'url',\r\n\t\t\t\t\t\t\t// \tfileName: 'name',\r\n\t\t\t\t\t\t\t// },\r\n\t\t\t\t\t\t];\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t}\r\n\t\t\truleForm.value = {\r\n\t\t\t\taccidentExpressId: '',\r\n\t\t\t\temergencyPrecautions: '',\r\n\t\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\t\taccidentBriefProcess: '',\r\n\t\t\t\tcasualties: '',\r\n\t\t\t\taccidentCause: '',\r\n\t\t\t\toccurrenceTime: '',\r\n\t\t\t\toccurrencePlace: '',\r\n\t\t\t\taccidentDepartmentId: '',\r\n\t\t\t\taccidentName: '',\r\n\t\t\t\tfileList: [],\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 是否有伤亡弹窗\r\n\t\tconst typeChang = () => {\r\n\t\t\tconsole.log('tag', ruleForm);\r\n\t\t};\r\n\t\tconst ShowUser = ref();\r\n\t\tconst openDai = () => {\r\n if(ruleForm.value.id==null||ruleForm.value.id==''){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加事故快报',\r\n type: 'info',\r\n });\r\n }else {\r\n ShowUser.value.openDialog(ruleForm.value.id, disabled.value);\r\n }\r\n\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tShowUser,\r\n\t\t\ttypeChang,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\tEdit,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenDai,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tcloseDialog,\r\n\t\t\tfileListDemo,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (date 1660370067085) -@@ -1,6 +1,7 @@ - <template> - <div class="system-edit-user-container"> -- <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" @close="closeDialog(ruleFormRef)"> -+ <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" -+ destroy-on-close @close="closeDialog(ruleFormRef)"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" size="default" label-width="140px"> - <el-row :gutter="35"> -@@ -94,7 +95,8 @@ - <el-form-item label="事故照片" prop="fileList"> - <!--<el-input v-model="ruleForm.fileList" :disabled="disabled"--> - <!--type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <uploaderImg :fileList="fileListDemo"></uploaderImg> -+ <uploaderImg :fileList="fileList" :disabled="disabled" -+ :systemName="'INCIDENT_MANAGE'" @successUploader="successUploader"></uploaderImg> - </el-form-item> - </el-col> - </el-row> -@@ -157,7 +159,7 @@ - const titles = ref(); - const disabled = ref(); - // 打开弹窗 -- const openDialog = (title: string, id: number, type: boolean) => { -+ const openDialog = async (title: string, id: number, type: boolean) => { - isShowDialog.value = true; - titles.value = title; - disabled.value = type; -@@ -167,24 +169,39 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -- const fileListDemo = ref<UploadUserFile[]>([ -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- ]); -+ const fileList = ref([]); -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 可选择树 - const treeSelect = ref(); - -@@ -292,6 +309,9 @@ - // const emit=defineEmits(['myAdd']) - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故快报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -327,12 +347,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList = [ -- // { -- // fileUrl: 'url', -- // fileName: 'name', -- // }, -- ]; - accidentManagementSystemApi() - .accidentView(ruleForm.value) - .then((res) => { -@@ -380,6 +394,7 @@ - }; - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value = [] - console.log(ruleForm); - isShowDialog.value = false; - }; -@@ -459,7 +474,7 @@ - getTreeList, - newTreeList, - closeDialog, -- fileListDemo, -+ successUploader - }; - }, - }); -Index: src/views/goalManagement/targetEscalation/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"记录\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" label=\"序号\" type=\"index\" width=\"80\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"检查值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"检查人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"检查时间\" />\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst tableData = ref();\r\n\t\tconst openDailog = (data: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\t// console.log(data)\r\n\t\t\ttableData.value = data;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdialogVisible,\r\n\t\t\ttableData,\r\n\t\t\topenDailog,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/Dailog.vue b/src/views/goalManagement/targetEscalation/component/Dailog.vue ---- a/src/views/goalManagement/targetEscalation/component/Dailog.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetEscalation/component/Dailog.vue (date 1660370067090) -@@ -1,15 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="记录" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="查看审批流程" width="50%" draggable> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" label="序号" type="index" width="80" /> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -- <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定部门" /> -- <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="value" label="检查值" /> -- <el-table-column align="center" prop="commitPersonId" label="检查人" /> -- <el-table-column align="center" prop="makeDate" label="检查时间" /> -+ <el-table-column property="workName" label="审批人" sortable></el-table-column> -+ <el-table-column property="title" label="审批标题" sortable></el-table-column> -+ <el-table-column property="approvePersonName" label="编写人" sortable></el-table-column> -+ <el-table-column property="approveMemo" label="审批意见" sortable></el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -@@ -22,14 +18,28 @@ - <script lang="ts"> - import { defineComponent, reactive, ref } from 'vue'; - import { FullScreen } from '@element-plus/icons-vue'; -+import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - setup() { - const dialogVisible = ref(false); -+ const form = ref({ -+ pageSize: 10, -+ pageIndex: 1, -+ searchParams: { -+ relateId: '', ////检查记录ID -+ relateType:"", -+ }, -+ }); - const tableData = ref(); -- const openDailog = (data: any) => { -+ const openDailog = (data: any,type:number) => { - dialogVisible.value = true; -- // console.log(data) -- tableData.value = data; -+ form.value.searchParams.relateId=data -+ form.value.searchParams.relateType=type -+ goalManagementApi().getworkApproveListCheckData(form.value).then(res=>{ -+ if(res.data.code==200){ -+ tableData.value=res.data.data -+ } -+ }) - }; - //全屏 - const full = ref(false); -@@ -46,6 +56,7 @@ - openDailog, - full, - toggleFullscreen, -+ form, - FullScreen, - }; - }, -Index: src/views/goalManagement/Incentivestandard/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select v-model=\"ruleForm.searchParams.standardType\" size=\"default\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"奖励\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"惩罚\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\" >新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" :disabled=\"warning\" plain :icon=\"EditPen\" @click=\"openD\">修改 </el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"handleSelectionChange\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"qname\" align=\"center\" label=\"奖惩名称\" sortable />\r\n\t\t\t\t<el-table-column property=\"name\" align=\"center\" label=\"奖惩类型\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<!-- <upData ref=\"upShow\"></upData> -->\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, upData, DailogAdd },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tstandardType: '', ////奖惩类型 1:奖励 2:惩罚\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.standardType = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentStandardList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.standardType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.standardType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/Incentivestandard/index.vue b/src/views/goalManagement/Incentivestandard/index.vue ---- a/src/views/goalManagement/Incentivestandard/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/Incentivestandard/index.vue (date 1660370067114) -@@ -27,7 +27,7 @@ - <div class="btns"> - <div> - <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')" >新建</el-button> -- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> -+ <!-- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="handleSelectionChange">删除</el-button> - </div> - <div> -@@ -279,4 +279,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"769px\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :rules=\"rules\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人姓名\" prop=\"declareUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.declareUserName\" :disabled=\"disabled\" placeholder=\"请填写申报人姓名\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人性别\" prop=\"declareUserGender\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.declareUserGender\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">男</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">女</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人部门\" placeholder=\"请选择\" prop=\"declareDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.declareDepartmentId\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t:data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"工伤类型\" prop=\"workInjuryType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.workInjuryType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻微伤\" value=\"轻微伤\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻伤\" value=\"轻伤\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报日期\" prop=\"declareDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.declareDate\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"损失工时\" prop=\"lostTime\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.lostTime\" :disabled=\"disabled\" placeholder=\"请填写损失工时\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊医院\" prop=\"visitHospital\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitHospital\" :disabled=\"disabled\" placeholder=\"请填写就诊医院\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊结果\" prop=\"visitResult\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitResult\" :disabled=\"disabled\" placeholder=\"请填写就诊结果\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"注意事项\" prop=\"mattersNeedingAttention\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.mattersNeedingAttention\" :disabled=\"disabled\" placeholder=\"请填写注意事项\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"材料是否齐全\" prop=\"completeMaterials\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.completeMaterials\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"备注\" prop=\"remark\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.remark\" :disabled=\"disabled\" type=\"textarea\" placeholder=\"请填写备注\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"showRef\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n\treactive,\r\n\tref,\r\n\tdefineComponent,\r\n\tonMounted\r\n} from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance,FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\tdeclareUserName: '',\r\n\t\t\tdeclareUserGender: '',\r\n\t\t\tdeclareDepartmentId: '',\r\n\t\t\taccidentName:'',\r\n\t\t\taccidentExpressId: '',\r\n\t\t\tworkInjuryType: '',\r\n\t\t\tdeclareDate: '',\r\n\t\t\tlostTime: '',\r\n\t\t\tvisitHospital: '',\r\n\t\t\tvisitResult: '',\r\n\t\t\tmattersNeedingAttention: '',\r\n\t\t\tcompleteMaterials: '',\r\n\t\t\tremark: '',\r\n\t\t\tfileList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfileName: '',\r\n\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看工伤申报' || title == '修改工伤申报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentManagementSystem(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\tconst tree = [\r\n\t\t];\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\r\n\t\t];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 关闭弹窗\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdeclareUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人姓名不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareUserGender: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人性别不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人部门不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '事故名称不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tworkInjuryType: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '工伤类型不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDate: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报日期不能为空',\r\n\t\t\t\t trigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tlostTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '损失工时不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitHospital: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊医院不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitResult: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊结果不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmattersNeedingAttention: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '注意事项不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcompleteMaterials: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '材料状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tremark: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '备注不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\t// 事故名称弹窗\r\n\t\tconst showRef = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tshowRef.value.openDailog();\r\n\t\t};\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value.accidentName = item[0].accidentName\r\n\t\t\truleForm.value.occurrenceTime = item[0].occurrenceTime\r\n\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\tdelete ruleForm.value.id\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tdeclareUserName: '',\r\n\t\t\t\t\tdeclareUserGender: '',\r\n\t\t\t\t\tdeclareDepartmentId: '',\r\n\t\t\t\t\taccidentExpressId: '',\r\n\t\t\t\t\tworkInjuryType: '',\r\n\t\t\t\t\tdeclareDate: '',\r\n\t\t\t\t\tlostTime: '',\r\n\t\t\t\t\tvisitHospital: '',\r\n\t\t\t\t\tvisitResult: '',\r\n\t\t\t\t\tmattersNeedingAttention: '',\r\n\t\t\t\t\tcompleteMaterials: '',\r\n\t\t\t\t\tremark: '',\r\n\t\t\t\t\tfileList: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfileName: '',\r\n\t\t\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdaiInpt,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\ttree,\r\n\t\t\tshowRef,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tonSelectItem,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tpropse,\r\n\t\t\tcloseDialog,\r\n\t\t\tuploaderImg\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue ---- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (date 1660370067120) -@@ -81,7 +81,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <uploaderImg :fileList="fileList" :name="INCIDENT_MANAGE" -+ @successUploader="successUploader" :disabled="disabled"></uploaderImg> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -184,10 +185,35 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -@@ -241,6 +267,7 @@ - // 关闭弹窗 - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value=[] - isShowDialog.value = false; - }; - // 必填项提示 -@@ -346,12 +373,14 @@ - }; - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建工伤申报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - delete ruleForm.value.id -@@ -384,7 +413,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - accidentManagementSystemApi() -@@ -491,7 +519,9 @@ - newTreeList, - propse, - closeDialog, -- uploaderImg -+ uploaderImg, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"目标考核\" width=\"70%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n <el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n </el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" type=\"index\" label=\"序号\" width=\"70\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报时间\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核结果\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核时间\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n <DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport {deepClone} from \"/@/utils/other\";\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch ,DailogAdd},\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (e: object) => {\r\n\t\t\tform.value = e;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\r\n // 新增弹窗\r\n const index=ref<any>()\r\n const Show = ref();\r\n const daiAdd = (title: string, data: any) => {\r\n // index.value = formUp.targetDivideDetailList.indexOf(data);\r\n Show.value.openDailog(title, data);\r\n };\r\n const formUp = reactive({\r\n targetId: '', //关联的目标指标/外键\r\n delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n // targetDivideDetailList: [], //目标指标分解列表\r\n });\r\n\r\n const add = (val: any) => {\r\n const item = deepClone(val)\r\n if(index.value==-1){\r\n formUp.targetDivideDetailList.push(item);\r\n }else{\r\n formUp.targetDivideDetailList[index.value] = item;\r\n }\r\n\r\n // let obj=JSON.parse(JSON.stringify(form.value))\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\ttargetType,\r\n\t\t\tonNumber,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n daiAdd,\r\n index,\r\n Show,\r\n formUp,\r\n add,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/Dailog.vue b/src/views/goalManagement/safetyAssessment/component/Dailog.vue ---- a/src/views/goalManagement/safetyAssessment/component/Dailog.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/safetyAssessment/component/Dailog.vue (date 1660370067140) -@@ -1,5 +1,5 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable @close="closeDialog"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" label-width="120px"> - <el-row> -@@ -34,27 +34,38 @@ - <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -+ <el-table :data="formUp.examineList" style="width: 100%"> - <el-table-column align="center" type="index" label="序号" width="70" /> -- <el-table-column align="center" prop="date" label="责任部门" /> -- <el-table-column align="center" prop="name" label="考核指标" /> -- <el-table-column align="center" prop="address" label="制定部门" /> -- <el-table-column align="center" prop="address" label="制定日期" /> -- <el-table-column align="center" prop="address" label="上报值" /> -- <el-table-column align="center" prop="address" label="上报时间" /> -- <el-table-column align="center" prop="address" label="考核结果" /> -- <el-table-column align="center" prop="address" label="考核人" /> -- <el-table-column align="center" prop="address" label="考核时间" /> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> -+ <el-table-column align="center" prop="examineValue" label="考核指标" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定部门" /> -+ <el-table-column align="center" prop="makeDate" label="制定日期" /> -+ <el-table-column align="center" prop="uploadValue" label="上报值" /> -+ <el-table-column align="center" prop="uploadDate" label="上报时间" /> -+ <el-table-column align="center" prop="examineResult" label="考核结果" > -+ <template #default="scope"> -+ <div v-if="scope.row.examineResult==1"> -+ 合格 -+ </div> -+ <div v-if="scope.row.examineResult==2"> -+ 不合格 -+ </div> -+ </template> -+ </el-table-column> -+ <el-table-column align="center" prop="examinePersonName" label="考核人" /> -+ <el-table-column align="center" prop="examineDate" label="考核时间" /> - <el-table-column align="center" label="操作"> - <template #default="scope"> -- <el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('查看', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('修改', scope.row)">修改</el-button> -+ <el-button link type="primary" @click="Delete(scope.row)">删除</el-button> - </template> - </el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -- <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button @click="closeDialog" size="default">关闭</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -84,15 +95,62 @@ - disabled.value = title == '查看' ? true : false; - if (title == '查看' || title == '修改') { - goalManagementApi() -- .getTargetMngDetail(id) -+ .gettargetExamineDetail(id) - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ formUp.examineList = res.data.data.examineList -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ }; -+ const closeDialog = () => { -+ form.value = {} -+ formUp.examineList = [] -+ dialogVisible.value = false -+ }; -+ const submitForm = () => { -+ // formUp.delTargetDivideDetails = arr.value.toString(); -+ // formUp.targetId = form.value.id; -+ dialogVisible.value = false; -+ for(let i=0;i<formUp.examineList.length;i++){ -+ delete formUp.examineList[i].dutyDepartmentName -+ delete formUp.examineList[i].makerDepartmentName -+ } -+ formUp.id = form.value.id -+ formUp.delIds = arr.value.toString(); -+ goalManagementApi() -+ .gettargetExamineAddOrUpdate(formUp) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('addList'); - } else { - ElMessage.error(res.data.msg); - } - }); -- } -+ form.value = { -+ qName: '', -+ indexNum: '', -+ year: '', -+ value: '', -+ examineList: [], -+ }; -+ tableData.value = []; -+ formUp.targetId = ''; -+ formUp.delTargetDivideDetails = ''; -+ formUp.examineList = []; -+ }; -+ const arr = ref([]); -+ // 删除 -+ const Delete = (data: any) => { -+ formUp.examineList.splice(form.value.examineList.indexOf(data), 1); -+ arr.value.push(data.id); - }; - const onNumber = (e: object) => { - form.value = e; -@@ -107,29 +165,30 @@ - Shows.value.openDailog(targetType.value); - }; - -- // 新增弹窗 -- const index=ref<any>() -- const Show = ref(); -- const daiAdd = (title: string, data: any) => { -- // index.value = formUp.targetDivideDetailList.indexOf(data); -- Show.value.openDailog(title, data); -- }; -- const formUp = reactive({ -- targetId: '', //关联的目标指标/外键 -- delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -- // targetDivideDetailList: [], //目标指标分解列表 -- }); -+ // 新增弹窗 -+ const index=ref<any>() -+ const Show = ref(); -+ const daiAdd = (title: string, data: any) => { -+ index.value = formUp.examineList.indexOf(data); -+ Show.value.openDailog(title, data); -+ }; -+ const formUp = reactive({ -+ targetId: '', //关联的目标指标/外键 -+ delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -+ examineList: [], //目标指标分解列表 -+ }); - -- const add = (val: any) => { -- const item = deepClone(val) -- if(index.value==-1){ -- formUp.targetDivideDetailList.push(item); -- }else{ -- formUp.targetDivideDetailList[index.value] = item; -- } -- -- // let obj=JSON.parse(JSON.stringify(form.value)) -- }; -+ const add = (val: any) => { -+ const item = deepClone(val) -+ if(index.value==-1){ -+ -+ formUp.examineList.push(item); -+ }else{ -+ formUp.examineList[index.value] = item; -+ } -+ console.log(formUp) -+ // let obj=JSON.parse(JSON.stringify(form.value)) -+ }; - - //全屏 - const full = ref(false); -@@ -156,11 +215,14 @@ - full, - toggleFullscreen, - FullScreen, -- daiAdd, -- index, -- Show, -- formUp, -- add, -+ daiAdd, -+ index, -+ Show, -+ formUp, -+ add, -+ closeDialog, -+ submitForm, -+ Delete - }; - }, - }); -Index: src/views/goalManagement/targetSettings/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"ruleForm.searchParams.targetType\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t<el-button type=\"danger\" :disabled=\"danger\" size=\"default\" @click=\"onDeleteAll\" :icon=\"Delete\" plain>删除</el-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(年)\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(月)\" name=\"2\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"level\" label=\"指标级别\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"completeDate\" label=\"完成期限\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"状态\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 1\">已分解</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 2\">未分解</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<dailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></dailogAdd>\r\n\t\t\t<upData ref=\"upShow\"></upData>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport dailogAdd from './component/dailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, dailogAdd, upData },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst small = ref(false);\r\n\t\tconst disabled = ref(false);\r\n\t\tconst background = ref(false);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDialog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\t// const warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\t// warning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 上传\r\n\t\t// const upShow = ref();\r\n\t\t// const upButton = () => {\r\n\t\t// \tupShow.value.openDialog();\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\thandleClick,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\t// upShow,\r\n\t\t\t// upButton,\r\n\t\t\tsmall,\r\n\t\t\tdisabled,\r\n\t\t\tbackground,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonAddorUpdata,\r\n\t\t\tonDelete,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tdeletAll,\r\n\t\t\tdanger,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/index.vue b/src/views/goalManagement/targetSettings/index.vue ---- a/src/views/goalManagement/targetSettings/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetSettings/index.vue (date 1660370067145) -@@ -102,6 +102,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/safetyAssessment/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable @close=\"resetForm(ruleFormRef)\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"责任部门\" prop=\"dutyDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.dutyDepartmentId\" check-strictly=\"true\" :data=\"data\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核指标\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.value\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"制定人部门\" prop=\"makerDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.makerDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"制定日期\" prop=\"makeDate\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"上报值\" prop=\"commitPersonName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.commitPersonName\">\r\n<!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"上报时间\" prop=\"makeDate\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n\t\t\t</el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核结果\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"考核人\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核时间\" prop=\"commitPersonName\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\"></el-col>\r\n </el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearchUser ref=\"Show\" @SearchUser=\"onUser\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive, onMounted } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport DailogSearchUser from '../../../../components/DailogSearchUser/index.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser },\r\n\tsetup(props, { emit }) {\r\n\t\tconst ruleFormRef = ref<FormInstance>()\r\n\t\tconst form = ref({\r\n\t\t\tdutyDepartmentId: '', ////责任部门/外键\r\n\t\t\tmakerDepartmentId: '', ////制定人部门/外键\r\n\t\t\tcommitPersonId: '', ////上报人/外键\r\n\t\t\tcommitPersonName: '',\r\n\t\t\tvalue: '', ////考核指标值\r\n\t\t\tmakeDate: '', ////制定日期\r\n\t\t});\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst disabled = ref(false);\r\n\t\t// 开启弹窗\r\n\t\tconst titles = ref();\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst openDailog = (title: string, data: any) => {\r\n\t\t\ttitles.value = `${title}目标考核`;\r\n\t\t\tif (title == '查看') {\r\n\t\t\t\tdisabled.value = true;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else if (title == '修改') {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t}\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 开启用户弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdutyDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '责任部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakerDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定人部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '上报人不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '考核指标值不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'number',\r\n\t\t\t\t\tmessage: '考核指标值只能为数字类型',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakeDate: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonName: [],\r\n\t\t});\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\temit('onAdd', form.value);\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\t// handleClose(formEl)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\t// console.log(formEl);\r\n\t\t\tif (!formEl) return\r\n\t\t\tformEl.resetFields();\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value={}\r\n\t\t};\r\n\t\t// const handleClose = (formEl: any) => {\r\n\t\t// \tformEl.resetFields();\r\n\t\t// };\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\tconsole.log(e)\r\n\t\t\tform.value.commitPersonId = e.uid;\r\n\t\t\tform.value.commitPersonName = e.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\t// handleClose,\r\n\t\t\tform,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tShow,\r\n\t\t\topenUser,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tdata,\r\n\t\t\tonUser,\r\n\t\t\truleFormRef,\r\n\t\t\trules,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue ---- a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (date 1660370067151) -@@ -5,19 +5,20 @@ - <el-row> - <el-col :span="11"> - <el-form-item label="责任部门" prop="dutyDepartmentId" size="default"> -- <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核指标" prop="value" size="default"> -- <el-input v-model.number="form.value" /> -+ <el-form-item label="考核指标" prop="examineValue" size="default"> -+ <el-input v-model.number="form.examineValue" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="制定人部门" prop="makerDepartmentId" size="default"> -- <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" -+ @current-change="makerDepartmentName" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -@@ -28,29 +29,30 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="上报值" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="上报值" prop="uploadValue" size="default"> -+ <el-input v-model="form.uploadValue"> - <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> - </el-input> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="上报时间" prop="makeDate" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="上报时间" prop="uploadDate" size="default"> -+ <el-date-picker v-model="form.uploadDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核结果" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -- <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> -- </el-input> -+ <el-form-item label="考核结果" prop="examineResult" size="default"> -+ <el-select v-model="form.examineResult" placeholder="请选择" style="width: 100%"> -+ <el-option label="合格" :value="1" /> -+ <el-option label="不合格" :value="2" /> -+ </el-select> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核人" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="考核人" prop="examinePersonName" size="default"> -+ <el-input v-model="form.examinePersonName"> - <template #append> <el-button :icon="Search" @click="openUser" /> </template> - </el-input> - </el-form-item> -@@ -58,8 +60,8 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核时间" prop="commitPersonName" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="考核时间" prop="examineDate" size="default"> -+ <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"></el-col> -@@ -67,7 +69,7 @@ - </el-form> - <template #footer> - <span class="dialog-footer"> -- -+ - <el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button> - <el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button> - </span> -@@ -87,12 +89,15 @@ - setup(props, { emit }) { - const ruleFormRef = ref<FormInstance>() - const form = ref({ -- dutyDepartmentId: '', ////责任部门/外键 -- makerDepartmentId: '', ////制定人部门/外键 -- commitPersonId: '', ////上报人/外键 -- commitPersonName: '', -- value: '', ////考核指标值 -- makeDate: '', ////制定日期 -+ "dutyDepartmentId": '', ////责任部门id/外键 -+ "examineDate": '', ////考核时间 -+ "examinePersonId": '', ////考核人ID/外键 -+ "examineResult": '', ////考核结果 1:合格 2:不合格 -+ "examineValue": '', ////考核指标 -+ "makeDate": '', ////制定日期 -+ "makerDepartmentId": '', ////制定部门/外键 -+ "uploadDate": '', ////上报时间 -+ "uploadValue": "", ////上报值 - }); - //部门 - const department = () => { -@@ -158,7 +163,7 @@ - trigger: 'blur', - }, - ], -- value: [ -+ examineValue: [ - { - required: true, - message: '考核指标值不能为空', -@@ -179,6 +184,13 @@ - ], - commitPersonName: [], - }); -+ const dutyName=(data:any)=>{ -+ form.value.dutyDepartmentName=data.depName -+ } -+ const makerDepartmentName=(data:any)=>{ -+ form.value.makerDepartmentName=data.depName -+ } -+ - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -214,8 +226,8 @@ - const data = ref(); - const onUser = (e: any) => { - console.log(e) -- form.value.commitPersonId = e.uid; -- form.value.commitPersonName = e.realName; -+ form.value.examinePersonId = e.uid; -+ form.value.examinePersonName = e.realName; - }; - return { - disabled, -@@ -238,6 +250,8 @@ - rules, - submitForm, - resetForm, -+ dutyName, -+ makerDepartmentName - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentReport/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"800px\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故快报\" prop=\"accidentExpressId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.accidentDepartmentName\" class=\"input-with-select\" />-->\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"accidentDepartmentId\" :disabled=\"true\" :data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\t\t\t\t:props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"occurrencePlace\" :disabled=\"true\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故类别\" prop=\"accidentType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人员伤亡事故\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"火灾爆炸事故\" value=\"火灾爆炸事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"危险品泄露事故\" value=\"危险品泄露事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"设备事故\" value=\"设备事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"工艺事故\" value=\"工艺事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故等级\" prop=\"accidentGrade\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentGrade\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特别重大\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大\" value=\"重大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大\" value=\"较大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般\" value=\"一般\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"经济损失\" prop=\"economicLoss\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.economicLoss\" :disabled=\"disabled\" placeholder=\"请填写经济损失\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"轻伤人数\" prop=\"minorInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.minorInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写轻伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"重伤人数\" prop=\"seriousInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.seriousInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写重伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"死亡人数\" prop=\"deathNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.deathNum\" :disabled=\"disabled\" placeholder=\"请填写死亡人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" placeholder=\"请填写事故原因\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"要求报告完成期限\" prop=\"reportDeadline\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.reportDeadline\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故级别\" prop=\"accidentLevel\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentLevel\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特大事故\" value=\"特大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大事故\" value=\"重大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大事故\" value=\"较大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般事故\" value=\"一般事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故延期申请\" prop=\"accidentDelayApply\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentDelayApply\" :disabled=\"disabled\" placeholder=\"请填写事故延期申请\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(直接分析)\" prop=\"comprehensiveAnalysisDirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisDirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(直接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(间接分析)\" prop=\"comprehensiveAnalysisIndirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisIndirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(间接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"整改措施\" prop=\"rectificationMeasures\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.rectificationMeasures\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写整改措施\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故处理\" prop=\"accidentHandling\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentHandling\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写事故处理\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写人\" prop=\"fillInUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.fillInUserName\" :disabled=\"true\"\r\n\t\t\t\t\t\t\t\t\t placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写日期\" prop=\"fillInTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.fillInTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"事故照片\">-->\r\n\t\t\t\t\t<!-- <el-input v-model=\"ruleForm.describe\" type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关人员笔录\" prop=\"relevantPersonnelRecords\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.relevantPersonnelRecords\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写相关人员笔录\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故状态\" prop=\"status\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.status\" :disabled=\"statusDisabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"处理中\" :value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"已处理\" :value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故分析会议纪要\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"其他材料\" prop=\"otherMaterials\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.otherMaterials\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写其他材料\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"Shows\" />\r\n\t\t<DailogSearchUserManger @SearchUser=\"onUser\" ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent,onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\taccidentExpressId:'',\r\n\r\n\t\t\taccidentType: '',\r\n\t\t\taccidentGrade: '',\r\n\t\t\teconomicLoss: '',\r\n\t\t\tminorInjuryNum: '',\r\n\t\t\tseriousInjuryNum: '',\r\n\t\t\tdeathNum: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\treportDeadline: '',\r\n\t\t\taccidentLevel: '',\r\n\t\t\taccidentDelayApply: '',\r\n\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\trectificationMeasures: '',\r\n\t\t\taccidentHandling: '',\r\n\t\t\tfillInUserUid: '',\r\n\t\t\tfillInUserName:'',\r\n\t\t\tfillInTime: '',\r\n\t\t\trelevantPersonnelRecords: '',\r\n\t\t\totherMaterials: '',\r\n\t\t\tfileList: [],\r\n\t\t\tstatus:''\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\tconst statusDisabled = ref(true)\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif(statusDisabledFlag.value=='first'){\r\n\t\t\t\truleForm.value.status = 1\r\n\t\t\t}else if(statusDisabledFlag.value=='second'){\r\n\t\t\t\truleForm.value.status = 2\r\n\t\t\t}\r\n\t\t\tif (title == '修改事故报告') {\r\n\t\t\t\tstatusDisabled.value = false\r\n\t\t\t}else {\r\n\t\t\t\tstatusDisabled.value = true\r\n\t\t\t}\r\n\t\t\tif (title == '查看事故报告' || title == '修改事故报告') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentReport(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\taccidentName.value = res.data.data.accidentName\r\n\t\t\t\t\t\t\taccidentDepartmentId.value = res.data.data.accidentDepartmentId\r\n\t\t\t\t\t\t\toccurrencePlace.value = res.data.data.occurrencePlace\r\n\t\t\t\t\t\t\toccurrenceTime.value = res.data.data.occurrenceTime\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst onCancel = (formEl: FormInstance | undefined) => {\r\n\t\t\tresetForm(formEl);\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\t\t];\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentExpressId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '快报不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentType: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故类别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentGrade: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故等级不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\teconomicLoss: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '经济损失不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\treportDeadline: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '要求报告完成期限不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentLevel: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故级别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisDirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(直接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisIndirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(间接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\trectificationMeasures: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '整改措施不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentHandling: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故处理不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写人不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'date',\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tstatus: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst accidentDepartmentId = ref()\r\n\t\tconst occurrencePlace = ref()\r\n\t\tconst occurrenceTime = ref()\r\n\t\tconst accidentName = ref()\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item[0]);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\taccidentName.value = item[0].accidentName\r\n\t\t\taccidentDepartmentId.value = item[0].accidentDepartmentId\r\n\t\t\toccurrencePlace.value = item[0].occurrencePlace\r\n\t\t\toccurrenceTime.value = item[0].occurrenceTime\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\tdelete ruleForm.value.accidentDepartmentId\r\n\t\t\tdelete ruleForm.value.occurrencePlace\r\n\t\t\tdelete ruleForm.value.occurrenceTime\r\n\r\n\t\t\tif (title == '新建事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.addAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\t//TODO 上传组件待定\r\n\t\t\t\t\t\truleForm.value.fileList = []\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.editAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\taccidentExpressId:'',\r\n\r\n\t\t\t\t\taccidentType: '',\r\n\t\t\t\t\taccidentGrade: '',\r\n\t\t\t\t\teconomicLoss: '',\r\n\t\t\t\t\tminorInjuryNum: '',\r\n\t\t\t\t\tseriousInjuryNum: '',\r\n\t\t\t\t\tdeathNum: '',\r\n\t\t\t\t\taccidentCause: '',\r\n\t\t\t\t\treportDeadline: '',\r\n\t\t\t\t\taccidentLevel: '',\r\n\t\t\t\t\taccidentDelayApply: '',\r\n\t\t\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\t\t\trectificationMeasures: '',\r\n\t\t\t\t\taccidentHandling: '',\r\n\t\t\t\t\tfillInUserUid: '',\r\n\t\t\t\t\tfillInUserName:'',\r\n\t\t\t\t\tfillInTime: '',\r\n\t\t\t\t\trelevantPersonnelRecords: '',\r\n\t\t\t\t\totherMaterials: '',\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\tstatus:''\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\t// ruleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value = {}\r\n\t\t\taccidentName.value = ''\r\n\t\t\taccidentDepartmentId.value = ''\r\n\t\t\toccurrencePlace.value = ''\r\n\t\t\toccurrenceTime.value = ''\r\n\t\t};\r\n\t\tconst handleChange = (val: number) => {\r\n\t\t\tconsole.log(val);\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\tconst onUser = (userItem: any) => {\r\n\t\t\truleForm.value.fillInUserUid = userItem[0].uid;\r\n\t\t\truleForm.value.fillInUserName = userItem[0].realName;\r\n\t\t};\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tonCancel,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tonUser,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\thandleChange,\r\n\t\t\tonSelectItem,\r\n\t\t\tnewTreeList,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tpropse,\r\n\t\t\tstatusDisabled,\r\n\t\t\taccidentDepartmentId,\r\n\t\t\toccurrencePlace,\r\n\t\t\toccurrenceTime,\r\n\t\t\taccidentName\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label {\r\n\theight: 100%;\r\n\ttext-align: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (date 1660370067175) -@@ -166,11 +166,11 @@ - /> - </el-form-item> - </el-col> -- <!-- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">--> -- <!-- <el-form-item label="事故照片">--> -- <!-- <el-input v-model="ruleForm.describe" type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <!-- </el-form-item>--> -- <!-- </el-col>--> -+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -+ <el-form-item label="事故照片"> -+ <uploaderImg :fileList="ruleForm.expressFileList" :disabled="true"></uploaderImg> -+ </el-form-item> -+ </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="相关人员笔录" prop="relevantPersonnelRecords"> - <el-input v-model="ruleForm.relevantPersonnelRecords" :disabled="disabled" -@@ -186,8 +186,9 @@ - </el-form-item> - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -- <el-form-item label="事故分析会议纪要" prop="fileList"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <el-form-item label="事故分析会议纪要"> -+ <uploaderFile :fileList="fileList" :systemName="'INCIDENT_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -221,6 +222,7 @@ - import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue'; - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import uploaderImg from '/@/components/uploaderImg/index.vue'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - import { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources'; - import { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration'; - import { goalManagementApi } from '/@/api/goalManagement'; -@@ -231,7 +233,8 @@ - AccidentName, - DailogSearchUserManger, - RegionsDialog, -- uploaderImg -+ uploaderImg, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false); -@@ -266,6 +269,8 @@ - const titles = ref(); - const disabled = ref(); - const statusDisabled = ref(true) -+ // 上传附件 -+ const fileList = ref([]); - // 打开弹窗 - const openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => { - isShowDialog.value = true; -@@ -291,18 +296,53 @@ - accidentDepartmentId.value = res.data.data.accidentDepartmentId - occurrencePlace.value = res.data.data.occurrencePlace - occurrenceTime.value = res.data.data.occurrenceTime -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ //事故照片 -+ if(ruleForm.value.expressFileList){ -+ for(var a = 0;a<ruleForm.value.expressFileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(ruleForm.value.expressFileList[a].fileName) -+ .then((res) => { -+ ruleForm.value.expressFileList[a].url = res.data -+ console.log('ruleForm',ruleForm) -+ }) -+ } -+ }else { -+ ruleForm.value.expressFileList = [] -+ } -+ -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 取消 - const onCancel = (formEl: FormInstance | undefined) => { - resetForm(formEl); - }; - //日期选择器 - const value1 = ref(''); -- // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ - // 可选择树 - const treeSelect = ref(); - //定义树形下拉框 -@@ -423,7 +463,9 @@ - delete ruleForm.value.accidentDepartmentId - delete ruleForm.value.occurrencePlace - delete ruleForm.value.occurrenceTime -- -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故报告') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -458,7 +500,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - //TODO 上传组件待定 -- ruleForm.value.fileList = [] - isShowDialog.value = false; - accidentManagementSystemApi() - .editAccidentReport(ruleForm.value) -@@ -512,12 +553,14 @@ - }; - } - }; -+ - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); - // ruleForm.value.accidentExpressId = item[0].id - ruleForm.value = {} -+ fileList.value = [] - accidentName.value = '' - accidentDepartmentId.value = '' - occurrencePlace.value = '' -@@ -629,7 +672,9 @@ - accidentDepartmentId, - occurrencePlace, - occurrenceTime, -- accidentName -+ accidentName, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" placeholder=\"请输入目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"考核指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<Dailog ref=\"openAdd\"></Dailog>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tvar arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\thandleClick,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttotal,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/index.vue b/src/views/goalManagement/safetyAssessment/index.vue ---- a/src/views/goalManagement/safetyAssessment/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/safetyAssessment/index.vue (date 1660370067181) -@@ -39,7 +39,7 @@ - <template #default="scope"> - <el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button> - <el-button link type="primary" size="default" :icon="View" @click="openD('修改', scope.row.id)">修改</el-button> -- <el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button> -+ <!--<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button>--> - </template> - </el-table-column> - </el-table> -@@ -209,4 +209,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetSettings/component/dailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"Shows\" @close=\"handleClose(ruleFormRef)\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" ref=\"ruleFormRef\" :rules=\"rules\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" prop=\"qName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" prop=\"indexNum\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" placeholder=\"请填写目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" prop=\"year\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.year\" maxlength=\"8\" placeholder=\"请填写年度\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" placeholder=\"请填写指标值\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"指标级别\" size=\"default\" prop=\"level\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.level\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t<el-option label=\"公司级\" :value=\"1\">公司级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"部门分厂级\" :value=\"2\">部门分厂级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"工段班组级\" :value=\"3\">工段班组级</el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"完成期限\" size=\"default\" prop=\"completeDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.completeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t<el-input v-model=\"form.memo\" size=\"default\" type=\"textarea\" />\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"titles == '查看目标设定' ? false : true\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue';\r\nimport screenfull from 'screenfull';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup(props, { emit }) {\r\n\t\tlet Shows = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tqName: '', //安全目标指标\r\n\t\t\tyear: '', //年度\r\n\t\t\tlevel: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttargetType: '', ////指标类型 1:年指标 2:月指标\r\n\t\t\tcompleteDate: '', ////完成期限\r\n\t\t\tdivideStatus: '2', ////分解状态 1:已分解 2:未分解\r\n\t\t\tvalue: '', ////指标值\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, value: any, id: number) => {\r\n\t\t\tShows.value = true;\r\n\t\t\ttitles.value = `${title}目标设定`;\r\n\t\t\tform.value.targetType = value;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '安全目标指标不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tindexNum: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '目标指标编号不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyear: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '年度不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '指标值不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tlevel:[],\r\n\t\t\tcompleteDate:[],\r\n\t\t\tmemo:[]\r\n\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tShows.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngAddOrupdata(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tShows.value = false;\r\n\t\t};\r\n\t\tconst handleClose = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\thandleClose,\r\n\t\t\ttitles,\r\n\t\t\tShows,\r\n\t\t\tform,\r\n\t\t\tfull,\r\n\t\t\tdisabled,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\trules,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/component/dailogAdd.vue b/src/views/goalManagement/targetSettings/component/dailogAdd.vue ---- a/src/views/goalManagement/targetSettings/component/dailogAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/targetSettings/component/dailogAdd.vue (date 1660370067201) -@@ -38,7 +38,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="完成期限" size="default" prop="completeDate"> -- <el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.completeDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -56,6 +63,7 @@ - </template> - <script lang="ts"> - import { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue'; -+// import { timeDate } from '/@/assets/index.ts'; - import screenfull from 'screenfull'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -@@ -90,11 +98,25 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.completeDate = timeC(form.value.completeDate); - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - //全屏 - const full = ref(false); - const toggleFullscreen = () => { -@@ -133,10 +155,9 @@ - trigger: 'change', - }, - ], -- level:[], -- completeDate:[], -- memo:[] -- -+ level: [], -+ completeDate: [], -+ memo: [], - }); - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { -@@ -158,7 +179,7 @@ - formEl.resetFields(); - } - }); -- formEl.resetFields(); -+ formEl.resetFields(); - } else { - console.log('error submit!', fields); - } -@@ -174,9 +195,11 @@ - formEl.resetFields(); - }; - return { -+ timeC, - openDialog, - handleClose, - titles, -+ // timeDate, - Shows, - form, - full, -@@ -195,4 +218,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择岗位\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.pass\" placeholder=\"岗位名称\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"11\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"submitForm(ruleFormRef)\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm(ruleFormRef)\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"岗位名称\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[100, 200, 300, 400]\"\r\n\t\t\t\t\t:small=\"small\"\r\n\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t:background=\"background\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"400\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.id }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup(props,{emit}) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpass: '',\r\n\t\t\tcheckPass: '',\r\n\t\t});\r\n\t\t// 表格\r\n\t\tconst tableData = [\r\n\t\t\t{ id:1,\r\n\t\t\t\tdate: '2016-05-03',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid:2,\r\n\t\t\t\tdate: '2016-05-02',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\t\r\n\t\t\t\tid:3,\t\r\n\t\t\t\tdate: '2016-05-04',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\tid:4,\r\n\t\t\t\tdate: '2016-05-01',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t];\r\n\t\tconst pageSize4 = ref(100);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\tconsole.log(`${val} items per page`);\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\tconsole.log(`current page: ${val}`);\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t\tconst submitForm=()=>{\r\n\t\t\tlet obj=JSON.parse(JSON.stringify(dynamicTags.value))\r\n\t\t\temit(\"backNum\",obj[0])\r\n\t\t\tdialogVisible.value = false\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogSearch.vue b/src/views/goalManagement/TargetBook/component/DailogSearch.vue ---- a/src/views/goalManagement/TargetBook/component/DailogSearch.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/TargetBook/component/DailogSearch.vue (date 1660370067207) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -- <el-table-column align="center"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > -+ <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -59,7 +59,7 @@ - :disable-transitions="false" - @close="handleClose(tag)" - > -- {{ tag.id }} -+ {{ tag.date }} - </el-tag> - </div> - </el-col> -@@ -89,24 +89,24 @@ - // 表格 - const tableData = [ - { id:1, -- date: '2016-05-03', -+ date: '岗位1', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - id:2, -- date: '2016-05-02', -+ date: '岗位2', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -- { -- id:3, -- date: '2016-05-04', -+ { -+ id:3, -+ date: '岗位3', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { id:4, -- date: '2016-05-01', -+ date: '岗位4', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -Index: src/components/uploaderImg/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-upload\r\n\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\tlist-type=\"picture-card\"\r\n\t\t\t:on-preview=\"handlePictureCardPreview\"\r\n\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t:on-success=\"successFile\"\r\n\t\t\t:on-error=\"errorFile\"\r\n\t>\r\n\t\t<el-icon><Plus /></el-icon>\r\n\t</el-upload>\r\n\r\n\t<el-dialog v-model=\"dialogVisible\">\r\n\t\t<img w-full :src=\"dialogImageUrl\" alt=\"Preview Image\" />\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\n\timport { ref,defineComponent } from 'vue'\r\n\timport { Plus } from '@element-plus/icons-vue'\r\n\timport type { UploadProps, UploadUserFile } from 'element-plus'\r\n\r\n\texport default defineComponent({\r\n\t\tprops: {\r\n\t\t\t// svg 图标组件名字\r\n\t\t\tfileList: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t},\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tPlus\r\n\t\t},\r\n\t\tsetup() {\r\n\r\n\t\t\tconst dialogImageUrl = ref('')\r\n\t\t\tconst dialogVisible = ref(false)\r\n\r\n\t\t\tconst handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\t\tconsole.log(uploadFile, uploadFiles)\r\n\t\t\t}\r\n\r\n\t\t\tconst handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\t\tdialogImageUrl.value = uploadFile.url!\r\n\t\t\t\tdialogVisible.value = true\r\n\t\t\t}\r\n\r\n\t\t\tconst successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(response, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\t\t\tconst errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(error, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\r\n\r\n\t\t\treturn {\r\n\t\t\t\tdialogImageUrl,\r\n\t\t\t\tdialogVisible,\r\n\t\t\t\thandleRemove,\r\n\t\t\t\thandlePictureCardPreview,\r\n\t\t\t\tsuccessFile,\r\n\t\t\t\terrorFile\r\n\t\t\t};\r\n\t\t},\r\n\t});\r\n</script> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderImg/index.vue b/src/components/uploaderImg/index.vue ---- a/src/components/uploaderImg/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/components/uploaderImg/index.vue (date 1660370067213) -@@ -1,12 +1,13 @@ - <template> - <el-upload -- v-model:file-list="fileList" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- list-type="picture-card" -- :on-preview="handlePictureCardPreview" -- :on-remove="handleRemove" -- :on-success="successFile" -- :on-error="errorFile" -+ v-model:file-list="fileList" -+ :disabled="disabled" -+ :http-request="uploadSectionFile" -+ list-type="picture-card" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" - > - <el-icon><Plus /></el-icon> - </el-upload> -@@ -16,50 +17,141 @@ - </el-dialog> - </template> - <script lang="ts"> -- import { ref,defineComponent } from 'vue' -- import { Plus } from '@element-plus/icons-vue' -- import type { UploadProps, UploadUserFile } from 'element-plus' -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; - -- export default defineComponent({ -- props: { -- // svg 图标组件名字 -- fileList: { -- type: Array, -- }, -+export default defineComponent({ -+ props: { -+ // svg 图标组件名字 -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, - }, -- components: { -- Plus -- }, -- setup() { -- -- const dialogImageUrl = ref('') -- const dialogVisible = ref(false) -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); - -- const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -- console.log(uploadFile, uploadFiles) -- } -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ }; - -- const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -- dialogImageUrl.value = uploadFile.url! -- dialogVisible.value = true -- } -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ dialogImageUrl.value = uploadFile.url!; -+ dialogVisible.value = true; -+ }; - -- const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(response, uploadFile,uploadFiles) -- } -- const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(error, uploadFile,uploadFiles) -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] - } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; - -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; - -- return { -- dialogImageUrl, -- dialogVisible, -- handleRemove, -- handlePictureCardPreview, -- successFile, -- errorFile -- }; -- }, -- }); --</script> -\ No newline at end of file -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -Index: src/views/goalManagement/TargetBook/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.jobId\" placeholder=\"请选择岗位\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openSearch\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"index\" label=\"序号\" align=\"center\" width=\"70\" />\r\n\t\t\t\t<el-table-column property=\"jobId\" align=\"center\" label=\"岗位\" sortable />\r\n\t\t\t\t<el-table-column property=\"signDate\" align=\"center\" label=\"责任书签订日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column property=\"extraFile\" align=\"center\" label=\"附件\" sortable />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" style=\"width: 300px\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearch ref=\"openUser\"></DailogSearch>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearch from './component/DailogSearch.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearch },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tjobId: '', ////岗位号/外键\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.jobId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.jobId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.jobId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\topenSearch,\r\n\t\t\ttimeDate,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/index.vue b/src/views/goalManagement/TargetBook/index.vue ---- a/src/views/goalManagement/TargetBook/index.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/TargetBook/index.vue (date 1660370067232) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.jobId" placeholder="请选择岗位"> -+ <el-input v-model="jobName" placeholder="请选择岗位"> - <template #append> <el-button :icon="Search" @click="openSearch" /> </template - ></el-input> - </el-form-item> -@@ -61,7 +61,7 @@ - /> - </div> - <DailogAdd ref="openAdd" @navAddorUpdata="onAddorUpdata"></DailogAdd> -- <DailogSearch ref="openUser"></DailogSearch> -+ <DailogSearch ref="openUser" @backNum="IdNumber"></DailogSearch> - </div> - </div> - </template> -@@ -88,6 +88,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.jobId = ''; -+ jobName.value="" - listApi(); - }; - const listApi = () => { -@@ -116,6 +117,11 @@ - const onAddorUpdata = () => { - listApi(); - }; -+ const jobName=ref() -+ const IdNumber=(val:any)=>{ -+ ruleForm.jobId=val.id -+ jobName.value=val.date -+ } - // 表格 - const tableData = ref(); - const currentPage4 = ref(); -@@ -222,6 +228,7 @@ - openUser.value.openDailog(); - }; - return { -+ IdNumber, - ruleForm, - resetForm, - listApi, -@@ -278,4 +285,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"岗位\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.jobId\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书签订日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.signDate\" style=\"width:100%\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择日期时间\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书附件\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"IdNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\textraFile: '666', //责任书附件\r\n\t\t\tjobId: '', //岗位\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value =`${title}目标责任书`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.gettargetDutyfileInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoAddorUpdata(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\tconst IdNumber=(val:any)=>{\r\n form.value.jobId=val.id\r\n\t\t}\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tIdNumber,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\topenDailog,\r\n\t\t\tdaiInpt,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShows,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogAdd.vue b/src/views/goalManagement/TargetBook/component/DailogAdd.vue ---- a/src/views/goalManagement/TargetBook/component/DailogAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/goalManagement/TargetBook/component/DailogAdd.vue (date 1660370067237) -@@ -1,11 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" :disabled="disabled" label-width="120px"> - <el-row> - <el-col :span="24"> - <el-form-item label="岗位" size="default"> -- <el-input v-model="form.jobId" placeholder="请选择"> -+ <el-input v-model="form.jobName" placeholder="请选择"> - <template #append> <el-button :icon="Search" @click="daiInpt" /> </template - ></el-input> - </el-form-item> -@@ -14,7 +14,7 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书签订日期" size="default"> -- <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> -+ <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> - </el-form-item> - </el-col> - </el-row> -@@ -28,22 +28,8 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -64,8 +50,9 @@ - import { ElMessage, ElMessageBox } from 'element-plus'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearch }, -+ components: { DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const form = ref({ -@@ -88,14 +75,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.signDate=timeC(form.value.signDate) -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 提交 - const submitForm = () => { - dialogVisible.value = false; -+ delete form.value.jobName - goalManagementApi() - .gettargetDutyfileInfoAddorUpdata(form.value) - .then((res) => { -@@ -127,6 +170,7 @@ - extraFile: '666', //责任书附件 - jobId: '', //岗位 - }; -+ fileList.value = [] - }; - // 安全目标指标弹窗 - const Shows = ref(); -@@ -135,17 +179,10 @@ - }; - const IdNumber=(val:any)=>{ - form.value.jobId=val.id -+ form.value.jobName=val.date - } - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -+ const fileList = ref([ - ]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { -@@ -176,6 +213,7 @@ - } - }; - return { -+ timeC, - IdNumber, - dialogVisible, - form, -@@ -195,6 +233,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -203,4 +243,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"769px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"drillName\">\r\n <el-input v-model=\"ruleForm.drillName\" placeholder=\"请填写演练名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input v-model=\"ruleForm.drillAddress\" placeholder=\"请填写演练地点\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.departmentId\"\r\n :data=\"data\"\r\n check-strictly\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"1\"></el-option>\r\n <el-option label=\"桌面\" value=\"2\"></el-option>\r\n <el-option label=\"专项\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"planName\" >\r\n <el-input\r\n v-model=\"ruleForm.planName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.makingPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.drillPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <!--<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n <!--<el-form-item label=\"修改时间\" prop=\"gmtModitify\">-->\r\n <!--<el-date-picker v-model=\"ruleForm.gmtModitify\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />-->\r\n <!--</el-form-item>-->\r\n <!--</el-col>-->\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserName\">\r\n <el-input v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\" disabled></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.makingDepartmentId\"\r\n check-strictly\r\n :data=\"data\"\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"userListString\" >\r\n <el-input\r\n v-model=\"ruleForm.userListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(0)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(1)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <!--<el-upload-->\r\n <!--v-model:file-list=\"fileList\"-->\r\n <!--class=\"upload-demo\"-->\r\n <!--action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"-->\r\n <!--:on-change=\"handleChange\"-->\r\n <!-->-->\r\n <!--<el-button type=\"primary\"-->\r\n <!-->点击上传</el-button>-->\r\n <!--<template #tip>-->\r\n <!--<div class=\"el-upload__tip\">-->\r\n <!--添加相关附件-->\r\n <!--</div>-->\r\n <!--</template>-->\r\n <!--</el-upload>-->\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\" />\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"SearchUser\" />\r\n <DailogSearchUser ref=\"userFZRef\" @SearchUser=\"SearchFZUser\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport type {\r\n UploadUserFile,\r\n FormInstance,\r\n} from 'element-plus'\r\nimport { ElMessage } from 'element-plus';\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport {releaseDrillPlanApi} from \"/@/api/contingencyManagement/emergencyDrillPlan\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nimport { Session } from '/@/utils/storage';\r\n\r\nexport default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingUserName: '', //计划制定人Name\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n ruleForm.value.makingUserUid = Session.get('uid');\r\n ruleForm.value.makingUserName = Session.get('realName');\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看应急演练计划发布' || title == '修改应急演练计划发布') {\r\n releaseDrillPlanApi()\r\n .seeReleaseDrillPlan(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.userListString=''\r\n ruleForm.value.chargeUserListString=''\r\n for(var a = 0;a<res.data.data.userList.length;a++){\r\n if(res.data.data.userList[a].type==1){\r\n ruleForm.value.userListString += res.data.data.userList[a].userName+';'\r\n }\r\n // if(res.data.data.userList[a].type==2){\r\n // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'\r\n // }\r\n }\r\n // alert(res.data.data.chargeUserList.length)\r\n for(var a = 0;a<res.data.data.chargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ]\r\n //部门树\r\n const department = () => {\r\n goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = ref()\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n value: 'depId',\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n // 表单提交验证必填项\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)\r\n delete ruleForm.value.planName\r\n delete ruleForm.value.chargeUserListString\r\n delete ruleForm.value.userListString\r\n delete ruleForm.value.chargeUserList\r\n delete ruleForm.value.gmtModitify\r\n if (title == '新建应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .addReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n }\r\n else if (title == '修改应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .editReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n }\r\n }\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n formEl.resetFields();\r\n };\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt = () => {\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.planId=e.id\r\n ruleForm.value.planName=e.name\r\n };\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const userFZRef = ref();\r\n //打开演练人员和演练负责人弹窗 type 0 演练人员 1 演练负责人\r\n const openUser = (type:number) => {\r\n if(type==0){\r\n userRef.value.openDailog(0);\r\n }else if(type==1){\r\n userFZRef.value.openDailog(0);\r\n }\r\n };\r\n const SearchUser = (e:any) => {\r\n console.log('演练人员',e)\r\n ruleForm.value.userListString=''\r\n ruleForm.value.userList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.userList.push(\r\n {\r\n type: 1,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.userListString+=e[a].realName+';'\r\n }\r\n\r\n };\r\n const SearchFZUser = (e:any) => {\r\n console.log('演练负责人员',e[0].userName)\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.chargeUserList=[]\r\n // ruleForm.value.chargeUserList = []\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.chargeUserList.push(\r\n {\r\n type: 2,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.chargeUserListString+=e[a].realName+';'\r\n }\r\n };\r\n // 计划定制日期\r\n const datetime = ref('');\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n isShowDialog,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n department,\r\n propse,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n ruleFormRef,\r\n submitForm,\r\n openUser,\r\n userRef,\r\n datetime,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n titles,\r\n disabled,\r\n resetForm,\r\n emit,\r\n onUser,\r\n userFZRef,\r\n SearchUser,\r\n SearchFZUser\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea{\r\n height: 168px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 168px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n//多行文本框\r\n.textarea{\r\n height: 70px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 70px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue ---- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (date 1660370067244) -@@ -162,20 +162,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <!--<el-upload--> -- <!--v-model:file-list="fileList"--> -- <!--class="upload-demo"--> -- <!--action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"--> -- <!--:on-change="handleChange"--> -- <!-->--> -- <!--<el-button type="primary"--> -- <!-->点击上传</el-button>--> -- <!--<template #tip>--> -- <!--<div class="el-upload__tip">--> -- <!--添加相关附件--> -- <!--</div>--> -- <!--</template>--> -- <!--</el-upload>--> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -215,12 +203,13 @@ - import {releaseDrillPlanApi} from "/@/api/contingencyManagement/emergencyDrillPlan"; - import {goalManagementApi} from "/@/api/goalManagement"; - import { Session } from '/@/utils/storage'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -281,14 +270,35 @@ - for(var a = 0;a<res.data.data.chargeUserList.length;a++){ - ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';' - } -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -318,6 +328,9 @@ - }); - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList) - delete ruleForm.value.planName - delete ruleForm.value.chargeUserListString -@@ -412,6 +425,7 @@ - } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; -+ fileList.value=[] - if (!formEl) return; - ruleForm.value = { - makingPlanDate: '', // 计划制定日期 -@@ -473,7 +487,6 @@ - ) - ruleForm.value.userListString+=e[a].realName+';' - } -- - }; - const SearchFZUser = (e:any) => { - console.log('演练负责人员',e[0].userName) -@@ -532,7 +545,9 @@ - onUser, - userFZRef, - SearchUser, -- SearchFZUser -+ SearchFZUser, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -573,4 +588,4 @@ - margin-right: 0; - border-radius: 4px 4px 0 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/components/uploaderFile/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderFile/index.vue b/src/components/uploaderFile/index.vue -new file mode 100644 ---- /dev/null (date 1660370066958) -+++ b/src/components/uploaderFile/index.vue (date 1660370066958) -@@ -0,0 +1,178 @@ -+<template> -+ <el-upload -+ v-model:file-list="fileList" -+ multiple -+ :disabled="disabled" -+ class="upload-demo" -+ :http-request="uploadSectionFile" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" -+ > -+ <el-button type="primary">点击上传</el-button> -+ <template #tip> -+ <div class="el-upload__tip"> -+ 请上传文件 -+ <!--jpg/png files with a size less than 500KB.--> -+ </div> -+ <slot name="file"> -+ -+ </slot> -+ </template> -+ </el-upload> -+ -+ <!--<el-dialog v-model="dialogVisible">--> -+ <!--<img w-full :src="dialogImageUrl" alt="Preview Image" />--> -+ <!--</el-dialog>--> -+</template> -+<script lang="ts"> -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+ -+export default defineComponent({ -+ props: { -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, -+ }, -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); -+ -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ emit('deleteFile',uploadFiles); -+ }; -+ -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ goalManagementApi() -+ .searchFile(uploadFile.fileName) -+ .then((res) => { -+ window.open(res.data, "_blank"); -+ }) -+ dialogImageUrl.value = uploadFile.url!; -+ // dialogVisible.value = true; -+ }; -+ -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] -+ } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].name=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; -+ -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; -+ -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -+<style scoped> -+ .upload-demo{ -+ width: 100%; -+ } -+</style> -Index: src/views/goalManagement/targetEscalation/component/TypeDailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/TypeDailog.vue b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue -new file mode 100644 ---- /dev/null (date 1660370067109) -+++ b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue (date 1660370067109) -@@ -0,0 +1,271 @@ -+<template> -+ <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="50%" draggable :fullscreen="full" :close-on-click-modal="false"> -+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -+ <el-form ref="ruleFormRef" :model="form" size="default" :disabled="disabled" label-width="120px"> -+ <div v-if="titleName=='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="titleName!='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="typeScope"> -+ <el-row> -+ <el-col> -+ <el-form-item label="审批结果" prop="authorUid"> -+ <el-radio-group v-model="form.approveResult"> -+ <el-radio :label="0">不通过</el-radio> -+ <el-radio :label="1">通过</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="审批意见" prop="approveMemo"> -+ <el-input v-model="form.approveMemo" type="textarea" placeholder="请填写审批意见"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="是否完成" prop="complete"> -+ <el-radio-group v-model="form.approveStatus"> -+ <el-radio :label="3">是</el-radio> -+ <el-radio :label="2">否</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <div v-if="form.approveStatus==2"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ </div> -+ </el-form> -+ <template #footer> -+ <span class="dialog-footer"> -+ <el-button @click="resetForm" size="default">关闭</el-button> -+ <el-button size="default" type="primary" @click="submitForm">确定</el-button> -+ </span> -+ </template> -+ </el-dialog> -+ <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> -+</template> -+<script lang="ts"> -+import { ref, defineComponent } from 'vue'; -+import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+import { Search, FullScreen } from '@element-plus/icons-vue'; -+export default defineComponent({ -+ components: { DailogSearchUserManger }, -+ setup(props, { emit }) { -+ const dialogVisible = ref(false); -+ const form = ref({ -+ workName: '', // 审批名称 -+ title: '', //审批标题 -+ approvePersonId: '', -+ approvePersonName: '', -+ approveStatus: 2, -+ approveResult: '', -+ relateType: 1, -+ relateId: '', -+ }); -+ // 提交 -+ const submitForm = () => { -+ if (titleName.value == '发起审批') { -+ goalManagementApi() -+ .getworkApproveAdd(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } else if (titleName.value == '审批') { -+ goalManagementApi() -+ .getworkApproveUpdata(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ // 关闭 -+ const resetForm = () => { -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ const titleName = ref(); -+ const typeScope = ref(); -+ const disabledT = ref(false); -+ const disabled = ref(false); -+ const formUp=ref({ -+ workName:"", -+ title:"", -+ approvePersonName:"" -+ }) -+ // 打开弹窗 -+ const openDialog = (title: string, name: string, id: number,type:number) => { -+ dialogVisible.value = true; -+ titleName.value = title; -+ form.value.relateType=type -+ if (title == '发起审批') { -+ form.value.relateId = id; -+ typeScope.value = false; -+ } else if (title == '审批'||title == '查看审批') { -+ goalManagementApi() -+ .getworkApproveDetail(id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ form.value = res.data.data; -+ form.value.approveStatus="" -+ formUp.value.workName=form.value.workName -+ formUp.value.title=form.value.title -+ formUp.value.approvePersonName=form.value.approvePersonName -+ if (form.value.approvePersonName === form.value.submitPersonName) { -+ disabled.value = false; -+ } else { -+ disabled.value = true; -+ } -+ } -+ }); -+ typeScope.value = true; -+ disabledT.value = true; -+ } -+ }; -+ // 打开用户选择弹窗 -+ const userRef = ref(); -+ const openUser = () => { -+ userRef.value.openDailog(); -+ }; -+ const onUser = (val: any) => { -+ form.value.approvePersonId = val[0].uid; -+ form.value.approvePersonName = val[0].realName; -+ }; -+ //全屏 -+ const full = ref(false); -+ const toggleFullscreen = () => { -+ if (full.value == false) { -+ full.value = true; -+ } else { -+ full.value = false; -+ } -+ }; -+ return { -+ formUp, -+ onUser, -+ dialogVisible, -+ form, -+ disabledT, -+ submitForm, -+ resetForm, -+ titleName, -+ typeScope, -+ disabled, -+ openDialog, -+ userRef, -+ openUser, -+ full, -+ toggleFullscreen, -+ Search, -+ FullScreen, -+ }; -+ }, -+}); -+</script> -+<style> -+.el-row { -+ padding-bottom: 20px; -+} -+</style> -Index: src/components/equipmentDailog/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\" draggable :title=\"titles\" width=\"60%\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" :rules=\"rules\" :disabled=\"disabled\" label-width=\"120px\" class=\"formType\">\r\n\t\t\t<el-form-item label=\"装置设施名称\" size=\"default\" prop=\"qName\">\r\n\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写装置设施名称\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施位号\" size=\"default\" prop=\"positionNum\">\r\n\t\t\t\t<el-input disabled v-model=\"form.positionNum\" placeholder=\"请填写装置设施位号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施用途\" size=\"default\" prop=\"qUsage\">\r\n\t\t\t\t<el-input v-model=\"form.qUsage\" placeholder=\"请填写装置设施用途\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施型号\" size=\"default\" prop=\"model\">\r\n\t\t\t\t<el-input v-model=\"form.model\" placeholder=\"请填写装置设施型号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"类型/类别外键\" size=\"default\" prop=\"equipmentTypeName\">\r\n\t\t\t\t<el-input v-model=\"form.equipmentTypeName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"opencategory\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<!-- <el-form-item label=\"区域名称\" size=\"default\">\r\n <el-input v-model=\"form.name\" placeholder=\"请选择\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openRegion\"></el-button>\r\n </template>\r\n </el-input>\r\n </el-form-item> -->\r\n\t\t\t<el-form-item label=\"单位部门\" size=\"default\" prop=\"departmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.departmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"设置部位\" size=\"default\" prop=\"setPart\">\r\n\t\t\t\t<el-input v-model=\"form.setPart\" placeholder=\"请填写设置部位\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生产日期\" size=\"default\" prop=\"produceTime\">\r\n\t\t\t\t<el-date-picker v-model=\"form.produceTime\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用期限(天)\" size=\"default\" prop=\"useEndDay\">\r\n\t\t\t\t<el-input v-model=\"form.useEndDay\" placeholder=\"请填写使用期限\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生命周期\" size=\"default\" prop=\"lifeCycle\">\r\n\t\t\t\t<el-select v-model=\"form.lifeCycle\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"已投用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"库存中\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"3\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"投用日期\" size=\"default\" prop=\"useDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.useDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"维修状态\" size=\"default\" prop=\"repairStatus\">\r\n\t\t\t\t<el-select v-model=\"form.repairStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"维修中\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"已修好\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用状态\" size=\"default\" prop=\"stopStatus\">\r\n\t\t\t\t<el-select v-model=\"form.stopStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"停用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"在用\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"维修\" :value=\"3\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"4\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检查日期\" size=\"default\" prop=\"previousCheckDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousCheckDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检测日期\" size=\"default\" prop=\"previousTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.previousTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次保养日期\" size=\"default\" prop=\"previousTakecareDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousTakecareDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检查日期\" size=\"default\" prop=\"nextCheckDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextCheckDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检测日期\" size=\"default\" prop=\"nextTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次保养日期\" size=\"default\" prop=\"nextTakecareDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTakecareDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人\" size=\"default\" prop=\"leadingPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.leadingPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(1)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人部门\" size=\"default\" prop=\"leadingPersonDepartmentId\">\r\n\t\t\t\t<el-tree-select\r\n\t\t\t\t\tv-model=\"form.leadingPersonDepartmentId\"\r\n\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\tcheck-strictly=\"true\"\r\n\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"供应商\" size=\"default\" prop=\"supplyName\">\r\n\t\t\t\t<el-input v-model=\"form.supplyName\" placeholder=\"请填写供应商\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用说明\" size=\"default\" prop=\"useMemo\">\r\n\t\t\t\t<el-input v-model=\"form.useMemo\" placeholder=\"请填写使用说明\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检查\" size=\"default\" prop=\"isNeedCheck\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedCheck\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查周期\" size=\"default\" prop=\"checkCycle\">\r\n\t\t\t\t<el-input v-model=\"form.checkCycle\" placeholder=\"请填写检查周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查提前提醒\" size=\"default\" prop=\"checkWarn\">\r\n\t\t\t\t<el-input v-model=\"form.checkWarn\" placeholder=\"请填写检查提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检测\" size=\"default\" prop=\"isNeedTest\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTest\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测周期\" size=\"default\" prop=\"testCycle\">\r\n\t\t\t\t<el-input v-model=\"form.testCycle\" placeholder=\"请填写检测周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测提前提醒\" size=\"default\" prop=\"testWarn\">\r\n\t\t\t\t<el-input v-model=\"form.testWarn\" placeholder=\"请填写检测提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否保养\" size=\"default\" prop=\"isNeedTakecare\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTakecare\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查内容\" size=\"default\" prop=\"checkContent\">\r\n\t\t\t\t<el-input v-model=\"form.checkContent\" placeholder=\"请填写检查内容\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责部门\" size=\"default\" prop=\"leadingDepartmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.leadingDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查指标\" size=\"default\" prop=\"checkPoint\">\r\n\t\t\t\t<el-input v-model=\"form.checkPoint\" placeholder=\"请填写检查指标\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"预警值\" size=\"default\" prop=\"alertNum\">\r\n\t\t\t\t<el-input v-model=\"form.alertNum\" placeholder=\"请填写预警值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"联锁值\" size=\"default\" prop=\"lockNum\">\r\n\t\t\t\t<el-input v-model=\"form.lockNum\" placeholder=\"请填写联锁值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用理由\" size=\"default\" prop=\"stopReason\">\r\n\t\t\t\t<el-input v-model=\"form.stopReason\" placeholder=\"请填写停用理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用后措施\" size=\"default\" prop=\"afterStopStep\">\r\n\t\t\t\t<el-input v-model=\"form.afterStopStep\" placeholder=\"请填写停用后措施\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际停用日期\" size=\"default\" prop=\"actualStopDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.actualStopDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交人\" size=\"default\" prop=\"stopSubmitPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.stopSubmitPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(2)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交日期\" size=\"default\" prop=\"stopSubmitDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.stopSubmitDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复理由\" size=\"default\" prop=\"recoveryReason\">\r\n\t\t\t\t<el-input v-model=\"form.recoveryReason\" placeholder=\"请填写恢复理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复填报日期\" size=\"default\" prop=\"recoverySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.recoverySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际恢复日期\" size=\"default\" prop=\"actualRecoveryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualRecoveryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废理由\" size=\"default\" prop=\"destoryReason\">\r\n\t\t\t\t<el-input v-model=\"form.destoryReason\" placeholder=\"请填写报废理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废填报日期\" size=\"default\" prop=\"destorySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.destorySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际报废日期\" size=\"default\" prop=\"actualDestoryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualDestoryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"设备保养\" name=\"first\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openMaintenance('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.takecareDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareMemo\" label=\"保养情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonName\" label=\"保养负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareDate\" :formatter=\"timeDate\" label=\"保养日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonDepartmentName\" label=\"保养负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备检测\" name=\"second\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openDetect('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.testDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonName\" label=\"检测人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testDate\" :formatter=\"timeDate\" label=\"检测日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonDepartmentName\" label=\"检测人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testMemo\" label=\"检测内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"检测结果\" >\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==1\">成功</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==2\">失败</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testStatus\" label=\"检测状态\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteB(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备维修\" name=\"third\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openRepair('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.repaireDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"exceptionInfo\" label=\"设施异常项\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"维修状态\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==1\">维修中</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==2\">已修好</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairMemo\" label=\"维修情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonName\" label=\"维修负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonDepartmentName\" label=\"维修负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairStartDate\" :formatter=\"timeDate\" label=\"维修开始日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairEndDate\" :formatter=\"timeDate\" label=\"维修结束日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteC(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"检查标准设置\" name=\"fourth\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openStandard('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.checkStandardeDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"indexNum\" label=\"序号\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkContent\" label=\"检查内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkTarget\" label=\"检查指标\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"unit\" label=\"单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkPart\" label=\"巡检部位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"rate\" label=\"频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteD(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"巡检记录\" size=\"default\" name=\"five\">\r\n\t\t\t\t<el-table :data=\"name\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"name\" label=\"任务编号\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"任务名称\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"点位类型\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"检查频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" :formatter=\"timeDate\" label=\"巡检时间\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"巡检人\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"保养维修标准\" name=\"six\" v-if=\"Dailogtype\">\r\n\t\t\t\t<el-upload\r\n\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\tmultiple\r\n\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t<div class=\"el-upload__tip\"></div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-upload>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<categoryDailog ref=\"categoryShow\"></categoryDailog>\r\n\t<categoryDailog ref=\"categoryShow\" @typeId=\"Tid\"></categoryDailog>\r\n\t<regionDailog ref=\"regionShow\"></regionDailog>\r\n\t<DailogSearchUser ref=\"UserShow\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t<maintenanceDailog ref=\"maintenanceShow\" @onMain=\"main\"></maintenanceDailog>\r\n\t<detectDailog ref=\"detectShow\" @onDelect=\"delect\"></detectDailog>\r\n\t<repairDailog ref=\"repairShow\" @onRepair=\"Repair\"></repairDailog>\r\n\t<standardDailog ref=\"standardShow\" @onStand=\"Stand\"></standardDailog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport categoryDailog from './categoryDailog.vue';\r\nimport regionDailog from './regionDailog.vue';\r\nimport maintenanceDailog from './maintenanceDailog.vue';\r\nimport detectDailog from './detectDailog.vue';\r\nimport repairDailog from './repairDailog.vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport standardDailog from './standardDailog.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox, FormInstance, FormRules } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { facilityManagementApi } from '/@/api/facilityManagement';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tsupplyName: '',\r\n\r\n\t\t\tnextTestDate: '',\r\n\r\n\t\t\tqUsage: '',\r\n\r\n\t\t\tdepartmentId: '',\r\n\r\n\t\t\tproduceTime: '',\r\n\r\n\t\t\tactualStopDate: '',\r\n\r\n\t\t\ttakecareDetailList: [],\r\n\r\n\t\t\tinfoType: '',\r\n\r\n\t\t\tleadingDepartmentId: '',\r\n\r\n\t\t\tuseEndDay: '',\r\n\r\n\t\t\tpreviousTakecareDate: '',\r\n\r\n\t\t\tpreviousCheckDate: '',\r\n\r\n\t\t\tmodel: '',\r\n\r\n\t\t\tstopStatus: '',\r\n\r\n\t\t\ttestWarn: '',\r\n\r\n\t\t\tstopSubmitDate: '',\r\n\r\n\t\t\trepairStatus: '',\r\n\r\n\t\t\ttakecareStardardeDetailList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfilePath: '123',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\r\n\t\t\tnextCheckDate: '',\r\n\r\n\t\t\tcheckCycle: '',\r\n\r\n\t\t\tcheckPoint: '',\r\n\r\n\t\t\tleadingPersonId: '',\r\n\t\t\tleadingPersonName: '',\r\n\r\n\t\t\tqName: '',\r\n\r\n\t\t\tnextTakecareDate: '',\r\n\r\n\t\t\tsetPart: '',\r\n\r\n\t\t\tcheckStandardeDetailList: [],\r\n\r\n\t\t\tactualDestoryDate: '',\r\n\r\n\t\t\tisNeedTest: '',\r\n\r\n\t\t\talertNum: '',\r\n\r\n\t\t\tcheckContent: '',\r\n\r\n\t\t\tuseMemo: '',\r\n\r\n\t\t\tpreviousTestDate: '',\r\n\r\n\t\t\tisNeedTakecare: '',\r\n\r\n\t\t\tdestoryReason: '',\r\n\r\n\t\t\tcheckDetailList: [],\r\n\r\n\t\t\tpositionNum: '',\r\n\r\n\t\t\ttestCycle: '',\r\n\r\n\t\t\trecoveryReason: '',\r\n\r\n\t\t\tisNeedCheck: '',\r\n\r\n\t\t\tactualRecoveryDate: '',\r\n\r\n\t\t\tleadingPersonDepartmentId: '',\r\n\r\n\t\t\tstopReason: '',\r\n\r\n\t\t\tdestorySubmitDate: '',\r\n\r\n\t\t\ttestDetailList: [],\r\n\r\n\t\t\tcheckWarn: '',\r\n\r\n\t\t\trepaireDetailList: [],\r\n\r\n\t\t\tequipmentTypeId: '',\r\n\r\n\t\t\tuseDate: '',\r\n\r\n\t\t\trecoverySubmitDate: '',\r\n\r\n\t\t\tlockNum: '',\r\n\r\n\t\t\tstopSubmitPersonId: '',\r\n\t\t\tstopSubmitPersonName: '',\r\n\t\t\tafterStopStep: '',\r\n\r\n\t\t\tlifeCycle: '',\r\n\r\n\t\t\tdelCheckStandardeDetails: '',\r\n\r\n\t\t\tdelTakecareStardardeDetails: '',\r\n\r\n\t\t\tdelTakecareDetails: '',\r\n\r\n\t\t\tdelRepaireDetails: '',\r\n\r\n\t\t\tdelTestDetails: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst titleT = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst Dailogtype = ref(false);\r\n\t\tconst openDailog = (title: string, type: boolean, id: number, num: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitleT.value = title;\r\n\t\t\tdepartment();\r\n\t\t\tDailogtype.value = type;\r\n\t\t\tif (num == 0) {\r\n\t\t\t\ttitles.value = `${title}仪表信息`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 1) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 2) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t}\r\n\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t.getequipmentInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [],\r\n\t\t\tpositionNum: [],\r\n\t\t\tqUsage: [],\r\n\t\t\tmodel: [],\r\n\t\t\tequipmentTypeId: [],\r\n\t\t\tequipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],\r\n\t\t\tdepartmentId: [],\r\n\t\t\tsetPart: [],\r\n\t\t\tproduceTime: [],\r\n\t\t\tuseEndDay: [],\r\n\t\t\tlifeCycle: [],\r\n\t\t\tuseDate: [],\r\n\t\t\trepairStatus: [],\r\n\t\t\tstopStatus: [],\r\n\t\t\tpreviousCheckDate: [],\r\n\t\t\tpreviousTestDate: [],\r\n\t\t\tpreviousTakecareDate: [],\r\n\t\t\tnextCheckDate: [],\r\n\t\t\tnextTestDate: [],\r\n\t\t\tnextTakecareDate: [],\r\n\t\t\tleadingPersonName: [],\r\n\t\t\tleadingPersonDepartmentId: [],\r\n\t\t\tsupplyName: [],\r\n\t\t\tuseMemo: [],\r\n\t\t\tisNeedCheck: [],\r\n\t\t\tcheckCycle: [],\r\n\t\t\tcheckWarn: [],\r\n\t\t\tisNeedTest: [],\r\n\t\t\ttestCycle: [],\r\n\t\t\ttestWarn: [],\r\n\t\t\tisNeedTakecare: [],\r\n\t\t\tcheckContent: [],\r\n\t\t\tleadingDepartmentId: [],\r\n\t\t\tcheckPoint: [],\r\n\t\t\talertNum: [],\r\n\t\t\tlockNum: [],\r\n\t\t\tstopReason: [],\r\n\t\t\tafterStopStep: [],\r\n\t\t\tactualStopDate: [],\r\n\t\t\tstopSubmitPersonName: [],\r\n\t\t\tstopSubmitDate: [],\r\n\t\t\trecoveryReason: [],\r\n\t\t\trecoverySubmitDate: [],\r\n\t\t\tactualRecoveryDate: [],\r\n\t\t\tdestoryReason: [],\r\n\t\t\tdestorySubmitDate: [],\r\n\t\t\tactualDestoryDate: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tform.value.delTakecareDetails = deleteAId.value.toString();\r\n\t\t\t\t\tform.value.delTestDetails = deleteBId.value.toString();\r\n\t\t\t\t\tform.value.delRepaireDetails = deleteCId.value.toString();\r\n\t\t\t\t\tform.value.delCheckStandardeDetails = deleteDId.value.toString();\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tdelete form.value.equipmentTypeName;\r\n\t\t\t\t\tdelete form.value.departmentName;\r\n\t\t\t\t\tdelete form.value.leadingPersonDepartmentName;\r\n\t\t\t\t\tdelete form.value.leadingDepartmentName;\r\n\t\t\t\t\tif (titleT.value == '新建') {\r\n\t\t\t\t\t\tdelete form.value.id;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t\t.getequipmentInfoAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t\tdialogVisible.value = false;\r\n\t\t};\r\n\t\tconst activeName = ref('first');\r\n\t\tconst index = ref<any>();\r\n\t\tconst categoryShow = ref();\r\n\t\tconst opencategory = () => {\r\n\t\t\tcategoryShow.value.openDailog();\r\n\t\t};\r\n\t\tconst regionShow = ref();\r\n\t\tconst openRegion = () => {\r\n\t\t\tregionShow.value.openDailog();\r\n\t\t};\r\n\t\tconst UserShow = ref();\r\n\t\tconst openUser = (type: any) => {\r\n\t\t\tUserShow.value.openDailog(type);\r\n\t\t};\r\n\t\tconst maintenanceShow = ref();\r\n\t\tconst openMaintenance = (title: string, data: any) => {\r\n index.value = form.value.takecareDetailList.indexOf(data);\r\n\t\t\tmaintenanceShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst detectShow = ref();\r\n\t\tconst openDetect = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.testDetailList.indexOf(data);\r\n\t\t\tdetectShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst repairShow = ref();\r\n\t\tconst openRepair = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.repaireDetailList.indexOf(data);\r\n\t\t\trepairShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst standardShow = ref();\r\n\t\tconst openStandard = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.checkStandardeDetailList.indexOf(data);\r\n\t\t\tstandardShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteAId = ref([]);\r\n\t\tconst deleteBId = ref([]);\r\n\t\tconst deleteCId = ref([]);\r\n\t\tconst deleteDId = ref([]);\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.takecareDetailList.splice(form.value.takecareDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteAId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteB = (tag: any) => {\r\n\t\t\tform.value.testDetailList.splice(form.value.testDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteBId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteC = (tag: any) => {\r\n\t\t\tform.value.repaireDetailList.splice(form.value.repaireDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteCId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteD = (tag: any) => {\r\n\t\t\tform.value.checkStandardeDetailList.splice(form.value.checkStandardeDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteDId.value.push(tag.id);\r\n\t\t};\r\n\t\t// 回传\r\n\t\tconst main = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.takecareDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.takecareDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst delect = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.testDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.testDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Repair = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.repaireDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.repaireDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Stand = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.checkStandardeDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.checkStandardeDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst userId = (val: any, type: number) => {\r\n\t\t\tconsole.log(val, type);\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.leadingPersonId = val.uid;\r\n\t\t\t\tform.value.leadingPersonName = val.realName;\r\n\t\t\t} else if (type == 2) {\r\n\t\t\t\tform.value.stopSubmitPersonId = val.uid;\r\n\t\t\t\tform.value.stopSubmitPersonName = val.realName;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Tid = (data: any) => {\r\n\t\t\tform.value.equipmentTypeId = data.id;\r\n\t\t\tform.value.equipmentTypeName = data.typeName;\r\n\t\t\tform.value.positionNum = data.sortNum;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\tTid,\r\n\t\t\tdeepClone,\r\n\t\t\trules,\r\n\t\t\tuserId,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tdeleteAId,\r\n\t\t\tdeleteBId,\r\n\t\t\tdeleteCId,\r\n\t\t\tdeleteDId,\r\n\t\t\tdeleteA,\r\n\t\t\tdeleteB,\r\n\t\t\tdeleteC,\r\n\t\t\tdeleteD,\r\n\t\t\tmain,\r\n\t\t\tindex,\r\n\t\t\tdelect,\r\n\t\t\tRepair,\r\n\t\t\tStand,\r\n\t\t\tresetForm,\r\n\t\t\tsubmitForm,\r\n\t\t\ttitles,\r\n\t\t\tdialogVisible,\r\n\t\t\tdisabled,\r\n\t\t\tDailogtype,\r\n\t\t\tform,\r\n\t\t\topenDailog,\r\n\t\t\tSearch,\r\n\t\t\tactiveName,\r\n\t\t\tcategoryShow,\r\n\t\t\topencategory,\r\n\t\t\tregionShow,\r\n\t\t\topenRegion,\r\n\t\t\tUserShow,\r\n\t\t\topenUser,\r\n\t\t\tmaintenanceShow,\r\n\t\t\topenMaintenance,\r\n\t\t\tdetectShow,\r\n\t\t\topenDetect,\r\n\t\t\trepairShow,\r\n\t\t\topenRepair,\r\n\t\t\tstandardShow,\r\n\t\t\topenStandard,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\ttimeDate,\r\n\t\t\truleFormRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-form-item {\r\n\twidth: 400px;\r\n}\r\n.formType:after {\r\n\tcontent: '';\r\n\twidth: 400px;\r\n}\r\n.formType {\r\n\tpadding: 20px 20px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n\tflex-wrap: wrap;\r\n}\r\n.el-form .el-form-item:last-of-type {\r\n\tmargin-bottom: 22px !important;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue ---- a/src/components/equipmentDailog/Dailog.vue (revision 32e57481fc33fa98c5628fdadd41460ccef24d28) -+++ b/src/components/equipmentDailog/Dailog.vue (date 1660370067266) -@@ -324,22 +324,8 @@ - </el-table> - </el-tab-pane> - <el-tab-pane label="保养维修标准" name="six" v-if="Dailogtype"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"></div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EQUIPMENT'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-tab-pane> - </el-tabs> - <template #footer> -@@ -374,8 +360,10 @@ - import { facilityManagementApi } from '/@/api/facilityManagement'; - import { goalManagementApi } from '/@/api/goalManagement'; - import { deepClone } from '/@/utils/other'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog }, -+ components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, -+ detectDailog, repairDailog, standardDailog,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref(false); - const ruleFormRef = ref<FormInstance>(); -@@ -415,9 +403,6 @@ - repairStatus: '', - - takecareStardardeDetailList: [ -- { -- filePath: '123', -- }, - ], - - nextCheckDate: '', -@@ -528,11 +513,61 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ -+ //初始化日期格式 -+ form.value.actualDestoryDate = timeC(form.value.actualDestoryDate); -+ form.value.actualRecoveryDate = timeC(form.value.actualRecoveryDate); -+ form.value.actualStopDate = timeC(form.value.actualStopDate); -+ form.value.destorySubmitDate = timeC(form.value.destorySubmitDate); -+ form.value.nextCheckDate = timeC(form.value.nextCheckDate); -+ form.value.nextTakecareDate = timeC(form.value.nextTakecareDate); -+ form.value.nextTestDate = timeC(form.value.nextTestDate); -+ form.value.previousCheckDate = timeC(form.value.previousCheckDate); -+ form.value.previousTakecareDate = timeC(form.value.previousTakecareDate); -+ form.value.previousTestDate = timeC(form.value.previousTestDate); -+ form.value.produceTime = timeC(form.value.produceTime); -+ form.value.recoverySubmitDate = timeC(form.value.recoverySubmitDate); -+ form.value.stopSubmitDate = timeC(form.value.stopSubmitDate); -+ form.value.useDate = timeC(form.value.useDate); -+ -+ fileList.value = (res.data.data.takecareStardardeDetailList?res.data.data.takecareStardardeDetailList:[]) -+ initFileListData() - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].filePath -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ filePath:fileList.value[a].fileName -+ } -+ ) -+ } -+ form.value.takecareStardardeDetailList = formFileList -+ } - const rules = reactive<FormRules>({ - qName: [], - positionNum: [], -@@ -628,6 +663,7 @@ - form.value.testDetailList = []; - form.value.repaireDetailList = []; - form.value.checkStandardeDetailList = []; -+ fileList.value = [] - dialogVisible.value = false; - }; - const activeName = ref('first'); -@@ -665,16 +701,7 @@ - standardShow.value.openDailog(title, data); - }; - // 上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -845,6 +872,9 @@ - FullScreen, - timeDate, - ruleFormRef, -+ successUploader, -+ initFileListData, -+ timeC - }; - }, - }); diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08__Default_Changelist_.xml deleted file mode 100644 index 209951e..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08__Default_Changelist_.xml +++ /dev/null @@ -1,4 +0,0 @@ -<changelist name="Uncommitted_changes_before_Update_at_2022_8_13_17_08_[Default_Changelist]" date="1660381719580" recycled="true" deleted="true"> - <option name="PATH" value="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_08_[Default_Changelist]/shelved.patch" /> - <option name="DESCRIPTION" value="Uncommitted changes before Update at 2022/8/13 17:08 [Default Changelist]" /> -</changelist> \ No newline at end of file diff --git "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14_\133Default_Changelist\135/shelved.patch" "b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14_\133Default_Changelist\135/shelved.patch" deleted file mode 100644 index 9be76b3..0000000 --- "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14_\133Default_Changelist\135/shelved.patch" +++ /dev/null @@ -1,4289 +0,0 @@ -Index: src/api/doublePreventSystem/rectify/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\n\r\nexport function hiddenRectifyApi() {\r\n return {\r\n // v1\r\n getHiddenRectifyList: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/select/getDangerRectifyPage`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n submitHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/applyReport`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n delayHiddenRectifyTime: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/timeOutRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n deleteHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/delete/deleteDangerRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n getAllHiddenRectifyList: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`,\r\n method: 'post'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/doublePreventSystem/rectify/index.ts b/src/api/doublePreventSystem/rectify/index.ts ---- a/src/api/doublePreventSystem/rectify/index.ts (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/api/doublePreventSystem/rectify/index.ts (date 1660381719130) -@@ -40,6 +40,12 @@ - url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`, - method: 'post' - }); -+ }, -+ getCodeByTime: (date: string) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL + `/prevent/dangerManage/count/byCreateDate?date=${date}`, -+ method: 'get' -+ }); - } - }; - } -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"rectifyData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>隐患状态:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.dangerStatus\" placeholder=\"隐患状态\" filterable clearable>\r\n <el-option v-for=\"item in dangerStatusList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"rectifyData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyTime\" label=\"整改期限\" min-width=\"130px\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n <span>{{ scope.row.rectifyTime }}</span>\r\n <span v-if=\"scope.row.dangerStatus === 4\" class=\"overdue-img\">逾期</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"隐患整改状态\" show-overflow-tooltip align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"createByUserName\" label=\"创建人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtCreate\" label=\"创建时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"lastEditUserName\" label=\"最后修改人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtModitify\" label=\"最后修改时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('整改', scope.row)\">整改</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Edit\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('延期', scope.row)\">延期</el-button>\r\n <el-button size=\"small\" text type=\"danger\" :icon=\"Delete\" @click=\"onDelHiddenRectify(scope.row)\">删除</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"rectifyData.params.pageIndex\" background v-model:page-size=\"rectifyData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"rectifyData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <rectifyDialog ref=\"rectifyDialogRef\" @refreshRectify=\"initRectifyTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport rectifyDialog from './components/rectifyDialog.vue';\r\nimport { Edit, Delete, Check, View } from '@element-plus/icons-vue';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n rectifyData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'rectify',\r\n components: { rectifyDialog, Edit, Delete, View },\r\n setup() {\r\n const rectifyDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n rectifyData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: null\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initRectifyTableData = async () => {\r\n let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params);\r\n if (res.data.code === '200') {\r\n state.rectifyData.data = res.data.data;\r\n state.rectifyData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n rectifyDialogRef.value.openRectifyDialog(type, value, state.departmentList);\r\n };\r\n // 删除\r\n const onDelHiddenRectify = (row: any) => {\r\n ElMessageBox.confirm(`此操作将永久删除该隐患整改,是否继续?`, '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n })\r\n .then(async () => {\r\n let res = await hiddenRectifyApi().deleteHiddenRectify({ id: row.id });\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n duration: 2000,\r\n message: '删除成功'\r\n });\r\n await initRectifyTableData();\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n })\r\n .catch(() => {});\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.rectifyData.params.pageSize = val;\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.rectifyData.params.pageIndex = val;\r\n initRectifyTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initRectifyTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Edit,\r\n View,\r\n Check,\r\n Delete,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onDelHiddenRectify,\r\n onHandleCurrentChange,\r\n rectifyDialog,\r\n rectifyDialogRef,\r\n initRectifyTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n.overdue-img {\r\n position: absolute;\r\n background-color: #f56c6c;\r\n border-radius: 4px;\r\n color: #fff;\r\n display: inline-block;\r\n font-size: 12px;\r\n height: 21px;\r\n line-height: 18px;\r\n text-align: center;\r\n white-space: nowrap;\r\n border: 1px solid #fff;\r\n transform: scale(0.8);\r\n padding: 1px 3px 0 3px;\r\n}\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (date 1660382040515) -@@ -3,6 +3,19 @@ - <el-card shadow="hover"> - <div class="system-user-search mb15"> - <div class="basic-line"> -+ <div style="display: inline-block">整改编号:</div> -+ -+ <div style="display: inline-block"> -+ <el-autocomplete :fetch-suggestions="querySearch" v-model="rectifyData.params.serialCode" v-on:input="checkDate($event)" placeholder="整改编号(前八位日期)"> </el-autocomplete> -+ <i class="el-icon-date"></i> -+ </div> -+ <!-- <div style="display: inline-block">--> -+ <!-- <el-button>--> -+ <!-- <el-date-picker value-format="YYYY-MM-DD" :disabled-date="disabledDate" v-model="dateTime" @change="getSerialCodeList" placeholder="选择日期"> </el-date-picker>--> -+ <!-- </el-button>--> -+ <!-- </div>--> -+ </div> -+ <div class="basic-line"> - <span>整改类型:</span> - <el-select class="input-box" v-model="rectifyData.params.rectifyType" placeholder="整改类型" filterable> - <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option> -@@ -18,6 +31,11 @@ - <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> - </el-select> - </div> -+ <div class="basic-line"> -+ <span>创建时间范围:</span> -+ <el-date-picker v-model="value1" type="datetimerange" range-separator="To" start-placeholder="Start date" end-placeholder="End date" /> -+ </div> -+ <i class="el-icon-date"></i> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -27,6 +45,7 @@ - </div> - <el-table :data="rectifyData.data" style="width: 100%" fit highlight-current-row> - <el-table-column type="index" label="序号" width="60" /> -+ <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip width="170px"></el-table-column> - <el-table-column prop="dangerCode" label="隐患名称" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyTime" label="整改期限" min-width="130px" show-overflow-tooltip> -@@ -72,7 +91,7 @@ - </template> - - <script lang="ts"> --import { toRefs, reactive, onMounted, ref, defineComponent } from 'vue'; -+import { toRefs, reactive, onMounted, ref, defineComponent, computed } from 'vue'; - import { ElMessageBox, ElMessage } from 'element-plus'; - import rectifyDialog from './components/rectifyDialog.vue'; - import { Edit, Delete, Check, View } from '@element-plus/icons-vue'; -@@ -94,6 +113,7 @@ - rectifyData: { - data: Array<TableData>; - total: number; -+ disabled: boolean; - loading: boolean; - params: { - pageIndex: number; -@@ -101,16 +121,24 @@ - rectifyType: number | null; - rectifyDepId: number | null; - dangerStatus: number | null; -+ serialCode: string; - }; - }; - rectifyTypeList: Array<enumType>; - dangerStatusList: Array<enumType>; - departmentList: []; -+ disabledDate: any; -+ serialCodeList: Array<type>; -+ dateTime: string; - } - interface enumType { - id: number; - name: string; - } -+interface type { -+ id: number; -+ value: number; -+} - - export default defineComponent({ - name: 'rectify', -@@ -121,16 +149,23 @@ - rectifyData: { - data: [], - total: 0, -+ disabled: true, - loading: false, - params: { - pageIndex: 1, - pageSize: 10, - rectifyType: null, - rectifyDepId: null, -- dangerStatus: null -+ dangerStatus: null, -+ serialCode: '' - } -+ }, -+ dateTime: '', -+ disabledDate: (time: any) => { -+ return time.getTime() > new Date().getTime(); - }, - departmentList: [], -+ serialCodeList: [], - rectifyTypeList: [ - { id: 1, name: '即查即改' }, - { id: 2, name: '限期整改' } -@@ -144,6 +179,87 @@ - ] - }); - -+ const querySearch = () => { -+ return state.serialCodeList.filter((item) => item.value.toString().indexOf(state.rectifyData.params.serialCode) !== -1); -+ }; -+ const handleChange = (value: string): Boolean => { -+ let year = value.substr(0, 4); -+ let month = value.substr(4, 2); -+ let day = value.substr(6, 2); -+ if (Number(year) < 1000 || Number(year) > new Date().getFullYear()) { -+ return false; -+ } -+ if (Number(month) > 12 || month === '00') { -+ return false; -+ } -+ let leapYearTab = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ let notLeapYearTab = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ if (isLeapYear(year)) { -+ const maxDay = leapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } else { -+ const maxDay = notLeapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } -+ return true; -+ }; -+ -+ const isLeapYear = (value: string) => { -+ return Number(value) % 4 === 0; -+ }; -+ -+ const checkDate = async (value: string) => { -+ if (value.length >= 8) { -+ if (handleChange(value.substr(0, 8))) { -+ let res = await hiddenRectifyApi().getCodeByTime(value.substr(0, 4) + '-' + value.substr(4, 2) + '-' + value.substr(6, 2)); -+ if (res.data.code === '200' && res.data.data > 0) { -+ let date = parseInt(value.substr(0, 8) + '0000'); -+ for (let i = 0; i < res.data.data; i++) { -+ state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ } -+ } else if (res.data.code === '200' && res.data.data === 0) { -+ ElMessage({ -+ type: 'warning', -+ message: '当天无隐患上报' -+ }); -+ } -+ } else { -+ state.rectifyData.params.serialCode = ''; -+ ElMessage({ -+ type: 'warning', -+ message: '前八位请输入正确得日期格式' -+ }); -+ } -+ } else { -+ } -+ // if (state.dateTime === '' || state.dateTime === null) { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // } else { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // let res = await hiddenRectifyApi().getCodeByTime(state.dateTime); -+ // if (res.data.code === '200' && res.data.data > 0) { -+ // state.rectifyData.disabled = false; -+ // let date = parseInt(state.dateTime.replaceAll('-', '') + '0000'); -+ // for (let i = 0; i < res.data.data; i++) { -+ // state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ // } -+ // state.rectifyData.params.serialCode = state.dateTime.replaceAll('-', ''); -+ // } else if (res.data.code === '200' && res.data.data === 0) { -+ // state.rectifyData.disabled = true; -+ // ElMessage({ -+ // type: 'warning', -+ // message: '当天无隐患上报' -+ // }); -+ // } -+ // } -+ }; -+ - // 初始化表格数据 - const initRectifyTableData = async () => { - let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -@@ -233,8 +349,10 @@ - View, - Check, - Delete, -+ querySearch, - parseNumber, - handleSearch, -+ checkDate, - onOpenDialogRef, - onHandleSizeChange, - onDelHiddenRectify, -@@ -274,4 +392,7 @@ - :deep(.el-input.is-disabled .el-input__wrapper) { - background-color: var(--el-card-bg-color); - } -+:deep(.el-input-group__prepend) { -+ padding: 0; -+} - </style> -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-add-menu-container\">\r\n <el-dialog :title=\"title\" v-model=\"isShowRectifyDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"rectifyForm\" :rules=\"rectifyFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改说明\" prop=\"rectifyInfo\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"rectifyForm.rectifyInfo\" placeholder=\"请输入整改说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改时间\" prop=\"applyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"rectifyForm.applyTime\" placeholder=\"请选择整改时间\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\">\r\n <el-button @click=\"isShowRectifyDialog = !isShowRectifyDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitRectify\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowDelayDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"delayForm\" :rules=\"delayFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"延期说明\" prop=\"timeOutDesc\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"delayForm.timeOutDesc\" placeholder=\"请输入延期说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改期限\" prop=\"rectifyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"delayForm.rectifyTime\" placeholder=\"请选择整改期限\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\" v-show=\"disabled\">\r\n <el-button @click=\"isShowDelayDialog = !isShowDelayDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitDelay\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowCheckInfoDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"checkInfoForm\" ref=\"checkFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改内容说明\" prop=\"rectifyDesc\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"textarea\" :rows=\"2\" v-model.trim=\"checkInfoForm.rectifyDesc\" readonly></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改类型\" prop=\"rectifyType\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.rectifyType\" readonly>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改部门\" prop=\"rectifyDepId\">\r\n <el-cascader @change=\"achieveUserList\" :disabled=\"!disabled\" :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-add\" v-model=\"checkInfoForm.rectifyDepId\" readonly> </el-cascader>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改责任人\" prop=\"liablePersonId\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.liablePersonId\" clearable filterable readonly>\r\n <el-option v-for=\"item in userList\" :key=\"item.uid\" :label=\"item.username\" :value=\"item.uid\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改资金\" prop=\"dangerResult\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"number\" v-model=\"checkInfoForm.cost\" readonly> </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.createByUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtCreate\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.lastEditUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtModitify\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { getUserByDepartment } from '/@/assets/methods';\r\n\r\ninterface stateType {\r\n disabled: Boolean;\r\n personTime: Boolean;\r\n isShowRectifyDialog: Boolean;\r\n isShowDelayDialog: Boolean;\r\n isShowCheckInfoDialog: Boolean;\r\n rectifyForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyInfo: string | null;\r\n applyTime: string | null;\r\n };\r\n delayForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyTime: string | null;\r\n timeOutDesc: string | null;\r\n };\r\n title: string;\r\n departmentList: [];\r\n userList: [];\r\n rectifyTypeList: Array<rectifyTypeState>;\r\n rectifyFormRules: {};\r\n delayFormRules: {};\r\n checkInfoForm: {\r\n rectifyDepId: number | null;\r\n liablePersonId: number | null;\r\n };\r\n}\r\ninterface rectifyTypeState {\r\n regionType: string;\r\n id: number;\r\n}\r\n\r\nimport { reactive, toRefs, ref } from 'vue';\r\nimport { ElMessage } from 'element-plus';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nexport default {\r\n name: 'rectifyDialog',\r\n setup(props: any, context: any) {\r\n const rectifyFormRef = ref();\r\n const state = reactive<stateType>({\r\n title: '',\r\n disabled: false,\r\n personTime: false,\r\n rectifyTypeList: [],\r\n departmentList: [],\r\n userList: [],\r\n isShowCheckInfoDialog: false,\r\n checkInfoForm: {\r\n rectifyDepId: null,\r\n liablePersonId: null\r\n },\r\n isShowDelayDialog: false,\r\n isShowRectifyDialog: false,\r\n rectifyForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyInfo: null,\r\n applyTime: null\r\n },\r\n delayForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyTime: null,\r\n timeOutDesc: null\r\n },\r\n rectifyFormRules: {\r\n rectifyInfo: [{ required: true, message: '请填写整改说明', trigger: 'blur' }],\r\n applyTime: [{ required: true, message: '请选择整改时间', trigger: 'change' }]\r\n },\r\n delayFormRules: {\r\n timeOutDesc: [{ required: true, message: '请填写延期说明', trigger: 'blur' }],\r\n rectifyTime: [{ required: true, message: '请选择整改期限', trigger: 'change' }]\r\n }\r\n });\r\n\r\n //打开模态框\r\n const openRectifyDialog = async (type: string, value: object, departmentList: []) => {\r\n state.departmentList = departmentList;\r\n if (type === '延期') {\r\n state.title = '延期';\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.isShowDelayDialog = true;\r\n const delayForm = JSON.parse(JSON.stringify(value));\r\n state.delayForm.id = delayForm.id;\r\n state.delayForm.dangerManagerId = delayForm.dangerManagerId;\r\n state.delayForm.timeOutDesc = null;\r\n state.delayForm.rectifyTime = null;\r\n } else if (type === '查看') {\r\n state.title = '查看';\r\n state.personTime = true;\r\n state.isShowCheckInfoDialog = true;\r\n state.checkInfoForm.rectifyDepId = JSON.parse(JSON.stringify(value)).rectifyDepId;\r\n await achieveUserList();\r\n state.checkInfoForm = JSON.parse(JSON.stringify(value));\r\n } else {\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.title = '整改';\r\n state.isShowRectifyDialog = true;\r\n const rectifyForm = JSON.parse(JSON.stringify(value));\r\n state.rectifyForm.id = rectifyForm.id;\r\n state.rectifyForm.dangerManagerId = rectifyForm.dangerManagerId;\r\n state.rectifyForm.rectifyInfo = null;\r\n state.rectifyForm.applyTime = null;\r\n }\r\n };\r\n\r\n //提交整改\r\n const submitRectify = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().submitHiddenRectify(state.rectifyForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '整改提交成功',\r\n duration: 2000\r\n });\r\n state.isShowRectifyDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n //提交延期\r\n const submitDelay = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().delayHiddenRectifyTime(state.delayForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '隐患延期成功',\r\n duration: 2000\r\n });\r\n state.isShowDelayDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n const achieveUserList = async () => {\r\n state.checkInfoForm.liablePersonId = null;\r\n const user: unknown = await getUserByDepartment(state.checkInfoForm.rectifyDepId);\r\n state.userList = user as [];\r\n };\r\n\r\n return {\r\n ...toRefs(state),\r\n rectifyFormRef,\r\n submitDelay,\r\n achieveUserList,\r\n submitRectify,\r\n openRectifyDialog\r\n };\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (date 1660381719146) -@@ -10,7 +10,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="整改时间" prop="applyTime"> -- <el-date-picker type="datetime" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> -+ <el-date-picker type="datetime" :disabled-date="disabledDate" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> - </el-form-item> - </el-col> - </el-row> -@@ -125,6 +125,8 @@ - rectifyTime: string | null; - timeOutDesc: string | null; - }; -+ disabledDate: any; -+ rangeTime: any; - title: string; - departmentList: []; - userList: []; -@@ -168,6 +170,13 @@ - rectifyInfo: null, - applyTime: null - }, -+ disabledDate: (time: any) => { -+ const r = new Date().getTime(); -+ return time.getTime() > new Date().getTime(); -+ }, -+ rangeTime: () => { -+ return '15:15:14'; -+ }, - delayForm: { - id: null, - dangerManagerId: null, -Index: src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"900px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"emergencyPlanName\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.emergencyPlanName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillAddress\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.departmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.departmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"0\"></el-option>\r\n <el-option label=\"桌面\" value=\"1\"></el-option>\r\n <el-option label=\"专项\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"drillName\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.drillName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.makingPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.drillPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"修改时间\" prop=\"updateDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.updateDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserUid\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.makingDepartmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.makingDepartmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"planUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.planUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实际到场人员\" prop=\"executeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.executeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练过程描述\" prop=\"processDesc\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.processDesc\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写演练过程描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录人\" prop=\"recordUserName\" >\r\n <el-input\r\n v-model=\"ruleForm.recordUserName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录时间\" prop=\"drillRecordDate\">\r\n <el-date-picker\r\n v-model=\"ruleForm.drillRecordDate\"\r\n class=\"w100\"\r\n type=\"datetime\"\r\n placeholder=\"选择日期时间\"\r\n :disabled=\"true\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <div class=\"el-divider--horizontal\">\r\n <div class=\"el-divider__text\">\r\n <h3>评价</h3>\r\n </div>\r\n </div>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"evaluationUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.evaluationUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"disabled\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-适宜性\" prop=\"suitable\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.suitable\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部能够执行\" value=\"1\"></el-option>\r\n <el-option label=\"全部不能够执行\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-充分性\" prop=\"sufficient\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.sufficient\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"完全满足应急要求\" value=\"1\"></el-option>\r\n <el-option label=\"不完全满足应急要求\" value=\"2\"></el-option>\r\n <el-option label=\"完全不满足应急要求\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"人员到位情况\" prop=\"arrival\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.arrival\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"迅速准确,基本按时到位\" value=\"1\"></el-option>\r\n <el-option label=\"未按时到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-现场物资\" prop=\"supplies\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.supplies\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"现场物资充分,全部有效\" value=\"1\"></el-option>\r\n <el-option label=\"现场物资不充分\" value=\"2\"></el-option>\r\n <el-option label=\"现场没有物资\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-个人防护\" prop=\"protection\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.protection\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部人员防护到位\" value=\"1\"></el-option>\r\n <el-option label=\"人员未防护到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-整体组织\" prop=\"whole\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.whole\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"协调基本顺利,能够满足要求\" value=\"1\"></el-option>\r\n <el-option label=\"协调不顺利\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-疏散组分工\" prop=\"division\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.division\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"安全,快速\" value=\"1\"></el-option>\r\n <el-option label=\"安全,不快速\" value=\"2\"></el-option>\r\n <el-option label=\"不安全,快速\" value=\"3\"></el-option>\r\n <el-option label=\"不安全,不快速\" value=\"4\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实战效果评价\" prop=\"effect\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.effect\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"基本达到目的,部分环节有待改进\" value=\"1\"></el-option>\r\n <el-option label=\"未达到目的\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-报告上级\" prop=\"report\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.report\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"报告及时\" value=\"1\"></el-option>\r\n <el-option label=\"报告不及时\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-安全部门\" prop=\"safety\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.safety\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-救援后勤部门\" prop=\"rescue\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.rescue\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-警戒撤离配合\" prop=\"evacuate\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.evacuate\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求配合\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求配合\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"是否需要修改应急预案\" prop=\"needModify\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.needModify\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"是\" :value=\"true\"></el-option>\r\n <el-option label=\"否\" :value=\"false\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"存在问题和改进措施\" prop=\"questionAndImprove\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.questionAndImprove\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写备注信息\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"修改内容\" prop=\"modifyContent\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.modifyContent\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写修改内容\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"附件列表\">\r\n <el-upload\r\n v-model:file-list=\"ruleForm.userList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button v-if=\"!disabled\" size=\"default\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\"/>\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"selectUser\"/>\r\n<!-- <RegionsDialog ref=\"openRef\"/>-->\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport {\r\n UploadUserFile,\r\n FormInstance,\r\n ElMessage\r\n} from 'element-plus'\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport UserSelections from \"/@/components/userSelections/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport {emergencyDrillEvaluationApi} from \"/@/api/contingencyManagement/emergencyDrillEvaluation\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nexport default defineComponent({\r\n name: 'approvalProgress',\r\n components: {\r\n UserSelections,\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n //定义表单\r\n const realRuleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看演练实施评价') {\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n //演练人员\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n //演练负责人员\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n //实际到场人员\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n //演练负责人(评价)\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施查看评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n };\r\n // 关闭弹窗\r\n const closeDialog = () => {\r\n isShowDialog.value = false;\r\n };\r\n // 取消\r\n const onCancel = () => {\r\n closeDialog();\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ,\r\n ]\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = [\r\n\r\n ]\r\n // 必填项提示\r\n // const rules = reactive<FormRules>({\r\n // teamName: [\r\n // {\r\n // required: true,\r\n // message: '队伍名称不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLevel: [\r\n // {\r\n // required: true,\r\n // message: '队伍级别不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLeader: [\r\n // {\r\n // required: true,\r\n // message: '队伍负责人不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // responsibleDepartment: [\r\n // {\r\n // required: true,\r\n // message: '负责人部门不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamPhone: [\r\n // {\r\n // required: true,\r\n // message: '负责人手机不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // telephone: [\r\n // {\r\n // required: true,\r\n // message: '固定电话不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // })\r\n\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n //演练负责人(评价)\r\n ruleForm.value.userList = ruleForm.value.evaluationUserList\r\n\r\n\r\n\r\n realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId\r\n realRuleForm.value.suitable=ruleForm.value.suitable\r\n realRuleForm.value.sufficient=ruleForm.value.sufficient\r\n realRuleForm.value.arrival=ruleForm.value.arrival\r\n realRuleForm.value.supplies=ruleForm.value.supplies\r\n realRuleForm.value.protection=ruleForm.value.protection\r\n realRuleForm.value.whole=ruleForm.value.whole\r\n realRuleForm.value.division=ruleForm.value.division\r\n realRuleForm.value.effect=ruleForm.value.effect\r\n realRuleForm.value.report=ruleForm.value.report\r\n realRuleForm.value.safety=ruleForm.value.safety\r\n realRuleForm.value.rescue=ruleForm.value.rescue\r\n realRuleForm.value.evacuate=ruleForm.value.evacuate\r\n realRuleForm.value.needModify=ruleForm.value.needModify\r\n realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove\r\n realRuleForm.value.modifyContent=ruleForm.value.modifyContent\r\n realRuleForm.value.fileList=ruleForm.value.fileList\r\n if(ruleForm.value.userList){\r\n for(var a = 0;a<ruleForm.value.userList.length;a++){\r\n realRuleForm.value.userList.push({\r\n userUid:ruleForm.value.userList[a].userUid,\r\n userName:ruleForm.value.userList[a].userName\r\n })\r\n }\r\n }\r\n // console.log(ruleForm.value.evaluationUserList)\r\n // ruleForm.value.userList=[]\r\n // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){\r\n // // += res.data.data.evaluationUserList[a].userName+';'\r\n // }\r\n if (title == '演练实施评价') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n // console.log(ruleForm.value)\r\n emergencyDrillEvaluationApi()\r\n .editEmergencyDrillEvaluation(realRuleForm.value)\r\n // emergencyDrillExecuteApi()\r\n // .editEmergencyDrillExecute(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '评价成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n isShowDialog.value = false;\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n drillRecordDate: '', // 演练记录时间\r\n drillPlanId: '', //演练计划ID\r\n drillName:'',\r\n recordUserUid: '', // 记录人ID\r\n processDesc: '', // 演练过程描述\r\n userList: [\r\n {\r\n userUid: '',\r\n },\r\n {\r\n userUid: '',\r\n }\r\n ]\r\n };\r\n }\r\n }\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt=()=>{\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.drillPlanId=e.id\r\n };\r\n // 选择区域弹窗\r\n const openRef=ref()\r\n const regionsDialog=()=>{\r\n openRef.value.openDailog()\r\n }\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog(0);\r\n };\r\n\r\n const selectUser = (e) =>{\r\n ruleForm.value.evaluationUserListString=''\r\n ruleForm.value.evaluationUserList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.evaluationUserList.push(\r\n {\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.evaluationUserListString+=e[a].realName+';'\r\n }\r\n console.log(ruleForm.value.evaluationUserList)\r\n }\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n closeDialog,\r\n isShowDialog,\r\n onCancel,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n onUser,\r\n ruleFormRef,\r\n // rules,\r\n openUser,\r\n userRef,\r\n regionsDialog,\r\n openRef,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n resetForm,\r\n titles,\r\n disabled,\r\n emit,\r\n propse,\r\n department,\r\n newTreeList,\r\n selectUser,\r\n submitForm,\r\n realRuleForm\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.el-form .el-form-item{\r\n margin-bottom: 18px !important;\r\n display: flex;\r\n align-items: flex-start;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label{\r\n text-align: right;\r\n height: 100%;\r\n}\r\n.textarea{\r\n height: 90px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 90px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n.el-divider--horizontal {\r\n display: block;\r\n height: 1px;\r\n width: 100%;\r\n margin: 24px 0;\r\n background-color: #dcdfe6;\r\n position: relative;\r\n}\r\n.el-divider__text {\r\n position: absolute;\r\n background-color: #fff;\r\n padding: 0 20px;\r\n color: #303133;\r\n left: 50%;\r\n font-weight: 500;\r\n font-size: 14px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue ---- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (date 1660381719152) -@@ -167,20 +167,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="ruleForm.planFileList" :disabled="true"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -368,20 +355,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="附件列表"> -- <el-upload -- v-model:file-list="ruleForm.userList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -421,12 +396,14 @@ - import DailogSearchUser from "/@/components/DailogSearchUser/index.vue" - import {emergencyDrillEvaluationApi} from "/@/api/contingencyManagement/emergencyDrillEvaluation"; - import {goalManagementApi} from "/@/api/goalManagement"; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'approvalProgress', - components: { - UserSelections, - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -512,6 +489,8 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施评价'){ -@@ -548,6 +527,8 @@ - } - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施查看评价'){ -@@ -584,15 +565,41 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -- -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - } - }); - } -+ - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<ruleForm.value.planFileList.length;a++){ -+ ruleForm.value.planFileList[a].name = ruleForm.value.planFileList[a].fileName -+ } -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - }; - // 关闭弹窗 - const closeDialog = () => { -@@ -605,7 +612,7 @@ - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -663,6 +670,9 @@ - // }) - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - //演练负责人(评价) - ruleForm.value.userList = ruleForm.value.evaluationUserList - -@@ -861,7 +871,9 @@ - newTreeList, - selectUser, - submitForm, -- realRuleForm -+ realRuleForm, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -910,4 +922,4 @@ - font-weight: 500; - font-size: 14px; - } --</style> -\ No newline at end of file -+</style> -Index: src/router/route.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import { RouteRecordRaw } from 'vue-router';\r\n\r\nexport const dynamicRoutes: Array<RouteRecordRaw> = [\r\n {\r\n path: '/',\r\n name: '/',\r\n component: () => import('/@/layout/index.vue'),\r\n redirect: '/home',\r\n meta: {\r\n isKeepAlive: false\r\n },\r\n children: [\r\n {\r\n path: '/home',\r\n name: 'home',\r\n component: () => import('/@/views/home/index.vue'),\r\n meta: {\r\n title: '首页',\r\n isLink: '',\r\n isHide: false,\r\n isKeepAlive: true,\r\n isAffix: true,\r\n isIframe: false,\r\n roles: ['admin', 'common'],\r\n icon: 'iconfont icon-shouye'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\nexport const notFoundAndNoPower = [\r\n {\r\n path: '/:path(.*)*',\r\n name: 'notFound',\r\n component: () => import('/@/views/error/404.vue'),\r\n meta: {\r\n title: 'message.staticRoutes.notFound',\r\n isHide: true\r\n }\r\n },\r\n {\r\n path: '/401',\r\n name: 'noPower',\r\n component: () => import('/@/views/error/401.vue'),\r\n meta: {\r\n title: 'message.staticRoutes.noPower',\r\n isHide: true\r\n }\r\n }\r\n];\r\n\r\nexport const staticRoutes: Array<RouteRecordRaw> = [\r\n {\r\n path: '/',\r\n name: '/',\r\n component: () => import('/@/layout/index.vue'),\r\n meta: {\r\n title: '布局界面'\r\n },\r\n children: [\r\n // 请不要往这里 `children` 中添加内容,此内容为了防止 No match found for location with path \"xxx\" 问题\r\n ...notFoundAndNoPower\r\n ]\r\n },\r\n {\r\n path: '/login',\r\n name: 'login',\r\n component: () => import('/@/views/loginPage/loginPage.vue'),\r\n meta: {\r\n title: '登录'\r\n }\r\n },\r\n {\r\n path: '/homeMenu',\r\n name: 'homeMenu',\r\n component: () => import('/@/views/homeMenu/homeMenu.vue'),\r\n meta: {\r\n title: '首页',\r\n isKeepAlive: false\r\n }\r\n },\r\n {\r\n path: '/intelligentMap',\r\n name: 'intelligentMap',\r\n component: () => import('/@/views/intellectInspect/intelligentMap/index.vue'),\r\n meta: {\r\n title: '巡检路线'\r\n }\r\n },\r\n {\r\n path: '/intelligentLine',\r\n name: 'intelligentMap',\r\n component: () => import('/@/views/intellectInspect/intelligentLine/index.vue'),\r\n meta: {\r\n title: '巡检路线'\r\n }\r\n }\r\n];\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/router/route.ts b/src/router/route.ts ---- a/src/router/route.ts (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/router/route.ts (date 1660381819136) -@@ -72,9 +72,9 @@ - } - }, - { -- path: '/homeMenu', -- name: 'homeMenu', -- component: () => import('/@/views/homeMenu/homeMenu.vue'), -+ path: '/newMenu', -+ name: 'newMenu', -+ component: () => import('/@/views/newHome/index.vue'), - meta: { - title: '首页', - isKeepAlive: false -Index: src/views/contingencyManagement/panManagement/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-form :inline=\"true\" class=\"demo-form-inline\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.name\" placeholder=\"预案名称\" style=\"max-width: 215px\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select size=\"default\" v-model=\"listQuery.searchParams.type\" placeholder=\"请选择预案类型\" class=\"ml10\" style=\"max-width: 215px\">\r\n\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\"> 查询 </el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-form>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Plus /> </el-icon\r\n\t\t\t\t\t\t>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Edit /> </el-icon\r\n\t\t\t\t\t\t>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onabolishLibrary\"> 废止库 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Upload />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Download />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Refresh />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column prop=\"name\" label=\"预案名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column prop=\"type\" label=\"预案类型\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.type == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.type == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.type == 3\">专项应急预案</span>\r\n <span v-if=\"scope.row.type == 4\">其他预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"level\" label=\"预案级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.level == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.level == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.level == 3\">专项应急预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"releaseDate\" label=\"发布实施日期\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"isDialogFormVisible(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPlay /> </el-icon\r\n\t\t\t\t\t\t\t>启动\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"abolish(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPause /> </el-icon\r\n\t\t\t\t\t\t\t>废止\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<EditPen /> </el-icon\r\n\t\t\t\t\t\t\t>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 0 || scope.row.approveStatus === null\"\r\n\t\t\t\t\t\t\t@click=\"initiateApproval(scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t发起审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === true\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('修改',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === false\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('详情',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n 查看审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" v-if=\"scope.row.approveStatus === 3\" @click=\"onApprovalProcess(scope.row.id)\">\r\n\t\t\t\t\t\t\t查看审批流程\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"jumpFrom(0)\">-->\r\n\t\t\t\t\t\t<!-- <el-icon style=\"margin-right: 5px;\">-->\r\n\t\t\t\t\t\t<!-- <EditPen />-->\r\n\t\t\t\t\t\t<!-- </el-icon>修改-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"abolish(0)\">-->\r\n\t\t\t\t\t\t<!-- 发起审批-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t\t>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tclass=\"mt15\"\r\n\t\t\t\t\tbackground\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"onHandleSizeChange\"\r\n\t\t\t\t\t@current-change=\"onHandleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<AbolishLibrary ref=\"abolishRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<InitiateApproval ref=\"initiateApprovalRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<Approval ref=\"approvalRef\" @myAdd=\"onMyAdd\" />\r\n <ApprovalProcess ref=\"processRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<!-- <StartUp ref=\"startRef\" @myAdd=\"startUp\"/>-->\r\n\t\t<el-dialog v-model=\"dialogFormVisible\" width=\"30%\" title=\"启动\" :fullscreen=\"full\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" label-width=\"80px\">\r\n\t\t\t\t<el-form-item label=\"备注\">\r\n\t\t\t\t\t<el-input v-model=\"form.remark\" type=\"textarea\" autocomplete=\"off\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"dialogFormVisible = false\">取消</el-button>\r\n\t\t\t\t\t<el-button type=\"primary\" @click=\"onDetermine\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\n// import {useRouter} from \"vue-router\"\r\nimport type {} from // FormInstance,\r\n'element-plus';\r\nimport { Plus, Edit, Delete, Upload, Download, Refresh, VideoPause, VideoPlay, EditPen, FullScreen } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/contingencyManagement/panManagement/component/openAdd.vue';\r\n// import StartUp from '/@/views/contingencyManagement/panManagement/component/startUp.vue';\r\nimport AbolishLibrary from '/@/views/contingencyManagement/panManagement/component/abolishLibrary.vue';\r\nimport ApprovalProcess from '/@/views/contingencyManagement/panManagement/component/approvalProcess.vue';\r\nimport InitiateApproval from '/@/views/contingencyManagement/panManagement/component/initiateApproval.vue';\r\nimport Approval from '/@/views/contingencyManagement/panManagement/component/approval.vue';\r\n// import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { emergencyPlanLogApi } from '/@/api/contingencyManagement/emergencyPlanLog';\r\n\r\nexport default defineComponent({\r\n\tname: 'systemUser',\r\n\tcomponents: {\r\n\t\tOpenAdd,\r\n\t\t// StartUp,\r\n\t\tInitiateApproval,\r\n\t\tAbolishLibrary,\r\n\t\tApproval,\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tVideoPause,\r\n\t\tVideoPlay,\r\n ApprovalProcess,\r\n\t\t// UpData,\r\n\t\temergencyPlanApi,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tname: '',\r\n\t\t\t\ttype: '',\r\n\t\t\t\tabolishStatus: false,\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst onSubmit = async () => {\r\n\t\t\tlet res = await emergencyPlanApi().getEmergencyPlanList(listQuery);\r\n\t\t\tif (res.data.code === '200') {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.name = '';\r\n\t\t\tlistQuery.searchParams.type = '';\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\r\n\t\t// 上传\r\n\t\t// const upShow=ref()\r\n\t\t// const upButton=()=>{\r\n\t\t// upShow.value.openDialog()\r\n\t\t// }\r\n\t\t// 启动弹窗\r\n\t\tconst isDialogFormVisible = (data: any) => {\r\n\t\t\tdialogFormVisible.value = true;\r\n\t\t\tform.value.planId = data;\r\n\t\t};\r\n\t\tconst dialogFormVisible = ref(false);\r\n\t\tconst form = ref({\r\n\t\t\tremark: '',\r\n\t\t});\r\n\t\tconst onDetermine = () => {\r\n\t\t\tdialogFormVisible.value = false;\r\n\t\t\temergencyPlanLogApi()\r\n\t\t\t\t.addEmergencyPlanLog(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tremark: '',\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 打开新增用户弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建应急预案管理', false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tonSubmit();\r\n\t\t\t} else {\r\n\t\t\t\tonSubmit();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 打开修改应急预案管理弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看应急预案管理', row, true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改应急预案管理', row, false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t//打开废止库弹窗\r\n\t\tconst abolishRef = ref();\r\n\t\tconst onabolishLibrary = () => {\r\n\t\t\tabolishRef.value.openDialog();\r\n\t\t};\r\n\t\t// 废止\r\n\t\tconst abolish = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定要废止所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.EmergencyTeam(data)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\t// 删除用户\r\n\t\tconst onRowDel = (id: number) => {\r\n\t\t\tlet arr = [];\r\n\t\t\tarr.push(id);\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\tconst deleteAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeleteAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(deleteAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst onHandleSizeChange = (val: number) => {\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst onHandleCurrentChange = (val: number) => {\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\r\n\t\t// const router=useRouter()\r\n\t\t// 修改跳转\r\n\t\t// const jumpFrom=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/processForm\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批跳转\r\n\t\t// const abolish=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/abolishDialog\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批弹窗\r\n\t\tconst initiateApprovalRef = ref();\r\n\t\tconst initiateApproval = (row: object) => {\r\n\t\t\tinitiateApprovalRef.value.openDialog('发起审批',row, true);\r\n\t\t};\r\n\t\t// 审批\r\n\t\tconst approvalRef = ref();\r\n\t\tconst onApproval = (val: string,row: object,id) => {\r\n if(val=='详情'){\r\n approvalRef.value.openDialog('查看审批', row, true);\r\n } else {\r\n approvalRef.value.openDialog('审批', row, false,id);\r\n }\r\n\t\t};\r\n // 审批流程\r\n const processRef = ref();\r\n const onApprovalProcess = (row:object,id) => {\r\n processRef.value.openDialog(row,id);\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 页面加载时\r\n\t\tonMounted(() => {\r\n\t\t\tonSubmit();\r\n\t\t});\r\n\t\treturn {\r\n\t\t\ttableData,\r\n\t\t\tonSubmit,\r\n\t\t\tonOpenAdd, //新增\r\n\t\t\taddRef,\r\n\t\t\tonabolishLibrary,\r\n\t\t\tabolishRef,\r\n\t\t\tabolish,\r\n\t\t\tonRowDel,\r\n\t\t\tonHandleSizeChange,\r\n\t\t\tonHandleCurrentChange,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tlistQuery,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\tsubmitReset,\r\n\t\t\tonMounted,\r\n\t\t\tdeleteAll,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDeleteAll,\r\n\t\t\tdialogFormVisible,\r\n\t\t\tisDialogFormVisible,\r\n\t\t\tform,\r\n\t\t\temit,\r\n\t\t\tonDetermine,\r\n\t\t\tonEdit,\r\n\t\t\tinitiateApproval,\r\n\t\t\tinitiateApprovalRef,\r\n\t\t\tonApproval,\r\n\t\t\tapprovalRef,\r\n onApprovalProcess,\r\n processRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n\tmargin-bottom: 10px;\r\n}\r\n.el-form .el-form-item {\r\n\tmargin-bottom: 0 !important;\r\n}\r\n.el-button--text {\r\n\tmargin-right: 15px;\r\n}\r\n.el-select {\r\n\twidth: 300px;\r\n}\r\n.el-input {\r\n\twidth: 300px;\r\n}\r\n.dialog-footer button:first-child {\r\n\tmargin-right: 10px;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer {\r\n\tborder-top: 1px solid #e8e8e8;\r\n\tborder-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n\tborder-bottom: 1px solid #e8e8e8;\r\n\tmargin-right: 0;\r\n\tborder-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n\tbackground-color: #f6f7fa;\r\n\tfont-weight: 400;\r\n\tcolor: #909399;\r\n}\r\n.el-table .sort-caret.ascending {\r\n\tborder-bottom-color: #c0c4cc;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue ---- a/src/views/contingencyManagement/panManagement/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/panManagement/index.vue (date 1660381719156) -@@ -23,19 +23,13 @@ - <div class="button_Line"> - <div class="button_Left"> - <el-button size="default" type="primary" @click="onOpenAdd"> -- <el-icon> -- <Plus /> </el-icon -- >新建 -+ <el-icon> <Plus /> </el-icon>新建 - </el-button> - <el-button size="default" type="warning" plain :disabled="warning"> -- <el-icon> -- <Edit /> </el-icon -- >修改 -+ <el-icon> <Edit /> </el-icon>修改 - </el-button> - <el-button size="default" type="danger" plain :disabled="danger" @click="onDeleteAll"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - <el-button size="default" type="primary" @click="onabolishLibrary"> 废止库 </el-button> - </div> -@@ -61,37 +55,31 @@ - <el-table-column type="selection" width="55" /> - <el-table-column prop="name" label="预案名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.type == 1">综合应急预案</span> -- <span v-if="scope.row.type == 2">现场处置方案</span> -- <span v-if="scope.row.type == 3">专项应急预案</span> -- <span v-if="scope.row.type == 4">其他预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.type == 1">综合应急预案</span> -+ <span v-if="scope.row.type == 2">现场处置方案</span> -+ <span v-if="scope.row.type == 3">专项应急预案</span> -+ <span v-if="scope.row.type == 4">其他预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="level" label="预案级别" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.level == 1">综合应急预案</span> -- <span v-if="scope.row.level == 2">现场处置方案</span> -- <span v-if="scope.row.level == 3">专项应急预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.level == 1">综合应急预案</span> -+ <span v-if="scope.row.level == 2">现场处置方案</span> -+ <span v-if="scope.row.level == 3">专项应急预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="releaseDate" label="发布实施日期" show-overflow-tooltip sortable></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="isDialogFormVisible(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPlay /> </el-icon -- >启动 -+ <el-icon style="margin-right: 5px"> <VideoPlay /> </el-icon>启动 - </el-button> - <el-button size="small" text type="primary" @click="abolish(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPause /> </el-icon -- >废止 -+ <el-icon style="margin-right: 5px"> <VideoPause /> </el-icon>废止 - </el-button> - <el-button size="small" text type="primary" @click="onEdit('修改', scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <EditPen /> </el-icon -- >修改 -+ <el-icon style="margin-right: 5px"> <EditPen /> </el-icon>修改 - </el-button> - <el-button - size="small" -@@ -107,7 +95,7 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === true" -- @click="onApproval('修改',scope.row.approveId,scope.row.id)" -+ @click="onApproval('修改', scope.row.approveId, scope.row.id)" - > - 审批 - </el-button> -@@ -116,9 +104,9 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === false" -- @click="onApproval('详情',scope.row.approveId,scope.row.id)" -+ @click="onApproval('详情', scope.row.approveId, scope.row.id)" - > -- 查看审批 -+ 查看审批 - </el-button> - <el-button size="small" text type="primary" v-if="scope.row.approveStatus === 3" @click="onApprovalProcess(scope.row.id)"> - 查看审批流程 -@@ -132,9 +120,7 @@ - <!-- 发起审批--> - <!-- </el-button>--> - <el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - </template> - </el-table-column> -@@ -159,7 +145,7 @@ - <AbolishLibrary ref="abolishRef" @myAdd="onMyAdd" /> - <InitiateApproval ref="initiateApprovalRef" @myAdd="onMyAdd" /> - <Approval ref="approvalRef" @myAdd="onMyAdd" /> -- <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> -+ <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> - <!-- <StartUp ref="startRef" @myAdd="startUp"/>--> - <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -@@ -212,7 +198,7 @@ - Refresh, - VideoPause, - VideoPlay, -- ApprovalProcess, -+ ApprovalProcess, - // UpData, - emergencyPlanApi, - }, -@@ -469,22 +455,22 @@ - // 发起审批弹窗 - const initiateApprovalRef = ref(); - const initiateApproval = (row: object) => { -- initiateApprovalRef.value.openDialog('发起审批',row, true); -+ initiateApprovalRef.value.openDialog('发起审批', row, true); - }; - // 审批 - const approvalRef = ref(); -- const onApproval = (val: string,row: object,id) => { -- if(val=='详情'){ -- approvalRef.value.openDialog('查看审批', row, true); -- } else { -- approvalRef.value.openDialog('审批', row, false,id); -- } -+ const onApproval = (val: string, row: object, id) => { -+ if (val == '详情') { -+ approvalRef.value.openDialog('查看审批', row, true); -+ } else { -+ approvalRef.value.openDialog('审批', row, false, id); -+ } - }; -- // 审批流程 -- const processRef = ref(); -- const onApprovalProcess = (row:object,id) => { -- processRef.value.openDialog(row,id); -- }; -+ // 审批流程 -+ const processRef = ref(); -+ const onApprovalProcess = (row: object, id) => { -+ processRef.value.openDialog(row, id); -+ }; - - //全屏 - const full = ref(false); -@@ -535,8 +521,8 @@ - initiateApprovalRef, - onApproval, - approvalRef, -- onApprovalProcess, -- processRef, -+ onApprovalProcess, -+ processRef, - }; - }, - }); -@@ -625,4 +611,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetDecompositionYear/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title,ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\tadd,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue ---- a/src/views/goalManagement/targetDecompositionYear/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetDecompositionYear/index.vue (date 1660381719159) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="tableData.targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -103,6 +103,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/targetDecompositionYear/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"目标分解\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"formUp.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" property=\"dutyDepartmentName\" label=\"责任部门\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"value\" label=\"考核指标\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makerDepartmentName\" label=\"制定人部门\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"commitPersonName\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"Delete(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"disabled == false\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { emit } from 'process';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { DailogAdd, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tqName: '',\r\n\t\t\tindexNum: '',\r\n\t\t\tyear: '',\r\n\t\t\tvalue: '',\r\n\t\t\ttargetDivideDetailList: [],\r\n\t\t});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t\tformUp.targetDivideDetailList = form.value.targetDivideDetailList;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (val: object) => {\r\n\t\t\tform.value = val;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = formUp.targetDivideDetailList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst formUp = reactive({\r\n\t\t\ttargetId: '', //关联的目标指标/外键\r\n\t\t\tdelTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n\t\t\ttargetDivideDetailList: [], //目标指标分解列表\r\n\t\t});\r\n\r\n\t\tconst add = (val: any) => {\r\n\t\t\tconst item = deepClone(val);\r\n\t\t\tconsole.log(item)\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tformUp.targetDivideDetailList.push(item);\r\n\t\t\t} else {\r\n\t\t\t\tformUp.targetDivideDetailList[index.value] = item;\r\n\t\t\t}\r\n\r\n\t\t\t// let obj=JSON.parse(JSON.stringify(form.value))\r\n\t\t};\r\n\t\t// 新增\r\n\t\tconst submitForm = () => {\r\n\t\t\tformUp.delTargetDivideDetails = arr.value.toString();\r\n\t\t\tformUp.targetId = form.value.id;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tfor(let i=0;i<formUp.targetDivideDetailList.length;i++){\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].dutyDepartmentName\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].makerDepartmentName\r\n\t\t\t}\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDivideDetail(formUp)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('addList');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\tconst arr = ref([]);\r\n\t\t// 删除\r\n\t\tconst Delete = (data: any) => {\r\n\t\t\tformUp.targetDivideDetailList.splice(form.value.targetDivideDetailList.indexOf(data), 1);\r\n\t\t\tformUp.targetId = data.targetId;\r\n\t\t\tarr.value.push(data.id);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\t\t// 关闭\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 时间格式处理\r\n\t\t// const timeDate = (data: any) => {\r\n\t\t// \tlet result = new Date(data).getTime();\r\n\t\t// \treturn result;\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\ttimeDate,\r\n\t\t\tarr,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tonNumber,\r\n\t\t\ttargetType,\r\n\t\t\tdisabled,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tadd,\r\n\t\t\tformUp,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue ---- a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (date 1660381719162) -@@ -40,7 +40,7 @@ - <el-table-column align="center" property="dutyDepartmentName" label="责任部门" width="180" /> - <el-table-column align="center" property="value" label="考核指标" width="180" /> - <el-table-column align="center" property="makerDepartmentName" label="制定人部门" /> -- <el-table-column align="center" property="makeDate" label="制定日期" /> -+ <el-table-column align="center" property="makeDate" :formatter="timeDate" label="制定日期" /> - <el-table-column align="center" property="commitPersonName" label="上报人" /> - <el-table-column align="center" property="操作"> - <template #default="scope"> -@@ -96,12 +96,28 @@ - if (res.data.code == 200) { - form.value = res.data.data; - formUp.targetDivideDetailList = form.value.targetDivideDetailList; -+ for(let i=0;i<formUp.targetDivideDetailList.length;i++){ -+ formUp.targetDivideDetailList[i].makeDate=timeC(formUp.targetDivideDetailList[i].makeDate) -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - } - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - const onNumber = (val: object) => { - form.value = val; - }; -@@ -209,6 +225,7 @@ - // return result; - // }; - return { -+ timeC, - index, - timeDate, - arr, -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"checkData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"checkData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"checkData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"applyTime\" label=\"整改时间\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip min-width=\"150px\">\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"验收状态\" show-overflow-tooltip min-width=\"150px\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"checkAcceptPerson\" label=\"验收人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 1\" @click=\"onOpenDialogRef('验收', scope.row)\">验收</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"checkData.params.pageIndex\" background v-model:page-size=\"checkData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"checkData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <checkDialog ref=\"checkDialogRef\" @refreshCheck=\"initCheckTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport checkDialog from './components/checkDialog.vue';\r\nimport { Check, Delete, View } from '@element-plus/icons-vue';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { hiddenCheckApi } from '/@/api/doublePreventSystem/check';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n checkData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'check',\r\n components: { checkDialog, Check, Delete, View },\r\n setup() {\r\n const checkDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n checkData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: 1\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initCheckTableData = async () => {\r\n let res = await hiddenCheckApi().getHiddenCheckList(state.checkData.params);\r\n if (res.data.code === '200') {\r\n state.checkData.data = res.data.data;\r\n state.checkData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n checkDialogRef.value.openCheckDialog(type, value, state.departmentList);\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.checkData.params.pageSize = val;\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.checkData.params.pageIndex = val;\r\n initCheckTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initCheckTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Check,\r\n Delete,\r\n View,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n checkDialog,\r\n checkDialogRef,\r\n initCheckTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (date 1660381719127) -@@ -12,7 +12,12 @@ - <span>整改部门:</span> - <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-box" v-model="checkData.params.rectifyDepId"> </el-cascader> - </div> -- -+ <div class="basic-line"> -+ <span>整改状态:</span> -+ <el-select class="input-box" v-model="checkData.params.dangerStatus" placeholder="整改状态" clearable filterable> -+ <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> -+ </el-select> -+ </div> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -120,10 +125,7 @@ - { id: 2, name: '限期整改' } - ], - dangerStatusList: [ -- { id: 0, name: '整改中' }, - { id: 1, name: '待验收' }, -- { id: 2, name: '延期整改' }, -- { id: 4, name: '超期未整改' }, - { id: 9, name: '已验收' } - ] - }); -Index: src/views/contingencyManagement/panManagement/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog\r\n\t\t\t:title=\"titles\"\r\n\t\t\tv-model=\"isShowDialog\"\r\n\t\t\twidth=\"50%\"\r\n\t\t\tdraggable\r\n\t\t\t:fullscreen=\"full\"\r\n\t\t\t:close-on-click-modal=\"false\"\r\n\t\t\t@close=\"resetForm(ruleFormRef)\"\r\n\t\t>\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :disabled=\"disabled\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案名称\" prop=\"name\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.name\" placeholder=\"请填写队伍名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"适用部门\" prop=\"responsibleDepartment\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"responsibleDepartment\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\t\tcheck-on-click-node\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t\t@change=\"changeDepartment\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t<el-divider />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案类型\" prop=\"type\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.type\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"危险源关联\" prop=\"associatedDanger\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.associatedDanger\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"是\" :value=\"false\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"否\" :value=\"true\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案级别\" prop=\"level\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.level\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"公司级\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"分厂级\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"车间级\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写人\" prop=\"authorId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.authorName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写部门\" prop=\"authorDeptId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.authorDeptId\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发布实施日期\" prop=\"releaseDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.releaseDate\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急队伍\" prop=\"emergencyTeam\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.teamName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt(0)\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\t\t:on-change=\"handleChange\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"区域名称\" prop=\"areaName\">-->\r\n\t\t\t\t\t<!-- <el-input-->\r\n\t\t\t\t\t<!-- v-model=\"ruleForm.areaName\"-->\r\n\t\t\t\t\t<!-- placeholder=\"请选择\"-->\r\n\t\t\t\t\t<!-- class=\"input-with-select\"-->\r\n\t\t\t\t\t<!-- >-->\r\n\t\t\t\t\t<!-- <template #append>-->\r\n\t\t\t\t\t<!-- <el-button :icon=\"Search\" @click=\"regionsDialog\"/>-->\r\n\t\t\t\t\t<!-- </template>-->\r\n\t\t\t\t\t<!-- </el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<CheckTemplate ref=\"Shows\" @SearchUser=\"SearchUser\" />\r\n\t\t<DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { ref, defineComponent, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst ruleForm = ref({\r\n\t\t\tname: '', // 预案名称\r\n\t\t\ttype: '', //预案类型\r\n\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\tlevel: '', // 预案级别\r\n\t\t\tauthorUid: '', // 编写人\r\n\t\t\tauthorName: '',\r\n\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\tfileList: [],\r\n\t\t\tareaList: [], //区域列表\r\n\t\t\tteamList: [],\r\n\t\t\t// teamId: '', //应急队伍\r\n\t\t\tdeptList: [],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看应急预案管理' || title == '修改应急预案管理') {\r\n\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t.seeEmergencyTeam(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\truleForm.value.teamName = ''\r\n\t\t\t\t\t\t\tresponsibleDepartment.value = []\r\n\t\t\t\t\t\t\tif(res.data.data.teamList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.teamList.length;a++){\r\n\t\t\t\t\t\t\t\t\truleForm.value.teamName+=res.data.data.teamList[a].teamName+';'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif(res.data.data.deptList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.deptList.length;a++){\r\n\r\n\t\t\t\t\t\t\t\t\tresponsibleDepartment.value.push(res.data.data.deptList[a].departmentId)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst releaseDate = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst changeDepartment = (e) => {\r\n\t\t\tvar temList = [];\r\n\t\t\tfor (var a = 0; a < e.length; a++) {\r\n\t\t\t\ttemList.push({\r\n departmentId: e[a],\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.deptList = temList;\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t};\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref([]);\r\n\t\tconst data = ref();\r\n\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\tdelete ruleForm.value.teamName\r\n\t\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t\t.addEmergencyPlan(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n delete ruleForm.value.teamName\r\n emergencyPlanApi()\r\n\t\t\t\t\t\t\t.editEmergencyTeam(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tname: '', // 预案名称\r\n\t\t\t\t\ttype: '', //预案类型\r\n\t\t\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\t\t\tlevel: '', // 预案级别\r\n\t\t\t\t\tauthorUid: '', // 编写人\r\n\t\t\t\t\tauthorName: '',\r\n\t\t\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\t// teamId: '', //应急队伍ID\r\n\t\t\t\t\tareaList: [], //区域列表\r\n\t\t\t\t\tteamList: [],\r\n\t\t\t\t\tdeptList: [],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\truleForm.value = {};\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (data: any) => {\r\n\t\t\tShows.value.openDailog(data);\r\n\t\t};\r\n\t\tconst SearchUser = (val: any) => {\r\n\t\t\tlet arr = [];\r\n\t\t\truleForm.value.teamList = [];\r\n\t\t\tfor (let i = 0; i < val.length; i++) {\r\n\t\t\t\tarr.push(val[i].teamName);\r\n\t\t\t\truleForm.value.teamList.push({\r\n\t\t\t\t\tteamId: val[i].id,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.teamName = arr.toString();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\t//回显\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\truleForm.value.authorUid = e[0].uid;\r\n\t\t\truleForm.value.authorName = e[0].realName;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\treleaseDate,\r\n\t\t\t// treeSelect,\r\n\t\t\t// trees,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\tSearchUser,\r\n\t\t\tsubmitForm,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tisShowDialog,\r\n\t\t\truleFormRef,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonUser,\r\n\t\t\tnewTreeList,\r\n\t\t\tchangeDepartment,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue ---- a/src/views/contingencyManagement/panManagement/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue (date 1660381719165) -@@ -106,17 +106,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <!-- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">--> -@@ -158,13 +149,14 @@ - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan'; - import { goalManagementApi } from '/@/api/goalManagement'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - CheckTemplate, - DailogSearchUserManger, - RegionsDialog, -+ uploaderFile - }, - setup(prop, { emit }) { - const isShowDialog = ref(false); -@@ -211,15 +203,35 @@ - responsibleDepartment.value.push(res.data.data.deptList[a].departmentId) - } - } -- -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const releaseDate = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ const fileList = ref([]); - //el-tree-select回显 - const propse = { - label: 'depName', -@@ -272,6 +284,9 @@ - const data = ref(); - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急预案管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -306,10 +321,9 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] -- isShowDialog.value = false; -- delete ruleForm.value.teamName -- emergencyPlanApi() -+ isShowDialog.value = false; -+ delete ruleForm.value.teamName -+ emergencyPlanApi() - .editEmergencyTeam(ruleForm.value) - .then((res) => { - if (res.data.code == 200) { -@@ -356,6 +370,7 @@ - if (!formEl) return; - formEl.resetFields(); - ruleForm.value = {}; -+ fileList.value = [] - }; - // 应急队伍弹窗 - const Shows = ref(); -@@ -429,6 +444,8 @@ - onUser, - newTreeList, - changeDepartment, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -451,4 +468,4 @@ - .el-select { - width: 100%; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetDecompositionMonth/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport search from '../targetSettings/component/search.vue';\r\nimport Dailog from '../targetDecompositionYear/component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '2', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tadd,\r\n\t\t\tlistApi,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue ---- a/src/views/goalManagement/targetDecompositionMonth/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue (date 1660381719168) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -105,6 +105,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/performanceAppraisal/component/DailogAq.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"handleClose(ruleFormRef)\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核标题\" size=\"default\" prop=\"title\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\" placeholder=\"请填写考核标题\"></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核日期\" size=\"default\" prop=\"examineDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.examineDate\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\" prop=\"acceptanceNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"总分\" size=\"default\" prop=\"examineTotalNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examineTotalNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核部门\" size=\"default\" prop=\"examineDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.examineDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData1\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核人\" size=\"default\" prop=\"examinePersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examinePersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(1)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"被考核部门\" size=\"default\" prop=\"beExaminedDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.beExaminedDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData2\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"被考核人\" size=\"default\" prop=\"beExaminedPersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.beExaminedPersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(0)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\" size=\"default\" prop=\"examineTemplateName\">\r\n\t\t\t\t\t\t<el-input disabled v-model=\"form.examineTemplateName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiAdd\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"考核项目\" name=\"1\">\r\n\t\t\t\t<!-- <el-button type=\"primary\" size=\"default\" @click=\"daiAdd\">新增</el-button> -->\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"考核项目\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"考核分数\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t<el-input v-model=\"scope.row.address\" type=\"textarea\"> </el-input>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t\t<!-- <el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default>\r\n\t\t\t\t\t<el-button link type=\"primary\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column> -->\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Show\"></DailogSearch>\r\n\t<DailogSearchUser ref=\"Shows\" @SearchUser=\"userId\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tbeExaminedDepartmentId: '', ////被考核部门ID/外键\r\n\t\t\tbeExaminedDepartmentName: '',\r\n\t\t\tbeExaminedPersonId: '', ////被考核人ID/外键(可能有多个,用逗号隔开)\r\n\t\t\tbeExaminedPersonName: '',\r\n\t\t\texamineDate: '', ////考核日期\r\n\t\t\texamineDepartmentId: '', ////考核部门ID/外键\r\n\t\t\texamineDepartmentName: '',\r\n\t\t\texaminePersonId: '', ////考核人ID/外键\r\n\t\t\texaminePersonName: '',\r\n\t\t\texamineTemplateId: 1, ////绩效考核模板ID/外键\r\n\t\t\texamineTemplateName: '',\r\n\t\t\texamineTotalNumber: '', ////总分\r\n\t\t\textraFile: '9', //责任书附件\r\n\t\t\titemDetail: '', ////考核项目\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tnumberDetailJson: '[{\"id\":\"123\",\"number\":\"123\"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:\"123\",\"number\":\"123\"}]\r\n\t\t\ttitle: '', ////考核标题\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdepartment();\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 验证\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\ttitle: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }],\r\n\t\t\texamineDate: [{ required: true, message: '考核日期不能为空', trigger: 'blur' }],\r\n\t\t\texamineDepartmentId: [{ required: true, message: '考核部门不能为空', trigger: 'blur' }],\r\n\t\t\texaminePersonName: [],\r\n\t\t\texaminePersonId: [],\r\n\t\t\tbeExaminedDepartmentId: [{ required: true, message: '被考核部门不能为空', trigger: 'blur' }],\r\n\t\t\tbeExaminedPersonName: [],\r\n\t\t\tbeExaminedPersonId: [],\r\n\t\t\texamineTemplateId: [],\r\n\t\t\texamineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }],\r\n\t\t\tmemo: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst handleClose=(formEl: FormInstance | undefined)=>{\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t}\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (type: any) => {\r\n\t\t\tShows.value.openDailog(type);\r\n\t\t};\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst userId = (val: any, type: any) => {\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.examinePersonId = val.uid;\r\n\t\t\t\tform.value.examinePersonName = val.realName;\r\n\t\t\t} else if (type == 0) {\r\n\t\t\t\tlet uid=[]\r\n\t\t\t\tlet realName=[]\r\n\t\t\t\tfor(let i=0;i<val.length;i++){\r\n\t\t\t\t\tuid.push(val[i].uid)\r\n\t\t\t\t\trealName.push(val[i].realName)\r\n\t\t\t\t}\r\n\t\t\t\tform.value.beExaminedPersonId = uid.toString();\r\n\t\t\t\tform.value.beExaminedPersonName =realName.toString();\r\n\t\t\t\tconsole.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName)\r\n\t\t\t}\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst nameData1 = (val: any) => {\r\n\t\t\tform.value.examineDepartmentName = val.depName;\r\n\t\t};\r\n\t\tconst nameData2 = (val: any) => {\r\n\t\t\tform.value.beExaminedDepartmentName = val.depName;\r\n\t\t\tconsole.log(form.value);\r\n\t\t};\r\n\t\treturn {\r\n\t\t\trules,\r\n\t\t\thandleClose,\r\n\t\t\tnameData1,\r\n\t\t\tnameData2,\r\n\t\t\truleFormRef,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tuserId,\r\n\t\t\tactiveName,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\topenDailog,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (date 1660381719172) -@@ -10,7 +10,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="考核日期" size="default" prop="examineDate"> -- <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.examineDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -72,30 +79,16 @@ - </el-row> - <el-row> - <el-col :span="24"> -- <el-form-item label="考核模板"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <el-form-item label="附件"> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="考核模板" size="default" prop="examineTemplateName"> -- <el-input disabled v-model="form.examineTemplateName"> -+ <el-input v-model="form.examineTemplateName"> - <template #append> <el-button :icon="Search" @click="daiAdd" /></template> - </el-input> - </el-form-item> -@@ -112,12 +105,12 @@ - <!-- <el-button type="primary" size="default" @click="daiAdd">新增</el-button> --> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" prop="date" label="考核项目" /> -- <el-table-column align="center" prop="name" label="考核内容" /> -+ <el-table :data="form.numberDetailJson" style="width: 100%"> -+ <el-table-column align="center" prop="itemDetail" label="考核项目" /> -+ <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" label="考核分数"> - <template #default="scope"> -- <el-input v-model="scope.row.address" type="textarea"> </el-input> -+ <el-input @blur="numberC" v-model.number="scope.row.number"> </el-input> - </template> - </el-table-column> - <!-- <el-table-column align="center" prop="address" label="制定日期" /> -@@ -135,7 +128,7 @@ - </span> - </template> - </el-dialog> -- <DailogSearch ref="Show"></DailogSearch> -+ <DailogSearch ref="Show" @typeDome="onType"></DailogSearch> - <DailogSearchUser ref="Shows" @SearchUser="userId"></DailogSearchUser> - </template> - <script lang="ts"> -@@ -147,8 +140,9 @@ - import { goalManagementApi } from '/@/api/goalManagement'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearchUser, DailogSearch }, -+ components: { DailogSearchUser, DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const ruleFormRef = ref<FormInstance>(); -@@ -162,13 +156,14 @@ - examineDepartmentName: '', - examinePersonId: '', ////考核人ID/外键 - examinePersonName: '', -- examineTemplateId: 1, ////绩效考核模板ID/外键 -+ examineTemplateId: '', ////绩效考核模板ID/外键 - examineTemplateName: '', - examineTotalNumber: '', ////总分 -- extraFile: '9', //责任书附件 -+ acceptanceNumber: '', ///合格分数 -+ extraFile: '', //责任书附件 - itemDetail: '', ////考核项目 - memo: '', ////备注信息 -- numberDetailJson: '[{"id":"123","number":"123"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] -+ numberDetailJson: [], ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] - title: '', ////考核标题 - }); - const titles = ref(); -@@ -185,11 +180,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.examineDate = timeC(form.value.examineDate); -+ form.value.numberDetailJson = form.value.currentExamineDtoList; -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } -+ -+ // fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m + `:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 验证 - const rules = reactive<FormRules>({ - title: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }], -@@ -204,12 +258,39 @@ - examineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }], - memo: [], - }); -+ // 接收 -+ const onType = (data: any, val: any) => { -+ form.value.examineTotalNumber = ''; -+ form.value.examineTemplateId = data.id; -+ form.value.examineTemplateName = data.title; -+ form.value.acceptanceNumber = data.acceptanceNumber; -+ form.value.numberDetailJson = val.examineItemList; -+ }; -+ const numberC = () => { -+ let arr = 0; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ if (form.value.numberDetailJson[i].number != undefined) { -+ arr = parseInt(arr) + parseInt(form.value.numberDetailJson[i].number); -+ } else { -+ arr = parseInt(arr) + 0; -+ } -+ } -+ form.value.examineTotalNumber = arr; -+ }; - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - dialogVisible.value = false; -+ let arr = []; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ arr.push({ -+ id: form.value.numberDetailJson[i].id, -+ number: form.value.numberDetailJson[i].number, -+ }); -+ } -+ form.value.numberDetailJson = JSON.stringify(arr); - goalManagementApi() - .getexamineMngAddOrUpdate(form.value) - .then((res) => { -@@ -234,10 +315,11 @@ - dialogVisible.value = false; - formEl.resetFields(); - }; -- const handleClose=(formEl: FormInstance | undefined)=>{ -+ const handleClose = (formEl: FormInstance | undefined) => { - if (!formEl) return; - formEl.resetFields(); -- } -+ fileList.value=[] -+ }; - const activeName = ref('1'); - // 新增弹窗 - const Show = ref(); -@@ -250,16 +332,7 @@ - Shows.value.openDailog(type); - }; - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref<UploadUserFile[]>([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -284,15 +357,15 @@ - form.value.examinePersonId = val.uid; - form.value.examinePersonName = val.realName; - } else if (type == 0) { -- let uid=[] -- let realName=[] -- for(let i=0;i<val.length;i++){ -- uid.push(val[i].uid) -- realName.push(val[i].realName) -+ let uid = []; -+ let realName = []; -+ for (let i = 0; i < val.length; i++) { -+ uid.push(val[i].uid); -+ realName.push(val[i].realName); - } - form.value.beExaminedPersonId = uid.toString(); -- form.value.beExaminedPersonName =realName.toString(); -- console.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName) -+ form.value.beExaminedPersonName = realName.toString(); -+ console.log(form.value.beExaminedPersonId, form.value.beExaminedPersonName); - } - }; - //全屏 -@@ -331,6 +404,9 @@ - }; - return { - rules, -+ timeC, -+ numberC, -+ onType, - handleClose, - nameData1, - nameData2, -@@ -360,6 +436,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -368,4 +446,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/component/DailogKh.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"新建考核标准设定\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"标准标题\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"适用范围\" size=\"default\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.applyRange\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<div v-if=\"clickType\">\r\n\t\t\t\t<el-row>\r\n\t\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"form.setPersonId\" disabled>\r\n\t\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /></template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人部门\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"form.setPersonDepartmentId\" disabled style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone one\" value=\"shanghai\" />\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone two\" value=\"beijing\" />\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</div>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"模板分类编码\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.templateCode\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\" v-if=\"clickType\">\r\n\t\t\t\t\t<el-form-item label=\"设定日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker disabled v-model=\"form.setTimem\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增','')\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"form.examineItemList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogKhS ref=\"Show\" @onAdd=\"AddObj\"></DailogKhS>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogKhS from './DailogKhS.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogKhS },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\tsetTimem: 1658386392466,\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\ttitle: '', ////标准标题\r\n\t\t\tsetPersonId: 1, //设定人\r\n\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\tapplyRange: '', ////适用范围\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst clickType = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineTemplateDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tclickType.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 接受传值\r\n\t\tconst AddObj = (val: any) => {\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.examineItemList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.examineItemList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.examineItemList.splice(form.value.examineItemList.indexOf(tag), 1);\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateAddOrUpdate(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.examineItemList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\tdeleteA,\r\n\t\t\tAddObj,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\tclickType,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (date 1660381719174) -@@ -62,7 +62,7 @@ - </el-row> - </el-form> - <el-tabs v-model="activeName" class="demo-tabs"> -- <el-tab-pane label="目标指标分解" name="1"> -+ <el-tab-pane label="考核项目" name="1"> - <el-button type="primary" size="default" @click="daiAdd('新增','')">新增</el-button> - </el-tab-pane> - </el-tabs> -@@ -238,4 +238,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"安全考核管理\" name=\"1\">\r\n\t\t\t\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.searchParams.examineDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.currentExamineDtoList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"number\" label=\"考核分数\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column property=\"examineDate\" align=\"center\" :formatter=\"timeDate\" label=\"考核日期\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examineDepartmentName\" align=\"center\" label=\"考核部门\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examinePersonName\" label=\"考核人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"beExaminedDepartmentName\" label=\"被考核部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"examineTotalNumber\" label=\"总分\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"numberDetailJson.number\" label=\"考核结果\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"extraFile\" label=\"附件\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"考核标准设定\" name=\"2\">\r\n\t\t\t\t\t<el-form :model=\"ruleForms\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForms.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApis\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForms\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openDs('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warnings\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"dangers\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAlls\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableDatas\" style=\"width: 100%\" @selection-change=\"handleSelectionChanges\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableDatas.examineItemList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column label=\"标准标题\" property=\"title\" align=\"center\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"applyRange\" align=\"center\" label=\"适用范围\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonName\" label=\"设定人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonDepartmentName\" label=\"设定人部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setTimem\" label=\"设定日期\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"templateCode\" label=\"模板分类编码\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"acceptanceNumber\" label=\"合格分数\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDs('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openDs('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDeletes(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4s\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4s\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"totals\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChanges\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChanges\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t</div>\r\n\t\t<DailogAq ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAq>\r\n\t\t<DailogKh ref=\"openAdds\" @navAddorUpdata=\"onAddorUpdatas\"></DailogKh>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogAq from './component/DailogAq.vue';\r\nimport DailogKh from './component/DailogKh.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAq, DailogKh },\r\n\tsetup() {\r\n\t\t// 搜索条件 安全考核管理\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\texamineDepartmentId: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD= (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 切换\r\n\t\tconst activeName = ref('1');\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tif (val == '1') {\r\n\t\t\t\tlistApi();\r\n\t\t\t}else{\r\n\t\t\t\tlistApis();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 搜索条件 考核标准设定\r\n\t\tconst ruleForms = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForms = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApis = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableDatas.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4s.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4s.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotals.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApis();\r\n\t\t\tdepartment()\r\n\t\t});\r\n\t\tconst onAddorUpdatas = () => {\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableDatas = ref();\r\n\t\tconst currentPage4s = ref();\r\n\t\tconst pageSize4s = ref();\r\n\t\tconst totals = ref();\r\n\t\tconst handleSizeChanges = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForms.pageSize = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\tconst handleCurrentChanges = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForms.pageIndex = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdds = ref();\r\n\t\tconst openDs = (title: String, id: number) => {\r\n\t\t\topenAdds.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDeletes = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warnings = ref(true);\r\n\t\tconst dangers = ref(true);\r\n\t\tconst deletAlls = ref();\r\n\t\tconst handleSelectionChanges = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAlls.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarnings.value = false;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAlls = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tactiveName,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\truleForms,\r\n\t\t\tresetForms,\r\n\t\t\tlistApis,\r\n\t\t\tonAddorUpdatas,\r\n\t\t\ttableDatas,\r\n\t\t\tcurrentPage4s,\r\n\t\t\tpageSize4s,\r\n\t\t\ttotals,\r\n\t\t\thandleSizeChanges,\r\n\t\t\thandleCurrentChanges,\r\n\t\t\topenAdds,\r\n\t\t\topenDs,\r\n\t\t\tonDeletes,\r\n\t\t\twarnings,\r\n\t\t\tdangers,\r\n\t\t\tdeletAlls,\r\n\t\t\thandleSelectionChanges,\r\n\t\t\tonDeleteAlls,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 20px;\r\n}\r\n.topTitle {\r\n\tpadding: 5px 0 20px 0;\r\n\tborder-bottom: 1px solid #dedede;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue ---- a/src/views/goalManagement/performanceAppraisal/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/performanceAppraisal/index.vue (date 1660381719177) -@@ -28,9 +28,9 @@ - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableData.currentExamineDtoList" style="width: 100%"> -+ <el-table :data="scope.row.currentExamineDtoList" style="width: 100%"> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" prop="number" label="考核分数" /> -@@ -91,9 +91,9 @@ - <el-table ref="multipleTableRef" :data="tableDatas" style="width: 100%" @selection-change="handleSelectionChanges"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableDatas.examineItemList" style="width: 100%"> -+ <el-table :data="scope.row.examineItemList" style="width: 100%"> - <el-table-column align="center" prop="itemType" label="类型" /> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> -@@ -141,8 +141,9 @@ - import DailogAq from './component/DailogAq.vue'; - import DailogKh from './component/DailogKh.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; --import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; -+import { ElMessageBox, ElMessage, ElButton, ElInput, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; -+import type { TabsPaneContext } from 'element-plus' - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - components: { ElButton, ElInput, DailogAq, DailogKh }, -@@ -158,6 +159,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.examineDepartmentId = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -@@ -283,8 +285,9 @@ - }; - // 切换 - const activeName = ref('1'); -- const handleClick = (val: any) => { -- if (val == '1') { -+ const handleClick = (val: TabsPaneContext) => { -+ console.log(val) -+ if (val.props.name == '1') { - listApi(); - }else{ - listApis(); -@@ -300,11 +303,12 @@ - }); - // 重置 - const resetForms = () => { -- ruleForm.searchParams.examineDepartmentId = ''; -+ ruleForms.searchParams.title = ''; -+ listApis() - }; - const listApis = () => { - goalManagementApi() -- .getexamineTemplateList(ruleForm) -+ .getexamineTemplateList(ruleForms) - .then((res) => { - if (res.data.code == 200) { - tableDatas.value = res.data.data; -Index: src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择安全目标指标\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi()\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"reset\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\" @click=\"clear\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\" width=\"70px\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"title\" label=\"标准标题\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.title }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\tlistApi()\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n // 重置\r\n\tconst reset=()=>{\r\n\t\truleForm.searchParams.title=\"\"\r\n\t\tlistApi()\r\n\t}\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\treset,\r\n\t\t\tdialogVisible,\r\n\t\t\tlistApi,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (date 1660381719180) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete" @click="clear">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > - <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -64,7 +64,7 @@ - <template #footer> - <span class="dialog-footer"> - <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -75,7 +75,7 @@ - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- setup() { -+ setup(props,{emit}) { - const dialogVisible = ref<boolean>(false); - const openDailog = () => { - dialogVisible.value = true; -@@ -122,6 +122,12 @@ - ruleForm.pageIndex = val; - listApi(); - }; -+ // 提交 -+ const submitForm=()=>{ -+ dialogVisible.value = false -+ emit("typeDome",dynamicTags.value[0],list.value) -+ clear() -+ } - // 右方点击添加后显示标签 - const dynamicTags = ref(['']); - const handleClose = (tag: string) => { -@@ -129,8 +135,19 @@ - radio1.value = ''; - }; - const radio1 = ref(''); -+ const list=ref([]) - const radio = (event: any) => { -- dynamicTags.value[0] = event; -+ -+ goalManagementApi() -+ .getexamineTemplateDetail(event.id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ list.value = res.data.data; -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ dynamicTags.value[0] = event; - }; - const clear=()=>{ - dynamicTags.value=[''] -@@ -146,6 +163,8 @@ - } - }; - return { -+ submitForm, -+ list, - reset, - dialogVisible, - listApi, -Index: src/views/goalManagement/IncentiveRecording/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.personName\" placeholder=\"请选择被奖惩者\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openSearch\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"createTime\" align=\"center\" label=\"奖惩日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column label=\"奖惩类型\" align=\"center\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"personName\" align=\"center\" label=\"被奖惩者\" sortable />\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"奖惩依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearchUser ref=\"openUser\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearchUser },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tpersonId: '', ////员工\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.personId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.personId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.personId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\tconst userId = (val: any) => {\r\n\t\t\truleForm.searchParams.personId = val.uid;\r\n\t\t\truleForm.searchParams.personName = val.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\truleForm,\r\n\t\t\tuserId,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\topenAdd,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\topenSearch,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue ---- a/src/views/goalManagement/IncentiveRecording/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/IncentiveRecording/index.vue (date 1660381719184) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.personName" placeholder="请选择被奖惩者"> -+ <el-input v-model="personName" placeholder="请选择被奖惩者"> - <template #append> - <el-button :icon="Search" @click="openSearch" /> - </template> -@@ -92,8 +92,10 @@ - }, - }); - // 重置 -+ const personName=ref() - const resetForm = () => { - ruleForm.searchParams.personId = ''; -+ personName.value = ''; - listApi(); - }; - const listApi = () => { -@@ -229,10 +231,11 @@ - }; - const userId = (val: any) => { - ruleForm.searchParams.personId = val.uid; -- ruleForm.searchParams.personName = val.realName; -+ personName.value = val.realName; - }; - return { - timeDate, -+ personName, - ruleForm, - userId, - resetForm, -@@ -292,4 +295,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-user-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <el-form :inline=\"true\" class=\"demo-form-inline\">\r\n <el-form-item>\r\n <el-input size=\"default\" v-model=\"listQuery.searchParams.teamName\" placeholder=\"队伍名称\"> </el-input>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-select size=\"default\" v-model=\"listQuery.searchParams.teamLevel\" placeholder=\"请选择队伍级别\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\">\r\n 查询\r\n </el-button>\r\n <el-button size=\"default\" class=\"ml10\" @click=\"submitReset\">\r\n 重置\r\n </el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n <div class=\"button_Line\">\r\n <div class=\"button_Left\">\r\n <el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n <el-icon>\r\n <Plus />\r\n </el-icon>新建\r\n </el-button>\r\n<!-- <el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Edit />-->\r\n<!-- </el-icon>修改-->\r\n<!-- </el-button>-->\r\n <el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </div>\r\n<!-- <div class=\"button_Right\">-->\r\n<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Upload />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Download />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Refresh />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- </div>-->\r\n </div>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%\"\r\n ref=\"multipleTableRef\"\r\n @selection-change=\"handleSelectionChange\"\r\n >\r\n <el-table-column\r\n type=\"selection\"\r\n width=\"55\"\r\n />\r\n <el-table-column prop=\"teamName\" label=\"队伍名称\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"teamLevel\" label=\"队伍级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.teamLevel == 1\">公司</span>\r\n <span v-if=\"scope.row.teamLevel == 2\">分厂-车间</span>\r\n <span v-if=\"scope.row.teamLevel == 3\">工序-班组等</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"teamDesc\" label=\"队伍描述\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"principalPhone\" label=\"负责人手机\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"attachments\" label=\"相关附件\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column label=\"操作\" width=\"200\" align=\"center\" fixed=\"right\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <View />\r\n </el-icon>查看\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <EditPen />\r\n </el-icon>修改\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"pages\">\r\n <el-pagination\r\n v-if=\"tableData.length == 0 ? false : true\"\r\n @size-change=\"onHandleSizeChange\"\r\n @current-change=\"onHandleCurrentChange\"\r\n class=\"mt15\"\r\n :pager-count=\"5\"\r\n :page-sizes=\"[10, 20, 30]\"\r\n v-model:currentPage=\"pageIndex\"\r\n background\r\n v-model:page-size=\"pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\"\r\n >\r\n </el-pagination>\r\n </div>\r\n </el-card>\r\n <OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n <upData ref=\"upShow\"></upData>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // toRefs,\r\n reactive,\r\n onMounted,\r\n ref,\r\n defineComponent\r\n} from 'vue';\r\nimport {\r\n ElMessageBox,\r\n ElMessage,\r\n} from 'element-plus';\r\nimport {\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n View,\r\n EditPen,\r\n} from '@element-plus/icons-vue'\r\n\r\nimport OpenAdd from '../../contingencyManagement/contingency/component/openAdd.vue'\r\nimport UpData from '../../contingencyManagement/contingency/component/upData.vue';\r\nimport {contingencyApi} from \"../../../api/contingencyManagement/contingency\";\r\n\r\nexport default defineComponent({\r\n name: 'systemUser',\r\n components: {\r\n OpenAdd,\r\n View,\r\n EditPen,\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n UpData,\r\n contingencyApi\r\n },\r\n setup() {\r\n // 列表参数\r\n const listQuery = reactive({\r\n pageIndex: 1,\r\n pageSize: 10,\r\n searchParams: {\r\n teamName: \"\",\r\n teamLevel: \"\",\r\n }\r\n })\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n // 列表数据请求\r\n const onSubmit = async () => {\r\n let res = await contingencyApi().getTeamManagementList(listQuery)\r\n if(res.data.code === '200'){\r\n tableData.value = res.data.data;\r\n pageIndex.value = res.data.pageIndex;\r\n pageSize.value = res.data.pageSize;\r\n total.value = res.data.total;\r\n }else{\r\n ElMessage({\r\n showClose: true,\r\n type:'error',\r\n message:res.data.msg\r\n })\r\n }\r\n }\r\n // 重置\r\n const submitReset = () => {\r\n listQuery.searchParams.teamName = '';\r\n listQuery.searchParams.teamLevel = '';\r\n onSubmit();\r\n };\r\n // const warning = ref(true);\r\n const danger = ref(true);\r\n const deleteAll = ref();\r\n const handleSelectionChange = (val: any) => {\r\n let valId = JSON.parse(JSON.stringify(val));\r\n let arr = [];\r\n for (let i = 0; i < valId.length; i++) {\r\n arr.push(valId[i].id);\r\n }\r\n deleteAll.value = arr;\r\n if (val.length == 1) {\r\n // warning.value = false;\r\n danger.value = false;\r\n } else if (val.length == 0) {\r\n // warning.value = true;\r\n danger.value = true;\r\n } else {\r\n // warning.value = true;\r\n danger.value = false;\r\n }\r\n };\r\n\r\n // 上传\r\n // const upShow=ref()\r\n // const upButton=()=>{\r\n // upShow.value.openDialog()\r\n // }\r\n // 打开新增应急队伍弹窗\r\n const addRef = ref();\r\n const onOpenAdd = () => {\r\n addRef.value.openDialog('新建应急队伍管理');\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: boolean) => {\r\n if (e) {\r\n onSubmit();\r\n } else {\r\n onSubmit();\r\n }\r\n };\r\n // 打开修改应急队伍弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '详情') {\r\n addRef.value.openDialog('查看应急队伍管理',row,true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍管理',row,false);\r\n }\r\n };\r\n // 删除用户\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam([data])\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n }).catch(() => {});\r\n };\r\n // 多选删除\r\n const onDeleteAll = () => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n })\r\n .then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam(deleteAll.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n })\r\n .catch(() => {});\r\n };\r\n // 分页\r\n const pageIndex = ref();\r\n const pageSize = ref();\r\n const total = ref();\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n listQuery.pageSize = val;\r\n onSubmit();\r\n };\r\n const onHandleCurrentChange = (val: number) => {\r\n listQuery.pageIndex = val;\r\n onSubmit();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n onSubmit();\r\n });\r\n return {\r\n listQuery,\r\n onSubmit,\r\n // upButton,\r\n // upShow,\r\n onOpenAdd, //新增\r\n addRef,\r\n pageIndex,\r\n pageSize,\r\n total,\r\n onEdit,\r\n handleSelectionChange,\r\n submitReset,\r\n onRowDel,\r\n onMyAdd,\r\n tableData,\r\n onDeleteAll,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n deleteAll,\r\n // warning,\r\n danger,\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box{\r\n padding: 20px;\r\n background-color: #fff;\r\n}\r\n.tableForm{\r\n margin-top: 10px;\r\n}\r\n/*按钮行*/\r\n .button_Line{\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n margin-bottom: 10px;\r\n }\r\n//分页\r\n.pages{\r\n display: flex;\r\n justify-content: flex-end;\r\n margin-top: 15px;\r\n}\r\n.el-form .el-form-item{\r\n margin-bottom: 0px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n background-color: #f6f7fa;\r\n font-weight: 400;\r\n color: #909399;\r\n}\r\n.el-table .sort-caret.ascending{\r\n border-bottom-color: #c0c4cc;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue ---- a/src/views/contingencyManagement/contingency/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/contingency/index.vue (date 1660381719190) -@@ -79,7 +79,9 @@ - </el-table-column> - <el-table-column prop="teamDesc" label="队伍描述" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="principalPhone" label="负责人手机" show-overflow-tooltip sortable></el-table-column> -- <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column prop="fileList" label="相关附件" show-overflow-tooltip sortable> -+ -+ </el-table-column> - <el-table-column label="操作" width="200" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="onEdit('详情',scope.row.id)"> -@@ -179,6 +181,11 @@ - let res = await contingencyApi().getTeamManagementList(listQuery) - if(res.data.code === '200'){ - tableData.value = res.data.data; -+ for(var a = 0;a<tableData.value.length;a++){ -+ if(tableData.value[a].fileList!=null&&tableData.value[a].fileList!=''&&tableData.value[a].fileList.length!=0){ -+ tableData.value[a].fileList = tableData.value[a].fileList[0].fileName -+ } -+ } - pageIndex.value = res.data.pageIndex; - pageSize.value = res.data.pageSize; - total.value = res.data.total; -@@ -389,4 +396,4 @@ - .el-table .sort-caret.ascending{ - border-bottom-color: #c0c4cc; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"120px\"\r\n :disabled=\"disabled\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍名称\" prop=\"teamName\">\r\n <el-input v-model=\"ruleForm.teamName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍级别\" prop=\"teamLevel\">\r\n <el-select v-model=\"ruleForm.teamLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍负责人\" prop=\"principalName\">\r\n <el-input v-model=\"ruleForm.principalName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人部门\" prop=\"principalDepartmentId\">\r\n <el-tree-select v-model=\"ruleForm.principalDepartmentId\" :data=\"newTreeList\" class=\"w100\"\r\n :props=\"propse\" clearable placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人手机\" prop=\"principalPhone\">\r\n <el-input v-model=\"ruleForm.principalPhone\" placeholder=\"请填写负责人手机\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"固定电话\" prop=\"telephoneNumber\">\r\n <el-input v-model=\"ruleForm.telephoneNumber\" placeholder=\"请填写固定电话\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"队伍描述\" prop=\"teamDesc\">\r\n <el-input class=\"textarea\" v-model=\"ruleForm.teamDesc\" type=\"textarea\" maxlength=\"150\"\r\n placeholder=\"请填写队伍描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"相关附件\" prop=\"fileList\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\">点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">添加相关附件</div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n <el-tab-pane label=\"应急队伍人员\" name=\"first\" >\r\n <el-button type=\"primary\" size=\"default\" @click=\"onAddEmergencyPersonnel\" :disabled=\"disabled\">新增\r\n </el-button>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%; margin-top: 15px\"\r\n ref=\"multipleTableRef\"\r\n :header-cell-style=\"{ background: '#f6f7fa', color: '#909399' }\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-table-column prop=\"jobNumber\" label=\"人员工号\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"name\" label=\"人员名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"phone\" label=\"手机号码\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"position\" label=\"职位\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('查看应急队伍人员',scope.row.id)\">查看\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('修改应急队伍人员',scope.row.id)\"\r\n style=\"margin-right: 5px\">编辑\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onRowDel(scope.row.id)\"\r\n style=\"margin-right: 5px\">删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-col>\r\n </el-row>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"onSubmit(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <AddEmergencyPersonnel ref=\"addRef\" @myAdd=\"onMyAdd\"/>\r\n <DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\"/>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\n import {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n // toRefs,\r\n } from 'vue';\r\n import {\r\n ElMessage,\r\n ElMessageBox,\r\n } from 'element-plus';\r\n\r\n import type {\r\n UploadUserFile,\r\n TabsPaneContext,\r\n FormInstance,\r\n FormRules,\r\n } from 'element-plus'\r\n\r\n import {\r\n Search,\r\n FullScreen\r\n } from '@element-plus/icons-vue'\r\n import AddEmergencyPersonnel from \"/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue\";\r\n import DailogSearchUserManger from \"/@/components/DailogSearchUserManger/index.vue\"\r\n import {contingencyApi} from \"/@/api/contingencyManagement/contingency\";\r\n import {goalManagementApi} from \"/@/api/goalManagement\";\r\n // import {releaseDrillPlanApi} from \"/@/api/releaseDrillPlan\";\r\n\r\n\r\n export default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n AddEmergencyPersonnel,\r\n DailogSearchUserManger,\r\n },\r\n setup(prop, {emit}) {\r\n const isShowDialog = ref(false);\r\n const ruleFormRef = ref<FormInstance>();\r\n const ruleForm = ref({\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalName: '',\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n const peopleInsertBtn = ref(false)\r\n const teamId = ref()\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n teamId.value = id\r\n //如果是新增 无法添加人员\r\n if(title == '新建应急队伍管理'){\r\n peopleInsertBtn.value = true\r\n }else{\r\n peopleInsertBtn.value = false\r\n }\r\n if (title == '查看应急队伍管理' || title == '修改应急队伍管理') {\r\n contingencyApi()\r\n .seeEmergencyTeam(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n listApi()\r\n }\r\n });\r\n }\r\n }\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n\r\n //定义树形下拉框\r\n const principalDepartmentId = ref()\r\n const data = ref()\r\n\r\n\r\n\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n\r\n\r\n\r\n\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog();\r\n };\r\n const onUser = (e: any) => {\r\n ruleForm.value.principalUid = e[0].uid\r\n ruleForm.value.principalName = e[0].realName\r\n };\r\n //定义tabs切换\r\n const activeName = ref('first')\r\n const handleClick = (tab: TabsPaneContext, event: Event) => {\r\n console.log(tab, event)\r\n }\r\n\r\n // 必填项提示\r\n const rules = reactive<FormRules>({\r\n teamName: [\r\n {\r\n required: true,\r\n message: '队伍名称不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n teamLevel: [\r\n {\r\n required: true,\r\n message: '队伍级别不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalUid: [\r\n {\r\n required: true,\r\n message: '队伍负责人不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalDepartmentId: [\r\n {\r\n required: true,\r\n message: '负责人部门不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalPhone: [\r\n {\r\n required: true,\r\n message: '负责人手机不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n telephoneNumber: [\r\n {\r\n required: true,\r\n message: '固定电话不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n })\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n const onSubmit = async (title: string, formEl: FormInstance | undefined) => {\r\n if (title == '新建应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .addEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n } else if (title == '修改应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .editEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n };\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n tableData.value=[]\r\n ruleForm.value = {}\r\n };\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n //添加队伍负责人弹窗\r\n const addRef = ref();\r\n const onAddEmergencyPersonnel = () => {\r\n //未添加队伍 无法修改人员\r\n if(peopleInsertBtn.value == true){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加应急队伍',\r\n type: 'warning',\r\n });\r\n }else {\r\n addRef.value.openDialog('新建应急队伍人员','',teamId.value);\r\n }\r\n };\r\n // 请求列表数据\r\n const listApi = async () => {\r\n let res = await contingencyApi().getEmergencyTeamPersonnelList(teamId.value);\r\n if (res.data.code == 200) {\r\n tableData.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: object) => {\r\n listApi();\r\n };\r\n // 打开修改弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '查看应急队伍人员') {\r\n addRef.value.openDialog('查看应急队伍人员', row,teamId.value, true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍人员', row,teamId.value, false);\r\n }\r\n };\r\n // 删除\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeamPersonnel(data)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n listApi()\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n listApi()\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n });\r\n };\r\n return {\r\n openDialog,\r\n fileList,\r\n principalDepartmentId,\r\n data,\r\n activeName,\r\n handleClick,\r\n tableData,\r\n Search,\r\n resetForm,\r\n isShowDialog,\r\n ruleFormRef,\r\n ruleForm,\r\n rules,\r\n addRef,\r\n userRef,\r\n titles,\r\n disabled,\r\n propse,\r\n emit,\r\n onSubmit,\r\n openUser,\r\n onAddEmergencyPersonnel,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n onUser,\r\n onMyAdd,\r\n listApi,\r\n onEdit,\r\n onRowDel,\r\n department,\r\n peopleInsertBtn,\r\n teamId,\r\n newTreeList\r\n };\r\n },\r\n });\r\n</script>\r\n<style scoped lang=\"scss\">\r\n .textarea {\r\n height: 168px !important;\r\n }\r\n\r\n .textarea ::v-deep .el-textarea__inner {\r\n height: 168px !important;\r\n }\r\n\r\n ::v-deep .el-table__cell {\r\n font-weight: 400;\r\n }\r\n</style>\r\n\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue ---- a/src/views/contingencyManagement/contingency/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue (date 1660381719194) -@@ -52,17 +52,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件" prop="fileList"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -142,6 +133,7 @@ - import DailogSearchUserManger from "/@/components/DailogSearchUserManger/index.vue" - import {contingencyApi} from "/@/api/contingencyManagement/contingency"; - import {goalManagementApi} from "/@/api/goalManagement"; -+ import uploaderFile from '/@/components/uploaderFile/index.vue'; - // import {releaseDrillPlanApi} from "/@/api/releaseDrillPlan"; - - -@@ -150,6 +142,7 @@ - components: { - AddEmergencyPersonnel, - DailogSearchUserManger, -+ uploaderFile - }, - setup(prop, {emit}) { - const isShowDialog = ref(false); -@@ -188,14 +181,34 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - listApi() - } - }); - } - } - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -- -+ const fileList = ref([]) -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //定义树形下拉框 - const principalDepartmentId = ref() - const data = ref() -@@ -313,6 +326,9 @@ - } - }; - const onSubmit = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急队伍管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -346,7 +362,6 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] - isShowDialog.value = false; - contingencyApi() - .editEmergencyTeam(ruleForm.value) -@@ -390,6 +405,7 @@ - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - tableData.value=[] - ruleForm.value = {} - }; -@@ -494,7 +510,9 @@ - department, - peopleInsertBtn, - teamId, -- newTreeList -+ newTreeList, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentExpress/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.accidentName\" placeholder=\"事故名称\" style=\"max-width: 215px\" />\r\n\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"listApi\"> 查询 </el-button>\r\n\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon> <Plus /> </el-icon>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon> <Edit /> </el-icon>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" @click=\"onDeleteAll\" plain :disabled=\"danger\">\r\n\t\t\t\t\t\t<el-icon> <Delete /> </el-icon>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button @click=\"upButton\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Upload />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Download />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Refresh />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentName\" label=\"事故名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"deptName\" label=\"事故部门\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrencePlace\" label=\"发生地点\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrenceTime\" label=\"发生时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentCause\" label=\"事故原因\" show-overflow-tooltip sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='1'\">人的不安全行为</div>\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='2'\">物的不安全状态</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"createName\" label=\"创建人\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"gmtModitify\" label=\"更新时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text disabled>\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Upload /> </el-icon>上报\r\n\t\t\t\t\t\t</el-button> -->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <EditPen /> </el-icon>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <View /> </el-icon>详情\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onDelete(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Delete /> </el-icon>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<upData ref=\"upShow\"></upData>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElTable, ElMessage, ElMessageBox } from 'element-plus';\r\nimport { Plus, View, Download, Refresh, EditPen, Edit, Delete, Upload } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/accidentManagementSystem/accidentExpress/component/openAdd.vue';\r\nimport UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nexport default defineComponent({\r\n\tname: 'index',\r\n\tcomponents: {\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpData,\r\n\t\tOpenAdd,\r\n\t\tView,\r\n\t},\r\n\r\n\tsetup() {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\taccidentName: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst listApi = async () => {\r\n\t\t\tlet res = await accidentManagementSystemApi().accidentList(listQuery);\r\n\t\t\tif (res.data.code == 200) {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.accidentName = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// 打开新增弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建事故快报',false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tlistApi();\r\n\t\t\t} else {\r\n\t\t\t\tlistApi();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele([data])\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst upShow = ref();\r\n\t\tconst upButton = () => {\r\n\t\t\tupShow.value.openDialog();\r\n\t\t};\r\n\r\n\t\t// 打开修改用户弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看事故快报',row,true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改事故快报',row,false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tupButton,\r\n\t\t\tupShow,\r\n\t\t\ttableData,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonEdit,\r\n\t\t\tonOpenAdd,\r\n\t\t\taddRef,\r\n\t\t\tlistQuery,\r\n\t\t\tlistApi,\r\n\t\t\tsubmitReset,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDelete,\r\n\t\t\tdeletAll,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/index.vue b/src/views/accidentManagementSystem/accidentExpress/index.vue ---- a/src/views/accidentManagementSystem/accidentExpress/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/accidentManagementSystem/accidentExpress/index.vue (date 1660381719197) -@@ -41,7 +41,8 @@ - <el-table-column align="center" prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="deptName" label="事故部门" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="occurrencePlace" label="发生地点" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column align="center" prop="accidentCause" label="事故原因" show-overflow-tooltip sortable> - <template #default="scope"> - <div v-if="scope.row.accidentCause=='1'">人的不安全行为</div> -@@ -49,7 +50,8 @@ - </template> - </el-table-column> - <el-table-column align="center" prop="createName" label="创建人" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <!-- <el-button size="small" text disabled> -@@ -268,7 +270,16 @@ - addRef.value.openDialog('修改事故快报',row,false); - } - }; -- -+//格式化表格时间 -+ const dateFormat = (row,column) => { -+ // 获取单元格数据 -+ let data = row[column.property]; -+ if(data == null) { -+ return null; -+ } -+ let dt = new Date(data) -+ return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds() -+ }; - return { - upButton, - upShow, -@@ -291,6 +302,7 @@ - onDelete, - deletAll, - onDeleteAll, -+ dateFormat - }; - }, - }); -@@ -343,4 +355,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetEscalation/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"检查\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"上报\" name=\"2\"></el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"审核\" name=\"3\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column v-if=\"activeName == 1\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(0)\">检查</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDai(scope.row.targetDivideDetailList)\">记录</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 2\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(1)\">上报</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 3\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom\">待审批</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { useRouter } from 'vue-router';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\t// let targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = val.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeName = ref<any>('1');\r\n\t\t// 记录弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openDai = (data: any) => {\r\n\t\t\tShow.value.openDailog(data);\r\n\t\t};\r\n\t\t// 流程表单\r\n\t\tconst router = useRouter();\r\n\t\tconst jumpFrom = (data: any) => {\r\n\t\t\trouter.push({\r\n\t\t\t\tpath: '/processForms',\r\n\t\t\t\tquery: {\r\n\t\t\t\t\ttype: data,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tactiveName,\r\n\t\t\ttotal,\r\n\t\t\thandleClick,\r\n\t\t\truleForm,\r\n\t\t\tlistApi,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tresetForm,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenDai,\r\n\t\t\trouter,\r\n\t\t\tjumpFrom,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/index.vue b/src/views/goalManagement/targetEscalation/index.vue ---- a/src/views/goalManagement/targetEscalation/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetEscalation/index.vue (date 1660381719199) -@@ -24,7 +24,6 @@ - <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> - <el-tab-pane label="检查" name="1"> </el-tab-pane> - <el-tab-pane label="上报" name="2"></el-tab-pane> -- <el-tab-pane label="审核" name="3"></el-tab-pane> - </el-tabs> - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%"> - <el-table-column label="安全目标指标" align="center" property="qName" sortable /> -@@ -33,18 +32,18 @@ - <el-table-column property="value" label="指标值" align="center" sortable show-overflow-tooltip /> - <el-table-column v-if="activeName == 1" label="操作" align="center" show-overflow-tooltip> - <template #default="scope"> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(0)">检查</el-button> -- <el-button link type="primary" size="default" :icon="View" @click="openDai(scope.row.targetDivideDetailList)">记录</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,1)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,1)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,1)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,1)" >查看审批流程</el-button> - </template> - </el-table-column> - <el-table-column v-if="activeName == 2" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(1)">上报</el-button> -- </template> -- </el-table-column> -- <el-table-column v-if="activeName == 3" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom">待审批</el-button> -+ <template #default="scope"> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,2)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,2)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,2)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,2)" >查看审批流程</el-button> - </template> - </el-table-column> - </el-table> -@@ -61,17 +60,19 @@ - </div> - </div> - <Dailog ref="Show"></Dailog> -+ <TypeDailog ref="TypeD" @onType="typeAlign" /> - </div> - </template> - <script lang="ts"> - import Dailog from './component/Dailog.vue'; -+import TypeDailog from './component/TypeDailog.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; - import { useRouter } from 'vue-router'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- components: { ElButton, ElInput, Dailog }, -+ components: { ElButton, ElInput, Dailog,TypeDailog }, - setup() { - // 搜索条件 - const ruleForm = reactive({ -@@ -80,8 +81,9 @@ - searchParams: { - qName: '', ////安全目标指标 - indexNum: '', ////目标指标编号 -- targetType: '1', ////指标类型 1:年指标 2:月指标 -- divideStatus: '', ////分解状态 1:已分解 2:未分解 -+ targetType: 1, ////指标类型 1:年指标 2:月指标 -+ divideStatus: 1, ////分解状态 1:已分解 2:未分解 -+ relateType: 1, ////关联业务类型 1:目标检查 2:目标上报 - }, - }); - // 重置 -@@ -91,7 +93,7 @@ - }; - const listApi = () => { - goalManagementApi() -- .getTargetMngList(ruleForm) -+ .getworkApproveList(ruleForm) - .then((res) => { - if (res.data.code == 200) { - tableData.value = res.data.data; -@@ -106,7 +108,7 @@ - // - const handleClick = (val: any) => { - // let targetType = JSON.parse(JSON.stringify(val)); -- ruleForm.searchParams.targetType = val.paneName; -+ ruleForm.searchParams.relateType = val.paneName; - listApi(); - }; - onMounted(() => { -@@ -133,20 +135,21 @@ - const activeName = ref<any>('1'); - // 记录弹窗 - const Show = ref(); -- const openDai = (data: any) => { -- Show.value.openDailog(data); -+ const openDai = (data: any,num:number) => { -+ Show.value.openDailog(data,num); - }; -- // 流程表单 -- const router = useRouter(); -- const jumpFrom = (data: any) => { -- router.push({ -- path: '/processForms', -- query: { -- type: data, -- }, -- }); -+ // 发起审批弹窗 -+ const TypeD = ref(); -+ const TypeDailog = (title:string,name:string,id:number,type:number) => { -+ TypeD.value.openDialog(title,name,id,type); - }; -+ const typeAlign=()=>{ -+ listApi(); -+ } - return { -+ TypeD, -+ typeAlign, -+ TypeDailog, - activeName, - total, - handleClick, -@@ -161,8 +164,6 @@ - handleCurrentChange, - Show, - openDai, -- router, -- jumpFrom, - Plus, - Delete, - Upload, -@@ -195,4 +196,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/api/goalManagement/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\nexport function goalManagementApi() {\r\n return {\r\n // 目标设置、目标指标分解列表\r\n getTargetMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置详情\r\n getTargetMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标设置新增或者修改数据\r\n getTargetMngAddOrupdata: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置删除\r\n getTargetMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标指标分解-新增或者修改数据\r\n gettargetDivideDetail: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDivideDetail/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 统计\r\n getEquipmentInfo: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/equipmentInfo/statistics',\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 分页查询数据\r\n gettargetDutyfileInfoList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutyfileInfo/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 查询单条数据\r\n gettargetDutyfileInfoDetail: (params: number) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 新增或者修改数据\r\n gettargetDutyfileInfoAddorUpdata: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 删除\r\n gettargetDutyfileInfoDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 分页查询数据\r\n getrewardPunishmentStandardList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 查询单条数据\r\n getrewardPunishmentStandardDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩标准设定 新增或者修改数据\r\n getrewardPunishmentStandardaddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 删除\r\n getrewardPunishmentStandardDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 分页查询数据\r\n getrewardPunishmentList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentDetail/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 查询单条数据\r\n getrewardPunishmentDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩记录 新增或者修改数据\r\n getrewardPunishmentAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 删除\r\n getrewardPunishmentDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 分页查询数据\r\n getexamineMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 查询单条数据\r\n getexamineMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 新增或者修改数据\r\n getexamineMngAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 删除\r\n getexamineMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 分页查询数据\r\n getexamineTemplateList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineTemplate/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 查询单条数据\r\n getexamineTemplateDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 新增或者修改数据\r\n getexamineTemplateAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 删除\r\n getexamineTemplateDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 分页查询数据\r\n gettargetDutySummaryList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutySummary/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 查询单条数据\r\n gettargetDutySummaryDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标汇总 新增或者修改数据\r\n gettargetDutySummaryAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 删除\r\n gettargetDutySummaryDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/delete?ids=${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 查询单条数据\r\n gettargetExamineDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetExamine/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 新增或者修改数据\r\n gettargetExamineAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetExamine/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标检查上报 (有疑问) 新增或者修改数据 ---???\r\n getworkApproveAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 部门树\r\n getTreedepartment: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/department/list',\r\n method: 'post'\r\n });\r\n },\r\n // 人员\r\n getManName: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`,\r\n method: 'get'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/goalManagement/index.ts b/src/api/goalManagement/index.ts ---- a/src/api/goalManagement/index.ts (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/api/goalManagement/index.ts (date 1660381719202) -@@ -247,10 +247,50 @@ - data: params - }); - }, -- // 目标检查上报 (有疑问) 新增或者修改数据 ---??? -- getworkApproveAddOrUpdate: (params: object) => { -+ // 目标检查上报 分页查询数据 -+ getworkApproveList: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetMng/checkAndSubimt/list', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 分页查询检查记录 -+ getworkApproveListCheckData: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/page/listCheckData', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 查询单条数据 -+ getworkApproveDetail: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + `/targetDutyWorkApprove/selectOne/${params}`, -+ method: 'get' -+ }); -+ }, -+ -+ // 目标检查上报 新增数据 -+ getworkApproveAdd: (params: object) => { - return request({ -- url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove', -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/add', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 新增数据 -+ getworkApproveUpdata: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/update', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 删除 -+ getworkApproveDelete: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/delete', - method: 'post', - data: params - }); -@@ -267,6 +307,18 @@ - return request({ - url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`, - method: 'get' -+ }); -+ }, -+ beforeUploadFile(fileName1: string, fileName2: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/presign?prefixName=' + fileName1 + '&suffixName=' + fileName2, -+ method: 'get' -+ }); -+ }, -+ searchFile(fileName: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/view?obj=' + fileName, -+ method: 'get' - }); - } - }; -Index: src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" :rules=\"rules\" size=\"default\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"disabled\" placeholder=\"请填写事故名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentDepartmentId\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.occurrencePlace\" :disabled=\"disabled\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.occurrenceTime\" :disabled=\"disabled\" placeholder=\"请填写发生时间\"></el-input>-->\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人的不安全行为\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"物的不安全状态\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"是否有伤亡\" prop=\"casualties\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.casualties\" :disabled=\"disabled\" @change=\"typeChang\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t\t<el-button v-if=\"ruleForm.casualties\" type=\"primary\" style=\"margin-left: 20px\"\r\n\t\t\t\t\t\t\t\t\t :icon=\"Edit\" @click=\"openDai\" round plain />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故简要经过\" prop=\"accidentBriefProcess\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentBriefProcess\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故简要经过\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因初步分析\" prop=\"accidentCausesPreliminaryAnalysis\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentCausesPreliminaryAnalysis\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故原因初步分析\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急防范措施\" prop=\"emergencyPrecautions\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.emergencyPrecautions\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写应急防范措施\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故照片\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.fileList\" :disabled=\"disabled\"-->\r\n\t\t\t\t\t\t\t<!--type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileListDemo\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<NumberOfCasualties ref=\"ShowUser\"></NumberOfCasualties>\r\n\t\t<CheckTemplate ref=\"Shows\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent, defineEmits, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen, Edit } from '@element-plus/icons-vue';\r\nimport NumberOfCasualties from '/@/views/accidentManagementSystem/accidentExpress/component/numberOfCasualties.vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tNumberOfCasualties,\r\n\t\tuploaderImg,\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\temergencyPrecautions: '',\r\n\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\taccidentBriefProcess: '',\r\n\t\t\tcasualties: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\toccurrenceTime: '',\r\n\t\t\toccurrencePlace: '',\r\n\t\t\taccidentDepartmentId: '',\r\n\t\t\taccidentName: '',\r\n\t\t\tfileList: [],\r\n\t\t\tid: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看事故快报' || title == '修改事故快报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.accidentScarh(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\tconst fileListDemo = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故名称不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故部门不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrencePlace: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '发生地点不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrenceTime: [{ type: 'date', required: true, message: '发生时间不能为空', trigger: 'blur' }],\r\n\t\t\taccidentCause: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcasualties: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '是否有伤亡不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentBriefProcess: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故简要经过不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentCausesPreliminaryAnalysis: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因初步分析不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\temergencyPrecautions: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '应急防范措施不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\t// 子传父\r\n\t\t// const emit=defineEmits(['myAdd'])\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.id = null;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList = [\r\n\t\t\t\t\t\t\t// {\r\n\t\t\t\t\t\t\t// \tfileUrl: 'url',\r\n\t\t\t\t\t\t\t// \tfileName: 'name',\r\n\t\t\t\t\t\t\t// },\r\n\t\t\t\t\t\t];\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t}\r\n\t\t\truleForm.value = {\r\n\t\t\t\taccidentExpressId: '',\r\n\t\t\t\temergencyPrecautions: '',\r\n\t\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\t\taccidentBriefProcess: '',\r\n\t\t\t\tcasualties: '',\r\n\t\t\t\taccidentCause: '',\r\n\t\t\t\toccurrenceTime: '',\r\n\t\t\t\toccurrencePlace: '',\r\n\t\t\t\taccidentDepartmentId: '',\r\n\t\t\t\taccidentName: '',\r\n\t\t\t\tfileList: [],\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 是否有伤亡弹窗\r\n\t\tconst typeChang = () => {\r\n\t\t\tconsole.log('tag', ruleForm);\r\n\t\t};\r\n\t\tconst ShowUser = ref();\r\n\t\tconst openDai = () => {\r\n if(ruleForm.value.id==null||ruleForm.value.id==''){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加事故快报',\r\n type: 'info',\r\n });\r\n }else {\r\n ShowUser.value.openDialog(ruleForm.value.id, disabled.value);\r\n }\r\n\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tShowUser,\r\n\t\t\ttypeChang,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\tEdit,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenDai,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tcloseDialog,\r\n\t\t\tfileListDemo,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (date 1660381719223) -@@ -1,6 +1,7 @@ - <template> - <div class="system-edit-user-container"> -- <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" @close="closeDialog(ruleFormRef)"> -+ <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" -+ destroy-on-close @close="closeDialog(ruleFormRef)"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" size="default" label-width="140px"> - <el-row :gutter="35"> -@@ -94,7 +95,8 @@ - <el-form-item label="事故照片" prop="fileList"> - <!--<el-input v-model="ruleForm.fileList" :disabled="disabled"--> - <!--type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <uploaderImg :fileList="fileListDemo"></uploaderImg> -+ <uploaderImg :fileList="fileList" :disabled="disabled" -+ :systemName="'INCIDENT_MANAGE'" @successUploader="successUploader"></uploaderImg> - </el-form-item> - </el-col> - </el-row> -@@ -157,7 +159,7 @@ - const titles = ref(); - const disabled = ref(); - // 打开弹窗 -- const openDialog = (title: string, id: number, type: boolean) => { -+ const openDialog = async (title: string, id: number, type: boolean) => { - isShowDialog.value = true; - titles.value = title; - disabled.value = type; -@@ -167,24 +169,39 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -- const fileListDemo = ref<UploadUserFile[]>([ -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- ]); -+ const fileList = ref([]); -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 可选择树 - const treeSelect = ref(); - -@@ -292,6 +309,9 @@ - // const emit=defineEmits(['myAdd']) - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故快报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -327,12 +347,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList = [ -- // { -- // fileUrl: 'url', -- // fileName: 'name', -- // }, -- ]; - accidentManagementSystemApi() - .accidentView(ruleForm.value) - .then((res) => { -@@ -380,6 +394,7 @@ - }; - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value = [] - console.log(ruleForm); - isShowDialog.value = false; - }; -@@ -459,7 +474,7 @@ - getTreeList, - newTreeList, - closeDialog, -- fileListDemo, -+ successUploader - }; - }, - }); -Index: src/views/goalManagement/targetEscalation/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"记录\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" label=\"序号\" type=\"index\" width=\"80\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"检查值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"检查人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"检查时间\" />\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst tableData = ref();\r\n\t\tconst openDailog = (data: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\t// console.log(data)\r\n\t\t\ttableData.value = data;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdialogVisible,\r\n\t\t\ttableData,\r\n\t\t\topenDailog,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/Dailog.vue b/src/views/goalManagement/targetEscalation/component/Dailog.vue ---- a/src/views/goalManagement/targetEscalation/component/Dailog.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetEscalation/component/Dailog.vue (date 1660381719225) -@@ -1,15 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="记录" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="查看审批流程" width="50%" draggable> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" label="序号" type="index" width="80" /> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -- <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定部门" /> -- <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="value" label="检查值" /> -- <el-table-column align="center" prop="commitPersonId" label="检查人" /> -- <el-table-column align="center" prop="makeDate" label="检查时间" /> -+ <el-table-column property="workName" label="审批人" sortable></el-table-column> -+ <el-table-column property="title" label="审批标题" sortable></el-table-column> -+ <el-table-column property="approvePersonName" label="编写人" sortable></el-table-column> -+ <el-table-column property="approveMemo" label="审批意见" sortable></el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -@@ -22,14 +18,28 @@ - <script lang="ts"> - import { defineComponent, reactive, ref } from 'vue'; - import { FullScreen } from '@element-plus/icons-vue'; -+import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - setup() { - const dialogVisible = ref(false); -+ const form = ref({ -+ pageSize: 10, -+ pageIndex: 1, -+ searchParams: { -+ relateId: '', ////检查记录ID -+ relateType:"", -+ }, -+ }); - const tableData = ref(); -- const openDailog = (data: any) => { -+ const openDailog = (data: any,type:number) => { - dialogVisible.value = true; -- // console.log(data) -- tableData.value = data; -+ form.value.searchParams.relateId=data -+ form.value.searchParams.relateType=type -+ goalManagementApi().getworkApproveListCheckData(form.value).then(res=>{ -+ if(res.data.code==200){ -+ tableData.value=res.data.data -+ } -+ }) - }; - //全屏 - const full = ref(false); -@@ -46,6 +56,7 @@ - openDailog, - full, - toggleFullscreen, -+ form, - FullScreen, - }; - }, -Index: src/views/goalManagement/Incentivestandard/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select v-model=\"ruleForm.searchParams.standardType\" size=\"default\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"奖励\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"惩罚\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\" >新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" :disabled=\"warning\" plain :icon=\"EditPen\" @click=\"openD\">修改 </el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"handleSelectionChange\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"qname\" align=\"center\" label=\"奖惩名称\" sortable />\r\n\t\t\t\t<el-table-column property=\"name\" align=\"center\" label=\"奖惩类型\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<!-- <upData ref=\"upShow\"></upData> -->\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, upData, DailogAdd },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tstandardType: '', ////奖惩类型 1:奖励 2:惩罚\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.standardType = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentStandardList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.standardType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.standardType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/Incentivestandard/index.vue b/src/views/goalManagement/Incentivestandard/index.vue ---- a/src/views/goalManagement/Incentivestandard/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/Incentivestandard/index.vue (date 1660381719228) -@@ -27,7 +27,7 @@ - <div class="btns"> - <div> - <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')" >新建</el-button> -- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> -+ <!-- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="handleSelectionChange">删除</el-button> - </div> - <div> -@@ -279,4 +279,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"769px\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :rules=\"rules\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人姓名\" prop=\"declareUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.declareUserName\" :disabled=\"disabled\" placeholder=\"请填写申报人姓名\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人性别\" prop=\"declareUserGender\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.declareUserGender\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">男</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">女</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人部门\" placeholder=\"请选择\" prop=\"declareDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.declareDepartmentId\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t:data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"工伤类型\" prop=\"workInjuryType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.workInjuryType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻微伤\" value=\"轻微伤\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻伤\" value=\"轻伤\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报日期\" prop=\"declareDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.declareDate\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"损失工时\" prop=\"lostTime\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.lostTime\" :disabled=\"disabled\" placeholder=\"请填写损失工时\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊医院\" prop=\"visitHospital\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitHospital\" :disabled=\"disabled\" placeholder=\"请填写就诊医院\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊结果\" prop=\"visitResult\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitResult\" :disabled=\"disabled\" placeholder=\"请填写就诊结果\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"注意事项\" prop=\"mattersNeedingAttention\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.mattersNeedingAttention\" :disabled=\"disabled\" placeholder=\"请填写注意事项\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"材料是否齐全\" prop=\"completeMaterials\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.completeMaterials\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"备注\" prop=\"remark\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.remark\" :disabled=\"disabled\" type=\"textarea\" placeholder=\"请填写备注\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"showRef\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n\treactive,\r\n\tref,\r\n\tdefineComponent,\r\n\tonMounted\r\n} from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance,FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\tdeclareUserName: '',\r\n\t\t\tdeclareUserGender: '',\r\n\t\t\tdeclareDepartmentId: '',\r\n\t\t\taccidentName:'',\r\n\t\t\taccidentExpressId: '',\r\n\t\t\tworkInjuryType: '',\r\n\t\t\tdeclareDate: '',\r\n\t\t\tlostTime: '',\r\n\t\t\tvisitHospital: '',\r\n\t\t\tvisitResult: '',\r\n\t\t\tmattersNeedingAttention: '',\r\n\t\t\tcompleteMaterials: '',\r\n\t\t\tremark: '',\r\n\t\t\tfileList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfileName: '',\r\n\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看工伤申报' || title == '修改工伤申报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentManagementSystem(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\tconst tree = [\r\n\t\t];\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\r\n\t\t];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 关闭弹窗\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdeclareUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人姓名不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareUserGender: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人性别不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人部门不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '事故名称不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tworkInjuryType: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '工伤类型不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDate: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报日期不能为空',\r\n\t\t\t\t trigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tlostTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '损失工时不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitHospital: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊医院不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitResult: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊结果不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmattersNeedingAttention: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '注意事项不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcompleteMaterials: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '材料状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tremark: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '备注不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\t// 事故名称弹窗\r\n\t\tconst showRef = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tshowRef.value.openDailog();\r\n\t\t};\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value.accidentName = item[0].accidentName\r\n\t\t\truleForm.value.occurrenceTime = item[0].occurrenceTime\r\n\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\tdelete ruleForm.value.id\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tdeclareUserName: '',\r\n\t\t\t\t\tdeclareUserGender: '',\r\n\t\t\t\t\tdeclareDepartmentId: '',\r\n\t\t\t\t\taccidentExpressId: '',\r\n\t\t\t\t\tworkInjuryType: '',\r\n\t\t\t\t\tdeclareDate: '',\r\n\t\t\t\t\tlostTime: '',\r\n\t\t\t\t\tvisitHospital: '',\r\n\t\t\t\t\tvisitResult: '',\r\n\t\t\t\t\tmattersNeedingAttention: '',\r\n\t\t\t\t\tcompleteMaterials: '',\r\n\t\t\t\t\tremark: '',\r\n\t\t\t\t\tfileList: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfileName: '',\r\n\t\t\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdaiInpt,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\ttree,\r\n\t\t\tshowRef,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tonSelectItem,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tpropse,\r\n\t\t\tcloseDialog,\r\n\t\t\tuploaderImg\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue ---- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (date 1660381719232) -@@ -81,7 +81,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <uploaderImg :fileList="fileList" :name="INCIDENT_MANAGE" -+ @successUploader="successUploader" :disabled="disabled"></uploaderImg> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -184,10 +185,35 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -@@ -241,6 +267,7 @@ - // 关闭弹窗 - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value=[] - isShowDialog.value = false; - }; - // 必填项提示 -@@ -346,12 +373,14 @@ - }; - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建工伤申报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - delete ruleForm.value.id -@@ -384,7 +413,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - accidentManagementSystemApi() -@@ -491,7 +519,9 @@ - newTreeList, - propse, - closeDialog, -- uploaderImg -+ uploaderImg, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"目标考核\" width=\"70%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n <el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n </el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" type=\"index\" label=\"序号\" width=\"70\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报时间\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核结果\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核时间\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n <DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport {deepClone} from \"/@/utils/other\";\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch ,DailogAdd},\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (e: object) => {\r\n\t\t\tform.value = e;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\r\n // 新增弹窗\r\n const index=ref<any>()\r\n const Show = ref();\r\n const daiAdd = (title: string, data: any) => {\r\n // index.value = formUp.targetDivideDetailList.indexOf(data);\r\n Show.value.openDailog(title, data);\r\n };\r\n const formUp = reactive({\r\n targetId: '', //关联的目标指标/外键\r\n delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n // targetDivideDetailList: [], //目标指标分解列表\r\n });\r\n\r\n const add = (val: any) => {\r\n const item = deepClone(val)\r\n if(index.value==-1){\r\n formUp.targetDivideDetailList.push(item);\r\n }else{\r\n formUp.targetDivideDetailList[index.value] = item;\r\n }\r\n\r\n // let obj=JSON.parse(JSON.stringify(form.value))\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\ttargetType,\r\n\t\t\tonNumber,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n daiAdd,\r\n index,\r\n Show,\r\n formUp,\r\n add,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/Dailog.vue b/src/views/goalManagement/safetyAssessment/component/Dailog.vue ---- a/src/views/goalManagement/safetyAssessment/component/Dailog.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/safetyAssessment/component/Dailog.vue (date 1660381719235) -@@ -1,5 +1,5 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable @close="closeDialog"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" label-width="120px"> - <el-row> -@@ -34,27 +34,38 @@ - <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -+ <el-table :data="formUp.examineList" style="width: 100%"> - <el-table-column align="center" type="index" label="序号" width="70" /> -- <el-table-column align="center" prop="date" label="责任部门" /> -- <el-table-column align="center" prop="name" label="考核指标" /> -- <el-table-column align="center" prop="address" label="制定部门" /> -- <el-table-column align="center" prop="address" label="制定日期" /> -- <el-table-column align="center" prop="address" label="上报值" /> -- <el-table-column align="center" prop="address" label="上报时间" /> -- <el-table-column align="center" prop="address" label="考核结果" /> -- <el-table-column align="center" prop="address" label="考核人" /> -- <el-table-column align="center" prop="address" label="考核时间" /> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> -+ <el-table-column align="center" prop="examineValue" label="考核指标" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定部门" /> -+ <el-table-column align="center" prop="makeDate" label="制定日期" /> -+ <el-table-column align="center" prop="uploadValue" label="上报值" /> -+ <el-table-column align="center" prop="uploadDate" label="上报时间" /> -+ <el-table-column align="center" prop="examineResult" label="考核结果" > -+ <template #default="scope"> -+ <div v-if="scope.row.examineResult==1"> -+ 合格 -+ </div> -+ <div v-if="scope.row.examineResult==2"> -+ 不合格 -+ </div> -+ </template> -+ </el-table-column> -+ <el-table-column align="center" prop="examinePersonName" label="考核人" /> -+ <el-table-column align="center" prop="examineDate" label="考核时间" /> - <el-table-column align="center" label="操作"> - <template #default="scope"> -- <el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('查看', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('修改', scope.row)">修改</el-button> -+ <el-button link type="primary" @click="Delete(scope.row)">删除</el-button> - </template> - </el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -- <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button @click="closeDialog" size="default">关闭</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -84,15 +95,62 @@ - disabled.value = title == '查看' ? true : false; - if (title == '查看' || title == '修改') { - goalManagementApi() -- .getTargetMngDetail(id) -+ .gettargetExamineDetail(id) - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ formUp.examineList = res.data.data.examineList -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ }; -+ const closeDialog = () => { -+ form.value = {} -+ formUp.examineList = [] -+ dialogVisible.value = false -+ }; -+ const submitForm = () => { -+ // formUp.delTargetDivideDetails = arr.value.toString(); -+ // formUp.targetId = form.value.id; -+ dialogVisible.value = false; -+ for(let i=0;i<formUp.examineList.length;i++){ -+ delete formUp.examineList[i].dutyDepartmentName -+ delete formUp.examineList[i].makerDepartmentName -+ } -+ formUp.id = form.value.id -+ formUp.delIds = arr.value.toString(); -+ goalManagementApi() -+ .gettargetExamineAddOrUpdate(formUp) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('addList'); - } else { - ElMessage.error(res.data.msg); - } - }); -- } -+ form.value = { -+ qName: '', -+ indexNum: '', -+ year: '', -+ value: '', -+ examineList: [], -+ }; -+ tableData.value = []; -+ formUp.targetId = ''; -+ formUp.delTargetDivideDetails = ''; -+ formUp.examineList = []; -+ }; -+ const arr = ref([]); -+ // 删除 -+ const Delete = (data: any) => { -+ formUp.examineList.splice(form.value.examineList.indexOf(data), 1); -+ arr.value.push(data.id); - }; - const onNumber = (e: object) => { - form.value = e; -@@ -107,29 +165,30 @@ - Shows.value.openDailog(targetType.value); - }; - -- // 新增弹窗 -- const index=ref<any>() -- const Show = ref(); -- const daiAdd = (title: string, data: any) => { -- // index.value = formUp.targetDivideDetailList.indexOf(data); -- Show.value.openDailog(title, data); -- }; -- const formUp = reactive({ -- targetId: '', //关联的目标指标/外键 -- delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -- // targetDivideDetailList: [], //目标指标分解列表 -- }); -+ // 新增弹窗 -+ const index=ref<any>() -+ const Show = ref(); -+ const daiAdd = (title: string, data: any) => { -+ index.value = formUp.examineList.indexOf(data); -+ Show.value.openDailog(title, data); -+ }; -+ const formUp = reactive({ -+ targetId: '', //关联的目标指标/外键 -+ delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -+ examineList: [], //目标指标分解列表 -+ }); - -- const add = (val: any) => { -- const item = deepClone(val) -- if(index.value==-1){ -- formUp.targetDivideDetailList.push(item); -- }else{ -- formUp.targetDivideDetailList[index.value] = item; -- } -- -- // let obj=JSON.parse(JSON.stringify(form.value)) -- }; -+ const add = (val: any) => { -+ const item = deepClone(val) -+ if(index.value==-1){ -+ -+ formUp.examineList.push(item); -+ }else{ -+ formUp.examineList[index.value] = item; -+ } -+ console.log(formUp) -+ // let obj=JSON.parse(JSON.stringify(form.value)) -+ }; - - //全屏 - const full = ref(false); -@@ -156,11 +215,14 @@ - full, - toggleFullscreen, - FullScreen, -- daiAdd, -- index, -- Show, -- formUp, -- add, -+ daiAdd, -+ index, -+ Show, -+ formUp, -+ add, -+ closeDialog, -+ submitForm, -+ Delete - }; - }, - }); -Index: src/views/goalManagement/targetSettings/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"ruleForm.searchParams.targetType\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t<el-button type=\"danger\" :disabled=\"danger\" size=\"default\" @click=\"onDeleteAll\" :icon=\"Delete\" plain>删除</el-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(年)\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(月)\" name=\"2\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"level\" label=\"指标级别\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"completeDate\" label=\"完成期限\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"状态\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 1\">已分解</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 2\">未分解</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<dailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></dailogAdd>\r\n\t\t\t<upData ref=\"upShow\"></upData>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport dailogAdd from './component/dailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, dailogAdd, upData },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst small = ref(false);\r\n\t\tconst disabled = ref(false);\r\n\t\tconst background = ref(false);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDialog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\t// const warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\t// warning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 上传\r\n\t\t// const upShow = ref();\r\n\t\t// const upButton = () => {\r\n\t\t// \tupShow.value.openDialog();\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\thandleClick,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\t// upShow,\r\n\t\t\t// upButton,\r\n\t\t\tsmall,\r\n\t\t\tdisabled,\r\n\t\t\tbackground,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonAddorUpdata,\r\n\t\t\tonDelete,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tdeletAll,\r\n\t\t\tdanger,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/index.vue b/src/views/goalManagement/targetSettings/index.vue ---- a/src/views/goalManagement/targetSettings/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetSettings/index.vue (date 1660381719251) -@@ -102,6 +102,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/safetyAssessment/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable @close=\"resetForm(ruleFormRef)\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"责任部门\" prop=\"dutyDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.dutyDepartmentId\" check-strictly=\"true\" :data=\"data\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核指标\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.value\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"制定人部门\" prop=\"makerDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.makerDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"制定日期\" prop=\"makeDate\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"上报值\" prop=\"commitPersonName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.commitPersonName\">\r\n<!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"上报时间\" prop=\"makeDate\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n\t\t\t</el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核结果\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"考核人\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核时间\" prop=\"commitPersonName\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\"></el-col>\r\n </el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearchUser ref=\"Show\" @SearchUser=\"onUser\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive, onMounted } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport DailogSearchUser from '../../../../components/DailogSearchUser/index.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser },\r\n\tsetup(props, { emit }) {\r\n\t\tconst ruleFormRef = ref<FormInstance>()\r\n\t\tconst form = ref({\r\n\t\t\tdutyDepartmentId: '', ////责任部门/外键\r\n\t\t\tmakerDepartmentId: '', ////制定人部门/外键\r\n\t\t\tcommitPersonId: '', ////上报人/外键\r\n\t\t\tcommitPersonName: '',\r\n\t\t\tvalue: '', ////考核指标值\r\n\t\t\tmakeDate: '', ////制定日期\r\n\t\t});\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst disabled = ref(false);\r\n\t\t// 开启弹窗\r\n\t\tconst titles = ref();\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst openDailog = (title: string, data: any) => {\r\n\t\t\ttitles.value = `${title}目标考核`;\r\n\t\t\tif (title == '查看') {\r\n\t\t\t\tdisabled.value = true;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else if (title == '修改') {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t}\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 开启用户弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdutyDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '责任部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakerDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定人部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '上报人不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '考核指标值不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'number',\r\n\t\t\t\t\tmessage: '考核指标值只能为数字类型',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakeDate: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonName: [],\r\n\t\t});\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\temit('onAdd', form.value);\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\t// handleClose(formEl)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\t// console.log(formEl);\r\n\t\t\tif (!formEl) return\r\n\t\t\tformEl.resetFields();\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value={}\r\n\t\t};\r\n\t\t// const handleClose = (formEl: any) => {\r\n\t\t// \tformEl.resetFields();\r\n\t\t// };\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\tconsole.log(e)\r\n\t\t\tform.value.commitPersonId = e.uid;\r\n\t\t\tform.value.commitPersonName = e.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\t// handleClose,\r\n\t\t\tform,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tShow,\r\n\t\t\topenUser,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tdata,\r\n\t\t\tonUser,\r\n\t\t\truleFormRef,\r\n\t\t\trules,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue ---- a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (date 1660381719254) -@@ -5,19 +5,20 @@ - <el-row> - <el-col :span="11"> - <el-form-item label="责任部门" prop="dutyDepartmentId" size="default"> -- <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核指标" prop="value" size="default"> -- <el-input v-model.number="form.value" /> -+ <el-form-item label="考核指标" prop="examineValue" size="default"> -+ <el-input v-model.number="form.examineValue" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="制定人部门" prop="makerDepartmentId" size="default"> -- <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" -+ @current-change="makerDepartmentName" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -@@ -28,29 +29,30 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="上报值" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="上报值" prop="uploadValue" size="default"> -+ <el-input v-model="form.uploadValue"> - <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> - </el-input> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="上报时间" prop="makeDate" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="上报时间" prop="uploadDate" size="default"> -+ <el-date-picker v-model="form.uploadDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核结果" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -- <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> -- </el-input> -+ <el-form-item label="考核结果" prop="examineResult" size="default"> -+ <el-select v-model="form.examineResult" placeholder="请选择" style="width: 100%"> -+ <el-option label="合格" :value="1" /> -+ <el-option label="不合格" :value="2" /> -+ </el-select> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核人" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="考核人" prop="examinePersonName" size="default"> -+ <el-input v-model="form.examinePersonName"> - <template #append> <el-button :icon="Search" @click="openUser" /> </template> - </el-input> - </el-form-item> -@@ -58,8 +60,8 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核时间" prop="commitPersonName" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="考核时间" prop="examineDate" size="default"> -+ <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"></el-col> -@@ -67,7 +69,7 @@ - </el-form> - <template #footer> - <span class="dialog-footer"> -- -+ - <el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button> - <el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button> - </span> -@@ -87,12 +89,15 @@ - setup(props, { emit }) { - const ruleFormRef = ref<FormInstance>() - const form = ref({ -- dutyDepartmentId: '', ////责任部门/外键 -- makerDepartmentId: '', ////制定人部门/外键 -- commitPersonId: '', ////上报人/外键 -- commitPersonName: '', -- value: '', ////考核指标值 -- makeDate: '', ////制定日期 -+ "dutyDepartmentId": '', ////责任部门id/外键 -+ "examineDate": '', ////考核时间 -+ "examinePersonId": '', ////考核人ID/外键 -+ "examineResult": '', ////考核结果 1:合格 2:不合格 -+ "examineValue": '', ////考核指标 -+ "makeDate": '', ////制定日期 -+ "makerDepartmentId": '', ////制定部门/外键 -+ "uploadDate": '', ////上报时间 -+ "uploadValue": "", ////上报值 - }); - //部门 - const department = () => { -@@ -158,7 +163,7 @@ - trigger: 'blur', - }, - ], -- value: [ -+ examineValue: [ - { - required: true, - message: '考核指标值不能为空', -@@ -179,6 +184,13 @@ - ], - commitPersonName: [], - }); -+ const dutyName=(data:any)=>{ -+ form.value.dutyDepartmentName=data.depName -+ } -+ const makerDepartmentName=(data:any)=>{ -+ form.value.makerDepartmentName=data.depName -+ } -+ - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -214,8 +226,8 @@ - const data = ref(); - const onUser = (e: any) => { - console.log(e) -- form.value.commitPersonId = e.uid; -- form.value.commitPersonName = e.realName; -+ form.value.examinePersonId = e.uid; -+ form.value.examinePersonName = e.realName; - }; - return { - disabled, -@@ -238,6 +250,8 @@ - rules, - submitForm, - resetForm, -+ dutyName, -+ makerDepartmentName - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentReport/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"800px\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故快报\" prop=\"accidentExpressId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.accidentDepartmentName\" class=\"input-with-select\" />-->\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"accidentDepartmentId\" :disabled=\"true\" :data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\t\t\t\t:props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"occurrencePlace\" :disabled=\"true\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故类别\" prop=\"accidentType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人员伤亡事故\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"火灾爆炸事故\" value=\"火灾爆炸事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"危险品泄露事故\" value=\"危险品泄露事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"设备事故\" value=\"设备事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"工艺事故\" value=\"工艺事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故等级\" prop=\"accidentGrade\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentGrade\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特别重大\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大\" value=\"重大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大\" value=\"较大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般\" value=\"一般\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"经济损失\" prop=\"economicLoss\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.economicLoss\" :disabled=\"disabled\" placeholder=\"请填写经济损失\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"轻伤人数\" prop=\"minorInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.minorInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写轻伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"重伤人数\" prop=\"seriousInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.seriousInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写重伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"死亡人数\" prop=\"deathNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.deathNum\" :disabled=\"disabled\" placeholder=\"请填写死亡人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" placeholder=\"请填写事故原因\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"要求报告完成期限\" prop=\"reportDeadline\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.reportDeadline\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故级别\" prop=\"accidentLevel\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentLevel\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特大事故\" value=\"特大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大事故\" value=\"重大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大事故\" value=\"较大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般事故\" value=\"一般事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故延期申请\" prop=\"accidentDelayApply\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentDelayApply\" :disabled=\"disabled\" placeholder=\"请填写事故延期申请\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(直接分析)\" prop=\"comprehensiveAnalysisDirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisDirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(直接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(间接分析)\" prop=\"comprehensiveAnalysisIndirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisIndirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(间接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"整改措施\" prop=\"rectificationMeasures\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.rectificationMeasures\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写整改措施\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故处理\" prop=\"accidentHandling\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentHandling\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写事故处理\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写人\" prop=\"fillInUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.fillInUserName\" :disabled=\"true\"\r\n\t\t\t\t\t\t\t\t\t placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写日期\" prop=\"fillInTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.fillInTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"事故照片\">-->\r\n\t\t\t\t\t<!-- <el-input v-model=\"ruleForm.describe\" type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关人员笔录\" prop=\"relevantPersonnelRecords\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.relevantPersonnelRecords\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写相关人员笔录\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故状态\" prop=\"status\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.status\" :disabled=\"statusDisabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"处理中\" :value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"已处理\" :value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故分析会议纪要\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"其他材料\" prop=\"otherMaterials\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.otherMaterials\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写其他材料\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"Shows\" />\r\n\t\t<DailogSearchUserManger @SearchUser=\"onUser\" ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent,onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\taccidentExpressId:'',\r\n\r\n\t\t\taccidentType: '',\r\n\t\t\taccidentGrade: '',\r\n\t\t\teconomicLoss: '',\r\n\t\t\tminorInjuryNum: '',\r\n\t\t\tseriousInjuryNum: '',\r\n\t\t\tdeathNum: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\treportDeadline: '',\r\n\t\t\taccidentLevel: '',\r\n\t\t\taccidentDelayApply: '',\r\n\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\trectificationMeasures: '',\r\n\t\t\taccidentHandling: '',\r\n\t\t\tfillInUserUid: '',\r\n\t\t\tfillInUserName:'',\r\n\t\t\tfillInTime: '',\r\n\t\t\trelevantPersonnelRecords: '',\r\n\t\t\totherMaterials: '',\r\n\t\t\tfileList: [],\r\n\t\t\tstatus:''\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\tconst statusDisabled = ref(true)\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif(statusDisabledFlag.value=='first'){\r\n\t\t\t\truleForm.value.status = 1\r\n\t\t\t}else if(statusDisabledFlag.value=='second'){\r\n\t\t\t\truleForm.value.status = 2\r\n\t\t\t}\r\n\t\t\tif (title == '修改事故报告') {\r\n\t\t\t\tstatusDisabled.value = false\r\n\t\t\t}else {\r\n\t\t\t\tstatusDisabled.value = true\r\n\t\t\t}\r\n\t\t\tif (title == '查看事故报告' || title == '修改事故报告') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentReport(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\taccidentName.value = res.data.data.accidentName\r\n\t\t\t\t\t\t\taccidentDepartmentId.value = res.data.data.accidentDepartmentId\r\n\t\t\t\t\t\t\toccurrencePlace.value = res.data.data.occurrencePlace\r\n\t\t\t\t\t\t\toccurrenceTime.value = res.data.data.occurrenceTime\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst onCancel = (formEl: FormInstance | undefined) => {\r\n\t\t\tresetForm(formEl);\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\t\t];\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentExpressId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '快报不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentType: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故类别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentGrade: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故等级不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\teconomicLoss: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '经济损失不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\treportDeadline: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '要求报告完成期限不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentLevel: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故级别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisDirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(直接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisIndirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(间接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\trectificationMeasures: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '整改措施不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentHandling: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故处理不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写人不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'date',\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tstatus: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst accidentDepartmentId = ref()\r\n\t\tconst occurrencePlace = ref()\r\n\t\tconst occurrenceTime = ref()\r\n\t\tconst accidentName = ref()\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item[0]);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\taccidentName.value = item[0].accidentName\r\n\t\t\taccidentDepartmentId.value = item[0].accidentDepartmentId\r\n\t\t\toccurrencePlace.value = item[0].occurrencePlace\r\n\t\t\toccurrenceTime.value = item[0].occurrenceTime\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\tdelete ruleForm.value.accidentDepartmentId\r\n\t\t\tdelete ruleForm.value.occurrencePlace\r\n\t\t\tdelete ruleForm.value.occurrenceTime\r\n\r\n\t\t\tif (title == '新建事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.addAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\t//TODO 上传组件待定\r\n\t\t\t\t\t\truleForm.value.fileList = []\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.editAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\taccidentExpressId:'',\r\n\r\n\t\t\t\t\taccidentType: '',\r\n\t\t\t\t\taccidentGrade: '',\r\n\t\t\t\t\teconomicLoss: '',\r\n\t\t\t\t\tminorInjuryNum: '',\r\n\t\t\t\t\tseriousInjuryNum: '',\r\n\t\t\t\t\tdeathNum: '',\r\n\t\t\t\t\taccidentCause: '',\r\n\t\t\t\t\treportDeadline: '',\r\n\t\t\t\t\taccidentLevel: '',\r\n\t\t\t\t\taccidentDelayApply: '',\r\n\t\t\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\t\t\trectificationMeasures: '',\r\n\t\t\t\t\taccidentHandling: '',\r\n\t\t\t\t\tfillInUserUid: '',\r\n\t\t\t\t\tfillInUserName:'',\r\n\t\t\t\t\tfillInTime: '',\r\n\t\t\t\t\trelevantPersonnelRecords: '',\r\n\t\t\t\t\totherMaterials: '',\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\tstatus:''\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\t// ruleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value = {}\r\n\t\t\taccidentName.value = ''\r\n\t\t\taccidentDepartmentId.value = ''\r\n\t\t\toccurrencePlace.value = ''\r\n\t\t\toccurrenceTime.value = ''\r\n\t\t};\r\n\t\tconst handleChange = (val: number) => {\r\n\t\t\tconsole.log(val);\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\tconst onUser = (userItem: any) => {\r\n\t\t\truleForm.value.fillInUserUid = userItem[0].uid;\r\n\t\t\truleForm.value.fillInUserName = userItem[0].realName;\r\n\t\t};\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tonCancel,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tonUser,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\thandleChange,\r\n\t\t\tonSelectItem,\r\n\t\t\tnewTreeList,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tpropse,\r\n\t\t\tstatusDisabled,\r\n\t\t\taccidentDepartmentId,\r\n\t\t\toccurrencePlace,\r\n\t\t\toccurrenceTime,\r\n\t\t\taccidentName\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label {\r\n\theight: 100%;\r\n\ttext-align: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (date 1660381719259) -@@ -166,11 +166,11 @@ - /> - </el-form-item> - </el-col> -- <!-- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">--> -- <!-- <el-form-item label="事故照片">--> -- <!-- <el-input v-model="ruleForm.describe" type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <!-- </el-form-item>--> -- <!-- </el-col>--> -+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -+ <el-form-item label="事故照片"> -+ <uploaderImg :fileList="ruleForm.expressFileList" :disabled="true"></uploaderImg> -+ </el-form-item> -+ </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="相关人员笔录" prop="relevantPersonnelRecords"> - <el-input v-model="ruleForm.relevantPersonnelRecords" :disabled="disabled" -@@ -186,8 +186,9 @@ - </el-form-item> - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -- <el-form-item label="事故分析会议纪要" prop="fileList"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <el-form-item label="事故分析会议纪要"> -+ <uploaderFile :fileList="fileList" :systemName="'INCIDENT_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -221,6 +222,7 @@ - import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue'; - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import uploaderImg from '/@/components/uploaderImg/index.vue'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - import { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources'; - import { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration'; - import { goalManagementApi } from '/@/api/goalManagement'; -@@ -231,7 +233,8 @@ - AccidentName, - DailogSearchUserManger, - RegionsDialog, -- uploaderImg -+ uploaderImg, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false); -@@ -266,6 +269,8 @@ - const titles = ref(); - const disabled = ref(); - const statusDisabled = ref(true) -+ // 上传附件 -+ const fileList = ref([]); - // 打开弹窗 - const openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => { - isShowDialog.value = true; -@@ -291,18 +296,53 @@ - accidentDepartmentId.value = res.data.data.accidentDepartmentId - occurrencePlace.value = res.data.data.occurrencePlace - occurrenceTime.value = res.data.data.occurrenceTime -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ //事故照片 -+ if(ruleForm.value.expressFileList){ -+ for(var a = 0;a<ruleForm.value.expressFileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(ruleForm.value.expressFileList[a].fileName) -+ .then((res) => { -+ ruleForm.value.expressFileList[a].url = res.data -+ console.log('ruleForm',ruleForm) -+ }) -+ } -+ }else { -+ ruleForm.value.expressFileList = [] -+ } -+ -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 取消 - const onCancel = (formEl: FormInstance | undefined) => { - resetForm(formEl); - }; - //日期选择器 - const value1 = ref(''); -- // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ - // 可选择树 - const treeSelect = ref(); - //定义树形下拉框 -@@ -423,7 +463,9 @@ - delete ruleForm.value.accidentDepartmentId - delete ruleForm.value.occurrencePlace - delete ruleForm.value.occurrenceTime -- -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故报告') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -458,7 +500,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - //TODO 上传组件待定 -- ruleForm.value.fileList = [] - isShowDialog.value = false; - accidentManagementSystemApi() - .editAccidentReport(ruleForm.value) -@@ -512,12 +553,14 @@ - }; - } - }; -+ - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); - // ruleForm.value.accidentExpressId = item[0].id - ruleForm.value = {} -+ fileList.value = [] - accidentName.value = '' - accidentDepartmentId.value = '' - occurrencePlace.value = '' -@@ -629,7 +672,9 @@ - accidentDepartmentId, - occurrencePlace, - occurrenceTime, -- accidentName -+ accidentName, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" placeholder=\"请输入目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"考核指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<Dailog ref=\"openAdd\"></Dailog>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tvar arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\thandleClick,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttotal,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/index.vue b/src/views/goalManagement/safetyAssessment/index.vue ---- a/src/views/goalManagement/safetyAssessment/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/safetyAssessment/index.vue (date 1660381719262) -@@ -39,7 +39,7 @@ - <template #default="scope"> - <el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button> - <el-button link type="primary" size="default" :icon="View" @click="openD('修改', scope.row.id)">修改</el-button> -- <el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button> -+ <!--<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button>--> - </template> - </el-table-column> - </el-table> -@@ -209,4 +209,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetSettings/component/dailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"Shows\" @close=\"handleClose(ruleFormRef)\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" ref=\"ruleFormRef\" :rules=\"rules\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" prop=\"qName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" prop=\"indexNum\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" placeholder=\"请填写目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" prop=\"year\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.year\" maxlength=\"8\" placeholder=\"请填写年度\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" placeholder=\"请填写指标值\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"指标级别\" size=\"default\" prop=\"level\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.level\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t<el-option label=\"公司级\" :value=\"1\">公司级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"部门分厂级\" :value=\"2\">部门分厂级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"工段班组级\" :value=\"3\">工段班组级</el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"完成期限\" size=\"default\" prop=\"completeDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.completeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t<el-input v-model=\"form.memo\" size=\"default\" type=\"textarea\" />\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"titles == '查看目标设定' ? false : true\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue';\r\nimport screenfull from 'screenfull';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup(props, { emit }) {\r\n\t\tlet Shows = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tqName: '', //安全目标指标\r\n\t\t\tyear: '', //年度\r\n\t\t\tlevel: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttargetType: '', ////指标类型 1:年指标 2:月指标\r\n\t\t\tcompleteDate: '', ////完成期限\r\n\t\t\tdivideStatus: '2', ////分解状态 1:已分解 2:未分解\r\n\t\t\tvalue: '', ////指标值\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, value: any, id: number) => {\r\n\t\t\tShows.value = true;\r\n\t\t\ttitles.value = `${title}目标设定`;\r\n\t\t\tform.value.targetType = value;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '安全目标指标不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tindexNum: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '目标指标编号不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyear: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '年度不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '指标值不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tlevel:[],\r\n\t\t\tcompleteDate:[],\r\n\t\t\tmemo:[]\r\n\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tShows.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngAddOrupdata(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tShows.value = false;\r\n\t\t};\r\n\t\tconst handleClose = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\thandleClose,\r\n\t\t\ttitles,\r\n\t\t\tShows,\r\n\t\t\tform,\r\n\t\t\tfull,\r\n\t\t\tdisabled,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\trules,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/component/dailogAdd.vue b/src/views/goalManagement/targetSettings/component/dailogAdd.vue ---- a/src/views/goalManagement/targetSettings/component/dailogAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/targetSettings/component/dailogAdd.vue (date 1660381719265) -@@ -38,7 +38,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="完成期限" size="default" prop="completeDate"> -- <el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.completeDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -56,6 +63,7 @@ - </template> - <script lang="ts"> - import { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue'; -+// import { timeDate } from '/@/assets/index.ts'; - import screenfull from 'screenfull'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -@@ -90,11 +98,25 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.completeDate = timeC(form.value.completeDate); - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - //全屏 - const full = ref(false); - const toggleFullscreen = () => { -@@ -133,10 +155,9 @@ - trigger: 'change', - }, - ], -- level:[], -- completeDate:[], -- memo:[] -- -+ level: [], -+ completeDate: [], -+ memo: [], - }); - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { -@@ -158,7 +179,7 @@ - formEl.resetFields(); - } - }); -- formEl.resetFields(); -+ formEl.resetFields(); - } else { - console.log('error submit!', fields); - } -@@ -174,9 +195,11 @@ - formEl.resetFields(); - }; - return { -+ timeC, - openDialog, - handleClose, - titles, -+ // timeDate, - Shows, - form, - full, -@@ -195,4 +218,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/components/uploaderFile/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderFile/index.vue b/src/components/uploaderFile/index.vue -new file mode 100644 ---- /dev/null (date 1660381719299) -+++ b/src/components/uploaderFile/index.vue (date 1660381719299) -@@ -0,0 +1,178 @@ -+<template> -+ <el-upload -+ v-model:file-list="fileList" -+ multiple -+ :disabled="disabled" -+ class="upload-demo" -+ :http-request="uploadSectionFile" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" -+ > -+ <el-button type="primary">点击上传</el-button> -+ <template #tip> -+ <div class="el-upload__tip"> -+ 请上传文件 -+ <!--jpg/png files with a size less than 500KB.--> -+ </div> -+ <slot name="file"> -+ -+ </slot> -+ </template> -+ </el-upload> -+ -+ <!--<el-dialog v-model="dialogVisible">--> -+ <!--<img w-full :src="dialogImageUrl" alt="Preview Image" />--> -+ <!--</el-dialog>--> -+</template> -+<script lang="ts"> -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+ -+export default defineComponent({ -+ props: { -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, -+ }, -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); -+ -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ emit('deleteFile',uploadFiles); -+ }; -+ -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ goalManagementApi() -+ .searchFile(uploadFile.fileName) -+ .then((res) => { -+ window.open(res.data, "_blank"); -+ }) -+ dialogImageUrl.value = uploadFile.url!; -+ // dialogVisible.value = true; -+ }; -+ -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] -+ } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].name=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; -+ -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; -+ -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -+<style scoped> -+ .upload-demo{ -+ width: 100%; -+ } -+</style> -Index: src/views/goalManagement/targetEscalation/component/TypeDailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/TypeDailog.vue b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue -new file mode 100644 ---- /dev/null (date 1660381719315) -+++ b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue (date 1660381719315) -@@ -0,0 +1,271 @@ -+<template> -+ <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="50%" draggable :fullscreen="full" :close-on-click-modal="false"> -+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -+ <el-form ref="ruleFormRef" :model="form" size="default" :disabled="disabled" label-width="120px"> -+ <div v-if="titleName=='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="titleName!='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="typeScope"> -+ <el-row> -+ <el-col> -+ <el-form-item label="审批结果" prop="authorUid"> -+ <el-radio-group v-model="form.approveResult"> -+ <el-radio :label="0">不通过</el-radio> -+ <el-radio :label="1">通过</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="审批意见" prop="approveMemo"> -+ <el-input v-model="form.approveMemo" type="textarea" placeholder="请填写审批意见"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="是否完成" prop="complete"> -+ <el-radio-group v-model="form.approveStatus"> -+ <el-radio :label="3">是</el-radio> -+ <el-radio :label="2">否</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <div v-if="form.approveStatus==2"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ </div> -+ </el-form> -+ <template #footer> -+ <span class="dialog-footer"> -+ <el-button @click="resetForm" size="default">关闭</el-button> -+ <el-button size="default" type="primary" @click="submitForm">确定</el-button> -+ </span> -+ </template> -+ </el-dialog> -+ <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> -+</template> -+<script lang="ts"> -+import { ref, defineComponent } from 'vue'; -+import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+import { Search, FullScreen } from '@element-plus/icons-vue'; -+export default defineComponent({ -+ components: { DailogSearchUserManger }, -+ setup(props, { emit }) { -+ const dialogVisible = ref(false); -+ const form = ref({ -+ workName: '', // 审批名称 -+ title: '', //审批标题 -+ approvePersonId: '', -+ approvePersonName: '', -+ approveStatus: 2, -+ approveResult: '', -+ relateType: 1, -+ relateId: '', -+ }); -+ // 提交 -+ const submitForm = () => { -+ if (titleName.value == '发起审批') { -+ goalManagementApi() -+ .getworkApproveAdd(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } else if (titleName.value == '审批') { -+ goalManagementApi() -+ .getworkApproveUpdata(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ // 关闭 -+ const resetForm = () => { -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ const titleName = ref(); -+ const typeScope = ref(); -+ const disabledT = ref(false); -+ const disabled = ref(false); -+ const formUp=ref({ -+ workName:"", -+ title:"", -+ approvePersonName:"" -+ }) -+ // 打开弹窗 -+ const openDialog = (title: string, name: string, id: number,type:number) => { -+ dialogVisible.value = true; -+ titleName.value = title; -+ form.value.relateType=type -+ if (title == '发起审批') { -+ form.value.relateId = id; -+ typeScope.value = false; -+ } else if (title == '审批'||title == '查看审批') { -+ goalManagementApi() -+ .getworkApproveDetail(id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ form.value = res.data.data; -+ form.value.approveStatus="" -+ formUp.value.workName=form.value.workName -+ formUp.value.title=form.value.title -+ formUp.value.approvePersonName=form.value.approvePersonName -+ if (form.value.approvePersonName === form.value.submitPersonName) { -+ disabled.value = false; -+ } else { -+ disabled.value = true; -+ } -+ } -+ }); -+ typeScope.value = true; -+ disabledT.value = true; -+ } -+ }; -+ // 打开用户选择弹窗 -+ const userRef = ref(); -+ const openUser = () => { -+ userRef.value.openDailog(); -+ }; -+ const onUser = (val: any) => { -+ form.value.approvePersonId = val[0].uid; -+ form.value.approvePersonName = val[0].realName; -+ }; -+ //全屏 -+ const full = ref(false); -+ const toggleFullscreen = () => { -+ if (full.value == false) { -+ full.value = true; -+ } else { -+ full.value = false; -+ } -+ }; -+ return { -+ formUp, -+ onUser, -+ dialogVisible, -+ form, -+ disabledT, -+ submitForm, -+ resetForm, -+ titleName, -+ typeScope, -+ disabled, -+ openDialog, -+ userRef, -+ openUser, -+ full, -+ toggleFullscreen, -+ Search, -+ FullScreen, -+ }; -+ }, -+}); -+</script> -+<style> -+.el-row { -+ padding-bottom: 20px; -+} -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择岗位\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.pass\" placeholder=\"岗位名称\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"11\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"submitForm(ruleFormRef)\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm(ruleFormRef)\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"岗位名称\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[100, 200, 300, 400]\"\r\n\t\t\t\t\t:small=\"small\"\r\n\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t:background=\"background\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"400\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.id }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup(props,{emit}) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpass: '',\r\n\t\t\tcheckPass: '',\r\n\t\t});\r\n\t\t// 表格\r\n\t\tconst tableData = [\r\n\t\t\t{ id:1,\r\n\t\t\t\tdate: '2016-05-03',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid:2,\r\n\t\t\t\tdate: '2016-05-02',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\t\r\n\t\t\t\tid:3,\t\r\n\t\t\t\tdate: '2016-05-04',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\tid:4,\r\n\t\t\t\tdate: '2016-05-01',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t];\r\n\t\tconst pageSize4 = ref(100);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\tconsole.log(`${val} items per page`);\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\tconsole.log(`current page: ${val}`);\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t\tconst submitForm=()=>{\r\n\t\t\tlet obj=JSON.parse(JSON.stringify(dynamicTags.value))\r\n\t\t\temit(\"backNum\",obj[0])\r\n\t\t\tdialogVisible.value = false\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogSearch.vue b/src/views/goalManagement/TargetBook/component/DailogSearch.vue ---- a/src/views/goalManagement/TargetBook/component/DailogSearch.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/TargetBook/component/DailogSearch.vue (date 1660381719283) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -- <el-table-column align="center"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > -+ <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -59,7 +59,7 @@ - :disable-transitions="false" - @close="handleClose(tag)" - > -- {{ tag.id }} -+ {{ tag.date }} - </el-tag> - </div> - </el-col> -@@ -89,24 +89,24 @@ - // 表格 - const tableData = [ - { id:1, -- date: '2016-05-03', -+ date: '岗位1', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - id:2, -- date: '2016-05-02', -+ date: '岗位2', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -- { -- id:3, -- date: '2016-05-04', -+ { -+ id:3, -+ date: '岗位3', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { id:4, -- date: '2016-05-01', -+ date: '岗位4', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -Index: src/components/uploaderImg/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-upload\r\n\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\tlist-type=\"picture-card\"\r\n\t\t\t:on-preview=\"handlePictureCardPreview\"\r\n\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t:on-success=\"successFile\"\r\n\t\t\t:on-error=\"errorFile\"\r\n\t>\r\n\t\t<el-icon><Plus /></el-icon>\r\n\t</el-upload>\r\n\r\n\t<el-dialog v-model=\"dialogVisible\">\r\n\t\t<img w-full :src=\"dialogImageUrl\" alt=\"Preview Image\" />\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\n\timport { ref,defineComponent } from 'vue'\r\n\timport { Plus } from '@element-plus/icons-vue'\r\n\timport type { UploadProps, UploadUserFile } from 'element-plus'\r\n\r\n\texport default defineComponent({\r\n\t\tprops: {\r\n\t\t\t// svg 图标组件名字\r\n\t\t\tfileList: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t},\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tPlus\r\n\t\t},\r\n\t\tsetup() {\r\n\r\n\t\t\tconst dialogImageUrl = ref('')\r\n\t\t\tconst dialogVisible = ref(false)\r\n\r\n\t\t\tconst handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\t\tconsole.log(uploadFile, uploadFiles)\r\n\t\t\t}\r\n\r\n\t\t\tconst handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\t\tdialogImageUrl.value = uploadFile.url!\r\n\t\t\t\tdialogVisible.value = true\r\n\t\t\t}\r\n\r\n\t\t\tconst successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(response, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\t\t\tconst errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(error, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\r\n\r\n\t\t\treturn {\r\n\t\t\t\tdialogImageUrl,\r\n\t\t\t\tdialogVisible,\r\n\t\t\t\thandleRemove,\r\n\t\t\t\thandlePictureCardPreview,\r\n\t\t\t\tsuccessFile,\r\n\t\t\t\terrorFile\r\n\t\t\t};\r\n\t\t},\r\n\t});\r\n</script> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderImg/index.vue b/src/components/uploaderImg/index.vue ---- a/src/components/uploaderImg/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/components/uploaderImg/index.vue (date 1660381719286) -@@ -1,12 +1,13 @@ - <template> - <el-upload -- v-model:file-list="fileList" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- list-type="picture-card" -- :on-preview="handlePictureCardPreview" -- :on-remove="handleRemove" -- :on-success="successFile" -- :on-error="errorFile" -+ v-model:file-list="fileList" -+ :disabled="disabled" -+ :http-request="uploadSectionFile" -+ list-type="picture-card" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" - > - <el-icon><Plus /></el-icon> - </el-upload> -@@ -16,50 +17,141 @@ - </el-dialog> - </template> - <script lang="ts"> -- import { ref,defineComponent } from 'vue' -- import { Plus } from '@element-plus/icons-vue' -- import type { UploadProps, UploadUserFile } from 'element-plus' -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; - -- export default defineComponent({ -- props: { -- // svg 图标组件名字 -- fileList: { -- type: Array, -- }, -+export default defineComponent({ -+ props: { -+ // svg 图标组件名字 -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, - }, -- components: { -- Plus -- }, -- setup() { -- -- const dialogImageUrl = ref('') -- const dialogVisible = ref(false) -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); - -- const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -- console.log(uploadFile, uploadFiles) -- } -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ }; - -- const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -- dialogImageUrl.value = uploadFile.url! -- dialogVisible.value = true -- } -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ dialogImageUrl.value = uploadFile.url!; -+ dialogVisible.value = true; -+ }; - -- const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(response, uploadFile,uploadFiles) -- } -- const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(error, uploadFile,uploadFiles) -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] - } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; - -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; - -- return { -- dialogImageUrl, -- dialogVisible, -- handleRemove, -- handlePictureCardPreview, -- successFile, -- errorFile -- }; -- }, -- }); --</script> -\ No newline at end of file -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -Index: src/views/goalManagement/TargetBook/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.jobId\" placeholder=\"请选择岗位\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openSearch\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"index\" label=\"序号\" align=\"center\" width=\"70\" />\r\n\t\t\t\t<el-table-column property=\"jobId\" align=\"center\" label=\"岗位\" sortable />\r\n\t\t\t\t<el-table-column property=\"signDate\" align=\"center\" label=\"责任书签订日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column property=\"extraFile\" align=\"center\" label=\"附件\" sortable />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" style=\"width: 300px\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearch ref=\"openUser\"></DailogSearch>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearch from './component/DailogSearch.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearch },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tjobId: '', ////岗位号/外键\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.jobId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.jobId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.jobId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\topenSearch,\r\n\t\t\ttimeDate,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/index.vue b/src/views/goalManagement/TargetBook/index.vue ---- a/src/views/goalManagement/TargetBook/index.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/TargetBook/index.vue (date 1660381719289) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.jobId" placeholder="请选择岗位"> -+ <el-input v-model="jobName" placeholder="请选择岗位"> - <template #append> <el-button :icon="Search" @click="openSearch" /> </template - ></el-input> - </el-form-item> -@@ -61,7 +61,7 @@ - /> - </div> - <DailogAdd ref="openAdd" @navAddorUpdata="onAddorUpdata"></DailogAdd> -- <DailogSearch ref="openUser"></DailogSearch> -+ <DailogSearch ref="openUser" @backNum="IdNumber"></DailogSearch> - </div> - </div> - </template> -@@ -88,6 +88,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.jobId = ''; -+ jobName.value="" - listApi(); - }; - const listApi = () => { -@@ -116,6 +117,11 @@ - const onAddorUpdata = () => { - listApi(); - }; -+ const jobName=ref() -+ const IdNumber=(val:any)=>{ -+ ruleForm.jobId=val.id -+ jobName.value=val.date -+ } - // 表格 - const tableData = ref(); - const currentPage4 = ref(); -@@ -222,6 +228,7 @@ - openUser.value.openDailog(); - }; - return { -+ IdNumber, - ruleForm, - resetForm, - listApi, -@@ -278,4 +285,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"岗位\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.jobId\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书签订日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.signDate\" style=\"width:100%\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择日期时间\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书附件\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"IdNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\textraFile: '666', //责任书附件\r\n\t\t\tjobId: '', //岗位\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value =`${title}目标责任书`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.gettargetDutyfileInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoAddorUpdata(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\tconst IdNumber=(val:any)=>{\r\n form.value.jobId=val.id\r\n\t\t}\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tIdNumber,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\topenDailog,\r\n\t\t\tdaiInpt,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShows,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogAdd.vue b/src/views/goalManagement/TargetBook/component/DailogAdd.vue ---- a/src/views/goalManagement/TargetBook/component/DailogAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/goalManagement/TargetBook/component/DailogAdd.vue (date 1660381719292) -@@ -1,11 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" :disabled="disabled" label-width="120px"> - <el-row> - <el-col :span="24"> - <el-form-item label="岗位" size="default"> -- <el-input v-model="form.jobId" placeholder="请选择"> -+ <el-input v-model="form.jobName" placeholder="请选择"> - <template #append> <el-button :icon="Search" @click="daiInpt" /> </template - ></el-input> - </el-form-item> -@@ -14,7 +14,7 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书签订日期" size="default"> -- <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> -+ <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> - </el-form-item> - </el-col> - </el-row> -@@ -28,22 +28,8 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -64,8 +50,9 @@ - import { ElMessage, ElMessageBox } from 'element-plus'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearch }, -+ components: { DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const form = ref({ -@@ -88,14 +75,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.signDate=timeC(form.value.signDate) -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 提交 - const submitForm = () => { - dialogVisible.value = false; -+ delete form.value.jobName - goalManagementApi() - .gettargetDutyfileInfoAddorUpdata(form.value) - .then((res) => { -@@ -127,6 +170,7 @@ - extraFile: '666', //责任书附件 - jobId: '', //岗位 - }; -+ fileList.value = [] - }; - // 安全目标指标弹窗 - const Shows = ref(); -@@ -135,17 +179,10 @@ - }; - const IdNumber=(val:any)=>{ - form.value.jobId=val.id -+ form.value.jobName=val.date - } - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -+ const fileList = ref([ - ]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { -@@ -176,6 +213,7 @@ - } - }; - return { -+ timeC, - IdNumber, - dialogVisible, - form, -@@ -195,6 +233,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -203,4 +243,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"769px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"drillName\">\r\n <el-input v-model=\"ruleForm.drillName\" placeholder=\"请填写演练名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input v-model=\"ruleForm.drillAddress\" placeholder=\"请填写演练地点\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.departmentId\"\r\n :data=\"data\"\r\n check-strictly\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"1\"></el-option>\r\n <el-option label=\"桌面\" value=\"2\"></el-option>\r\n <el-option label=\"专项\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"planName\" >\r\n <el-input\r\n v-model=\"ruleForm.planName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.makingPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.drillPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <!--<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n <!--<el-form-item label=\"修改时间\" prop=\"gmtModitify\">-->\r\n <!--<el-date-picker v-model=\"ruleForm.gmtModitify\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />-->\r\n <!--</el-form-item>-->\r\n <!--</el-col>-->\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserName\">\r\n <el-input v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\" disabled></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.makingDepartmentId\"\r\n check-strictly\r\n :data=\"data\"\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"userListString\" >\r\n <el-input\r\n v-model=\"ruleForm.userListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(0)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(1)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <!--<el-upload-->\r\n <!--v-model:file-list=\"fileList\"-->\r\n <!--class=\"upload-demo\"-->\r\n <!--action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"-->\r\n <!--:on-change=\"handleChange\"-->\r\n <!-->-->\r\n <!--<el-button type=\"primary\"-->\r\n <!-->点击上传</el-button>-->\r\n <!--<template #tip>-->\r\n <!--<div class=\"el-upload__tip\">-->\r\n <!--添加相关附件-->\r\n <!--</div>-->\r\n <!--</template>-->\r\n <!--</el-upload>-->\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\" />\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"SearchUser\" />\r\n <DailogSearchUser ref=\"userFZRef\" @SearchUser=\"SearchFZUser\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport type {\r\n UploadUserFile,\r\n FormInstance,\r\n} from 'element-plus'\r\nimport { ElMessage } from 'element-plus';\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport {releaseDrillPlanApi} from \"/@/api/contingencyManagement/emergencyDrillPlan\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nimport { Session } from '/@/utils/storage';\r\n\r\nexport default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingUserName: '', //计划制定人Name\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n ruleForm.value.makingUserUid = Session.get('uid');\r\n ruleForm.value.makingUserName = Session.get('realName');\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看应急演练计划发布' || title == '修改应急演练计划发布') {\r\n releaseDrillPlanApi()\r\n .seeReleaseDrillPlan(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.userListString=''\r\n ruleForm.value.chargeUserListString=''\r\n for(var a = 0;a<res.data.data.userList.length;a++){\r\n if(res.data.data.userList[a].type==1){\r\n ruleForm.value.userListString += res.data.data.userList[a].userName+';'\r\n }\r\n // if(res.data.data.userList[a].type==2){\r\n // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'\r\n // }\r\n }\r\n // alert(res.data.data.chargeUserList.length)\r\n for(var a = 0;a<res.data.data.chargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ]\r\n //部门树\r\n const department = () => {\r\n goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = ref()\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n value: 'depId',\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n // 表单提交验证必填项\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)\r\n delete ruleForm.value.planName\r\n delete ruleForm.value.chargeUserListString\r\n delete ruleForm.value.userListString\r\n delete ruleForm.value.chargeUserList\r\n delete ruleForm.value.gmtModitify\r\n if (title == '新建应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .addReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n }\r\n else if (title == '修改应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .editReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n }\r\n }\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n formEl.resetFields();\r\n };\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt = () => {\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.planId=e.id\r\n ruleForm.value.planName=e.name\r\n };\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const userFZRef = ref();\r\n //打开演练人员和演练负责人弹窗 type 0 演练人员 1 演练负责人\r\n const openUser = (type:number) => {\r\n if(type==0){\r\n userRef.value.openDailog(0);\r\n }else if(type==1){\r\n userFZRef.value.openDailog(0);\r\n }\r\n };\r\n const SearchUser = (e:any) => {\r\n console.log('演练人员',e)\r\n ruleForm.value.userListString=''\r\n ruleForm.value.userList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.userList.push(\r\n {\r\n type: 1,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.userListString+=e[a].realName+';'\r\n }\r\n\r\n };\r\n const SearchFZUser = (e:any) => {\r\n console.log('演练负责人员',e[0].userName)\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.chargeUserList=[]\r\n // ruleForm.value.chargeUserList = []\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.chargeUserList.push(\r\n {\r\n type: 2,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.chargeUserListString+=e[a].realName+';'\r\n }\r\n };\r\n // 计划定制日期\r\n const datetime = ref('');\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n isShowDialog,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n department,\r\n propse,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n ruleFormRef,\r\n submitForm,\r\n openUser,\r\n userRef,\r\n datetime,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n titles,\r\n disabled,\r\n resetForm,\r\n emit,\r\n onUser,\r\n userFZRef,\r\n SearchUser,\r\n SearchFZUser\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea{\r\n height: 168px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 168px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n//多行文本框\r\n.textarea{\r\n height: 70px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 70px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue ---- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (date 1660381719295) -@@ -162,20 +162,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <!--<el-upload--> -- <!--v-model:file-list="fileList"--> -- <!--class="upload-demo"--> -- <!--action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"--> -- <!--:on-change="handleChange"--> -- <!-->--> -- <!--<el-button type="primary"--> -- <!-->点击上传</el-button>--> -- <!--<template #tip>--> -- <!--<div class="el-upload__tip">--> -- <!--添加相关附件--> -- <!--</div>--> -- <!--</template>--> -- <!--</el-upload>--> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -215,12 +203,13 @@ - import {releaseDrillPlanApi} from "/@/api/contingencyManagement/emergencyDrillPlan"; - import {goalManagementApi} from "/@/api/goalManagement"; - import { Session } from '/@/utils/storage'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -281,14 +270,35 @@ - for(var a = 0;a<res.data.data.chargeUserList.length;a++){ - ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';' - } -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -318,6 +328,9 @@ - }); - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList) - delete ruleForm.value.planName - delete ruleForm.value.chargeUserListString -@@ -412,6 +425,7 @@ - } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; -+ fileList.value=[] - if (!formEl) return; - ruleForm.value = { - makingPlanDate: '', // 计划制定日期 -@@ -473,7 +487,6 @@ - ) - ruleForm.value.userListString+=e[a].realName+';' - } -- - }; - const SearchFZUser = (e:any) => { - console.log('演练负责人员',e[0].userName) -@@ -532,7 +545,9 @@ - onUser, - userFZRef, - SearchUser, -- SearchFZUser -+ SearchFZUser, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -573,4 +588,4 @@ - margin-right: 0; - border-radius: 4px 4px 0 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/components/equipmentDailog/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\" draggable :title=\"titles\" width=\"60%\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" :rules=\"rules\" :disabled=\"disabled\" label-width=\"120px\" class=\"formType\">\r\n\t\t\t<el-form-item label=\"装置设施名称\" size=\"default\" prop=\"qName\">\r\n\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写装置设施名称\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施位号\" size=\"default\" prop=\"positionNum\">\r\n\t\t\t\t<el-input disabled v-model=\"form.positionNum\" placeholder=\"请填写装置设施位号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施用途\" size=\"default\" prop=\"qUsage\">\r\n\t\t\t\t<el-input v-model=\"form.qUsage\" placeholder=\"请填写装置设施用途\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施型号\" size=\"default\" prop=\"model\">\r\n\t\t\t\t<el-input v-model=\"form.model\" placeholder=\"请填写装置设施型号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"类型/类别外键\" size=\"default\" prop=\"equipmentTypeName\">\r\n\t\t\t\t<el-input v-model=\"form.equipmentTypeName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"opencategory\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<!-- <el-form-item label=\"区域名称\" size=\"default\">\r\n <el-input v-model=\"form.name\" placeholder=\"请选择\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openRegion\"></el-button>\r\n </template>\r\n </el-input>\r\n </el-form-item> -->\r\n\t\t\t<el-form-item label=\"单位部门\" size=\"default\" prop=\"departmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.departmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"设置部位\" size=\"default\" prop=\"setPart\">\r\n\t\t\t\t<el-input v-model=\"form.setPart\" placeholder=\"请填写设置部位\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生产日期\" size=\"default\" prop=\"produceTime\">\r\n\t\t\t\t<el-date-picker v-model=\"form.produceTime\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用期限(天)\" size=\"default\" prop=\"useEndDay\">\r\n\t\t\t\t<el-input v-model=\"form.useEndDay\" placeholder=\"请填写使用期限\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生命周期\" size=\"default\" prop=\"lifeCycle\">\r\n\t\t\t\t<el-select v-model=\"form.lifeCycle\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"已投用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"库存中\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"3\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"投用日期\" size=\"default\" prop=\"useDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.useDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"维修状态\" size=\"default\" prop=\"repairStatus\">\r\n\t\t\t\t<el-select v-model=\"form.repairStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"维修中\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"已修好\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用状态\" size=\"default\" prop=\"stopStatus\">\r\n\t\t\t\t<el-select v-model=\"form.stopStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"停用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"在用\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"维修\" :value=\"3\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"4\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检查日期\" size=\"default\" prop=\"previousCheckDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousCheckDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检测日期\" size=\"default\" prop=\"previousTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.previousTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次保养日期\" size=\"default\" prop=\"previousTakecareDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousTakecareDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检查日期\" size=\"default\" prop=\"nextCheckDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextCheckDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检测日期\" size=\"default\" prop=\"nextTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次保养日期\" size=\"default\" prop=\"nextTakecareDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTakecareDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人\" size=\"default\" prop=\"leadingPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.leadingPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(1)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人部门\" size=\"default\" prop=\"leadingPersonDepartmentId\">\r\n\t\t\t\t<el-tree-select\r\n\t\t\t\t\tv-model=\"form.leadingPersonDepartmentId\"\r\n\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\tcheck-strictly=\"true\"\r\n\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"供应商\" size=\"default\" prop=\"supplyName\">\r\n\t\t\t\t<el-input v-model=\"form.supplyName\" placeholder=\"请填写供应商\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用说明\" size=\"default\" prop=\"useMemo\">\r\n\t\t\t\t<el-input v-model=\"form.useMemo\" placeholder=\"请填写使用说明\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检查\" size=\"default\" prop=\"isNeedCheck\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedCheck\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查周期\" size=\"default\" prop=\"checkCycle\">\r\n\t\t\t\t<el-input v-model=\"form.checkCycle\" placeholder=\"请填写检查周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查提前提醒\" size=\"default\" prop=\"checkWarn\">\r\n\t\t\t\t<el-input v-model=\"form.checkWarn\" placeholder=\"请填写检查提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检测\" size=\"default\" prop=\"isNeedTest\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTest\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测周期\" size=\"default\" prop=\"testCycle\">\r\n\t\t\t\t<el-input v-model=\"form.testCycle\" placeholder=\"请填写检测周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测提前提醒\" size=\"default\" prop=\"testWarn\">\r\n\t\t\t\t<el-input v-model=\"form.testWarn\" placeholder=\"请填写检测提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否保养\" size=\"default\" prop=\"isNeedTakecare\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTakecare\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查内容\" size=\"default\" prop=\"checkContent\">\r\n\t\t\t\t<el-input v-model=\"form.checkContent\" placeholder=\"请填写检查内容\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责部门\" size=\"default\" prop=\"leadingDepartmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.leadingDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查指标\" size=\"default\" prop=\"checkPoint\">\r\n\t\t\t\t<el-input v-model=\"form.checkPoint\" placeholder=\"请填写检查指标\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"预警值\" size=\"default\" prop=\"alertNum\">\r\n\t\t\t\t<el-input v-model=\"form.alertNum\" placeholder=\"请填写预警值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"联锁值\" size=\"default\" prop=\"lockNum\">\r\n\t\t\t\t<el-input v-model=\"form.lockNum\" placeholder=\"请填写联锁值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用理由\" size=\"default\" prop=\"stopReason\">\r\n\t\t\t\t<el-input v-model=\"form.stopReason\" placeholder=\"请填写停用理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用后措施\" size=\"default\" prop=\"afterStopStep\">\r\n\t\t\t\t<el-input v-model=\"form.afterStopStep\" placeholder=\"请填写停用后措施\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际停用日期\" size=\"default\" prop=\"actualStopDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.actualStopDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交人\" size=\"default\" prop=\"stopSubmitPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.stopSubmitPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(2)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交日期\" size=\"default\" prop=\"stopSubmitDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.stopSubmitDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复理由\" size=\"default\" prop=\"recoveryReason\">\r\n\t\t\t\t<el-input v-model=\"form.recoveryReason\" placeholder=\"请填写恢复理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复填报日期\" size=\"default\" prop=\"recoverySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.recoverySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际恢复日期\" size=\"default\" prop=\"actualRecoveryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualRecoveryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废理由\" size=\"default\" prop=\"destoryReason\">\r\n\t\t\t\t<el-input v-model=\"form.destoryReason\" placeholder=\"请填写报废理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废填报日期\" size=\"default\" prop=\"destorySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.destorySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际报废日期\" size=\"default\" prop=\"actualDestoryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualDestoryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"设备保养\" name=\"first\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openMaintenance('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.takecareDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareMemo\" label=\"保养情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonName\" label=\"保养负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareDate\" :formatter=\"timeDate\" label=\"保养日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonDepartmentName\" label=\"保养负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备检测\" name=\"second\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openDetect('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.testDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonName\" label=\"检测人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testDate\" :formatter=\"timeDate\" label=\"检测日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonDepartmentName\" label=\"检测人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testMemo\" label=\"检测内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"检测结果\" >\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==1\">成功</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==2\">失败</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testStatus\" label=\"检测状态\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteB(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备维修\" name=\"third\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openRepair('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.repaireDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"exceptionInfo\" label=\"设施异常项\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"维修状态\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==1\">维修中</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==2\">已修好</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairMemo\" label=\"维修情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonName\" label=\"维修负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonDepartmentName\" label=\"维修负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairStartDate\" :formatter=\"timeDate\" label=\"维修开始日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairEndDate\" :formatter=\"timeDate\" label=\"维修结束日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteC(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"检查标准设置\" name=\"fourth\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openStandard('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.checkStandardeDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"indexNum\" label=\"序号\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkContent\" label=\"检查内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkTarget\" label=\"检查指标\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"unit\" label=\"单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkPart\" label=\"巡检部位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"rate\" label=\"频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteD(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"巡检记录\" size=\"default\" name=\"five\">\r\n\t\t\t\t<el-table :data=\"name\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"name\" label=\"任务编号\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"任务名称\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"点位类型\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"检查频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" :formatter=\"timeDate\" label=\"巡检时间\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"巡检人\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"保养维修标准\" name=\"six\" v-if=\"Dailogtype\">\r\n\t\t\t\t<el-upload\r\n\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\tmultiple\r\n\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t<div class=\"el-upload__tip\"></div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-upload>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<categoryDailog ref=\"categoryShow\"></categoryDailog>\r\n\t<categoryDailog ref=\"categoryShow\" @typeId=\"Tid\"></categoryDailog>\r\n\t<regionDailog ref=\"regionShow\"></regionDailog>\r\n\t<DailogSearchUser ref=\"UserShow\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t<maintenanceDailog ref=\"maintenanceShow\" @onMain=\"main\"></maintenanceDailog>\r\n\t<detectDailog ref=\"detectShow\" @onDelect=\"delect\"></detectDailog>\r\n\t<repairDailog ref=\"repairShow\" @onRepair=\"Repair\"></repairDailog>\r\n\t<standardDailog ref=\"standardShow\" @onStand=\"Stand\"></standardDailog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport categoryDailog from './categoryDailog.vue';\r\nimport regionDailog from './regionDailog.vue';\r\nimport maintenanceDailog from './maintenanceDailog.vue';\r\nimport detectDailog from './detectDailog.vue';\r\nimport repairDailog from './repairDailog.vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport standardDailog from './standardDailog.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox, FormInstance, FormRules } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { facilityManagementApi } from '/@/api/facilityManagement';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tsupplyName: '',\r\n\r\n\t\t\tnextTestDate: '',\r\n\r\n\t\t\tqUsage: '',\r\n\r\n\t\t\tdepartmentId: '',\r\n\r\n\t\t\tproduceTime: '',\r\n\r\n\t\t\tactualStopDate: '',\r\n\r\n\t\t\ttakecareDetailList: [],\r\n\r\n\t\t\tinfoType: '',\r\n\r\n\t\t\tleadingDepartmentId: '',\r\n\r\n\t\t\tuseEndDay: '',\r\n\r\n\t\t\tpreviousTakecareDate: '',\r\n\r\n\t\t\tpreviousCheckDate: '',\r\n\r\n\t\t\tmodel: '',\r\n\r\n\t\t\tstopStatus: '',\r\n\r\n\t\t\ttestWarn: '',\r\n\r\n\t\t\tstopSubmitDate: '',\r\n\r\n\t\t\trepairStatus: '',\r\n\r\n\t\t\ttakecareStardardeDetailList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfilePath: '123',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\r\n\t\t\tnextCheckDate: '',\r\n\r\n\t\t\tcheckCycle: '',\r\n\r\n\t\t\tcheckPoint: '',\r\n\r\n\t\t\tleadingPersonId: '',\r\n\t\t\tleadingPersonName: '',\r\n\r\n\t\t\tqName: '',\r\n\r\n\t\t\tnextTakecareDate: '',\r\n\r\n\t\t\tsetPart: '',\r\n\r\n\t\t\tcheckStandardeDetailList: [],\r\n\r\n\t\t\tactualDestoryDate: '',\r\n\r\n\t\t\tisNeedTest: '',\r\n\r\n\t\t\talertNum: '',\r\n\r\n\t\t\tcheckContent: '',\r\n\r\n\t\t\tuseMemo: '',\r\n\r\n\t\t\tpreviousTestDate: '',\r\n\r\n\t\t\tisNeedTakecare: '',\r\n\r\n\t\t\tdestoryReason: '',\r\n\r\n\t\t\tcheckDetailList: [],\r\n\r\n\t\t\tpositionNum: '',\r\n\r\n\t\t\ttestCycle: '',\r\n\r\n\t\t\trecoveryReason: '',\r\n\r\n\t\t\tisNeedCheck: '',\r\n\r\n\t\t\tactualRecoveryDate: '',\r\n\r\n\t\t\tleadingPersonDepartmentId: '',\r\n\r\n\t\t\tstopReason: '',\r\n\r\n\t\t\tdestorySubmitDate: '',\r\n\r\n\t\t\ttestDetailList: [],\r\n\r\n\t\t\tcheckWarn: '',\r\n\r\n\t\t\trepaireDetailList: [],\r\n\r\n\t\t\tequipmentTypeId: '',\r\n\r\n\t\t\tuseDate: '',\r\n\r\n\t\t\trecoverySubmitDate: '',\r\n\r\n\t\t\tlockNum: '',\r\n\r\n\t\t\tstopSubmitPersonId: '',\r\n\t\t\tstopSubmitPersonName: '',\r\n\t\t\tafterStopStep: '',\r\n\r\n\t\t\tlifeCycle: '',\r\n\r\n\t\t\tdelCheckStandardeDetails: '',\r\n\r\n\t\t\tdelTakecareStardardeDetails: '',\r\n\r\n\t\t\tdelTakecareDetails: '',\r\n\r\n\t\t\tdelRepaireDetails: '',\r\n\r\n\t\t\tdelTestDetails: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst titleT = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst Dailogtype = ref(false);\r\n\t\tconst openDailog = (title: string, type: boolean, id: number, num: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitleT.value = title;\r\n\t\t\tdepartment();\r\n\t\t\tDailogtype.value = type;\r\n\t\t\tif (num == 0) {\r\n\t\t\t\ttitles.value = `${title}仪表信息`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 1) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 2) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t}\r\n\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t.getequipmentInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [],\r\n\t\t\tpositionNum: [],\r\n\t\t\tqUsage: [],\r\n\t\t\tmodel: [],\r\n\t\t\tequipmentTypeId: [],\r\n\t\t\tequipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],\r\n\t\t\tdepartmentId: [],\r\n\t\t\tsetPart: [],\r\n\t\t\tproduceTime: [],\r\n\t\t\tuseEndDay: [],\r\n\t\t\tlifeCycle: [],\r\n\t\t\tuseDate: [],\r\n\t\t\trepairStatus: [],\r\n\t\t\tstopStatus: [],\r\n\t\t\tpreviousCheckDate: [],\r\n\t\t\tpreviousTestDate: [],\r\n\t\t\tpreviousTakecareDate: [],\r\n\t\t\tnextCheckDate: [],\r\n\t\t\tnextTestDate: [],\r\n\t\t\tnextTakecareDate: [],\r\n\t\t\tleadingPersonName: [],\r\n\t\t\tleadingPersonDepartmentId: [],\r\n\t\t\tsupplyName: [],\r\n\t\t\tuseMemo: [],\r\n\t\t\tisNeedCheck: [],\r\n\t\t\tcheckCycle: [],\r\n\t\t\tcheckWarn: [],\r\n\t\t\tisNeedTest: [],\r\n\t\t\ttestCycle: [],\r\n\t\t\ttestWarn: [],\r\n\t\t\tisNeedTakecare: [],\r\n\t\t\tcheckContent: [],\r\n\t\t\tleadingDepartmentId: [],\r\n\t\t\tcheckPoint: [],\r\n\t\t\talertNum: [],\r\n\t\t\tlockNum: [],\r\n\t\t\tstopReason: [],\r\n\t\t\tafterStopStep: [],\r\n\t\t\tactualStopDate: [],\r\n\t\t\tstopSubmitPersonName: [],\r\n\t\t\tstopSubmitDate: [],\r\n\t\t\trecoveryReason: [],\r\n\t\t\trecoverySubmitDate: [],\r\n\t\t\tactualRecoveryDate: [],\r\n\t\t\tdestoryReason: [],\r\n\t\t\tdestorySubmitDate: [],\r\n\t\t\tactualDestoryDate: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tform.value.delTakecareDetails = deleteAId.value.toString();\r\n\t\t\t\t\tform.value.delTestDetails = deleteBId.value.toString();\r\n\t\t\t\t\tform.value.delRepaireDetails = deleteCId.value.toString();\r\n\t\t\t\t\tform.value.delCheckStandardeDetails = deleteDId.value.toString();\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tdelete form.value.equipmentTypeName;\r\n\t\t\t\t\tdelete form.value.departmentName;\r\n\t\t\t\t\tdelete form.value.leadingPersonDepartmentName;\r\n\t\t\t\t\tdelete form.value.leadingDepartmentName;\r\n\t\t\t\t\tif (titleT.value == '新建') {\r\n\t\t\t\t\t\tdelete form.value.id;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t\t.getequipmentInfoAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t\tdialogVisible.value = false;\r\n\t\t};\r\n\t\tconst activeName = ref('first');\r\n\t\tconst index = ref<any>();\r\n\t\tconst categoryShow = ref();\r\n\t\tconst opencategory = () => {\r\n\t\t\tcategoryShow.value.openDailog();\r\n\t\t};\r\n\t\tconst regionShow = ref();\r\n\t\tconst openRegion = () => {\r\n\t\t\tregionShow.value.openDailog();\r\n\t\t};\r\n\t\tconst UserShow = ref();\r\n\t\tconst openUser = (type: any) => {\r\n\t\t\tUserShow.value.openDailog(type);\r\n\t\t};\r\n\t\tconst maintenanceShow = ref();\r\n\t\tconst openMaintenance = (title: string, data: any) => {\r\n index.value = form.value.takecareDetailList.indexOf(data);\r\n\t\t\tmaintenanceShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst detectShow = ref();\r\n\t\tconst openDetect = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.testDetailList.indexOf(data);\r\n\t\t\tdetectShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst repairShow = ref();\r\n\t\tconst openRepair = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.repaireDetailList.indexOf(data);\r\n\t\t\trepairShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst standardShow = ref();\r\n\t\tconst openStandard = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.checkStandardeDetailList.indexOf(data);\r\n\t\t\tstandardShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteAId = ref([]);\r\n\t\tconst deleteBId = ref([]);\r\n\t\tconst deleteCId = ref([]);\r\n\t\tconst deleteDId = ref([]);\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.takecareDetailList.splice(form.value.takecareDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteAId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteB = (tag: any) => {\r\n\t\t\tform.value.testDetailList.splice(form.value.testDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteBId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteC = (tag: any) => {\r\n\t\t\tform.value.repaireDetailList.splice(form.value.repaireDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteCId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteD = (tag: any) => {\r\n\t\t\tform.value.checkStandardeDetailList.splice(form.value.checkStandardeDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteDId.value.push(tag.id);\r\n\t\t};\r\n\t\t// 回传\r\n\t\tconst main = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.takecareDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.takecareDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst delect = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.testDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.testDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Repair = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.repaireDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.repaireDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Stand = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.checkStandardeDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.checkStandardeDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst userId = (val: any, type: number) => {\r\n\t\t\tconsole.log(val, type);\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.leadingPersonId = val.uid;\r\n\t\t\t\tform.value.leadingPersonName = val.realName;\r\n\t\t\t} else if (type == 2) {\r\n\t\t\t\tform.value.stopSubmitPersonId = val.uid;\r\n\t\t\t\tform.value.stopSubmitPersonName = val.realName;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Tid = (data: any) => {\r\n\t\t\tform.value.equipmentTypeId = data.id;\r\n\t\t\tform.value.equipmentTypeName = data.typeName;\r\n\t\t\tform.value.positionNum = data.sortNum;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\tTid,\r\n\t\t\tdeepClone,\r\n\t\t\trules,\r\n\t\t\tuserId,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tdeleteAId,\r\n\t\t\tdeleteBId,\r\n\t\t\tdeleteCId,\r\n\t\t\tdeleteDId,\r\n\t\t\tdeleteA,\r\n\t\t\tdeleteB,\r\n\t\t\tdeleteC,\r\n\t\t\tdeleteD,\r\n\t\t\tmain,\r\n\t\t\tindex,\r\n\t\t\tdelect,\r\n\t\t\tRepair,\r\n\t\t\tStand,\r\n\t\t\tresetForm,\r\n\t\t\tsubmitForm,\r\n\t\t\ttitles,\r\n\t\t\tdialogVisible,\r\n\t\t\tdisabled,\r\n\t\t\tDailogtype,\r\n\t\t\tform,\r\n\t\t\topenDailog,\r\n\t\t\tSearch,\r\n\t\t\tactiveName,\r\n\t\t\tcategoryShow,\r\n\t\t\topencategory,\r\n\t\t\tregionShow,\r\n\t\t\topenRegion,\r\n\t\t\tUserShow,\r\n\t\t\topenUser,\r\n\t\t\tmaintenanceShow,\r\n\t\t\topenMaintenance,\r\n\t\t\tdetectShow,\r\n\t\t\topenDetect,\r\n\t\t\trepairShow,\r\n\t\t\topenRepair,\r\n\t\t\tstandardShow,\r\n\t\t\topenStandard,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\ttimeDate,\r\n\t\t\truleFormRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-form-item {\r\n\twidth: 400px;\r\n}\r\n.formType:after {\r\n\tcontent: '';\r\n\twidth: 400px;\r\n}\r\n.formType {\r\n\tpadding: 20px 20px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n\tflex-wrap: wrap;\r\n}\r\n.el-form .el-form-item:last-of-type {\r\n\tmargin-bottom: 22px !important;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue ---- a/src/components/equipmentDailog/Dailog.vue (revision 4800905967d0fe8781304cae505d42f735851169) -+++ b/src/components/equipmentDailog/Dailog.vue (date 1660381719319) -@@ -324,22 +324,8 @@ - </el-table> - </el-tab-pane> - <el-tab-pane label="保养维修标准" name="six" v-if="Dailogtype"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"></div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EQUIPMENT'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-tab-pane> - </el-tabs> - <template #footer> -@@ -374,8 +360,10 @@ - import { facilityManagementApi } from '/@/api/facilityManagement'; - import { goalManagementApi } from '/@/api/goalManagement'; - import { deepClone } from '/@/utils/other'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog }, -+ components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, -+ detectDailog, repairDailog, standardDailog,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref(false); - const ruleFormRef = ref<FormInstance>(); -@@ -415,9 +403,6 @@ - repairStatus: '', - - takecareStardardeDetailList: [ -- { -- filePath: '123', -- }, - ], - - nextCheckDate: '', -@@ -528,11 +513,61 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ -+ //初始化日期格式 -+ form.value.actualDestoryDate = timeC(form.value.actualDestoryDate); -+ form.value.actualRecoveryDate = timeC(form.value.actualRecoveryDate); -+ form.value.actualStopDate = timeC(form.value.actualStopDate); -+ form.value.destorySubmitDate = timeC(form.value.destorySubmitDate); -+ form.value.nextCheckDate = timeC(form.value.nextCheckDate); -+ form.value.nextTakecareDate = timeC(form.value.nextTakecareDate); -+ form.value.nextTestDate = timeC(form.value.nextTestDate); -+ form.value.previousCheckDate = timeC(form.value.previousCheckDate); -+ form.value.previousTakecareDate = timeC(form.value.previousTakecareDate); -+ form.value.previousTestDate = timeC(form.value.previousTestDate); -+ form.value.produceTime = timeC(form.value.produceTime); -+ form.value.recoverySubmitDate = timeC(form.value.recoverySubmitDate); -+ form.value.stopSubmitDate = timeC(form.value.stopSubmitDate); -+ form.value.useDate = timeC(form.value.useDate); -+ -+ fileList.value = (res.data.data.takecareStardardeDetailList?res.data.data.takecareStardardeDetailList:[]) -+ initFileListData() - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].filePath -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ filePath:fileList.value[a].fileName -+ } -+ ) -+ } -+ form.value.takecareStardardeDetailList = formFileList -+ } - const rules = reactive<FormRules>({ - qName: [], - positionNum: [], -@@ -628,6 +663,7 @@ - form.value.testDetailList = []; - form.value.repaireDetailList = []; - form.value.checkStandardeDetailList = []; -+ fileList.value = [] - dialogVisible.value = false; - }; - const activeName = ref('first'); -@@ -665,16 +701,7 @@ - standardShow.value.openDailog(title, data); - }; - // 上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -845,6 +872,9 @@ - FullScreen, - timeDate, - ruleFormRef, -+ successUploader, -+ initFileListData, -+ timeC - }; - }, - }); -diff --git a/src/views/homeMenu/homeMenu.vue b/src/views/newHome/homeMenu.vue -rename from src/views/homeMenu/homeMenu.vue -rename to src/views/newHome/homeMenu.vue diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14__Default_Changelist_.xml deleted file mode 100644 index 2243965..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14__Default_Changelist_.xml +++ /dev/null @@ -1,4 +0,0 @@ -<changelist name="Uncommitted_changes_before_Update_at_2022_8_13_17_14_[Default_Changelist]" date="1660382057312" recycled="true" deleted="true"> - <option name="PATH" value="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_14_[Default_Changelist]/shelved.patch" /> - <option name="DESCRIPTION" value="Uncommitted changes before Update at 2022/8/13 17:14 [Default Changelist]" /> -</changelist> \ No newline at end of file diff --git "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48_\133Default_Changelist\135/shelved.patch" "b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48_\133Default_Changelist\135/shelved.patch" deleted file mode 100644 index 242a4b4..0000000 --- "a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48_\133Default_Changelist\135/shelved.patch" +++ /dev/null @@ -1,4357 +0,0 @@ -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"checkData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"checkData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"checkData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"applyTime\" label=\"整改时间\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip min-width=\"150px\">\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"验收状态\" show-overflow-tooltip min-width=\"150px\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"checkAcceptPerson\" label=\"验收人\" show-overflow-tooltip min-width=\"150px\"></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 1\" @click=\"onOpenDialogRef('验收', scope.row)\">验收</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"checkData.params.pageIndex\" background v-model:page-size=\"checkData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"checkData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <checkDialog ref=\"checkDialogRef\" @refreshCheck=\"initCheckTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport checkDialog from './components/checkDialog.vue';\r\nimport { Check, Delete, View } from '@element-plus/icons-vue';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { hiddenCheckApi } from '/@/api/doublePreventSystem/check';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n checkData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'check',\r\n components: { checkDialog, Check, Delete, View },\r\n setup() {\r\n const checkDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n checkData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: 1\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initCheckTableData = async () => {\r\n let res = await hiddenCheckApi().getHiddenCheckList(state.checkData.params);\r\n if (res.data.code === '200') {\r\n state.checkData.data = res.data.data;\r\n state.checkData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n checkDialogRef.value.openCheckDialog(type, value, state.departmentList);\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.checkData.params.pageSize = val;\r\n initCheckTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.checkData.params.pageIndex = val;\r\n initCheckTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initCheckTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Check,\r\n Delete,\r\n View,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n checkDialog,\r\n checkDialogRef,\r\n initCheckTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue (date 1660384073678) -@@ -12,7 +12,12 @@ - <span>整改部门:</span> - <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-box" v-model="checkData.params.rectifyDepId"> </el-cascader> - </div> -- -+ <div class="basic-line"> -+ <span>整改状态:</span> -+ <el-select class="input-box" v-model="checkData.params.dangerStatus" placeholder="整改状态" clearable filterable> -+ <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> -+ </el-select> -+ </div> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -22,6 +27,7 @@ - </div> - <el-table :data="checkData.data" style="width: 100%" fit highlight-current-row> - <el-table-column type="index" label="序号" width="60" /> -+ <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip width="170px"></el-table-column> - <el-table-column prop="dangerCode" label="隐患名称" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip min-width="150px"></el-table-column> - <el-table-column prop="applyTime" label="整改时间" show-overflow-tooltip min-width="150px"></el-table-column> -@@ -120,10 +126,7 @@ - { id: 2, name: '限期整改' } - ], - dangerStatusList: [ -- { id: 0, name: '整改中' }, - { id: 1, name: '待验收' }, -- { id: 2, name: '延期整改' }, -- { id: 4, name: '超期未整改' }, - { id: 9, name: '已验收' } - ] - }); -Index: src/api/doublePreventSystem/rectify/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\n\r\nexport function hiddenRectifyApi() {\r\n return {\r\n // v1\r\n getHiddenRectifyList: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/select/getDangerRectifyPage`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n submitHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/applyReport`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n delayHiddenRectifyTime: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/update/timeOutRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n deleteHiddenRectify: (data: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/dangerRectify/delete/deleteDangerRectify`,\r\n method: 'post',\r\n data: data\r\n });\r\n },\r\n // v1\r\n getAllHiddenRectifyList: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`,\r\n method: 'post'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/doublePreventSystem/rectify/index.ts b/src/api/doublePreventSystem/rectify/index.ts ---- a/src/api/doublePreventSystem/rectify/index.ts (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/api/doublePreventSystem/rectify/index.ts (date 1660382056617) -@@ -40,6 +40,12 @@ - url: import.meta.env.VITE_API_URL + `/prevent/device/select/listDevices`, - method: 'post' - }); -+ }, -+ getCodeByTime: (date: string) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL + `/prevent/dangerManage/count/byCreateDate?date=${date}`, -+ method: 'get' -+ }); - } - }; - } -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-role-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <div class=\"basic-line\">\r\n <span>整改类型:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.rectifyType\" placeholder=\"整改类型\" filterable>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>整改部门:</span>\r\n <el-cascader :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-box\" v-model=\"rectifyData.params.rectifyDepId\"> </el-cascader>\r\n </div>\r\n <div class=\"basic-line\">\r\n <span>隐患状态:</span>\r\n <el-select class=\"input-box\" v-model=\"rectifyData.params.dangerStatus\" placeholder=\"隐患状态\" filterable clearable>\r\n <el-option v-for=\"item in dangerStatusList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </div>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" v-throttle @click=\"handleSearch\">\r\n <el-icon>\r\n <ele-Search />\r\n </el-icon>\r\n 查询\r\n </el-button>\r\n </div>\r\n <el-table :data=\"rectifyData.data\" style=\"width: 100%\" fit highlight-current-row>\r\n <el-table-column type=\"index\" label=\"序号\" width=\"60\" />\r\n <el-table-column prop=\"dangerCode\" label=\"隐患名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyDesc\" label=\"整改内容说明\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"rectifyTime\" label=\"整改期限\" min-width=\"130px\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n <span>{{ scope.row.rectifyTime }}</span>\r\n <span v-if=\"scope.row.dangerStatus === 4\" class=\"overdue-img\">逾期</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"rectifyType\" label=\" 整改类型\" show-overflow-tooltip>\r\n <template #default=\"scope\">\r\n {{ parseNumber(scope.row.rectifyType, '整改类型') }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"liablePerson\" label=\"整改责任人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"cost\" label=\"整改资金\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"dangerStatus\" label=\"隐患整改状态\" show-overflow-tooltip align=\"center\">\r\n <template #default=\"scope\">\r\n <el-tag :type=\"scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'\">\r\n {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"createByUserName\" label=\"创建人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtCreate\" label=\"创建时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"lastEditUserName\" label=\"最后修改人\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"gmtModitify\" label=\"最后修改时间\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" fixed=\"right\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"View\" @click=\"onOpenDialogRef('查看', scope.row)\">查看</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Check\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('整改', scope.row)\">整改</el-button>\r\n <el-button size=\"small\" text type=\"primary\" :icon=\"Edit\" v-show=\"scope.row.dangerStatus === 0 || scope.row.dangerStatus === 2\" @click=\"onOpenDialogRef('延期', scope.row)\">延期</el-button>\r\n <el-button size=\"small\" text type=\"danger\" :icon=\"Delete\" @click=\"onDelHiddenRectify(scope.row)\">删除</el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <br />\r\n <el-pagination @size-change=\"onHandleSizeChange\" @current-change=\"onHandleCurrentChange\" :pager-count=\"5\" :page-sizes=\"[10, 20, 30]\" v-model:current-page=\"rectifyData.params.pageIndex\" background v-model:page-size=\"rectifyData.params.pageSize\" layout=\"total, sizes, prev, pager, next, jumper\" :total=\"rectifyData.total\" class=\"page-position\"> </el-pagination>\r\n <br />\r\n <br />\r\n </el-card>\r\n <rectifyDialog ref=\"rectifyDialogRef\" @refreshRectify=\"initRectifyTableData\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\nimport rectifyDialog from './components/rectifyDialog.vue';\r\nimport { Edit, Delete, Check, View } from '@element-plus/icons-vue';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nimport { departmentApi } from '/@/api/systemManage/department';\r\nimport { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice';\r\n\r\n// 定义接口来定义对象的类型\r\ninterface TableData {\r\n quota: string;\r\n quotaUnit: string;\r\n quotaType: string;\r\n createUserName: string;\r\n gmtCreate: string;\r\n lastEditUserName: string;\r\n gmtModitify: string;\r\n}\r\ninterface TableDataState {\r\n rectifyData: {\r\n data: Array<TableData>;\r\n total: number;\r\n loading: boolean;\r\n params: {\r\n pageIndex: number;\r\n pageSize: number;\r\n rectifyType: number | null;\r\n rectifyDepId: number | null;\r\n dangerStatus: number | null;\r\n };\r\n };\r\n rectifyTypeList: Array<enumType>;\r\n dangerStatusList: Array<enumType>;\r\n departmentList: [];\r\n}\r\ninterface enumType {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'rectify',\r\n components: { rectifyDialog, Edit, Delete, View },\r\n setup() {\r\n const rectifyDialogRef = ref();\r\n const state = reactive<TableDataState>({\r\n rectifyData: {\r\n data: [],\r\n total: 0,\r\n loading: false,\r\n params: {\r\n pageIndex: 1,\r\n pageSize: 10,\r\n rectifyType: null,\r\n rectifyDepId: null,\r\n dangerStatus: null\r\n }\r\n },\r\n departmentList: [],\r\n rectifyTypeList: [\r\n { id: 1, name: '即查即改' },\r\n { id: 2, name: '限期整改' }\r\n ],\r\n dangerStatusList: [\r\n { id: 0, name: '整改中' },\r\n { id: 1, name: '待验收' },\r\n { id: 2, name: '延期整改' },\r\n { id: 4, name: '超期未整改' },\r\n { id: 9, name: '已验收' }\r\n ]\r\n });\r\n\r\n // 初始化表格数据\r\n const initRectifyTableData = async () => {\r\n let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params);\r\n if (res.data.code === '200') {\r\n state.rectifyData.data = res.data.data;\r\n state.rectifyData.total = res.data.count;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n //获取部门列表\r\n const getDepartmentData = async () => {\r\n let res = await departmentApi().getDepartmentList();\r\n if (res.data.code === '200') {\r\n state.departmentList = res.data.data;\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n };\r\n\r\n // 打开弹窗\r\n const onOpenDialogRef = (type: string, value: any) => {\r\n rectifyDialogRef.value.openRectifyDialog(type, value, state.departmentList);\r\n };\r\n // 删除\r\n const onDelHiddenRectify = (row: any) => {\r\n ElMessageBox.confirm(`此操作将永久删除该隐患整改,是否继续?`, '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n })\r\n .then(async () => {\r\n let res = await hiddenRectifyApi().deleteHiddenRectify({ id: row.id });\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n duration: 2000,\r\n message: '删除成功'\r\n });\r\n await initRectifyTableData();\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n })\r\n .catch(() => {});\r\n };\r\n\r\n const parseNumber = (value: string | number, type: string) => {\r\n if (type === '整改类型') {\r\n return state.rectifyTypeList.find((item) => item.id === value)?.name;\r\n } else if (type === '隐患整改状态') {\r\n return state.dangerStatusList.find((item) => item.id === value)?.name;\r\n }\r\n };\r\n\r\n const handleSearch = () => {\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n state.rectifyData.params.pageSize = val;\r\n initRectifyTableData();\r\n };\r\n // 分页改变\r\n const onHandleCurrentChange = (val: number) => {\r\n state.rectifyData.params.pageIndex = val;\r\n initRectifyTableData();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n initRectifyTableData();\r\n getDepartmentData();\r\n });\r\n\r\n return {\r\n Edit,\r\n View,\r\n Check,\r\n Delete,\r\n parseNumber,\r\n handleSearch,\r\n onOpenDialogRef,\r\n onHandleSizeChange,\r\n onDelHiddenRectify,\r\n onHandleCurrentChange,\r\n rectifyDialog,\r\n rectifyDialogRef,\r\n initRectifyTableData,\r\n ...toRefs(state)\r\n };\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped>\r\n.overdue-img {\r\n position: absolute;\r\n background-color: #f56c6c;\r\n border-radius: 4px;\r\n color: #fff;\r\n display: inline-block;\r\n font-size: 12px;\r\n height: 21px;\r\n line-height: 18px;\r\n text-align: center;\r\n white-space: nowrap;\r\n border: 1px solid #fff;\r\n transform: scale(0.8);\r\n padding: 1px 3px 0 3px;\r\n}\r\n:deep(.el-textarea.is-disabled .el-textarea__inner) {\r\n background-color: var(--el-card-bg-color);\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__inner) {\r\n color: var(--el-input-text-color, var(--el-text-color-regular));\r\n}\r\n:deep(.el-input.is-disabled .el-input__wrapper) {\r\n background-color: var(--el-card-bg-color);\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue (date 1660383684934) -@@ -3,6 +3,19 @@ - <el-card shadow="hover"> - <div class="system-user-search mb15"> - <div class="basic-line"> -+ <div style="display: inline-block">整改编号:</div> -+ -+ <div style="display: inline-block"> -+ <el-autocomplete :fetch-suggestions="querySearch" v-model="rectifyData.params.serialCode" v-on:input="checkDate($event)" placeholder="整改编号(前八位日期)"> </el-autocomplete> -+ <i class="el-icon-date"></i> -+ </div> -+ <!-- <div style="display: inline-block">--> -+ <!-- <el-button>--> -+ <!-- <el-date-picker value-format="YYYY-MM-DD" :disabled-date="disabledDate" v-model="dateTime" @change="getSerialCodeList" placeholder="选择日期"> </el-date-picker>--> -+ <!-- </el-button>--> -+ <!-- </div>--> -+ </div> -+ <div class="basic-line"> - <span>整改类型:</span> - <el-select class="input-box" v-model="rectifyData.params.rectifyType" placeholder="整改类型" filterable> - <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option> -@@ -18,6 +31,11 @@ - <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option> - </el-select> - </div> -+ <div class="basic-line"> -+ <span>创建时间范围:</span> -+ <el-date-picker v-model="dateTimeRange" @change="giveTime" value-format="YYYY-MM-DD HH:mm:ss" type="datetimerange" range-separator="To" start-placeholder="开始时间" end-placeholder="结束时间" /> -+ </div> -+ <i class="el-icon-date"></i> - <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch"> - <el-icon> - <ele-Search /> -@@ -27,6 +45,7 @@ - </div> - <el-table :data="rectifyData.data" style="width: 100%" fit highlight-current-row> - <el-table-column type="index" label="序号" width="60" /> -+ <el-table-column prop="reportTime" label="上报时间" show-overflow-tooltip width="170px"></el-table-column> - <el-table-column prop="dangerCode" label="隐患名称" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip></el-table-column> - <el-table-column prop="rectifyTime" label="整改期限" min-width="130px" show-overflow-tooltip> -@@ -72,7 +91,7 @@ - </template> - - <script lang="ts"> --import { toRefs, reactive, onMounted, ref, defineComponent } from 'vue'; -+import { toRefs, reactive, onMounted, ref, defineComponent, computed } from 'vue'; - import { ElMessageBox, ElMessage } from 'element-plus'; - import rectifyDialog from './components/rectifyDialog.vue'; - import { Edit, Delete, Check, View } from '@element-plus/icons-vue'; -@@ -93,7 +112,9 @@ - interface TableDataState { - rectifyData: { - data: Array<TableData>; -+ - total: number; -+ disabled: boolean; - loading: boolean; - params: { - pageIndex: number; -@@ -101,16 +122,27 @@ - rectifyType: number | null; - rectifyDepId: number | null; - dangerStatus: number | null; -+ serialCode: string; -+ startTime: string; -+ endTime: string; - }; - }; - rectifyTypeList: Array<enumType>; - dangerStatusList: Array<enumType>; - departmentList: []; -+ disabledDate: any; -+ serialCodeList: Array<type>; -+ dateTime: string; -+ dateTimeRange: Array<string>; - } - interface enumType { - id: number; - name: string; - } -+interface type { -+ id: number; -+ value: number; -+} - - export default defineComponent({ - name: 'rectify', -@@ -121,16 +153,26 @@ - rectifyData: { - data: [], - total: 0, -+ disabled: true, - loading: false, - params: { - pageIndex: 1, - pageSize: 10, - rectifyType: null, - rectifyDepId: null, -- dangerStatus: null -+ dangerStatus: null, -+ serialCode: '', -+ startTime: '', -+ endTime: '' - } -+ }, -+ dateTime: '', -+ dateTimeRange: [], -+ disabledDate: (time: any) => { -+ return time.getTime() > new Date().getTime(); - }, - departmentList: [], -+ serialCodeList: [], - rectifyTypeList: [ - { id: 1, name: '即查即改' }, - { id: 2, name: '限期整改' } -@@ -144,17 +186,129 @@ - ] - }); - -+ const giveTime = () => { -+ if (state.dateTimeRange && state.dateTimeRange !== null) { -+ state.rectifyData.params.startTime = state.dateTimeRange[0]; -+ state.rectifyData.params.endTime = state.dateTimeRange[1]; -+ } else { -+ state.rectifyData.params.startTime = ''; -+ state.rectifyData.params.endTime = ''; -+ } -+ }; -+ -+ const querySearch = () => { -+ return state.serialCodeList.filter((item) => item.value.toString().indexOf(state.rectifyData.params.serialCode) !== -1); -+ }; -+ const handleChange = (value: string): Boolean => { -+ let year = value.substr(0, 4); -+ let month = value.substr(4, 2); -+ let day = value.substr(6, 2); -+ if (Number(year) < 1000 || Number(year) > new Date().getFullYear()) { -+ return false; -+ } -+ if (Number(month) > 12 || month === '00') { -+ return false; -+ } -+ let leapYearTab = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ let notLeapYearTab = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -+ if (isLeapYear(year)) { -+ const maxDay = leapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } else { -+ const maxDay = notLeapYearTab[Number(month) - 1]; -+ if (Number(day) > maxDay) { -+ return false; -+ } -+ } -+ return true; -+ }; -+ -+ const isLeapYear = (value: string) => { -+ return Number(value) % 4 === 0; -+ }; -+ -+ const checkDate = async (value: string) => { -+ if (value.length >= 8) { -+ if (handleChange(value.substr(0, 8))) { -+ let res = await hiddenRectifyApi().getCodeByTime(value.substr(0, 4) + '-' + value.substr(4, 2) + '-' + value.substr(6, 2)); -+ if (res.data.code === '200' && res.data.data > 0) { -+ state.serialCodeList = []; -+ let date = parseInt(value.substr(0, 8) + '0000'); -+ for (let i = 0; i < res.data.data; i++) { -+ state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ } -+ } else if (res.data.code === '200' && res.data.data === 0) { -+ ElMessage({ -+ type: 'warning', -+ message: '当天无隐患上报' -+ }); -+ } -+ } else { -+ state.rectifyData.params.serialCode = ''; -+ ElMessage({ -+ type: 'warning', -+ message: '前八位请输入正确得日期格式' -+ }); -+ } -+ } else { -+ } -+ // if (state.dateTime === '' || state.dateTime === null) { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // } else { -+ // state.serialCodeList = []; -+ // state.rectifyData.params.serialCode = ''; -+ // let res = await hiddenRectifyApi().getCodeByTime(state.dateTime); -+ // if (res.data.code === '200' && res.data.data > 0) { -+ // state.rectifyData.disabled = false; -+ // let date = parseInt(state.dateTime.replaceAll('-', '') + '0000'); -+ // for (let i = 0; i < res.data.data; i++) { -+ // state.serialCodeList.push({ value: date + 1 + i, id: i }); -+ // } -+ // state.rectifyData.params.serialCode = state.dateTime.replaceAll('-', ''); -+ // } else if (res.data.code === '200' && res.data.data === 0) { -+ // state.rectifyData.disabled = true; -+ // ElMessage({ -+ // type: 'warning', -+ // message: '当天无隐患上报' -+ // }); -+ // } -+ // } -+ }; -+ - // 初始化表格数据 - const initRectifyTableData = async () => { -- let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -- if (res.data.code === '200') { -- state.rectifyData.data = res.data.data; -- state.rectifyData.total = res.data.count; -- } else { -- ElMessage({ -- type: 'warning', -- message: res.data.msg -- }); -+ debugger; -+ if (state.rectifyData.params.serialCode.toString().length === 0) { -+ let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -+ if (res.data.code === '200') { -+ state.rectifyData.data = res.data.data; -+ state.rectifyData.total = res.data.count; -+ } else { -+ ElMessage({ -+ type: 'warning', -+ message: res.data.msg -+ }); -+ } -+ } else if (state.rectifyData.params.serialCode.toString().length !== 12) { -+ ElMessage({ -+ type: 'warning', -+ message: '请输入或选择正确的隐患编号' -+ }); -+ } else { -+ state.rectifyData.params.serialCode = state.rectifyData.params.serialCode.toString().substr(0, 8) + '-' + state.rectifyData.params.serialCode.toString().substr(8, 4); -+ let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); -+ if (res.data.code === '200') { -+ state.rectifyData.data = res.data.data; -+ state.rectifyData.total = res.data.count; -+ } else { -+ ElMessage({ -+ type: 'warning', -+ message: res.data.msg -+ }); -+ } - } - }; - -@@ -233,8 +387,11 @@ - View, - Check, - Delete, -+ giveTime, -+ querySearch, - parseNumber, - handleSearch, -+ checkDate, - onOpenDialogRef, - onHandleSizeChange, - onDelHiddenRectify, -@@ -274,4 +431,7 @@ - :deep(.el-input.is-disabled .el-input__wrapper) { - background-color: var(--el-card-bg-color); - } -+:deep(.el-input-group__prepend) { -+ padding: 0; -+} - </style> -Index: src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-add-menu-container\">\r\n <el-dialog :title=\"title\" v-model=\"isShowRectifyDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"rectifyForm\" :rules=\"rectifyFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改说明\" prop=\"rectifyInfo\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"rectifyForm.rectifyInfo\" placeholder=\"请输入整改说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改时间\" prop=\"applyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"rectifyForm.applyTime\" placeholder=\"请选择整改时间\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\">\r\n <el-button @click=\"isShowRectifyDialog = !isShowRectifyDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitRectify\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowDelayDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"delayForm\" :rules=\"delayFormRules\" ref=\"rectifyFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"延期说明\" prop=\"timeOutDesc\">\r\n <el-input class=\"input-add\" type=\"textarea\" :rows=\"2\" v-model.trim=\"delayForm.timeOutDesc\" placeholder=\"请输入延期说明\" clearable></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改期限\" prop=\"rectifyTime\">\r\n <el-date-picker type=\"datetime\" value-format=\"YYYY-MM-DD HH:mm:ss\" class=\"input-add\" v-model=\"delayForm.rectifyTime\" placeholder=\"请选择整改期限\" clearable> </el-date-picker>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n <span class=\"dialog-footer\" v-show=\"disabled\">\r\n <el-button @click=\"isShowDelayDialog = !isShowDelayDialog\" size=\"default\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"submitDelay\" v-throttle size=\"default\">确 定</el-button>\r\n </span>\r\n </template>\r\n </el-dialog>\r\n <el-dialog :title=\"title\" v-model=\"isShowCheckInfoDialog\" width=\"600px\" :close-on-click-modal=\"false\">\r\n <el-form :model=\"checkInfoForm\" ref=\"checkFormRef\" size=\"default\" label-width=\"120px\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改内容说明\" prop=\"rectifyDesc\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"textarea\" :rows=\"2\" v-model.trim=\"checkInfoForm.rectifyDesc\" readonly></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改类型\" prop=\"rectifyType\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.rectifyType\" readonly>\r\n <el-option v-for=\"item in rectifyTypeList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改部门\" prop=\"rectifyDepId\">\r\n <el-cascader @change=\"achieveUserList\" :disabled=\"!disabled\" :options=\"departmentList\" :props=\"{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }\" placeholder=\"请选择部门\" clearable filterable class=\"input-add\" v-model=\"checkInfoForm.rectifyDepId\" readonly> </el-cascader>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改责任人\" prop=\"liablePersonId\">\r\n <el-select class=\"input-add\" :disabled=\"!disabled\" v-model=\"checkInfoForm.liablePersonId\" clearable filterable readonly>\r\n <el-option v-for=\"item in userList\" :key=\"item.uid\" :label=\"item.username\" :value=\"item.uid\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"整改资金\" prop=\"dangerResult\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" type=\"number\" v-model=\"checkInfoForm.cost\" readonly> </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.createByUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"创建时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtCreate\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改人\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.lastEditUserName\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" v-show=\"personTime\">\r\n <el-form-item label=\"最后修改时间\" prop=\"location\">\r\n <el-input class=\"input-add\" :disabled=\"!disabled\" v-model.trim=\"checkInfoForm.gmtModitify\" placeholder=\"请输入区域位置\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { getUserByDepartment } from '/@/assets/methods';\r\n\r\ninterface stateType {\r\n disabled: Boolean;\r\n personTime: Boolean;\r\n isShowRectifyDialog: Boolean;\r\n isShowDelayDialog: Boolean;\r\n isShowCheckInfoDialog: Boolean;\r\n rectifyForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyInfo: string | null;\r\n applyTime: string | null;\r\n };\r\n delayForm: {\r\n id: number | null;\r\n dangerManagerId: number | null;\r\n rectifyTime: string | null;\r\n timeOutDesc: string | null;\r\n };\r\n title: string;\r\n departmentList: [];\r\n userList: [];\r\n rectifyTypeList: Array<rectifyTypeState>;\r\n rectifyFormRules: {};\r\n delayFormRules: {};\r\n checkInfoForm: {\r\n rectifyDepId: number | null;\r\n liablePersonId: number | null;\r\n };\r\n}\r\ninterface rectifyTypeState {\r\n regionType: string;\r\n id: number;\r\n}\r\n\r\nimport { reactive, toRefs, ref } from 'vue';\r\nimport { ElMessage } from 'element-plus';\r\nimport { hiddenRectifyApi } from '/@/api/doublePreventSystem/rectify';\r\nexport default {\r\n name: 'rectifyDialog',\r\n setup(props: any, context: any) {\r\n const rectifyFormRef = ref();\r\n const state = reactive<stateType>({\r\n title: '',\r\n disabled: false,\r\n personTime: false,\r\n rectifyTypeList: [],\r\n departmentList: [],\r\n userList: [],\r\n isShowCheckInfoDialog: false,\r\n checkInfoForm: {\r\n rectifyDepId: null,\r\n liablePersonId: null\r\n },\r\n isShowDelayDialog: false,\r\n isShowRectifyDialog: false,\r\n rectifyForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyInfo: null,\r\n applyTime: null\r\n },\r\n delayForm: {\r\n id: null,\r\n dangerManagerId: null,\r\n rectifyTime: null,\r\n timeOutDesc: null\r\n },\r\n rectifyFormRules: {\r\n rectifyInfo: [{ required: true, message: '请填写整改说明', trigger: 'blur' }],\r\n applyTime: [{ required: true, message: '请选择整改时间', trigger: 'change' }]\r\n },\r\n delayFormRules: {\r\n timeOutDesc: [{ required: true, message: '请填写延期说明', trigger: 'blur' }],\r\n rectifyTime: [{ required: true, message: '请选择整改期限', trigger: 'change' }]\r\n }\r\n });\r\n\r\n //打开模态框\r\n const openRectifyDialog = async (type: string, value: object, departmentList: []) => {\r\n state.departmentList = departmentList;\r\n if (type === '延期') {\r\n state.title = '延期';\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.isShowDelayDialog = true;\r\n const delayForm = JSON.parse(JSON.stringify(value));\r\n state.delayForm.id = delayForm.id;\r\n state.delayForm.dangerManagerId = delayForm.dangerManagerId;\r\n state.delayForm.timeOutDesc = null;\r\n state.delayForm.rectifyTime = null;\r\n } else if (type === '查看') {\r\n state.title = '查看';\r\n state.personTime = true;\r\n state.isShowCheckInfoDialog = true;\r\n state.checkInfoForm.rectifyDepId = JSON.parse(JSON.stringify(value)).rectifyDepId;\r\n await achieveUserList();\r\n state.checkInfoForm = JSON.parse(JSON.stringify(value));\r\n } else {\r\n state.disabled = true;\r\n state.personTime = false;\r\n state.title = '整改';\r\n state.isShowRectifyDialog = true;\r\n const rectifyForm = JSON.parse(JSON.stringify(value));\r\n state.rectifyForm.id = rectifyForm.id;\r\n state.rectifyForm.dangerManagerId = rectifyForm.dangerManagerId;\r\n state.rectifyForm.rectifyInfo = null;\r\n state.rectifyForm.applyTime = null;\r\n }\r\n };\r\n\r\n //提交整改\r\n const submitRectify = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().submitHiddenRectify(state.rectifyForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '整改提交成功',\r\n duration: 2000\r\n });\r\n state.isShowRectifyDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n //提交延期\r\n const submitDelay = async () => {\r\n rectifyFormRef.value.validate(async (valid: Boolean) => {\r\n if (valid) {\r\n let res = await hiddenRectifyApi().delayHiddenRectifyTime(state.delayForm);\r\n if (res.data.code === '200') {\r\n ElMessage({\r\n type: 'success',\r\n message: '隐患延期成功',\r\n duration: 2000\r\n });\r\n state.isShowDelayDialog = false;\r\n context.emit('refreshRectify');\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: res.data.msg\r\n });\r\n }\r\n } else {\r\n ElMessage({\r\n type: 'warning',\r\n message: '请完善基本信息'\r\n });\r\n }\r\n });\r\n };\r\n\r\n const achieveUserList = async () => {\r\n state.checkInfoForm.liablePersonId = null;\r\n const user: unknown = await getUserByDepartment(state.checkInfoForm.rectifyDepId);\r\n state.userList = user as [];\r\n };\r\n\r\n return {\r\n ...toRefs(state),\r\n rectifyFormRef,\r\n submitDelay,\r\n achieveUserList,\r\n submitRectify,\r\n openRectifyDialog\r\n };\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue ---- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue (date 1660382056651) -@@ -10,7 +10,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="整改时间" prop="applyTime"> -- <el-date-picker type="datetime" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> -+ <el-date-picker type="datetime" :disabled-date="disabledDate" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="rectifyForm.applyTime" placeholder="请选择整改时间" clearable> </el-date-picker> - </el-form-item> - </el-col> - </el-row> -@@ -125,6 +125,8 @@ - rectifyTime: string | null; - timeOutDesc: string | null; - }; -+ disabledDate: any; -+ rangeTime: any; - title: string; - departmentList: []; - userList: []; -@@ -168,6 +170,13 @@ - rectifyInfo: null, - applyTime: null - }, -+ disabledDate: (time: any) => { -+ const r = new Date().getTime(); -+ return time.getTime() > new Date().getTime(); -+ }, -+ rangeTime: () => { -+ return '15:15:14'; -+ }, - delayForm: { - id: null, - dangerManagerId: null, -Index: src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"900px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"emergencyPlanName\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.emergencyPlanName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillAddress\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.departmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.departmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"0\"></el-option>\r\n <el-option label=\"桌面\" value=\"1\"></el-option>\r\n <el-option label=\"专项\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"drillName\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.drillName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select :disabled=\"true\" v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.makingPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.drillPlanDate\"\r\n value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"修改时间\" prop=\"updateDate\">\r\n <el-date-picker :disabled=\"true\" v-model=\"ruleForm.updateDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserUid\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <!--<el-tree-select-->\r\n <!--v-model=\"ruleForm.makingDepartmentId\"-->\r\n <!--:data=\"data\" class=\"w100\"-->\r\n <!--placeholder=\"请选择\"/>-->\r\n\r\n <el-tree-select :disabled=\"true\" v-model=\"ruleForm.makingDepartmentId\"\r\n :data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"planUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.planUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :disabled=\"true\" :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n :disabled=\"true\"\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实际到场人员\" prop=\"executeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.executeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练过程描述\" prop=\"processDesc\">\r\n <el-input :disabled=\"true\" v-model=\"ruleForm.processDesc\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写演练过程描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录人\" prop=\"recordUserName\" >\r\n <el-input\r\n v-model=\"ruleForm.recordUserName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"true\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练记录时间\" prop=\"drillRecordDate\">\r\n <el-date-picker\r\n v-model=\"ruleForm.drillRecordDate\"\r\n class=\"w100\"\r\n type=\"datetime\"\r\n placeholder=\"选择日期时间\"\r\n :disabled=\"true\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <div class=\"el-divider--horizontal\">\r\n <div class=\"el-divider__text\">\r\n <h3>评价</h3>\r\n </div>\r\n </div>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"evaluationUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.evaluationUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n :disabled=\"disabled\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-适宜性\" prop=\"suitable\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.suitable\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部能够执行\" value=\"1\"></el-option>\r\n <el-option label=\"全部不能够执行\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"预案评审-充分性\" prop=\"sufficient\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.sufficient\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"完全满足应急要求\" value=\"1\"></el-option>\r\n <el-option label=\"不完全满足应急要求\" value=\"2\"></el-option>\r\n <el-option label=\"完全不满足应急要求\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"人员到位情况\" prop=\"arrival\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.arrival\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"迅速准确,基本按时到位\" value=\"1\"></el-option>\r\n <el-option label=\"未按时到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-现场物资\" prop=\"supplies\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.supplies\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"现场物资充分,全部有效\" value=\"1\"></el-option>\r\n <el-option label=\"现场物资不充分\" value=\"2\"></el-option>\r\n <el-option label=\"现场没有物资\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"物资到位情况-个人防护\" prop=\"protection\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.protection\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"全部人员防护到位\" value=\"1\"></el-option>\r\n <el-option label=\"人员未防护到位\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-整体组织\" prop=\"whole\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.whole\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"协调基本顺利,能够满足要求\" value=\"1\"></el-option>\r\n <el-option label=\"协调不顺利\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"协调组织情况-疏散组分工\" prop=\"division\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.division\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"安全,快速\" value=\"1\"></el-option>\r\n <el-option label=\"安全,不快速\" value=\"2\"></el-option>\r\n <el-option label=\"不安全,快速\" value=\"3\"></el-option>\r\n <el-option label=\"不安全,不快速\" value=\"4\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"实战效果评价\" prop=\"effect\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.effect\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"基本达到目的,部分环节有待改进\" value=\"1\"></el-option>\r\n <el-option label=\"未达到目的\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-报告上级\" prop=\"report\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.report\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"报告及时\" value=\"1\"></el-option>\r\n <el-option label=\"报告不及时\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-安全部门\" prop=\"safety\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.safety\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-救援后勤部门\" prop=\"rescue\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.rescue\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求协作\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求协作\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"支援部门和协作有效性-警戒撤离配合\" prop=\"evacuate\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.evacuate\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"按要求配合\" value=\"1\"></el-option>\r\n <el-option label=\"未按要求配合\" value=\"2\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"是否需要修改应急预案\" prop=\"needModify\">\r\n <el-select :disabled=\"disabled\" v-model=\"ruleForm.needModify\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"是\" :value=\"true\"></el-option>\r\n <el-option label=\"否\" :value=\"false\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"存在问题和改进措施\" prop=\"questionAndImprove\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.questionAndImprove\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写备注信息\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"修改内容\" prop=\"modifyContent\">\r\n <el-input :disabled=\"disabled\" v-model=\"ruleForm.modifyContent\" class=\"textarea\" type=\"textarea\" placeholder=\"请填写修改内容\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"附件列表\">\r\n <el-upload\r\n v-model:file-list=\"ruleForm.userList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\"\r\n >点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">\r\n 添加相关附件\r\n </div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button v-if=\"!disabled\" size=\"default\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\"/>\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"selectUser\"/>\r\n<!-- <RegionsDialog ref=\"openRef\"/>-->\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport {\r\n UploadUserFile,\r\n FormInstance,\r\n ElMessage\r\n} from 'element-plus'\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport UserSelections from \"/@/components/userSelections/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport {emergencyDrillEvaluationApi} from \"/@/api/contingencyManagement/emergencyDrillEvaluation\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nexport default defineComponent({\r\n name: 'approvalProgress',\r\n components: {\r\n UserSelections,\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n //定义表单\r\n const realRuleForm = ref ({\r\n drillExecuteId: '',\r\n suitable: '',\r\n sufficient: '',\r\n arrival: '',\r\n supplies: '',\r\n protection: '',\r\n whole: '',\r\n division: '',\r\n effect: '',\r\n report: '',\r\n safety: '',\r\n rescue: '',\r\n evacuate: '',\r\n needModify: '',\r\n questionAndImprove: '',\r\n modifyContent: '',\r\n fileList: [\r\n ],\r\n userList: [\r\n ]\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看演练实施评价') {\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n //演练人员\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n //演练负责人员\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n //实际到场人员\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n //演练负责人(评价)\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n }\r\n });\r\n }\r\n if(title=='演练实施查看评价'){\r\n emergencyDrillEvaluationApi()\r\n .seeEmergencyDrillEvaluation(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.planUserListString=''\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.executeUserListString=''\r\n ruleForm.value.evaluationUserListString=''\r\n\r\n if(res.data.data.planUserList){\r\n for(var a = 0;a<res.data.data.planUserList.length;a++){\r\n ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.planChargeUserList){\r\n for(var a = 0;a<res.data.data.planChargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'\r\n }\r\n }\r\n\r\n if(res.data.data.executeUserList){\r\n for(var a = 0;a<res.data.data.executeUserList.length;a++){\r\n ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'\r\n }\r\n }\r\n //演练负责人(评价)\r\n if(res.data.data.evaluationUserList){\r\n for(var a = 0;a<res.data.data.evaluationUserList.length;a++){\r\n ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'\r\n }\r\n }\r\n\r\n }\r\n });\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n };\r\n // 关闭弹窗\r\n const closeDialog = () => {\r\n isShowDialog.value = false;\r\n };\r\n // 取消\r\n const onCancel = () => {\r\n closeDialog();\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ,\r\n ]\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = [\r\n\r\n ]\r\n // 必填项提示\r\n // const rules = reactive<FormRules>({\r\n // teamName: [\r\n // {\r\n // required: true,\r\n // message: '队伍名称不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLevel: [\r\n // {\r\n // required: true,\r\n // message: '队伍级别不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamLeader: [\r\n // {\r\n // required: true,\r\n // message: '队伍负责人不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // responsibleDepartment: [\r\n // {\r\n // required: true,\r\n // message: '负责人部门不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // teamPhone: [\r\n // {\r\n // required: true,\r\n // message: '负责人手机不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // telephone: [\r\n // {\r\n // required: true,\r\n // message: '固定电话不能为空',\r\n // trigger: 'change',\r\n // },\r\n // ],\r\n // })\r\n\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n //演练负责人(评价)\r\n ruleForm.value.userList = ruleForm.value.evaluationUserList\r\n\r\n\r\n\r\n realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId\r\n realRuleForm.value.suitable=ruleForm.value.suitable\r\n realRuleForm.value.sufficient=ruleForm.value.sufficient\r\n realRuleForm.value.arrival=ruleForm.value.arrival\r\n realRuleForm.value.supplies=ruleForm.value.supplies\r\n realRuleForm.value.protection=ruleForm.value.protection\r\n realRuleForm.value.whole=ruleForm.value.whole\r\n realRuleForm.value.division=ruleForm.value.division\r\n realRuleForm.value.effect=ruleForm.value.effect\r\n realRuleForm.value.report=ruleForm.value.report\r\n realRuleForm.value.safety=ruleForm.value.safety\r\n realRuleForm.value.rescue=ruleForm.value.rescue\r\n realRuleForm.value.evacuate=ruleForm.value.evacuate\r\n realRuleForm.value.needModify=ruleForm.value.needModify\r\n realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove\r\n realRuleForm.value.modifyContent=ruleForm.value.modifyContent\r\n realRuleForm.value.fileList=ruleForm.value.fileList\r\n if(ruleForm.value.userList){\r\n for(var a = 0;a<ruleForm.value.userList.length;a++){\r\n realRuleForm.value.userList.push({\r\n userUid:ruleForm.value.userList[a].userUid,\r\n userName:ruleForm.value.userList[a].userName\r\n })\r\n }\r\n }\r\n // console.log(ruleForm.value.evaluationUserList)\r\n // ruleForm.value.userList=[]\r\n // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){\r\n // // += res.data.data.evaluationUserList[a].userName+';'\r\n // }\r\n if (title == '演练实施评价') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n // console.log(ruleForm.value)\r\n emergencyDrillEvaluationApi()\r\n .editEmergencyDrillEvaluation(realRuleForm.value)\r\n // emergencyDrillExecuteApi()\r\n // .editEmergencyDrillExecute(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '评价成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n isShowDialog.value = false;\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n drillRecordDate: '', // 演练记录时间\r\n drillPlanId: '', //演练计划ID\r\n drillName:'',\r\n recordUserUid: '', // 记录人ID\r\n processDesc: '', // 演练过程描述\r\n userList: [\r\n {\r\n userUid: '',\r\n },\r\n {\r\n userUid: '',\r\n }\r\n ]\r\n };\r\n }\r\n }\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt=()=>{\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.drillPlanId=e.id\r\n };\r\n // 选择区域弹窗\r\n const openRef=ref()\r\n const regionsDialog=()=>{\r\n openRef.value.openDailog()\r\n }\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog(0);\r\n };\r\n\r\n const selectUser = (e) =>{\r\n ruleForm.value.evaluationUserListString=''\r\n ruleForm.value.evaluationUserList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.evaluationUserList.push(\r\n {\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.evaluationUserListString+=e[a].realName+';'\r\n }\r\n console.log(ruleForm.value.evaluationUserList)\r\n }\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n closeDialog,\r\n isShowDialog,\r\n onCancel,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n onUser,\r\n ruleFormRef,\r\n // rules,\r\n openUser,\r\n userRef,\r\n regionsDialog,\r\n openRef,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n resetForm,\r\n titles,\r\n disabled,\r\n emit,\r\n propse,\r\n department,\r\n newTreeList,\r\n selectUser,\r\n submitForm,\r\n realRuleForm\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.el-form .el-form-item{\r\n margin-bottom: 18px !important;\r\n display: flex;\r\n align-items: flex-start;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label{\r\n text-align: right;\r\n height: 100%;\r\n}\r\n.textarea{\r\n height: 90px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 90px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n.el-divider--horizontal {\r\n display: block;\r\n height: 1px;\r\n width: 100%;\r\n margin: 24px 0;\r\n background-color: #dcdfe6;\r\n position: relative;\r\n}\r\n.el-divider__text {\r\n position: absolute;\r\n background-color: #fff;\r\n padding: 0 20px;\r\n color: #303133;\r\n left: 50%;\r\n font-weight: 500;\r\n font-size: 14px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue ---- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue (date 1660382056657) -@@ -167,20 +167,7 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="ruleForm.planFileList" :disabled="true"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -368,20 +355,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="附件列表"> -- <el-upload -- v-model:file-list="ruleForm.userList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary" -- >点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"> -- 添加相关附件 -- </div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -421,12 +396,14 @@ - import DailogSearchUser from "/@/components/DailogSearchUser/index.vue" - import {emergencyDrillEvaluationApi} from "/@/api/contingencyManagement/emergencyDrillEvaluation"; - import {goalManagementApi} from "/@/api/goalManagement"; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'approvalProgress', - components: { - UserSelections, - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -512,6 +489,8 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施评价'){ -@@ -548,6 +527,8 @@ - } - } - } -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - }); - } - if(title=='演练实施查看评价'){ -@@ -584,15 +565,41 @@ - ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';' - } - } -- -+ fileList.value = (res.data.data.evaluationFileList?res.data.data.evaluationFileList:[]) -+ initFileListData() - } - }); - } -+ - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<ruleForm.value.planFileList.length;a++){ -+ ruleForm.value.planFileList[a].name = ruleForm.value.planFileList[a].fileName -+ } -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - }; - // 关闭弹窗 - const closeDialog = () => { -@@ -605,7 +612,7 @@ - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -663,6 +670,9 @@ - // }) - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - //演练负责人(评价) - ruleForm.value.userList = ruleForm.value.evaluationUserList - -@@ -861,7 +871,9 @@ - newTreeList, - selectUser, - submitForm, -- realRuleForm -+ realRuleForm, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -910,4 +922,4 @@ - font-weight: 500; - font-size: 14px; - } --</style> -\ No newline at end of file -+</style> -Index: src/router/route.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import { RouteRecordRaw } from 'vue-router';\r\n\r\nexport const dynamicRoutes: Array<RouteRecordRaw> = [\r\n {\r\n path: '/',\r\n name: '/',\r\n component: () => import('/@/layout/index.vue'),\r\n redirect: '/home',\r\n meta: {\r\n isKeepAlive: false\r\n },\r\n children: [\r\n {\r\n path: '/home',\r\n name: 'home',\r\n component: () => import('/@/views/home/index.vue'),\r\n meta: {\r\n title: '首页',\r\n isLink: '',\r\n isHide: false,\r\n isKeepAlive: true,\r\n isAffix: true,\r\n isIframe: false,\r\n roles: ['admin', 'common'],\r\n icon: 'iconfont icon-shouye'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\nexport const notFoundAndNoPower = [\r\n {\r\n path: '/:path(.*)*',\r\n name: 'notFound',\r\n component: () => import('/@/views/error/404.vue'),\r\n meta: {\r\n title: 'message.staticRoutes.notFound',\r\n isHide: true\r\n }\r\n },\r\n {\r\n path: '/401',\r\n name: 'noPower',\r\n component: () => import('/@/views/error/401.vue'),\r\n meta: {\r\n title: 'message.staticRoutes.noPower',\r\n isHide: true\r\n }\r\n }\r\n];\r\n\r\nexport const staticRoutes: Array<RouteRecordRaw> = [\r\n {\r\n path: '/',\r\n name: '/',\r\n component: () => import('/@/layout/index.vue'),\r\n meta: {\r\n title: '布局界面'\r\n },\r\n children: [\r\n // 请不要往这里 `children` 中添加内容,此内容为了防止 No match found for location with path \"xxx\" 问题\r\n ...notFoundAndNoPower\r\n ]\r\n },\r\n {\r\n path: '/login',\r\n name: 'login',\r\n component: () => import('/@/views/loginPage/loginPage.vue'),\r\n meta: {\r\n title: '登录'\r\n }\r\n },\r\n {\r\n path: '/homeMenu',\r\n name: 'homeMenu',\r\n component: () => import('/@/views/homeMenu/homeMenu.vue'),\r\n meta: {\r\n title: '首页',\r\n isKeepAlive: false\r\n }\r\n },\r\n {\r\n path: '/intelligentMap',\r\n name: 'intelligentMap',\r\n component: () => import('/@/views/intellectInspect/intelligentMap/index.vue'),\r\n meta: {\r\n title: '巡检路线'\r\n }\r\n },\r\n {\r\n path: '/intelligentLine',\r\n name: 'intelligentMap',\r\n component: () => import('/@/views/intellectInspect/intelligentLine/index.vue'),\r\n meta: {\r\n title: '巡检路线'\r\n }\r\n }\r\n];\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/router/route.ts b/src/router/route.ts ---- a/src/router/route.ts (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/router/route.ts (date 1660382056661) -@@ -72,9 +72,9 @@ - } - }, - { -- path: '/homeMenu', -- name: 'homeMenu', -- component: () => import('/@/views/homeMenu/homeMenu.vue'), -+ path: '/newMenu', -+ name: 'newMenu', -+ component: () => import('/@/views/newHome/index.vue'), - meta: { - title: '首页', - isKeepAlive: false -Index: src/views/contingencyManagement/panManagement/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-form :inline=\"true\" class=\"demo-form-inline\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.name\" placeholder=\"预案名称\" style=\"max-width: 215px\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select size=\"default\" v-model=\"listQuery.searchParams.type\" placeholder=\"请选择预案类型\" class=\"ml10\" style=\"max-width: 215px\">\r\n\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\"> 查询 </el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-form>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Plus /> </el-icon\r\n\t\t\t\t\t\t>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Edit /> </el-icon\r\n\t\t\t\t\t\t>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onabolishLibrary\"> 废止库 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Upload />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Download />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t<!-- <el-button size=\"default\">-->\r\n\t\t\t\t\t<!-- <el-icon>-->\r\n\t\t\t\t\t<!-- <Refresh />-->\r\n\t\t\t\t\t<!-- </el-icon>-->\r\n\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column prop=\"name\" label=\"预案名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column prop=\"type\" label=\"预案类型\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.type == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.type == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.type == 3\">专项应急预案</span>\r\n <span v-if=\"scope.row.type == 4\">其他预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"level\" label=\"预案级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.level == 1\">综合应急预案</span>\r\n <span v-if=\"scope.row.level == 2\">现场处置方案</span>\r\n <span v-if=\"scope.row.level == 3\">专项应急预案</span>\r\n </template>\r\n </el-table-column>\r\n\t\t\t\t<el-table-column prop=\"releaseDate\" label=\"发布实施日期\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"isDialogFormVisible(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPlay /> </el-icon\r\n\t\t\t\t\t\t\t>启动\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"abolish(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<VideoPause /> </el-icon\r\n\t\t\t\t\t\t\t>废止\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\">\r\n\t\t\t\t\t\t\t\t<EditPen /> </el-icon\r\n\t\t\t\t\t\t\t>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 0 || scope.row.approveStatus === null\"\r\n\t\t\t\t\t\t\t@click=\"initiateApproval(scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t发起审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === true\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('修改',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button\r\n\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\ttext\r\n\t\t\t\t\t\t\ttype=\"primary\"\r\n\t\t\t\t\t\t\tv-if=\"scope.row.approveStatus === 2 && scope.row.checkApprove === false\"\r\n\t\t\t\t\t\t\t@click=\"onApproval('详情',scope.row.approveId,scope.row.id)\"\r\n\t\t\t\t\t\t>\r\n 查看审批\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" v-if=\"scope.row.approveStatus === 3\" @click=\"onApprovalProcess(scope.row.id)\">\r\n\t\t\t\t\t\t\t查看审批流程\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"jumpFrom(0)\">-->\r\n\t\t\t\t\t\t<!-- <el-icon style=\"margin-right: 5px;\">-->\r\n\t\t\t\t\t\t<!-- <EditPen />-->\r\n\t\t\t\t\t\t<!-- </el-icon>修改-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text type=\"primary\" @click=\"abolish(0)\">-->\r\n\t\t\t\t\t\t<!-- 发起审批-->\r\n\t\t\t\t\t\t<!-- </el-button>-->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t\t<Delete /> </el-icon\r\n\t\t\t\t\t\t\t>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tclass=\"mt15\"\r\n\t\t\t\t\tbackground\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"onHandleSizeChange\"\r\n\t\t\t\t\t@current-change=\"onHandleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<AbolishLibrary ref=\"abolishRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<InitiateApproval ref=\"initiateApprovalRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<Approval ref=\"approvalRef\" @myAdd=\"onMyAdd\" />\r\n <ApprovalProcess ref=\"processRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<!-- <StartUp ref=\"startRef\" @myAdd=\"startUp\"/>-->\r\n\t\t<el-dialog v-model=\"dialogFormVisible\" width=\"30%\" title=\"启动\" :fullscreen=\"full\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" label-width=\"80px\">\r\n\t\t\t\t<el-form-item label=\"备注\">\r\n\t\t\t\t\t<el-input v-model=\"form.remark\" type=\"textarea\" autocomplete=\"off\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"dialogFormVisible = false\">取消</el-button>\r\n\t\t\t\t\t<el-button type=\"primary\" @click=\"onDetermine\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage } from 'element-plus';\r\n// import {useRouter} from \"vue-router\"\r\nimport type {} from // FormInstance,\r\n'element-plus';\r\nimport { Plus, Edit, Delete, Upload, Download, Refresh, VideoPause, VideoPlay, EditPen, FullScreen } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/contingencyManagement/panManagement/component/openAdd.vue';\r\n// import StartUp from '/@/views/contingencyManagement/panManagement/component/startUp.vue';\r\nimport AbolishLibrary from '/@/views/contingencyManagement/panManagement/component/abolishLibrary.vue';\r\nimport ApprovalProcess from '/@/views/contingencyManagement/panManagement/component/approvalProcess.vue';\r\nimport InitiateApproval from '/@/views/contingencyManagement/panManagement/component/initiateApproval.vue';\r\nimport Approval from '/@/views/contingencyManagement/panManagement/component/approval.vue';\r\n// import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { emergencyPlanLogApi } from '/@/api/contingencyManagement/emergencyPlanLog';\r\n\r\nexport default defineComponent({\r\n\tname: 'systemUser',\r\n\tcomponents: {\r\n\t\tOpenAdd,\r\n\t\t// StartUp,\r\n\t\tInitiateApproval,\r\n\t\tAbolishLibrary,\r\n\t\tApproval,\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tVideoPause,\r\n\t\tVideoPlay,\r\n ApprovalProcess,\r\n\t\t// UpData,\r\n\t\temergencyPlanApi,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tname: '',\r\n\t\t\t\ttype: '',\r\n\t\t\t\tabolishStatus: false,\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst onSubmit = async () => {\r\n\t\t\tlet res = await emergencyPlanApi().getEmergencyPlanList(listQuery);\r\n\t\t\tif (res.data.code === '200') {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.name = '';\r\n\t\t\tlistQuery.searchParams.type = '';\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\r\n\t\t// 上传\r\n\t\t// const upShow=ref()\r\n\t\t// const upButton=()=>{\r\n\t\t// upShow.value.openDialog()\r\n\t\t// }\r\n\t\t// 启动弹窗\r\n\t\tconst isDialogFormVisible = (data: any) => {\r\n\t\t\tdialogFormVisible.value = true;\r\n\t\t\tform.value.planId = data;\r\n\t\t};\r\n\t\tconst dialogFormVisible = ref(false);\r\n\t\tconst form = ref({\r\n\t\t\tremark: '',\r\n\t\t});\r\n\t\tconst onDetermine = () => {\r\n\t\t\tdialogFormVisible.value = false;\r\n\t\t\temergencyPlanLogApi()\r\n\t\t\t\t.addEmergencyPlanLog(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tremark: '',\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 打开新增用户弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建应急预案管理', false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tonSubmit();\r\n\t\t\t} else {\r\n\t\t\t\tonSubmit();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 打开修改应急预案管理弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看应急预案管理', row, true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改应急预案管理', row, false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t//打开废止库弹窗\r\n\t\tconst abolishRef = ref();\r\n\t\tconst onabolishLibrary = () => {\r\n\t\t\tabolishRef.value.openDialog();\r\n\t\t};\r\n\t\t// 废止\r\n\t\tconst abolish = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定要废止所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.EmergencyTeam(data)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\t// 删除用户\r\n\t\tconst onRowDel = (id: number) => {\r\n\t\t\tlet arr = [];\r\n\t\t\tarr.push(id);\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确认',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\r\n\t\tconst deleteAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeleteAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t.deleteEmergencyTeam(deleteAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tonSubmit();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst onHandleSizeChange = (val: number) => {\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst onHandleCurrentChange = (val: number) => {\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tonSubmit();\r\n\t\t};\r\n\r\n\t\t// const router=useRouter()\r\n\t\t// 修改跳转\r\n\t\t// const jumpFrom=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/processForm\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批跳转\r\n\t\t// const abolish=(data:string)=>{\r\n\t\t// router.push({\r\n\t\t// path:\"/abolishDialog\",\r\n\t\t// query:{\r\n\t\t// type:data\r\n\t\t// }\r\n\t\t// })\r\n\t\t// }\r\n\t\t// 发起审批弹窗\r\n\t\tconst initiateApprovalRef = ref();\r\n\t\tconst initiateApproval = (row: object) => {\r\n\t\t\tinitiateApprovalRef.value.openDialog('发起审批',row, true);\r\n\t\t};\r\n\t\t// 审批\r\n\t\tconst approvalRef = ref();\r\n\t\tconst onApproval = (val: string,row: object,id) => {\r\n if(val=='详情'){\r\n approvalRef.value.openDialog('查看审批', row, true);\r\n } else {\r\n approvalRef.value.openDialog('审批', row, false,id);\r\n }\r\n\t\t};\r\n // 审批流程\r\n const processRef = ref();\r\n const onApprovalProcess = (row:object,id) => {\r\n processRef.value.openDialog(row,id);\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 页面加载时\r\n\t\tonMounted(() => {\r\n\t\t\tonSubmit();\r\n\t\t});\r\n\t\treturn {\r\n\t\t\ttableData,\r\n\t\t\tonSubmit,\r\n\t\t\tonOpenAdd, //新增\r\n\t\t\taddRef,\r\n\t\t\tonabolishLibrary,\r\n\t\t\tabolishRef,\r\n\t\t\tabolish,\r\n\t\t\tonRowDel,\r\n\t\t\tonHandleSizeChange,\r\n\t\t\tonHandleCurrentChange,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tlistQuery,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\tsubmitReset,\r\n\t\t\tonMounted,\r\n\t\t\tdeleteAll,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDeleteAll,\r\n\t\t\tdialogFormVisible,\r\n\t\t\tisDialogFormVisible,\r\n\t\t\tform,\r\n\t\t\temit,\r\n\t\t\tonDetermine,\r\n\t\t\tonEdit,\r\n\t\t\tinitiateApproval,\r\n\t\t\tinitiateApprovalRef,\r\n\t\t\tonApproval,\r\n\t\t\tapprovalRef,\r\n onApprovalProcess,\r\n processRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n\tmargin-bottom: 10px;\r\n}\r\n.el-form .el-form-item {\r\n\tmargin-bottom: 0 !important;\r\n}\r\n.el-button--text {\r\n\tmargin-right: 15px;\r\n}\r\n.el-select {\r\n\twidth: 300px;\r\n}\r\n.el-input {\r\n\twidth: 300px;\r\n}\r\n.dialog-footer button:first-child {\r\n\tmargin-right: 10px;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer {\r\n\tborder-top: 1px solid #e8e8e8;\r\n\tborder-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n\tborder-bottom: 1px solid #e8e8e8;\r\n\tmargin-right: 0;\r\n\tborder-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n\tbackground-color: #f6f7fa;\r\n\tfont-weight: 400;\r\n\tcolor: #909399;\r\n}\r\n.el-table .sort-caret.ascending {\r\n\tborder-bottom-color: #c0c4cc;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue ---- a/src/views/contingencyManagement/panManagement/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/panManagement/index.vue (date 1660382056669) -@@ -23,19 +23,13 @@ - <div class="button_Line"> - <div class="button_Left"> - <el-button size="default" type="primary" @click="onOpenAdd"> -- <el-icon> -- <Plus /> </el-icon -- >新建 -+ <el-icon> <Plus /> </el-icon>新建 - </el-button> - <el-button size="default" type="warning" plain :disabled="warning"> -- <el-icon> -- <Edit /> </el-icon -- >修改 -+ <el-icon> <Edit /> </el-icon>修改 - </el-button> - <el-button size="default" type="danger" plain :disabled="danger" @click="onDeleteAll"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - <el-button size="default" type="primary" @click="onabolishLibrary"> 废止库 </el-button> - </div> -@@ -61,37 +55,31 @@ - <el-table-column type="selection" width="55" /> - <el-table-column prop="name" label="预案名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.type == 1">综合应急预案</span> -- <span v-if="scope.row.type == 2">现场处置方案</span> -- <span v-if="scope.row.type == 3">专项应急预案</span> -- <span v-if="scope.row.type == 4">其他预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.type == 1">综合应急预案</span> -+ <span v-if="scope.row.type == 2">现场处置方案</span> -+ <span v-if="scope.row.type == 3">专项应急预案</span> -+ <span v-if="scope.row.type == 4">其他预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="level" label="预案级别" show-overflow-tooltip sortable> -- <template #default="scope"> -- <span v-if="scope.row.level == 1">综合应急预案</span> -- <span v-if="scope.row.level == 2">现场处置方案</span> -- <span v-if="scope.row.level == 3">专项应急预案</span> -- </template> -- </el-table-column> -+ <template #default="scope"> -+ <span v-if="scope.row.level == 1">综合应急预案</span> -+ <span v-if="scope.row.level == 2">现场处置方案</span> -+ <span v-if="scope.row.level == 3">专项应急预案</span> -+ </template> -+ </el-table-column> - <el-table-column prop="releaseDate" label="发布实施日期" show-overflow-tooltip sortable></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="isDialogFormVisible(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPlay /> </el-icon -- >启动 -+ <el-icon style="margin-right: 5px"> <VideoPlay /> </el-icon>启动 - </el-button> - <el-button size="small" text type="primary" @click="abolish(scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <VideoPause /> </el-icon -- >废止 -+ <el-icon style="margin-right: 5px"> <VideoPause /> </el-icon>废止 - </el-button> - <el-button size="small" text type="primary" @click="onEdit('修改', scope.row.id)"> -- <el-icon style="margin-right: 5px"> -- <EditPen /> </el-icon -- >修改 -+ <el-icon style="margin-right: 5px"> <EditPen /> </el-icon>修改 - </el-button> - <el-button - size="small" -@@ -107,7 +95,7 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === true" -- @click="onApproval('修改',scope.row.approveId,scope.row.id)" -+ @click="onApproval('修改', scope.row.approveId, scope.row.id)" - > - 审批 - </el-button> -@@ -116,9 +104,9 @@ - text - type="primary" - v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === false" -- @click="onApproval('详情',scope.row.approveId,scope.row.id)" -+ @click="onApproval('详情', scope.row.approveId, scope.row.id)" - > -- 查看审批 -+ 查看审批 - </el-button> - <el-button size="small" text type="primary" v-if="scope.row.approveStatus === 3" @click="onApprovalProcess(scope.row.id)"> - 查看审批流程 -@@ -132,9 +120,7 @@ - <!-- 发起审批--> - <!-- </el-button>--> - <el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> -- <el-icon> -- <Delete /> </el-icon -- >删除 -+ <el-icon> <Delete /> </el-icon>删除 - </el-button> - </template> - </el-table-column> -@@ -159,7 +145,7 @@ - <AbolishLibrary ref="abolishRef" @myAdd="onMyAdd" /> - <InitiateApproval ref="initiateApprovalRef" @myAdd="onMyAdd" /> - <Approval ref="approvalRef" @myAdd="onMyAdd" /> -- <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> -+ <ApprovalProcess ref="processRef" @myAdd="onMyAdd" /> - <!-- <StartUp ref="startRef" @myAdd="startUp"/>--> - <el-dialog v-model="dialogFormVisible" width="30%" title="启动" :fullscreen="full"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -@@ -212,7 +198,7 @@ - Refresh, - VideoPause, - VideoPlay, -- ApprovalProcess, -+ ApprovalProcess, - // UpData, - emergencyPlanApi, - }, -@@ -469,22 +455,22 @@ - // 发起审批弹窗 - const initiateApprovalRef = ref(); - const initiateApproval = (row: object) => { -- initiateApprovalRef.value.openDialog('发起审批',row, true); -+ initiateApprovalRef.value.openDialog('发起审批', row, true); - }; - // 审批 - const approvalRef = ref(); -- const onApproval = (val: string,row: object,id) => { -- if(val=='详情'){ -- approvalRef.value.openDialog('查看审批', row, true); -- } else { -- approvalRef.value.openDialog('审批', row, false,id); -- } -+ const onApproval = (val: string, row: object, id) => { -+ if (val == '详情') { -+ approvalRef.value.openDialog('查看审批', row, true); -+ } else { -+ approvalRef.value.openDialog('审批', row, false, id); -+ } - }; -- // 审批流程 -- const processRef = ref(); -- const onApprovalProcess = (row:object,id) => { -- processRef.value.openDialog(row,id); -- }; -+ // 审批流程 -+ const processRef = ref(); -+ const onApprovalProcess = (row: object, id) => { -+ processRef.value.openDialog(row, id); -+ }; - - //全屏 - const full = ref(false); -@@ -535,8 +521,8 @@ - initiateApprovalRef, - onApproval, - approvalRef, -- onApprovalProcess, -- processRef, -+ onApprovalProcess, -+ processRef, - }; - }, - }); -@@ -625,4 +611,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetDecompositionYear/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title,ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\tadd,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue ---- a/src/views/goalManagement/targetDecompositionYear/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetDecompositionYear/index.vue (date 1660382056673) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="tableData.targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -103,6 +103,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/components/uploaderFile/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderFile/index.vue b/src/components/uploaderFile/index.vue -new file mode 100644 ---- /dev/null (date 1660382056805) -+++ b/src/components/uploaderFile/index.vue (date 1660382056805) -@@ -0,0 +1,178 @@ -+<template> -+ <el-upload -+ v-model:file-list="fileList" -+ multiple -+ :disabled="disabled" -+ class="upload-demo" -+ :http-request="uploadSectionFile" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" -+ > -+ <el-button type="primary">点击上传</el-button> -+ <template #tip> -+ <div class="el-upload__tip"> -+ 请上传文件 -+ <!--jpg/png files with a size less than 500KB.--> -+ </div> -+ <slot name="file"> -+ -+ </slot> -+ </template> -+ </el-upload> -+ -+ <!--<el-dialog v-model="dialogVisible">--> -+ <!--<img w-full :src="dialogImageUrl" alt="Preview Image" />--> -+ <!--</el-dialog>--> -+</template> -+<script lang="ts"> -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+ -+export default defineComponent({ -+ props: { -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, -+ }, -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); -+ -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ emit('deleteFile',uploadFiles); -+ }; -+ -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ goalManagementApi() -+ .searchFile(uploadFile.fileName) -+ .then((res) => { -+ window.open(res.data, "_blank"); -+ }) -+ dialogImageUrl.value = uploadFile.url!; -+ // dialogVisible.value = true; -+ }; -+ -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] -+ } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].name=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; -+ -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; -+ -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -+<style scoped> -+ .upload-demo{ -+ width: 100%; -+ } -+</style> -Index: src/views/goalManagement/targetDecompositionYear/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"目标分解\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"formUp.targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" property=\"dutyDepartmentName\" label=\"责任部门\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"value\" label=\"考核指标\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makerDepartmentName\" label=\"制定人部门\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"commitPersonName\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" property=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link :disabled=\"disabled\" type=\"primary\" @click=\"Delete(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"disabled == false\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { emit } from 'process';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { DailogAdd, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tqName: '',\r\n\t\t\tindexNum: '',\r\n\t\t\tyear: '',\r\n\t\t\tvalue: '',\r\n\t\t\ttargetDivideDetailList: [],\r\n\t\t});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t\tformUp.targetDivideDetailList = form.value.targetDivideDetailList;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (val: object) => {\r\n\t\t\tform.value = val;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = formUp.targetDivideDetailList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst formUp = reactive({\r\n\t\t\ttargetId: '', //关联的目标指标/外键\r\n\t\t\tdelTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n\t\t\ttargetDivideDetailList: [], //目标指标分解列表\r\n\t\t});\r\n\r\n\t\tconst add = (val: any) => {\r\n\t\t\tconst item = deepClone(val);\r\n\t\t\tconsole.log(item)\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tformUp.targetDivideDetailList.push(item);\r\n\t\t\t} else {\r\n\t\t\t\tformUp.targetDivideDetailList[index.value] = item;\r\n\t\t\t}\r\n\r\n\t\t\t// let obj=JSON.parse(JSON.stringify(form.value))\r\n\t\t};\r\n\t\t// 新增\r\n\t\tconst submitForm = () => {\r\n\t\t\tformUp.delTargetDivideDetails = arr.value.toString();\r\n\t\t\tformUp.targetId = form.value.id;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tfor(let i=0;i<formUp.targetDivideDetailList.length;i++){\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].dutyDepartmentName\r\n\t\t\t\tdelete formUp.targetDivideDetailList[i].makerDepartmentName\r\n\t\t\t}\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDivideDetail(formUp)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('addList');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\tconst arr = ref([]);\r\n\t\t// 删除\r\n\t\tconst Delete = (data: any) => {\r\n\t\t\tformUp.targetDivideDetailList.splice(form.value.targetDivideDetailList.indexOf(data), 1);\r\n\t\t\tformUp.targetId = data.targetId;\r\n\t\t\tarr.value.push(data.id);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\t\t// 关闭\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tqName: '',\r\n\t\t\t\tindexNum: '',\r\n\t\t\t\tyear: '',\r\n\t\t\t\tvalue: '',\r\n\t\t\t\ttargetDivideDetailList: [],\r\n\t\t\t};\r\n\t\t\ttableData.value = [];\r\n\t\t\tformUp.targetId = '';\r\n\t\t\tformUp.delTargetDivideDetails = '';\r\n\t\t\tformUp.targetDivideDetailList = [];\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 时间格式处理\r\n\t\t// const timeDate = (data: any) => {\r\n\t\t// \tlet result = new Date(data).getTime();\r\n\t\t// \treturn result;\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\ttimeDate,\r\n\t\t\tarr,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tonNumber,\r\n\t\t\ttargetType,\r\n\t\t\tdisabled,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tadd,\r\n\t\t\tformUp,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue ---- a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue (date 1660382056676) -@@ -40,7 +40,7 @@ - <el-table-column align="center" property="dutyDepartmentName" label="责任部门" width="180" /> - <el-table-column align="center" property="value" label="考核指标" width="180" /> - <el-table-column align="center" property="makerDepartmentName" label="制定人部门" /> -- <el-table-column align="center" property="makeDate" label="制定日期" /> -+ <el-table-column align="center" property="makeDate" :formatter="timeDate" label="制定日期" /> - <el-table-column align="center" property="commitPersonName" label="上报人" /> - <el-table-column align="center" property="操作"> - <template #default="scope"> -@@ -96,12 +96,28 @@ - if (res.data.code == 200) { - form.value = res.data.data; - formUp.targetDivideDetailList = form.value.targetDivideDetailList; -+ for(let i=0;i<formUp.targetDivideDetailList.length;i++){ -+ formUp.targetDivideDetailList[i].makeDate=timeC(formUp.targetDivideDetailList[i].makeDate) -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - } - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - const onNumber = (val: object) => { - form.value = val; - }; -@@ -209,6 +225,7 @@ - // return result; - // }; - return { -+ timeC, - index, - timeDate, - arr, -Index: src/views/contingencyManagement/panManagement/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog\r\n\t\t\t:title=\"titles\"\r\n\t\t\tv-model=\"isShowDialog\"\r\n\t\t\twidth=\"50%\"\r\n\t\t\tdraggable\r\n\t\t\t:fullscreen=\"full\"\r\n\t\t\t:close-on-click-modal=\"false\"\r\n\t\t\t@close=\"resetForm(ruleFormRef)\"\r\n\t\t>\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :disabled=\"disabled\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案名称\" prop=\"name\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.name\" placeholder=\"请填写队伍名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"适用部门\" prop=\"responsibleDepartment\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"responsibleDepartment\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\t\tcheck-on-click-node\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t\t@change=\"changeDepartment\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t<el-divider />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案类型\" prop=\"type\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.type\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"综合应急预案\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"现场处置方案\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"专项应急预案\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"其他预案\" value=\"4\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"危险源关联\" prop=\"associatedDanger\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.associatedDanger\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"是\" :value=\"false\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"否\" :value=\"true\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"预案级别\" prop=\"level\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.level\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"公司级\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"分厂级\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"车间级\" value=\"3\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写人\" prop=\"authorId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.authorName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"编写部门\" prop=\"authorDeptId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.authorDeptId\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\tclearable\r\n\t\t\t\t\t\t\t\t:render-after-expand=\"false\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发布实施日期\" prop=\"releaseDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.releaseDate\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急队伍\" prop=\"emergencyTeam\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.teamName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt(0)\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\t\t:on-change=\"handleChange\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"区域名称\" prop=\"areaName\">-->\r\n\t\t\t\t\t<!-- <el-input-->\r\n\t\t\t\t\t<!-- v-model=\"ruleForm.areaName\"-->\r\n\t\t\t\t\t<!-- placeholder=\"请选择\"-->\r\n\t\t\t\t\t<!-- class=\"input-with-select\"-->\r\n\t\t\t\t\t<!-- >-->\r\n\t\t\t\t\t<!-- <template #append>-->\r\n\t\t\t\t\t<!-- <el-button :icon=\"Search\" @click=\"regionsDialog\"/>-->\r\n\t\t\t\t\t<!-- </template>-->\r\n\t\t\t\t\t<!-- </el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<CheckTemplate ref=\"Shows\" @SearchUser=\"SearchUser\" />\r\n\t\t<DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { ref, defineComponent, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t},\r\n\tsetup(prop, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst ruleForm = ref({\r\n\t\t\tname: '', // 预案名称\r\n\t\t\ttype: '', //预案类型\r\n\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\tlevel: '', // 预案级别\r\n\t\t\tauthorUid: '', // 编写人\r\n\t\t\tauthorName: '',\r\n\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\tfileList: [],\r\n\t\t\tareaList: [], //区域列表\r\n\t\t\tteamList: [],\r\n\t\t\t// teamId: '', //应急队伍\r\n\t\t\tdeptList: [],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看应急预案管理' || title == '修改应急预案管理') {\r\n\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t.seeEmergencyTeam(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\truleForm.value.teamName = ''\r\n\t\t\t\t\t\t\tresponsibleDepartment.value = []\r\n\t\t\t\t\t\t\tif(res.data.data.teamList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.teamList.length;a++){\r\n\t\t\t\t\t\t\t\t\truleForm.value.teamName+=res.data.data.teamList[a].teamName+';'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif(res.data.data.deptList){\r\n\t\t\t\t\t\t\t\tfor(var a = 0;a<res.data.data.deptList.length;a++){\r\n\r\n\t\t\t\t\t\t\t\t\tresponsibleDepartment.value.push(res.data.data.deptList[a].departmentId)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst releaseDate = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst changeDepartment = (e) => {\r\n\t\t\tvar temList = [];\r\n\t\t\tfor (var a = 0; a < e.length; a++) {\r\n\t\t\t\ttemList.push({\r\n departmentId: e[a],\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.deptList = temList;\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t};\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref([]);\r\n\t\tconst data = ref();\r\n\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\tdelete ruleForm.value.teamName\r\n\t\t\t\t\t\temergencyPlanApi()\r\n\t\t\t\t\t\t\t.addEmergencyPlan(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改应急预案管理') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n delete ruleForm.value.teamName\r\n emergencyPlanApi()\r\n\t\t\t\t\t\t\t.editEmergencyTeam(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tname: '', // 预案名称\r\n\t\t\t\t\ttype: '', //预案类型\r\n\t\t\t\t\tassociatedDanger: '', // 危险源关联\r\n\t\t\t\t\tlevel: '', // 预案级别\r\n\t\t\t\t\tauthorUid: '', // 编写人\r\n\t\t\t\t\tauthorName: '',\r\n\t\t\t\t\tauthorDeptId: '', // 编写部门\r\n\t\t\t\t\treleaseDate: '', // 发布实施日期\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\t// teamId: '', //应急队伍ID\r\n\t\t\t\t\tareaList: [], //区域列表\r\n\t\t\t\t\tteamList: [],\r\n\t\t\t\t\tdeptList: [],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\truleForm.value = {};\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (data: any) => {\r\n\t\t\tShows.value.openDailog(data);\r\n\t\t};\r\n\t\tconst SearchUser = (val: any) => {\r\n\t\t\tlet arr = [];\r\n\t\t\truleForm.value.teamList = [];\r\n\t\t\tfor (let i = 0; i < val.length; i++) {\r\n\t\t\t\tarr.push(val[i].teamName);\r\n\t\t\t\truleForm.value.teamList.push({\r\n\t\t\t\t\tteamId: val[i].id,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\truleForm.value.teamName = arr.toString();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\t//回显\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\truleForm.value.authorUid = e[0].uid;\r\n\t\t\truleForm.value.authorName = e[0].realName;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\treleaseDate,\r\n\t\t\t// treeSelect,\r\n\t\t\t// trees,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\tSearchUser,\r\n\t\t\tsubmitForm,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tisShowDialog,\r\n\t\t\truleFormRef,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonUser,\r\n\t\t\tnewTreeList,\r\n\t\t\tchangeDepartment,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue ---- a/src/views/contingencyManagement/panManagement/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue (date 1660382056683) -@@ -106,17 +106,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <!-- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">--> -@@ -158,13 +149,14 @@ - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import { emergencyPlanApi } from '/@/api/contingencyManagement/emergencyPlan'; - import { goalManagementApi } from '/@/api/goalManagement'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - CheckTemplate, - DailogSearchUserManger, - RegionsDialog, -+ uploaderFile - }, - setup(prop, { emit }) { - const isShowDialog = ref(false); -@@ -211,15 +203,35 @@ - responsibleDepartment.value.push(res.data.data.deptList[a].departmentId) - } - } -- -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const releaseDate = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ const fileList = ref([]); - //el-tree-select回显 - const propse = { - label: 'depName', -@@ -272,6 +284,9 @@ - const data = ref(); - - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急预案管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -306,10 +321,9 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] -- isShowDialog.value = false; -- delete ruleForm.value.teamName -- emergencyPlanApi() -+ isShowDialog.value = false; -+ delete ruleForm.value.teamName -+ emergencyPlanApi() - .editEmergencyTeam(ruleForm.value) - .then((res) => { - if (res.data.code == 200) { -@@ -356,6 +370,7 @@ - if (!formEl) return; - formEl.resetFields(); - ruleForm.value = {}; -+ fileList.value = [] - }; - // 应急队伍弹窗 - const Shows = ref(); -@@ -429,6 +444,8 @@ - onUser, - newTreeList, - changeDepartment, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -451,4 +468,4 @@ - .el-select { - width: 100%; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetEscalation/component/TypeDailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/TypeDailog.vue b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue -new file mode 100644 ---- /dev/null (date 1660382056825) -+++ b/src/views/goalManagement/targetEscalation/component/TypeDailog.vue (date 1660382056825) -@@ -0,0 +1,271 @@ -+<template> -+ <el-dialog :title="titleName" v-model="dialogVisible" @click="resetForm" width="50%" draggable :fullscreen="full" :close-on-click-modal="false"> -+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> -+ <el-form ref="ruleFormRef" :model="form" size="default" :disabled="disabled" label-width="120px"> -+ <div v-if="titleName=='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="titleName!='发起审批'"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="formUp.workName" :disabled="disabledT" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="formUp.title" :disabled="disabledT" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="formUp.approvePersonName" :disabled="disabledT" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ <div v-if="typeScope"> -+ <el-row> -+ <el-col> -+ <el-form-item label="审批结果" prop="authorUid"> -+ <el-radio-group v-model="form.approveResult"> -+ <el-radio :label="0">不通过</el-radio> -+ <el-radio :label="1">通过</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="审批意见" prop="approveMemo"> -+ <el-input v-model="form.approveMemo" type="textarea" placeholder="请填写审批意见"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="24"> -+ <el-form-item label="是否完成" prop="complete"> -+ <el-radio-group v-model="form.approveStatus"> -+ <el-radio :label="3">是</el-radio> -+ <el-radio :label="2">否</el-radio> -+ </el-radio-group> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <div v-if="form.approveStatus==2"> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批名称" prop="workName" size="default"> -+ <el-input v-model="form.workName" placeholder="请填写名称"></el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"> -+ <el-form-item label="审批标题" prop="title" size="default"> -+ <el-input v-model="form.title" placeholder="请填写标题"></el-input> -+ </el-form-item> -+ </el-col> -+ </el-row> -+ <el-row> -+ <el-col :span="11"> -+ <el-form-item label="审批人" prop="approvePersonId" size="default"> -+ <el-input v-model="form.approvePersonName" placeholder="请选择" class="input-with-select"> -+ <template #append> -+ <el-button :icon="Search" @click="openUser" /> -+ </template> -+ </el-input> -+ </el-form-item> -+ </el-col> -+ <el-col :span="11" :offset="2"></el-col> -+ </el-row> -+ </div> -+ </div> -+ </el-form> -+ <template #footer> -+ <span class="dialog-footer"> -+ <el-button @click="resetForm" size="default">关闭</el-button> -+ <el-button size="default" type="primary" @click="submitForm">确定</el-button> -+ </span> -+ </template> -+ </el-dialog> -+ <DailogSearchUserManger ref="userRef" @SearchUser="onUser" /> -+</template> -+<script lang="ts"> -+import { ref, defineComponent } from 'vue'; -+import DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; -+import { Search, FullScreen } from '@element-plus/icons-vue'; -+export default defineComponent({ -+ components: { DailogSearchUserManger }, -+ setup(props, { emit }) { -+ const dialogVisible = ref(false); -+ const form = ref({ -+ workName: '', // 审批名称 -+ title: '', //审批标题 -+ approvePersonId: '', -+ approvePersonName: '', -+ approveStatus: 2, -+ approveResult: '', -+ relateType: 1, -+ relateId: '', -+ }); -+ // 提交 -+ const submitForm = () => { -+ if (titleName.value == '发起审批') { -+ goalManagementApi() -+ .getworkApproveAdd(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } else if (titleName.value == '审批') { -+ goalManagementApi() -+ .getworkApproveUpdata(form.value) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ showClose: true, -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('onType'); -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ // 关闭 -+ const resetForm = () => { -+ dialogVisible.value = false; -+ disabled.value = false; -+ disabledT.value = false; -+ form.value={} -+ formUp.value={} -+ }; -+ const titleName = ref(); -+ const typeScope = ref(); -+ const disabledT = ref(false); -+ const disabled = ref(false); -+ const formUp=ref({ -+ workName:"", -+ title:"", -+ approvePersonName:"" -+ }) -+ // 打开弹窗 -+ const openDialog = (title: string, name: string, id: number,type:number) => { -+ dialogVisible.value = true; -+ titleName.value = title; -+ form.value.relateType=type -+ if (title == '发起审批') { -+ form.value.relateId = id; -+ typeScope.value = false; -+ } else if (title == '审批'||title == '查看审批') { -+ goalManagementApi() -+ .getworkApproveDetail(id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ form.value = res.data.data; -+ form.value.approveStatus="" -+ formUp.value.workName=form.value.workName -+ formUp.value.title=form.value.title -+ formUp.value.approvePersonName=form.value.approvePersonName -+ if (form.value.approvePersonName === form.value.submitPersonName) { -+ disabled.value = false; -+ } else { -+ disabled.value = true; -+ } -+ } -+ }); -+ typeScope.value = true; -+ disabledT.value = true; -+ } -+ }; -+ // 打开用户选择弹窗 -+ const userRef = ref(); -+ const openUser = () => { -+ userRef.value.openDailog(); -+ }; -+ const onUser = (val: any) => { -+ form.value.approvePersonId = val[0].uid; -+ form.value.approvePersonName = val[0].realName; -+ }; -+ //全屏 -+ const full = ref(false); -+ const toggleFullscreen = () => { -+ if (full.value == false) { -+ full.value = true; -+ } else { -+ full.value = false; -+ } -+ }; -+ return { -+ formUp, -+ onUser, -+ dialogVisible, -+ form, -+ disabledT, -+ submitForm, -+ resetForm, -+ titleName, -+ typeScope, -+ disabled, -+ openDialog, -+ userRef, -+ openUser, -+ full, -+ toggleFullscreen, -+ Search, -+ FullScreen, -+ }; -+ }, -+}); -+</script> -+<style> -+.el-row { -+ padding-bottom: 20px; -+} -+</style> -Index: src/views/goalManagement/targetDecompositionMonth/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" type=\"warning\" :disabled=\"warning\" :icon=\"EditPen\" plain>修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t<el-tabs v-model=\"activeNames\">\r\n\t\t\t\t\t\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"targetDivideDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定人部门\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"上报人\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</el-tab-pane>\r\n\t\t\t\t\t\t\t</el-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"small\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\" @addList=\"add\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport search from '../targetSettings/component/search.vue';\r\nimport Dailog from '../targetDecompositionYear/component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '2', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 下方导航与表格\r\n\t\tconst tableData = ref([]);\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeNames = ref('1');\r\n\t\t// 打开弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\tShow.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\tconst add=()=>{\r\n\t\t\tlistApi()\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tadd,\r\n\t\t\tlistApi,\r\n\t\t\tresetForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\truleForm,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenD,\r\n\t\t\tactiveNames,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue ---- a/src/views/goalManagement/targetDecompositionMonth/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue (date 1660382056698) -@@ -23,7 +23,7 @@ - <div class="minCenter"> - <div class="btns"> - <div> -- <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button> -+ <!--<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>--> - <!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button> - </div> -@@ -32,16 +32,16 @@ - <el-table-column label="序号" align="center" type="index" width="70" /> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> - <el-tabs v-model="activeNames"> - <el-tab-pane label="目标指标分解" name="1"> -- <el-table :data="targetDivideDetailList" style="width: 100%"> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -+ <el-table :data="scope.row.targetDivideDetailList" style="width: 100%"> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> - <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定人部门" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定人部门" /> - <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="commitPersonId" label="上报人" /> -+ <el-table-column align="center" prop="commitPersonName" label="上报人" /> - </el-table> - </el-tab-pane> - </el-tabs> -@@ -105,6 +105,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/performanceAppraisal/component/DailogAq.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"handleClose(ruleFormRef)\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核标题\" size=\"default\" prop=\"title\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\" placeholder=\"请填写考核标题\"></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核日期\" size=\"default\" prop=\"examineDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.examineDate\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\" prop=\"acceptanceNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"总分\" size=\"default\" prop=\"examineTotalNumber\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examineTotalNumber\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核部门\" size=\"default\" prop=\"examineDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.examineDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData1\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核人\" size=\"default\" prop=\"examinePersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.examinePersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(1)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"被考核部门\" size=\"default\" prop=\"beExaminedDepartmentId\">\r\n\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\tv-model=\"form.beExaminedDepartmentId\"\r\n\t\t\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\t\t\t@node-click=\"nameData2\"\r\n\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\tcheck-strictly\r\n\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"被考核人\" size=\"default\" prop=\"beExaminedPersonName\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.beExaminedPersonName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt(0)\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"考核模板\" size=\"default\" prop=\"examineTemplateName\">\r\n\t\t\t\t\t\t<el-input disabled v-model=\"form.examineTemplateName\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiAdd\" /></template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"考核项目\" name=\"1\">\r\n\t\t\t\t<!-- <el-button type=\"primary\" size=\"default\" @click=\"daiAdd\">新增</el-button> -->\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"考核项目\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"考核分数\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t<el-input v-model=\"scope.row.address\" type=\"textarea\"> </el-input>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t\t<!-- <el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报人\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default>\r\n\t\t\t\t\t<el-button link type=\"primary\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column> -->\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Show\"></DailogSearch>\r\n\t<DailogSearchUser ref=\"Shows\" @SearchUser=\"userId\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser, DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tbeExaminedDepartmentId: '', ////被考核部门ID/外键\r\n\t\t\tbeExaminedDepartmentName: '',\r\n\t\t\tbeExaminedPersonId: '', ////被考核人ID/外键(可能有多个,用逗号隔开)\r\n\t\t\tbeExaminedPersonName: '',\r\n\t\t\texamineDate: '', ////考核日期\r\n\t\t\texamineDepartmentId: '', ////考核部门ID/外键\r\n\t\t\texamineDepartmentName: '',\r\n\t\t\texaminePersonId: '', ////考核人ID/外键\r\n\t\t\texaminePersonName: '',\r\n\t\t\texamineTemplateId: 1, ////绩效考核模板ID/外键\r\n\t\t\texamineTemplateName: '',\r\n\t\t\texamineTotalNumber: '', ////总分\r\n\t\t\textraFile: '9', //责任书附件\r\n\t\t\titemDetail: '', ////考核项目\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tnumberDetailJson: '[{\"id\":\"123\",\"number\":\"123\"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:\"123\",\"number\":\"123\"}]\r\n\t\t\ttitle: '', ////考核标题\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdepartment();\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 验证\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\ttitle: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }],\r\n\t\t\texamineDate: [{ required: true, message: '考核日期不能为空', trigger: 'blur' }],\r\n\t\t\texamineDepartmentId: [{ required: true, message: '考核部门不能为空', trigger: 'blur' }],\r\n\t\t\texaminePersonName: [],\r\n\t\t\texaminePersonId: [],\r\n\t\t\tbeExaminedDepartmentId: [{ required: true, message: '被考核部门不能为空', trigger: 'blur' }],\r\n\t\t\tbeExaminedPersonName: [],\r\n\t\t\tbeExaminedPersonId: [],\r\n\t\t\texamineTemplateId: [],\r\n\t\t\texamineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }],\r\n\t\t\tmemo: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst handleClose=(formEl: FormInstance | undefined)=>{\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t}\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = (type: any) => {\r\n\t\t\tShows.value.openDailog(type);\r\n\t\t};\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst userId = (val: any, type: any) => {\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.examinePersonId = val.uid;\r\n\t\t\t\tform.value.examinePersonName = val.realName;\r\n\t\t\t} else if (type == 0) {\r\n\t\t\t\tlet uid=[]\r\n\t\t\t\tlet realName=[]\r\n\t\t\t\tfor(let i=0;i<val.length;i++){\r\n\t\t\t\t\tuid.push(val[i].uid)\r\n\t\t\t\t\trealName.push(val[i].realName)\r\n\t\t\t\t}\r\n\t\t\t\tform.value.beExaminedPersonId = uid.toString();\r\n\t\t\t\tform.value.beExaminedPersonName =realName.toString();\r\n\t\t\t\tconsole.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName)\r\n\t\t\t}\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst nameData1 = (val: any) => {\r\n\t\t\tform.value.examineDepartmentName = val.depName;\r\n\t\t};\r\n\t\tconst nameData2 = (val: any) => {\r\n\t\t\tform.value.beExaminedDepartmentName = val.depName;\r\n\t\t\tconsole.log(form.value);\r\n\t\t};\r\n\t\treturn {\r\n\t\t\trules,\r\n\t\t\thandleClose,\r\n\t\t\tnameData1,\r\n\t\t\tnameData2,\r\n\t\t\truleFormRef,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tuserId,\r\n\t\t\tactiveName,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\topenDailog,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue (date 1660382056702) -@@ -10,7 +10,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="考核日期" size="default" prop="examineDate"> -- <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.examineDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -72,30 +79,16 @@ - </el-row> - <el-row> - <el-col :span="24"> -- <el-form-item label="考核模板"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <el-form-item label="附件"> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="考核模板" size="default" prop="examineTemplateName"> -- <el-input disabled v-model="form.examineTemplateName"> -+ <el-input v-model="form.examineTemplateName"> - <template #append> <el-button :icon="Search" @click="daiAdd" /></template> - </el-input> - </el-form-item> -@@ -112,12 +105,12 @@ - <!-- <el-button type="primary" size="default" @click="daiAdd">新增</el-button> --> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" prop="date" label="考核项目" /> -- <el-table-column align="center" prop="name" label="考核内容" /> -+ <el-table :data="form.numberDetailJson" style="width: 100%"> -+ <el-table-column align="center" prop="itemDetail" label="考核项目" /> -+ <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" label="考核分数"> - <template #default="scope"> -- <el-input v-model="scope.row.address" type="textarea"> </el-input> -+ <el-input @blur="numberC" v-model.number="scope.row.number"> </el-input> - </template> - </el-table-column> - <!-- <el-table-column align="center" prop="address" label="制定日期" /> -@@ -135,7 +128,7 @@ - </span> - </template> - </el-dialog> -- <DailogSearch ref="Show"></DailogSearch> -+ <DailogSearch ref="Show" @typeDome="onType"></DailogSearch> - <DailogSearchUser ref="Shows" @SearchUser="userId"></DailogSearchUser> - </template> - <script lang="ts"> -@@ -147,8 +140,9 @@ - import { goalManagementApi } from '/@/api/goalManagement'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearchUser, DailogSearch }, -+ components: { DailogSearchUser, DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const ruleFormRef = ref<FormInstance>(); -@@ -162,13 +156,14 @@ - examineDepartmentName: '', - examinePersonId: '', ////考核人ID/外键 - examinePersonName: '', -- examineTemplateId: 1, ////绩效考核模板ID/外键 -+ examineTemplateId: '', ////绩效考核模板ID/外键 - examineTemplateName: '', - examineTotalNumber: '', ////总分 -- extraFile: '9', //责任书附件 -+ acceptanceNumber: '', ///合格分数 -+ extraFile: '', //责任书附件 - itemDetail: '', ////考核项目 - memo: '', ////备注信息 -- numberDetailJson: '[{"id":"123","number":"123"}]', ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] -+ numberDetailJson: [], ////各个考核项目的具体得分,json格式。形式为:[{“id”:"123","number":"123"}] - title: '', ////考核标题 - }); - const titles = ref(); -@@ -185,11 +180,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.examineDate = timeC(form.value.examineDate); -+ form.value.numberDetailJson = form.value.currentExamineDtoList; -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } -+ -+ // fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m + `:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 验证 - const rules = reactive<FormRules>({ - title: [{ required: true, message: '考核标题不能为空', trigger: 'blur' }], -@@ -204,12 +258,39 @@ - examineTemplateName: [{ required: true, message: '考核模板不能为空', trigger: 'blur' }], - memo: [], - }); -+ // 接收 -+ const onType = (data: any, val: any) => { -+ form.value.examineTotalNumber = ''; -+ form.value.examineTemplateId = data.id; -+ form.value.examineTemplateName = data.title; -+ form.value.acceptanceNumber = data.acceptanceNumber; -+ form.value.numberDetailJson = val.examineItemList; -+ }; -+ const numberC = () => { -+ let arr = 0; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ if (form.value.numberDetailJson[i].number != undefined) { -+ arr = parseInt(arr) + parseInt(form.value.numberDetailJson[i].number); -+ } else { -+ arr = parseInt(arr) + 0; -+ } -+ } -+ form.value.examineTotalNumber = arr; -+ }; - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - dialogVisible.value = false; -+ let arr = []; -+ for (let i = 0; i < form.value.numberDetailJson.length; i++) { -+ arr.push({ -+ id: form.value.numberDetailJson[i].id, -+ number: form.value.numberDetailJson[i].number, -+ }); -+ } -+ form.value.numberDetailJson = JSON.stringify(arr); - goalManagementApi() - .getexamineMngAddOrUpdate(form.value) - .then((res) => { -@@ -234,10 +315,11 @@ - dialogVisible.value = false; - formEl.resetFields(); - }; -- const handleClose=(formEl: FormInstance | undefined)=>{ -+ const handleClose = (formEl: FormInstance | undefined) => { - if (!formEl) return; - formEl.resetFields(); -- } -+ fileList.value=[] -+ }; - const activeName = ref('1'); - // 新增弹窗 - const Show = ref(); -@@ -250,16 +332,7 @@ - Shows.value.openDailog(type); - }; - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref<UploadUserFile[]>([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -284,15 +357,15 @@ - form.value.examinePersonId = val.uid; - form.value.examinePersonName = val.realName; - } else if (type == 0) { -- let uid=[] -- let realName=[] -- for(let i=0;i<val.length;i++){ -- uid.push(val[i].uid) -- realName.push(val[i].realName) -+ let uid = []; -+ let realName = []; -+ for (let i = 0; i < val.length; i++) { -+ uid.push(val[i].uid); -+ realName.push(val[i].realName); - } - form.value.beExaminedPersonId = uid.toString(); -- form.value.beExaminedPersonName =realName.toString(); -- console.log(form.value.beExaminedPersonId,form.value.beExaminedPersonName) -+ form.value.beExaminedPersonName = realName.toString(); -+ console.log(form.value.beExaminedPersonId, form.value.beExaminedPersonName); - } - }; - //全屏 -@@ -331,6 +404,9 @@ - }; - return { - rules, -+ timeC, -+ numberC, -+ onType, - handleClose, - nameData1, - nameData2, -@@ -360,6 +436,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -368,4 +446,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/component/DailogKh.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" title=\"新建考核标准设定\" width=\"60%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"标准标题\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.title\"> </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"适用范围\" size=\"default\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.applyRange\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"安全生产xxx\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<div v-if=\"clickType\">\r\n\t\t\t\t<el-row>\r\n\t\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"form.setPersonId\" disabled>\r\n\t\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /></template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t\t<el-form-item label=\"设定人部门\" size=\"default\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"form.setPersonDepartmentId\" disabled style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone one\" value=\"shanghai\" />\r\n\t\t\t\t\t\t\t\t<el-option label=\"Zone two\" value=\"beijing\" />\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</div>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"模板分类编码\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.templateCode\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"合格分数\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.acceptanceNumber\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\" v-if=\"clickType\">\r\n\t\t\t\t\t<el-form-item label=\"设定日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker disabled v-model=\"form.setTimem\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增','')\">新增</el-button>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"form.examineItemList\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" width=\"180\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('查看', scope.row)\">查看</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\">删除</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogKhS ref=\"Show\" @onAdd=\"AddObj\"></DailogKhS>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogKhS from './DailogKhS.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogKhS },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\tsetTimem: 1658386392466,\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\ttitle: '', ////标准标题\r\n\t\t\tsetPersonId: 1, //设定人\r\n\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\tapplyRange: '', ////适用范围\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst clickType = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = `${title}安全考核管理`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getexamineTemplateDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tclickType.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 接受传值\r\n\t\tconst AddObj = (val: any) => {\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.examineItemList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.examineItemList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.examineItemList.splice(form.value.examineItemList.indexOf(tag), 1);\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateAddOrUpdate(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\texamineItemList: [], //考核项目列表\r\n\t\t\t\tsetTimem: 1658386392466,\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\ttemplateCode: '', ////模板分类编码\r\n\t\t\t\ttitle: '', ////标准标题\r\n\t\t\t\tsetPersonId: 1, //设定人\r\n\t\t\t\tacceptanceNumber: '', ////合格分数\r\n\t\t\t\tsetPersonDepartmentId: 2, //设定人部门\r\n\t\t\t\tapplyRange: '', ////适用范围\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst activeName = ref('1');\r\n\t\t// 新增弹窗\r\n\t\tconst index = ref<any>();\r\n\t\tconst Show = ref();\r\n\t\tconst daiAdd = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.examineItemList.indexOf(data);\r\n\t\t\tShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\tdeleteA,\r\n\t\t\tAddObj,\r\n\t\t\topenDailog,\r\n\t\t\tactiveName,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShow,\r\n\t\t\tdaiAdd,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\tclickType,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue (date 1660382056705) -@@ -62,7 +62,7 @@ - </el-row> - </el-form> - <el-tabs v-model="activeName" class="demo-tabs"> -- <el-tab-pane label="目标指标分解" name="1"> -+ <el-tab-pane label="考核项目" name="1"> - <el-button type="primary" size="default" @click="daiAdd('新增','')">新增</el-button> - </el-tab-pane> - </el-tabs> -@@ -238,4 +238,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/performanceAppraisal/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"安全考核管理\" name=\"1\">\r\n\t\t\t\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.searchParams.examineDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableData.currentExamineDtoList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"number\" label=\"考核分数\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column property=\"examineDate\" align=\"center\" :formatter=\"timeDate\" label=\"考核日期\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examineDepartmentName\" align=\"center\" label=\"考核部门\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"examinePersonName\" label=\"考核人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"beExaminedDepartmentName\" label=\"被考核部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"examineTotalNumber\" label=\"总分\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"numberDetailJson.number\" label=\"考核结果\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"extraFile\" label=\"附件\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"考核标准设定\" name=\"2\">\r\n\t\t\t\t\t<el-form :model=\"ruleForms\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForms.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApis\">查询</el-button>\r\n\t\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForms\">重置</el-button>\r\n\t\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t</el-row>\r\n\t\t\t\t\t</el-form>\r\n\t\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openDs('新建')\">新建</el-button>\r\n\t\t\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warnings\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t\t\t<el-button size=\"default\" :disabled=\"dangers\" type=\"danger\" plain :icon=\"Delete\" @click=\"onDeleteAlls\">删除</el-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableDatas\" style=\"width: 100%\" @selection-change=\"handleSelectionChanges\">\r\n\t\t\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t\t\t<el-table-column type=\"expand\">\r\n\t\t\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t\t\t<div class=\"tableC\">\r\n\t\t\t\t\t\t\t\t\t<el-table :data=\"tableDatas.examineItemList\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemType\" label=\"类型\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"itemDetail\" label=\"考核项目\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"content\" label=\"考核内容\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"judgeStandard\" label=\"评定标准\" />\r\n\t\t\t\t\t\t\t\t\t\t<el-table-column align=\"center\" prop=\"memo\" label=\"考核说明\" />\r\n\t\t\t\t\t\t\t\t\t</el-table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t\t<el-table-column label=\"标准标题\" property=\"title\" align=\"center\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"applyRange\" align=\"center\" label=\"适用范围\" sortable />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonName\" label=\"设定人\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setPersonDepartmentName\" label=\"设定人部门\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"setTimem\" label=\"设定日期\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"templateCode\" label=\"模板分类编码\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column property=\"acceptanceNumber\" label=\"合格分数\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"250px\">\r\n\t\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDs('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openDs('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDeletes(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t</el-table>\r\n\t\t\t\t\t<div class=\"pages\">\r\n\t\t\t\t\t\t<el-pagination\r\n\t\t\t\t\t\t\tv-model:currentPage=\"currentPage4s\"\r\n\t\t\t\t\t\t\tv-model:page-size=\"pageSize4s\"\r\n\t\t\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t\t\t:total=\"totals\"\r\n\t\t\t\t\t\t\t@size-change=\"handleSizeChanges\"\r\n\t\t\t\t\t\t\t@current-change=\"handleCurrentChanges\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t</div>\r\n\t\t<DailogAq ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAq>\r\n\t\t<DailogKh ref=\"openAdds\" @navAddorUpdata=\"onAddorUpdatas\"></DailogKh>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogAq from './component/DailogAq.vue';\r\nimport DailogKh from './component/DailogKh.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAq, DailogKh },\r\n\tsetup() {\r\n\t\t// 搜索条件 安全考核管理\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\texamineDepartmentId: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD= (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 切换\r\n\t\tconst activeName = ref('1');\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tif (val == '1') {\r\n\t\t\t\tlistApi();\r\n\t\t\t}else{\r\n\t\t\t\tlistApis();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 搜索条件 考核标准设定\r\n\t\tconst ruleForms = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForms = () => {\r\n\t\t\truleForm.searchParams.examineDepartmentId = '';\r\n\t\t};\r\n\t\tconst listApis = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableDatas.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4s.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4s.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotals.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApis();\r\n\t\t\tdepartment()\r\n\t\t});\r\n\t\tconst onAddorUpdatas = () => {\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableDatas = ref();\r\n\t\tconst currentPage4s = ref();\r\n\t\tconst pageSize4s = ref();\r\n\t\tconst totals = ref();\r\n\t\tconst handleSizeChanges = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForms.pageSize = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\tconst handleCurrentChanges = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForms.pageIndex = val;\r\n\t\t\tlistApis();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdds = ref();\r\n\t\tconst openDs = (title: String, id: number) => {\r\n\t\t\topenAdds.value.openDailog(title, ruleForm.searchParams.examineDepartmentId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDeletes = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warnings = ref(true);\r\n\t\tconst dangers = ref(true);\r\n\t\tconst deletAlls = ref();\r\n\t\tconst handleSelectionChanges = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAlls.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarnings.value = false;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarnings.value = true;\r\n\t\t\t\tdangers.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAlls = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getexamineTemplateDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApis();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tactiveName,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\truleForms,\r\n\t\t\tresetForms,\r\n\t\t\tlistApis,\r\n\t\t\tonAddorUpdatas,\r\n\t\t\ttableDatas,\r\n\t\t\tcurrentPage4s,\r\n\t\t\tpageSize4s,\r\n\t\t\ttotals,\r\n\t\t\thandleSizeChanges,\r\n\t\t\thandleCurrentChanges,\r\n\t\t\topenAdds,\r\n\t\t\topenDs,\r\n\t\t\tonDeletes,\r\n\t\t\twarnings,\r\n\t\t\tdangers,\r\n\t\t\tdeletAlls,\r\n\t\t\thandleSelectionChanges,\r\n\t\t\tonDeleteAlls,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 20px;\r\n}\r\n.topTitle {\r\n\tpadding: 5px 0 20px 0;\r\n\tborder-bottom: 1px solid #dedede;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n.tableC {\r\n\tmargin: 0 10%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue ---- a/src/views/goalManagement/performanceAppraisal/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/performanceAppraisal/index.vue (date 1660382056709) -@@ -28,9 +28,9 @@ - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableData.currentExamineDtoList" style="width: 100%"> -+ <el-table :data="scope.row.currentExamineDtoList" style="width: 100%"> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> - <el-table-column align="center" prop="number" label="考核分数" /> -@@ -91,9 +91,9 @@ - <el-table ref="multipleTableRef" :data="tableDatas" style="width: 100%" @selection-change="handleSelectionChanges"> - <el-table-column type="selection" align="center" width="55" /> - <el-table-column type="expand"> -- <template #default> -+ <template #default="scope"> - <div class="tableC"> -- <el-table :data="tableDatas.examineItemList" style="width: 100%"> -+ <el-table :data="scope.row.examineItemList" style="width: 100%"> - <el-table-column align="center" prop="itemType" label="类型" /> - <el-table-column align="center" prop="itemDetail" label="考核项目" /> - <el-table-column align="center" prop="content" label="考核内容" /> -@@ -141,8 +141,9 @@ - import DailogAq from './component/DailogAq.vue'; - import DailogKh from './component/DailogKh.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; --import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; -+import { ElMessageBox, ElMessage, ElButton, ElInput, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; -+import type { TabsPaneContext } from 'element-plus' - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - components: { ElButton, ElInput, DailogAq, DailogKh }, -@@ -158,6 +159,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.examineDepartmentId = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -@@ -283,8 +285,9 @@ - }; - // 切换 - const activeName = ref('1'); -- const handleClick = (val: any) => { -- if (val == '1') { -+ const handleClick = (val: TabsPaneContext) => { -+ console.log(val) -+ if (val.props.name == '1') { - listApi(); - }else{ - listApis(); -@@ -300,11 +303,12 @@ - }); - // 重置 - const resetForms = () => { -- ruleForm.searchParams.examineDepartmentId = ''; -+ ruleForms.searchParams.title = ''; -+ listApis() - }; - const listApis = () => { - goalManagementApi() -- .getexamineTemplateList(ruleForm) -+ .getexamineTemplateList(ruleForms) - .then((res) => { - if (res.data.code == 200) { - tableDatas.value = res.data.data; -Index: src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择安全目标指标\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.title\" placeholder=\"标准标题\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi()\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"reset\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\" @click=\"clear\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\" width=\"70px\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"title\" label=\"标准标题\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.title }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\tlistApi()\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\ttitle: '', //标准标题\r\n\t\t\t},\r\n\t\t});\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getexamineTemplateList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n // 重置\r\n\tconst reset=()=>{\r\n\t\truleForm.searchParams.title=\"\"\r\n\t\tlistApi()\r\n\t}\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\treset,\r\n\t\t\tdialogVisible,\r\n\t\t\tlistApi,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue ---- a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue (date 1660382056711) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete" @click="clear">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > - <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -64,7 +64,7 @@ - <template #footer> - <span class="dialog-footer"> - <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -75,7 +75,7 @@ - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- setup() { -+ setup(props,{emit}) { - const dialogVisible = ref<boolean>(false); - const openDailog = () => { - dialogVisible.value = true; -@@ -122,6 +122,12 @@ - ruleForm.pageIndex = val; - listApi(); - }; -+ // 提交 -+ const submitForm=()=>{ -+ dialogVisible.value = false -+ emit("typeDome",dynamicTags.value[0],list.value) -+ clear() -+ } - // 右方点击添加后显示标签 - const dynamicTags = ref(['']); - const handleClose = (tag: string) => { -@@ -129,8 +135,19 @@ - radio1.value = ''; - }; - const radio1 = ref(''); -+ const list=ref([]) - const radio = (event: any) => { -- dynamicTags.value[0] = event; -+ -+ goalManagementApi() -+ .getexamineTemplateDetail(event.id) -+ .then((res) => { -+ if (res.data.code == 200) { -+ list.value = res.data.data; -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ dynamicTags.value[0] = event; - }; - const clear=()=>{ - dynamicTags.value=[''] -@@ -146,6 +163,8 @@ - } - }; - return { -+ submitForm, -+ list, - reset, - dialogVisible, - listApi, -Index: src/views/goalManagement/IncentiveRecording/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.personName\" placeholder=\"请选择被奖惩者\">\r\n\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openSearch\" />\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button> -->\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除 </el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"createTime\" align=\"center\" label=\"奖惩日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column label=\"奖惩类型\" align=\"center\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"personName\" align=\"center\" label=\"被奖惩者\" sortable />\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"奖惩依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearchUser ref=\"openUser\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearchUser },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tpersonId: '', ////员工\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.personId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.personId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.personId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\tconst userId = (val: any) => {\r\n\t\t\truleForm.searchParams.personId = val.uid;\r\n\t\t\truleForm.searchParams.personName = val.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\truleForm,\r\n\t\t\tuserId,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\topenAdd,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\topenSearch,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue ---- a/src/views/goalManagement/IncentiveRecording/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/IncentiveRecording/index.vue (date 1660382056715) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.personName" placeholder="请选择被奖惩者"> -+ <el-input v-model="personName" placeholder="请选择被奖惩者"> - <template #append> - <el-button :icon="Search" @click="openSearch" /> - </template> -@@ -92,8 +92,10 @@ - }, - }); - // 重置 -+ const personName=ref() - const resetForm = () => { - ruleForm.searchParams.personId = ''; -+ personName.value = ''; - listApi(); - }; - const listApi = () => { -@@ -229,10 +231,11 @@ - }; - const userId = (val: any) => { - ruleForm.searchParams.personId = val.uid; -- ruleForm.searchParams.personName = val.realName; -+ personName.value = val.realName; - }; - return { - timeDate, -+ personName, - ruleForm, - userId, - resetForm, -@@ -292,4 +295,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-user-container\">\r\n <el-card shadow=\"hover\">\r\n <div class=\"system-user-search mb15\">\r\n <el-form :inline=\"true\" class=\"demo-form-inline\">\r\n <el-form-item>\r\n <el-input size=\"default\" v-model=\"listQuery.searchParams.teamName\" placeholder=\"队伍名称\"> </el-input>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-select size=\"default\" v-model=\"listQuery.searchParams.teamLevel\" placeholder=\"请选择队伍级别\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"onSubmit\">\r\n 查询\r\n </el-button>\r\n <el-button size=\"default\" class=\"ml10\" @click=\"submitReset\">\r\n 重置\r\n </el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n <div class=\"button_Line\">\r\n <div class=\"button_Left\">\r\n <el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n <el-icon>\r\n <Plus />\r\n </el-icon>新建\r\n </el-button>\r\n<!-- <el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Edit />-->\r\n<!-- </el-icon>修改-->\r\n<!-- </el-button>-->\r\n <el-button size=\"default\" type=\"danger\" plain :disabled=\"danger\" @click=\"onDeleteAll\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </div>\r\n<!-- <div class=\"button_Right\">-->\r\n<!-- <el-button size=\"default\" @click=\"upButton\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Upload />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Download />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- <el-button size=\"default\">-->\r\n<!-- <el-icon>-->\r\n<!-- <Refresh />-->\r\n<!-- </el-icon>-->\r\n<!-- </el-button>-->\r\n<!-- </div>-->\r\n </div>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%\"\r\n ref=\"multipleTableRef\"\r\n @selection-change=\"handleSelectionChange\"\r\n >\r\n <el-table-column\r\n type=\"selection\"\r\n width=\"55\"\r\n />\r\n <el-table-column prop=\"teamName\" label=\"队伍名称\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"teamLevel\" label=\"队伍级别\" show-overflow-tooltip sortable>\r\n <template #default=\"scope\">\r\n <span v-if=\"scope.row.teamLevel == 1\">公司</span>\r\n <span v-if=\"scope.row.teamLevel == 2\">分厂-车间</span>\r\n <span v-if=\"scope.row.teamLevel == 3\">工序-班组等</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"teamDesc\" label=\"队伍描述\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"principalPhone\" label=\"负责人手机\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column prop=\"attachments\" label=\"相关附件\" show-overflow-tooltip sortable></el-table-column>\r\n <el-table-column label=\"操作\" width=\"200\" align=\"center\" fixed=\"right\">\r\n <template #default=\"scope\">\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <View />\r\n </el-icon>查看\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改',scope.row.id)\">\r\n <el-icon style=\"margin-right: 5px;\">\r\n <EditPen />\r\n </el-icon>修改\r\n </el-button>\r\n <el-button size=\"small\" text type=\"primary\" @click=\"onRowDel(scope.row.id)\">\r\n <el-icon>\r\n <Delete />\r\n </el-icon>删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"pages\">\r\n <el-pagination\r\n v-if=\"tableData.length == 0 ? false : true\"\r\n @size-change=\"onHandleSizeChange\"\r\n @current-change=\"onHandleCurrentChange\"\r\n class=\"mt15\"\r\n :pager-count=\"5\"\r\n :page-sizes=\"[10, 20, 30]\"\r\n v-model:currentPage=\"pageIndex\"\r\n background\r\n v-model:page-size=\"pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\"\r\n >\r\n </el-pagination>\r\n </div>\r\n </el-card>\r\n <OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n <upData ref=\"upShow\"></upData>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // toRefs,\r\n reactive,\r\n onMounted,\r\n ref,\r\n defineComponent\r\n} from 'vue';\r\nimport {\r\n ElMessageBox,\r\n ElMessage,\r\n} from 'element-plus';\r\nimport {\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n View,\r\n EditPen,\r\n} from '@element-plus/icons-vue'\r\n\r\nimport OpenAdd from '../../contingencyManagement/contingency/component/openAdd.vue'\r\nimport UpData from '../../contingencyManagement/contingency/component/upData.vue';\r\nimport {contingencyApi} from \"../../../api/contingencyManagement/contingency\";\r\n\r\nexport default defineComponent({\r\n name: 'systemUser',\r\n components: {\r\n OpenAdd,\r\n View,\r\n EditPen,\r\n Plus,\r\n Delete,\r\n // Upload,\r\n // Download,\r\n // Refresh,\r\n UpData,\r\n contingencyApi\r\n },\r\n setup() {\r\n // 列表参数\r\n const listQuery = reactive({\r\n pageIndex: 1,\r\n pageSize: 10,\r\n searchParams: {\r\n teamName: \"\",\r\n teamLevel: \"\",\r\n }\r\n })\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n // 列表数据请求\r\n const onSubmit = async () => {\r\n let res = await contingencyApi().getTeamManagementList(listQuery)\r\n if(res.data.code === '200'){\r\n tableData.value = res.data.data;\r\n pageIndex.value = res.data.pageIndex;\r\n pageSize.value = res.data.pageSize;\r\n total.value = res.data.total;\r\n }else{\r\n ElMessage({\r\n showClose: true,\r\n type:'error',\r\n message:res.data.msg\r\n })\r\n }\r\n }\r\n // 重置\r\n const submitReset = () => {\r\n listQuery.searchParams.teamName = '';\r\n listQuery.searchParams.teamLevel = '';\r\n onSubmit();\r\n };\r\n // const warning = ref(true);\r\n const danger = ref(true);\r\n const deleteAll = ref();\r\n const handleSelectionChange = (val: any) => {\r\n let valId = JSON.parse(JSON.stringify(val));\r\n let arr = [];\r\n for (let i = 0; i < valId.length; i++) {\r\n arr.push(valId[i].id);\r\n }\r\n deleteAll.value = arr;\r\n if (val.length == 1) {\r\n // warning.value = false;\r\n danger.value = false;\r\n } else if (val.length == 0) {\r\n // warning.value = true;\r\n danger.value = true;\r\n } else {\r\n // warning.value = true;\r\n danger.value = false;\r\n }\r\n };\r\n\r\n // 上传\r\n // const upShow=ref()\r\n // const upButton=()=>{\r\n // upShow.value.openDialog()\r\n // }\r\n // 打开新增应急队伍弹窗\r\n const addRef = ref();\r\n const onOpenAdd = () => {\r\n addRef.value.openDialog('新建应急队伍管理');\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: boolean) => {\r\n if (e) {\r\n onSubmit();\r\n } else {\r\n onSubmit();\r\n }\r\n };\r\n // 打开修改应急队伍弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '详情') {\r\n addRef.value.openDialog('查看应急队伍管理',row,true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍管理',row,false);\r\n }\r\n };\r\n // 删除用户\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam([data])\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n }).catch(() => {});\r\n };\r\n // 多选删除\r\n const onDeleteAll = () => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n })\r\n .then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeam(deleteAll.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n onSubmit();\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n onSubmit();\r\n }\r\n });\r\n })\r\n .catch(() => {});\r\n };\r\n // 分页\r\n const pageIndex = ref();\r\n const pageSize = ref();\r\n const total = ref();\r\n // 分页改变\r\n const onHandleSizeChange = (val: number) => {\r\n listQuery.pageSize = val;\r\n onSubmit();\r\n };\r\n const onHandleCurrentChange = (val: number) => {\r\n listQuery.pageIndex = val;\r\n onSubmit();\r\n };\r\n // 页面加载时\r\n onMounted(() => {\r\n onSubmit();\r\n });\r\n return {\r\n listQuery,\r\n onSubmit,\r\n // upButton,\r\n // upShow,\r\n onOpenAdd, //新增\r\n addRef,\r\n pageIndex,\r\n pageSize,\r\n total,\r\n onEdit,\r\n handleSelectionChange,\r\n submitReset,\r\n onRowDel,\r\n onMyAdd,\r\n tableData,\r\n onDeleteAll,\r\n onHandleSizeChange,\r\n onHandleCurrentChange,\r\n deleteAll,\r\n // warning,\r\n danger,\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box{\r\n padding: 20px;\r\n background-color: #fff;\r\n}\r\n.tableForm{\r\n margin-top: 10px;\r\n}\r\n/*按钮行*/\r\n .button_Line{\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n margin-bottom: 10px;\r\n }\r\n//分页\r\n.pages{\r\n display: flex;\r\n justify-content: flex-end;\r\n margin-top: 15px;\r\n}\r\n.el-form .el-form-item{\r\n margin-bottom: 0px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n//表头\r\n::v-deep .el-table th.el-table__cell {\r\n background-color: #f6f7fa;\r\n font-weight: 400;\r\n color: #909399;\r\n}\r\n.el-table .sort-caret.ascending{\r\n border-bottom-color: #c0c4cc;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue ---- a/src/views/contingencyManagement/contingency/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/contingency/index.vue (date 1660382056717) -@@ -79,7 +79,9 @@ - </el-table-column> - <el-table-column prop="teamDesc" label="队伍描述" show-overflow-tooltip sortable></el-table-column> - <el-table-column prop="principalPhone" label="负责人手机" show-overflow-tooltip sortable></el-table-column> -- <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column prop="fileList" label="相关附件" show-overflow-tooltip sortable> -+ -+ </el-table-column> - <el-table-column label="操作" width="200" align="center" fixed="right"> - <template #default="scope"> - <el-button size="small" text type="primary" @click="onEdit('详情',scope.row.id)"> -@@ -179,6 +181,11 @@ - let res = await contingencyApi().getTeamManagementList(listQuery) - if(res.data.code === '200'){ - tableData.value = res.data.data; -+ for(var a = 0;a<tableData.value.length;a++){ -+ if(tableData.value[a].fileList!=null&&tableData.value[a].fileList!=''&&tableData.value[a].fileList.length!=0){ -+ tableData.value[a].fileList = tableData.value[a].fileList[0].fileName -+ } -+ } - pageIndex.value = res.data.pageIndex; - pageSize.value = res.data.pageSize; - total.value = res.data.total; -@@ -389,4 +396,4 @@ - .el-table .sort-caret.ascending{ - border-bottom-color: #c0c4cc; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/contingency/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"120px\"\r\n :disabled=\"disabled\">\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍名称\" prop=\"teamName\">\r\n <el-input v-model=\"ruleForm.teamName\" placeholder=\"请填写队伍名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍级别\" prop=\"teamLevel\">\r\n <el-select v-model=\"ruleForm.teamLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司\" value=\"1\"></el-option>\r\n <el-option label=\"分厂-车间\" value=\"2\"></el-option>\r\n <el-option label=\"工序-班组等\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"队伍负责人\" prop=\"principalName\">\r\n <el-input v-model=\"ruleForm.principalName\" placeholder=\"请选择\" class=\"input-with-select\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人部门\" prop=\"principalDepartmentId\">\r\n <el-tree-select v-model=\"ruleForm.principalDepartmentId\" :data=\"newTreeList\" class=\"w100\"\r\n :props=\"propse\" clearable placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"负责人手机\" prop=\"principalPhone\">\r\n <el-input v-model=\"ruleForm.principalPhone\" placeholder=\"请填写负责人手机\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"固定电话\" prop=\"telephoneNumber\">\r\n <el-input v-model=\"ruleForm.telephoneNumber\" placeholder=\"请填写固定电话\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"队伍描述\" prop=\"teamDesc\">\r\n <el-input class=\"textarea\" v-model=\"ruleForm.teamDesc\" type=\"textarea\" maxlength=\"150\"\r\n placeholder=\"请填写队伍描述\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"相关附件\" prop=\"fileList\">\r\n <el-upload\r\n v-model:file-list=\"fileList\"\r\n class=\"upload-demo\"\r\n action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n :on-change=\"handleChange\"\r\n >\r\n <el-button type=\"primary\">点击上传</el-button>\r\n <template #tip>\r\n <div class=\"el-upload__tip\">添加相关附件</div>\r\n </template>\r\n </el-upload>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n <el-tab-pane label=\"应急队伍人员\" name=\"first\" >\r\n <el-button type=\"primary\" size=\"default\" @click=\"onAddEmergencyPersonnel\" :disabled=\"disabled\">新增\r\n </el-button>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%; margin-top: 15px\"\r\n ref=\"multipleTableRef\"\r\n :header-cell-style=\"{ background: '#f6f7fa', color: '#909399' }\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-table-column prop=\"jobNumber\" label=\"人员工号\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"name\" label=\"人员名称\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"phone\" label=\"手机号码\" show-overflow-tooltip></el-table-column>\r\n <el-table-column prop=\"position\" label=\"职位\" show-overflow-tooltip></el-table-column>\r\n <el-table-column label=\"操作\" width=\"250\" align=\"center\">\r\n <template #default=\"scope\">\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('查看应急队伍人员',scope.row.id)\">查看\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onEdit('修改应急队伍人员',scope.row.id)\"\r\n style=\"margin-right: 5px\">编辑\r\n </el-button>\r\n <el-button :disabled=\"disabled\" size=\"small\" @click=\"onRowDel(scope.row.id)\"\r\n style=\"margin-right: 5px\">删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-col>\r\n </el-row>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"onSubmit(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <AddEmergencyPersonnel ref=\"addRef\" @myAdd=\"onMyAdd\"/>\r\n <DailogSearchUserManger ref=\"userRef\" @SearchUser=\"onUser\"/>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\n import {\r\n reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n // toRefs,\r\n } from 'vue';\r\n import {\r\n ElMessage,\r\n ElMessageBox,\r\n } from 'element-plus';\r\n\r\n import type {\r\n UploadUserFile,\r\n TabsPaneContext,\r\n FormInstance,\r\n FormRules,\r\n } from 'element-plus'\r\n\r\n import {\r\n Search,\r\n FullScreen\r\n } from '@element-plus/icons-vue'\r\n import AddEmergencyPersonnel from \"/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue\";\r\n import DailogSearchUserManger from \"/@/components/DailogSearchUserManger/index.vue\"\r\n import {contingencyApi} from \"/@/api/contingencyManagement/contingency\";\r\n import {goalManagementApi} from \"/@/api/goalManagement\";\r\n // import {releaseDrillPlanApi} from \"/@/api/releaseDrillPlan\";\r\n\r\n\r\n export default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n AddEmergencyPersonnel,\r\n DailogSearchUserManger,\r\n },\r\n setup(prop, {emit}) {\r\n const isShowDialog = ref(false);\r\n const ruleFormRef = ref<FormInstance>();\r\n const ruleForm = ref({\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalName: '',\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n const peopleInsertBtn = ref(false)\r\n const teamId = ref()\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n teamId.value = id\r\n //如果是新增 无法添加人员\r\n if(title == '新建应急队伍管理'){\r\n peopleInsertBtn.value = true\r\n }else{\r\n peopleInsertBtn.value = false\r\n }\r\n if (title == '查看应急队伍管理' || title == '修改应急队伍管理') {\r\n contingencyApi()\r\n .seeEmergencyTeam(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n listApi()\r\n }\r\n });\r\n }\r\n }\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n\r\n //定义树形下拉框\r\n const principalDepartmentId = ref()\r\n const data = ref()\r\n\r\n\r\n\r\n //el-tree-select回显\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n };\r\n const newTreeList = [];\r\n //得到部门树\r\n const department = async () => {\r\n await goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n getTreeList(res.data.data, newTreeList);\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n // 递归树状数据且修改字段名\r\n const getTreeList = (treeList, newTreeList) => {\r\n treeList.map((c) => {\r\n let tempData = {\r\n depName: c.depName,\r\n value: c.depId,\r\n children: [],\r\n };\r\n if (c.children && c.children.length > 0) {\r\n tempData.children = [];\r\n getTreeList(c.children, tempData.children);\r\n }\r\n newTreeList.push(tempData);\r\n });\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n\r\n\r\n\r\n\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const openUser = () => {\r\n userRef.value.openDailog();\r\n };\r\n const onUser = (e: any) => {\r\n ruleForm.value.principalUid = e[0].uid\r\n ruleForm.value.principalName = e[0].realName\r\n };\r\n //定义tabs切换\r\n const activeName = ref('first')\r\n const handleClick = (tab: TabsPaneContext, event: Event) => {\r\n console.log(tab, event)\r\n }\r\n\r\n // 必填项提示\r\n const rules = reactive<FormRules>({\r\n teamName: [\r\n {\r\n required: true,\r\n message: '队伍名称不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n teamLevel: [\r\n {\r\n required: true,\r\n message: '队伍级别不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalUid: [\r\n {\r\n required: true,\r\n message: '队伍负责人不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalDepartmentId: [\r\n {\r\n required: true,\r\n message: '负责人部门不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n principalPhone: [\r\n {\r\n required: true,\r\n message: '负责人手机不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n telephoneNumber: [\r\n {\r\n required: true,\r\n message: '固定电话不能为空',\r\n trigger: 'change',\r\n },\r\n ],\r\n })\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n const onSubmit = async (title: string, formEl: FormInstance | undefined) => {\r\n if (title == '新建应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .addEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n } else if (title == '修改应急队伍管理') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n ruleForm.value.fileList=[]\r\n isShowDialog.value = false;\r\n contingencyApi()\r\n .editEmergencyTeam(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n teamName: '', // 队伍名称\r\n teamLevel: '', // 队伍级别\r\n principalUid: '', // 队伍负责人\r\n principalDepartmentId: '', //负责人部门\r\n principalPhone: '', // 负责人手机\r\n telephoneNumber: '', // 固定电话\r\n teamDesc: '', //队伍描述\r\n fileList: [],\r\n memberList: []\r\n };\r\n }\r\n };\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n formEl.resetFields();\r\n tableData.value=[]\r\n ruleForm.value = {}\r\n };\r\n // 定义表格数据\r\n const tableData = ref([]);\r\n //添加队伍负责人弹窗\r\n const addRef = ref();\r\n const onAddEmergencyPersonnel = () => {\r\n //未添加队伍 无法修改人员\r\n if(peopleInsertBtn.value == true){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加应急队伍',\r\n type: 'warning',\r\n });\r\n }else {\r\n addRef.value.openDialog('新建应急队伍人员','',teamId.value);\r\n }\r\n };\r\n // 请求列表数据\r\n const listApi = async () => {\r\n let res = await contingencyApi().getEmergencyTeamPersonnelList(teamId.value);\r\n if (res.data.code == 200) {\r\n tableData.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n };\r\n // 新增后刷新\r\n const onMyAdd = (e: object) => {\r\n listApi();\r\n };\r\n // 打开修改弹窗\r\n const onEdit = (val: string, row: object) => {\r\n if (val == '查看应急队伍人员') {\r\n addRef.value.openDialog('查看应急队伍人员', row,teamId.value, true);\r\n } else {\r\n addRef.value.openDialog('修改应急队伍人员', row,teamId.value, false);\r\n }\r\n };\r\n // 删除\r\n const onRowDel = (data: any) => {\r\n ElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n confirmButtonText: '确认',\r\n cancelButtonText: '取消',\r\n type: 'warning',\r\n }).then(() => {\r\n contingencyApi()\r\n .deleteEmergencyTeamPersonnel(data)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n listApi()\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n listApi()\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n });\r\n };\r\n return {\r\n openDialog,\r\n fileList,\r\n principalDepartmentId,\r\n data,\r\n activeName,\r\n handleClick,\r\n tableData,\r\n Search,\r\n resetForm,\r\n isShowDialog,\r\n ruleFormRef,\r\n ruleForm,\r\n rules,\r\n addRef,\r\n userRef,\r\n titles,\r\n disabled,\r\n propse,\r\n emit,\r\n onSubmit,\r\n openUser,\r\n onAddEmergencyPersonnel,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n onUser,\r\n onMyAdd,\r\n listApi,\r\n onEdit,\r\n onRowDel,\r\n department,\r\n peopleInsertBtn,\r\n teamId,\r\n newTreeList\r\n };\r\n },\r\n });\r\n</script>\r\n<style scoped lang=\"scss\">\r\n .textarea {\r\n height: 168px !important;\r\n }\r\n\r\n .textarea ::v-deep .el-textarea__inner {\r\n height: 168px !important;\r\n }\r\n\r\n ::v-deep .el-table__cell {\r\n font-weight: 400;\r\n }\r\n</style>\r\n\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue ---- a/src/views/contingencyManagement/contingency/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue (date 1660382056730) -@@ -52,17 +52,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件" prop="fileList"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- :on-change="handleChange" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -142,6 +133,7 @@ - import DailogSearchUserManger from "/@/components/DailogSearchUserManger/index.vue" - import {contingencyApi} from "/@/api/contingencyManagement/contingency"; - import {goalManagementApi} from "/@/api/goalManagement"; -+ import uploaderFile from '/@/components/uploaderFile/index.vue'; - // import {releaseDrillPlanApi} from "/@/api/releaseDrillPlan"; - - -@@ -150,6 +142,7 @@ - components: { - AddEmergencyPersonnel, - DailogSearchUserManger, -+ uploaderFile - }, - setup(prop, {emit}) { - const isShowDialog = ref(false); -@@ -188,14 +181,34 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - listApi() - } - }); - } - } - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -- -+ const fileList = ref([]) -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //定义树形下拉框 - const principalDepartmentId = ref() - const data = ref() -@@ -313,6 +326,9 @@ - } - }; - const onSubmit = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建应急队伍管理') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -346,7 +362,6 @@ - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { -- ruleForm.value.fileList=[] - isShowDialog.value = false; - contingencyApi() - .editEmergencyTeam(ruleForm.value) -@@ -390,6 +405,7 @@ - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); -+ fileList.value = [] - tableData.value=[] - ruleForm.value = {} - }; -@@ -494,7 +510,9 @@ - department, - peopleInsertBtn, - teamId, -- newTreeList -+ newTreeList, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentExpress/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-user-container\">\r\n\t\t<el-card shadow=\"hover\">\r\n\t\t\t<div class=\"system-user-search mb15\">\r\n\t\t\t\t<el-input size=\"default\" v-model=\"listQuery.searchParams.accidentName\" placeholder=\"事故名称\" style=\"max-width: 215px\" />\r\n\t\t\t\t<el-button size=\"default\" type=\"primary\" class=\"ml10\" @click=\"listApi\"> 查询 </el-button>\r\n\t\t\t\t<el-button size=\"default\" class=\"ml10\" @click=\"submitReset\"> 重置 </el-button>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"button_Line\">\r\n\t\t\t\t<div class=\"button_Left\">\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"onOpenAdd\">\r\n\t\t\t\t\t\t<el-icon> <Plus /> </el-icon>新建\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" plain :disabled=\"warning\">\r\n\t\t\t\t\t\t<el-icon> <Edit /> </el-icon>修改\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" @click=\"onDeleteAll\" plain :disabled=\"danger\">\r\n\t\t\t\t\t\t<el-icon> <Delete /> </el-icon>删除\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"button_Right\">\r\n\t\t\t\t\t<!-- <el-button @click=\"upButton\">\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Upload />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Download />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button>\r\n\t\t\t\t\t<el-button>\r\n\t\t\t\t\t\t<el-icon>\r\n\t\t\t\t\t\t\t<Refresh />\r\n\t\t\t\t\t\t</el-icon>\r\n\t\t\t\t\t</el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table :data=\"tableData\" style=\"width: 100%\" ref=\"multipleTableRef\" @selection-change=\"handleSelectionChange\">\r\n\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"55\" />\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentName\" label=\"事故名称\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"deptName\" label=\"事故部门\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrencePlace\" label=\"发生地点\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"occurrenceTime\" label=\"发生时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"accidentCause\" label=\"事故原因\" show-overflow-tooltip sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='1'\">人的不安全行为</div>\r\n\t\t\t\t\t\t<div v-if=\"scope.row.accidentCause=='2'\">物的不安全状态</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"createName\" label=\"创建人\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column align=\"center\" prop=\"gmtModitify\" label=\"更新时间\" show-overflow-tooltip sortable></el-table-column>\r\n\t\t\t\t<el-table-column label=\"操作\" width=\"260\" align=\"center\" fixed=\"right\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<!-- <el-button size=\"small\" text disabled>\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Upload /> </el-icon>上报\r\n\t\t\t\t\t\t</el-button> -->\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('修改', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <EditPen /> </el-icon>修改\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onEdit('详情', scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <View /> </el-icon>详情\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t\t<el-button size=\"small\" text type=\"primary\" @click=\"onDelete(scope.row.id)\">\r\n\t\t\t\t\t\t\t<el-icon style=\"margin-right: 5px\"> <Delete /> </el-icon>删除\r\n\t\t\t\t\t\t</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-if=\"tableData.length == 0 ? false : true\"\r\n\t\t\t\t\tv-model:currentPage=\"pageIndex\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30]\"\r\n\t\t\t\t\t:pager-count=\"5\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</el-card>\r\n\t\t<OpenAdd ref=\"addRef\" @myAdd=\"onMyAdd\" />\r\n\t\t<upData ref=\"upShow\"></upData>\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, onMounted, ref, defineComponent } from 'vue';\r\nimport { ElTable, ElMessage, ElMessageBox } from 'element-plus';\r\nimport { Plus, View, Download, Refresh, EditPen, Edit, Delete, Upload } from '@element-plus/icons-vue';\r\nimport OpenAdd from '/@/views/accidentManagementSystem/accidentExpress/component/openAdd.vue';\r\nimport UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nexport default defineComponent({\r\n\tname: 'index',\r\n\tcomponents: {\r\n\t\tEditPen,\r\n\t\tPlus,\r\n\t\tUpload,\r\n\t\tDownload,\r\n\t\tRefresh,\r\n\t\tEdit,\r\n\t\tDelete,\r\n\t\tUpData,\r\n\t\tOpenAdd,\r\n\t\tView,\r\n\t},\r\n\r\n\tsetup() {\r\n\t\t// 列表参数\r\n\t\tconst listQuery = reactive({\r\n\t\t\tpageIndex: 1,\r\n\t\t\tpageSize: 10,\r\n\t\t\tsearchParams: {\r\n\t\t\t\taccidentName: '',\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 定义表格数据\r\n\t\tconst tableData = ref([]);\r\n\t\t// 列表数据请求\r\n\t\tconst listApi = async () => {\r\n\t\t\tlet res = await accidentManagementSystemApi().accidentList(listQuery);\r\n\t\t\tif (res.data.code == 200) {\r\n\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\tpageIndex.value = res.data.pageIndex;\r\n\t\t\t\tpageSize.value = res.data.pageSize;\r\n\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t} else {\r\n\t\t\t\tElMessage({\r\n\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\ttype: 'error',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst submitReset = () => {\r\n\t\t\tlistQuery.searchParams.accidentName = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页\r\n\t\tconst pageIndex = ref();\r\n\t\tconst pageSize = ref();\r\n\t\tconst total = ref();\r\n\t\t// 分页改变\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\tlistQuery.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 分页未改变\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\tlistQuery.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// 打开新增弹窗\r\n\t\tconst addRef = ref();\r\n\t\tconst onOpenAdd = () => {\r\n\t\t\taddRef.value.openDialog('新建事故快报',false);\r\n\t\t};\r\n\t\t// 新增后刷新\r\n\t\tconst onMyAdd = (e: boolean) => {\r\n\t\t\tif (e) {\r\n\t\t\t\tlistApi();\r\n\t\t\t} else {\r\n\t\t\t\tlistApi();\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (data: any) => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele([data])\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 多选删除\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', '提示', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t.accidentDele(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {});\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst upShow = ref();\r\n\t\tconst upButton = () => {\r\n\t\t\tupShow.value.openDialog();\r\n\t\t};\r\n\r\n\t\t// 打开修改用户弹窗\r\n\t\tconst onEdit = (val: string, row: object) => {\r\n\t\t\tif (val == '详情') {\r\n\t\t\t\taddRef.value.openDialog('查看事故快报',row,true);\r\n\t\t\t} else {\r\n\t\t\t\taddRef.value.openDialog('修改事故快报',row,false);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tupButton,\r\n\t\t\tupShow,\r\n\t\t\ttableData,\r\n\t\t\tpageIndex,\r\n\t\t\tpageSize,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonEdit,\r\n\t\t\tonOpenAdd,\r\n\t\t\taddRef,\r\n\t\t\tlistQuery,\r\n\t\t\tlistApi,\r\n\t\t\tsubmitReset,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonMyAdd,\r\n\t\t\tonDelete,\r\n\t\t\tdeletAll,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.table_Box {\r\n\tpadding: 20px;\r\n\tbackground-color: #fff;\r\n}\r\n.tableForm {\r\n\tmargin-top: 10px;\r\n}\r\n/*按钮行*/\r\n.button_Line {\r\n\tdisplay: flex;\r\n\tflex-direction: row;\r\n\tjustify-content: space-between;\r\n}\r\n//分页\r\n.pages {\r\n\tdisplay: flex;\r\n\tjustify-content: flex-end;\r\n\tmargin-top: 15px;\r\n}\r\n::v-deep .el-pagination .el-pager li {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination .el-pager li.is-active {\r\n\tbackground-color: #409eff;\r\n\tcolor: #fff;\r\n}\r\n::v-deep .el-pagination .btn-prev {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n::v-deep .el-pagination button:disabled {\r\n\tcolor: #c0c4cc;\r\n}\r\n::v-deep .el-pagination .btn-next {\r\n\tmargin: 0 5px;\r\n\tbackground-color: #f4f4f5;\r\n\tcolor: #606266;\r\n\tmin-width: 30px;\r\n\tborder-radius: 2px;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/index.vue b/src/views/accidentManagementSystem/accidentExpress/index.vue ---- a/src/views/accidentManagementSystem/accidentExpress/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/accidentManagementSystem/accidentExpress/index.vue (date 1660382056734) -@@ -41,7 +41,8 @@ - <el-table-column align="center" prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="deptName" label="事故部门" show-overflow-tooltip sortable></el-table-column> - <el-table-column align="center" prop="occurrencePlace" label="发生地点" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="occurrenceTime" label="发生时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column align="center" prop="accidentCause" label="事故原因" show-overflow-tooltip sortable> - <template #default="scope"> - <div v-if="scope.row.accidentCause=='1'">人的不安全行为</div> -@@ -49,7 +50,8 @@ - </template> - </el-table-column> - <el-table-column align="center" prop="createName" label="创建人" show-overflow-tooltip sortable></el-table-column> -- <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable></el-table-column> -+ <el-table-column align="center" prop="gmtModitify" label="更新时间" show-overflow-tooltip sortable -+ :formatter="dateFormat"></el-table-column> - <el-table-column label="操作" width="260" align="center" fixed="right"> - <template #default="scope"> - <!-- <el-button size="small" text disabled> -@@ -268,7 +270,16 @@ - addRef.value.openDialog('修改事故快报',row,false); - } - }; -- -+//格式化表格时间 -+ const dateFormat = (row,column) => { -+ // 获取单元格数据 -+ let data = row[column.property]; -+ if(data == null) { -+ return null; -+ } -+ let dt = new Date(data) -+ return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds() -+ }; - return { - upButton, - upShow, -@@ -291,6 +302,7 @@ - onDelete, - deletAll, - onDeleteAll, -+ dateFormat - }; - }, - }); -@@ -343,4 +355,4 @@ - min-width: 30px; - border-radius: 2px; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetEscalation/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<el-tab-pane label=\"检查\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"上报\" name=\"2\"></el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"审核\" name=\"3\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column v-if=\"activeName == 1\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(0)\">检查</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openDai(scope.row.targetDivideDetailList)\">记录</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 2\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom(1)\">上报</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column v-if=\"activeName == 3\" label=\"操作\" align=\"center\" show-overflow-tooltip>\r\n\t\t\t\t\t<template #default>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"jumpFrom\">待审批</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<Dailog ref=\"Show\"></Dailog>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport { useRouter } from 'vue-router';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\t// let targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = val.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst activeName = ref<any>('1');\r\n\t\t// 记录弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openDai = (data: any) => {\r\n\t\t\tShow.value.openDailog(data);\r\n\t\t};\r\n\t\t// 流程表单\r\n\t\tconst router = useRouter();\r\n\t\tconst jumpFrom = (data: any) => {\r\n\t\t\trouter.push({\r\n\t\t\t\tpath: '/processForms',\r\n\t\t\t\tquery: {\r\n\t\t\t\t\ttype: data,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tactiveName,\r\n\t\t\ttotal,\r\n\t\t\thandleClick,\r\n\t\t\truleForm,\r\n\t\t\tlistApi,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tresetForm,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tShow,\r\n\t\t\topenDai,\r\n\t\t\trouter,\r\n\t\t\tjumpFrom,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/index.vue b/src/views/goalManagement/targetEscalation/index.vue ---- a/src/views/goalManagement/targetEscalation/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetEscalation/index.vue (date 1660382056737) -@@ -24,7 +24,6 @@ - <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> - <el-tab-pane label="检查" name="1"> </el-tab-pane> - <el-tab-pane label="上报" name="2"></el-tab-pane> -- <el-tab-pane label="审核" name="3"></el-tab-pane> - </el-tabs> - <el-table ref="multipleTableRef" :data="tableData" style="width: 100%"> - <el-table-column label="安全目标指标" align="center" property="qName" sortable /> -@@ -33,18 +32,18 @@ - <el-table-column property="value" label="指标值" align="center" sortable show-overflow-tooltip /> - <el-table-column v-if="activeName == 1" label="操作" align="center" show-overflow-tooltip> - <template #default="scope"> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(0)">检查</el-button> -- <el-button link type="primary" size="default" :icon="View" @click="openDai(scope.row.targetDivideDetailList)">记录</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,1)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,1)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,1)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,1)" >查看审批流程</el-button> - </template> - </el-table-column> - <el-table-column v-if="activeName == 2" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom(1)">上报</el-button> -- </template> -- </el-table-column> -- <el-table-column v-if="activeName == 3" label="操作" align="center" show-overflow-tooltip> -- <template #default> -- <el-button link type="primary" size="default" :icon="EditPen" @click="jumpFrom">待审批</el-button> -+ <template #default="scope"> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==null" @click="TypeDailog('发起审批','检查',scope.row.id,2)">发起审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==true" @click="TypeDailog('审批','检查',scope.row.approveId,2)">审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==2&&scope.row.checkApprove==false" @click="TypeDailog('查看审批','检查',scope.row.approveId,2)">查看审批</el-button> -+ <el-button link type="primary" size="default" :icon="EditPen" v-if="scope.row.approveStatus==3" @click="openDai(scope.row.id,2)" >查看审批流程</el-button> - </template> - </el-table-column> - </el-table> -@@ -61,17 +60,19 @@ - </div> - </div> - <Dailog ref="Show"></Dailog> -+ <TypeDailog ref="TypeD" @onType="typeAlign" /> - </div> - </template> - <script lang="ts"> - import Dailog from './component/Dailog.vue'; -+import TypeDailog from './component/TypeDailog.vue'; - import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus'; - import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue'; - import { useRouter } from 'vue-router'; - import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ -- components: { ElButton, ElInput, Dailog }, -+ components: { ElButton, ElInput, Dailog,TypeDailog }, - setup() { - // 搜索条件 - const ruleForm = reactive({ -@@ -80,8 +81,9 @@ - searchParams: { - qName: '', ////安全目标指标 - indexNum: '', ////目标指标编号 -- targetType: '1', ////指标类型 1:年指标 2:月指标 -- divideStatus: '', ////分解状态 1:已分解 2:未分解 -+ targetType: 1, ////指标类型 1:年指标 2:月指标 -+ divideStatus: 1, ////分解状态 1:已分解 2:未分解 -+ relateType: 1, ////关联业务类型 1:目标检查 2:目标上报 - }, - }); - // 重置 -@@ -91,7 +93,7 @@ - }; - const listApi = () => { - goalManagementApi() -- .getTargetMngList(ruleForm) -+ .getworkApproveList(ruleForm) - .then((res) => { - if (res.data.code == 200) { - tableData.value = res.data.data; -@@ -106,7 +108,7 @@ - // - const handleClick = (val: any) => { - // let targetType = JSON.parse(JSON.stringify(val)); -- ruleForm.searchParams.targetType = val.paneName; -+ ruleForm.searchParams.relateType = val.paneName; - listApi(); - }; - onMounted(() => { -@@ -133,20 +135,21 @@ - const activeName = ref<any>('1'); - // 记录弹窗 - const Show = ref(); -- const openDai = (data: any) => { -- Show.value.openDailog(data); -+ const openDai = (data: any,num:number) => { -+ Show.value.openDailog(data,num); - }; -- // 流程表单 -- const router = useRouter(); -- const jumpFrom = (data: any) => { -- router.push({ -- path: '/processForms', -- query: { -- type: data, -- }, -- }); -+ // 发起审批弹窗 -+ const TypeD = ref(); -+ const TypeDailog = (title:string,name:string,id:number,type:number) => { -+ TypeD.value.openDialog(title,name,id,type); - }; -+ const typeAlign=()=>{ -+ listApi(); -+ } - return { -+ TypeD, -+ typeAlign, -+ TypeDailog, - activeName, - total, - handleClick, -@@ -161,8 +164,6 @@ - handleCurrentChange, - Show, - openDai, -- router, -- jumpFrom, - Plus, - Delete, - Upload, -@@ -195,4 +196,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/api/goalManagement/index.ts -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>import request from '/@/utils/request';\r\nexport function goalManagementApi() {\r\n return {\r\n // 目标设置、目标指标分解列表\r\n getTargetMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置详情\r\n getTargetMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标设置新增或者修改数据\r\n getTargetMngAddOrupdata: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetMng/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标设置删除\r\n getTargetMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标指标分解-新增或者修改数据\r\n gettargetDivideDetail: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDivideDetail/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 统计\r\n getEquipmentInfo: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/equipmentInfo/statistics',\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 分页查询数据\r\n gettargetDutyfileInfoList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutyfileInfo/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 查询单条数据\r\n gettargetDutyfileInfoDetail: (params: number) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标责任书 新增或者修改数据\r\n gettargetDutyfileInfoAddorUpdata: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标责任书 删除\r\n gettargetDutyfileInfoDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutyfileInfo/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 分页查询数据\r\n getrewardPunishmentStandardList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 查询单条数据\r\n getrewardPunishmentStandardDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩标准设定 新增或者修改数据\r\n getrewardPunishmentStandardaddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentStandard/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩标准设定 删除\r\n getrewardPunishmentStandardDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentStandard/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 分页查询数据\r\n getrewardPunishmentList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/rewardPunishmentDetail/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 查询单条数据\r\n getrewardPunishmentDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 奖惩记录 新增或者修改数据\r\n getrewardPunishmentAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 奖惩记录 删除\r\n getrewardPunishmentDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/rewardPunishmentDetail/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 分页查询数据\r\n getexamineMngList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineMng/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 查询单条数据\r\n getexamineMngDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 新增或者修改数据\r\n getexamineMngAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 安全考核管理 删除\r\n getexamineMngDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineMng/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 分页查询数据\r\n getexamineTemplateList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/examineTemplate/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 查询单条数据\r\n getexamineTemplateDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 新增或者修改数据\r\n getexamineTemplateAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 绩效考核管理 考核标准设定 删除\r\n getexamineTemplateDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/examineTemplate/delete`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 分页查询数据\r\n gettargetDutySummaryList: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetDutySummary/page/list',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 查询单条数据\r\n gettargetDutySummaryDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 目标汇总 新增或者修改数据\r\n gettargetDutySummaryAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/addOrUpdate`,\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标汇总 删除\r\n gettargetDutySummaryDelete: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetDutySummary/delete?ids=${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 查询单条数据\r\n gettargetExamineDetail: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/targetExamine/selectOne/${params}`,\r\n method: 'get'\r\n });\r\n },\r\n // 安全目标考核 新增或者修改数据\r\n gettargetExamineAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/targetExamine/addOrUpdate',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 目标检查上报 (有疑问) 新增或者修改数据 ---???\r\n getworkApproveAddOrUpdate: (params: object) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove',\r\n method: 'post',\r\n data: params\r\n });\r\n },\r\n // 部门树\r\n getTreedepartment: () => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + '/department/list',\r\n method: 'post'\r\n });\r\n },\r\n // 人员\r\n getManName: (params: any) => {\r\n return request({\r\n url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`,\r\n method: 'get'\r\n });\r\n }\r\n };\r\n}\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/api/goalManagement/index.ts b/src/api/goalManagement/index.ts ---- a/src/api/goalManagement/index.ts (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/api/goalManagement/index.ts (date 1660382056740) -@@ -247,10 +247,50 @@ - data: params - }); - }, -- // 目标检查上报 (有疑问) 新增或者修改数据 ---??? -- getworkApproveAddOrUpdate: (params: object) => { -+ // 目标检查上报 分页查询数据 -+ getworkApproveList: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetMng/checkAndSubimt/list', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 分页查询检查记录 -+ getworkApproveListCheckData: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/page/listCheckData', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 查询单条数据 -+ getworkApproveDetail: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + `/targetDutyWorkApprove/selectOne/${params}`, -+ method: 'get' -+ }); -+ }, -+ -+ // 目标检查上报 新增数据 -+ getworkApproveAdd: (params: object) => { - return request({ -- url: import.meta.env.VITE_API_URL_OUT + '/workApprove/submitApprove', -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/add', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 新增数据 -+ getworkApproveUpdata: (params: object) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/update', -+ method: 'post', -+ data: params -+ }); -+ }, -+ // 目标检查上报 删除 -+ getworkApproveDelete: (params: any) => { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/targetDutyWorkApprove/delete', - method: 'post', - data: params - }); -@@ -267,6 +307,18 @@ - return request({ - url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`, - method: 'get' -+ }); -+ }, -+ beforeUploadFile(fileName1: string, fileName2: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/presign?prefixName=' + fileName1 + '&suffixName=' + fileName2, -+ method: 'get' -+ }); -+ }, -+ searchFile(fileName: string) { -+ return request({ -+ url: import.meta.env.VITE_API_URL_OUT + '/minio/file/view?obj=' + fileName, -+ method: 'get' - }); - } - }; -Index: src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"50%\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" :rules=\"rules\" size=\"default\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"disabled\" placeholder=\"请填写事故名称\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentDepartmentId\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\t\t\t\t:data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.occurrencePlace\" :disabled=\"disabled\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.occurrenceTime\" :disabled=\"disabled\" placeholder=\"请填写发生时间\"></el-input>-->\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人的不安全行为\" value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"物的不安全状态\" value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"是否有伤亡\" prop=\"casualties\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.casualties\" :disabled=\"disabled\" @change=\"typeChang\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t\t<el-button v-if=\"ruleForm.casualties\" type=\"primary\" style=\"margin-left: 20px\"\r\n\t\t\t\t\t\t\t\t\t :icon=\"Edit\" @click=\"openDai\" round plain />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故简要经过\" prop=\"accidentBriefProcess\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentBriefProcess\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故简要经过\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因初步分析\" prop=\"accidentCausesPreliminaryAnalysis\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.accidentCausesPreliminaryAnalysis\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写事故原因初步分析\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"应急防范措施\" prop=\"emergencyPrecautions\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.emergencyPrecautions\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写应急防范措施\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故照片\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.fileList\" :disabled=\"disabled\"-->\r\n\t\t\t\t\t\t\t<!--type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileListDemo\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\"\r\n @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<NumberOfCasualties ref=\"ShowUser\"></NumberOfCasualties>\r\n\t\t<CheckTemplate ref=\"Shows\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent, defineEmits, onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen, Edit } from '@element-plus/icons-vue';\r\nimport NumberOfCasualties from '/@/views/accidentManagementSystem/accidentExpress/component/numberOfCasualties.vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport CheckTemplate from '/@/components/checkTemplate/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tCheckTemplate,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tNumberOfCasualties,\r\n\t\tuploaderImg,\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\temergencyPrecautions: '',\r\n\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\taccidentBriefProcess: '',\r\n\t\t\tcasualties: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\toccurrenceTime: '',\r\n\t\t\toccurrencePlace: '',\r\n\t\t\taccidentDepartmentId: '',\r\n\t\t\taccidentName: '',\r\n\t\t\tfileList: [],\r\n\t\t\tid: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看事故快报' || title == '修改事故快报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.accidentScarh(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\tconst fileListDemo = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'food.jpeg',\r\n\t\t\t\turl: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100',\r\n\t\t\t},\r\n\t\t]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故名称不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故部门不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrencePlace: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '发生地点不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\toccurrenceTime: [{ type: 'date', required: true, message: '发生时间不能为空', trigger: 'blur' }],\r\n\t\t\taccidentCause: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcasualties: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '是否有伤亡不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentBriefProcess: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故简要经过不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentCausesPreliminaryAnalysis: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故原因初步分析不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\temergencyPrecautions: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '应急防范措施不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\t// 子传父\r\n\t\t// const emit=defineEmits(['myAdd'])\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.id = null;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故快报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList = [\r\n\t\t\t\t\t\t\t// {\r\n\t\t\t\t\t\t\t// \tfileUrl: 'url',\r\n\t\t\t\t\t\t\t// \tfileName: 'name',\r\n\t\t\t\t\t\t\t// },\r\n\t\t\t\t\t\t];\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.accidentView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t}\r\n\t\t\truleForm.value = {\r\n\t\t\t\taccidentExpressId: '',\r\n\t\t\t\temergencyPrecautions: '',\r\n\t\t\t\taccidentCausesPreliminaryAnalysis: '',\r\n\t\t\t\taccidentBriefProcess: '',\r\n\t\t\t\tcasualties: '',\r\n\t\t\t\taccidentCause: '',\r\n\t\t\t\toccurrenceTime: '',\r\n\t\t\t\toccurrencePlace: '',\r\n\t\t\t\taccidentDepartmentId: '',\r\n\t\t\t\taccidentName: '',\r\n\t\t\t\tfileList: [],\r\n\t\t\t};\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tconsole.log(ruleForm);\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 是否有伤亡弹窗\r\n\t\tconst typeChang = () => {\r\n\t\t\tconsole.log('tag', ruleForm);\r\n\t\t};\r\n\t\tconst ShowUser = ref();\r\n\t\tconst openDai = () => {\r\n if(ruleForm.value.id==null||ruleForm.value.id==''){\r\n ElMessage({\r\n showClose: true,\r\n message: '请先添加事故快报',\r\n type: 'info',\r\n });\r\n }else {\r\n ShowUser.value.openDialog(ruleForm.value.id, disabled.value);\r\n }\r\n\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tShowUser,\r\n\t\t\ttypeChang,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\tEdit,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenDai,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tcloseDialog,\r\n\t\t\tfileListDemo,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue (date 1660382056743) -@@ -1,6 +1,7 @@ - <template> - <div class="system-edit-user-container"> -- <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" @close="closeDialog(ruleFormRef)"> -+ <el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" -+ destroy-on-close @close="closeDialog(ruleFormRef)"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" size="default" label-width="140px"> - <el-row :gutter="35"> -@@ -94,7 +95,8 @@ - <el-form-item label="事故照片" prop="fileList"> - <!--<el-input v-model="ruleForm.fileList" :disabled="disabled"--> - <!--type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <uploaderImg :fileList="fileListDemo"></uploaderImg> -+ <uploaderImg :fileList="fileList" :disabled="disabled" -+ :systemName="'INCIDENT_MANAGE'" @successUploader="successUploader"></uploaderImg> - </el-form-item> - </el-col> - </el-row> -@@ -157,7 +159,7 @@ - const titles = ref(); - const disabled = ref(); - // 打开弹窗 -- const openDialog = (title: string, id: number, type: boolean) => { -+ const openDialog = async (title: string, id: number, type: boolean) => { - isShowDialog.value = true; - titles.value = title; - disabled.value = type; -@@ -167,24 +169,39 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -- const fileListDemo = ref<UploadUserFile[]>([ -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- { -- name: 'food.jpeg', -- url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100', -- }, -- ]); -+ const fileList = ref([]); -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 可选择树 - const treeSelect = ref(); - -@@ -292,6 +309,9 @@ - // const emit=defineEmits(['myAdd']) - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故快报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -327,12 +347,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList = [ -- // { -- // fileUrl: 'url', -- // fileName: 'name', -- // }, -- ]; - accidentManagementSystemApi() - .accidentView(ruleForm.value) - .then((res) => { -@@ -380,6 +394,7 @@ - }; - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value = [] - console.log(ruleForm); - isShowDialog.value = false; - }; -@@ -459,7 +474,7 @@ - getTreeList, - newTreeList, - closeDialog, -- fileListDemo, -+ successUploader - }; - }, - }); -Index: src/views/goalManagement/targetEscalation/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"记录\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" label=\"序号\" type=\"index\" width=\"80\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"dutyDepartmentId\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makerDepartmentId\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"value\" label=\"检查值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"commitPersonId\" label=\"检查人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"makeDate\" label=\"检查时间\" />\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst tableData = ref();\r\n\t\tconst openDailog = (data: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\t// console.log(data)\r\n\t\t\ttableData.value = data;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdialogVisible,\r\n\t\t\ttableData,\r\n\t\t\topenDailog,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetEscalation/component/Dailog.vue b/src/views/goalManagement/targetEscalation/component/Dailog.vue ---- a/src/views/goalManagement/targetEscalation/component/Dailog.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetEscalation/component/Dailog.vue (date 1660382056760) -@@ -1,15 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="记录" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="查看审批流程" width="50%" draggable> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-table :data="tableData" style="width: 100%"> -- <el-table-column align="center" label="序号" type="index" width="80" /> -- <el-table-column align="center" prop="dutyDepartmentId" label="责任部门" /> -- <el-table-column align="center" prop="value" label="考核指标" /> -- <el-table-column align="center" prop="makerDepartmentId" label="制定部门" /> -- <el-table-column align="center" prop="makeDate" label="制定日期" /> -- <el-table-column align="center" prop="value" label="检查值" /> -- <el-table-column align="center" prop="commitPersonId" label="检查人" /> -- <el-table-column align="center" prop="makeDate" label="检查时间" /> -+ <el-table-column property="workName" label="审批人" sortable></el-table-column> -+ <el-table-column property="title" label="审批标题" sortable></el-table-column> -+ <el-table-column property="approvePersonName" label="编写人" sortable></el-table-column> -+ <el-table-column property="approveMemo" label="审批意见" sortable></el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -@@ -22,14 +18,28 @@ - <script lang="ts"> - import { defineComponent, reactive, ref } from 'vue'; - import { FullScreen } from '@element-plus/icons-vue'; -+import { goalManagementApi } from '/@/api/goalManagement'; - export default defineComponent({ - setup() { - const dialogVisible = ref(false); -+ const form = ref({ -+ pageSize: 10, -+ pageIndex: 1, -+ searchParams: { -+ relateId: '', ////检查记录ID -+ relateType:"", -+ }, -+ }); - const tableData = ref(); -- const openDailog = (data: any) => { -+ const openDailog = (data: any,type:number) => { - dialogVisible.value = true; -- // console.log(data) -- tableData.value = data; -+ form.value.searchParams.relateId=data -+ form.value.searchParams.relateType=type -+ goalManagementApi().getworkApproveListCheckData(form.value).then(res=>{ -+ if(res.data.code==200){ -+ tableData.value=res.data.data -+ } -+ }) - }; - //全屏 - const full = ref(false); -@@ -46,6 +56,7 @@ - openDailog, - full, - toggleFullscreen, -+ form, - FullScreen, - }; - }, -Index: src/views/goalManagement/Incentivestandard/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-select v-model=\"ruleForm.searchParams.standardType\" size=\"default\" style=\"width: 100%\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<el-option label=\"奖励\" value=\"1\" />\r\n\t\t\t\t\t\t\t<el-option label=\"惩罚\" value=\"2\" />\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\" >新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"warning\" :disabled=\"warning\" plain :icon=\"EditPen\" @click=\"openD\">修改 </el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"danger\" :disabled=\"danger\" :icon=\"Delete\" plain @click=\"handleSelectionChange\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column property=\"qname\" align=\"center\" label=\"奖惩名称\" sortable />\r\n\t\t\t\t<el-table-column property=\"name\" align=\"center\" label=\"奖惩类型\" sortable>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 1\">奖励</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.standardType == 2\">惩罚</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"content\" label=\"奖惩内容\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"reason\" label=\"依据\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看 </el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除 </el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<!-- <upData ref=\"upShow\"></upData> -->\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, upData, DailogAdd },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tstandardType: '', ////奖惩类型 1:奖励 2:惩罚\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.standardType = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getrewardPunishmentStandardList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.standardType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.standardType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr;\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getrewardPunishmentStandardDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/Incentivestandard/index.vue b/src/views/goalManagement/Incentivestandard/index.vue ---- a/src/views/goalManagement/Incentivestandard/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/Incentivestandard/index.vue (date 1660382056764) -@@ -27,7 +27,7 @@ - <div class="btns"> - <div> - <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')" >新建</el-button> -- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> -+ <!-- <el-button size="default" type="warning" :disabled="warning" plain :icon="EditPen" @click="openD">修改 </el-button> --> - <el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="handleSelectionChange">删除</el-button> - </div> - <div> -@@ -279,4 +279,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"769px\" draggable :fullscreen=\"full\" @close=\"closeDialog(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" label-width=\"120px\" :rules=\"rules\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人姓名\" prop=\"declareUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.declareUserName\" :disabled=\"disabled\" placeholder=\"请填写申报人姓名\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人性别\" prop=\"declareUserGender\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.declareUserGender\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">男</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">女</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报人部门\" placeholder=\"请选择\" prop=\"declareDepartmentId\">\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"ruleForm.declareDepartmentId\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t\t\t:data=\"newTreeList\" :props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故名称\" prop=\"accidentName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"工伤类型\" prop=\"workInjuryType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.workInjuryType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻微伤\" value=\"轻微伤\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"轻伤\" value=\"轻伤\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"申报日期\" prop=\"declareDate\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.declareDate\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"损失工时\" prop=\"lostTime\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.lostTime\" :disabled=\"disabled\" placeholder=\"请填写损失工时\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊医院\" prop=\"visitHospital\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitHospital\" :disabled=\"disabled\" placeholder=\"请填写就诊医院\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"就诊结果\" prop=\"visitResult\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.visitResult\" :disabled=\"disabled\" placeholder=\"请填写就诊结果\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关附件\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"注意事项\" prop=\"mattersNeedingAttention\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.mattersNeedingAttention\" :disabled=\"disabled\" placeholder=\"请填写注意事项\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"材料是否齐全\" prop=\"completeMaterials\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"ruleForm.completeMaterials\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"false\">否</el-radio>\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"true\">是</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"备注\" prop=\"remark\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.remark\" :disabled=\"disabled\" type=\"textarea\" placeholder=\"请填写备注\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"showRef\" />\r\n\t\t<userSelections ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n\treactive,\r\n\tref,\r\n\tdefineComponent,\r\n\tonMounted\r\n} from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance,FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport UserSelections from '/@/components/userSelections/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tUserSelections,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\tdeclareUserName: '',\r\n\t\t\tdeclareUserGender: '',\r\n\t\t\tdeclareDepartmentId: '',\r\n\t\t\taccidentName:'',\r\n\t\t\taccidentExpressId: '',\r\n\t\t\tworkInjuryType: '',\r\n\t\t\tdeclareDate: '',\r\n\t\t\tlostTime: '',\r\n\t\t\tvisitHospital: '',\r\n\t\t\tvisitResult: '',\r\n\t\t\tmattersNeedingAttention: '',\r\n\t\t\tcompleteMaterials: '',\r\n\t\t\tremark: '',\r\n\t\t\tfileList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfileName: '',\r\n\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif (title == '查看工伤申报' || title == '修改工伤申报') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentManagementSystem(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\tconst tree = [\r\n\t\t];\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\r\n\t\t];\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t// 关闭弹窗\r\n\t\tconst closeDialog = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t\tisShowDialog.value = false;\r\n\t\t};\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdeclareUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人姓名不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareUserGender: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人性别不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报人部门不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\taccidentName: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '事故名称不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tworkInjuryType: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '工伤类型不能为空',\r\n\t\t\t\t trigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tdeclareDate: [\r\n\t\t\t\t{\r\n\t\t\t\t required: true,\r\n\t\t\t\t message: '申报日期不能为空',\r\n\t\t\t\t trigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t ],\r\n\t\t\tlostTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '损失工时不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitHospital: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊医院不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvisitResult: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '就诊结果不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmattersNeedingAttention: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '注意事项不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcompleteMaterials: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '材料状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tremark: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '备注不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t})\r\n\r\n\t\t// 事故名称弹窗\r\n\t\tconst showRef = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tshowRef.value.openDailog();\r\n\t\t};\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value.accidentName = item[0].accidentName\r\n\t\t\truleForm.value.occurrenceTime = item[0].occurrenceTime\r\n\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tif (title == '新建工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\tdelete ruleForm.value.id\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workAdd(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改工伤申报') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\truleForm.value.fileList=[]\r\n\t\t\t\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\t\t\t\tdelete ruleForm.value.occurrenceTime\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.workView(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\tdeclareUserName: '',\r\n\t\t\t\t\tdeclareUserGender: '',\r\n\t\t\t\t\tdeclareDepartmentId: '',\r\n\t\t\t\t\taccidentExpressId: '',\r\n\t\t\t\t\tworkInjuryType: '',\r\n\t\t\t\t\tdeclareDate: '',\r\n\t\t\t\t\tlostTime: '',\r\n\t\t\t\t\tvisitHospital: '',\r\n\t\t\t\t\tvisitResult: '',\r\n\t\t\t\t\tmattersNeedingAttention: '',\r\n\t\t\t\t\tcompleteMaterials: '',\r\n\t\t\t\t\tremark: '',\r\n\t\t\t\t\tfileList: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfileName: '',\r\n\t\t\t\t\t\t\tfileUrl: '',\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDialog();\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdaiInpt,\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\ttree,\r\n\t\t\tshowRef,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\tonSelectItem,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tnewTreeList,\r\n\t\t\tpropse,\r\n\t\t\tcloseDialog,\r\n\t\t\tuploaderImg\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue ---- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue (date 1660382056767) -@@ -81,7 +81,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="相关附件"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <uploaderImg :fileList="fileList" :name="INCIDENT_MANAGE" -+ @successUploader="successUploader" :disabled="disabled"></uploaderImg> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -184,10 +185,35 @@ - .then((res) => { - if (res.data.code == 200) { - ruleForm.value = res.data.data; -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ await goalManagementApi() -+ .searchFile(fileList.value[a].fileName) -+ .then((res) => { -+ fileList.value[a].url = res.data -+ }) -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref(''); - // 上传附件 -@@ -241,6 +267,7 @@ - // 关闭弹窗 - const closeDialog = (formEl: FormInstance | undefined) => { - formEl.resetFields(); -+ fileList.value=[] - isShowDialog.value = false; - }; - // 必填项提示 -@@ -346,12 +373,14 @@ - }; - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建工伤申报') { - if (!formEl) return; - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - delete ruleForm.value.id -@@ -384,7 +413,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - isShowDialog.value = false; -- ruleForm.value.fileList=[] - delete ruleForm.value.accidentName - delete ruleForm.value.occurrenceTime - accidentManagementSystemApi() -@@ -491,7 +519,9 @@ - newTreeList, - propse, - closeDialog, -- uploaderImg -+ uploaderImg, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/component/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"目标考核\" width=\"70%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" :disabled=\"disabled\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.year\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" disabled />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t<el-tab-pane label=\"目标指标分解\" name=\"1\">\r\n <el-button type=\"primary\" size=\"default\" @click=\"daiAdd('新增')\" :disabled=\"disabled\">新增</el-button>\r\n </el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<el-table :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t<el-table-column align=\"center\" type=\"index\" label=\"序号\" width=\"70\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"责任部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"name\" label=\"考核指标\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定部门\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"制定日期\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报值\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"上报时间\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核结果\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核人\" />\r\n\t\t\t<el-table-column align=\"center\" prop=\"address\" label=\"考核时间\" />\r\n\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t<el-button link type=\"primary\" @click=\"daiAdd('修改', scope.row)\">查看</el-button>\r\n\t\t\t\t</template>\r\n\t\t\t</el-table-column>\r\n\t\t</el-table>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"dialogVisible = false\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"onNumber\"></DailogSearch>\r\n <DailogAdd ref=\"Show\" @onAdd=\"add\"></DailogAdd>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';\r\nimport DailogAdd from './DailogAdd.vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport {deepClone} from \"/@/utils/other\";\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch ,DailogAdd},\r\n\tsetup() {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({});\r\n\t\tconst targetType = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst titles = ref();\r\n\t\tconst openDailog = (title: string, type: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\ttargetType.value = type;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改') {\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onNumber = (e: object) => {\r\n\t\t\tform.value = e;\r\n\t\t};\r\n\t\t// 导航\r\n\t\tconst activeName = ref('1');\r\n\t\t// 表格\r\n\t\tconst tableData = ref([]);\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog(targetType.value);\r\n\t\t};\r\n\r\n // 新增弹窗\r\n const index=ref<any>()\r\n const Show = ref();\r\n const daiAdd = (title: string, data: any) => {\r\n // index.value = formUp.targetDivideDetailList.indexOf(data);\r\n Show.value.openDailog(title, data);\r\n };\r\n const formUp = reactive({\r\n targetId: '', //关联的目标指标/外键\r\n delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开\r\n // targetDivideDetailList: [], //目标指标分解列表\r\n });\r\n\r\n const add = (val: any) => {\r\n const item = deepClone(val)\r\n if(index.value==-1){\r\n formUp.targetDivideDetailList.push(item);\r\n }else{\r\n formUp.targetDivideDetailList[index.value] = item;\r\n }\r\n\r\n // let obj=JSON.parse(JSON.stringify(form.value))\r\n };\r\n\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tform,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\ttargetType,\r\n\t\t\tonNumber,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\tactiveName,\r\n\t\t\ttableData,\r\n\t\t\tShows,\r\n\t\t\tdaiInpt,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n daiAdd,\r\n index,\r\n Show,\r\n formUp,\r\n add,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/Dailog.vue b/src/views/goalManagement/safetyAssessment/component/Dailog.vue ---- a/src/views/goalManagement/safetyAssessment/component/Dailog.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/safetyAssessment/component/Dailog.vue (date 1660382056770) -@@ -1,5 +1,5 @@ - <template> -- <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable> -+ <el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable @close="closeDialog"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" label-width="120px"> - <el-row> -@@ -34,27 +34,38 @@ - <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button> - </el-tab-pane> - </el-tabs> -- <el-table :data="tableData" style="width: 100%"> -+ <el-table :data="formUp.examineList" style="width: 100%"> - <el-table-column align="center" type="index" label="序号" width="70" /> -- <el-table-column align="center" prop="date" label="责任部门" /> -- <el-table-column align="center" prop="name" label="考核指标" /> -- <el-table-column align="center" prop="address" label="制定部门" /> -- <el-table-column align="center" prop="address" label="制定日期" /> -- <el-table-column align="center" prop="address" label="上报值" /> -- <el-table-column align="center" prop="address" label="上报时间" /> -- <el-table-column align="center" prop="address" label="考核结果" /> -- <el-table-column align="center" prop="address" label="考核人" /> -- <el-table-column align="center" prop="address" label="考核时间" /> -+ <el-table-column align="center" prop="dutyDepartmentName" label="责任部门" /> -+ <el-table-column align="center" prop="examineValue" label="考核指标" /> -+ <el-table-column align="center" prop="makerDepartmentName" label="制定部门" /> -+ <el-table-column align="center" prop="makeDate" label="制定日期" /> -+ <el-table-column align="center" prop="uploadValue" label="上报值" /> -+ <el-table-column align="center" prop="uploadDate" label="上报时间" /> -+ <el-table-column align="center" prop="examineResult" label="考核结果" > -+ <template #default="scope"> -+ <div v-if="scope.row.examineResult==1"> -+ 合格 -+ </div> -+ <div v-if="scope.row.examineResult==2"> -+ 不合格 -+ </div> -+ </template> -+ </el-table-column> -+ <el-table-column align="center" prop="examinePersonName" label="考核人" /> -+ <el-table-column align="center" prop="examineDate" label="考核时间" /> - <el-table-column align="center" label="操作"> - <template #default="scope"> -- <el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('查看', scope.row)">查看</el-button> -+ <el-button link type="primary" @click="daiAdd('修改', scope.row)">修改</el-button> -+ <el-button link type="primary" @click="Delete(scope.row)">删除</el-button> - </template> - </el-table-column> - </el-table> - <template #footer> - <span class="dialog-footer"> -- <el-button @click="dialogVisible = false" size="default">关闭</el-button> -- <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button> -+ <el-button @click="closeDialog" size="default">关闭</el-button> -+ <el-button type="primary" @click="submitForm" size="default">确定</el-button> - </span> - </template> - </el-dialog> -@@ -84,15 +95,62 @@ - disabled.value = title == '查看' ? true : false; - if (title == '查看' || title == '修改') { - goalManagementApi() -- .getTargetMngDetail(id) -+ .gettargetExamineDetail(id) - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ formUp.examineList = res.data.data.examineList -+ } else { -+ ElMessage.error(res.data.msg); -+ } -+ }); -+ } -+ }; -+ const closeDialog = () => { -+ form.value = {} -+ formUp.examineList = [] -+ dialogVisible.value = false -+ }; -+ const submitForm = () => { -+ // formUp.delTargetDivideDetails = arr.value.toString(); -+ // formUp.targetId = form.value.id; -+ dialogVisible.value = false; -+ for(let i=0;i<formUp.examineList.length;i++){ -+ delete formUp.examineList[i].dutyDepartmentName -+ delete formUp.examineList[i].makerDepartmentName -+ } -+ formUp.id = form.value.id -+ formUp.delIds = arr.value.toString(); -+ goalManagementApi() -+ .gettargetExamineAddOrUpdate(formUp) -+ .then((res) => { -+ if (res.data.code == 200) { -+ ElMessage({ -+ message: res.data.msg, -+ type: 'success', -+ }); -+ emit('addList'); - } else { - ElMessage.error(res.data.msg); - } - }); -- } -+ form.value = { -+ qName: '', -+ indexNum: '', -+ year: '', -+ value: '', -+ examineList: [], -+ }; -+ tableData.value = []; -+ formUp.targetId = ''; -+ formUp.delTargetDivideDetails = ''; -+ formUp.examineList = []; -+ }; -+ const arr = ref([]); -+ // 删除 -+ const Delete = (data: any) => { -+ formUp.examineList.splice(form.value.examineList.indexOf(data), 1); -+ arr.value.push(data.id); - }; - const onNumber = (e: object) => { - form.value = e; -@@ -107,29 +165,30 @@ - Shows.value.openDailog(targetType.value); - }; - -- // 新增弹窗 -- const index=ref<any>() -- const Show = ref(); -- const daiAdd = (title: string, data: any) => { -- // index.value = formUp.targetDivideDetailList.indexOf(data); -- Show.value.openDailog(title, data); -- }; -- const formUp = reactive({ -- targetId: '', //关联的目标指标/外键 -- delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -- // targetDivideDetailList: [], //目标指标分解列表 -- }); -+ // 新增弹窗 -+ const index=ref<any>() -+ const Show = ref(); -+ const daiAdd = (title: string, data: any) => { -+ index.value = formUp.examineList.indexOf(data); -+ Show.value.openDailog(title, data); -+ }; -+ const formUp = reactive({ -+ targetId: '', //关联的目标指标/外键 -+ delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开 -+ examineList: [], //目标指标分解列表 -+ }); - -- const add = (val: any) => { -- const item = deepClone(val) -- if(index.value==-1){ -- formUp.targetDivideDetailList.push(item); -- }else{ -- formUp.targetDivideDetailList[index.value] = item; -- } -- -- // let obj=JSON.parse(JSON.stringify(form.value)) -- }; -+ const add = (val: any) => { -+ const item = deepClone(val) -+ if(index.value==-1){ -+ -+ formUp.examineList.push(item); -+ }else{ -+ formUp.examineList[index.value] = item; -+ } -+ console.log(formUp) -+ // let obj=JSON.parse(JSON.stringify(form.value)) -+ }; - - //全屏 - const full = ref(false); -@@ -156,11 +215,14 @@ - full, - toggleFullscreen, - FullScreen, -- daiAdd, -- index, -- Show, -- formUp, -- add, -+ daiAdd, -+ index, -+ Show, -+ formUp, -+ add, -+ closeDialog, -+ submitForm, -+ Delete - }; - }, - }); -Index: src/views/goalManagement/targetSettings/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.qName\" size=\"default\" placeholder=\"安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" size=\"default\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"16\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<el-tabs v-model=\"ruleForm.searchParams.targetType\" class=\"demo-tabs\" @tab-click=\"handleClick\">\r\n\t\t\t\t<div class=\"btns\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<el-button type=\"primary\" size=\"default\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t\t<el-button type=\"danger\" :disabled=\"danger\" size=\"default\" @click=\"onDeleteAll\" :icon=\"Delete\" plain>删除</el-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Upload\" @click=\"upButton\"></el-button>\r\n <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(年)\" name=\"1\"> </el-tab-pane>\r\n\t\t\t\t<el-tab-pane label=\"目标定制(月)\" name=\"2\"></el-tab-pane>\r\n\t\t\t</el-tabs>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"目标指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"level\" label=\"指标级别\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"completeDate\" label=\"完成期限\" align=\"center\" :formatter=\"timeDate\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"状态\" align=\"center\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 1\">已分解</span>\r\n\t\t\t\t\t\t<span v-if=\"scope.row.divideStatus == 2\">未分解</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<dailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></dailogAdd>\r\n\t\t\t<upData ref=\"upShow\"></upData>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport dailogAdd from './component/dailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport upData from '../../../components/updata/updata.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, dailogAdd, upData },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst small = ref(false);\r\n\t\tconst disabled = ref(false);\r\n\t\tconst background = ref(false);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDialog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\t// const warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\t// warning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\t// warning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 上传\r\n\t\t// const upShow = ref();\r\n\t\t// const upButton = () => {\r\n\t\t// \tupShow.value.openDialog();\r\n\t\t// };\r\n\t\treturn {\r\n\t\t\ttimeDate,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\thandleClick,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\t// upShow,\r\n\t\t\t// upButton,\r\n\t\t\tsmall,\r\n\t\t\tdisabled,\r\n\t\t\tbackground,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tonAddorUpdata,\r\n\t\t\tonDelete,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tdeletAll,\r\n\t\t\tdanger,\r\n\t\t\tonDeleteAll,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 0px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/index.vue b/src/views/goalManagement/targetSettings/index.vue ---- a/src/views/goalManagement/targetSettings/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetSettings/index.vue (date 1660382056773) -@@ -102,6 +102,7 @@ - const resetForm = () => { - ruleForm.searchParams.qName = ''; - ruleForm.searchParams.indexNum = ''; -+ listApi() - }; - const listApi = () => { - goalManagementApi() -Index: src/views/goalManagement/safetyAssessment/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable @close=\"resetForm(ruleFormRef)\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\" ref=\"ruleFormRef\" :rules=\"rules\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"责任部门\" prop=\"dutyDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.dutyDepartmentId\" check-strictly=\"true\" :data=\"data\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"考核指标\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.value\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"制定人部门\" prop=\"makerDepartmentId\" size=\"default\">\r\n\t\t\t\t\t\t<el-tree-select v-model=\"form.makerDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"制定日期\" prop=\"makeDate\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"上报值\" prop=\"commitPersonName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.commitPersonName\">\r\n<!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"上报时间\" prop=\"makeDate\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n\t\t\t</el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核结果\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <!--\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>-->\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\">\r\n <el-form-item label=\"考核人\" prop=\"commitPersonName\" size=\"default\">\r\n <el-input v-model=\"form.commitPersonName\">\r\n <template #append> <el-button :icon=\"Search\" @click=\"openUser\" /> </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"11\">\r\n <el-form-item label=\"考核时间\" prop=\"commitPersonName\" size=\"default\">\r\n <el-date-picker v-model=\"form.makeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"11\" :offset=\"2\"></el-col>\r\n </el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearchUser ref=\"Show\" @SearchUser=\"onUser\"></DailogSearchUser>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive, onMounted } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport DailogSearchUser from '../../../../components/DailogSearchUser/index.vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearchUser },\r\n\tsetup(props, { emit }) {\r\n\t\tconst ruleFormRef = ref<FormInstance>()\r\n\t\tconst form = ref({\r\n\t\t\tdutyDepartmentId: '', ////责任部门/外键\r\n\t\t\tmakerDepartmentId: '', ////制定人部门/外键\r\n\t\t\tcommitPersonId: '', ////上报人/外键\r\n\t\t\tcommitPersonName: '',\r\n\t\t\tvalue: '', ////考核指标值\r\n\t\t\tmakeDate: '', ////制定日期\r\n\t\t});\r\n\t\t//部门\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\tconst disabled = ref(false);\r\n\t\t// 开启弹窗\r\n\t\tconst titles = ref();\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst openDailog = (title: string, data: any) => {\r\n\t\t\ttitles.value = `${title}目标考核`;\r\n\t\t\tif (title == '查看') {\r\n\t\t\t\tdisabled.value = true;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else if (title == '修改') {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t\tform.value = data;\r\n\t\t\t} else {\r\n\t\t\t\tdisabled.value = false;\r\n\t\t\t}\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 开启用户弹窗\r\n\t\tconst Show = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tShow.value.openDailog();\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tdutyDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '责任部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakerDepartmentId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定人部门不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '上报人不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '考核指标值不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'number',\r\n\t\t\t\t\tmessage: '考核指标值只能为数字类型',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tmakeDate: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '制定日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcommitPersonName: [],\r\n\t\t});\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\temit('onAdd', form.value);\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\t// handleClose(formEl)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\t// console.log(formEl);\r\n\t\t\tif (!formEl) return\r\n\t\t\tformEl.resetFields();\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value={}\r\n\t\t};\r\n\t\t// const handleClose = (formEl: any) => {\r\n\t\t// \tformEl.resetFields();\r\n\t\t// };\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\tconst onUser = (e: any) => {\r\n\t\t\tconsole.log(e)\r\n\t\t\tform.value.commitPersonId = e.uid;\r\n\t\t\tform.value.commitPersonName = e.realName;\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\t// handleClose,\r\n\t\t\tform,\r\n\t\t\tpropse,\r\n\t\t\tdepartment,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\tShow,\r\n\t\t\topenUser,\r\n\t\t\tSearch,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tdata,\r\n\t\t\tonUser,\r\n\t\t\truleFormRef,\r\n\t\t\trules,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue ---- a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue (date 1660382056793) -@@ -5,19 +5,20 @@ - <el-row> - <el-col :span="11"> - <el-form-item label="责任部门" prop="dutyDepartmentId" size="default"> -- <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核指标" prop="value" size="default"> -- <el-input v-model.number="form.value" /> -+ <el-form-item label="考核指标" prop="examineValue" size="default"> -+ <el-input v-model.number="form.examineValue" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> - <el-form-item label="制定人部门" prop="makerDepartmentId" size="default"> -- <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" /> -+ <el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" -+ @current-change="makerDepartmentName" class="w100" :props="propse" placeholder="请选择" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -@@ -28,29 +29,30 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="上报值" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="上报值" prop="uploadValue" size="default"> -+ <el-input v-model="form.uploadValue"> - <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> - </el-input> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="上报时间" prop="makeDate" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="上报时间" prop="uploadDate" size="default"> -+ <el-date-picker v-model="form.uploadDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核结果" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -- <!-- <template #append> <el-button :icon="Search" @click="openUser" /> </template>--> -- </el-input> -+ <el-form-item label="考核结果" prop="examineResult" size="default"> -+ <el-select v-model="form.examineResult" placeholder="请选择" style="width: 100%"> -+ <el-option label="合格" :value="1" /> -+ <el-option label="不合格" :value="2" /> -+ </el-select> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"> -- <el-form-item label="考核人" prop="commitPersonName" size="default"> -- <el-input v-model="form.commitPersonName"> -+ <el-form-item label="考核人" prop="examinePersonName" size="default"> -+ <el-input v-model="form.examinePersonName"> - <template #append> <el-button :icon="Search" @click="openUser" /> </template> - </el-input> - </el-form-item> -@@ -58,8 +60,8 @@ - </el-row> - <el-row> - <el-col :span="11"> -- <el-form-item label="考核时间" prop="commitPersonName" size="default"> -- <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-form-item label="考核时间" prop="examineDate" size="default"> -+ <el-date-picker v-model="form.examineDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> - </el-form-item> - </el-col> - <el-col :span="11" :offset="2"></el-col> -@@ -67,7 +69,7 @@ - </el-form> - <template #footer> - <span class="dialog-footer"> -- -+ - <el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button> - <el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button> - </span> -@@ -87,12 +89,15 @@ - setup(props, { emit }) { - const ruleFormRef = ref<FormInstance>() - const form = ref({ -- dutyDepartmentId: '', ////责任部门/外键 -- makerDepartmentId: '', ////制定人部门/外键 -- commitPersonId: '', ////上报人/外键 -- commitPersonName: '', -- value: '', ////考核指标值 -- makeDate: '', ////制定日期 -+ "dutyDepartmentId": '', ////责任部门id/外键 -+ "examineDate": '', ////考核时间 -+ "examinePersonId": '', ////考核人ID/外键 -+ "examineResult": '', ////考核结果 1:合格 2:不合格 -+ "examineValue": '', ////考核指标 -+ "makeDate": '', ////制定日期 -+ "makerDepartmentId": '', ////制定部门/外键 -+ "uploadDate": '', ////上报时间 -+ "uploadValue": "", ////上报值 - }); - //部门 - const department = () => { -@@ -158,7 +163,7 @@ - trigger: 'blur', - }, - ], -- value: [ -+ examineValue: [ - { - required: true, - message: '考核指标值不能为空', -@@ -179,6 +184,13 @@ - ], - commitPersonName: [], - }); -+ const dutyName=(data:any)=>{ -+ form.value.dutyDepartmentName=data.depName -+ } -+ const makerDepartmentName=(data:any)=>{ -+ form.value.makerDepartmentName=data.depName -+ } -+ - const submitForm = async (formEl: FormInstance | undefined) => { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -214,8 +226,8 @@ - const data = ref(); - const onUser = (e: any) => { - console.log(e) -- form.value.commitPersonId = e.uid; -- form.value.commitPersonName = e.realName; -+ form.value.examinePersonId = e.uid; -+ form.value.examinePersonName = e.realName; - }; - return { - disabled, -@@ -238,6 +250,8 @@ - rules, - submitForm, - resetForm, -+ dutyName, -+ makerDepartmentName - }; - }, - }); -Index: src/views/accidentManagementSystem/accidentReport/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div class=\"system-edit-user-container\">\r\n\t\t<el-dialog :title=\"titles\" v-model=\"isShowDialog\" width=\"800px\" draggable :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\">\r\n\t\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" size=\"default\" :rules=\"rules\" label-width=\"140px\">\r\n\t\t\t\t<el-row :gutter=\"35\">\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故快报\" prop=\"accidentExpressId\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"accidentName\" :disabled=\"true\" placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"daiInpt\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故部门\" placeholder=\"请选择\" prop=\"accidentDepartmentId\">\r\n\t\t\t\t\t\t\t<!--<el-input v-model=\"ruleForm.accidentDepartmentName\" class=\"input-with-select\" />-->\r\n\t\t\t\t\t\t\t<el-tree-select v-model=\"accidentDepartmentId\" :disabled=\"true\" :data=\"newTreeList\"\r\n\t\t\t\t\t\t\t\t\t\t\t:props=\"propse\" class=\"w100\" placeholder=\"请选择\" />\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故发生地点\" prop=\"occurrencePlace\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"occurrencePlace\" :disabled=\"true\" placeholder=\"请填写发生地点\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"发生时间\" prop=\"occurrenceTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"occurrenceTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"true\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故类别\" prop=\"accidentType\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentType\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"人员伤亡事故\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"火灾爆炸事故\" value=\"火灾爆炸事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"危险品泄露事故\" value=\"危险品泄露事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"设备事故\" value=\"设备事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"工艺事故\" value=\"工艺事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故等级\" prop=\"accidentGrade\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentGrade\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特别重大\" value=\"人员伤亡事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大\" value=\"重大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大\" value=\"较大\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般\" value=\"一般\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"经济损失\" prop=\"economicLoss\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.economicLoss\" :disabled=\"disabled\" placeholder=\"请填写经济损失\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"轻伤人数\" prop=\"minorInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.minorInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写轻伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"重伤人数\" prop=\"seriousInjuryNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.seriousInjuryNum\" :disabled=\"disabled\" placeholder=\"请填写重伤人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"死亡人数\" prop=\"deathNum\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.deathNum\" :disabled=\"disabled\" placeholder=\"请填写死亡人数\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故原因\" prop=\"accidentCause\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentCause\" :disabled=\"disabled\" placeholder=\"请填写事故原因\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"要求报告完成期限\" prop=\"reportDeadline\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.reportDeadline\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故级别\" prop=\"accidentLevel\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.accidentLevel\" :disabled=\"disabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"特大事故\" value=\"特大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"重大事故\" value=\"重大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"较大事故\" value=\"较大事故\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"一般事故\" value=\"一般事故\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故延期申请\" prop=\"accidentDelayApply\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentDelayApply\" :disabled=\"disabled\" placeholder=\"请填写事故延期申请\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(直接分析)\" prop=\"comprehensiveAnalysisDirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisDirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(直接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"原因综合分析(间接分析)\" prop=\"comprehensiveAnalysisIndirect\">\r\n\t\t\t\t\t\t\t<el-input\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.comprehensiveAnalysisIndirect\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"请填写原因综合分析(间接分析)\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"150\"\r\n\t\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"整改措施\" prop=\"rectificationMeasures\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.rectificationMeasures\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写整改措施\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故处理\" prop=\"accidentHandling\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.accidentHandling\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写事故处理\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写人\" prop=\"fillInUserName\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.fillInUserName\" :disabled=\"true\"\r\n\t\t\t\t\t\t\t\t\t placeholder=\"请选择\" class=\"input-with-select\">\r\n\t\t\t\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser\" />\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"填写日期\" prop=\"fillInTime\">\r\n\t\t\t\t\t\t\t<el-date-picker\r\n\t\t\t\t\t\t\t\tv-model=\"ruleForm.fillInTime\"\r\n\t\t\t\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<!-- <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">-->\r\n\t\t\t\t\t<!-- <el-form-item label=\"事故照片\">-->\r\n\t\t\t\t\t<!-- <el-input v-model=\"ruleForm.describe\" type=\"textarea\" placeholder=\"请填写应急防范措施\" maxlength=\"150\"></el-input>-->\r\n\t\t\t\t\t<!-- </el-form-item>-->\r\n\t\t\t\t\t<!-- </el-col>-->\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"相关人员笔录\" prop=\"relevantPersonnelRecords\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.relevantPersonnelRecords\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写相关人员笔录\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故状态\" prop=\"status\">\r\n\t\t\t\t\t\t\t<el-select v-model=\"ruleForm.status\" :disabled=\"statusDisabled\" class=\"w100\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t\t<el-option label=\"处理中\" :value=\"1\"></el-option>\r\n\t\t\t\t\t\t\t\t<el-option label=\"已处理\" :value=\"2\"></el-option>\r\n\t\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"事故分析会议纪要\" prop=\"fileList\">\r\n\t\t\t\t\t\t\t<uploaderImg :fileList=\"fileList\" :disabled=\"disabled\"></uploaderImg>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t\t<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n\t\t\t\t\t\t<el-form-item label=\"其他材料\" prop=\"otherMaterials\">\r\n\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.otherMaterials\" :disabled=\"disabled\"\r\n\t\t\t\t\t\t\t\t\t type=\"textarea\" placeholder=\"请填写其他材料\" maxlength=\"150\"></el-input>\r\n\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t</el-col>\r\n\t\t\t\t</el-row>\r\n\t\t\t</el-form>\r\n\t\t\t<template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" v-if=\"disabled == true ? false : true\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n\t\t\t</template>\r\n\t\t</el-dialog>\r\n\t\t<AccidentName @selectItem=\"onSelectItem\" ref=\"Shows\" />\r\n\t\t<DailogSearchUserManger @SearchUser=\"onUser\" ref=\"userRef\" />\r\n\t\t<RegionsDialog ref=\"openRef\" />\r\n\t</div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, ref, defineComponent,onMounted } from 'vue';\r\n\r\nimport type { UploadUserFile, FormInstance, FormRules } from 'element-plus';\r\nimport { ElMessage } from 'element-plus';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearchUserManger from '/@/components/DailogSearchUserManger/index.vue';\r\nimport AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';\r\nimport RegionsDialog from '/@/components/regionsDialog/index.vue';\r\nimport uploaderImg from '/@/components/uploaderImg/index.vue';\r\nimport { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources';\r\nimport { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\n\r\nexport default defineComponent({\r\n\tname: 'openAdd',\r\n\tcomponents: {\r\n\t\tAccidentName,\r\n\t\tDailogSearchUserManger,\r\n\t\tRegionsDialog,\r\n\t\tuploaderImg\r\n\t},\r\n\tsetup(props, { emit }) {\r\n\t\tconst isShowDialog = ref(false);\r\n\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\t//定义表单\r\n\t\tconst ruleForm = ref({\r\n\t\t\taccidentExpressId:'',\r\n\r\n\t\t\taccidentType: '',\r\n\t\t\taccidentGrade: '',\r\n\t\t\teconomicLoss: '',\r\n\t\t\tminorInjuryNum: '',\r\n\t\t\tseriousInjuryNum: '',\r\n\t\t\tdeathNum: '',\r\n\t\t\taccidentCause: '',\r\n\t\t\treportDeadline: '',\r\n\t\t\taccidentLevel: '',\r\n\t\t\taccidentDelayApply: '',\r\n\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\trectificationMeasures: '',\r\n\t\t\taccidentHandling: '',\r\n\t\t\tfillInUserUid: '',\r\n\t\t\tfillInUserName:'',\r\n\t\t\tfillInTime: '',\r\n\t\t\trelevantPersonnelRecords: '',\r\n\t\t\totherMaterials: '',\r\n\t\t\tfileList: [],\r\n\t\t\tstatus:''\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref();\r\n\t\tconst statusDisabled = ref(true)\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => {\r\n\t\t\tisShowDialog.value = true;\r\n\t\t\ttitles.value = title;\r\n\t\t\tdisabled.value = type;\r\n\t\t\tif(statusDisabledFlag.value=='first'){\r\n\t\t\t\truleForm.value.status = 1\r\n\t\t\t}else if(statusDisabledFlag.value=='second'){\r\n\t\t\t\truleForm.value.status = 2\r\n\t\t\t}\r\n\t\t\tif (title == '修改事故报告') {\r\n\t\t\t\tstatusDisabled.value = false\r\n\t\t\t}else {\r\n\t\t\t\tstatusDisabled.value = true\r\n\t\t\t}\r\n\t\t\tif (title == '查看事故报告' || title == '修改事故报告') {\r\n\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t.seeAccidentReport(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\truleForm.value = res.data.data;\r\n\t\t\t\t\t\t\taccidentName.value = res.data.data.accidentName\r\n\t\t\t\t\t\t\taccidentDepartmentId.value = res.data.data.accidentDepartmentId\r\n\t\t\t\t\t\t\toccurrencePlace.value = res.data.data.occurrencePlace\r\n\t\t\t\t\t\t\toccurrenceTime.value = res.data.data.occurrenceTime\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst onCancel = (formEl: FormInstance | undefined) => {\r\n\t\t\tresetForm(formEl);\r\n\t\t};\r\n\t\t//日期选择器\r\n\t\tconst value1 = ref('');\r\n\t\t// 上传附件\r\n\t\tconst fileList = ref<UploadUserFile[]>([]);\r\n\t\t// 可选择树\r\n\t\tconst treeSelect = ref();\r\n\t\t//定义树形下拉框\r\n\t\tconst responsibleDepartment = ref();\r\n\t\tconst data = [\r\n\t\t];\r\n\t\t// 必填项提示\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\taccidentExpressId: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '快报不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentType: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故类别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentGrade: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故等级不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\teconomicLoss: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '经济损失不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\treportDeadline: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '要求报告完成期限不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentLevel: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故级别不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisDirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(直接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcomprehensiveAnalysisIndirect: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '原因综合分析(间接分析)不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\trectificationMeasures: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '整改措施不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\taccidentHandling: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故处理不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInUserName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写人不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tfillInTime: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'date',\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '填写日期不能为空',\r\n\t\t\t\t\ttrigger: 'blur',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tstatus: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '事故状态不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tconst accidentDepartmentId = ref()\r\n\t\tconst occurrencePlace = ref()\r\n\t\tconst occurrenceTime = ref()\r\n\t\tconst accidentName = ref()\r\n\t\t//事故快报回填\r\n\t\tconst onSelectItem = (item: any) => {\r\n\t\t\tconsole.log('item', item[0]);\r\n\t\t\truleForm.value.accidentExpressId = item[0].id\r\n\t\t\taccidentName.value = item[0].accidentName\r\n\t\t\taccidentDepartmentId.value = item[0].accidentDepartmentId\r\n\t\t\toccurrencePlace.value = item[0].occurrencePlace\r\n\t\t\toccurrenceTime.value = item[0].occurrenceTime\r\n\t\t};\r\n\t\t// 表单提交验证必填项\r\n\t\tconst submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n\t\t\tdelete ruleForm.value.accidentName\r\n\t\t\tdelete ruleForm.value.accidentDepartmentId\r\n\t\t\tdelete ruleForm.value.occurrencePlace\r\n\t\t\tdelete ruleForm.value.occurrenceTime\r\n\r\n\t\t\tif (title == '新建事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.addAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (title == '修改事故报告') {\r\n\t\t\t\tif (!formEl) return;\r\n\t\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\t\tif (valid) {\r\n\t\t\t\t\t\t//TODO 上传组件待定\r\n\t\t\t\t\t\truleForm.value.fileList = []\r\n\t\t\t\t\t\tisShowDialog.value = false;\r\n\t\t\t\t\t\taccidentManagementSystemApi()\r\n\t\t\t\t\t\t\t.editAccidentReport(ruleForm.value)\r\n\t\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: '修改成功',\r\n\t\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\t\tshowClose: true,\r\n\t\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\t\ttype: 'error',\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\temit('myAdd', true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tformEl.resetFields();\r\n\t\t\t\truleForm.value = {\r\n\t\t\t\t\taccidentExpressId:'',\r\n\r\n\t\t\t\t\taccidentType: '',\r\n\t\t\t\t\taccidentGrade: '',\r\n\t\t\t\t\teconomicLoss: '',\r\n\t\t\t\t\tminorInjuryNum: '',\r\n\t\t\t\t\tseriousInjuryNum: '',\r\n\t\t\t\t\tdeathNum: '',\r\n\t\t\t\t\taccidentCause: '',\r\n\t\t\t\t\treportDeadline: '',\r\n\t\t\t\t\taccidentLevel: '',\r\n\t\t\t\t\taccidentDelayApply: '',\r\n\t\t\t\t\tcomprehensiveAnalysisDirect: '',\r\n\t\t\t\t\tcomprehensiveAnalysisIndirect: '',\r\n\t\t\t\t\trectificationMeasures: '',\r\n\t\t\t\t\taccidentHandling: '',\r\n\t\t\t\t\tfillInUserUid: '',\r\n\t\t\t\t\tfillInUserName:'',\r\n\t\t\t\t\tfillInTime: '',\r\n\t\t\t\t\trelevantPersonnelRecords: '',\r\n\t\t\t\t\totherMaterials: '',\r\n\t\t\t\t\tfileList: [],\r\n\t\t\t\t\tstatus:''\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tisShowDialog.value = false;\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\t// ruleForm.value.accidentExpressId = item[0].id\r\n\t\t\truleForm.value = {}\r\n\t\t\taccidentName.value = ''\r\n\t\t\taccidentDepartmentId.value = ''\r\n\t\t\toccurrencePlace.value = ''\r\n\t\t\toccurrenceTime.value = ''\r\n\t\t};\r\n\t\tconst handleChange = (val: number) => {\r\n\t\t\tconsole.log(val);\r\n\t\t};\r\n\t\t// 应急队伍弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\t// 选择区域弹窗\r\n\t\tconst openRef = ref();\r\n\t\tconst regionsDialog = () => {\r\n\t\t\topenRef.value.openDailog();\r\n\t\t};\r\n\t\t// 打开用户选择弹窗\r\n\t\tconst userRef = ref();\r\n\t\tconst openUser = () => {\r\n\t\t\tuserRef.value.openDailog();\r\n\t\t};\r\n\t\tconst onUser = (userItem: any) => {\r\n\t\t\truleForm.value.fillInUserUid = userItem[0].uid;\r\n\t\t\truleForm.value.fillInUserName = userItem[0].realName;\r\n\t\t};\r\n\t\t//el-tree-select回显\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t};\r\n\t\tconst newTreeList = [];\r\n\t\t//得到部门树\r\n\t\tconst department = async () => {\r\n\t\t\tawait goalManagementApi()\r\n\t\t\t\t\t.getTreedepartment()\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t\t\tgetTreeList(res.data.data, newTreeList);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 递归树状数据且修改字段名\r\n\t\tconst getTreeList = (treeList, newTreeList) => {\r\n\t\t\ttreeList.map((c) => {\r\n\t\t\t\tlet tempData = {\r\n\t\t\t\t\tdepName: c.depName,\r\n\t\t\t\t\tvalue: c.depId,\r\n\t\t\t\t\tchildren: [],\r\n\t\t\t\t};\r\n\t\t\t\tif (c.children && c.children.length > 0) {\r\n\t\t\t\t\ttempData.children = [];\r\n\t\t\t\t\tgetTreeList(c.children, tempData.children);\r\n\t\t\t\t}\r\n\t\t\t\tnewTreeList.push(tempData);\r\n\t\t\t});\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tdepartment();\r\n\t\t});\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\tisShowDialog,\r\n\t\t\tonCancel,\r\n\t\t\tfileList,\r\n\t\t\tresponsibleDepartment,\r\n\t\t\tdata,\r\n\t\t\tSearch,\r\n\t\t\truleForm,\r\n\t\t\tvalue1,\r\n\t\t\ttreeSelect,\r\n\t\t\tdaiInpt,\r\n\t\t\tShows,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\trules,\r\n\t\t\topenUser,\r\n\t\t\tuserRef,\r\n\t\t\tregionsDialog,\r\n\t\t\topenRef,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\tfull,\r\n\t\t\tonUser,\r\n\t\t\tresetForm,\r\n\t\t\ttitles,\r\n\t\t\tdisabled,\r\n\t\t\temit,\r\n\t\t\thandleChange,\r\n\t\t\tonSelectItem,\r\n\t\t\tnewTreeList,\r\n\t\t\tdepartment,\r\n\t\t\tgetTreeList,\r\n\t\t\tpropse,\r\n\t\t\tstatusDisabled,\r\n\t\t\taccidentDepartmentId,\r\n\t\t\toccurrencePlace,\r\n\t\t\toccurrenceTime,\r\n\t\t\taccidentName\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea {\r\n\theight: 168px !important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner {\r\n\theight: 168px !important;\r\n}\r\n::v-deep .el-table__cell {\r\n\tfont-weight: 400;\r\n}\r\n.el-divider--horizontal {\r\n\theight: 0;\r\n\tmargin: 0;\r\n\tborder-top: transparent;\r\n}\r\n.el-select {\r\n\twidth: 100%;\r\n}\r\n::v-deep .el-form-item--default .el-form-item__label {\r\n\theight: 100%;\r\n\ttext-align: right;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue ---- a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue (date 1660382056798) -@@ -166,11 +166,11 @@ - /> - </el-form-item> - </el-col> -- <!-- <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">--> -- <!-- <el-form-item label="事故照片">--> -- <!-- <el-input v-model="ruleForm.describe" type="textarea" placeholder="请填写应急防范措施" maxlength="150"></el-input>--> -- <!-- </el-form-item>--> -- <!-- </el-col>--> -+ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -+ <el-form-item label="事故照片"> -+ <uploaderImg :fileList="ruleForm.expressFileList" :disabled="true"></uploaderImg> -+ </el-form-item> -+ </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> - <el-form-item label="相关人员笔录" prop="relevantPersonnelRecords"> - <el-input v-model="ruleForm.relevantPersonnelRecords" :disabled="disabled" -@@ -186,8 +186,9 @@ - </el-form-item> - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> -- <el-form-item label="事故分析会议纪要" prop="fileList"> -- <uploaderImg :fileList="fileList" :disabled="disabled"></uploaderImg> -+ <el-form-item label="事故分析会议纪要"> -+ <uploaderFile :fileList="fileList" :systemName="'INCIDENT_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> -@@ -221,6 +222,7 @@ - import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue'; - import RegionsDialog from '/@/components/regionsDialog/index.vue'; - import uploaderImg from '/@/components/uploaderImg/index.vue'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - import { emergencySuppliesApi } from '/@/api/contingencyManagement/emergencyResources'; - import { accidentManagementSystemApi } from '/@/api/workInjuryDeclaration'; - import { goalManagementApi } from '/@/api/goalManagement'; -@@ -231,7 +233,8 @@ - AccidentName, - DailogSearchUserManger, - RegionsDialog, -- uploaderImg -+ uploaderImg, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false); -@@ -266,6 +269,8 @@ - const titles = ref(); - const disabled = ref(); - const statusDisabled = ref(true) -+ // 上传附件 -+ const fileList = ref([]); - // 打开弹窗 - const openDialog = (title: string, id: number, type: boolean,statusDisabledFlag:string) => { - isShowDialog.value = true; -@@ -291,18 +296,53 @@ - accidentDepartmentId.value = res.data.data.accidentDepartmentId - occurrencePlace.value = res.data.data.occurrencePlace - occurrenceTime.value = res.data.data.occurrenceTime -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ //事故照片 -+ if(ruleForm.value.expressFileList){ -+ for(var a = 0;a<ruleForm.value.expressFileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(ruleForm.value.expressFileList[a].fileName) -+ .then((res) => { -+ ruleForm.value.expressFileList[a].url = res.data -+ console.log('ruleForm',ruleForm) -+ }) -+ } -+ }else { -+ ruleForm.value.expressFileList = [] -+ } -+ -+ // 事故分析会议纪要 -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - // 取消 - const onCancel = (formEl: FormInstance | undefined) => { - resetForm(formEl); - }; - //日期选择器 - const value1 = ref(''); -- // 上传附件 -- const fileList = ref<UploadUserFile[]>([]); -+ - // 可选择树 - const treeSelect = ref(); - //定义树形下拉框 -@@ -423,7 +463,9 @@ - delete ruleForm.value.accidentDepartmentId - delete ruleForm.value.occurrencePlace - delete ruleForm.value.occurrenceTime -- -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - if (title == '新建事故报告') { - if (!formEl) return; - await formEl.validate((valid, fields) => { -@@ -458,7 +500,6 @@ - await formEl.validate((valid, fields) => { - if (valid) { - //TODO 上传组件待定 -- ruleForm.value.fileList = [] - isShowDialog.value = false; - accidentManagementSystemApi() - .editAccidentReport(ruleForm.value) -@@ -512,12 +553,14 @@ - }; - } - }; -+ - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; - if (!formEl) return; - formEl.resetFields(); - // ruleForm.value.accidentExpressId = item[0].id - ruleForm.value = {} -+ fileList.value = [] - accidentName.value = '' - accidentDepartmentId.value = '' - occurrencePlace.value = '' -@@ -629,7 +672,9 @@ - accidentDepartmentId, - occurrencePlace, - occurrenceTime, -- accidentName -+ accidentName, -+ successUploader, -+ initFileListData - }; - }, - }); -Index: src/views/goalManagement/safetyAssessment/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.indexNum\" placeholder=\"请输入目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\" />\r\n\t\t\t\t<el-table-column label=\"安全目标指标\" align=\"center\" property=\"qName\" sortable />\r\n\t\t\t\t<el-table-column property=\"indexNum\" align=\"center\" label=\"考核指标编号\" sortable />\r\n\t\t\t\t<el-table-column property=\"year\" label=\"年度\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column property=\"value\" label=\"指标值\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" width=\"300\" sortable show-overflow-tooltip>\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<Dailog ref=\"openAdd\"></Dailog>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport Dailog from './component/Dailog.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, Dailog },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tqName: '', ////安全目标指标\r\n\t\t\t\tindexNum: '', ////目标指标编号\r\n\t\t\t\ttargetType: '1', ////指标类型 1:年指标 2:月指标\r\n\t\t\t\tdivideStatus: '', ////分解状态 1:已分解 2:未分解\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.qName = '';\r\n\t\t\truleForm.searchParams.indexNum = '';\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTargetMngList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.targetType = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tvar arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.targetType, id);\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\tlistApi,\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\thandleClick,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttotal,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/safetyAssessment/index.vue b/src/views/goalManagement/safetyAssessment/index.vue ---- a/src/views/goalManagement/safetyAssessment/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/safetyAssessment/index.vue (date 1660382056800) -@@ -39,7 +39,7 @@ - <template #default="scope"> - <el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button> - <el-button link type="primary" size="default" :icon="View" @click="openD('修改', scope.row.id)">修改</el-button> -- <el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button> -+ <!--<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button>--> - </template> - </el-table-column> - </el-table> -@@ -209,4 +209,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/targetSettings/component/dailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"Shows\" @close=\"handleClose(ruleFormRef)\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" ref=\"ruleFormRef\" :rules=\"rules\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"安全目标指标\" prop=\"qName\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写安全目标指标\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"目标指标编号\" prop=\"indexNum\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.indexNum\" placeholder=\"请填写目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"年度\" prop=\"year\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model.number=\"form.year\" maxlength=\"8\" placeholder=\"请填写年度\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"指标值\" prop=\"value\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.value\" placeholder=\"请填写指标值\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"11\">\r\n\t\t\t\t\t<el-form-item label=\"指标级别\" size=\"default\" prop=\"level\">\r\n\t\t\t\t\t\t<el-select v-model=\"form.level\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t\t\t<el-option label=\"公司级\" :value=\"1\">公司级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"部门分厂级\" :value=\"2\">部门分厂级</el-option>\r\n\t\t\t\t\t\t\t<el-option label=\"工段班组级\" :value=\"3\">工段班组级</el-option>\r\n\t\t\t\t\t\t</el-select>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<el-col :span=\"11\" :offset=\"2\">\r\n\t\t\t\t\t<el-form-item label=\"完成期限\" size=\"default\" prop=\"completeDate\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.completeDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择\" style=\"width: 100%\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-form-item label=\"备注信息\" prop=\"memo\">\r\n\t\t\t\t<el-input v-model=\"form.memo\" size=\"default\" type=\"textarea\" />\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" v-if=\"titles == '查看目标设定' ? false : true\" @click=\"submitForm(ruleFormRef)\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue';\r\nimport screenfull from 'screenfull';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';\r\nimport type { FormInstance, FormRules } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, Search, FullScreen } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tsetup(props, { emit }) {\r\n\t\tlet Shows = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tqName: '', //安全目标指标\r\n\t\t\tyear: '', //年度\r\n\t\t\tlevel: '', ////指标级别 1:公司级 2:部门分厂级 3:工段班组级\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\ttargetType: '', ////指标类型 1:年指标 2:月指标\r\n\t\t\tcompleteDate: '', ////完成期限\r\n\t\t\tdivideStatus: '2', ////分解状态 1:已分解 2:未分解\r\n\t\t\tvalue: '', ////指标值\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDialog = (title: string, value: any, id: number) => {\r\n\t\t\tShows.value = true;\r\n\t\t\ttitles.value = `${title}目标设定`;\r\n\t\t\tform.value.targetType = value;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.getTargetMngDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '安全目标指标不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tindexNum: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '目标指标编号不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyear: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '年度不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tvalue: [\r\n\t\t\t\t{\r\n\t\t\t\t\trequired: true,\r\n\t\t\t\t\tmessage: '指标值不能为空',\r\n\t\t\t\t\ttrigger: 'change',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tlevel:[],\r\n\t\t\tcompleteDate:[],\r\n\t\t\tmemo:[]\r\n\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tShows.value = false;\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.getTargetMngAddOrupdata(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tformEl.resetFields();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log('error submit!', fields);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tShows.value = false;\r\n\t\t};\r\n\t\tconst handleClose = (formEl: FormInstance | undefined) => {\r\n\t\t\tformEl.resetFields();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\topenDialog,\r\n\t\t\thandleClose,\r\n\t\t\ttitles,\r\n\t\t\tShows,\r\n\t\t\tform,\r\n\t\t\tfull,\r\n\t\t\tdisabled,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\trules,\r\n\t\t\truleFormRef,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/targetSettings/component/dailogAdd.vue b/src/views/goalManagement/targetSettings/component/dailogAdd.vue ---- a/src/views/goalManagement/targetSettings/component/dailogAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/targetSettings/component/dailogAdd.vue (date 1660382056803) -@@ -38,7 +38,14 @@ - </el-col> - <el-col :span="11" :offset="2"> - <el-form-item label="完成期限" size="default" prop="completeDate"> -- <el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" /> -+ <el-date-picker -+ v-model="form.completeDate" -+ format="YYYY-MM-DD HH:mm:ss" -+ value-format="YYYY-MM-DD HH:mm:ss" -+ type="datetime" -+ placeholder="请选择" -+ style="width: 100%" -+ /> - </el-form-item> - </el-col> - </el-row> -@@ -56,6 +63,7 @@ - </template> - <script lang="ts"> - import { ref, toRefs, reactive, onMounted, watch, defineComponent } from 'vue'; -+// import { timeDate } from '/@/assets/index.ts'; - import screenfull from 'screenfull'; - import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus'; - import type { FormInstance, FormRules } from 'element-plus'; -@@ -90,11 +98,25 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.completeDate = timeC(form.value.completeDate); - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - //全屏 - const full = ref(false); - const toggleFullscreen = () => { -@@ -133,10 +155,9 @@ - trigger: 'change', - }, - ], -- level:[], -- completeDate:[], -- memo:[] -- -+ level: [], -+ completeDate: [], -+ memo: [], - }); - // 提交 - const submitForm = async (formEl: FormInstance | undefined) => { -@@ -158,7 +179,7 @@ - formEl.resetFields(); - } - }); -- formEl.resetFields(); -+ formEl.resetFields(); - } else { - console.log('error submit!', fields); - } -@@ -174,9 +195,11 @@ - formEl.resetFields(); - }; - return { -+ timeC, - openDialog, - handleClose, - titles, -+ // timeDate, - Shows, - form, - full, -@@ -195,4 +218,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogSearch.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" title=\"选择岗位\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-row>\r\n\t\t\t<el-col :span=\"17\">\r\n\t\t\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon>\r\n\t\t\t\t\t<el-row>\r\n\t\t\t\t\t\t<el-col :span=\"12\">\r\n\t\t\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t\t\t<el-input v-model=\"ruleForm.pass\" placeholder=\"岗位名称\" />\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t\t<!-- <el-col :span=\"6\" :offset=\"1\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col> -->\r\n\t\t\t\t\t\t<el-col :span=\"11\" :offset=\"1\">\r\n\t\t\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"submitForm(ruleFormRef)\">查询</el-button>\r\n\t\t\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm(ruleFormRef)\">重置</el-button>\r\n\t\t\t\t\t\t\t</el-form-item>\r\n\t\t\t\t\t\t</el-col>\r\n\t\t\t\t\t</el-row>\r\n\t\t\t\t</el-form>\r\n\t\t\t\t<el-button size=\"default\" :icon=\"Delete\">清除选择</el-button>\r\n\t\t\t\t<el-table :data=\"tableData\" style=\"width: 100%; margin-top: 20px\" @cell-click=\"radio\">\r\n\t\t\t\t\t<el-table-column align=\"center\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-radio-group v-model=\"radio1\">\r\n\t\t\t\t\t\t\t\t<el-radio :label=\"scope.row.id\" size=\"large\">{{ null }}</el-radio>\r\n\t\t\t\t\t\t\t</el-radio-group>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"date\" label=\"岗位名称\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tstyle=\"padding: 20px 0; border-bottom: 1px solid #dedede\"\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[100, 200, 300, 400]\"\r\n\t\t\t\t\t:small=\"small\"\r\n\t\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t\t:background=\"background\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"400\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</el-col>\r\n\t\t\t<el-col :span=\"7\">\r\n\t\t\t<div v-if=\"dynamicTags[0]==''?false:true\">\r\n\t\t\t\t<el-tag\r\n\t\t\t\t\tv-for=\"tag in dynamicTags\"\r\n\t\t\t\t\t:key=\"tag\"\r\n\t\t\t\t\tclass=\"mx-1\"\r\n\t\t\t\t\tstyle=\"margin: 5px\"\r\n\t\t\t\t\tclosable\r\n\t\t\t\t\t:disable-transitions=\"false\"\r\n\t\t\t\t\t@close=\"handleClose(tag)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ tag.id }}\r\n\t\t\t\t</el-tag>\r\n\t\t\t\t</div>\r\n\t\t\t</el-col>\r\n\t\t</el-row>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"dialogVisible = false\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, reactive, ref } from 'vue';\r\nimport { Delete, FullScreen } from '@element-plus/icons-vue';\r\nexport default defineComponent({\r\n\tsetup(props,{emit}) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst openDailog = () => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t};\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpass: '',\r\n\t\t\tcheckPass: '',\r\n\t\t});\r\n\t\t// 表格\r\n\t\tconst tableData = [\r\n\t\t\t{ id:1,\r\n\t\t\t\tdate: '2016-05-03',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid:2,\r\n\t\t\t\tdate: '2016-05-02',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\t\r\n\t\t\t\tid:3,\t\r\n\t\t\t\tdate: '2016-05-04',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t\t{\tid:4,\r\n\t\t\t\tdate: '2016-05-01',\r\n\t\t\t\tname: 'Tom',\r\n\t\t\t\taddress: 'No. 189, Grove St, Los Angeles',\r\n\t\t\t},\r\n\t\t];\r\n\t\tconst pageSize4 = ref(100);\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\tconsole.log(`${val} items per page`);\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\tconsole.log(`current page: ${val}`);\r\n\t\t};\r\n\t\t// 右方点击添加后显示标签\r\n\t\tconst dynamicTags = ref(['']);\r\n\t\tconst handleClose = (tag: string) => {\r\n\t\t\tdynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);\r\n\t\t\tradio1.value = '';\r\n\t\t};\r\n\t\tconst radio1 = ref('');\r\n\t\tconst radio = (event: any) => {\r\n\t\t\tdynamicTags.value[0] = event;\r\n\t\t};\r\n\t\tconst clear=()=>{\r\n\t\t\tdynamicTags.value=['']\r\n\t\t\tradio1.value=\"\"\r\n\t\t}\r\n\t\t\tconst submitForm=()=>{\r\n\t\t\tlet obj=JSON.parse(JSON.stringify(dynamicTags.value))\r\n\t\t\temit(\"backNum\",obj[0])\r\n\t\t\tdialogVisible.value = false\r\n\t\t}\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tradio1,\r\n\t\t\tradio,\r\n\t\t\tclear,\r\n\t\t\tdialogVisible,\r\n\t\t\topenDailog,\r\n\t\t\truleForm,\r\n\t\t\ttableData,\r\n\t\t\tpageSize4,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\tdynamicTags,\r\n\t\t\thandleClose,\r\n\t\t\tsubmitForm,\r\n\t\t\tDelete,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogSearch.vue b/src/views/goalManagement/TargetBook/component/DailogSearch.vue ---- a/src/views/goalManagement/TargetBook/component/DailogSearch.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/TargetBook/component/DailogSearch.vue (date 1660382056829) -@@ -24,11 +24,11 @@ - </el-row> - </el-form> - <el-button size="default" :icon="Delete">清除选择</el-button> -- <el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio"> -- <el-table-column align="center"> -+ <el-table :data="tableData" style="width: 100%; margin-top: 20px" > -+ <el-table-column align="center" width="70px"> - <template #default="scope"> - <el-radio-group v-model="radio1"> -- <el-radio :label="scope.row.id" size="large">{{ null }}</el-radio> -+ <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio> - </el-radio-group> - </template> - </el-table-column> -@@ -59,7 +59,7 @@ - :disable-transitions="false" - @close="handleClose(tag)" - > -- {{ tag.id }} -+ {{ tag.date }} - </el-tag> - </div> - </el-col> -@@ -89,24 +89,24 @@ - // 表格 - const tableData = [ - { id:1, -- date: '2016-05-03', -+ date: '岗位1', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - id:2, -- date: '2016-05-02', -+ date: '岗位2', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -- { -- id:3, -- date: '2016-05-04', -+ { -+ id:3, -+ date: '岗位3', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { id:4, -- date: '2016-05-01', -+ date: '岗位4', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -Index: src/components/uploaderImg/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-upload\r\n\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\tlist-type=\"picture-card\"\r\n\t\t\t:on-preview=\"handlePictureCardPreview\"\r\n\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t:on-success=\"successFile\"\r\n\t\t\t:on-error=\"errorFile\"\r\n\t>\r\n\t\t<el-icon><Plus /></el-icon>\r\n\t</el-upload>\r\n\r\n\t<el-dialog v-model=\"dialogVisible\">\r\n\t\t<img w-full :src=\"dialogImageUrl\" alt=\"Preview Image\" />\r\n\t</el-dialog>\r\n</template>\r\n<script lang=\"ts\">\r\n\timport { ref,defineComponent } from 'vue'\r\n\timport { Plus } from '@element-plus/icons-vue'\r\n\timport type { UploadProps, UploadUserFile } from 'element-plus'\r\n\r\n\texport default defineComponent({\r\n\t\tprops: {\r\n\t\t\t// svg 图标组件名字\r\n\t\t\tfileList: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t},\r\n\t\t},\r\n\t\tcomponents: {\r\n\t\t\tPlus\r\n\t\t},\r\n\t\tsetup() {\r\n\r\n\t\t\tconst dialogImageUrl = ref('')\r\n\t\t\tconst dialogVisible = ref(false)\r\n\r\n\t\t\tconst handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\t\tconsole.log(uploadFile, uploadFiles)\r\n\t\t\t}\r\n\r\n\t\t\tconst handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\t\tdialogImageUrl.value = uploadFile.url!\r\n\t\t\t\tdialogVisible.value = true\r\n\t\t\t}\r\n\r\n\t\t\tconst successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(response, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\t\t\tconst errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => {\r\n\t\t\t\tconsole.log(error, uploadFile,uploadFiles)\r\n\t\t\t}\r\n\r\n\r\n\t\t\treturn {\r\n\t\t\t\tdialogImageUrl,\r\n\t\t\t\tdialogVisible,\r\n\t\t\t\thandleRemove,\r\n\t\t\t\thandlePictureCardPreview,\r\n\t\t\t\tsuccessFile,\r\n\t\t\t\terrorFile\r\n\t\t\t};\r\n\t\t},\r\n\t});\r\n</script> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/uploaderImg/index.vue b/src/components/uploaderImg/index.vue ---- a/src/components/uploaderImg/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/components/uploaderImg/index.vue (date 1660382056833) -@@ -1,12 +1,13 @@ - <template> - <el-upload -- v-model:file-list="fileList" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- list-type="picture-card" -- :on-preview="handlePictureCardPreview" -- :on-remove="handleRemove" -- :on-success="successFile" -- :on-error="errorFile" -+ v-model:file-list="fileList" -+ :disabled="disabled" -+ :http-request="uploadSectionFile" -+ list-type="picture-card" -+ :on-preview="handlePictureCardPreview" -+ :on-remove="handleRemove" -+ :on-success="successFile" -+ :on-error="errorFile" - > - <el-icon><Plus /></el-icon> - </el-upload> -@@ -16,50 +17,141 @@ - </el-dialog> - </template> - <script lang="ts"> -- import { ref,defineComponent } from 'vue' -- import { Plus } from '@element-plus/icons-vue' -- import type { UploadProps, UploadUserFile } from 'element-plus' -+import axios from 'axios'; -+import { ref, defineComponent,onMounted,watch } from 'vue'; -+import { Plus } from '@element-plus/icons-vue'; -+import type { UploadProps, UploadUserFile } from 'element-plus'; -+import { ElMessage } from 'element-plus'; -+import { goalManagementApi } from '/@/api/goalManagement'; - -- export default defineComponent({ -- props: { -- // svg 图标组件名字 -- fileList: { -- type: Array, -- }, -+export default defineComponent({ -+ props: { -+ // svg 图标组件名字 -+ fileList: { -+ type: Array, -+ }, -+ disabled: { -+ type: Boolean, -+ default: () => false, - }, -- components: { -- Plus -- }, -- setup() { -- -- const dialogImageUrl = ref('') -- const dialogVisible = ref(false) -+ systemName: { -+ type: String, -+ default: () => '', -+ }, -+ }, -+ components: { -+ Plus, -+ }, -+ setup(props, { emit }) { -+ const dialogImageUrl = ref(''); -+ const dialogVisible = ref(false); - -- const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -- console.log(uploadFile, uploadFiles) -- } -+ const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => { -+ console.log(uploadFile, uploadFiles); -+ }; - -- const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -- dialogImageUrl.value = uploadFile.url! -- dialogVisible.value = true -- } -+ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => { -+ dialogImageUrl.value = uploadFile.url!; -+ dialogVisible.value = true; -+ }; - -- const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(response, uploadFile,uploadFiles) -- } -- const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -- console.log(error, uploadFile,uploadFiles) -+ const successFile = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(response, uploadFile, uploadFiles); -+ }; -+ const errorFile = (error: Error, uploadFile: UploadFile, uploadFiles: UploadFiles) => { -+ console.log(error, uploadFile, uploadFiles); -+ }; -+ watch(props.fileList, (val) => { -+ viewList.value = val -+ // searchFile() -+ }); -+ onMounted(() => { -+ if(props.fileList){ -+ viewList.value = props.fileList -+ // searchFile() -+ }else { -+ viewList.value = [] - } -+ -+ }); -+ const newFileList = ref([]) -+ const viewList = ref([]) -+ const searchFile = async () => { -+ for(var a = 0;a<props.fileList.length;a++){ -+ await goalManagementApi() -+ .searchFile(props.fileList[a].fileName) -+ .then((res) => { -+ props.fileList[a].url = res.data -+ }) -+ } -+ }; -+ const uploadSectionFile = (param) => { -+ let form = new FormData(); -+ form.append('file', param.file); -+ //组装文件名(传入后缀名) -+ var fileName1 = getFileName(param.file.type.split('/')[1], 1); -+ var fileName2 = getFileName(param.file.type.split('/')[1], 2); -+ goalManagementApi() -+ .beforeUploadFile(fileName1, fileName2) -+ .then((res) => { -+ // 转换形式 -+ const reader = new FileReader(); -+ reader.readAsArrayBuffer(param.file); -+ // 上传图片 -+ reader.onload = () => { // 上传图片接口 url:上传图片地址 修改请求头 -+ axios.put(res.data.uploadUrl, reader.result, -+ { -+ header: -+ { "Content-Type": "multipart/form-data" } -+ } -+ ) -+ .then(res1 => -+ { -+ props.fileList[props.fileList.length-1].fileName=res.data.fileName -+ props.fileList[props.fileList.length-1].fileUrl='' -+ emit('successUploader',props.fileList); -+ ElMessage({ -+ showClose: true, -+ message: '上传成功', -+ type: 'success', -+ }); -+ }) -+ }; -+ }); -+ }; -+ const getFileName = (suffix, type) => { -+ var projectName = props.systemName; -+ var date = getNowDate(); -+ var fileName1 = projectName + '/' + date + '_'; -+ var fileName2 = '.' + suffix; -+ if (type == 1) { -+ return fileName1; -+ } else if (type == 2) { -+ return fileName2; -+ } -+ return ''; -+ }; - -+ //获取当前年月日 -+ const getNowDate = () => { -+ var a = new Date().getTime(); //获取到当前时间戳 -+ var now = new Date(a); //创建一个指定的日期对象 -+ var year = now.getFullYear(); //年份 -+ var month = now.getMonth() + 1; //月份(0-11) -+ var date = now.getDate(); //天数(1到31) -+ return year + '-' + month + '-' + date; -+ }; - -- return { -- dialogImageUrl, -- dialogVisible, -- handleRemove, -- handlePictureCardPreview, -- successFile, -- errorFile -- }; -- }, -- }); --</script> -\ No newline at end of file -+ return { -+ dialogImageUrl, -+ dialogVisible, -+ handleRemove, -+ handlePictureCardPreview, -+ successFile, -+ errorFile, -+ uploadSectionFile, -+ viewList -+ }; -+ }, -+}); -+</script> -Index: src/views/goalManagement/TargetBook/index.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<div>\r\n\t\t<el-form ref=\"ruleFormRef\" :model=\"ruleForm\" status-icon label-width=\"20px\" class=\"topTitle\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"ruleForm.searchParams.jobId\" placeholder=\"请选择岗位\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"openSearch\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t\t<!-- <el-col :span=\"4\">\r\n\t\t\t\t<el-form-item>\r\n\t\t\t\t\t<el-input v-model=\"ruleForm.checkPass\" placeholder=\"目标指标编号\" />\r\n\t\t\t\t</el-form-item>\r\n\t\t\t</el-col> -->\r\n\t\t\t\t<el-col :span=\"4\">\r\n\t\t\t\t\t<el-form-item>\r\n\t\t\t\t\t\t<el-button size=\"default\" type=\"primary\" @click=\"listApi\">查询</el-button>\r\n\t\t\t\t\t\t<el-button size=\"default\" @click=\"resetForm\">重置</el-button>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<div class=\"minCenter\">\r\n\t\t\t<div class=\"btns\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<el-button size=\"default\" type=\"primary\" :icon=\"Plus\" @click=\"openD('新建')\">新建</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"warning\" type=\"warning\" plain :icon=\"EditPen\">修改</el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :disabled=\"danger\" type=\"danger\" :icon=\"Delete\" plain @click=\"onDeleteAll\">删除</el-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<!-- <el-button size=\"default\" :icon=\"Download\"></el-button>\r\n\t\t\t\t\t<el-button size=\"default\" :icon=\"Refresh\"></el-button> -->\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<el-table ref=\"multipleTableRef\" :data=\"tableData\" @selection-change=\"handleSelectionChange\" style=\"width: 100%\">\r\n\t\t\t\t<el-table-column type=\"selection\" align=\"center\" width=\"55\" />\r\n\t\t\t\t<el-table-column type=\"index\" label=\"序号\" align=\"center\" width=\"70\" />\r\n\t\t\t\t<el-table-column property=\"jobId\" align=\"center\" label=\"岗位\" sortable />\r\n\t\t\t\t<el-table-column property=\"signDate\" align=\"center\" label=\"责任书签订日期\" :formatter=\"timeDate\" sortable />\r\n\t\t\t\t<el-table-column property=\"extraFile\" align=\"center\" label=\"附件\" sortable />\r\n\t\t\t\t<el-table-column property=\"memo\" label=\"备注信息\" align=\"center\" sortable show-overflow-tooltip />\r\n\t\t\t\t<el-table-column label=\"操作\" align=\"center\" style=\"width: 300px\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"View\" @click=\"openD('查看', scope.row.id)\">查看</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"EditPen\" @click=\"openD('修改', scope.row.id)\">修改</el-button>\r\n\t\t\t\t\t\t<el-button link type=\"primary\" size=\"default\" :icon=\"Delete\" @click=\"onDelete(scope.row.id)\">删除</el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-table-column>\r\n\t\t\t</el-table>\r\n\t\t\t<div class=\"pages\">\r\n\t\t\t\t<el-pagination\r\n\t\t\t\t\tv-model:currentPage=\"currentPage4\"\r\n\t\t\t\t\tv-model:page-size=\"pageSize4\"\r\n\t\t\t\t\t:page-sizes=\"[10, 20, 30, 40]\"\r\n\t\t\t\t\tlayout=\"total, sizes, prev, pager, next, jumper\"\r\n\t\t\t\t\t:total=\"total\"\r\n\t\t\t\t\t@size-change=\"handleSizeChange\"\r\n\t\t\t\t\t@current-change=\"handleCurrentChange\"\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t\t<DailogAdd ref=\"openAdd\" @navAddorUpdata=\"onAddorUpdata\"></DailogAdd>\r\n\t\t\t<DailogSearch ref=\"openUser\"></DailogSearch>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\">\r\nimport DailogAdd from './component/DailogAdd.vue';\r\nimport {timeDate} from '/@/assets/index.ts'\r\nimport DailogSearch from './component/DailogSearch.vue';\r\nimport { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';\r\nimport { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';\r\nimport { Plus, Delete, Upload, Download, Refresh, View, EditPen, Search } from '@element-plus/icons-vue';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';\r\nexport default defineComponent({\r\n\tcomponents: { ElButton, ElInput, DailogAdd, DailogSearch },\r\n\tsetup() {\r\n\t\t// 搜索条件\r\n\t\tconst ruleForm = reactive({\r\n\t\t\tpageSize: 10,\r\n\t\t\tpageIndex: 1,\r\n\t\t\tsearchParams: {\r\n\t\t\t\tjobId: '', ////岗位号/外键\r\n\t\t\t},\r\n\t\t});\r\n\t\t// 重置\r\n\t\tconst resetForm = () => {\r\n\t\t\truleForm.searchParams.jobId = '';\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst listApi = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoList(ruleForm)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\ttableData.value = res.data.data;\r\n\t\t\t\t\t\tcurrentPage4.value = res.data.pageIndex;\r\n\t\t\t\t\t\tpageSize4.value = res.data.pageSize;\r\n\t\t\t\t\t\ttotal.value = res.data.total;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t//\r\n\t\tconst handleClick = (val: any) => {\r\n\t\t\tlet targetType = JSON.parse(JSON.stringify(val));\r\n\t\t\truleForm.searchParams.jobId = targetType.paneName;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tonMounted(() => {\r\n\t\t\tlistApi();\r\n\t\t});\r\n\t\tconst onAddorUpdata = () => {\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 表格\r\n\t\tconst tableData = ref();\r\n\t\tconst currentPage4 = ref();\r\n\t\tconst pageSize4 = ref();\r\n\t\tconst total = ref();\r\n\t\tconst handleSizeChange = (val: number) => {\r\n\t\t\t// console.log(`${val} items per page`);\r\n\t\t\truleForm.pageSize = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\tconst handleCurrentChange = (val: number) => {\r\n\t\t\t// console.log(`current page: ${val}`);\r\n\t\t\truleForm.pageIndex = val;\r\n\t\t\tlistApi();\r\n\t\t};\r\n\t\t// 弹窗\r\n\t\tconst openAdd = ref();\r\n\t\tconst openD = (title: String, id: number) => {\r\n\t\t\topenAdd.value.openDailog(title, ruleForm.searchParams.jobId, id);\r\n\t\t};\r\n\t\t// 删除\r\n\t\tconst onDelete = (id: number) => {\r\n\t\t\tlet arr=[]\r\n\t\t\tarr.push(id)\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(arr)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\ttype: 'info',\r\n\t\t\t\t\t\tmessage: 'Delete canceled',\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t};\r\n\t\t// 批量删除\r\n\t\tconst warning = ref(true);\r\n\t\tconst danger = ref(true);\r\n\t\tconst deletAll = ref();\r\n\t\tconst handleSelectionChange = (val: any) => {\r\n\t\t\tlet valId = JSON.parse(JSON.stringify(val));\r\n\t\t\tlet arr = [];\r\n\t\t\tfor (let i = 0; i < valId.length; i++) {\r\n\t\t\t\tarr.push(valId[i].id);\r\n\t\t\t}\r\n\t\t\tdeletAll.value = arr\r\n\t\t\tif (val.length == 1) {\r\n\t\t\t\twarning.value = false;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t} else if (val.length == 0) {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = true;\r\n\t\t\t} else {\r\n\t\t\t\twarning.value = true;\r\n\t\t\t\tdanger.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst onDeleteAll = () => {\r\n\t\t\tElMessageBox.confirm('确定删除所选项吗?', 'Warning', {\r\n\t\t\t\tconfirmButtonText: '确定',\r\n\t\t\t\tcancelButtonText: '取消',\r\n\t\t\t\ttype: 'warning',\r\n\t\t\t})\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t\t.gettargetDutyfileInfoDelete(deletAll.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\tlistApi();\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t// ElMessage({\r\n\t\t\t\t\t// \ttype: 'info',\r\n\t\t\t\t\t// \tmessage: 'Delete canceled',\r\n\t\t\t\t\t// });\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst openUser = ref();\r\n\t\tconst openSearch = () => {\r\n\t\t\topenUser.value.openDailog();\r\n\t\t};\r\n\t\treturn {\r\n\t\t\truleForm,\r\n\t\t\tresetForm,\r\n\t\t\tlistApi,\r\n\t\t\thandleClick,\r\n\t\t\tonAddorUpdata,\r\n\t\t\ttableData,\r\n\t\t\tcurrentPage4,\r\n\t\t\tpageSize4,\r\n\t\t\ttotal,\r\n\t\t\thandleSizeChange,\r\n\t\t\thandleCurrentChange,\r\n\t\t\topenAdd,\r\n\t\t\topenD,\r\n\t\t\tonDelete,\r\n\t\t\twarning,\r\n\t\t\tdanger,\r\n\t\t\tdeletAll,\r\n\t\t\thandleSelectionChange,\r\n\t\t\tonDeleteAll,\r\n\t\t\topenUser,\r\n\t\t\topenSearch,\r\n\t\t\ttimeDate,\r\n\t\t\tPlus,\r\n\t\t\tDelete,\r\n\t\t\tUpload,\r\n\t\t\tDownload,\r\n\t\t\tRefresh,\r\n\t\t\tView,\r\n\t\t\tEditPen,\r\n\t\t\tSearch,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.minCenter {\r\n\twidth: 100%;\r\n\tbackground-color: #fff;\r\n\tmargin-top: 10px;\r\n\tpadding: 0 20px;\r\n}\r\n.topTitle {\r\n\tbackground-color: #fff;\r\n\tpadding: 20px 0px 20px 0px;\r\n\tmargin-bottom: 10px;\r\n}\r\n.btns {\r\n\tpadding: 10px 0px 10px 0px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n.pages {\r\n\tpadding: 20px 0;\r\n\tdisplay: flex;\r\n\tjustify-content: right;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/index.vue b/src/views/goalManagement/TargetBook/index.vue ---- a/src/views/goalManagement/TargetBook/index.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/TargetBook/index.vue (date 1660382056837) -@@ -4,7 +4,7 @@ - <el-row> - <el-col :span="4"> - <el-form-item size="default"> -- <el-input v-model="ruleForm.searchParams.jobId" placeholder="请选择岗位"> -+ <el-input v-model="jobName" placeholder="请选择岗位"> - <template #append> <el-button :icon="Search" @click="openSearch" /> </template - ></el-input> - </el-form-item> -@@ -61,7 +61,7 @@ - /> - </div> - <DailogAdd ref="openAdd" @navAddorUpdata="onAddorUpdata"></DailogAdd> -- <DailogSearch ref="openUser"></DailogSearch> -+ <DailogSearch ref="openUser" @backNum="IdNumber"></DailogSearch> - </div> - </div> - </template> -@@ -88,6 +88,7 @@ - // 重置 - const resetForm = () => { - ruleForm.searchParams.jobId = ''; -+ jobName.value="" - listApi(); - }; - const listApi = () => { -@@ -116,6 +117,11 @@ - const onAddorUpdata = () => { - listApi(); - }; -+ const jobName=ref() -+ const IdNumber=(val:any)=>{ -+ ruleForm.jobId=val.id -+ jobName.value=val.date -+ } - // 表格 - const tableData = ref(); - const currentPage4 = ref(); -@@ -222,6 +228,7 @@ - openUser.value.openDailog(); - }; - return { -+ IdNumber, - ruleForm, - resetForm, - listApi, -@@ -278,4 +285,4 @@ - display: flex; - justify-content: right; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/goalManagement/TargetBook/component/DailogAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :before-close=\"resetForm\" :fullscreen=\"full\" :title=\"titles\" width=\"50%\" draggable>\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" :disabled=\"disabled\" label-width=\"120px\">\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"岗位\" size=\"default\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.jobId\" placeholder=\"请选择\">\r\n\t\t\t\t\t\t\t<template #append> <el-button :icon=\"Search\" @click=\"daiInpt\" /> </template\r\n\t\t\t\t\t\t></el-input>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书签订日期\" size=\"default\">\r\n\t\t\t\t\t\t<el-date-picker v-model=\"form.signDate\" style=\"width:100%\" format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"请选择日期时间\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"备注信息\">\r\n\t\t\t\t\t\t<el-input v-model=\"form.memo\" type=\"textarea\" />\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t\t<el-row>\r\n\t\t\t\t<el-col :span=\"24\">\r\n\t\t\t\t\t<el-form-item label=\"责任书附件\">\r\n\t\t\t\t\t\t<el-upload\r\n\t\t\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\t\t\tmultiple\r\n\t\t\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t\t\t<div class=\"el-upload__tip\">添加相关附件</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</el-upload>\r\n\t\t\t\t\t</el-form-item>\r\n\t\t\t\t</el-col>\r\n\t\t\t</el-row>\r\n\t\t</el-form>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm\" size=\"default\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm\" size=\"default\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<DailogSearch ref=\"Shows\" @backNum=\"IdNumber\"></DailogSearch>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport DailogSearch from './DailogSearch.vue';\r\nimport { ElMessage, ElMessageBox } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nexport default defineComponent({\r\n\tcomponents: { DailogSearch },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref<boolean>(false);\r\n\t\tconst form = ref({\r\n\t\t\tindexNum: '', //目标指标编号\r\n\t\t\tmemo: '', ////备注信息\r\n\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\textraFile: '666', //责任书附件\r\n\t\t\tjobId: '', //岗位\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\t// 打开弹窗\r\n\t\tconst openDailog = (title: string, value: any, id: number) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitles.value =`${title}目标责任书`;\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tgoalManagementApi()\r\n\t\t\t\t\t.gettargetDutyfileInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\t// 提交\r\n\t\tconst submitForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.gettargetDutyfileInfoAddorUpdata(form.value)\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = () => {\r\n\t\t\tdialogVisible.value = false;\r\n\t\t\tform.value = {\r\n\t\t\t\tindexNum: '', //目标指标编号\r\n\t\t\t\tmemo: '', ////备注信息\r\n\t\t\t\tsignDate: '', //责任书签订日期\r\n\t\t\t\textraFile: '666', //责任书附件\r\n\t\t\t\tjobId: '', //岗位\r\n\t\t\t};\r\n\t\t};\r\n\t\t// 安全目标指标弹窗\r\n\t\tconst Shows = ref();\r\n\t\tconst daiInpt = () => {\r\n\t\t\tShows.value.openDailog();\r\n\t\t};\r\n\t\tconst IdNumber=(val:any)=>{\r\n form.value.jobId=val.id\r\n\t\t}\r\n\t\t// 点击上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tIdNumber,\r\n\t\t\tdialogVisible,\r\n\t\t\tform,\r\n\t\t\tdisabled,\r\n\t\t\ttitles,\r\n\t\t\topenDailog,\r\n\t\t\tdaiInpt,\r\n\t\t\tsubmitForm,\r\n\t\t\tresetForm,\r\n\t\t\tShows,\r\n\t\t\tSearch,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-row {\r\n\tpadding: 0 0 20px 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/goalManagement/TargetBook/component/DailogAdd.vue b/src/views/goalManagement/TargetBook/component/DailogAdd.vue ---- a/src/views/goalManagement/TargetBook/component/DailogAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/goalManagement/TargetBook/component/DailogAdd.vue (date 1660382056855) -@@ -1,11 +1,11 @@ - <template> -- <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable> -+ <el-dialog v-model="dialogVisible" :before-close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm"> - <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> - <el-form :model="form" :disabled="disabled" label-width="120px"> - <el-row> - <el-col :span="24"> - <el-form-item label="岗位" size="default"> -- <el-input v-model="form.jobId" placeholder="请选择"> -+ <el-input v-model="form.jobName" placeholder="请选择"> - <template #append> <el-button :icon="Search" @click="daiInpt" /> </template - ></el-input> - </el-form-item> -@@ -14,7 +14,7 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书签订日期" size="default"> -- <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> -+ <el-date-picker v-model="form.signDate" style="width:100%" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择日期时间" /> - </el-form-item> - </el-col> - </el-row> -@@ -28,22 +28,8 @@ - <el-row> - <el-col :span="24"> - <el-form-item label="责任书附件"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip">添加相关附件</div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'GOAL_MANAGE'" :disabled="disabled" -+ @successUploader="successUploader" @deleteFile="deleteFile"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -64,8 +50,9 @@ - import { ElMessage, ElMessageBox } from 'element-plus'; - import type { UploadProps, UploadUserFile } from 'element-plus'; - import { goalManagementApi } from '/@/api/goalManagement'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { DailogSearch }, -+ components: { DailogSearch,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref<boolean>(false); - const form = ref({ -@@ -88,14 +75,70 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ form.value.signDate=timeC(form.value.signDate) -+ -+ -+ if(res.data.data.extraFile!=null&&res.data.data.extraFile!=''){ -+ var extraFileList = res.data.data.extraFile.split(',') -+ for(var a = 0;a<extraFileList.length;a++){ -+ fileList.value.push( -+ { -+ name:extraFileList[a] -+ } -+ ) -+ } -+ }else { -+ fileList.value = [] -+ } - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ console.log('successUploader',list) -+ fileList.value = list -+ var formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList+=fileList.value[a].name -+ }else { -+ formFileList+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const deleteFile = (list) =>{ -+ console.log('deleteFile',list) -+ fileList.value = list -+ const formFileList = '' -+ for(var a = 0;a<fileList.value.length;a++){ -+ if(a==fileList.value.length-1){ -+ formFileList.value+=fileList.value[a].name -+ }else { -+ formFileList.value+=fileList.value[a].name+',' -+ } -+ } -+ form.value.extraFile = formFileList -+ } -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; - // 提交 - const submitForm = () => { - dialogVisible.value = false; -+ delete form.value.jobName - goalManagementApi() - .gettargetDutyfileInfoAddorUpdata(form.value) - .then((res) => { -@@ -127,6 +170,7 @@ - extraFile: '666', //责任书附件 - jobId: '', //岗位 - }; -+ fileList.value = [] - }; - // 安全目标指标弹窗 - const Shows = ref(); -@@ -135,17 +179,10 @@ - }; - const IdNumber=(val:any)=>{ - form.value.jobId=val.id -+ form.value.jobName=val.date - } - // 点击上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -+ const fileList = ref([ - ]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { -@@ -176,6 +213,7 @@ - } - }; - return { -+ timeC, - IdNumber, - dialogVisible, - form, -@@ -195,6 +233,8 @@ - full, - toggleFullscreen, - FullScreen, -+ successUploader, -+ deleteFile - }; - }, - }); -@@ -203,4 +243,4 @@ - .el-row { - padding: 0 0 20px 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n <div class=\"system-edit-user-container\">\r\n <el-dialog\r\n :title=\"titles\"\r\n v-model=\"isShowDialog\"\r\n width=\"769px\"\r\n draggable\r\n :fullscreen=\"full\"\r\n @close=\"resetForm(ruleFormRef)\"\r\n >\r\n <el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n <el-form\r\n ref=\"ruleFormRef\"\r\n :model=\"ruleForm\"\r\n size=\"default\"\r\n label-width=\"120px\"\r\n :disabled=\"disabled\"\r\n >\r\n <el-row :gutter=\"35\">\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练名称\" prop=\"drillName\">\r\n <el-input v-model=\"ruleForm.drillName\" placeholder=\"请填写演练名称\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练地点\" prop=\"drillAddress\">\r\n <el-input v-model=\"ruleForm.drillAddress\" placeholder=\"请填写演练地点\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"主办部门\" placeholder=\"请选择\" prop=\"departmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.departmentId\"\r\n :data=\"data\"\r\n check-strictly\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练方式\" prop=\"drillWay\">\r\n <el-select v-model=\"ruleForm.drillWay\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"综合\" value=\"1\"></el-option>\r\n <el-option label=\"桌面\" value=\"2\"></el-option>\r\n <el-option label=\"专项\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"应急预案\" prop=\"planName\" >\r\n <el-input\r\n v-model=\"ruleForm.planName\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"daiInpt\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练级别\" prop=\"drillLevel\">\r\n <el-select v-model=\"ruleForm.drillLevel\" class=\"w100\" placeholder=\"请选择\">\r\n <el-option label=\"公司级\" value=\"1\"></el-option>\r\n <el-option label=\"分厂级\" value=\"2\"></el-option>\r\n <el-option label=\"车间级\" value=\"3\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制日期\" prop=\"makingPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.makingPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划演练日期\" prop=\"drillPlanDate\">\r\n <el-date-picker v-model=\"ruleForm.drillPlanDate\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n </el-form-item>\r\n </el-col>\r\n <!--<el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">-->\r\n <!--<el-form-item label=\"修改时间\" prop=\"gmtModitify\">-->\r\n <!--<el-date-picker v-model=\"ruleForm.gmtModitify\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />-->\r\n <!--</el-form-item>-->\r\n <!--</el-col>-->\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"计划定制人\" prop=\"makingUserName\">\r\n <el-input v-model=\"ruleForm.makingUserName\" placeholder=\"请填写计划定制人\" disabled></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"制定部门\" prop=\"makingDepartmentId\">\r\n <el-tree-select\r\n v-model=\"ruleForm.makingDepartmentId\"\r\n check-strictly\r\n :data=\"data\"\r\n class=\"w100\"\r\n :props=\"propse\"\r\n clearable\r\n placeholder=\"请选择\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练人员\" prop=\"userListString\" >\r\n <el-input\r\n v-model=\"ruleForm.userListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(0)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"演练目的\" prop=\"purpose\">\r\n <el-input\r\n v-model=\"ruleForm.purpose\"\r\n placeholder=\"请填写演练目的\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练负责人\" prop=\"chargeUserListString\" >\r\n <el-input\r\n v-model=\"ruleForm.chargeUserListString\"\r\n placeholder=\"请选择\"\r\n class=\"input-with-select\"\r\n >\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openUser(1)\"/>\r\n </template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"保险措施\" prop=\"insuranceMeasures\">\r\n <el-input v-model=\"ruleForm.insuranceMeasures\" placeholder=\"请填写保险措施\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"12\" :md=\"12\" :lg=\"12\" :xl=\"12\" class=\"mb20\">\r\n <el-form-item label=\"演练经费\" prop=\"drillExpense\">\r\n <el-input v-model=\"ruleForm.drillExpense\" placeholder=\"请填写演练经费\"></el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\">\r\n <el-form-item label=\"备注信息\" prop=\"remark\">\r\n <el-input\r\n v-model=\"ruleForm.remark\"\r\n placeholder=\"请填写备注信息\"\r\n class=\"input-with-select textarea\"\r\n type=\"textarea\"\r\n >\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :xs=\"24\" :sm=\"24\" :md=\"24\" :lg=\"24\" :xl=\"24\" class=\"mb20\" style=\"margin-bottom: 0!important;\">\r\n <el-form-item label=\"预案附件\">\r\n <!--<el-upload-->\r\n <!--v-model:file-list=\"fileList\"-->\r\n <!--class=\"upload-demo\"-->\r\n <!--action=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"-->\r\n <!--:on-change=\"handleChange\"-->\r\n <!-->-->\r\n <!--<el-button type=\"primary\"-->\r\n <!-->点击上传</el-button>-->\r\n <!--<template #tip>-->\r\n <!--<div class=\"el-upload__tip\">-->\r\n <!--添加相关附件-->\r\n <!--</div>-->\r\n <!--</template>-->\r\n <!--</el-upload>-->\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <template #footer>\r\n\t\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\" size=\"default\">关闭</el-button>\r\n <el-button size=\"default\" v-if=\"disabled == true ? false : true\" type=\"primary\" @click=\"submitForm(titles, ruleFormRef)\">确定</el-button>\r\n\t\t\t\t</span>\r\n </template>\r\n </el-dialog>\r\n <RegionsDialog ref=\"Shows\" @SearchUser=\"onUser\" />\r\n <DailogSearchUser ref=\"userRef\" @SearchUser=\"SearchUser\" />\r\n <DailogSearchUser ref=\"userFZRef\" @SearchUser=\"SearchFZUser\" />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport {\r\n // reactive,\r\n ref,\r\n defineComponent,\r\n onMounted,\r\n} from 'vue';\r\n\r\nimport type {\r\n UploadUserFile,\r\n FormInstance,\r\n} from 'element-plus'\r\nimport { ElMessage } from 'element-plus';\r\nimport {\r\n Search,\r\n FullScreen\r\n} from '@element-plus/icons-vue'\r\nimport DailogSearchUser from \"/@/components/DailogSearchUser/index.vue\"\r\nimport RegionsDialog from \"/@/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue\"\r\nimport {releaseDrillPlanApi} from \"/@/api/contingencyManagement/emergencyDrillPlan\";\r\nimport {goalManagementApi} from \"/@/api/goalManagement\";\r\nimport { Session } from '/@/utils/storage';\r\n\r\nexport default defineComponent({\r\n name: 'openAdd',\r\n components: {\r\n RegionsDialog,\r\n DailogSearchUser\r\n },\r\n setup(props, { emit }) {\r\n const isShowDialog = ref(false)\r\n\r\n const ruleFormRef = ref<FormInstance>()\r\n //定义表单\r\n const ruleForm = ref ({\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingUserName: '', //计划制定人Name\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n });\r\n const titles = ref();\r\n const disabled = ref();\r\n // 打开弹窗\r\n const openDialog = (title: string, id: number, type: boolean) => {\r\n ruleForm.value.makingUserUid = Session.get('uid');\r\n ruleForm.value.makingUserName = Session.get('realName');\r\n isShowDialog.value = true;\r\n titles.value = title;\r\n disabled.value = type;\r\n if (title == '查看应急演练计划发布' || title == '修改应急演练计划发布') {\r\n releaseDrillPlanApi()\r\n .seeReleaseDrillPlan(id)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ruleForm.value = res.data.data;\r\n ruleForm.value.userListString=''\r\n ruleForm.value.chargeUserListString=''\r\n for(var a = 0;a<res.data.data.userList.length;a++){\r\n if(res.data.data.userList[a].type==1){\r\n ruleForm.value.userListString += res.data.data.userList[a].userName+';'\r\n }\r\n // if(res.data.data.userList[a].type==2){\r\n // ruleForm.value.chargeUserListString += res.data.data.userList[a].userName+';'\r\n // }\r\n }\r\n // alert(res.data.data.chargeUserList.length)\r\n for(var a = 0;a<res.data.data.chargeUserList.length;a++){\r\n ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';'\r\n }\r\n }\r\n });\r\n }\r\n };\r\n //日期选择器\r\n const value1 = ref('')\r\n // 上传附件\r\n const fileList = ref<UploadUserFile[]>([])\r\n // 可选择树\r\n const treeSelect = ref()\r\n const tree = [\r\n ]\r\n //部门树\r\n const department = () => {\r\n goalManagementApi()\r\n .getTreedepartment()\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n data.value = res.data.data;\r\n } else {\r\n ElMessage.error(res.data.msg);\r\n }\r\n });\r\n };\r\n //定义树形下拉框\r\n const responsibleDepartment = ref()\r\n const data = ref()\r\n const propse = {\r\n label: 'depName',\r\n children: 'children',\r\n value: 'depId',\r\n };\r\n onMounted(() => {\r\n department();\r\n });\r\n // 表单提交验证必填项\r\n const submitForm = async (title: string, formEl: FormInstance | undefined) => {\r\n ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)\r\n delete ruleForm.value.planName\r\n delete ruleForm.value.chargeUserListString\r\n delete ruleForm.value.userListString\r\n delete ruleForm.value.chargeUserList\r\n delete ruleForm.value.gmtModitify\r\n if (title == '新建应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .addReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n }\r\n else if (title == '修改应急演练计划发布') {\r\n if (!formEl) return;\r\n await formEl.validate((valid, fields) => {\r\n if (valid) {\r\n isShowDialog.value = false;\r\n releaseDrillPlanApi()\r\n .editReleaseDrillPlan(ruleForm.value)\r\n .then((res) => {\r\n if (res.data.code == 200) {\r\n ElMessage({\r\n showClose: true,\r\n message: '修改成功',\r\n type: 'success',\r\n });\r\n emit('myAdd', true);\r\n } else {\r\n ElMessage({\r\n showClose: true,\r\n message: res.data.msg,\r\n type: 'error',\r\n });\r\n emit('myAdd', true);\r\n }\r\n formEl.resetFields();\r\n });\r\n } else {\r\n console.log('error submit!', fields);\r\n }\r\n });\r\n formEl.resetFields();\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n }\r\n }\r\n const resetForm = (formEl: FormInstance | undefined) => {\r\n isShowDialog.value = false;\r\n if (!formEl) return;\r\n ruleForm.value = {\r\n makingPlanDate: '', // 计划制定日期\r\n drillPlanDate: '', //计划演练日期\r\n makingUserUid: '', //计划制定人ID\r\n makingDepartmentId: '', // 计划制定部门ID\r\n planId: '', // 应急预案ID\r\n planName: '', // 应急预案name\r\n departmentId: '', // 主办部门ID\r\n drillExpense: '', // 演练经费\r\n drillLevel: '', //演练级别\r\n drillAddress: '', //演练地点\r\n drillName: '', // 演练名称\r\n drillWay: '', // 演练方式\r\n insuranceMeasures: '', // 保险措施\r\n remark: '', // 备注\r\n purpose: '', // 演练目的\r\n fileList: [\r\n ],\r\n userList: [\r\n ],\r\n chargeUserList:[],\r\n userListString:'',//演练人员字段(回填使用)\r\n chargeUserListString:'',//演练负责人字段(回填使用)\r\n };\r\n formEl.resetFields();\r\n };\r\n // 应急队伍弹窗\r\n const Shows=ref()\r\n const daiInpt = () => {\r\n Shows.value.openDailog()\r\n }\r\n const onUser = (e:any) => {\r\n ruleForm.value.planId=e.id\r\n ruleForm.value.planName=e.name\r\n };\r\n // 打开用户选择弹窗\r\n const userRef = ref();\r\n const userFZRef = ref();\r\n //打开演练人员和演练负责人弹窗 type 0 演练人员 1 演练负责人\r\n const openUser = (type:number) => {\r\n if(type==0){\r\n userRef.value.openDailog(0);\r\n }else if(type==1){\r\n userFZRef.value.openDailog(0);\r\n }\r\n };\r\n const SearchUser = (e:any) => {\r\n console.log('演练人员',e)\r\n ruleForm.value.userListString=''\r\n ruleForm.value.userList=[]\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.userList.push(\r\n {\r\n type: 1,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.userListString+=e[a].realName+';'\r\n }\r\n\r\n };\r\n const SearchFZUser = (e:any) => {\r\n console.log('演练负责人员',e[0].userName)\r\n ruleForm.value.chargeUserListString=''\r\n ruleForm.value.chargeUserList=[]\r\n // ruleForm.value.chargeUserList = []\r\n for(var a = 0;a<e.length;a++){\r\n ruleForm.value.chargeUserList.push(\r\n {\r\n type: 2,\r\n userName: e[a].realName,\r\n userUid: e[a].uid,\r\n }\r\n )\r\n ruleForm.value.chargeUserListString+=e[a].realName+';'\r\n }\r\n };\r\n // 计划定制日期\r\n const datetime = ref('');\r\n //全屏\r\n const full = ref(false);\r\n const toggleFullscreen = () => {\r\n if (full.value == false) {\r\n full.value = true;\r\n } else {\r\n full.value = false;\r\n }\r\n };\r\n return {\r\n openDialog,\r\n isShowDialog,\r\n fileList,\r\n responsibleDepartment,\r\n data,\r\n department,\r\n propse,\r\n Search,\r\n ruleForm,\r\n value1,\r\n treeSelect,\r\n tree,\r\n daiInpt,\r\n Shows,\r\n ruleFormRef,\r\n submitForm,\r\n openUser,\r\n userRef,\r\n datetime,\r\n toggleFullscreen,\r\n FullScreen,\r\n full,\r\n titles,\r\n disabled,\r\n resetForm,\r\n emit,\r\n onUser,\r\n userFZRef,\r\n SearchUser,\r\n SearchFZUser\r\n };\r\n },\r\n});\r\n</script>\r\n<style scoped lang=\"scss\">\r\n.textarea{\r\n height: 168px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 168px!important;\r\n}\r\n::v-deep .el-table__cell {\r\n font-weight: 400;\r\n}\r\n.el-divider--horizontal{\r\n height: 0;\r\n margin: 0;\r\n border-top: transparent;\r\n}\r\n.el-select{\r\n width: 100%;\r\n}\r\n//多行文本框\r\n.textarea{\r\n height: 70px!important;\r\n}\r\n.textarea ::v-deep .el-textarea__inner{\r\n height: 70px!important;\r\n}\r\n//弹窗底部边框线\r\n::v-deep .el-dialog__footer{\r\n border-top: 1px solid #e8e8e8;\r\n border-radius: 0 0 4px 4px;\r\n}\r\n//弹窗顶部边框线\r\n::v-deep .el-dialog__header {\r\n border-bottom: 1px solid #e8e8e8;\r\n margin-right: 0;\r\n border-radius: 4px 4px 0 0;\r\n}\r\n</style> -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue ---- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue (date 1660382056859) -@@ -162,20 +162,8 @@ - </el-col> - <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" style="margin-bottom: 0!important;"> - <el-form-item label="预案附件"> -- <!--<el-upload--> -- <!--v-model:file-list="fileList"--> -- <!--class="upload-demo"--> -- <!--action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"--> -- <!--:on-change="handleChange"--> -- <!-->--> -- <!--<el-button type="primary"--> -- <!-->点击上传</el-button>--> -- <!--<template #tip>--> -- <!--<div class="el-upload__tip">--> -- <!--添加相关附件--> -- <!--</div>--> -- <!--</template>--> -- <!--</el-upload>--> -+ <uploaderFile :fileList="fileList" :systemName="'EMERGENCY'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-form-item> - </el-col> - </el-row> -@@ -215,12 +203,13 @@ - import {releaseDrillPlanApi} from "/@/api/contingencyManagement/emergencyDrillPlan"; - import {goalManagementApi} from "/@/api/goalManagement"; - import { Session } from '/@/utils/storage'; -- -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ - name: 'openAdd', - components: { - RegionsDialog, -- DailogSearchUser -+ DailogSearchUser, -+ uploaderFile - }, - setup(props, { emit }) { - const isShowDialog = ref(false) -@@ -281,14 +270,35 @@ - for(var a = 0;a<res.data.data.chargeUserList.length;a++){ - ruleForm.value.chargeUserListString += res.data.data.chargeUserList[a].userName+';' - } -+ fileList.value = (res.data.data.fileList?res.data.data.fileList:[]) -+ initFileListData() - } - }); - } - }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].fileName -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ fileName:fileList.value[a].fileName, -+ fileUrl:'' -+ } -+ ) -+ } -+ ruleForm.value.fileList = formFileList -+ } - //日期选择器 - const value1 = ref('') - // 上传附件 -- const fileList = ref<UploadUserFile[]>([]) -+ const fileList = ref([]) - // 可选择树 - const treeSelect = ref() - const tree = [ -@@ -318,6 +328,9 @@ - }); - // 表单提交验证必填项 - const submitForm = async (title: string, formEl: FormInstance | undefined) => { -+ if(!ruleForm.value.fileList){ -+ ruleForm.value.fileList = [] -+ } - ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList) - delete ruleForm.value.planName - delete ruleForm.value.chargeUserListString -@@ -412,6 +425,7 @@ - } - const resetForm = (formEl: FormInstance | undefined) => { - isShowDialog.value = false; -+ fileList.value=[] - if (!formEl) return; - ruleForm.value = { - makingPlanDate: '', // 计划制定日期 -@@ -473,7 +487,6 @@ - ) - ruleForm.value.userListString+=e[a].realName+';' - } -- - }; - const SearchFZUser = (e:any) => { - console.log('演练负责人员',e[0].userName) -@@ -532,7 +545,9 @@ - onUser, - userFZRef, - SearchUser, -- SearchFZUser -+ SearchFZUser, -+ successUploader, -+ initFileListData - }; - }, - }); -@@ -573,4 +588,4 @@ - margin-right: 0; - border-radius: 4px 4px 0 0; - } --</style> -\ No newline at end of file -+</style> -Index: src/components/equipmentDailog/Dailog.vue -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+><template>\r\n\t<el-dialog v-model=\"dialogVisible\" :fullscreen=\"full\" @close=\"resetForm(ruleFormRef)\" draggable :title=\"titles\" width=\"60%\">\r\n\t\t<el-button @click=\"toggleFullscreen\" size=\"small\" class=\"pot\" :icon=\"FullScreen\"></el-button>\r\n\t\t<el-form :model=\"form\" ref=\"ruleFormRef\" :rules=\"rules\" :disabled=\"disabled\" label-width=\"120px\" class=\"formType\">\r\n\t\t\t<el-form-item label=\"装置设施名称\" size=\"default\" prop=\"qName\">\r\n\t\t\t\t<el-input v-model=\"form.qName\" placeholder=\"请填写装置设施名称\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施位号\" size=\"default\" prop=\"positionNum\">\r\n\t\t\t\t<el-input disabled v-model=\"form.positionNum\" placeholder=\"请填写装置设施位号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施用途\" size=\"default\" prop=\"qUsage\">\r\n\t\t\t\t<el-input v-model=\"form.qUsage\" placeholder=\"请填写装置设施用途\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"装置设施型号\" size=\"default\" prop=\"model\">\r\n\t\t\t\t<el-input v-model=\"form.model\" placeholder=\"请填写装置设施型号\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"类型/类别外键\" size=\"default\" prop=\"equipmentTypeName\">\r\n\t\t\t\t<el-input v-model=\"form.equipmentTypeName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"opencategory\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<!-- <el-form-item label=\"区域名称\" size=\"default\">\r\n <el-input v-model=\"form.name\" placeholder=\"请选择\">\r\n <template #append>\r\n <el-button :icon=\"Search\" @click=\"openRegion\"></el-button>\r\n </template>\r\n </el-input>\r\n </el-form-item> -->\r\n\t\t\t<el-form-item label=\"单位部门\" size=\"default\" prop=\"departmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.departmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"设置部位\" size=\"default\" prop=\"setPart\">\r\n\t\t\t\t<el-input v-model=\"form.setPart\" placeholder=\"请填写设置部位\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生产日期\" size=\"default\" prop=\"produceTime\">\r\n\t\t\t\t<el-date-picker v-model=\"form.produceTime\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用期限(天)\" size=\"default\" prop=\"useEndDay\">\r\n\t\t\t\t<el-input v-model=\"form.useEndDay\" placeholder=\"请填写使用期限\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"生命周期\" size=\"default\" prop=\"lifeCycle\">\r\n\t\t\t\t<el-select v-model=\"form.lifeCycle\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"已投用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"库存中\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"3\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"投用日期\" size=\"default\" prop=\"useDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.useDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"维修状态\" size=\"default\" prop=\"repairStatus\">\r\n\t\t\t\t<el-select v-model=\"form.repairStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"维修中\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"已修好\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用状态\" size=\"default\" prop=\"stopStatus\">\r\n\t\t\t\t<el-select v-model=\"form.stopStatus\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"停用\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"在用\" :value=\"2\" />\r\n\t\t\t\t\t<el-option label=\"维修\" :value=\"3\" />\r\n\t\t\t\t\t<el-option label=\"报废\" :value=\"4\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检查日期\" size=\"default\" prop=\"previousCheckDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousCheckDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次检测日期\" size=\"default\" prop=\"previousTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.previousTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"上次保养日期\" size=\"default\" prop=\"previousTakecareDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.previousTakecareDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检查日期\" size=\"default\" prop=\"nextCheckDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextCheckDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次检测日期\" size=\"default\" prop=\"nextTestDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTestDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"下次保养日期\" size=\"default\" prop=\"nextTakecareDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.nextTakecareDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人\" size=\"default\" prop=\"leadingPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.leadingPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(1)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责人部门\" size=\"default\" prop=\"leadingPersonDepartmentId\">\r\n\t\t\t\t<el-tree-select\r\n\t\t\t\t\tv-model=\"form.leadingPersonDepartmentId\"\r\n\t\t\t\t\t:data=\"data\"\r\n\t\t\t\t\tcheck-strictly=\"true\"\r\n\t\t\t\t\tclass=\"w100\"\r\n\t\t\t\t\t:props=\"propse\"\r\n\t\t\t\t\tplaceholder=\"请选择\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"供应商\" size=\"default\" prop=\"supplyName\">\r\n\t\t\t\t<el-input v-model=\"form.supplyName\" placeholder=\"请填写供应商\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"使用说明\" size=\"default\" prop=\"useMemo\">\r\n\t\t\t\t<el-input v-model=\"form.useMemo\" placeholder=\"请填写使用说明\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检查\" size=\"default\" prop=\"isNeedCheck\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedCheck\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查周期\" size=\"default\" prop=\"checkCycle\">\r\n\t\t\t\t<el-input v-model=\"form.checkCycle\" placeholder=\"请填写检查周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查提前提醒\" size=\"default\" prop=\"checkWarn\">\r\n\t\t\t\t<el-input v-model=\"form.checkWarn\" placeholder=\"请填写检查提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否检测\" size=\"default\" prop=\"isNeedTest\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTest\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测周期\" size=\"default\" prop=\"testCycle\">\r\n\t\t\t\t<el-input v-model=\"form.testCycle\" placeholder=\"请填写检测周期\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检测提前提醒\" size=\"default\" prop=\"testWarn\">\r\n\t\t\t\t<el-input v-model=\"form.testWarn\" placeholder=\"请填写检测提前提醒\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"是否保养\" size=\"default\" prop=\"isNeedTakecare\">\r\n\t\t\t\t<el-select v-model=\"form.isNeedTakecare\" placeholder=\"请选择\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-option label=\"是\" :value=\"1\" />\r\n\t\t\t\t\t<el-option label=\"否\" :value=\"2\" />\r\n\t\t\t\t</el-select>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查内容\" size=\"default\" prop=\"checkContent\">\r\n\t\t\t\t<el-input v-model=\"form.checkContent\" placeholder=\"请填写检查内容\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"负责部门\" size=\"default\" prop=\"leadingDepartmentId\">\r\n\t\t\t\t<el-tree-select v-model=\"form.leadingDepartmentId\" :data=\"data\" check-strictly=\"true\" class=\"w100\" :props=\"propse\" placeholder=\"请选择\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"检查指标\" size=\"default\" prop=\"checkPoint\">\r\n\t\t\t\t<el-input v-model=\"form.checkPoint\" placeholder=\"请填写检查指标\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"预警值\" size=\"default\" prop=\"alertNum\">\r\n\t\t\t\t<el-input v-model=\"form.alertNum\" placeholder=\"请填写预警值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"联锁值\" size=\"default\" prop=\"lockNum\">\r\n\t\t\t\t<el-input v-model=\"form.lockNum\" placeholder=\"请填写联锁值\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用理由\" size=\"default\" prop=\"stopReason\">\r\n\t\t\t\t<el-input v-model=\"form.stopReason\" placeholder=\"请填写停用理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用后措施\" size=\"default\" prop=\"afterStopStep\">\r\n\t\t\t\t<el-input v-model=\"form.afterStopStep\" placeholder=\"请填写停用后措施\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际停用日期\" size=\"default\" prop=\"actualStopDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.actualStopDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交人\" size=\"default\" prop=\"stopSubmitPersonName\">\r\n\t\t\t\t<el-input v-model=\"form.stopSubmitPersonName\" placeholder=\"请选择\">\r\n\t\t\t\t\t<template #append>\r\n\t\t\t\t\t\t<el-button :icon=\"Search\" @click=\"openUser(2)\"></el-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-input>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"停用提交日期\" size=\"default\" prop=\"stopSubmitDate\">\r\n\t\t\t\t<el-date-picker v-model=\"form.stopSubmitDate\" format=\"YYYY-MM-DD HH:mm:ss\" value-format=\"YYYY-MM-DD HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\" style=\"width: 100%\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复理由\" size=\"default\" prop=\"recoveryReason\">\r\n\t\t\t\t<el-input v-model=\"form.recoveryReason\" placeholder=\"请填写恢复理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"恢复填报日期\" size=\"default\" prop=\"recoverySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.recoverySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际恢复日期\" size=\"default\" prop=\"actualRecoveryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualRecoveryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废理由\" size=\"default\" prop=\"destoryReason\">\r\n\t\t\t\t<el-input v-model=\"form.destoryReason\" placeholder=\"请填写报废理由\" />\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"报废填报日期\" size=\"default\" prop=\"destorySubmitDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.destorySubmitDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t\t<el-form-item label=\"实际报废日期\" size=\"default\" prop=\"actualDestoryDate\">\r\n\t\t\t\t<el-date-picker\r\n\t\t\t\t\tv-model=\"form.actualDestoryDate\"\r\n\t\t\t\t\tformat=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\tvalue-format=\"YYYY-MM-DD HH:mm:ss\"\r\n\t\t\t\t\ttype=\"datetime\"\r\n\t\t\t\t\tplaceholder=\"选择日期时间\"\r\n\t\t\t\t\tstyle=\"width: 100%\"\r\n\t\t\t\t/>\r\n\t\t\t</el-form-item>\r\n\t\t</el-form>\r\n\t\t<el-tabs v-model=\"activeName\" class=\"demo-tabs\">\r\n\t\t\t<el-tab-pane label=\"设备保养\" name=\"first\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openMaintenance('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.takecareDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareMemo\" label=\"保养情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonName\" label=\"保养负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"takecareDate\" :formatter=\"timeDate\" label=\"保养日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"leadingPersonDepartmentName\" label=\"保养负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openMaintenance('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteA(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备检测\" name=\"second\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openDetect('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.testDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonName\" label=\"检测人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testDate\" :formatter=\"timeDate\" label=\"检测日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testPersonDepartmentName\" label=\"检测人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testMemo\" label=\"检测内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"检测结果\" >\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==1\">成功</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.testResult==2\">失败</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"testStatus\" label=\"检测状态\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openDetect('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteB(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"设备维修\" name=\"third\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openRepair('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.repaireDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"exceptionInfo\" label=\"设施异常项\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"维修状态\">\r\n\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==1\">维修中</span>\r\n\t\t\t\t\t\t\t<span v-if=\"scope.row.repairStatus==2\">已修好</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairMemo\" label=\"维修情况\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonName\" label=\"维修负责人\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairPersonDepartmentName\" label=\"维修负责人单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairStartDate\" :formatter=\"timeDate\" label=\"维修开始日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"repairEndDate\" :formatter=\"timeDate\" label=\"维修结束日期\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openRepair('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteC(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"检查标准设置\" name=\"fourth\">\r\n\t\t\t\t<el-button type=\"primary\" size=\"default\" :disabled=\"disabled\" @click=\"openStandard('新增', '')\">新增</el-button>\r\n\t\t\t\t<el-table :data=\"form.checkStandardeDetailList\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"indexNum\" label=\"序号\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkContent\" label=\"检查内容\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkTarget\" label=\"检查指标\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"unit\" label=\"单位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"checkPart\" label=\"巡检部位\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" prop=\"rate\" label=\"频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" label=\"操作\">\r\n\t\t\t\t\t\t<template #default=\"scope\">\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('查看', scope.row)\" size=\"small\">查看</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"openStandard('修改', scope.row)\" size=\"small\">修改</el-button>\r\n\t\t\t\t\t\t\t<el-button link type=\"primary\" @click=\"deleteD(scope.row)\" size=\"small\">删除</el-button>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</el-table-column>\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"巡检记录\" size=\"default\" name=\"five\">\r\n\t\t\t\t<el-table :data=\"name\" style=\"width: 100%\">\r\n\t\t\t\t\t<el-table-column align=\"center\" type=\"selection\" width=\"75\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"name\" label=\"任务编号\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"任务名称\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"点位类型\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"检查频次\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" :formatter=\"timeDate\" label=\"巡检时间\" />\r\n\t\t\t\t\t<el-table-column align=\"center\" sortable prop=\"address\" label=\"巡检人\" />\r\n\t\t\t\t</el-table>\r\n\t\t\t</el-tab-pane>\r\n\t\t\t<el-tab-pane label=\"保养维修标准\" name=\"six\" v-if=\"Dailogtype\">\r\n\t\t\t\t<el-upload\r\n\t\t\t\t\tv-model:file-list=\"fileList\"\r\n\t\t\t\t\tclass=\"upload-demo\"\r\n\t\t\t\t\taction=\"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15\"\r\n\t\t\t\t\tmultiple\r\n\t\t\t\t\t:on-preview=\"handlePreview\"\r\n\t\t\t\t\t:on-remove=\"handleRemove\"\r\n\t\t\t\t\t:before-remove=\"beforeRemove\"\r\n\t\t\t\t\t:limit=\"3\"\r\n\t\t\t\t\t:on-exceed=\"handleExceed\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<el-button type=\"primary\">点击上传</el-button>\r\n\t\t\t\t\t<template #tip>\r\n\t\t\t\t\t\t<div class=\"el-upload__tip\"></div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</el-upload>\r\n\t\t\t</el-tab-pane>\r\n\t\t</el-tabs>\r\n\t\t<template #footer>\r\n\t\t\t<span class=\"dialog-footer\">\r\n\t\t\t\t<el-button @click=\"resetForm(ruleFormRef)\">关闭</el-button>\r\n\t\t\t\t<el-button type=\"primary\" @click=\"submitForm(ruleFormRef)\">确定</el-button>\r\n\t\t\t</span>\r\n\t\t</template>\r\n\t</el-dialog>\r\n\t<categoryDailog ref=\"categoryShow\"></categoryDailog>\r\n\t<categoryDailog ref=\"categoryShow\" @typeId=\"Tid\"></categoryDailog>\r\n\t<regionDailog ref=\"regionShow\"></regionDailog>\r\n\t<DailogSearchUser ref=\"UserShow\" @SearchUser=\"userId\"></DailogSearchUser>\r\n\t<maintenanceDailog ref=\"maintenanceShow\" @onMain=\"main\"></maintenanceDailog>\r\n\t<detectDailog ref=\"detectShow\" @onDelect=\"delect\"></detectDailog>\r\n\t<repairDailog ref=\"repairShow\" @onRepair=\"Repair\"></repairDailog>\r\n\t<standardDailog ref=\"standardShow\" @onStand=\"Stand\"></standardDailog>\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref, reactive } from 'vue';\r\nimport { Search, FullScreen } from '@element-plus/icons-vue';\r\nimport categoryDailog from './categoryDailog.vue';\r\nimport regionDailog from './regionDailog.vue';\r\nimport maintenanceDailog from './maintenanceDailog.vue';\r\nimport detectDailog from './detectDailog.vue';\r\nimport repairDailog from './repairDailog.vue';\r\nimport { timeDate } from '/@/assets/index.ts';\r\nimport standardDailog from './standardDailog.vue';\r\nimport DailogSearchUser from '/@/components/DailogSearchUser/index.vue';\r\nimport { ElMessage, ElMessageBox, FormInstance, FormRules } from 'element-plus';\r\nimport type { UploadProps, UploadUserFile } from 'element-plus';\r\nimport { facilityManagementApi } from '/@/api/facilityManagement';\r\nimport { goalManagementApi } from '/@/api/goalManagement';\r\nimport { deepClone } from '/@/utils/other';\r\nexport default defineComponent({\r\n\tcomponents: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },\r\n\tsetup(props, { emit }) {\r\n\t\tconst dialogVisible = ref(false);\r\n\t\tconst ruleFormRef = ref<FormInstance>();\r\n\t\tconst form = ref({\r\n\t\t\tsupplyName: '',\r\n\r\n\t\t\tnextTestDate: '',\r\n\r\n\t\t\tqUsage: '',\r\n\r\n\t\t\tdepartmentId: '',\r\n\r\n\t\t\tproduceTime: '',\r\n\r\n\t\t\tactualStopDate: '',\r\n\r\n\t\t\ttakecareDetailList: [],\r\n\r\n\t\t\tinfoType: '',\r\n\r\n\t\t\tleadingDepartmentId: '',\r\n\r\n\t\t\tuseEndDay: '',\r\n\r\n\t\t\tpreviousTakecareDate: '',\r\n\r\n\t\t\tpreviousCheckDate: '',\r\n\r\n\t\t\tmodel: '',\r\n\r\n\t\t\tstopStatus: '',\r\n\r\n\t\t\ttestWarn: '',\r\n\r\n\t\t\tstopSubmitDate: '',\r\n\r\n\t\t\trepairStatus: '',\r\n\r\n\t\t\ttakecareStardardeDetailList: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfilePath: '123',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\r\n\t\t\tnextCheckDate: '',\r\n\r\n\t\t\tcheckCycle: '',\r\n\r\n\t\t\tcheckPoint: '',\r\n\r\n\t\t\tleadingPersonId: '',\r\n\t\t\tleadingPersonName: '',\r\n\r\n\t\t\tqName: '',\r\n\r\n\t\t\tnextTakecareDate: '',\r\n\r\n\t\t\tsetPart: '',\r\n\r\n\t\t\tcheckStandardeDetailList: [],\r\n\r\n\t\t\tactualDestoryDate: '',\r\n\r\n\t\t\tisNeedTest: '',\r\n\r\n\t\t\talertNum: '',\r\n\r\n\t\t\tcheckContent: '',\r\n\r\n\t\t\tuseMemo: '',\r\n\r\n\t\t\tpreviousTestDate: '',\r\n\r\n\t\t\tisNeedTakecare: '',\r\n\r\n\t\t\tdestoryReason: '',\r\n\r\n\t\t\tcheckDetailList: [],\r\n\r\n\t\t\tpositionNum: '',\r\n\r\n\t\t\ttestCycle: '',\r\n\r\n\t\t\trecoveryReason: '',\r\n\r\n\t\t\tisNeedCheck: '',\r\n\r\n\t\t\tactualRecoveryDate: '',\r\n\r\n\t\t\tleadingPersonDepartmentId: '',\r\n\r\n\t\t\tstopReason: '',\r\n\r\n\t\t\tdestorySubmitDate: '',\r\n\r\n\t\t\ttestDetailList: [],\r\n\r\n\t\t\tcheckWarn: '',\r\n\r\n\t\t\trepaireDetailList: [],\r\n\r\n\t\t\tequipmentTypeId: '',\r\n\r\n\t\t\tuseDate: '',\r\n\r\n\t\t\trecoverySubmitDate: '',\r\n\r\n\t\t\tlockNum: '',\r\n\r\n\t\t\tstopSubmitPersonId: '',\r\n\t\t\tstopSubmitPersonName: '',\r\n\t\t\tafterStopStep: '',\r\n\r\n\t\t\tlifeCycle: '',\r\n\r\n\t\t\tdelCheckStandardeDetails: '',\r\n\r\n\t\t\tdelTakecareStardardeDetails: '',\r\n\r\n\t\t\tdelTakecareDetails: '',\r\n\r\n\t\t\tdelRepaireDetails: '',\r\n\r\n\t\t\tdelTestDetails: '',\r\n\t\t});\r\n\t\tconst titles = ref();\r\n\t\tconst titleT = ref();\r\n\t\tconst disabled = ref(false);\r\n\t\tconst Dailogtype = ref(false);\r\n\t\tconst openDailog = (title: string, type: boolean, id: number, num: any) => {\r\n\t\t\tdialogVisible.value = true;\r\n\t\t\ttitleT.value = title;\r\n\t\t\tdepartment();\r\n\t\t\tDailogtype.value = type;\r\n\t\t\tif (num == 0) {\r\n\t\t\t\ttitles.value = `${title}仪表信息`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 1) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t} else if (num == 2) {\r\n\t\t\t\ttitles.value = `${title}设备设施`;\r\n\t\t\t\tform.value.infoType = num;\r\n\t\t\t}\r\n\r\n\t\t\tdisabled.value = title == '查看' ? true : false;\r\n\t\t\tif (title == '查看' || title == '修改')\r\n\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t.getequipmentInfoDetail(id)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\tform.value = res.data.data;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t};\r\n\t\tconst rules = reactive<FormRules>({\r\n\t\t\tqName: [],\r\n\t\t\tpositionNum: [],\r\n\t\t\tqUsage: [],\r\n\t\t\tmodel: [],\r\n\t\t\tequipmentTypeId: [],\r\n\t\t\tequipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],\r\n\t\t\tdepartmentId: [],\r\n\t\t\tsetPart: [],\r\n\t\t\tproduceTime: [],\r\n\t\t\tuseEndDay: [],\r\n\t\t\tlifeCycle: [],\r\n\t\t\tuseDate: [],\r\n\t\t\trepairStatus: [],\r\n\t\t\tstopStatus: [],\r\n\t\t\tpreviousCheckDate: [],\r\n\t\t\tpreviousTestDate: [],\r\n\t\t\tpreviousTakecareDate: [],\r\n\t\t\tnextCheckDate: [],\r\n\t\t\tnextTestDate: [],\r\n\t\t\tnextTakecareDate: [],\r\n\t\t\tleadingPersonName: [],\r\n\t\t\tleadingPersonDepartmentId: [],\r\n\t\t\tsupplyName: [],\r\n\t\t\tuseMemo: [],\r\n\t\t\tisNeedCheck: [],\r\n\t\t\tcheckCycle: [],\r\n\t\t\tcheckWarn: [],\r\n\t\t\tisNeedTest: [],\r\n\t\t\ttestCycle: [],\r\n\t\t\ttestWarn: [],\r\n\t\t\tisNeedTakecare: [],\r\n\t\t\tcheckContent: [],\r\n\t\t\tleadingDepartmentId: [],\r\n\t\t\tcheckPoint: [],\r\n\t\t\talertNum: [],\r\n\t\t\tlockNum: [],\r\n\t\t\tstopReason: [],\r\n\t\t\tafterStopStep: [],\r\n\t\t\tactualStopDate: [],\r\n\t\t\tstopSubmitPersonName: [],\r\n\t\t\tstopSubmitDate: [],\r\n\t\t\trecoveryReason: [],\r\n\t\t\trecoverySubmitDate: [],\r\n\t\t\tactualRecoveryDate: [],\r\n\t\t\tdestoryReason: [],\r\n\t\t\tdestorySubmitDate: [],\r\n\t\t\tactualDestoryDate: [],\r\n\t\t});\r\n\t\t// 提交\r\n\t\tconst submitForm = async (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tawait formEl.validate((valid, fields) => {\r\n\t\t\t\tif (valid) {\r\n\t\t\t\t\tform.value.delTakecareDetails = deleteAId.value.toString();\r\n\t\t\t\t\tform.value.delTestDetails = deleteBId.value.toString();\r\n\t\t\t\t\tform.value.delRepaireDetails = deleteCId.value.toString();\r\n\t\t\t\t\tform.value.delCheckStandardeDetails = deleteDId.value.toString();\r\n\t\t\t\t\tdialogVisible.value = false;\r\n\t\t\t\t\tdelete form.value.equipmentTypeName;\r\n\t\t\t\t\tdelete form.value.departmentName;\r\n\t\t\t\t\tdelete form.value.leadingPersonDepartmentName;\r\n\t\t\t\t\tdelete form.value.leadingDepartmentName;\r\n\t\t\t\t\tif (titleT.value == '新建') {\r\n\t\t\t\t\t\tdelete form.value.id;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tfacilityManagementApi()\r\n\t\t\t\t\t\t.getequipmentInfoAddOrUpdate(form.value)\r\n\t\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\t\t\tElMessage({\r\n\t\t\t\t\t\t\t\t\tmessage: res.data.msg,\r\n\t\t\t\t\t\t\t\t\ttype: 'success',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\temit('navAddorUpdata');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t};\r\n\t\t// 取消\r\n\t\tconst resetForm = (formEl: FormInstance | undefined) => {\r\n\t\t\tif (!formEl) return;\r\n\t\t\tformEl.resetFields();\r\n\t\t\tform.value.takecareDetailList = [];\r\n\t\t\tform.value.testDetailList = [];\r\n\t\t\tform.value.repaireDetailList = [];\r\n\t\t\tform.value.checkStandardeDetailList = [];\r\n\t\t\tdialogVisible.value = false;\r\n\t\t};\r\n\t\tconst activeName = ref('first');\r\n\t\tconst index = ref<any>();\r\n\t\tconst categoryShow = ref();\r\n\t\tconst opencategory = () => {\r\n\t\t\tcategoryShow.value.openDailog();\r\n\t\t};\r\n\t\tconst regionShow = ref();\r\n\t\tconst openRegion = () => {\r\n\t\t\tregionShow.value.openDailog();\r\n\t\t};\r\n\t\tconst UserShow = ref();\r\n\t\tconst openUser = (type: any) => {\r\n\t\t\tUserShow.value.openDailog(type);\r\n\t\t};\r\n\t\tconst maintenanceShow = ref();\r\n\t\tconst openMaintenance = (title: string, data: any) => {\r\n index.value = form.value.takecareDetailList.indexOf(data);\r\n\t\t\tmaintenanceShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst detectShow = ref();\r\n\t\tconst openDetect = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.testDetailList.indexOf(data);\r\n\t\t\tdetectShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst repairShow = ref();\r\n\t\tconst openRepair = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.repaireDetailList.indexOf(data);\r\n\t\t\trepairShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\tconst standardShow = ref();\r\n\t\tconst openStandard = (title: string, data: any) => {\r\n\t\t\tindex.value = form.value.checkStandardeDetailList.indexOf(data);\r\n\t\t\tstandardShow.value.openDailog(title, data);\r\n\t\t};\r\n\t\t// 上传\r\n\t\tconst fileList = ref<UploadUserFile[]>([\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'element-plus-logo2.svg',\r\n\t\t\t\turl: 'https://element-plus.org/images/element-plus-logo.svg',\r\n\t\t\t},\r\n\t\t]);\r\n\r\n\t\tconst handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {\r\n\t\t\tconsole.log(file, uploadFiles);\r\n\t\t};\r\n\r\n\t\tconst handlePreview: UploadProps['onPreview'] = (uploadFile) => {\r\n\t\t\tconsole.log(uploadFile);\r\n\t\t};\r\n\r\n\t\tconst handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {\r\n\t\t\tElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);\r\n\t\t};\r\n\r\n\t\tconst beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {\r\n\t\t\treturn ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(\r\n\t\t\t\t() => true,\r\n\t\t\t\t() => false\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteAId = ref([]);\r\n\t\tconst deleteBId = ref([]);\r\n\t\tconst deleteCId = ref([]);\r\n\t\tconst deleteDId = ref([]);\r\n\t\t// 删除\r\n\t\tconst deleteA = (tag: any) => {\r\n\t\t\tform.value.takecareDetailList.splice(form.value.takecareDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteAId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteB = (tag: any) => {\r\n\t\t\tform.value.testDetailList.splice(form.value.testDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteBId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteC = (tag: any) => {\r\n\t\t\tform.value.repaireDetailList.splice(form.value.repaireDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteCId.value.push(tag.id);\r\n\t\t};\r\n\t\tconst deleteD = (tag: any) => {\r\n\t\t\tform.value.checkStandardeDetailList.splice(form.value.checkStandardeDetailList.indexOf(tag), 1);\r\n\t\t\tdeleteDId.value.push(tag.id);\r\n\t\t};\r\n\t\t// 回传\r\n\t\tconst main = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.takecareDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.takecareDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst delect = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.testDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.testDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Repair = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.repaireDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.repaireDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Stand = (data: any) => {\r\n\t\t\tconst val = deepClone(data);\r\n\t\t\tif (index.value == -1) {\r\n\t\t\t\tform.value.checkStandardeDetailList.push(val);\r\n\t\t\t} else {\r\n\t\t\t\tform.value.checkStandardeDetailList[index.value] = val;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst userId = (val: any, type: number) => {\r\n\t\t\tconsole.log(val, type);\r\n\t\t\tif (type == 1) {\r\n\t\t\t\tform.value.leadingPersonId = val.uid;\r\n\t\t\t\tform.value.leadingPersonName = val.realName;\r\n\t\t\t} else if (type == 2) {\r\n\t\t\t\tform.value.stopSubmitPersonId = val.uid;\r\n\t\t\t\tform.value.stopSubmitPersonName = val.realName;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst Tid = (data: any) => {\r\n\t\t\tform.value.equipmentTypeId = data.id;\r\n\t\t\tform.value.equipmentTypeName = data.typeName;\r\n\t\t\tform.value.positionNum = data.sortNum;\r\n\t\t};\r\n\t\t//全屏\r\n\t\tconst full = ref(false);\r\n\t\tconst toggleFullscreen = () => {\r\n\t\t\tif (full.value == false) {\r\n\t\t\t\tfull.value = true;\r\n\t\t\t} else {\r\n\t\t\t\tfull.value = false;\r\n\t\t\t}\r\n\t\t};\r\n\t\t//部门树\r\n\t\tconst department = () => {\r\n\t\t\tgoalManagementApi()\r\n\t\t\t\t.getTreedepartment()\r\n\t\t\t\t.then((res) => {\r\n\t\t\t\t\tif (res.data.code == 200) {\r\n\t\t\t\t\t\tdata.value = res.data.data;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tElMessage.error(res.data.msg);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t};\r\n\t\tconst propse = {\r\n\t\t\tlabel: 'depName',\r\n\t\t\tchildren: 'children',\r\n\t\t\tvalue: 'depId',\r\n\t\t};\r\n\t\tconst data = ref();\r\n\t\treturn {\r\n\t\t\tTid,\r\n\t\t\tdeepClone,\r\n\t\t\trules,\r\n\t\t\tuserId,\r\n\t\t\tdepartment,\r\n\t\t\tpropse,\r\n\t\t\tdata,\r\n\t\t\tdeleteAId,\r\n\t\t\tdeleteBId,\r\n\t\t\tdeleteCId,\r\n\t\t\tdeleteDId,\r\n\t\t\tdeleteA,\r\n\t\t\tdeleteB,\r\n\t\t\tdeleteC,\r\n\t\t\tdeleteD,\r\n\t\t\tmain,\r\n\t\t\tindex,\r\n\t\t\tdelect,\r\n\t\t\tRepair,\r\n\t\t\tStand,\r\n\t\t\tresetForm,\r\n\t\t\tsubmitForm,\r\n\t\t\ttitles,\r\n\t\t\tdialogVisible,\r\n\t\t\tdisabled,\r\n\t\t\tDailogtype,\r\n\t\t\tform,\r\n\t\t\topenDailog,\r\n\t\t\tSearch,\r\n\t\t\tactiveName,\r\n\t\t\tcategoryShow,\r\n\t\t\topencategory,\r\n\t\t\tregionShow,\r\n\t\t\topenRegion,\r\n\t\t\tUserShow,\r\n\t\t\topenUser,\r\n\t\t\tmaintenanceShow,\r\n\t\t\topenMaintenance,\r\n\t\t\tdetectShow,\r\n\t\t\topenDetect,\r\n\t\t\trepairShow,\r\n\t\t\topenRepair,\r\n\t\t\tstandardShow,\r\n\t\t\topenStandard,\r\n\t\t\tfileList,\r\n\t\t\thandleRemove,\r\n\t\t\thandlePreview,\r\n\t\t\thandleExceed,\r\n\t\t\tbeforeRemove,\r\n\t\t\tfull,\r\n\t\t\ttoggleFullscreen,\r\n\t\t\tFullScreen,\r\n\t\t\ttimeDate,\r\n\t\t\truleFormRef,\r\n\t\t};\r\n\t},\r\n});\r\n</script>\r\n<style scoped>\r\n.el-form-item {\r\n\twidth: 400px;\r\n}\r\n.formType:after {\r\n\tcontent: '';\r\n\twidth: 400px;\r\n}\r\n.formType {\r\n\tpadding: 20px 20px;\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n\tflex-wrap: wrap;\r\n}\r\n.el-form .el-form-item:last-of-type {\r\n\tmargin-bottom: 22px !important;\r\n}\r\n</style>\r\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== -diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue ---- a/src/components/equipmentDailog/Dailog.vue (revision 98e38073c372501331f1f399854d9e9690da979c) -+++ b/src/components/equipmentDailog/Dailog.vue (date 1660382056864) -@@ -324,22 +324,8 @@ - </el-table> - </el-tab-pane> - <el-tab-pane label="保养维修标准" name="six" v-if="Dailogtype"> -- <el-upload -- v-model:file-list="fileList" -- class="upload-demo" -- action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" -- multiple -- :on-preview="handlePreview" -- :on-remove="handleRemove" -- :before-remove="beforeRemove" -- :limit="3" -- :on-exceed="handleExceed" -- > -- <el-button type="primary">点击上传</el-button> -- <template #tip> -- <div class="el-upload__tip"></div> -- </template> -- </el-upload> -+ <uploaderFile :fileList="fileList" :systemName="'EQUIPMENT'" :disabled="disabled" -+ @successUploader="successUploader"></uploaderFile> - </el-tab-pane> - </el-tabs> - <template #footer> -@@ -374,8 +360,10 @@ - import { facilityManagementApi } from '/@/api/facilityManagement'; - import { goalManagementApi } from '/@/api/goalManagement'; - import { deepClone } from '/@/utils/other'; -+import uploaderFile from '/@/components/uploaderFile/index.vue'; - export default defineComponent({ -- components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog }, -+ components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, -+ detectDailog, repairDailog, standardDailog,uploaderFile }, - setup(props, { emit }) { - const dialogVisible = ref(false); - const ruleFormRef = ref<FormInstance>(); -@@ -415,9 +403,6 @@ - repairStatus: '', - - takecareStardardeDetailList: [ -- { -- filePath: '123', -- }, - ], - - nextCheckDate: '', -@@ -528,11 +513,61 @@ - .then((res) => { - if (res.data.code == 200) { - form.value = res.data.data; -+ -+ //初始化日期格式 -+ form.value.actualDestoryDate = timeC(form.value.actualDestoryDate); -+ form.value.actualRecoveryDate = timeC(form.value.actualRecoveryDate); -+ form.value.actualStopDate = timeC(form.value.actualStopDate); -+ form.value.destorySubmitDate = timeC(form.value.destorySubmitDate); -+ form.value.nextCheckDate = timeC(form.value.nextCheckDate); -+ form.value.nextTakecareDate = timeC(form.value.nextTakecareDate); -+ form.value.nextTestDate = timeC(form.value.nextTestDate); -+ form.value.previousCheckDate = timeC(form.value.previousCheckDate); -+ form.value.previousTakecareDate = timeC(form.value.previousTakecareDate); -+ form.value.previousTestDate = timeC(form.value.previousTestDate); -+ form.value.produceTime = timeC(form.value.produceTime); -+ form.value.recoverySubmitDate = timeC(form.value.recoverySubmitDate); -+ form.value.stopSubmitDate = timeC(form.value.stopSubmitDate); -+ form.value.useDate = timeC(form.value.useDate); -+ -+ fileList.value = (res.data.data.takecareStardardeDetailList?res.data.data.takecareStardardeDetailList:[]) -+ initFileListData() - } else { - ElMessage.error(res.data.msg); - } - }); - }; -+ const timeC = (timestamp: any) => { -+ let a = new Date(timestamp).getTime(); -+ const date = new Date(a); -+ const Y = date.getFullYear() + '-'; -+ const M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; -+ const D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '; -+ const h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; -+ const m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes(); -+ const s = date.getSeconds(); // 秒 -+ const dateString = Y + M + D + h + m +`:${s}`; -+ // console.log('dateString', dateString); // > dateString 2021-07-06 14:23 -+ return dateString; -+ }; -+ const initFileListData = async () => { -+ for(var a = 0;a<fileList.value.length;a++){ -+ fileList.value[a].name = fileList.value[a].filePath -+ } -+ } -+ // 上传成功组装数据 -+ const successUploader = (list) =>{ -+ fileList.value = list -+ const formFileList = [] -+ for(var a = 0;a<fileList.value.length;a++){ -+ formFileList.push( -+ { -+ filePath:fileList.value[a].fileName -+ } -+ ) -+ } -+ form.value.takecareStardardeDetailList = formFileList -+ } - const rules = reactive<FormRules>({ - qName: [], - positionNum: [], -@@ -628,6 +663,7 @@ - form.value.testDetailList = []; - form.value.repaireDetailList = []; - form.value.checkStandardeDetailList = []; -+ fileList.value = [] - dialogVisible.value = false; - }; - const activeName = ref('first'); -@@ -665,16 +701,7 @@ - standardShow.value.openDailog(title, data); - }; - // 上传 -- const fileList = ref<UploadUserFile[]>([ -- { -- name: 'element-plus-logo.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- { -- name: 'element-plus-logo2.svg', -- url: 'https://element-plus.org/images/element-plus-logo.svg', -- }, -- ]); -+ const fileList = ref([]); - - const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => { - console.log(file, uploadFiles); -@@ -845,6 +872,9 @@ - FullScreen, - timeDate, - ruleFormRef, -+ successUploader, -+ initFileListData, -+ timeC - }; - }, - }); -diff --git a/src/views/homeMenu/homeMenu.vue b/src/views/newHome/homeMenu.vue -rename from src/views/homeMenu/homeMenu.vue -rename to src/views/newHome/homeMenu.vue diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48__Default_Changelist_.xml deleted file mode 100644 index dbc0aad..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48__Default_Changelist_.xml +++ /dev/null @@ -1,4 +0,0 @@ -<changelist name="Uncommitted_changes_before_Update_at_2022_8_13_17_48_[Default_Changelist]" date="1660384095921" recycled="true" deleted="true"> - <option name="PATH" value="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_2022_8_13_17_48_[Default_Changelist]/shelved.patch" /> - <option name="DESCRIPTION" value="Uncommitted changes before Update at 2022/8/13 17:48 [Default Changelist]" /> -</changelist> \ No newline at end of file diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue index ddf34b4..4ebf282 100644 --- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue +++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue @@ -280,7 +280,6 @@ // 初始化表格数据 const initRectifyTableData = async () => { - debugger; if (state.rectifyData.params.serialCode.toString().length === 0) { let res = await hiddenRectifyApi().getHiddenRectifyList(state.rectifyData.params); if (res.data.code === '200') { diff --git a/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue b/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue index 121e878..a54d140 100644 --- a/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue +++ b/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue @@ -129,7 +129,6 @@ const getUploadUrl = async (rawFile: any) => { const res = await RFIDApi().getUploadUrl(rawFile.name); - debugger; state.RFIDForm.rfidImage = res.data.rfidImage; state.uploadUrl = res.data.uploadUrl; }; diff --git a/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue b/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue index 76c08c3..5618f5e 100644 --- a/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue +++ b/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue @@ -238,7 +238,7 @@ data.classGroupList = JSON.parse(JSON.stringify(classGroupList)); data.ifShowInspectTaskDialog = true; data.inspectPointConfirm = false; - data.title = '查看巡检任务'; + data.title = '查看巡检记录'; inspectRecordApi() .getInspectRecordById({ id: value.id, uuid: value.uuid }) .then((res) => { diff --git a/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue b/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue index 36292ce..f75b427 100644 --- a/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue +++ b/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue @@ -60,7 +60,7 @@ <el-table-column prop="execUserName" label="执行人" show-overflow-tooltip></el-table-column> <el-table-column property="taskStatus" label="任务状态"> <template #default="scope"> - <el-tag :type="scope.row.taskStatus === 1 ? 'info' : scope.row.taskStatus === 2 ? 'primary' : scope.row.taskStatus === 3 ? 'success' : 'danger'"> + <el-tag :type="scope.row.taskStatus === 1 ? 'info' : scope.row.taskStatus === 2 ? '' : scope.row.taskStatus === 3 ? 'success' : 'danger'"> <span> {{ parseNumber(scope.row.taskStatus, '任务状态') }} </span> @@ -170,12 +170,12 @@ } }, workTypeList: [ - { id: 1, name: '日常任务' }, + { id: 1, name: '单次任务' }, { id: 2, name: '周期任务' } ], resultStatusList: [ { id: 0, name: '正常' }, - { id: 1, name: '异常' } + { id: 1, name: '存在异常' } ], taskStatusList: [ { id: 1, name: '待巡检' }, diff --git a/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue b/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue index 48c420c..caac038 100644 --- a/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue +++ b/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue @@ -1,6 +1,6 @@ <template> <div class="system-add-menu-container"> - <el-dialog v-model="ifShowInspectTaskDialog" :title="title"> + <el-dialog v-model="ifShowInspectTaskDialog" :title="title" :close-on-click-modal="false"> <el-form :model="inspectTaskForm" label-width="120px" ref="inspectTaskFormRef" :rules="inspectTaskFormRules"> <el-row> <el-col :span="12" style="margin-bottom: 20px"> @@ -27,13 +27,15 @@ </el-select> </el-form-item> </el-col> - <el-col :span="12" style="margin-bottom: 20px"> + <el-col :span="12" style="margin-bottom: 20px" v-if="inspectTaskForm.workType === 2"> <el-form-item label="巡检周期" prop="checkCycle"> <el-input v-model="inspectTaskForm.checkCycle" @input="onVerifiyNumberInteger($event, 'checkCycle')" :disabled="!inspectPointConfirm" placeholder="请输入巡检周期" class="input-add"> <template #append> - <el-select v-model="inspectTaskForm.checkCycleUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> - <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> - </el-select> + <el-form-item prop="checkCycleUnit"> + <el-select v-model="inspectTaskForm.checkCycleUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> + <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> + </el-select> + </el-form-item> </template> </el-input> </el-form-item> @@ -42,9 +44,11 @@ <el-form-item label="提前通知时间" prop="noticeTime"> <el-input @input="onVerifiyNumberInteger($event, 'noticeTime')" v-model="inspectTaskForm.noticeTime" :disabled="!inspectPointConfirm" placeholder="请输入提前通知时间" class="input-add"> <template #append> - <el-select v-model="inspectTaskForm.noticeTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> - <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> - </el-select> + <el-form-item prop="noticeTimeUnit"> + <el-select v-model="inspectTaskForm.noticeTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> + <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> + </el-select> + </el-form-item> </template> </el-input> </el-form-item> @@ -53,16 +57,18 @@ <el-form-item label="有效时间" prop="validTime"> <el-input v-model="inspectTaskForm.validTime" @input="onVerifiyNumberInteger($event, 'validTime')" :disabled="!inspectPointConfirm" placeholder="请输入有效时间" class="input-add"> <template #append> - <el-select v-model="inspectTaskForm.validTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> - <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> - </el-select> + <el-form-item prop="noticeTimeUnit"> + <el-select v-model="inspectTaskForm.validTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位"> + <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option> + </el-select> + </el-form-item> </template> </el-input> </el-form-item> </el-col> <el-col :span="12" style="margin-bottom: 20px"> - <el-form-item label="周期开始时间" prop="firstStartTime"> - <el-date-picker v-model="inspectTaskForm.firstStartTime" :disabled="!inspectPointConfirm" placeholder="请选择周期开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" /> + <el-form-item label="任务开始时间" prop="firstStartTime"> + <el-date-picker v-model="inspectTaskForm.firstStartTime" :disabled="!inspectPointConfirm" placeholder="请选择任务开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" /> </el-form-item> </el-col> @@ -130,13 +136,15 @@ </el-form-item> </el-col> </el-row> - <div align="right" v-show="inspectPointConfirm"> - <el-button type="warning" @click="inspectPointDialog = false" size="default" plain>取消</el-button> + </el-form> + <template #footer> + <div v-if="inspectPointConfirm" class="dialog-footer"> + <el-button type="warning" @click="ifShowInspectTaskDialog = false" size="default" plain>取消</el-button> <el-button type="primary" @click="submitInspectTask()" size="default">确认</el-button> </div> - </el-form> + </template> </el-dialog> - <el-dialog v-model="inspectPointDialog" :title="pointTitle"> + <el-dialog v-model="inspectPointDialog" :title="pointTitle" :close-on-click-modal="false"> <el-form :model="inspectPointForm" label-width="150px" ref="inspectPointFormRef" :rules="inspectPointFormRules"> <el-form-item label="选择巡检点" prop="pointId"> <el-select v-model="inspectPointForm.pointId" @change="giveRegionAndRFID" class="input-add"> @@ -196,11 +204,10 @@ <script lang="ts"> import { reactive, toRefs, ref } from 'vue'; -import { RFIDApi } from '/@/api/intellectInspectSystem/RFID'; import { ElMessage } from 'element-plus/es'; import { inspectTaskApi } from '/@/api/intellectInspectSystem/inspectTask'; -import { facilityAreaApi } from '/@/api/intellectInspectSystem/facilityAreaManage'; import { verifiyNumberInteger } from '/@/utils/toolsValidate'; + interface dataState { title: string; pointTitle: string; @@ -284,6 +291,7 @@ name: 'inspectTaskDialog', setup(props: any, context: any) { const inspectTaskFormRef = ref(); + const inspectPointFormRef = ref(); const data = reactive<dataState>({ title: '', pointTitle: '', @@ -332,11 +340,21 @@ execClassgroupId: [{ required: true, message: '请选择巡检班组', trigger: 'change' }], execDepId: [{ required: true, message: '请选择巡检部门', trigger: 'blur' }], checkCycle: [{ required: true, message: '请填写巡检周期', trigger: 'blur' }], + checkCycleUnit: [{ required: true, message: '请选择巡检周期单位', trigger: 'change' }], noticeTime: [{ required: true, message: '请填写提前通知时间', trigger: 'blur' }], + noticeTimeUnit: [{ required: true, message: '请选择提前通知时间单位', trigger: 'change' }], validTime: [{ required: true, message: '请填写有效时间', trigger: 'blur' }], + validTimeUnit: [{ required: true, message: '请选择有效时间单位', trigger: 'change' }], firstStartTime: [{ required: true, message: '请选择周期开始时间', trigger: 'change' }] }, - inspectPointFormRules: {}, + inspectPointFormRules: { + pointId: [{ required: true, message: '请选择巡检点', trigger: 'change' }], + regionId: [{ required: true, message: '', trigger: 'change' }], + rfidId: [{ required: true, message: '', trigger: 'change' }], + quotaId: [{ required: true, message: '请选择巡检指标', trigger: 'change' }], + quotaUnit: [{ required: true, message: '请填写巡检指标单位', trigger: 'blur' }], + dataReportType: [{ required: true, message: '请选择巡检指标单位', trigger: 'change' }] + }, workTypeList: [], departmentList: [], timeList: [], @@ -461,61 +479,69 @@ } }; - const submitInspectPoint = async () => { - if (data.title === '新增巡检任务' && data.pointTitle === '新增巡检点') { - if (data.inspectTaskForm.points.length === 0) { - data.inspectPointForm.execSequence = 1; - } else { - data.inspectPointForm.execSequence = (data.inspectTaskForm.points[data.inspectTaskForm.points.length - 1].execSequence as number) + 1; - } - data.inspectTaskForm.points.push(data.inspectPointForm); - data.inspectPointDialog = false; - } else if (data.title === '新增巡检任务' && data.pointTitle === '修改巡检点') { - debugger; - let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence); - data.inspectTaskForm.points[result] = data.inspectPointForm; - data.inspectPointDialog = false; - } else if (data.title === '修改巡检任务' && data.pointTitle === '新增巡检点') { - data.inspectPointForm.unitId = data.inspectTaskForm.id; - if (data.inspectTaskForm.points.length === 0) { - data.inspectPointForm.execSequence = 1; - } else { - data.inspectPointForm.execSequence = (data.inspectTaskForm.points[data.inspectTaskForm.points.length - 1].execSequence as number) + 1; - } - let res = await inspectTaskApi().addChainOfInspectTask(data.inspectPointForm); - if (res.data.code === '200') { - ElMessage({ - type: 'success', - message: '巡检点新增成功', - duration: 2000 - }); - data.inspectPointDialog = false; - data.inspectTaskForm.points.push(data.inspectPointForm); + const submitInspectPoint = () => { + inspectPointFormRef.value.validate(async (valid: Boolean) => { + if (valid) { + if (data.title === '新增巡检任务' && data.pointTitle === '新增巡检点') { + if (data.inspectTaskForm.points.length === 0) { + data.inspectPointForm.execSequence = 1; + } else { + data.inspectPointForm.execSequence = (data.inspectTaskForm.points[data.inspectTaskForm.points.length - 1].execSequence as number) + 1; + } + data.inspectTaskForm.points.push(data.inspectPointForm); + data.inspectPointDialog = false; + } else if (data.title === '新增巡检任务' && data.pointTitle === '修改巡检点') { + let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence); + data.inspectTaskForm.points[result] = data.inspectPointForm; + data.inspectPointDialog = false; + } else if (data.title === '修改巡检任务' && data.pointTitle === '新增巡检点') { + data.inspectPointForm.unitId = data.inspectTaskForm.id; + if (data.inspectTaskForm.points.length === 0) { + data.inspectPointForm.execSequence = 1; + } else { + data.inspectPointForm.execSequence = (data.inspectTaskForm.points[data.inspectTaskForm.points.length - 1].execSequence as number) + 1; + } + let res = await inspectTaskApi().addChainOfInspectTask(data.inspectPointForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '巡检点新增成功', + duration: 2000 + }); + data.inspectPointDialog = false; + data.inspectTaskForm.points.push(data.inspectPointForm); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + } else { + data.inspectPointForm.unitId = data.inspectTaskForm.id; + let res = await inspectTaskApi().modChainOfInspectTask(data.inspectPointForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '巡检点修改成功', + duration: 2000 + }); + let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence); + data.inspectTaskForm.points[result] = data.inspectPointForm; + data.inspectPointDialog = false; + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + } } else { ElMessage({ type: 'warning', - message: res.data.msg + message: '请完善基本信息' }); } - } else { - data.inspectPointForm.unitId = data.inspectTaskForm.id; - let res = await inspectTaskApi().modChainOfInspectTask(data.inspectPointForm); - if (res.data.code === '200') { - ElMessage({ - type: 'success', - message: '巡检点修改成功', - duration: 2000 - }); - let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence); - data.inspectTaskForm.points[result] = data.inspectPointForm; - data.inspectPointDialog = false; - } else { - ElMessage({ - type: 'warning', - message: res.data.msg - }); - } - } + }); }; const deleteFlow = async (index: number, item: { id: number }) => { if (data.pointTitle === '新增巡检点') { @@ -612,6 +638,7 @@ deleteFlow, giveQuotaUnit, giveClassGroup, + inspectPointFormRef, onVerifiyNumberInteger, submitInspectTask, submitInspectPoint, diff --git a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue index e1f2ed4..af20c4e 100644 --- a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue +++ b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue @@ -175,7 +175,7 @@ } }, workTypeList: [ - { id: 1, name: '日常任务' }, + { id: 1, name: '单次任务' }, { id: 2, name: '周期任务' } ], quotaList: [], diff --git a/src/views/specialWorkSystem/workFlow/approveRule/components/approveRuleDialog.vue b/src/views/specialWorkSystem/workFlow/approveRule/components/approveRuleDialog.vue index 24c5d50..8ab712b 100644 --- a/src/views/specialWorkSystem/workFlow/approveRule/components/approveRuleDialog.vue +++ b/src/views/specialWorkSystem/workFlow/approveRule/components/approveRuleDialog.vue @@ -85,7 +85,6 @@ </el-card> </div> <div v-show="disabled"> - <!-- <el-button type="primary" size="default" @click="addFlow(index)">新增下一区域</el-button>--> <el-button type="primary" style="margin-left: 12px" size="default" @click="openApproveLevelDialog('修改', item)">修改</el-button> <el-button type="danger" size="default" @click="deleteApproveLevel(index, item)">删除</el-button> </div> @@ -94,11 +93,13 @@ </el-form-item> </el-col> </el-row> - <div align="right" v-show="disabled"> + </el-form> + <template #footer> + <div v-show="disabled" class="dialog-footer"> <el-button type="warning" @click="ifShowApproveRuleDialog = false" size="default" plain>取消</el-button> <el-button type="primary" @click="submitApproveRule()" size="default">确认</el-button> </div> - </el-form> + </template> </el-dialog> <approve-level-dialog ref="approveLevelDialogRef" @addApprovalLevel="achieveApprovalLevel"></approve-level-dialog> </div> @@ -325,7 +326,6 @@ const parseNumber = (type: string, value: number) => { if (type === '时间单位') { - debugger; return data.timeList.find((item) => item.id === value)?.name; } }; diff --git a/src/views/specialWorkSystem/workFlow/approveRule/index.vue b/src/views/specialWorkSystem/workFlow/approveRule/index.vue index 76ee2de..831170a 100644 --- a/src/views/specialWorkSystem/workFlow/approveRule/index.vue +++ b/src/views/specialWorkSystem/workFlow/approveRule/index.vue @@ -248,7 +248,6 @@ type: 'warning' }) .then(async () => { - debugger; let res = await approveRuleApi().deleteApproveRule(state.deleteList); if (res.data.code === '200') { ElMessage({ @@ -281,7 +280,6 @@ }; const handleSelectionChange = (val: Array<deleteType>) => { - debugger; state.deleteList.ids = val.map((item) => { return item.ruleId; }) as []; -- Gitblit v1.9.2