From 4f53bd7e81853d361c9b5bd96589b58bdadd7d84 Mon Sep 17 00:00:00 2001 From: z Date: Mon, 15 Jan 2024 18:00:19 +0800 Subject: [PATCH 1/2] init --- src/assets/js/asyncRouter.js | 10 + src/assets/js/data_dictionary.js | 7 + src/components/risk_add/index.vue | 13 +- src/request/continuous_improvement.js | 13 ++ .../enterprise_report/index.vue | 7 + .../hazard_analysis/components/analysis.vue | 76 +++++++ .../hazard_analysis/index.vue | 51 ++++- .../risk_analysis/components/analysis.vue | 146 ++++++++++++++ .../risk_analysis/index.vue | 189 ++++++++++++++++++ .../inventory_management/add.vue | 4 +- .../rectification/rectification.vue | 2 +- 11 files changed, 512 insertions(+), 6 deletions(-) create mode 100644 src/request/continuous_improvement.js create mode 100644 src/views/continuous_improvement/enterprise_report/index.vue create mode 100644 src/views/continuous_improvement/hazard_analysis/components/analysis.vue create mode 100644 src/views/continuous_improvement/risk_analysis/components/analysis.vue create mode 100644 src/views/continuous_improvement/risk_analysis/index.vue diff --git a/src/assets/js/asyncRouter.js b/src/assets/js/asyncRouter.js index a39cdce..4550006 100644 --- a/src/assets/js/asyncRouter.js +++ b/src/assets/js/asyncRouter.js @@ -568,6 +568,16 @@ export default [ }, ], }, + { + path: "/continuous_improvement/risk_analysis", + meta: { title: "风险分析", isSubMenu: false }, + component: "continuous_improvement/risk_analysis/index", + }, + { + path: "/continuous_improvement/enterprise_report", + meta: { title: "企业报告", isSubMenu: false }, + component: "continuous_improvement/enterprise_report/index", + }, ], }, { diff --git a/src/assets/js/data_dictionary.js b/src/assets/js/data_dictionary.js index b72b135..ac1b35b 100644 --- a/src/assets/js/data_dictionary.js +++ b/src/assets/js/data_dictionary.js @@ -83,6 +83,13 @@ export const layoutFnGetRiskLevel = async () => { }); return ref(resData.list); }; +// 风险成因 +export const layoutFnGetRiskCauses = async () => { + const resData = await getLevels({ + DICTIONARIES_ID: "1bacbc4c1f6544718519c0d470dfeb62", + }); + return ref(resData.list); +}; // 部门级别 export const layoutFnGetDepartmentLevel = async () => { const resData = await getLevels({ diff --git a/src/components/risk_add/index.vue b/src/components/risk_add/index.vue index d3dba8c..f748067 100644 --- a/src/components/risk_add/index.vue +++ b/src/components/risk_add/index.vue @@ -1,5 +1,5 @@ + @@ -241,10 +242,14 @@ const props = defineProps({ type: Boolean, default: false, }, + rules: { + type: Object, + default: () => ({}), + }, }); const emits = defineEmits(["update:form"]); const form = useVModel(props, "form", emits); -const rules = { +const defineRules = { USER_ID: [{ required: true, message: "管控责任人不能为空", trigger: "blur" }], RISK_DESCR: [ { required: true, message: "存在风险不能为空", trigger: "blur" }, @@ -285,6 +290,7 @@ const rules = { IDENTIFICATION_ID: [ { required: true, message: "辨识部位不能为空", trigger: "change" }, ], + ...props.rules, }; const formRef = ref(null); const infoIsEmpty = ref(isEmpty(props.info)); @@ -317,6 +323,9 @@ watch( ([LIKELIHOOD, EXPOSURE, CONSEQUENCE]) => { if (!LIKELIHOOD || !EXPOSURE || !CONSEQUENCE) return; fnGetLevelName(LIKELIHOOD, EXPOSURE, CONSEQUENCE); + }, + { + immediate: true, } ); const fnGetUnitList = async () => { diff --git a/src/request/continuous_improvement.js b/src/request/continuous_improvement.js new file mode 100644 index 0000000..d2f509b --- /dev/null +++ b/src/request/continuous_improvement.js @@ -0,0 +1,13 @@ +import { post } from "@/request/axios.js"; + +export const setHazardAnalysisSubmit = (params) => + post("/riskpointanalysis/add", params); // 隐患分析提交 +export const getRiskAnalysisList = (params) => + post("/riskpointanalysis/list", params); // 风险分析列表 +export const setRiskAnalysisRepulse = (params) => + post("/riskpointanalysis/delete", params); // 风险分析打回 +export const setRiskAnalysisAdopt = (params) => + post("/riskpointanalysis/apply", params); // 风险分析通过 +// 企业报告 start + +// 企业报告 end diff --git a/src/views/continuous_improvement/enterprise_report/index.vue b/src/views/continuous_improvement/enterprise_report/index.vue new file mode 100644 index 0000000..43a96e1 --- /dev/null +++ b/src/views/continuous_improvement/enterprise_report/index.vue @@ -0,0 +1,7 @@ + + + + + diff --git a/src/views/continuous_improvement/hazard_analysis/components/analysis.vue b/src/views/continuous_improvement/hazard_analysis/components/analysis.vue new file mode 100644 index 0000000..3afcaa7 --- /dev/null +++ b/src/views/continuous_improvement/hazard_analysis/components/analysis.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/src/views/continuous_improvement/hazard_analysis/index.vue b/src/views/continuous_improvement/hazard_analysis/index.vue index 4d8ea3e..b15039a 100644 --- a/src/views/continuous_improvement/hazard_analysis/index.vue +++ b/src/views/continuous_improvement/hazard_analysis/index.vue @@ -124,11 +124,18 @@ > 查看 - 分析 + + 分析 + + @@ -139,6 +146,9 @@ import useListData from "@/assets/js/useListData.js"; import LayoutDepartment from "@/components/department/index.vue"; import { getHiddenDangerList } from "@/request/hidden_danger_government.js"; import { layoutFnGetHazardLevel } from "@/assets/js/data_dictionary.js"; +import { nextTick, reactive } from "vue"; +import Analysis from "./components/analysis.vue"; +import { getRiskControlLedgerView } from "@/request/risk_control.js"; const stateList = [ { NAME: "未整改", ID: "1" }, @@ -152,6 +162,27 @@ const { list, pagination, searchForm, fnGetData, fnResetPagination } = useListData(getHiddenDangerList, { otherParams: { STATE: 4, DISPOSESTATE: "-1", ANALYSIS: 1 }, }); +const data = reactive({ + analysisDialog: { + visible: false, + form: { + DEPARTMENT_ID: "", + USER_ID: "", + RISK_UNIT_ID: "", + IDENTIFICATION_ID: "", + RISK_DESCR: "", + LIKELIHOOD: "", + EXPOSURE: "", + CONSEQUENCE: "", + LEVEL_NAME: "", + DANGER: "", + MEASURES: "", + ACCIDENTS: [], + EME_MEASURES: "", + IS_NEW: 1, + }, + }, +}); const fnGetDataTransfer = () => { fnGetData({ STARTTIME: searchForm.value.dates?.[0], @@ -167,6 +198,24 @@ const fnResetPaginationTransfer = () => { }); }; const hazardLevelList = await layoutFnGetHazardLevel(); +const fnAnalysis = async ({ + HIDDEN_ID, + RISKPOINT_ID, + HIDDENDESCR, + RECTIFYDESCR, +}) => { + data.analysisDialog.visible = true; + await nextTick(); + if (RISKPOINT_ID) { + const resData = await getRiskControlLedgerView({ RISKPOINT_ID }); + resData.pd.IS_NEW = 0; + data.analysisDialog.form = resData.pd; + data.analysisDialog.form.ACCIDENTS = resData.pd.ACCIDENTS.split(","); + data.analysisDialog.form.RISK_DESCR += HIDDENDESCR; + data.analysisDialog.form.MEASURES += RECTIFYDESCR; + } + data.analysisDialog.form.HIDDEN_ID = HIDDEN_ID; +}; diff --git a/src/views/continuous_improvement/risk_analysis/components/analysis.vue b/src/views/continuous_improvement/risk_analysis/components/analysis.vue new file mode 100644 index 0000000..b4e9050 --- /dev/null +++ b/src/views/continuous_improvement/risk_analysis/components/analysis.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/src/views/continuous_improvement/risk_analysis/index.vue b/src/views/continuous_improvement/risk_analysis/index.vue new file mode 100644 index 0000000..6bb2d23 --- /dev/null +++ b/src/views/continuous_improvement/risk_analysis/index.vue @@ -0,0 +1,189 @@ + + + + + diff --git a/src/views/hazard_investigation/inventory_management/add.vue b/src/views/hazard_investigation/inventory_management/add.vue index 0ab7db4..95bcd9e 100644 --- a/src/views/hazard_investigation/inventory_management/add.vue +++ b/src/views/hazard_investigation/inventory_management/add.vue @@ -343,7 +343,7 @@ const fnGetData = async () => { data.form = resData.pd; data.form.dates = [resData.pd.START_DATE, resData.pd.END_DATE]; data.list = resData.varList; - data.listAll = resData.varList; + data.listAll = [...resData.varList]; }; fnGetData(); const fnGetInspectionItems = async () => { @@ -389,7 +389,7 @@ const fnGetDataFilter = () => { item.USERNAME?.indexOf(keyword) > -1 ); } else { - data.list = data.listAll; + data.list = [...data.listAll]; } fnTableSelection(); }; diff --git a/src/views/hidden_danger_government/rectification/rectification.vue b/src/views/hidden_danger_government/rectification/rectification.vue index a5b539d..c613075 100644 --- a/src/views/hidden_danger_government/rectification/rectification.vue +++ b/src/views/hidden_danger_government/rectification/rectification.vue @@ -476,7 +476,7 @@ watch( } ); const fnChoice = (item) => { - data.RECTIFYDESCR = item.RECTIFYDESCR; + data.form.RECTIFYDESCR = item.RECTIFYDESCR; }; const fnSubmit = debounce( 1000, From 9bd893677317ba13c46e2b3818522e970b6d2e95 Mon Sep 17 00:00:00 2001 From: z Date: Tue, 16 Jan 2024 18:03:59 +0800 Subject: [PATCH 2/2] init --- package-lock.json | 148 +++ package.json | 2 + src/assets/images/print/check.png | Bin 0 -> 264 bytes src/assets/images/print/cover-bg.png | Bin 0 -> 59151 bytes src/assets/images/print/error.png | Bin 0 -> 254 bytes src/assets/images/print/line.png | Bin 0 -> 122 bytes src/assets/images/print/waring.png | Bin 0 -> 444 bytes src/assets/js/asyncRouter.js | 53 ++ src/components/risk_view/index.vue | 84 ++ src/components/table/index.vue | 5 + src/request/continuous_improvement.js | 23 +- src/request/statistical_analysis.js | 10 + .../components/conclusion.vue | 76 ++ .../enterprise_report/components/other.vue | 76 ++ .../enterprise_report/index.vue | 888 +++++++++++++++++- .../risk_analysis/components/analysis.vue | 69 +- .../risk_analysis_record/components/view.vue | 37 + .../risk_analysis_record/index.vue | 165 ++++ .../components/inspection_record_view.vue | 92 +- .../courseware/view.vue | 2 +- .../detection_situation/index.vue | 122 +++ .../detection_situation/print.vue | 62 ++ .../hazard_statistics/index.vue | 184 ++++ .../usage_situation/index.vue | 138 +++ 24 files changed, 2123 insertions(+), 113 deletions(-) create mode 100644 src/assets/images/print/check.png create mode 100644 src/assets/images/print/cover-bg.png create mode 100644 src/assets/images/print/error.png create mode 100644 src/assets/images/print/line.png create mode 100644 src/assets/images/print/waring.png create mode 100644 src/components/risk_view/index.vue create mode 100644 src/request/statistical_analysis.js create mode 100644 src/views/continuous_improvement/enterprise_report/components/conclusion.vue create mode 100644 src/views/continuous_improvement/enterprise_report/components/other.vue create mode 100644 src/views/continuous_improvement/risk_analysis_record/components/view.vue create mode 100644 src/views/continuous_improvement/risk_analysis_record/index.vue create mode 100644 src/views/statistical_analysis/detection_situation/index.vue create mode 100644 src/views/statistical_analysis/detection_situation/print.vue create mode 100644 src/views/statistical_analysis/hazard_statistics/index.vue create mode 100644 src/views/statistical_analysis/usage_situation/index.vue diff --git a/package-lock.json b/package-lock.json index c24d045..4a2e42a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,8 @@ "axios": "^1.6.3", "dayjs": "^1.11.10", "element-plus": "^2.4.4", + "html2canvas": "^1.4.1", + "jspdf": "^2.5.1", "lodash-es": "^4.17.21", "mitt": "^3.0.1", "normalize.css": "^8.0.1", @@ -580,6 +582,17 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/runtime": { + "version": "7.23.8", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.23.8.tgz", + "integrity": "sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/template": { "version": "7.22.15", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", @@ -1305,6 +1318,12 @@ "undici-types": "~5.26.4" } }, + "node_modules/@types/raf": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/@types/raf/-/raf-3.4.3.tgz", + "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", + "optional": true + }, "node_modules/@types/sortablejs": { "version": "1.15.7", "resolved": "https://registry.npmmirror.com/@types/sortablejs/-/sortablejs-1.15.7.tgz", @@ -1879,6 +1898,17 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, "node_modules/autoprefixer": { "version": "10.4.16", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", @@ -2021,6 +2051,17 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, "node_modules/builtins": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", @@ -2113,6 +2154,31 @@ } ] }, + "node_modules/canvg": { + "version": "3.0.10", + "resolved": "https://registry.npmmirror.com/canvg/-/canvg-3.0.10.tgz", + "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/canvg/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -2218,6 +2284,13 @@ "dev": true, "peer": true }, + "node_modules/core-js": { + "version": "3.35.0", + "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.35.0.tgz", + "integrity": "sha512-ntakECeqg81KqMueeGJ79Q5ZgQNR+6eaE8sxGCx62zMbAIj65q+uYvatToew3m6eAGdU4gNZwpZ34NMe4GYswg==", + "hasInstallScript": true, + "optional": true + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -2354,6 +2427,12 @@ "integrity": "sha512-l32Xp/TLgWb8ReqbVJAFIvXmY7go4nTxxlWiAFyhoQw9RKEOHBZNnyGvJWqDVSPmq3Y9HlM4npqF/T6VMOXhww==", "deprecated": "dommatrix is no longer maintained. Please use @thednp/dommatrix." }, + "node_modules/dompurify": { + "version": "2.4.7", + "resolved": "https://registry.npmmirror.com/dompurify/-/dompurify-2.4.7.tgz", + "integrity": "sha512-kxxKlPEDa6Nc5WJi+qRgPbOAbgTpSULL+vI3NUXsZMlkJxTqYI9wg5ZTay2sFrdZRWHPWNi+EdAhcJf81WtoMQ==", + "optional": true + }, "node_modules/electron-to-chromium": { "version": "1.4.617", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.617.tgz", @@ -3124,6 +3203,11 @@ "reusify": "^1.0.4" } }, + "node_modules/fflate": { + "version": "0.4.8", + "resolved": "https://registry.npmmirror.com/fflate/-/fflate-0.4.8.tgz", + "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==" + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -3909,6 +3993,23 @@ "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", "dev": true }, + "node_modules/jspdf": { + "version": "2.5.1", + "resolved": "https://registry.npmmirror.com/jspdf/-/jspdf-2.5.1.tgz", + "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==", + "dependencies": { + "@babel/runtime": "^7.14.0", + "atob": "^2.1.2", + "btoa": "^1.2.1", + "fflate": "^0.4.8" + }, + "optionalDependencies": { + "canvg": "^3.0.6", + "core-js": "^3.6.0", + "dompurify": "^2.2.0", + "html2canvas": "^1.0.0-rc.5" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -4386,6 +4487,12 @@ } } }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -4627,6 +4734,15 @@ } ] }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmmirror.com/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -4639,6 +4755,11 @@ "node": ">=8.10.0" } }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, "node_modules/regexp.prototype.flags": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", @@ -4726,6 +4847,15 @@ "node": ">=0.10.0" } }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true, + "engines": { + "node": ">= 0.8.15" + } + }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -4936,6 +5066,15 @@ "node": ">=0.10.0" } }, + "node_modules/stackblur-canvas": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/stackblur-canvas/-/stackblur-canvas-2.6.0.tgz", + "integrity": "sha512-8S1aIA+UoF6erJYnglGPug6MaHYGo1Ot7h5fuXx4fUPvcvQfcdw2o/ppCse63+eZf8PPidSu4v1JnmEVtEDnpg==", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -5062,6 +5201,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/text-segmentation": { "version": "1.0.3", "resolved": "https://registry.npmmirror.com/text-segmentation/-/text-segmentation-1.0.3.tgz", diff --git a/package.json b/package.json index 2433df9..da0bcef 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,8 @@ "axios": "^1.6.3", "dayjs": "^1.11.10", "element-plus": "^2.4.4", + "html2canvas": "^1.4.1", + "jspdf": "^2.5.1", "lodash-es": "^4.17.21", "mitt": "^3.0.1", "normalize.css": "^8.0.1", diff --git a/src/assets/images/print/check.png b/src/assets/images/print/check.png new file mode 100644 index 0000000000000000000000000000000000000000..be6f49561e387c7be5192505c46725f5d41b1411 GIT binary patch literal 264 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/print/error.png b/src/assets/images/print/error.png new file mode 100644 index 0000000000000000000000000000000000000000..be59b3e42f77b6195e6c60f55310a269a6874e85 GIT binary patch literal 254 zcmVPx#xJg7oR5(wqlQ9ayKomsZ+`!IWuc9c3MbO$SiC`^)mfpbL#=@(J2XM^7M&gQO^g!c2Cm%7c}j818fg~D=?CDtAf~`07qab=@EKT2PPx$c1c7*R5(wilRIlvVGxF&r`#Y43EQ~1g{|p>HvRww1#gv=xe&EcFbY~)DvKhB zc3w&=Eo@VnCXf(xB}o|s(GUnJEynYO?=0V55Mie|FlXjDGw-}d#taAhBjOlv7ia+! zKm+&%>;fG%J$umyh=_B*Bj7pkLH&~|BO=vZ1nvN@)%P`_2Z)Gy-~n(({W)s0h&T!? z1D`AS!&Gw!h=`Nb7uJE(>bJT%A}#|b)J~C0t8D=1)s-6X3^-8J_`QgT+Zk|wAb$%u zt6r@EUx6#?_x}Vmfv(y#3$(AM{rVzL&{mg5y!%lJJv|O!=Ma!Z+|B~_-8hTbQj__<1$owpM@Tt1*jQYDcS-MJ^V6n(eR?VxxC3USd z(oNtVa6wIX9*T%)10S*=4*?1OsTKZ+w&y-xb0NenkGJGF+ m2fVDz(=A6E0*o5{U%9_!^q?ygH7Hg90000 + + + {{ info.RISKUNITNAME }} + + + {{ info.PARTSNAME }} + + + {{ info.RISK_DESCR }} + + + 完全可以预料 + 相当可能 + 可能,但不经常 + 可能性小,完全意外 + 很不可能,可以设想 + 极不可能 + 实际不可能 + + + {{ info.LIKELIHOOD }} + + + 连续暴露 + 每天工作时间内暴露 + 每周一次或偶然暴露 + 每月一次暴露,完全意外 + 每年几次暴露 + 非常罕见暴露 + + + {{ info.EXPOSURE }} + + + 10人以上死亡 + 3~9人死亡 + 1~2人死亡 + 严重 + 重大,伤残 + 引人注意 + + + {{ info.CONSEQUENCE }} + + + {{ info.DNAME5 }} + + + {{ info.DANGER }} + + + {{ info.MEASURES }} + + + {{ info.DEPT_NAME_ALL }} + + + {{ info.USER_ID }} + + + {{ info.ACCIDENTS_NAME }} + + + {{ info.EME_MEASURES }} + + + + + + + + diff --git a/src/components/table/index.vue b/src/components/table/index.vue index 6e64150..b55247c 100644 --- a/src/components/table/index.vue +++ b/src/components/table/index.vue @@ -14,6 +14,7 @@ :show-summary="showSummary" :summary-method="summaryMethod" :span-method="spanMethod" + :default-expand-all="defaultExpandAll" @row-click="rowClick" @row-dblclick="rowDblclick" > @@ -79,6 +80,10 @@ const props = defineProps({ type: Boolean, default: false, }, + defaultExpandAll: { + type: Boolean, + default: false, + }, rowKey: { type: [String, Function], }, diff --git a/src/request/continuous_improvement.js b/src/request/continuous_improvement.js index d2f509b..24df9db 100644 --- a/src/request/continuous_improvement.js +++ b/src/request/continuous_improvement.js @@ -8,6 +8,27 @@ export const setRiskAnalysisRepulse = (params) => post("/riskpointanalysis/delete", params); // 风险分析打回 export const setRiskAnalysisAdopt = (params) => post("/riskpointanalysis/apply", params); // 风险分析通过 +export const getRiskAnalysisRecordList = (params) => + post("/riskpoint/getLogs", params); // 风险分析记录列表 +export const getRiskAnalysisRecordView = (params) => + post("/riskpointanalysis/getInfo", params); // 风险分析记录查看 // 企业报告 start - +export const getEnterpriseReport1 = (params) => + post("/corpinfo/getDiagnosis", params); +export const getEnterpriseReport2 = (params) => + post("/jobEvaluation/counlistPaget?showCount=1000¤tPage=1", params); +export const getEnterpriseReport3 = (params) => + post("/studytask/list?showCount=100¤tPage=1", params); +export const getEnterpriseReport4 = (params) => + post("/confinedspace/getDiagnosis", params); +export const getEnterpriseReport5 = (params) => + post("/performanceexamine_dept/listAll", params); +export const getEnterpriseReport6 = (params) => + post("/performanceexamine_user/listAll", params); +export const getEnterpriseReportConclusion = (params) => + post("/corpadvice/listAll", params); // 企业报告结论 +export const setEnterpriseReportConclusionEdit = (params) => + post("/corpadvice/edit", params); // 企业报告结论编辑 +export const setEnterpriseReportConclusionAdd = (params) => + post("/corpadvice/add", params); // 企业报告结论新增 // 企业报告 end diff --git a/src/request/statistical_analysis.js b/src/request/statistical_analysis.js new file mode 100644 index 0000000..afa2660 --- /dev/null +++ b/src/request/statistical_analysis.js @@ -0,0 +1,10 @@ +import { post } from "@/request/axios.js"; + +export const getHazardStatisticsList = (params) => + post("/statistics/gostatistics", params); // 隐患统计列表 +export const getDetectionSituationList = (params) => + post("/jobEvaluation/counlistPaget", params); // 员工日常检测情况列表 +export const getDetectionSituationListTime = (params) => + post("/liststatistics/getTimeAstrict", params); // 员工日常检测情况列表时间 +export const getUsageSituationList = (params) => + post("/liststatistics/checkSituation", params); // 员工使用情况分析列表 diff --git a/src/views/continuous_improvement/enterprise_report/components/conclusion.vue b/src/views/continuous_improvement/enterprise_report/components/conclusion.vue new file mode 100644 index 0000000..574ce59 --- /dev/null +++ b/src/views/continuous_improvement/enterprise_report/components/conclusion.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/src/views/continuous_improvement/enterprise_report/components/other.vue b/src/views/continuous_improvement/enterprise_report/components/other.vue new file mode 100644 index 0000000..89910d8 --- /dev/null +++ b/src/views/continuous_improvement/enterprise_report/components/other.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/src/views/continuous_improvement/enterprise_report/index.vue b/src/views/continuous_improvement/enterprise_report/index.vue index 43a96e1..b101742 100644 --- a/src/views/continuous_improvement/enterprise_report/index.vue +++ b/src/views/continuous_improvement/enterprise_report/index.vue @@ -1,7 +1,889 @@ - + + + diff --git a/src/views/continuous_improvement/risk_analysis/components/analysis.vue b/src/views/continuous_improvement/risk_analysis/components/analysis.vue index b4e9050..a2b072c 100644 --- a/src/views/continuous_improvement/risk_analysis/components/analysis.vue +++ b/src/views/continuous_improvement/risk_analysis/components/analysis.vue @@ -1,70 +1,6 @@