From 3ad1304f156637f8c91cf124445426cae0cba74e Mon Sep 17 00:00:00 2001 From: kongyeqing <2697454777@qq.com> Date: Fri, 14 Jul 2023 17:17:34 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=96=B0=E5=A2=9E=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=8E=A8=E8=BF=9B=E6=9C=BA=E5=88=B6=EF=BC=8C=E4=B8=89=E5=8D=A1?= =?UTF-8?q?=E7=AE=A1=E7=90=86=EF=BC=8C=E5=A5=96=E6=83=A9=E6=9C=BA=E5=88=B6?= =?UTF-8?q?=EF=BC=8C=E7=A7=AF=E5=88=86=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mock/selfAssessment.ts | 236 ++++++ src/mock/standard.ts | 737 ++++++++++++++++++ src/router/index.ts | 103 +++ src/service/emergencyCard.service.ts | 46 ++ src/service/integralCenter.service.ts | 16 + src/service/integralEvent.service.ts | 16 + src/service/integralExchange.service.ts | 37 + src/service/integralExchangeRecord.service.ts | 16 + src/service/integralMall.service.ts | 41 + src/service/integralRule.service.ts | 42 + src/service/leader.service.ts | 47 ++ src/service/managementSystem.service.ts | 47 ++ src/service/programme.service.ts | 46 ++ src/service/rewardsRecord.service.ts | 41 + src/service/riskCard.service.ts | 46 ++ src/service/safeCard.service.ts | 46 ++ src/service/selfAssessment.service.ts | 41 + src/service/trainRecords.service.ts | 36 + src/service/user.service.ts | 15 + src/store/index.ts | 46 +- src/views/blank.component.vue | 37 +- src/views/integral/center.component.vue | 191 +++++ src/views/integral/common.component.html | 72 ++ src/views/integral/event.component.vue | 189 +++++ .../integral/exchange/exchange.component.html | 98 +++ .../integral/exchange/exchange.component.vue | 479 ++++++++++++ .../exchange/exchangeRecord.component.vue | 266 +++++++ src/views/integral/mall.component.vue | 388 +++++++++ src/views/integral/rule.component.vue | 340 ++++++++ .../rewardsRecord.component.html | 89 +++ .../rewardsRecord/rewardsRecord.component.vue | 485 ++++++++++++ .../selfAssessment.component.html | 129 +++ .../selfAssessment.component.vue | 628 +++++++++++++++ .../risk/assessment/work/work.component.html | 1 - src/views/threecards/common.component.html | 99 +++ .../threecards/emergencyCard.component.vue | 650 +++++++++++++++ src/views/threecards/riskCard.component.vue | 530 +++++++++++++ src/views/threecards/safeCard.component.vue | 449 +++++++++++ src/views/workprogress/common.component.html | 109 +++ src/views/workprogress/leader.component.vue | 588 ++++++++++++++ .../managementSystem.component.vue | 458 +++++++++++ .../workprogress/programme.component.vue | 460 +++++++++++ .../workprogress/trainRecords.component.vue | 536 +++++++++++++ 43 files changed, 8968 insertions(+), 4 deletions(-) create mode 100644 src/mock/selfAssessment.ts create mode 100644 src/mock/standard.ts create mode 100644 src/service/emergencyCard.service.ts create mode 100644 src/service/integralCenter.service.ts create mode 100644 src/service/integralEvent.service.ts create mode 100644 src/service/integralExchange.service.ts create mode 100644 src/service/integralExchangeRecord.service.ts create mode 100644 src/service/integralMall.service.ts create mode 100644 src/service/integralRule.service.ts create mode 100644 src/service/leader.service.ts create mode 100644 src/service/managementSystem.service.ts create mode 100644 src/service/programme.service.ts create mode 100644 src/service/rewardsRecord.service.ts create mode 100644 src/service/riskCard.service.ts create mode 100644 src/service/safeCard.service.ts create mode 100644 src/service/selfAssessment.service.ts create mode 100644 src/service/trainRecords.service.ts create mode 100644 src/service/user.service.ts create mode 100644 src/views/integral/center.component.vue create mode 100644 src/views/integral/common.component.html create mode 100644 src/views/integral/event.component.vue create mode 100644 src/views/integral/exchange/exchange.component.html create mode 100644 src/views/integral/exchange/exchange.component.vue create mode 100644 src/views/integral/exchange/exchangeRecord.component.vue create mode 100644 src/views/integral/mall.component.vue create mode 100644 src/views/integral/rule.component.vue create mode 100644 src/views/reward/rewardsRecord/rewardsRecord.component.html create mode 100644 src/views/reward/rewardsRecord/rewardsRecord.component.vue create mode 100644 src/views/reward/selfAssessment/selfAssessment.component.html create mode 100644 src/views/reward/selfAssessment/selfAssessment.component.vue create mode 100644 src/views/threecards/common.component.html create mode 100644 src/views/threecards/emergencyCard.component.vue create mode 100644 src/views/threecards/riskCard.component.vue create mode 100644 src/views/threecards/safeCard.component.vue create mode 100644 src/views/workprogress/common.component.html create mode 100644 src/views/workprogress/leader.component.vue create mode 100644 src/views/workprogress/managementSystem.component.vue create mode 100644 src/views/workprogress/programme.component.vue create mode 100644 src/views/workprogress/trainRecords.component.vue diff --git a/src/mock/selfAssessment.ts b/src/mock/selfAssessment.ts new file mode 100644 index 0000000..55e6016 --- /dev/null +++ b/src/mock/selfAssessment.ts @@ -0,0 +1,236 @@ +export default [ + { + title: "1.工作推进机制(10 分)", + key: 1, + reject:false, + score:0, + tableData: [ + { + gradeB: "成立领导机构(2分)", + key:1_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:2, + + }, + { + gradeB: "编制实施方案(2分)", + key:1_2, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:2, + + }, + { + gradeB: "开展全员培训(4分)", + key:1_3, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:4, + + }, + { + gradeB: "完善管理制度(2分)", + key:1_4, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:2, + + }, + ], + }, + { + title:"2.安全风险分级管控(20 分)", + key:2, + reject:false, + score:0, + tableData:[ + { + gradeB: "划分安全风险分析单元(5 分)", + key:2_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:5, + + }, + { + gradeB: "辨识评估安全风险(5 分)", + key:2_2, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:5, + + }, + { + gradeB: "绘制安全风险空间分布图(2 分)", + key:2_3, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:2, + + }, + { + gradeB: "制定管控措施(4 分)", + key:2_4, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:4, + + }, + { + gradeB: "实施管控措施(4 分)", + key:2_5, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:4, + + } + ] + }, + { + title:"3.隐患排查治理(24 分)", + key:3, + reject:false, + score:0, + tableData:[ + { + gradeB: "明确隐患排查任务(5分)", + key:3_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:5, + + }, + { + gradeB: "开展隐患排查(14分)", + key:3_2, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:14, + + }, + { + gradeB: "隐患治理验收(5分)", + key:3_3, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:5, + + }, + ] + }, + { + title:"4.信息化系统(30 分)", + key:4, + reject:false, + score:0, + tableData:[ + { + gradeB: "信息化系统建设要求(30分)", + key:4_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:30, + }, + + ] + }, + { + title:"5.激励约束机制(6 分)", + key:5, + reject:false, + score:0, + tableData:[ + { + gradeB: "激励约束(6分)", + key:5_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:6, + }, + + ] + }, + { + title:"6.持续改进提升(10 分)", + key:6, + reject:false, + score:0, + tableData:[ + { + gradeB: "动态评估(10分)", + key:6_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:10, + + + }, + + ] + }, + { + title:"7.提升功能(10 分)", + key:7, + reject:false, + score:0, + tableData:[ + { + gradeB: "提升功能(10分)", + key:7_1, + deductPoints: "--", + getPoints: "--", + record: "", + pointFlag:false, + recordFlag:false, + score:10, + + }, + ] + }, +]; diff --git a/src/mock/standard.ts b/src/mock/standard.ts new file mode 100644 index 0000000..0c1a7b1 --- /dev/null +++ b/src/mock/standard.ts @@ -0,0 +1,737 @@ +export default { + 1_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"企业应建立双重预防机制建设领导机构,主要负责人任组长,成员应包括分管负责人及各部门(车间)负责人,并明确各自职责。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "下发的正式文件、安全生产责任制度。", + }, + { + title: "询问", + content:"企业主要负责人、分管负责人及各部门(车间)负责人是否掌握双重预防机制建设基 本要求及应履行的主要职责。" + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.未以正式文件明确双重预防机制建设领导机构的,扣 1 分。" + }, + { + content:"2.企业主要负责人未担任组长的,扣 2 分。" + }, + { + content:"3.未明确领导机构职责的,扣 1 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"企业主要负责人没有主持研究双重预防机制建设重大问题的,评估为不合格。" + }, + ], + }, + ], + }, + 1_2:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"企业应制定全员参与的双重预防机制建设实施方案,明确工作目标、任务、实施步骤、进度安排等,做到责任层层分解。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "查阅实施方案和相关记录等,并核对实施情况。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.未制定实施方案的,扣 2 分。" + }, + { + content:"2.未做到负有安全生产责任的岗位全员参与,每缺一个岗位扣 1 分。" + }, + { + content:"3.实施方案未明确工作目标、任务、实施步骤、进度安排等,一项扣0.5 分;实施方案未进行层层分解的,扣 2 分。" + }, + ], + }, + ], + }, + 1_3:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应制定培训计划,明确培训学时、培训内容、参加人员、考核方式等。" + }, + { + content:"2.企业应组织开展培训,主要培训双重预防机制建设的思路、安全风险分析清单编制流程、信息化系统操作使用等内容。" + }, + { + content:"3.培训考核结果应记入培训档案。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "培训计划、培训记录与档案、培训教育制度。", + }, + { + title: "抽查问询", + content: "随机抽查、问询各层级、各岗位人员是否掌握双重预防机制培训内容。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.企业未制定培训计划的,扣 1 分。" + }, + { + content:"2.无培训记录的,扣 2 分。" + }, + { + content:"3.未对负有安全生产责任的岗位实现全员培训的,扣 2 分。" + }, + { + content:"4.随机抽查的人员不掌握相关培训内容的,一人扣 0.5 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"抽查至少50%的中层以上管理人员,有20%以上未参加培训的,评估为不合格。" + }, + ], + }, + ], + }, + 1_4:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应结合双重预防机制建设相关要求,制修订安全生产责任制、安全风险分级管控、隐患排查治理、培训教育、奖惩管理等相关管理制度。" + }, + { + content:"2.制度文件应符合企业实际、具有可操作性,并在岗位得到有效执行。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "1.相关制度文件。2.制度发放、传达和执行记录。", + }, + { + title: "抽查问询", + content: "各部门/岗位是否已获取有效的相关制度文件并有效执行。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.无相关管理制度的或未按照双重预防机制相关要求,制修订管理制度的,一项扣 1 分。" + }, + { + content:"2.制度文件未有效执行的,扣 1 分。" + }, + ], + }, + ], + }, + 2_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.按照“功能独立、大小适中、易于管理”的原则,选取所有生产装置、储存设施或场所作为安全风险分析对象。按照《危险化学品重大危险源辨识》(GB18218)构成重大危险源的应独立作为安全风险分析对象。" + }, + { + content:"2.企业应根据生产工艺流程顺序或设备设施布局,将安全风险分析对象分解为若干相对独立的安全风险分析单元,主要设备设施均应纳入安全风险分析单元。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "安全风险清单。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.企业安全风险分析对象不全的,缺一项扣 2 分。" + }, + { + content:"2.企业未将主要设备设施纳入安全风险分析单元的,一项扣 1 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"企业安全风险分析对象没有覆盖所有重大危险源的,评估为不合格。" + }, + ], + }, + ], + }, + 2_2:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应组织各相关部门、专业、岗位,应用 SCL、JHA、HAZOP 等方法对安全风险分析单元进行安全风险辨识,评估可能导致的事故后果。" + }, + { + content:"2.企业应根据安全风险辨识结果,选择可能造成爆炸、火灾、中毒、窒息等严重后果的事件作为重点管控的安全风险事件。企业可根据安全管理实际补充其他安全风险事件。" + }, + { + content:"3.企业应建立安全风险清单,主要内容包括安全风险分析对象、责任部门、责任人、分析单元、安全风险事件等。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、查信息系统", + content: "1.安全风险清单。2.安全风险辨识过程记录。", + }, + { + title: "抽查询问", + content: "抽查企业相关部门、班组、岗位人员是否参与安全风险辨识。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.企业未组织全员开展风险辨识的,少一岗位扣 2 分。" + }, + { + content:"2.未选择严重后果事件作为重点管控的安全风险事件的,扣 2 分。" + }, + { + content:"3.企业未形成安全风险清单的,扣 5 分。" + }, + ], + }, + ], + }, + 2_3:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应根据安全风险事件可能造成的后果严重程度,对安全风险分析对象进行科学分级。" + }, + { + content:"2.从高到低依次划分为重大风险、较大风险、一般风险和低风险 4 个等级,分别采用红、橙、黄、蓝四种颜色进行标示。" + }, + { + content:"3.在信息系统中绘制安全风险空间分布图。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、查信息系统", + content: "1.安全风险清单。2.安全风险空间分布图。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.企业未对安全风险分析对象进行分级的,扣 2 分。" + }, + { + content:"2.企业安全风险分级与辨识结果不一致的,扣 1 分。" + }, + { + content:"3.信息系统中未显示安全风险空间分布图的,扣 2 分。" + }, + ], + }, + ], + }, + 2_4:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.针对安全风险事件,企业应从工程技术、维护保养、人员操作、应急措施等方面识别评估现有管控措施的有效性,其中工程技术类管控措施主要针对关键设备部件、安全附件、工艺控制、安全仪表等方面;维护保养类管控措施主要保障动设备和静设备正常运行;人员操作类管控措施主要包括人员资质、操作规程、工艺指标等内容;应急措施类管控措施主要包括应急设施、个体防护、消防设施、应急预案等内容。管控措施应按照公司规定,经主要负责人评估确定。" + }, + { + content:"2.企业在以上管控措施的基础上,可结合实际情况,制定其他管控措施。" + }, + { + content:"3.根据运行情况,不断更新管控措施,及时纠正偏差。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、查信息系统", + content: "检查管控措施是否经过评估确定,控制措施是否全面、无疏漏、可操作性强并有效落实。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.管控措施不全面、操作性不强,一项扣 0.5 分。" + }, + { + content:"2.情况发生变化后,管控措施未及时修正,一项扣" + }, + { + content:"3.管控措施未经过评估确定的,扣 1 分。" + }, + ], + }, + ], + }, + 2_5:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应将安全风险事件对应的管控措施分解到公司领导、部门、车间、班组和岗位人员等各层级,确保安全风险管控措施有效实施。" + }, + { + content:"2.上一级负责管控措施,责任相关的下一级必须同时负责管控,并逐级落实。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "现场检查", + content: "核查岗位人员参与过程,及是否清楚并落实自身岗位相关管控措施。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"岗位人员未落实自身岗位管控措施的,一人扣 2 分。" + }, + ], + }, + ], + }, + 3_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应将安全风险管控措施作为隐患排查的任务,明确隐患排查责任人、频次等。隐患排查任务应涵盖全员、责任清晰、周期明确,且与日常巡检等计划性内容相融合。" + }, + { + content:"2.企业也应按照国家法律法规及标准要求,结合企业实际,制定综合性、专业性、季节性、重点时段及节假日前等形式的隐患排查任务。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、查信息系统", + content: "安全风险分析和隐患排查任务清单。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.隐患排查任务未覆盖到负有安全生产责任的岗位和个人,或排查责任不清晰,或排查周期不明确,一项扣 1 分。" + }, + { + content:"2.隐患排查形式不全面的,扣 2 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"隐患排查任务覆盖岗位低于80%的,评估为不合格。" + }, + ], + }, + ], + }, + 3_2:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"企业应根据隐患排查任务,按期开展隐患排查,确保管控措施落实。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查信息系统", + content: "1.隐患排查记录。2.隐患排查任务完成率。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.隐患排查任务完成率低于 80%的,扣 5 分。" + }, + { + content:"2.岗位人员未按期开展隐患排查,一人扣 2 分。" + }, + { + content:"3.同一岗位连续两个周期未完成隐患排查任务的,扣 5 分。" + }, + ], + }, + ], + }, + 3_3:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"排查发现的隐患,能立即整改的隐患必须立即整改,无法立即整改的隐患,制定隐患治理计划,切实做到整改措施、责任、资金、时限和预案“五到位”,确保按时整改。整改完成后要组织对隐患治理效果进行验收,完成隐患闭环管理。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料", + content: "企业隐患台账。", + }, + { + title: "查信息系统", + content: "查隐患整改记录。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.未制定隐患整改计划,一项扣 2 分。" + }, + { + content:"2.一般隐患超期未整改,一项扣 2 分;重大隐患超期未整改,一项扣 5 分。" + }, + { + content:"3.未组织隐患整改验收,一项扣 1 分。" + }, + ], + }, + ], + }, + 4_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应开发或改造信息化系统,包含电脑管理端和移动 APP 端,满足数据交换规范的要求。" + }, + { + content:"2.电脑管理端具备动态监控安全风险管控措施落实、隐患排查任务推送、隐患排查治理情况跟踪监督、机制运行效果评估、异常状态自动预警及考核奖惩等功能;移动 APP 端具备隐患排查任务和预警信息接收、现场隐患排查情况实时上报、隐患治理全程跟踪等功能。" + }, + { + content:"3.企业应利用移动终端开展隐患排查。" + }, + { + content:"4.企业信息化系统与政府系统实现数据互联互通。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查信息系统", + content: "登录信息化系统查看系统功能及运行情况。", + }, + { + title: "现场检查", + content:"抽查不同岗位人员信息系统使用情况。" + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.信息化系统功能不满足要求,一项扣 5 分。" + }, + { + content:"2.移动终端数量不满足隐患排查需求的,扣 5 分。" + }, + { + content:"3.企业信息化系统未与政府系统实现数据互联互通的,扣 10 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"企业未按照数据交换规范建设信息化系统或没有利用移动 APP 端进行隐患排查,评估为不合格。" + }, + ], + }, + ], + }, + 5_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业建立双重预防机制运行激励约束制度,明确考核奖惩的标准、频次、方式方法等,并与员工工资薪酬(或奖金)挂钩。" + }, + { + content:"2.根据信息化系统自动生成的绩效考核结果,落实激励约束制度,定期兑现。" + } + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、信息化系统", + content: "1.企业激励约束制度。2.考核奖惩记录。", + }, + { + title: "现场检查", + content:"抽查不同岗位人员信息系统使用情况。" + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.激励约束制度未明确考核奖惩标准、频次、方式方法,一项扣 1 分。" + }, + { + content:"2.未按考核结果兑现的,扣 2 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"未制定考核奖惩办法或有奖惩办法从未兑现过的,评估为不合格。" + }, + ], + }, + ], + }, + 6_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"1.企业应根据每周双重预防机制运行效果,查找原因,及时制定整改措施,持续改进。" + }, + { + content:"2.企业至少每年一次对双重预防机制运行效果进行评估并加以改进,重点评估安全风险管控措施适宜性、隐患排查任务可操作性等内容。" + }, + { + content:"3.当发生下列情形时,应及时开展评估改进:1)新的或变更的法律法规或其他要求;2)操作条件变化或工艺改变;3)技术改造项目;4)有对事件、事故或其他信息的新认识;5)组织机构发生大的调整。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查资料、信息化系统", + content: "企业评估记录和整改记录。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.未开展年度评估的,扣 5 分。" + }, + { + content:"2.评估发现的问题未及时整改,一项扣 1 分。" + }, + ], + }, + { + title: "否决项", + key:"reject", + content: [ + { + content:"企业发生 5 种情况变化时,未及时开展评估的,评估为不合格。" + }, + ], + }, + ], + }, + 7_1:{ + standard: [ + { + title: "机制建设标准与要求", + key:"standard", + content: [ + { + content:"在双重预防机制信息化系统基础上,企业可根据实际情况拓展以下功能:1.特殊作业电子作业票;2.视频智能分析;3.其他功能。" + }, + ], + }, + { + title: "评估方法", + key:"method", + content: [ + { + title: "查信息系统", + content: "1.特殊作业电子作业票。2.视频智能分析。3.其他。", + }, + ], + }, + { + title: "评分标准", + key:"scoringCriteria", + content: [ + { + content:"1.拓展 1 种功能的,加 2 分。" + }, + { + content:"2.拓展 2 种功能的,加 5 分。" + }, + { + content:"3.超过 2 种功能的,加 10 分。" + }, + ], + }, + ], + } +} \ No newline at end of file diff --git a/src/router/index.ts b/src/router/index.ts index e15dd07..6a4f6a0 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -24,6 +24,21 @@ import ActionComponent from "@/views/hiddenDanger/safe/action.component.vue" import HiddenDangerManagerComponent from "@/views/hiddenDanger/manager.component.vue" import HiddenDangerFilesComponent from "@/views/hiddenDanger/files.component.vue" import HiddenDangerClapComponent from "@/views/hiddenDanger/clap.component.vue" +import LeadershipStructure from "@/views/workprogress/leader.component.vue" +import ManagementSystem from "@/views/workprogress/managementSystem.component.vue" +import Programme from "@/views/workprogress/programme.component.vue" +import TrainRecords from "@/views/workprogress/trainRecords.component.vue" +import RiskCard from "@/views/threecards/riskCard.component.vue" +import SafeCard from "@/views/threecards/safeCard.component.vue" +import EmergencyCard from "@/views/threecards/emergencyCard.component.vue" +import SelfAssessment from '@/views/reward/selfAssessment/selfAssessment.component.vue' +import RewardsRecord from '@/views/reward/rewardsRecord/rewardsRecord.component.vue' +import IntegralRule from '@/views/integral/rule.component.vue' +import IntegralCenter from '@/views/integral/center.component.vue' +import IntegralEvent from '@/views/integral/event.component.vue' +import IntegralMall from '@/views/integral/mall.component.vue' +import IntegralExchange from '@/views/integral/exchange/exchange.component.vue' +import IntegralExchangeRecord from '@/views/integral/exchange/exchangeRecord.component.vue' Vue.use(VueRouter) const routes: Array = [ @@ -134,6 +149,94 @@ const routes: Array = [ path:"clap", component:HiddenDangerClapComponent }] + },{ + path:"work-progress", + name:"work-progress", + component:BlankComponent, + redirect:"work-progress/leader", + children:[{ + name:"leader", + path:"leader", + component:LeadershipStructure + },{ + name:"management-system", + path:"management-system", + component:ManagementSystem + },{ + name:"programme", + path:"programme", + component:Programme + },{ + name:"train-records", + path:"train-records", + component:TrainRecords + + }] + },{ + path:"three-cards", + name:"three-cards", + component:BlankComponent, + redirect:"three-cards/risk-card", + children:[{ + name:"risk-card", + path:"risk-card", + component:RiskCard + },{ + name:"safe-card", + path:"safe-card", + component:SafeCard + },{ + name:"emergency-card", + path:"emergency-card", + component:EmergencyCard + }] + },{ + path:"reward", + name:"reward", + component:BlankComponent, + redirect:"reward/self-assessment", + children:[{ + name:"self-assessment", + path:"self-assessment", + component:SelfAssessment + },{ + name:"rewards-record", + path:"rewards-record", + component:RewardsRecord + }] + },{ + path:"integral", + name:"integral", + component:BlankComponent, + redirect:"integral/rule", + children:[{ + name:"rule", + path:"rule", + component:IntegralRule + },{ + name:"center", + path:"center", + component:IntegralCenter + },{ + name:"event", + path:"event", + component:IntegralEvent + },{ + name:"mall", + path:"mall", + component:IntegralMall + },{ + name:"exchange", + path:"exchange", + component:IntegralExchange + },{ + name:"exchange-record", + path:"exchange-record", + component:IntegralExchangeRecord + }, + + + ] }] }, { diff --git a/src/service/emergencyCard.service.ts b/src/service/emergencyCard.service.ts new file mode 100644 index 0000000..724f516 --- /dev/null +++ b/src/service/emergencyCard.service.ts @@ -0,0 +1,46 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class EmergencyCardService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/card/handle/getList'; + return this.post(url,params) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/card/handle'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/card/handle'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/card/handle'; + return this.put(url,params,{},showLoading) + } + } + //获取编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/handle/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/handle/detail'; + return this.get(url,params) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/integralCenter.service.ts b/src/service/integralCenter.service.ts new file mode 100644 index 0000000..857bd12 --- /dev/null +++ b/src/service/integralCenter.service.ts @@ -0,0 +1,16 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IdentifyCenterService extends BaseService{ + constructor(){ + super() + } + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/user/list'; + return this.get(url,params,true) + } + public deleteByIds(params):Promise>>{ + const url = this.prefix.prevention+'/point/user'; + return this.deleteBatch(url,params,{},true) + } +} \ No newline at end of file diff --git a/src/service/integralEvent.service.ts b/src/service/integralEvent.service.ts new file mode 100644 index 0000000..36c67b3 --- /dev/null +++ b/src/service/integralEvent.service.ts @@ -0,0 +1,16 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IdentifyEventService extends BaseService{ + constructor(){ + super() + } + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/record/list'; + return this.get(url,params,true) + } + public deleteByIds(params):Promise>>{ + const url = this.prefix.prevention+'/point/record'; + return this.deleteBatch(url,params,{},true) + } +} \ No newline at end of file diff --git a/src/service/integralExchange.service.ts b/src/service/integralExchange.service.ts new file mode 100644 index 0000000..b0a6630 --- /dev/null +++ b/src/service/integralExchange.service.ts @@ -0,0 +1,37 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IntegralExchangeService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/exchange/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/point/exchange'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/point/exchange'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/point/exchange'; + return this.put(url,params,{},showLoading) + } + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/point/exchange/'+params.id; + return this.get(url) + } + +} \ No newline at end of file diff --git a/src/service/integralExchangeRecord.service.ts b/src/service/integralExchangeRecord.service.ts new file mode 100644 index 0000000..15aa27d --- /dev/null +++ b/src/service/integralExchangeRecord.service.ts @@ -0,0 +1,16 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IntegralExchangeRecordService extends BaseService{ + constructor(){ + super() + } + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/detail/list'; + return this.get(url,params,true) + } + public deleteByIds(params):Promise>>{ + const url = this.prefix.prevention+'/point/detail'; + return this.deleteBatch(url,params,{},true) + } +} \ No newline at end of file diff --git a/src/service/integralMall.service.ts b/src/service/integralMall.service.ts new file mode 100644 index 0000000..2ad2387 --- /dev/null +++ b/src/service/integralMall.service.ts @@ -0,0 +1,41 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IntegralMallService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/goods/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/point/goods'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/point/goods'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/point/goods'; + return this.put(url,params,{},showLoading) + } + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/point/goods/'+params.id; + return this.get(url) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/integralRule.service.ts b/src/service/integralRule.service.ts new file mode 100644 index 0000000..e72097c --- /dev/null +++ b/src/service/integralRule.service.ts @@ -0,0 +1,42 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class IntegralRuleService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/point/rule/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/point/rule'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/point/rule'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/point/rule'; + return this.put(url,params,{},showLoading) + } + } + //获取编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/point/rule/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/point/rule/'+params.id; + return this.get(url) + } + +} \ No newline at end of file diff --git a/src/service/leader.service.ts b/src/service/leader.service.ts new file mode 100644 index 0000000..b4be17a --- /dev/null +++ b/src/service/leader.service.ts @@ -0,0 +1,47 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class LeaderService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/process/structure/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/process/structure/delete'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/process/structure/add'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/process/structure/update'; + return this.put(url,params,{},showLoading) + } + } + //获取领导机构编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/structure/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/structure/detail'; + return this.get(url,params) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } + +} diff --git a/src/service/managementSystem.service.ts b/src/service/managementSystem.service.ts new file mode 100644 index 0000000..e714185 --- /dev/null +++ b/src/service/managementSystem.service.ts @@ -0,0 +1,47 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class MangementSystemService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/process/institution/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/process/institution'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/process/institution'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/process/institution'; + return this.put(url,params,{},showLoading) + } + } + //获取领导机构编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/institution/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/institution/'+params.id; + return this.get(url) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } + +} \ No newline at end of file diff --git a/src/service/programme.service.ts b/src/service/programme.service.ts new file mode 100644 index 0000000..35f932d --- /dev/null +++ b/src/service/programme.service.ts @@ -0,0 +1,46 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class ProgrammeService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+ '/process/plan/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/process/plan'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/process/plan'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/process/plan'; + return this.put(url,params,{},showLoading) + } + } + //获取方案编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/plan/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/plan/'+params.id; + return this.get(url) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/rewardsRecord.service.ts b/src/service/rewardsRecord.service.ts new file mode 100644 index 0000000..b11a805 --- /dev/null +++ b/src/service/rewardsRecord.service.ts @@ -0,0 +1,41 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class RewardsRecordService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/incentive/record/getList'; + return this.post(url,params) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/incentive/record/delete'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/incentive/record/add'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/incentive/record/update'; + return this.put(url,params,{},showLoading) + } + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/incentive/record/detail'; + return this.get(url,params) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/riskCard.service.ts b/src/service/riskCard.service.ts new file mode 100644 index 0000000..674a293 --- /dev/null +++ b/src/service/riskCard.service.ts @@ -0,0 +1,46 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class RiskCardService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/card/notify/getList'; + return this.post(url,params) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/card/notify'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/card/notify'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/card/notify'; + return this.put(url,params,{},showLoading) + } + } + //获取编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/notify/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/notify/detail'; + return this.get(url,params) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/safeCard.service.ts b/src/service/safeCard.service.ts new file mode 100644 index 0000000..c1e51af --- /dev/null +++ b/src/service/safeCard.service.ts @@ -0,0 +1,46 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class SafeCardService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/card/promise/getList'; + return this.post(url,params) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/card/promise'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/card/promise'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/card/promise'; + return this.put(url,params,{},showLoading) + } + } + //获取编号 + public getNumber(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/promise/number'; + return this.get(url,params) + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/card/promise/detail'; + return this.get(url,params) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/selfAssessment.service.ts b/src/service/selfAssessment.service.ts new file mode 100644 index 0000000..830af82 --- /dev/null +++ b/src/service/selfAssessment.service.ts @@ -0,0 +1,41 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class SelfAssessmentService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/incentive/review/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/incentive/review'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/incentive/review'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/incentive/review'; + return this.put(url,params,{},showLoading) + } + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/incentive/review/' + params.id; + return this.get(url) + } + + public getFileUrls(params):Promise>>{ + const url = this.prefix.file+'/getSysFiles'; + return this.get(url,params,false) + } +} \ No newline at end of file diff --git a/src/service/trainRecords.service.ts b/src/service/trainRecords.service.ts new file mode 100644 index 0000000..a938625 --- /dev/null +++ b/src/service/trainRecords.service.ts @@ -0,0 +1,36 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class TrainRecordsService extends BaseService{ + constructor(){ + super() + } + // 查询列表 + public selectByPage(params: any):Promise>>{ + const url = this.prefix.prevention+'/process/record/list'; + return this.get(url,params,true) + } + // 批量删除 + public deleteByIds(params,showLoading?):Promise>>{ + const url = this.prefix.prevention+'/process/record/delete'; + return this.deleteBatch(url,params,{},showLoading) + } + + // 新增或更新 + public addOrUpdate(params: any, add: boolean,showLoading?:boolean): Promise>>{ + + if(add){ + const url = this.prefix.prevention+'/process/record/add'; + return this.post(url,params,{},showLoading) + }else{ + const url = this.prefix.prevention+'/process/record/update'; + return this.put(url,params,{},showLoading) + } + } + + //查询详情 + public getListDetail(params:any):Promise>>{ + const url = this.prefix.prevention+'/process/record/detail'; + return this.get(url,params) + } +} \ No newline at end of file diff --git a/src/service/user.service.ts b/src/service/user.service.ts new file mode 100644 index 0000000..a24b884 --- /dev/null +++ b/src/service/user.service.ts @@ -0,0 +1,15 @@ +import BaseService from "hbt-common/service/base.service" +import type { AxiosResponse } from 'axios' +import { ActionResult } from "hbt-common/models/actionResult"; +export default class UserService extends BaseService{ + constructor(){ + super() + } + + + public getDetailsByIds(params: any,showLoading?):Promise>>{ + const url = this.prefix.system+'/user/' + params.userId; + return this.get(url,showLoading) + } + +} \ No newline at end of file diff --git a/src/store/index.ts b/src/store/index.ts index ccb4fde..7efc72c 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -31,7 +31,11 @@ export default new Vuex.Store({ prevention_task_type:[], prevention_evaluate_status:[], prevention_task_status:[], - prevention_hazard_category:[] + prevention_hazard_category:[], + prevention_training_methods:[], + prevention_training_level:[], + prevention_integral_eventtype:[], + prevention_integral_type:[], }, getters: { dept_map:(state)=>{ @@ -216,6 +220,34 @@ export default new Vuex.Store({ }) return map }, + prevention_training_methods_map:(state)=>{ + const map = {}; + state.prevention_training_methods.forEach((item:any)=>{ + map[item.value] = item.name + }) + return map + }, + prevention_training_level_map:(state)=>{ + const map = {}; + state.prevention_training_level.forEach((item:any)=>{ + map[item.value] = item.name + }) + return map + }, + prevention_integral_eventtype_map:(state)=>{ + const map = {}; + state.prevention_integral_eventtype.forEach((item:any)=>{ + map[item.value] = item.name + }) + return map + }, + prevention_integral_type_map:(state)=>{ + const map = {}; + state.prevention_integral_type.forEach((item:any)=>{ + map[item.value] = item.name + }) + return map + }, }, mutations: { setAnalCntrol(state,data){ @@ -300,6 +332,18 @@ export default new Vuex.Store({ set_prevention_hazard_category(state,data){ state.prevention_hazard_category = data }, + set_prevention_training_methods(state,data){ + state.prevention_training_methods = data + }, + set_prevention_training_level(state,data){ + state.prevention_training_level = data + }, + set_prevention_integral_eventtype(state,data){ + state.prevention_integral_eventtype = data + }, + set_prevention_integral_type(state,data){ + state.prevention_integral_type = data + }, }, actions: { }, diff --git a/src/views/blank.component.vue b/src/views/blank.component.vue index e8f2693..548e323 100644 --- a/src/views/blank.component.vue +++ b/src/views/blank.component.vue @@ -40,7 +40,13 @@ export default class BlankComponent extends Vue { this.areaService.getAnalControls(), this.systemService.getDictData("prevention_task_status"), this.systemService.getDictData("prevention_hazard_category"), + this.systemService.getDictData("prevention_training_level"), + this.systemService.getDictData("prevention_training_methods"), + + this.systemService.getDictData("prevention_integral_eventtype"), + this.systemService.getDictData("prevention_integral_type"), ]).then(((results: any) => { + this.$store.commit("setDeptTreeList", results[0].data); this.$store.commit("setUserList", results[2].data.datas.map((item) => { return { @@ -196,8 +202,7 @@ export default class BlankComponent extends Vue { value: isNaN(+item.dictValue) ? item.dictValue : +item.dictValue, } })) - console.log('results[26]',results[26]); - + this.$store.commit("set_prevention_hazard_category", results[26].data.map(item => { return { name: item.dictLabel, @@ -205,6 +210,34 @@ export default class BlankComponent extends Vue { } })) + this.$store.commit("set_prevention_training_level", results[27].data.map(item => { + return { + name: item.dictLabel, + value: isNaN(+item.dictValue) ? item.dictValue : +item.dictValue, + } + })) + + + this.$store.commit("set_prevention_training_methods", results[28].data.map(item => { + return { + name: item.dictLabel, + value: isNaN(+item.dictValue) ? item.dictValue : +item.dictValue, + } + })) + + this.$store.commit("set_prevention_integral_eventtype", results[29].data.map(item => { + return { + name: item.dictLabel, + value: isNaN(+item.dictValue) ? item.dictValue : +item.dictValue, + } + })) + + this.$store.commit("set_prevention_integral_type", results[30].data.map(item => { + return { + name: item.dictLabel, + value: isNaN(+item.dictValue) ? item.dictValue : +item.dictValue, + } + })) this.$store.commit("setDeptList", results[1].data.map((item) => { return { diff --git a/src/views/integral/center.component.vue b/src/views/integral/center.component.vue new file mode 100644 index 0000000..75928e6 --- /dev/null +++ b/src/views/integral/center.component.vue @@ -0,0 +1,191 @@ + + + + \ No newline at end of file diff --git a/src/views/integral/common.component.html b/src/views/integral/common.component.html new file mode 100644 index 0000000..5c968d7 --- /dev/null +++ b/src/views/integral/common.component.html @@ -0,0 +1,72 @@ +
+
+ +
+ + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/views/integral/event.component.vue b/src/views/integral/event.component.vue new file mode 100644 index 0000000..1823d73 --- /dev/null +++ b/src/views/integral/event.component.vue @@ -0,0 +1,189 @@ + + + + \ No newline at end of file diff --git a/src/views/integral/exchange/exchange.component.html b/src/views/integral/exchange/exchange.component.html new file mode 100644 index 0000000..5f50162 --- /dev/null +++ b/src/views/integral/exchange/exchange.component.html @@ -0,0 +1,98 @@ +
+
+ +
+
+ + {{item.name}} + +
+ + + + + + +
{{scope.$index+1}}
+
+ + + + +
+ +
+
+
+ + + +
兑换清单
+ + + + + + + + + + +
+ +
+ + + + + + +
\ No newline at end of file diff --git a/src/views/integral/exchange/exchange.component.vue b/src/views/integral/exchange/exchange.component.vue new file mode 100644 index 0000000..e0b2500 --- /dev/null +++ b/src/views/integral/exchange/exchange.component.vue @@ -0,0 +1,479 @@ + + + + \ No newline at end of file diff --git a/src/views/integral/exchange/exchangeRecord.component.vue b/src/views/integral/exchange/exchangeRecord.component.vue new file mode 100644 index 0000000..cb9848f --- /dev/null +++ b/src/views/integral/exchange/exchangeRecord.component.vue @@ -0,0 +1,266 @@ + + + + \ No newline at end of file diff --git a/src/views/integral/mall.component.vue b/src/views/integral/mall.component.vue new file mode 100644 index 0000000..b6e960d --- /dev/null +++ b/src/views/integral/mall.component.vue @@ -0,0 +1,388 @@ + + + + \ No newline at end of file diff --git a/src/views/integral/rule.component.vue b/src/views/integral/rule.component.vue new file mode 100644 index 0000000..4a7424a --- /dev/null +++ b/src/views/integral/rule.component.vue @@ -0,0 +1,340 @@ + + + + \ No newline at end of file diff --git a/src/views/reward/rewardsRecord/rewardsRecord.component.html b/src/views/reward/rewardsRecord/rewardsRecord.component.html new file mode 100644 index 0000000..fe5f55f --- /dev/null +++ b/src/views/reward/rewardsRecord/rewardsRecord.component.html @@ -0,0 +1,89 @@ +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + + +
奖惩记录
+ + + + + + + + + + +
+
+ + + + + +
\ No newline at end of file diff --git a/src/views/reward/rewardsRecord/rewardsRecord.component.vue b/src/views/reward/rewardsRecord/rewardsRecord.component.vue new file mode 100644 index 0000000..bf12f68 --- /dev/null +++ b/src/views/reward/rewardsRecord/rewardsRecord.component.vue @@ -0,0 +1,485 @@ + + \ No newline at end of file diff --git a/src/views/reward/selfAssessment/selfAssessment.component.html b/src/views/reward/selfAssessment/selfAssessment.component.html new file mode 100644 index 0000000..176b4fd --- /dev/null +++ b/src/views/reward/selfAssessment/selfAssessment.component.html @@ -0,0 +1,129 @@ +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/views/reward/selfAssessment/selfAssessment.component.vue b/src/views/reward/selfAssessment/selfAssessment.component.vue new file mode 100644 index 0000000..9ce7290 --- /dev/null +++ b/src/views/reward/selfAssessment/selfAssessment.component.vue @@ -0,0 +1,628 @@ + + + + \ No newline at end of file diff --git a/src/views/risk/assessment/work/work.component.html b/src/views/risk/assessment/work/work.component.html index 3211dec..723352c 100644 --- a/src/views/risk/assessment/work/work.component.html +++ b/src/views/risk/assessment/work/work.component.html @@ -101,7 +101,6 @@ - \ No newline at end of file diff --git a/src/views/threecards/common.component.html b/src/views/threecards/common.component.html new file mode 100644 index 0000000..3b3797e --- /dev/null +++ b/src/views/threecards/common.component.html @@ -0,0 +1,99 @@ +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + + + +
处置步骤
+ + +
+ 步骤名称 + + +
+ + +
+ 处置步骤 + +
+
+
+
+ +
+ + +
+ + + + + + + + + +
\ No newline at end of file diff --git a/src/views/threecards/emergencyCard.component.vue b/src/views/threecards/emergencyCard.component.vue new file mode 100644 index 0000000..a8cebcf --- /dev/null +++ b/src/views/threecards/emergencyCard.component.vue @@ -0,0 +1,650 @@ + + + + \ No newline at end of file diff --git a/src/views/threecards/riskCard.component.vue b/src/views/threecards/riskCard.component.vue new file mode 100644 index 0000000..f500d45 --- /dev/null +++ b/src/views/threecards/riskCard.component.vue @@ -0,0 +1,530 @@ + + + \ No newline at end of file diff --git a/src/views/threecards/safeCard.component.vue b/src/views/threecards/safeCard.component.vue new file mode 100644 index 0000000..82ad2a6 --- /dev/null +++ b/src/views/threecards/safeCard.component.vue @@ -0,0 +1,449 @@ + + + \ No newline at end of file diff --git a/src/views/workprogress/common.component.html b/src/views/workprogress/common.component.html new file mode 100644 index 0000000..d69851d --- /dev/null +++ b/src/views/workprogress/common.component.html @@ -0,0 +1,109 @@ +
+
+ +
+ + + + + + + + + + + + + + +
+
+ + + + +
{{subTitle}}
+ + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/src/views/workprogress/leader.component.vue b/src/views/workprogress/leader.component.vue new file mode 100644 index 0000000..80addb0 --- /dev/null +++ b/src/views/workprogress/leader.component.vue @@ -0,0 +1,588 @@ + + \ No newline at end of file diff --git a/src/views/workprogress/managementSystem.component.vue b/src/views/workprogress/managementSystem.component.vue new file mode 100644 index 0000000..94e3816 --- /dev/null +++ b/src/views/workprogress/managementSystem.component.vue @@ -0,0 +1,458 @@ + + + \ No newline at end of file diff --git a/src/views/workprogress/programme.component.vue b/src/views/workprogress/programme.component.vue new file mode 100644 index 0000000..cb311f4 --- /dev/null +++ b/src/views/workprogress/programme.component.vue @@ -0,0 +1,460 @@ + + + + \ No newline at end of file diff --git a/src/views/workprogress/trainRecords.component.vue b/src/views/workprogress/trainRecords.component.vue new file mode 100644 index 0000000..084c335 --- /dev/null +++ b/src/views/workprogress/trainRecords.component.vue @@ -0,0 +1,536 @@ + + \ No newline at end of file