Commit 938c79d8 authored by liuyuping's avatar liuyuping

'2'

parent bb16dba7
......@@ -126,3 +126,11 @@ export function findTodayTrainEnterprise() {
method: 'get'
})
}
// 安全教育培训统计
export function analyzeSafetyEducation() {
return request({
url: 'api/trainImage/analyzeSafetyEducation',
method: 'get'
})
}
\ No newline at end of file
......@@ -10,6 +10,7 @@
:data="tableData"
style="width:100%;"
border
v-loading="isLoadingAdvice"
@selection-change="handleSelectionChange"
>
<el-table-column
......@@ -127,7 +128,8 @@ export default {
},
currentPage: 1,
curPageSize: 10,
totalColumn: 40
totalColumn: 40,
isLoadingAdvice: false
}
},
mounted() {
......@@ -196,12 +198,15 @@ export default {
handleSizeChange(val) {
// 每页多少条
this.curPageSize = val
this.initAllNotices()
},
handleCurrentChange(val) {
// 当前是多少页
this.currentPage = val
this.initAllNotices()
},
initAllNotices() {
this.isLoadingAdvice = true
getNotice({
page: this.currentPage - 1,
size: this.curPageSize,
......@@ -215,7 +220,11 @@ export default {
item.content = item.noticeContent
})
this.tableData = [...res.content]
}).catch(() => {})
this.totalColumn = res.totalElements
this.isLoadingAdvice = false
}).catch(() => {
this.isLoadingAdvice = false
})
}
}
}
......
......@@ -80,7 +80,7 @@
class="secure-teach1-item1-wrapper"
@click.stop="clickToSecureTeachItem1"
>
<div class="secure-teach1-item1-sum">416</div>
<div class="secure-teach1-item1-sum">{{ trainimgEnterpriseNum }}</div>
<div class="secure-teach1-enterprise1-sum">参加培训企业数量</div>
<div
class="secure-teach1-icon1"
......@@ -91,7 +91,7 @@
class="secure-teach1-item2-wrapper"
@click.stop="clickToSecureTeachItem2"
>
<div class="secure-teach1-item2-sum">2103</div>
<div class="secure-teach1-item2-sum">{{ trainimgPeopleNum }}</div>
<div class="secure-teach1-enterprise2-sum">参加总人数</div>
<div
class="secure-teach1-icon2"
......@@ -106,7 +106,7 @@
class="secure-teach2-item1-wrapper"
@click.stop="clickToSecureTeachItem3"
>
<div class="secure-teach2-item1-sum">0</div>
<div class="secure-teach2-item1-sum">{{ trainimgTodayEnterpriseNum }}</div>
<div class="secure-teach2-enterprise1-sum">
今日参加培训企业数量
</div>
......@@ -119,7 +119,7 @@
class="secure-teach2-item2-wrapper"
@click.stop="clickToSecureTeachItem4"
>
<div class="secure-teach2-item2-sum">0</div>
<div class="secure-teach2-item2-sum">{{ trainimgTodayPeopleNum }}</div>
<div class="secure-teach2-enterprise2-sum">今日参加总人数</div>
<div
class="secure-teach2-icon2"
......@@ -479,6 +479,41 @@
</div>
</div>
</div>
<!-- 培训影像列表 -->
<div v-show="isShowTrainImgList && mapActiveIndex === 3" class="trainimg-list-wrapper">
<div class="trainimg-list-title-wrapper">培训影像列表</div>
<div class="trainimg-list-content-wrapper">
<div
v-for="(item, index) in curTrainImages"
:key="item.id"
:class="{ active: index === curTrainImgIndex }"
class="trainimg-list-content-item"
@click.stop="trainimgClick(item, index)"
>
{{ item.briefIntroduction }}
<svg
class="arrow-to-right"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="2070"
width="24"
height="24"
>
<path
d="M698.181818 546.909091a35.141818 35.141818 0 0 1-24.669091-10.24l-372.363636-372.363636a34.909091 34.909091 0 0 1 49.338182-49.338182l372.363636 372.363636a34.676364 34.676364 0 0 1 0 49.338182 35.141818 35.141818 0 0 1-24.669091 10.24z"
p-id="2071"
fill="currentColor"
/>
<path
d="M325.818182 919.272727a35.141818 35.141818 0 0 1-24.669091-10.24 34.676364 34.676364 0 0 1 0-49.338182l372.363636-372.363636a34.909091 34.909091 0 0 1 49.338182 49.338182l-372.363636 372.363636a35.141818 35.141818 0 0 1-24.669091 10.24z"
p-id="2072"
fill="currentColor"
/>
</svg>
</div>
</div>
</div>
<!-- 重要工作部署 -->
<div
v-show="mapActiveIndex === 9"
......@@ -2638,6 +2673,38 @@
</div>
</div>
</div>
<!-- 安全教育培训 -->
<div
v-if="isShowTrainImgItem"
class="enter-trainimg-item-wrapper"
>
<!-- 关闭按钮 -->
<div
class="enter-trainimg-item-close"
@click.stop="enterTrainImgItemClose"
></div>
<!-- 培训影像 -->
<div class="enter-trainimg-wrapper">
<div class="enter-trainimg-title">培训简介</div>
<div class="enter-trainimg-content" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]">{{curTrainImages[curTrainImgIndex].briefIntroduction}}</div>
<div class="enter-trainimg-title">参与人数</div>
<div class="enter-trainImg-content" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]">{{curTrainImages[curTrainImgIndex].peopleNum}}</div>
<div class="enter-trainimg-title">所在位置</div>
<div class="enter-trainImg-content" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]">{{curTrainImages[curTrainImgIndex].location}}</div>
<div class="enter-trainimg-title">培训前照片</div>
<div class="enter-trainimg-img">
<img :src="curTrainImages[curTrainImgIndex].beforeImgPath" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]"/>
</div>
<div class="enter-trainimg-title">培训中照片</div>
<div class="enter-trainimg-img">
<img :src="curTrainImages[curTrainImgIndex].trainingImgPath" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]" />
</div>
<div class="enter-trainimg-title">培训后照片</div>
<div class="enter-trainimg-img">
<img :src="curTrainImages[curTrainImgIndex].afterImgPath" v-if="curTrainImgIndex > -1 && curTrainImages[curTrainImgIndex]" />
</div>
</div>
</div>
</div>
<!-- 青柠监控 -->
<div v-show="qingning" class="qingning-wrapper">
......@@ -2788,7 +2855,12 @@ import {
findUploadedDangerJobReport,
dangerJobReport } from '@/api/hwapproval.js'
// import PDFViewer from 'pdf-viewer-vue';
import { findTrainEnterprise, findTodayTrainEnterprise } from '@/api/trainimage.js'
import {
findTrainEnterprise,
findTodayTrainEnterprise,
searchTrainImage,
analyzeSafetyEducation } from '@/api/trainimage.js'
export default {
components: {
LivePlayer,
......@@ -2796,6 +2868,14 @@ export default {
},
data() {
return {
trainimgEnterpriseNum: 0,
trainimgPeopleNum: 0,
trainimgTodayEnterpriseNum: 0,
trainimgTodayPeopleNum: 0,
isShowTrainImgList: false,
isShowTrainImgItem: false,
curTrainImgIndex: -1,
curTrainImages: [],
trainEnterprises: [],
todayTrainEnterprises: [],
isCurCertifyPdfFile: false,
......@@ -3622,12 +3702,30 @@ export default {
},
methods: {
async initTrainEnterprises() {
await analyzeSafetyEducation().then(res => {
this.trainimgEnterpriseNum = res.enterpriseNum
this.trainimgPeopleNum = res.peopleNum
this.trainimgTodayEnterpriseNum = res.todayEnterpriseNum
this.trainimgTodayPeopleNum = res.todayPeopleNum
})
await findTrainEnterprise().then(res => {
this.trainEnterprises = [...res]
this.trainEnterprises = [...res.map(item => {
return {
...item,
companyName: item.enterpriseName,
companyId: item.enterpriseId
}
})]
console.log(res, 'findTrainEnterprise findTrainEnterprise')
})
await findTodayTrainEnterprise().then(res => {
this.todayTrainEnterprises = [...res]
this.todayTrainEnterprises = [...res.map(item => {
return {
...item,
companyName: item.enterpriseName,
companyId: item.enterpriseId
}
})]
console.log(res, 'findTodayTrainEnterprise findTodayTrainEnterprise')
})
},
......@@ -3922,6 +4020,7 @@ export default {
this.isShowTeachChargeDepart = false;
this.isShowTeachIndusTypes = false;
this.isShowTeachEnterLists = false;
this.isShowTrainImgList = false;
return;
}
// 补充当前企业到全局 管理局-行业-企业
......@@ -3957,6 +4056,7 @@ export default {
this.isShowTeachChargeDepart = false;
this.isShowTeachIndusTypes = false;
this.isShowTeachEnterLists = false;
this.isShowTrainImgList = false;
return;
}
// 补充当前企业到全局 管理局-行业-企业
......@@ -3992,6 +4092,7 @@ export default {
this.isShowTeachChargeDepart = false;
this.isShowTeachIndusTypes = false;
this.isShowTeachEnterLists = false;
this.isShowTrainImgList = false;
return;
}
// 补充当前企业到全局 管理局-行业-企业
......@@ -4027,6 +4128,7 @@ export default {
this.isShowTeachChargeDepart = false;
this.isShowTeachIndusTypes = false;
this.isShowTeachEnterLists = false;
this.isShowTrainImgList = false;
return;
}
// 补充当前企业到全局 管理局-行业-企业
......@@ -11078,6 +11180,11 @@ export default {
this.isFilterPointer = true;
this.isShowCertify = false;
},
// 企业培训影响关闭
enterTrainImgItemClose() {
this.isFilterPointer = true;
this.isShowTrainImgItem = false;
},
// 企业备案关闭
enterDangerItemClose() {
this.isFilterPointer = true;
......@@ -11979,6 +12086,7 @@ export default {
if (this.mapActiveIndex === 3) {
this.isShowTeachIndusTypes = true;
this.isShowTeachEnterLists = false;
this.isShowTrainImgList = false
return;
}
if (this.mapActiveIndex === 7) {
......@@ -12030,6 +12138,8 @@ export default {
this.curSelectEnterIndex = -1;
if (this.mapActiveIndex === 3) {
this.isShowTeachEnterLists = true;
this.isShowTrainImgList = false;
return;
}
if (this.mapActiveIndex === 5) {
......@@ -12045,6 +12155,26 @@ export default {
async enterClick(item, index) {
this.curSelectEnterIndex = index;
if (this.mapActiveIndex === 3) {
console.log(item, 'enterClick enterClick curSelectEnterIndex curSelectEnterIndex curSelectEnterIndex')
let params = {
page: 0,
size: 999,
sort: 'time,desc',
enterpriseId: item.enterpriseId
}
await searchTrainImage(params).then(res => {
this.isShowTrainImgList = true
this.curTrainImgIndex = -1
this.curTrainImages = [...res.content.map(item => {
return {
...item,
beforeImgPath: '\\train-image\\' + item.beforeImgPath.split('\\train-image\\')[1],
trainingImgPath: '\\train-image\\' + item.trainingImgPath.split('\\train-image\\')[1],
afterImgPath: '\\train-image\\' + item.trainingImgPath.split('\\train-image\\')[1]
}
})]
console.log(res, 'searchTrainImage searchTrainImage searchTrainImage __________')
})
return;
}
if (this.mapActiveIndex === 5) {
......@@ -12324,6 +12454,11 @@ export default {
this.isFilterPointer = false;
this.isShowDanger = true;
},
trainimgClick(item, index) {
this.curTrainImgIndex = index;
this.isFilterPointer = false;
this.isShowTrainImgItem = true
},
searchEnterKeyUp(event) {
if (event.key === "Enter") {
event.preventDefault();
......@@ -14432,6 +14567,7 @@ html {
}
}
}
/* 隐患列表 */
.danger-list-wrapper {
position: absolute;
top: 209px;
......@@ -14483,6 +14619,58 @@ html {
}
}
}
/* 培训影响列表 */
.trainimg-list-wrapper {
position: absolute;
top: 209px;
left: 1130px;
width: 300px;
height: 401px;
background: #020c39;
border: 1px solid #05f9fb;
padding: 8px;
.trainimg-list-title-wrapper {
width: 100%;
height: 43px;
background-image: url("../assets/home/矩形7拷贝5.png");
background-repeat: no-repeat;
font-family: "SourceHanSansCN-Bold";
font-weight: Bold;
color: #dfeef3;
font-size: 18px;
line-height: 43px;
text-indent: 2em;
}
.trainimg-list-content-wrapper {
width: 100%;
height: 600px;
overflow-y: scroll;
&::-webkit-scrollbar {
display: none;
}
.trainimg-list-content-item {
width: 100%;
padding: 6px;
font-family: "SourceHanSansCN-Medium";
color: #05f9fb;
font-size: 20px;
white-space: nowrap;
overflow-x: hidden;
text-overflow: ellipsis;
position: relative;
&.active {
color: #ffe13e;
}
.arrow-to-right {
background: #020c39;
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
}
}
}
}
/* 重要工作部署 */
.import-work-deployment-wrapper {
position: absolute;
......@@ -18000,6 +18188,60 @@ html {
}
}
}
/* 企业培训影像 */
.enter-trainimg-item-wrapper {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: 1109px;
height: 874px;
background-image: url("../assets/home/安全措施大图.png");
background-position: center;
background-repeat: no-repeat;
padding: 5px;
/* 关闭按钮 */
.enter-trainimg-item-close {
position: absolute;
right: 1px;
top: 27px;
width: 42px;
height: 42px;
background-image: url("../assets/home/关闭.png");
background-position: center;
background-repeat: no-repeat;
cursor: pointer;
}
/* 培训影像 */
.enter-trainimg-wrapper {
font-family: "SourceHanSansCN-Medium";
color: #fff;
font-size: 28px;
padding: 4px;
text-indent: 1.5em;
height: 750px;
overflow-y: scroll;
&::-webkit-scrollbar {
display: none;
}
.enter-trainimg-title {
font-family: "SourceHanSansCN-Medium";
color: #07c1f7;
font-size: 34px;
text-indent: 0.5em;
margin-top: 22px;
margin-bottom: 13px;
}
.enter-trainimg-content {
margin-top: 22px;
margin-bottom: 13px;
}
.enter-trainimg-img {
display: flex;
justify-content: center;
}
}
}
}
/** 青柠监控 */
.qingning-wrapper {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment