+
单位名称:{{ CORP_NAME }}
+
任务名称:{{ data.taskInfo.STUDY_NAME }}
+
+
{{ data.paperInfo.EXAMNAME }}
+
(满分:{{ data.paperInfo.EXAMSCORE }}分)
+
- 单位名称:{{ CORP_NAME }}
-
-
-
- 任务名称:{{ data.taskInfo.STUDY_NAME }}
-
-
- {{ data.paperInfo.EXAMNAME }}
-
-
-
- (满分:{{ data.paperInfo.EXAMSCORE }}分)
-
-
-
-
单选题
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }}
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
- C.{{ item.OPTIONC }}
- D.{{ item.OPTIOND }}
-
-
+
+
+
+
+
+ 单选题
+ |
+
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }}
+
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+ C.{{ item.OPTIONC }}
+ D.{{ item.OPTIOND }}
+
+
+ |
+
+
+
-
-
-
多选题
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }}
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
- C.{{ item.OPTIONC }}
- D.{{ item.OPTIOND }}
-
-
+
+
+
+
+
+ 多选题
+ |
+
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }}
+
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+ C.{{ item.OPTIONC }}
+ D.{{ item.OPTIOND }}
+
+
+ |
+
+
+
-
-
-
判断题
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }}
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
-
-
+
+
+
+
+
+ 判断题
+ |
+
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }}
+
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+
+
+ |
+
+
+
+
-
-
- {{ data.taskInfo.STUDY_NAME }}培训综合考评报告
-
+
+
{{ data.taskInfo.STUDY_NAME }}培训综合考评报告
{{ data.taskInfo.STUDY_NAME }}
-
+
{{ data.taskInfo.PEIXUE_END_TIME }}
- 考核
+ 考核
- 本次培训的主要内容是:{{ curriculums }}。 共应参加人数为{{
- data.studentList.length
- }}人, 实际参加培训人数为{{ join_student_list.length }}人, 参加率为{{
- (
- (join_student_list.length / data.studentList.length) *
- 100
- ).toFixed(2)
- }}%
+
+ 本次培训的主要内容是:{{ curriculums }}。 共应参加人数为{{
+ data.studentList.length
+ }}人, 实际参加培训人数为{{ join_student_list.length }}人,
+ 参加率为{{
+ (
+ (join_student_list.length / data.studentList.length) *
+ 100
+ ).toFixed(2)
+ }}%
+
- 本次通过笔试的方式进行了培训效果考核,考核人数为{{
- data.studentList.length
- }}人,考核合格人数为{{ pass_student_list.length }}人, 合格率为{{
- (
- (pass_student_list.length / data.studentList.length) *
- 100
- ).toFixed(2)
- }}%
+
+ 本次通过笔试的方式进行了培训效果考核,考核人数为{{
+ data.studentList.length
+ }}人,考核合格人数为{{ pass_student_list.length }}人, 合格率为{{
+ (
+ (pass_student_list.length / data.studentList.length) *
+ 100
+ ).toFixed(2)
+ }}%
+
- 1.本次培训的讲师
- 讲师的语言表达能力应该更加的生动、清晰、易懂
- 非常满意
- 2.本次培训的课程
- 课程内容应该更加专业,可以对我的工作帮助更大
- 非常满意
+ 1.本次培训的讲师
+ 讲师的语言表达能力应该更加的生动、清晰、易懂
+ 非常满意
+ 2.本次培训的课程
+ 课程内容应该更加专业,可以对我的工作帮助更大
+ 非常满意
+
关闭
@@ -70,6 +74,7 @@ import {
} from "@/request/archives.js";
import { computed, reactive } from "vue";
import { useVModels } from "@vueuse/core";
+import { PRINT_STYLE } from "@/assets/js/constant.js";
const props = defineProps({
title: {
@@ -135,7 +140,7 @@ const join_student_list = computed(() => {
return result;
});
-const emits = defineEmits(["update:visible"]);
+const emits = defineEmits(["update:visible", "update:current"]);
const fnClose = () => {
emits("update:current", undefined);
@@ -178,4 +183,8 @@ const fnGetStudentByTaskId = async () => {
await fnGetStudentByTaskId();
-
+
diff --git a/src/views/archives/semester/components/result.vue b/src/views/archives/semester/components/result.vue
index de3e65e..6c82bbe 100644
--- a/src/views/archives/semester/components/result.vue
+++ b/src/views/archives/semester/components/result.vue
@@ -10,14 +10,17 @@
打印
-
-
学员统计情况总表
+
+
学员统计情况总表
-
-
平台名称:
-
报表日期:{{ fnGetCurrentDay() }}
+
+ 平台名称:
+ 报表日期:{{ fnGetCurrentDay() }}
-
+
{{ CORP_NAME }}
@@ -38,48 +41,125 @@
{{ pass_student_list.length }}
-
-
-
合格学员名单
+
+
+
+
+ 合格学员名单 |
+
+
+ 序号 |
+ 姓名 |
+ 身份证 |
+ 手机号 |
+ 性别 |
+ 完成学时 |
+ 结业考试成绩 |
+
+
+
+
+
+ {{ index + 1 }} |
+ {{ item.USER_NAME }} |
+ {{ item.USER_ID_CARD }} |
+ {{ item.PHONE }} |
+ {{ item.SEX_NAME }} |
+ {{ item.COMPLETE_CLASSHOUR }} |
+
+ {{
+ item.STAGEEXAMSCORE > -1 ? item.STAGEEXAMSCORE : "未参加"
+ }}
+ |
+
+
+
+
+
+
+
+
+
+ 未合格学员名单
+ |
+
+
+ 序号 |
+ 姓名 |
+ 身份证 |
+ 手机号 |
+ 性别 |
+ 完成学时 |
+ 结业考试成绩 |
+
+
+
+
+
+ {{ index + 1 }} |
+ {{ item.USER_NAME }} |
+ {{ item.USER_ID_CARD }} |
+ {{ item.PHONE }} |
+ {{ item.SEX_NAME }} |
+ {{ item.COMPLETE_CLASSHOUR }} |
+
+ {{
+ item.STAGEEXAMSCORE > -1 ? item.STAGEEXAMSCORE : "未参加"
+ }}
+ |
+
+
+
+
+
+
+
合格学员名单
+
+
+
+ {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
+
+
+
+
+
+
+
+
+
+ {{ row.STAGEEXAMSCORE > -1 ? row.STAGEEXAMSCORE : "未参加" }}
+
+
+
+
未合格学员名单
+
+
+
+ {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
+
+
+
+
+
+
+
+
+
+ {{ row.STAGEEXAMSCORE > -1 ? row.STAGEEXAMSCORE : "未参加" }}
+
+
+
-
-
-
- {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
-
-
-
-
-
-
-
-
-
- {{ row.STAGEEXAMSCORE > -1 ? row.STAGEEXAMSCORE : "未参加" }}
-
-
-
-
- 未合格学员名单
-
-
-
-
- {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
-
-
-
-
-
-
-
-
-
- {{ row.STAGEEXAMSCORE > -1 ? row.STAGEEXAMSCORE : "未参加" }}
-
-
-
+
关闭
@@ -98,6 +178,7 @@ import { useVModels } from "@vueuse/core";
import LayoutTable from "@/components/table/index.vue";
import { useUserStore } from "@/pinia/user.js";
import { serialNumber } from "@/assets/js/utils.js";
+import { PRINT_STYLE } from "@/assets/js/constant.js";
const userStore = useUserStore();
const CORP_NAME = userStore.getUserInfo.CORP_NAME;
@@ -165,7 +246,7 @@ const unpass_student_list = computed(() => {
return result;
});
-const emits = defineEmits(["update:visible"]);
+const emits = defineEmits(["update:visible", "update:current"]);
const fnClose = () => {
emits("update:current", undefined);
diff --git a/src/views/archives/semester/components/sign.vue b/src/views/archives/semester/components/sign.vue
index f2e765d..195345e 100644
--- a/src/views/archives/semester/components/sign.vue
+++ b/src/views/archives/semester/components/sign.vue
@@ -1,59 +1,83 @@
-
-
-
- 打印
-
-
-
- 安全培训教育记录及签字表
-
-
- (
- 岗前三级培训
- 专项培训
- 再培训
- 日常培训
- )
-
-
-
- {{ data.taskInfo.CREATTIME }}
-
-
-
- {{ data.studentList.length }}
-
-
- {{ class_hours }}
-
-
-
-
- {{ teachers }}
-
-
- {{ coursewares }}
-
-
-
- 受培训人
-
+
+
+ 打印
+
+
+
+
安全培训教育记录及签字表
+
+
+ (
+ 岗前三级培训
+ 专项培训
+ 再培训
+ 日常培训
+ )
+
+
+
+ {{ data.taskInfo.CREATTIME }}
+
+
+
+ {{ data.studentList.length }}
+
+
+ {{ class_hours }}
+
+
+
+
+ {{ teachers }}
+
+
+ {{ coursewares }}
+
+
+
+
+
+
+ 受培训人 |
+
+
+ 姓名 |
+ 部门 |
+
+
+
+
+
+
+ {{ item.USER_NAME }}
+ |
+
+ {{ item.DEPARTMENT_NAME }}
+ |
+
+
+
+
+
+
-
- 关闭
-
-
-
+
+
+
+ 关闭
+
+
-
+
diff --git a/src/views/archives/semester/components/training_schedule.vue b/src/views/archives/semester/components/training_schedule.vue
index ece8fe2..ee11f73 100644
--- a/src/views/archives/semester/components/training_schedule.vue
+++ b/src/views/archives/semester/components/training_schedule.vue
@@ -11,60 +11,107 @@
删除
打印
+
-
- {{ CORP_NAME }}培训计划
-
-
- 单位名称:{{ CORP_NAME }}
-
-
-
-
- {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
+
+
+
+
+
+ {{ CORP_NAME }}培训计划
+
+ 单位名称:{{ CORP_NAME }}
+ |
+
+
+ 序号 |
+ 培训组织部门 |
+ 培训日期 |
+ 培训时间 |
+ 培训内容 |
+ 培训方式 |
+ 培训对象 |
+ 考核方式 |
+ 地点 |
+ 培训教师 |
+ 经费保障 |
+ 质量评估 |
+
+
+
+
+
+ {{ index + 1 }} |
+ {{ item.ORGANIZATION_DEPARTMENT }} |
+ {{ item.TRAINING_DATE }} |
+ {{ item.TRAINING_TIME }} |
+ {{ item.TRAINING_CONTENT }} |
+ {{ item.TRAINING_METHODS }} |
+ {{ item.TRAINING_OBJECT }} |
+ {{ item.ASSESSMENT_METHOD }} |
+ {{ item.PLACE }} |
+ {{ item.TRAINING_TEACHER }} |
+ {{ item.FUND_GUARANTEE }} |
+ {{ item.QUALITY_ASSESSMENT }} |
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
{{ CORP_NAME }}培训计划
+
+
单位名称:{{ CORP_NAME }}
+
+
+
+ {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
编制人:
编制日期:
审核人:
审核日期:
+
关闭
@@ -92,6 +139,7 @@ import LayoutTable from "@/components/table/index.vue";
import { serialNumber } from "@/assets/js/utils.js";
import TrainingScheduleForm from "./training_schedule_form.vue";
import { ElMessageBox } from "element-plus";
+import { PRINT_STYLE } from "@/assets/js/constant.js";
const userStore = useUserStore();
const CORP_NAME = userStore.getUserInfo.CORP_NAME;
@@ -125,7 +173,7 @@ const data = reactive({
formVisible: false,
});
-const emits = defineEmits(["update:visible"]);
+const emits = defineEmits(["update:visible", "update:current"]);
const fnClose = () => {
emits("update:current", undefined);
diff --git a/src/views/archives/user/components/personal.vue b/src/views/archives/user/components/personal.vue
index 57caf61..02b9c5c 100644
--- a/src/views/archives/user/components/personal.vue
+++ b/src/views/archives/user/components/personal.vue
@@ -1,40 +1,41 @@
打印
-
-
-
-
生产经营单位新入职从业人员登记表
+
+
+
生产经营单位新入职从业人员登记表
-
-
- {{ CORP_NAME }}
-
-
-
-
+
+ 生产经营单位名称(盖章):{{ CORP_NAME }}
+ 档案编号:
+
+
-
+
{{ data.userInfo.NAME }}
-
+
{{ data.userInfo.SEX_NAME }}
-
+
{{ data.userInfo.NATION_NAME }}
-
+
{{ data.userInfo.POLITICAL_OUTLOOK_NAME }}
-
+
{{ data.userInfo.DEGREE_OF_EDUCATION_NAME }}
-
-
+
+
+
{{ data.userInfo.DATE_OF_BIRTH }}
-
+
{{ data.userInfo.USER_ID_CARD }}
@@ -54,59 +55,72 @@
-
-
+
+
+
{{ data.userInfo.DUTIES_NAME }}
-
-
+
+
+
{{ data.userInfo.WORKING_DATE }}
-
+
{{ data.userInfo.ENTRY_DATE }}
-
+
{{ data.userInfo.DEPARTMENT_NAME }}
-
+
{{ data.userInfo.POST_NAME }}
-
+
-
+
+
+
+
+
-
+
入职人承诺:以上信息已经本人核实,信息真实、有效、完整,如有虚假或欺骗等行为,自愿承担相应的法律责任.
-
-
入职人(签字并按指纹):
-
- 承诺日期:年月日
-
+
+ 入职人(签字并按指纹):
+
+ 承诺日期:
+ 年
+ 月
+ 日
+
-
-
-
生产经营单位核查意见:
-
-
核查人员(签字):
-
- 核查日期:年月日
-
+
生产经营单位核查意见:
+
+ 核查人员(签字):
+
+ 核查日期:
+ 年
+ 月
+ 日
+
@@ -159,4 +173,8 @@ const fnGetUserInfo = async () => {
await fnGetUserInfo();
-
+
diff --git a/src/views/archives/user/detail.vue b/src/views/archives/user/detail.vue
index 7789a48..c93f2a5 100644
--- a/src/views/archives/user/detail.vue
+++ b/src/views/archives/user/detail.vue
@@ -1,350 +1,406 @@
-
-
-
-
- 打印
-
-
-
-
-
-
- 档案编号:
-
-
- 生产经营单位从业人员安全培训档案
-
-
-
-
- 姓名
-
- :{{ data.userInfo.NAME }}
-
-
- 身份证号
- :{{ data.userInfo.USER_ID_CARD }}
-
-
- 建档日期
- :{{ fnGetCurrentDay() }}
-
-
单位名称(公章):
-
+
+
+
+ 档案编号:
-
- 证书编号:
-
-
-
- {{ data.userInfo.NAME }}
-
- 身份证
-
- {{ data.userInfo.USER_ID_CARD }}
-
-
- {{ CORP_NAME }}
-
-
- {{ data.studyTaskInfo.STUDY_NAME }}
-
-
- {{ data.studyTaskInfo.PEIXUE_START_TIME }} 至
- {{ data.studyTaskInfo.PEIXUE_END_TIME }}
-
-
- {{ data.studyTaskInfo.train_type_name }}
-
-
- {{ video_class_hours }}分钟(包含{{ video_count }}个视频)
-
-
- {{ data_class_hours }}分钟(包含{{ data_count }}个资料)
-
-
- {{ video_class_hours + data_class_hours }}分钟
-
-
-
- 培训单位:(盖章) 日期: {{ fnGetCurrentDay() }}
-
-
-
-
-
-
-
-
- {{ data.userInfo.NAME }}
-
-
- {{ data.userInfo.USER_ID_CARD }}
-
-
-
-
-
-
- {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
-
-
-
-
-
-
-
- {{ (row.CLASSHOUR / 45).toFixed(2) }}
-
-
-
-
-
-
-
-
-
{{ data.paper.info.EXAMNAME }}
- (满分:{{ data.paper.info.EXAMSCORE || 0 }}分)
-
-
-
- {{ data.studyTaskInfo.STUDY_NAME }}
-
-
- {{ data.userInfo.NAME }}
-
-
- {{ data.paper.info.OPERATTIME }}
-
-
- {{ data.examScore.userSecond[0] }}
-
-
-
- 单选题
-
-
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
- data.paper.isExam === "1" ? item.ANSWER : ""
- }}]
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
- C.{{ item.OPTIONC }}
- D.{{ item.OPTIOND }}
-
- 参考答案:{{
- data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
- }}
-
-
-
-
-
-
- 多选题
-
-
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
- data.paper.isExam === "1" ? item.ANSWER : ""
- }}]
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
- C.{{ item.OPTIONC }}
- D.{{ item.OPTIOND }}
-
- 参考答案:{{
- data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
- }}
-
-
-
-
-
-
- 判断题
-
-
-
- {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
- data.paper.isExam === "1" ? item.ANSWER : ""
- }}]
-
-
-
- A.{{ item.OPTIONA }}
- B.{{ item.OPTIONB }}
-
- 参考答案:{{
- data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
- }}
-
-
-
-
-
-
-
-
-
-
-
- {{ data.studyTaskInfo.train_type_name }}生产经营单位{{
- data.studyTaskInfo.post_type_name
- }}安全培训考核记录
-
-
-
-
-
-
-
-
-
- {{ data.userInfo.NAME }}
-
-
- {{ data.userInfo.SEX_NAME }}
-
-
- {{ data.userInfo.USER_ID_CARD }}
-
-
- {{ data.userInfo.DEGREE_OF_EDUCATION_NAME }}
-
-
-
- {{ data.userInfo.DUTIES_NAME }}
-
-
- {{ data.userInfo.DEPARTMENT_NAME }}
-
-
- {{ data.userInfo.TYPE_OF_WORK_NAME }}
-
-
- {{ data.studyTaskInfo.train_type_name }}
-
-
- {{ data.userInfo.USERNAME }}
-
-
-
- {{ item.NAME }}
-
-
-
-
- 安全培训及考核实施情况
-
-
-
-
- {{ serialNumber({ currentPage: 1, pageSize: 99999 }, $index) }}
-
-
-
-
+ 生产经营单位从业人员安全培训档案
+
+
+
+
+ 姓名
+
+ :{{ data.userInfo.NAME }}
+
+
+ 身份证号
+ :{{ data.userInfo.USER_ID_CARD }}
+
+
+ 建档日期
+ :{{ fnGetCurrentDay() }}
+
+
单位名称(公章):
+
+
+
+
+
+
+
+ 学时证明
+ 证书编号:
+ |
+
+
+
+
+ 姓名 |
+ {{ data.userInfo.NAME }} |
+
+
+ 证件类型 |
+ 身份证 |
+
+
+ 证件编号 |
+ {{ data.userInfo.USER_ID_CARD }} |
+
+
+ 培训单位名称 |
+ {{ CORP_NAME }} |
+
+
+ 任务名称 |
+ {{ data.studyTaskInfo.STUDY_NAME }} |
+
+
+ 培训日期 |
+
{{ data.studyTaskInfo.PEIXUE_START_TIME }} 至
{{ data.studyTaskInfo.PEIXUE_END_TIME }}
-
-
-
- 一体化双控平台
-
-
-
-
- {{ (row.CLASSHOUR / 45).toFixed(2) }}
-
-
-
-
- {{ data.examScore.userSecond[0] }}
-
-
- {{ data.examScore.userSecond[1] }}
-
-
-
-
-
-
-
-
-
-
- ![记录人员]()
-
-
-
-
- ![考核人员]()
-
-
-
-
-
- {{ fnGetCurrentDay() }}
-
-
-
-
+ |
+
+
+ 培训类型 |
+ {{ data.studyTaskInfo.train_type_name }} |
+
+
+ 视频学习时长 |
+ {{ video_class_hours }}分钟(包含{{ video_count }}个视频) |
+
+
+ 资料学习时长 |
+ {{ data_class_hours }}分钟(包含{{ data_count }}个资料) |
+
+
+ 合计学习时长 |
+ {{ video_class_hours + data_class_hours }}分钟 |
+
+
+
+
+ 培训单位:(盖章)
+ 日期: {{ fnGetCurrentDay() }}
+
+ |
+ |
+
+
+
+
+
+
+
+
+ 课程材料
+
+ 姓名:{{ data.userInfo.NAME }}
+ 身份证号:{{ data.userInfo.USER_ID_CARD }}
+
+ |
+
+
+ 任务名称 |
+ {{ data.studyTaskInfo.STUDY_NAME }} |
+
+
+ 序号 |
+ 课程内容 |
+ 课时 |
+ 讲师 |
+
+
+
+
+ {{ index + 1 }} |
+ {{ item.COURSEWARENAME }} |
+ {{ (item.CLASSHOUR / 45).toFixed(2) }} |
+ {{ item.SPEAKER }} |
+
+
+
+
+
+
+
+
+ 考卷详情
+ |
+
+
+
+
+ {{ data.paper.info.EXAMNAME }}
+
+
+ (满分:{{ data.paper.info.EXAMSCORE || 0 }}分)
+
+
+ 任务名称:{{ data.studyTaskInfo.STUDY_NAME }}
+ 姓名:{{ data.userInfo.NAME }}
+
+ |
+
+
+
+
+ 考试时间:{{ data.paper.info.OPERATTIME }}
+ 分数:{{ data.examScore.userSecond[0] }}
+
+ |
+
+
+
+
+
+
+ 单选题
+ |
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
+ data.paper.isExam === "1" ? item.ANSWER : ""
+ }}]
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+ C.{{ item.OPTIONC }}
+ D.{{ item.OPTIOND }}
+
+ 参考答案:{{
+ data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
+ }}
+
+
+
+ |
+
+
+
+
+
+ 多选题
+ |
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
+ data.paper.isExam === "1" ? item.ANSWER : ""
+ }}]
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+ C.{{ item.OPTIONC }}
+ D.{{ item.OPTIOND }}
+
+ 参考答案:{{
+ data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
+ }}
+
+
+
+ |
+
+
+
+
+
+ 判断题
+ |
+
+
+
+
+ {{ index + 1 }}.{{ item.QUESTIONDRY }} 选择答案:[{{
+ data.paper.isExam === "1" ? item.ANSWER : ""
+ }}]
+
+
+ A.{{ item.OPTIONA }}
+ B.{{ item.OPTIONB }}
+
+ 参考答案:{{
+ data.paper.isExam === "1" ? item.ANSWERRIGHT : item.ANSWER
+ }}
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+ 培训考核记录
+
+
+ {{ data.studyTaskInfo.train_type_name }}生产经营单位{{
+ data.studyTaskInfo.post_type_name
+ }}安全培训考核记录
+
+
+ |
+
+
+
+
+ 生产经营单位或安全生产管理机构名称:(盖章)
+ 档案编号:
+
+ |
+
+
+
+
+ 姓名 |
+ {{ data.userInfo.NAME }} |
+ 性别 |
+ {{ data.userInfo.SEX_NAME }} |
+ 身份证 |
+ {{ data.userInfo.USER_ID_CARD }} |
+ 学历 |
+ {{ data.userInfo.DEGREE_OF_EDUCATION_NAME }} |
+ 专业 |
+ |
+
+
+ 职务 |
+ {{ data.userInfo.DUTIES_NAME }} |
+ 部门 |
+ {{ data.userInfo.DEPARTMENT_NAME }} |
+ 工种 |
+ {{ data.studyTaskInfo.TYPE_OF_WORK_NAME }} |
+ 行业类别 |
+ {{ data.studyTaskInfo.train_type_name }} |
+ 联系电话 |
+ {{ data.userInfo.USERNAME }} |
+
+
+ 人员类型 |
+
+
+
+ {{ item.NAME }}
+
+
+ |
+
+
+
+
+
+
+ 安全培训及考核实施情况 |
+
+
+ 序号 |
+ 培训时间 |
+ 培训地点 |
+ 培训主要内容 |
+ 学时 |
+ 培训教师 |
+ 考试成绩 |
+ 补考成绩 |
+ 本人签字 |
+
+
+
+
+
+ {{ index + 1 }} |
+
+ {{ data.studyTaskInfo.PEIXUE_START_TIME }} 至
+ {{ data.studyTaskInfo.PEIXUE_END_TIME }}
+ |
+ 一体化双控平台 |
+ {{ item.COURSEWARENAME }} |
+ {{ (item.CLASSHOUR / 45).toFixed(2) }} |
+ {{ item.SPEAKER }} |
+ {{ data.examScore.userSecond[0] }} |
+ {{ data.examScore.userSecond[1] }} |
+
+
+ |
+
+
+
+
+
+
+
+ 记录人员(签字):
+
+
![记录人员]()
+
+
+
+ 考核人员(签字):
+
+
![考核人员]()
+
+
+ 安全生产管理机构负责人(签章):
+ 归档日期:{{ fnGetCurrentDay() }}
+
+
+
-
+
diff --git a/src/views/enterprise_management/industry_qualifications/add.vue b/src/views/enterprise_management/industry_qualifications/add.vue
index 7d6ac21..d9770ed 100644
--- a/src/views/enterprise_management/industry_qualifications/add.vue
+++ b/src/views/enterprise_management/industry_qualifications/add.vue
@@ -38,7 +38,7 @@
/>
-
+
提交
diff --git a/src/views/enterprise_management/user/add.vue b/src/views/enterprise_management/user/add.vue
index 5e0527b..0e8423c 100644
--- a/src/views/enterprise_management/user/add.vue
+++ b/src/views/enterprise_management/user/add.vue
@@ -59,6 +59,21 @@
+
+
+
+
+
+
+
{
const fnGetLevels = async () => {
const { value: nationList } = await layoutFnGetNation();
data.nationList = nationList;
- const { value: sexList } = await layoutFnGetSex();
- data.sexList = sexList;
const { value: politicalLandscapeList } =
await layoutFnGetPoliticalLandscape();
data.politicalLandscapeList = politicalLandscapeList;
diff --git a/src/views/hazard_investigation/delete_inventory_management/index.vue b/src/views/hazard_investigation/delete_inventory_management/index.vue
new file mode 100644
index 0000000..4fce8ca
--- /dev/null
+++ b/src/views/hazard_investigation/delete_inventory_management/index.vue
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+
+
+
+
+
+
+
+
+
+ {{ serialNumber(pagination, $index) }}
+
+
+
+
+
+
+
+
+
+
+
+ 已删除
+
+
+
+
+ 查看
+
+
+ 启用
+
+
+
+
+
+ 彻底删除
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/delete_inventory_management/view.vue b/src/views/hazard_investigation/delete_inventory_management/view.vue
new file mode 100644
index 0000000..14a89f8
--- /dev/null
+++ b/src/views/hazard_investigation/delete_inventory_management/view.vue
@@ -0,0 +1,73 @@
+
+
+ 清单信息
+
+
+ {{ info.NAME }}
+
+
+ 否
+ 是
+
+
+ {{ info.TASK_TYPE_NAME }}
+
+
+ {{ info.DEPARTMENT_NAME }}
+
+
+ {{ info.POST_NAME }}
+
+
+ {{ info.USER_NAME }}
+
+
+ {{ info.SCREENTYPENAME }}
+
+
+ {{ info.PERIODNAME }}
+
+
+ {{ info.TYPENAME }}
+
+
+ {{ info.START_DATE }} - {{ info.END_DATE }}
+
+
+ 检查内容
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_management/add.vue b/src/views/hazard_investigation/inventory_management/add.vue
new file mode 100644
index 0000000..9596ba5
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_management/add.vue
@@ -0,0 +1,465 @@
+
+
+ 清单信息
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 检查内容
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+
+
+
+
+ 选择其他存在风险
+
+
+ 添加存在风险
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 保存
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_management/components/add_inspection_route.vue b/src/views/hazard_investigation/inventory_management/components/add_inspection_route.vue
new file mode 100644
index 0000000..c9af8e4
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_management/components/add_inspection_route.vue
@@ -0,0 +1,53 @@
+
+
+
+
+ {{ index + 1 }}.{{ item.NAME }}
+
+
+
+
+
+
+ 取消
+ 确定
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_management/components/inspection_route.vue b/src/views/hazard_investigation/inventory_management/components/inspection_route.vue
index 44b958e..ab6c401 100644
--- a/src/views/hazard_investigation/inventory_management/components/inspection_route.vue
+++ b/src/views/hazard_investigation/inventory_management/components/inspection_route.vue
@@ -25,7 +25,10 @@
{{ info.TYPENAME }}
-
+
-
+
{{ info.RISKUNITNAME }}
diff --git a/src/views/hazard_investigation/inventory_management/components/select_risk.vue b/src/views/hazard_investigation/inventory_management/components/select_risk.vue
new file mode 100644
index 0000000..9214b37
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_management/components/select_risk.vue
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+
+
+
+
+
+
+
+ {{ serialNumber(pagination, $index) }}
+
+
+
+
+
+
+
+
+
+
+ 取消
+ 确定
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_management/index.vue b/src/views/hazard_investigation/inventory_management/index.vue
index fce1a66..2821e72 100644
--- a/src/views/hazard_investigation/inventory_management/index.vue
+++ b/src/views/hazard_investigation/inventory_management/index.vue
@@ -30,7 +30,6 @@
multiple
show-checkbox
collapse-tags
- root-disabled="N"
/>
@@ -174,6 +173,12 @@
type="primary"
text
link
+ @click="
+ router.push({
+ path: '/hazard_investigation/inventory_management/edit',
+ query: { LISTMANAGER_ID: row.LISTMANAGER_ID },
+ })
+ "
>
修改
@@ -234,7 +239,15 @@
-
+
新增
批量删除
- 继承清单
+
+ 继承清单
+
@@ -386,6 +401,23 @@ const fnBatchDelete = debounce(
},
{ atBegin: true }
);
+const fnInheritanceList = () => {
+ const selectionData = tableRef.value.getSelectionRows();
+ if (selectionData.length === 0) {
+ ElMessage.warning("请选中要继承的清单");
+ return;
+ }
+ if (selectionData.length > 1) {
+ ElMessage.warning("只能选择一个清单");
+ return;
+ }
+ router.push({
+ path: "/hazard_investigation/inventory_management/inheritance_list",
+ query: {
+ LISTMANAGER_ID: selectionData[0].LISTMANAGER_ID,
+ },
+ });
+};
diff --git a/src/views/hazard_investigation/inventory_management/insurance_coverage.vue b/src/views/hazard_investigation/inventory_management/insurance_coverage.vue
index d977e40..78bd8b0 100644
--- a/src/views/hazard_investigation/inventory_management/insurance_coverage.vue
+++ b/src/views/hazard_investigation/inventory_management/insurance_coverage.vue
@@ -84,8 +84,8 @@ const { list } = useListData(getInventoryManagementView, {
LISTMANAGER_ID,
},
usePagination: false,
- callbackFn: (list, responseData) => {
- info.value = responseData.pd;
+ callbackFn: (list, resData) => {
+ info.value = resData.pd;
},
});
const fnSelect = (row, index) => {
diff --git a/src/views/hazard_investigation/inventory_management/part_qr_code.vue b/src/views/hazard_investigation/inventory_management/part_qr_code.vue
index 318182d..b51afbd 100644
--- a/src/views/hazard_investigation/inventory_management/part_qr_code.vue
+++ b/src/views/hazard_investigation/inventory_management/part_qr_code.vue
@@ -75,8 +75,8 @@ const { list } = useListData(getInventoryManagementView, {
LISTMANAGER_ID,
},
usePagination: false,
- callbackFn: (list, responseData) => {
- info.value = responseData.pd;
+ callbackFn: (list, resData) => {
+ info.value = resData.pd;
},
});
const fnPartQrCode = (row) => {
diff --git a/src/views/hazard_investigation/inventory_management/print.vue b/src/views/hazard_investigation/inventory_management/print.vue
index be623a3..10e8d15 100644
--- a/src/views/hazard_investigation/inventory_management/print.vue
+++ b/src/views/hazard_investigation/inventory_management/print.vue
@@ -107,8 +107,8 @@ const { list } = useListData(getInventoryManagementView, {
LISTMANAGER_ID,
},
usePagination: false,
- callbackFn: (list, responseData) => {
- info.value = responseData.pd;
+ callbackFn: (list, resData) => {
+ info.value = resData.pd;
},
});
diff --git a/src/views/hazard_investigation/inventory_troubleshooting/components/qualified.vue b/src/views/hazard_investigation/inventory_troubleshooting/components/qualified.vue
new file mode 100644
index 0000000..db61a4b
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_troubleshooting/components/qualified.vue
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+ 确定
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_troubleshooting/components/un_qualified.vue b/src/views/hazard_investigation/inventory_troubleshooting/components/un_qualified.vue
new file mode 100644
index 0000000..1e39bff
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_troubleshooting/components/un_qualified.vue
@@ -0,0 +1,446 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 只能上传mp4文件,且不超过50M
+
+
+
+
+
+
+
+ 立即整改
+
+ 限期整改
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.RISK_UNIT_NAME }}
+
+
+ {{ item.HIDDEN_PART }}
+
+
+ {{ item.INSPECTION_BASIS }}
+
+
+
+
+
+
+ 取消
+ 确定
+
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_troubleshooting/index.vue b/src/views/hazard_investigation/inventory_troubleshooting/index.vue
new file mode 100644
index 0000000..d34b8bd
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_troubleshooting/index.vue
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+
+
+
+
+
+
+
+
+ {{ serialNumber(pagination, $index) }}
+
+
+
+
+
+
+
+
+
+
+ {{ row.checkCount }}/1
+
+
+
+
+
+
+
+ 开始检查
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/hazard_investigation/inventory_troubleshooting/inspect.vue b/src/views/hazard_investigation/inventory_troubleshooting/inspect.vue
new file mode 100644
index 0000000..de945f5
--- /dev/null
+++ b/src/views/hazard_investigation/inventory_troubleshooting/inspect.vue
@@ -0,0 +1,455 @@
+
+
+ 清单信息
+
+
+ {{ info.NAME }}
+
+
+ {{ info.SCREENTYPENAME }}
+
+
+ {{ info.DEPARTMENT_NAME }}
+
+
+ {{ info.POST_NAME }}
+
+
+ {{ info.PERIODNAME }}
+
+
+ {{ info.TYPENAME }}
+
+
+ {{ info.START_DATE }} - {{ info.END_DATE }}
+
+
+ {{ info.USER_NAME }}
+
+
+ 检查内容
+
+
+
+
+
+
+
+
+
+
+
+ 合格
+
+
+ 不合格
+
+
+ 不涉及
+
+
+
+
+
+ 其他隐患
+
+
+ 添加
+
+
+
+
+
+
+
+
+ 修改
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 添加
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+ 保存
+
+
+
+
+
+
+
+
+
diff --git a/src/views/online_learn_exam/courseware/data/index.vue b/src/views/online_learn_exam/courseware/data/index.vue
new file mode 100644
index 0000000..709a987
--- /dev/null
+++ b/src/views/online_learn_exam/courseware/data/index.vue
@@ -0,0 +1,293 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+ 展开
+
+
+ 合并
+
+
+
+
+
+
+
+
+
+
+ {{ serialNumber(pagination, $index) }}
+
+
+
+
+
+
+
+
+
+
+
+
+ 启用
+
+
+ 禁用
+
+
+
+
+
+
+ 预览
+
+
+ 启用
+
+
+ 禁用
+
+
+ 修改
+
+
+ 删除
+
+
+ 课件习题
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/online_learn_exam/courseware/question/components/add.vue b/src/views/online_learn_exam/courseware/question/components/add.vue
new file mode 100644
index 0000000..cda2fa1
--- /dev/null
+++ b/src/views/online_learn_exam/courseware/question/components/add.vue
@@ -0,0 +1,235 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+ 确定
+
+
+
+
+
+
+
diff --git a/src/views/online_learn_exam/courseware/question/question_list.vue b/src/views/online_learn_exam/courseware/question/question_list.vue
new file mode 100644
index 0000000..fc61738
--- /dev/null
+++ b/src/views/online_learn_exam/courseware/question/question_list.vue
@@ -0,0 +1,272 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+ 导入
+
+
+
+
+
+
+
+
+
+
+
+ {{ fnFormatterQuestionType(row) }}
+
+
+
+
+
+
+ 正确
+ 错误
+
+
+ {{ row.ANSWER }}
+
+
+
+
+
+
+ 修改
+
+
+ 删除
+
+
+
+
+
+ 新增
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/online_learn_exam/courseware/video/index.vue b/src/views/online_learn_exam/courseware/video/index.vue
new file mode 100644
index 0000000..02e2800
--- /dev/null
+++ b/src/views/online_learn_exam/courseware/video/index.vue
@@ -0,0 +1,340 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+ 重置
+
+
+ 展开
+
+
+ 合并
+
+
+
+
+
+
+
+
+
+
+ {{ serialNumber(pagination, $index) }}
+
+
+
+
+
+
+
+
+
+
+
+
+ 启用
+
+
+ 禁用
+
+
+
+
+
+
+ 商城
+
+
+ 自传
+
+
+
+
+
+
+
+ 预览
+
+
+ 启用
+
+
+ 禁用
+
+
+ 修改
+
+
+ 删除
+
+
+ 课件习题
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/platform_resource_library/courseware/video.vue b/src/views/platform_resource_library/courseware/video.vue
index a910a12..1b30fea 100644
--- a/src/views/platform_resource_library/courseware/video.vue
+++ b/src/views/platform_resource_library/courseware/video.vue
@@ -210,7 +210,7 @@ const fnPreviewVideo = async (row) => {
});
if (respData && respData.type === "success") {
const video = {};
- respData.videoList.forEach((item) => {
+ respData.videoList?.forEach((item) => {
video[item.definition] = item.playURL;
});
data.videoDialog.src = JSON.stringify(video);
diff --git a/src/views/platform_resource_library/curriculum/view.vue b/src/views/platform_resource_library/curriculum/view.vue
index 9b97ffe..f4aa039 100644
--- a/src/views/platform_resource_library/curriculum/view.vue
+++ b/src/views/platform_resource_library/curriculum/view.vue
@@ -196,7 +196,7 @@ const fnPreviewVideo = async (row) => {
});
if (respData && respData.type === "success") {
const video = {};
- respData.videoList.forEach((item) => {
+ respData.videoList?.forEach((item) => {
video[item.definition] = item.playURL;
});
data.videoDialog.src = JSON.stringify(video);
diff --git a/src/views/platform_resource_library/paper/view.vue b/src/views/platform_resource_library/paper/view.vue
index 080dfc9..4ba4d1f 100644
--- a/src/views/platform_resource_library/paper/view.vue
+++ b/src/views/platform_resource_library/paper/view.vue
@@ -4,7 +4,6 @@
{{ data.paperInfo.EXAMNAME }}
-
{{ data.paperInfo.EXAMSCORE }}
@@ -37,57 +36,53 @@
-
-
-
-
- {{ index + 1 }}.
-
- (单选题)
-
-
- (多选题)
-
-
- (判断题)
-
- {{ row.QUESTIONDRY }}
-
-
-
-
-
- A.{{ row.OPTIONA }}
- B.{{ row.OPTIONB }}
- C.{{ row.OPTIONC }}
- D.{{ row.OPTIOND }}
-
-
- A.{{ row.OPTIONA }}
- B.{{ row.OPTIONB }}
- C.{{ row.OPTIONC }}
- D.{{ row.OPTIOND }}
-
-
- A.{{ row.OPTIONA }}
- B.{{ row.OPTIONB }}
-
-
-
答案:{{ row.ANSWER }}
+
+
+ {{ index + 1 }}.
+
+ (单选题)
+
+
+ (多选题)
+
+
+ (判断题)
+
+ {{ row.QUESTIONDRY }}
-
+
+
+
+ A.{{ row.OPTIONA }}
+ B.{{ row.OPTIONB }}
+ C.{{ row.OPTIONC }}
+ D.{{ row.OPTIOND }}
+
+
+ A.{{ row.OPTIONA }}
+ B.{{ row.OPTIONB }}
+ C.{{ row.OPTIONC }}
+ D.{{ row.OPTIOND }}
+
+
+ A.{{ row.OPTIONA }}
+ B.{{ row.OPTIONB }}
+
+
+
答案:{{ row.ANSWER }}
+
@@ -114,4 +109,9 @@ const fnGetPaperInfo = async () => {
await fnGetPaperInfo();
-
+
diff --git a/src/views/risk_control/ledger/components/add.vue b/src/views/risk_control/ledger/components/add.vue
index 64044d7..e15936c 100644
--- a/src/views/risk_control/ledger/components/add.vue
+++ b/src/views/risk_control/ledger/components/add.vue
@@ -1,7 +1,7 @@
@@ -150,44 +150,46 @@
/>
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
@@ -232,6 +234,14 @@ const props = defineProps({
required: true,
default: "",
},
+ control: {
+ type: Boolean,
+ default: true,
+ },
+ title: {
+ type: String,
+ default: "",
+ },
});
const emits = defineEmits(["update:visible", "update:form", "get-data"]);
const { visible, form } = useVModels(props, emits);
@@ -371,11 +381,12 @@ const fnSubmit = debounce(
ACCIDENTS: form.value.ACCIDENTS.join(","),
ACCIDENTS_NAME,
};
- if (props.type === "add") await setRiskControlLedgerAdd(params);
- else await setRiskControlLedgerEdit(params);
+ let resData = {};
+ if (props.type === "add") resData = await setRiskControlLedgerAdd(params);
+ else resData = await setRiskControlLedgerEdit(params);
ElMessage.success("操作成功");
fnClose();
- emits("get-data");
+ emits("get-data", resData.pd);
},
{ atBegin: true }
);
diff --git a/src/views/risk_control/ledger/index.vue b/src/views/risk_control/ledger/index.vue
index 6b7aabd..f9e8a3c 100644
--- a/src/views/risk_control/ledger/index.vue
+++ b/src/views/risk_control/ledger/index.vue
@@ -34,7 +34,6 @@
multiple
show-checkbox
collapse-tags
- root-disabled="N"
/>
diff --git a/src/views/temporary_electricity_usage/job_data/view.vue b/src/views/temporary_electricity_usage/job_data/view.vue
index 9f65bd0..d184961 100644
--- a/src/views/temporary_electricity_usage/job_data/view.vue
+++ b/src/views/temporary_electricity_usage/job_data/view.vue
@@ -1,5 +1,5 @@
-
+