update code

prv
haha 2024-04-06 23:26:30 +08:00
parent 3bcf018be4
commit f606a9d864
3 changed files with 652 additions and 657 deletions

View File

@ -5,66 +5,33 @@
<el-col :span="12" style="position: relative"> <el-col :span="12" style="position: relative">
<module-one-3-1 label="质量隐患检查" class="hide-scroll"> <module-one-3-1 label="质量隐患检查" class="hide-scroll">
<div style="position: absolute; right: 0px; top: 4px"> <div style="position: absolute; right: 0px; top: 4px">
<el-date-picker <el-date-picker class="bg-date-picker" v-model="selDate" type="daterange"
class="bg-date-picker" popper-class="bg-date-picker-pop" :editable="false" @change="dtChange" :picker-options="pickerOptions"
v-model="selDate" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
type="daterange"
popper-class="bg-date-picker-pop"
:editable="false"
@change="dtChange"
:picker-options="pickerOptions"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</div> </div>
<div :key="'a' + elSummaryKey"> <div :key="'a' + elSummaryKey">
<div class="warning-info-title" style="padding-left: 20px"> <div class="warning-info-title" style="padding-left: 20px">
<div <div :class="safeNav == 0 ? 'active' : ''" @click="doSafeNav(0, '汇总总数')">
:class="safeNav == 0 ? 'active' : ''"
@click="doSafeNav(0, '汇总总数')"
>
汇总 汇总
</div> </div>
<div <div :class="safeNav == 3 ? 'active' : ''" @click="doSafeNav(3, '集团总数')">
:class="safeNav == 3 ? 'active' : ''"
@click="doSafeNav(3, '集团总数')"
>
集团 集团
</div> </div>
<div <div :class="safeNav == 4 ? 'active' : ''" @click="doSafeNav(4, '子公司总数')">
:class="safeNav == 4 ? 'active' : ''"
@click="doSafeNav(4, '子公司总数')"
>
子公司 子公司
</div> </div>
<div <div :class="safeNav == 5 ? 'active' : ''" @click="doSafeNav(5, '甲方代表')">
:class="safeNav == 5 ? 'active' : ''"
@click="doSafeNav(5, '甲方代表')"
>
甲方代表 甲方代表
</div> </div>
<div <div :class="safeNav == 6 ? 'active' : ''" @click="doSafeNav(6, '监理单位')">
:class="safeNav == 6 ? 'active' : ''"
@click="doSafeNav(6, '监理单位')"
>
监理单位 监理单位
</div> </div>
<div <div :class="safeNav == 7 ? 'active' : ''" @click="doSafeNav(7, '总包单位')">
:class="safeNav == 7 ? 'active' : ''"
@click="doSafeNav(7, '总包单位')"
>
总包单位 总包单位
</div> </div>
</div> </div>
<project-overview-chart2 <project-overview-chart2 :key="'b' + safeNav" :sp="'\n'" :maintitle="fmt(summaryTotal)"
:key="'b' + safeNav" :typedata="summary" :text="safeText" :height="230"></project-overview-chart2>
:sp="'\n'"
:maintitle="fmt(summaryTotal)"
:typedata="summary"
:text="safeText"
:height="230"
></project-overview-chart2>
</div> </div>
<div style="padding: 0px 20px" :key="'c' + elSummaryPrjKey"> <div style="padding: 0px 20px" :key="'c' + elSummaryPrjKey">
<el-row> <el-row>
@ -74,51 +41,29 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<div class="rank-chart-title bottom-line"> <div class="rank-chart-title bottom-line">
<span style="position: relative; top: -4px" <span style="position: relative; top: -4px">项目质量隐患占比({{ summaryPrjTotal }})</span>
>项目质量隐患占比({{ summaryPrjTotal }})</span
>
</div> </div>
<div class="idle-list problemmodify_list" style="padding-top: 20px"> <div class="idle-list problemmodify_list" style="padding-top: 20px">
<el-table <el-table style="width: 100%" ref="wgzp" :data="summaryPrj" height="600"
style="width: 100%" @row-click="doProbleRowClick" :row-style="rowStyle" class="elTable">
ref="wgzp"
:data="summaryPrj"
height="600"
@row-click="doProbleRowClick"
:row-style="rowStyle"
class="elTable"
>
<el-table-column type="index" width="40"> <el-table-column type="index" width="40">
<template slot-scope="scope"> <template slot-scope="scope">
<div <div :class="scope.$index < 3 && +scope.row.value > 0
:class="
scope.$index < 3 && +scope.row.value > 0
? 'idle-list-color' ? 'idle-list-color'
: '' : ''
" ">
>
{{ scope.$index + 1 }} {{ scope.$index + 1 }}
</div> </div>
</template></el-table-column </template></el-table-column>
> <el-table-column prop="projectName" label="项目名称" width="120" class-name="text-left"
<el-table-column :show-overflow-tooltip="true">
prop="projectName"
label="项目名称"
width="120"
class-name="text-left"
:show-overflow-tooltip="true"
>
</el-table-column> </el-table-column>
<el-table-column prop="prop" label="占比"> <el-table-column prop="prop" label="占比">
<template slot-scope="scope"> <template slot-scope="scope">
<idle-list-chart <idle-list-chart :prop="Number(scope.row.prop)" :color="scope.$index < 3 && +scope.row.id > 0
:prop="Number(scope.row.prop)"
:color="
scope.$index < 3 && +scope.row.id > 0
? '#f05e35' ? '#f05e35'
: '#6ab9fe' : '#6ab9fe'
" "></idle-list-chart>
></idle-list-chart>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="id" label="隐患数" width="70" align="center"> <el-table-column prop="id" label="隐患数" width="70" align="center">
@ -126,22 +71,14 @@
<div>{{ scope.row.id }}</div> <div>{{ scope.row.id }}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="id" label="超时隐患数" width="100" align="center">
prop="id"
label="超时隐患数"
width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div>{{ scope.row.infoType }}</div> <div>{{ scope.row.infoType }}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="id" label="整改率"> <el-table-column prop="id" label="整改率">
<template slot-scope="scope"> <template slot-scope="scope">
<idle-list-chart <idle-list-chart :prop="Number(scope.row.rate)" color="#6ab9fe"></idle-list-chart>
:prop="Number(scope.row.rate)"
color="#6ab9fe"
></idle-list-chart>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -153,11 +90,8 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<module-one-1-1 label="材料进场取样复试" style="position: relative"> <module-one-1-1 label="材料进场取样复试" style="position: relative">
<img <img v-if="prjs.length>1" src="images/icon2001.png" style="position: absolute; cursor: pointer; right: 12px; top: 12px"
src="images/icon2001.png" @click="doShowCheckDetectionDlg" />
style="position: absolute; cursor: pointer; right: 12px; top: 12px"
@click="doShowCheckDetectionDlg"
/>
<div class="warning-info"> <div class="warning-info">
<div class="warning-info-title"> <div class="warning-info-title">
<div :class="samplingNav == 0 ? 'active' : ''" @click="checkDetection(0)"> <div :class="samplingNav == 0 ? 'active' : ''" @click="checkDetection(0)">
@ -181,29 +115,20 @@
<el-col :span="12"> <el-col :span="12">
<div class="equipment-list-min quality-target-index-min"> <div class="equipment-list-min quality-target-index-min">
<div class="czz-number-img czz-number-img-blue"> <div class="czz-number-img czz-number-img-blue">
<svg <svg class="my-svg-icon-blue" style="
class="my-svg-icon-blue"
style="
vertical-align: middle; vertical-align: middle;
fill: currentColor; fill: currentColor;
overflow: hidden; overflow: hidden;
" " viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3054">
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="3054"
>
<path <path
d="M530.46 269c4.64 0 9.05 2.01 12.09 5.52l109.54 126.3A16.01 16.01 0 0 1 656 411.3V893c0 8.82-7.18 16-16 16H178c-8.82 0-16-7.18-16-16V285c0-8.82 7.18-16 16-16h352.46m0-64H178c-44.18 0-80 35.82-80 80v608c0 44.18 35.82 80 80 80h462c44.18 0 80-35.82 80-80V411.3c0-19.26-6.95-37.87-19.56-52.42L590.9 232.58A80.014 80.014 0 0 0 530.46 205zM819.29 864h-45.92c-17.67 0-32-14.33-32-32s14.33-32 32-32h45.92c25.21 0 45.71-19.94 45.71-44.46V295.17c0-10.61-3.91-20.88-11.01-28.94L747.58 145.52c-8.7-9.87-21.35-15.52-34.7-15.52H370.49c-17.67 0-32-14.33-32-32s14.33-32 32-32h342.38c31.72 0 61.87 13.56 82.71 37.2L902 223.91c17.41 19.75 27 45.06 27 71.26v460.37C929 815.35 879.78 864 819.29 864zM702 468H552.09c-41.96 0-76.09-31.47-76.09-70.15V240.5h64v157.35c0 1.88 4.57 6.15 12.09 6.15H702v64zM898 326H748.09c-41.96 0-76.09-31.47-76.09-70.15V98.5h64v157.35c0 1.88 4.57 6.15 12.09 6.15H898v64zM535.13 784.5H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32zM535.13 638.75H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32zM535.13 493H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32z" d="M530.46 269c4.64 0 9.05 2.01 12.09 5.52l109.54 126.3A16.01 16.01 0 0 1 656 411.3V893c0 8.82-7.18 16-16 16H178c-8.82 0-16-7.18-16-16V285c0-8.82 7.18-16 16-16h352.46m0-64H178c-44.18 0-80 35.82-80 80v608c0 44.18 35.82 80 80 80h462c44.18 0 80-35.82 80-80V411.3c0-19.26-6.95-37.87-19.56-52.42L590.9 232.58A80.014 80.014 0 0 0 530.46 205zM819.29 864h-45.92c-17.67 0-32-14.33-32-32s14.33-32 32-32h45.92c25.21 0 45.71-19.94 45.71-44.46V295.17c0-10.61-3.91-20.88-11.01-28.94L747.58 145.52c-8.7-9.87-21.35-15.52-34.7-15.52H370.49c-17.67 0-32-14.33-32-32s14.33-32 32-32h342.38c31.72 0 61.87 13.56 82.71 37.2L902 223.91c17.41 19.75 27 45.06 27 71.26v460.37C929 815.35 879.78 864 819.29 864zM702 468H552.09c-41.96 0-76.09-31.47-76.09-70.15V240.5h64v157.35c0 1.88 4.57 6.15 12.09 6.15H702v64zM898 326H748.09c-41.96 0-76.09-31.47-76.09-70.15V98.5h64v157.35c0 1.88 4.57 6.15 12.09 6.15H898v64zM535.13 784.5H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32zM535.13 638.75H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32zM535.13 493H262.88c-17.67 0-32 14.33-32 32s14.33 32 32 32h272.25c17.67 0 32-14.33 32-32s-14.33-32-32-32z"
p-id="3055" p-id="3055"></path>
></path>
</svg> </svg>
</div> </div>
<div class="equipment-list-data"> <div class="equipment-list-data">
<p style="font-size: 12px">送检数</p> <p style="font-size: 12px">送检数</p>
<div> <div>
<span>{{ chkDetection.chk1 }}</span <span>{{ chkDetection.chk1 }}</span><span style="font-size: 12px"></span>
><span style="font-size: 12px"></span>
</div> </div>
</div> </div>
</div> </div>
@ -211,29 +136,20 @@
<el-col :span="12"> <el-col :span="12">
<div class="equipment-list-min quality-target-index-min"> <div class="equipment-list-min quality-target-index-min">
<div class="czz-number-img czz-number-img-green"> <div class="czz-number-img czz-number-img-green">
<svg <svg class="my-svg-icon-green" style="
class="my-svg-icon-green"
style="
vertical-align: middle; vertical-align: middle;
fill: currentColor; fill: currentColor;
overflow: hidden; overflow: hidden;
" " viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7849">
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="7849"
>
<path <path
d="M896 64H128c-35.296 0-64 28.704-64 64v768c0 35.296 28.704 64 64 64h592a32 32 0 1 0 0-64H128V128h768v592a32 32 0 1 0 64 0V128c0-35.296-28.704-64-64-64zM791.744 746.496A206.752 206.752 0 0 0 832 624c0-114.688-93.312-208-208-208S416 509.312 416 624s93.312 208 208 208a206.752 206.752 0 0 0 122.496-40.256l110.88 110.88a31.904 31.904 0 0 0 45.248 0 31.968 31.968 0 0 0 0-45.248l-110.88-110.88zM480 624c0-79.392 64.608-144 144-144s144 64.608 144 144-64.608 144-144 144-144-64.608-144-144zM800 264a32 32 0 0 0-32-32H256a32 32 0 0 0 0 64h512a32 32 0 0 0 32-32zM256 422.656a32 32 0 0 0 0 64h96a32 32 0 0 0 0-64H256z" d="M896 64H128c-35.296 0-64 28.704-64 64v768c0 35.296 28.704 64 64 64h592a32 32 0 1 0 0-64H128V128h768v592a32 32 0 1 0 64 0V128c0-35.296-28.704-64-64-64zM791.744 746.496A206.752 206.752 0 0 0 832 624c0-114.688-93.312-208-208-208S416 509.312 416 624s93.312 208 208 208a206.752 206.752 0 0 0 122.496-40.256l110.88 110.88a31.904 31.904 0 0 0 45.248 0 31.968 31.968 0 0 0 0-45.248l-110.88-110.88zM480 624c0-79.392 64.608-144 144-144s144 64.608 144 144-64.608 144-144 144-144-64.608-144-144zM800 264a32 32 0 0 0-32-32H256a32 32 0 0 0 0 64h512a32 32 0 0 0 32-32zM256 422.656a32 32 0 0 0 0 64h96a32 32 0 0 0 0-64H256z"
p-id="7850" p-id="7850"></path>
></path>
</svg> </svg>
</div> </div>
<div class="equipment-list-data"> <div class="equipment-list-data">
<p style="font-size: 12px">待检数</p> <p style="font-size: 12px">待检数</p>
<div> <div>
<span class="fgreen">{{ chkDetection.chk2 }}</span <span class="fgreen">{{ chkDetection.chk2 }}</span><span style="font-size: 12px"></span>
><span style="font-size: 12px"></span>
</div> </div>
</div> </div>
</div> </div>
@ -241,30 +157,20 @@
<el-col :span="12"> <el-col :span="12">
<div class="equipment-list-min quality-target-index-min"> <div class="equipment-list-min quality-target-index-min">
<div class="czz-number-img czz-number-img-blue"> <div class="czz-number-img czz-number-img-blue">
<svg <svg class="my-svg-icon-blue" style="
class="my-svg-icon-blue"
style="
vertical-align: middle; vertical-align: middle;
fill: currentColor; fill: currentColor;
overflow: hidden; overflow: hidden;
" " viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10575">
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="10575"
>
<path <path
d="M634.593683 354.898336h-189.279113c39.748614-30.284658 71.926063-58.676525 96.532347-87.068391 26.499076 32.177449 58.676525 60.569316 92.746766 87.068391z m30.284658 177.922366h-246.062847v81.390019H662.985549v-81.390019zM984.760041 190.225508v202.528651c0 183.600739-81.390018 355.844732-225.242144 471.304991l-187.386322 151.42329c-5.678373 5.678373-15.142329 7.571165-22.713493 7.571164s-17.03512-1.892791-24.606285-7.571164l-187.386322-151.42329C195.466141 748.598891 114.076122 576.354898 114.076122 392.754159V190.225508c0-15.142329 9.463956-30.284658 24.606285-35.963031l397.486137-151.42329c9.463956-3.785582 18.927911-3.785582 26.499076 0l397.486136 151.42329c15.142329 5.678373 24.606285 20.820702 24.606285 35.963031zM734.911612 464.680222H348.782222v240.384473h70.033272v-24.606285H662.985549v24.606285h70.033272V464.680222z m64.354899-98.425139c-92.746765-39.748614-162.780037-88.961183-210.099816-149.530499l18.927912-22.713493h-98.425139c-41.641405 62.462107-117.35305 121.138632-225.242144 177.922366 17.03512 18.927911 32.177449 39.748614 45.426987 60.569316 22.713494-13.249538 45.426987-26.499076 64.354898-39.748614v30.284658h293.382625v-28.391867c20.820702 13.249538 41.641405 24.606285 62.462107 34.07024 15.142329-18.927911 30.284658-39.748614 49.21257-62.462107z" d="M634.593683 354.898336h-189.279113c39.748614-30.284658 71.926063-58.676525 96.532347-87.068391 26.499076 32.177449 58.676525 60.569316 92.746766 87.068391z m30.284658 177.922366h-246.062847v81.390019H662.985549v-81.390019zM984.760041 190.225508v202.528651c0 183.600739-81.390018 355.844732-225.242144 471.304991l-187.386322 151.42329c-5.678373 5.678373-15.142329 7.571165-22.713493 7.571164s-17.03512-1.892791-24.606285-7.571164l-187.386322-151.42329C195.466141 748.598891 114.076122 576.354898 114.076122 392.754159V190.225508c0-15.142329 9.463956-30.284658 24.606285-35.963031l397.486137-151.42329c9.463956-3.785582 18.927911-3.785582 26.499076 0l397.486136 151.42329c15.142329 5.678373 24.606285 20.820702 24.606285 35.963031zM734.911612 464.680222H348.782222v240.384473h70.033272v-24.606285H662.985549v24.606285h70.033272V464.680222z m64.354899-98.425139c-92.746765-39.748614-162.780037-88.961183-210.099816-149.530499l18.927912-22.713493h-98.425139c-41.641405 62.462107-117.35305 121.138632-225.242144 177.922366 17.03512 18.927911 32.177449 39.748614 45.426987 60.569316 22.713494-13.249538 45.426987-26.499076 64.354898-39.748614v30.284658h293.382625v-28.391867c20.820702 13.249538 41.641405 24.606285 62.462107 34.07024 15.142329-18.927911 30.284658-39.748614 49.21257-62.462107z"
fill="" fill="" p-id="10576"></path>
p-id="10576"
></path>
</svg> </svg>
</div> </div>
<div class="equipment-list-data"> <div class="equipment-list-data">
<p>合格数</p> <p>合格数</p>
<div> <div>
<span>{{ chkDetection.chk3 }}</span <span>{{ chkDetection.chk3 }}</span><span style="font-size: 12px"></span>
><span style="font-size: 12px"></span>
</div> </div>
</div> </div>
</div> </div>
@ -272,35 +178,23 @@
<el-col :span="12"> <el-col :span="12">
<div class="equipment-list-min quality-target-index-min"> <div class="equipment-list-min quality-target-index-min">
<div class="czz-number-img czz-number-img-green"> <div class="czz-number-img czz-number-img-green">
<svg <svg class="my-svg-icon-green" style="
class="my-svg-icon-green"
style="
vertical-align: middle; vertical-align: middle;
fill: currentColor; fill: currentColor;
overflow: hidden; overflow: hidden;
" " viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8279">
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="8279"
>
<path <path
d="M855.13728 187.4176c-105.97376 0-209.34656-36.9152-291.08736-103.936l-40.9344-33.56672-40.94976 33.56672c-81.77152 67.01568-185.15456 103.936-291.09248 103.936H126.49984V622.83264l4.95104 11.90912c67.33824 161.82784 206.54592 289.3824 372.38272 341.2224l19.08224 5.96992 19.11808-5.86752c170.07616-52.16768 305.99168-176.79872 372.92032-341.89824l4.62848-11.43808 0.08704-12.34944 0.03072-3.27168V187.4176h-64.5632z m0 419.22048l-0.03072 3.26144c-58.8544 145.21856-180.87424 258.06848-332.00128 304.44032-148.33664-46.39232-272.86528-162.24256-332.032-304.4096V252.0064c125.99296 0 241.62304-44.46208 332.032-118.56896C613.50912 207.5648 729.088 252.0064 855.13728 252.0064v354.63168z" d="M855.13728 187.4176c-105.97376 0-209.34656-36.9152-291.08736-103.936l-40.9344-33.56672-40.94976 33.56672c-81.77152 67.01568-185.15456 103.936-291.09248 103.936H126.49984V622.83264l4.95104 11.90912c67.33824 161.82784 206.54592 289.3824 372.38272 341.2224l19.08224 5.96992 19.11808-5.86752c170.07616-52.16768 305.99168-176.79872 372.92032-341.89824l4.62848-11.43808 0.08704-12.34944 0.03072-3.27168V187.4176h-64.5632z m0 419.22048l-0.03072 3.26144c-58.8544 145.21856-180.87424 258.06848-332.00128 304.44032-148.33664-46.39232-272.86528-162.24256-332.032-304.4096V252.0064c125.99296 0 241.62304-44.46208 332.032-118.56896C613.50912 207.5648 729.088 252.0064 855.13728 252.0064v354.63168z"
fill="" fill="" p-id="8280"></path>
p-id="8280"
></path>
<path <path
d="M400.47616 304.95232c57.68192 2.5856 87.78752 39.74656 90.368 111.5136-2.58048 70.50752-33.97632 107.0336-94.21312 109.5936-55.12192-3.85024-84.59264-40.37632-88.43776-109.5936 2.55488-71.76704 33.31584-108.928 92.28288-111.5136z m-1.92 174.96064c26.91584-1.25952 41.0112-23.07072 42.30144-65.37216-1.29024-42.29632-14.7456-64.08192-40.37632-65.37216-28.20608 0-42.29632 22.44096-42.29632 67.29216 1.25952 39.75168 14.72 60.89728 40.3712 63.45216z m207.64672-174.96064h51.91168l-219.18208 417.21856H387.0208l219.18208-417.21856z m40.37632 199.95648c57.68192 2.5856 87.78752 40.37632 90.36288 113.4336-2.58048 66.6624-33.97632 101.23776-94.208 103.82336-56.41728-3.84512-85.88288-38.45632-88.44288-103.82336 2.56-71.77216 33.32096-109.58848 92.288-113.4336z m-1.92512 176.88576c25.63072-1.25952 39.0912-23.71072 40.38144-67.29728-1.29024-41.0112-14.12096-62.16192-38.45632-63.45216-26.91584 0-41.0368 21.81632-42.30144 65.37728 1.26976 41.0368 14.72512 62.81216 40.37632 65.37216z" d="M400.47616 304.95232c57.68192 2.5856 87.78752 39.74656 90.368 111.5136-2.58048 70.50752-33.97632 107.0336-94.21312 109.5936-55.12192-3.85024-84.59264-40.37632-88.43776-109.5936 2.55488-71.76704 33.31584-108.928 92.28288-111.5136z m-1.92 174.96064c26.91584-1.25952 41.0112-23.07072 42.30144-65.37216-1.29024-42.29632-14.7456-64.08192-40.37632-65.37216-28.20608 0-42.29632 22.44096-42.29632 67.29216 1.25952 39.75168 14.72 60.89728 40.3712 63.45216z m207.64672-174.96064h51.91168l-219.18208 417.21856H387.0208l219.18208-417.21856z m40.37632 199.95648c57.68192 2.5856 87.78752 40.37632 90.36288 113.4336-2.58048 66.6624-33.97632 101.23776-94.208 103.82336-56.41728-3.84512-85.88288-38.45632-88.44288-103.82336 2.56-71.77216 33.32096-109.58848 92.288-113.4336z m-1.92512 176.88576c25.63072-1.25952 39.0912-23.71072 40.38144-67.29728-1.29024-41.0112-14.12096-62.16192-38.45632-63.45216-26.91584 0-41.0368 21.81632-42.30144 65.37728 1.26976 41.0368 14.72512 62.81216 40.37632 65.37216z"
fill="" fill="" p-id="8281"></path>
p-id="8281"
></path>
</svg> </svg>
</div> </div>
<div class="equipment-list-data"> <div class="equipment-list-data">
<p>合格率</p> <p>合格率</p>
<div> <div>
<span class="fgreen">{{ chkDetection.percent }}</span <span class="fgreen">{{ chkDetection.percent }}</span><span style="font-size: 12px">%</span>
><span style="font-size: 12px">%</span>
</div> </div>
</div> </div>
</div> </div>
@ -310,82 +204,41 @@
</div> </div>
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="材料封样" style="position: relative"> <module-one-1-1 label="材料封样" style="position: relative">
<materialSealChart <materialSealChart :height="280" :optData="materialSealList" :key="'ms' + materialSealEl">
:height="280" </materialSealChart>
:optData="materialSealList" <img src="images/icon2001.png" v-if="prjs.length>1" style="position: absolute; cursor: pointer; right: 12px; top: 12px"
:key="'ms' + materialSealEl" @click="showMaterialSealDlg" />
></materialSealChart>
<img
src="images/icon2001.png"
style="position: absolute; cursor: pointer; right: 12px; top: 12px"
@click="showMaterialSealDlg"
/>
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="实测实量" :key="elCheck" style="position: relative"> <module-one-1-1 label="实测实量" :key="elCheck" style="position: relative">
<img <img src="images/icon2001.png" v-if="prjs.length>1" style="position: absolute; cursor: pointer; right: 12px; top: 12px"
src="images/icon2001.png" @click="doShowMeasuredDlg" />
style="position: absolute; cursor: pointer; right: 12px; top: 12px" <div class="warning-info-title warning-info-title_div measured-data-list"
@click="doShowMeasuredDlg" style="padding-left: 2px; position: relative; z-index: 9">
/> <div :class="measuredNav == 0 ? 'active' : ''" @click="doMeasuredNav(0, '汇总')">
<div
class="warning-info-title warning-info-title_div measured-data-list"
style="padding-left: 2px; position: relative; z-index: 9"
>
<div
:class="measuredNav == 0 ? 'active' : ''"
@click="doMeasuredNav(0, '汇总')"
>
汇总 汇总
</div> </div>
<div <div :class="measuredNav == 1 ? 'active' : ''" @click="doMeasuredNav(1, '混凝土')">
:class="measuredNav == 1 ? 'active' : ''"
@click="doMeasuredNav(1, '混凝土')"
>
混凝土 混凝土
</div> </div>
<div <div :class="measuredNav == 6 ? 'active' : ''" @click="doMeasuredNav(6, '钢筋工程')">
:class="measuredNav == 6 ? 'active' : ''"
@click="doMeasuredNav(6, '钢筋工程')"
>
钢筋工程 钢筋工程
</div> </div>
<div <div :class="measuredNav == 2 ? 'active' : ''" @click="doMeasuredNav(2, '二次结构')">
:class="measuredNav == 2 ? 'active' : ''"
@click="doMeasuredNav(2, '二次结构')"
>
二次结构 二次结构
</div> </div>
<div <div :class="measuredNav == 3 ? 'active' : ''" @click="doMeasuredNav(3, '房间尺寸')">
:class="measuredNav == 3 ? 'active' : ''"
@click="doMeasuredNav(3, '房间尺寸')"
>
房间尺寸 房间尺寸
</div> </div>
<div <div :class="measuredNav == 4 ? 'active' : ''" @click="doMeasuredNav(4, '装饰装修')">
:class="measuredNav == 4 ? 'active' : ''"
@click="doMeasuredNav(4, '装饰装修')"
>
装饰装修 装饰装修
</div> </div>
<div <div :class="measuredNav == 5 ? 'active' : ''" @click="doMeasuredNav(5, '其它')">
:class="measuredNav == 5 ? 'active' : ''"
@click="doMeasuredNav(5, '其它')"
>
其它 其它
</div> </div>
</div> </div>
<project-overview-chart <project-overview-chart :sp="'\n'" :maintitle="measuredTotal" :legend-opt="legendOptCheck" txtTop="12"
:sp="'\n'" :key="measuredNav" :typedata="measuredData" :text="measuredText" :height="260" gifTop="77px"
:maintitle="measuredTotal" style="top: -30px"></project-overview-chart>
:legend-opt="legendOptCheck"
txtTop="12"
:key="measuredNav"
:typedata="measuredData"
:text="measuredText"
:height="260"
gifTop="77px"
style="top: -30px"
></project-overview-chart>
</module-one-1-1> </module-one-1-1>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
@ -853,9 +706,11 @@ export default {
color: #69839e; color: #69839e;
cursor: pointer; cursor: pointer;
} }
.warning-info-title_div div { .warning-info-title_div div {
padding: 0 5px 0 5px !important; padding: 0 5px 0 5px !important;
} }
.project-quality { .project-quality {
.problemmodify_list { .problemmodify_list {
.el-table__body-wrapper { .el-table__body-wrapper {
@ -868,17 +723,21 @@ export default {
background-color: rgb(1, 169, 255); background-color: rgb(1, 169, 255);
border-radius: 4px; border-radius: 4px;
} }
tr { tr {
cursor: pointer; cursor: pointer;
} }
} }
} }
.center-image .screen-one-2-1 { .center-image .screen-one-2-1 {
overflow: hidden; overflow: hidden;
} }
.equipment-list-data { .equipment-list-data {
position: relative; position: relative;
} }
.my-svg-icon-blue, .my-svg-icon-blue,
.my-svg-icon-green { .my-svg-icon-green {
width: 28px; width: 28px;
@ -886,33 +745,41 @@ export default {
position: relative; position: relative;
top: -10px; top: -10px;
} }
.my-svg-icon-green * { .my-svg-icon-green * {
fill: #63f8bc; fill: #63f8bc;
} }
.fgreen { .fgreen {
color: #63f8bc !important; color: #63f8bc !important;
} }
.my-svg-icon { .my-svg-icon {
width: 40px; width: 40px;
height: 40px; height: 40px;
margin-bottom: 20px; margin-bottom: 20px;
} }
.my-svg-icon-blue *, .my-svg-icon-blue *,
.my-svg-icon * { .my-svg-icon * {
fill: #389de3; fill: #389de3;
} }
.people-number-con div:nth-child(3) { .people-number-con div:nth-child(3) {
background: none; background: none;
} }
.labour-education .number-unit { .labour-education .number-unit {
position: relative; position: relative;
bottom: -8px; bottom: -8px;
} }
.bottom-line2, .bottom-line2,
.bottom-line { .bottom-line {
border: none !important; border: none !important;
position: relative; position: relative;
} }
.bottom-line::after { .bottom-line::after {
content: " "; content: " ";
display: block; display: block;
@ -923,6 +790,7 @@ export default {
left: 20px; left: 20px;
opacity: 0.5; opacity: 0.5;
} }
.idle-list .el-table__body .el-table__row { .idle-list .el-table__body .el-table__row {
line-height: 55px; line-height: 55px;
height: 55px !important; height: 55px !important;
@ -937,6 +805,7 @@ export default {
bottom: -4px; bottom: -4px;
opacity: 0.5; opacity: 0.5;
} }
.bottom-line2::before { .bottom-line2::before {
content: " "; content: " ";
display: inline-block; display: inline-block;
@ -946,10 +815,12 @@ export default {
bottom: -4px; bottom: -4px;
opacity: 0.5; opacity: 0.5;
} }
.my-svg-icon2 { .my-svg-icon2 {
width: 40px; width: 40px;
height: 40px; height: 40px;
} }
.my-svg-icon2 * { .my-svg-icon2 * {
fill: #01a9ff; fill: #01a9ff;
} }
@ -958,44 +829,55 @@ export default {
color: #82c9ff; color: #82c9ff;
font-size: 12px; font-size: 12px;
} }
.nav-info .nav-label { .nav-info .nav-label {
font-size: 12px; font-size: 12px;
} }
.nav-info .nav-num { .nav-info .nav-num {
font-size: 28px; font-size: 28px;
font-weight: bold; font-weight: bold;
} }
.nav-info .nav-unit { .nav-info .nav-unit {
font-size: 12px; font-size: 12px;
} }
.acceptance-item:first-child { .acceptance-item:first-child {
margin-top: 10px; margin-top: 10px;
} }
.acceptance-item { .acceptance-item {
padding: 13px; padding: 13px;
} }
.acceptance-item .row-5 { .acceptance-item .row-5 {
//margin-top:10px; //margin-top:10px;
line-height: 30px; line-height: 30px;
color: #c7dafd; color: #c7dafd;
} }
.acceptance-item .row-3 { .acceptance-item .row-3 {
line-height: 30px; line-height: 30px;
color: #4996d4; color: #4996d4;
} }
.acceptance-item .row-1 { .acceptance-item .row-1 {
display: flex; display: flex;
} }
.acceptance-item .div-img { .acceptance-item .div-img {
height: 90px; height: 90px;
margin-right: 10px; margin-right: 10px;
overflow: hidden; overflow: hidden;
} }
.acceptance-item .div-img img { .acceptance-item .div-img img {
width: 125px; width: 125px;
height: 90px; height: 90px;
} }
.acceptance-item .sp-lbl { .acceptance-item .sp-lbl {
background: #074031; background: #074031;
border: solid 1px #1d642c; border: solid 1px #1d642c;
@ -1004,6 +886,7 @@ export default {
float: left; float: left;
width: 35%; width: 35%;
} }
.acceptance-item .sp-err { .acceptance-item .sp-err {
background: #351717; background: #351717;
border: solid 1px #5a0303; border: solid 1px #5a0303;
@ -1012,6 +895,7 @@ export default {
float: left; float: left;
width: 35%; width: 35%;
} }
.acceptance-item .sp-date { .acceptance-item .sp-date {
font-size: 12px; font-size: 12px;
color: #aaa; color: #aaa;
@ -1020,8 +904,10 @@ export default {
line-height: 36px; line-height: 36px;
text-align: right; text-align: right;
} }
.screen-one-3-1 { .screen-one-3-1 {
overflow-y: scroll; overflow-y: scroll;
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 8px; width: 8px;
height: 8px; height: 8px;
@ -1032,11 +918,13 @@ export default {
border-radius: 4px; border-radius: 4px;
} }
} }
.hide-scroll > .screen-one-3-1 {
.hide-scroll>.screen-one-3-1 {
overflow: hidden; overflow: hidden;
} }
.measured-data-list { .measured-data-list {
& > div { &>div {
padding: 0px 5px; padding: 0px 5px;
} }
} }

View File

@ -5,10 +5,12 @@
<el-col :span="12" style="position: relative;"> <el-col :span="12" style="position: relative;">
<module-one-3-1 label="安全隐患检查"> <module-one-3-1 label="安全隐患检查">
<div style="position: absolute;right:0px;top:4px;"> <div style="position: absolute;right:0px;top:4px;">
<el-date-picker class="bg-date-picker" v-model="selDate" type="daterange" popper-class="bg-date-picker-pop" :editable="false" @change="dtChange" <el-date-picker class="bg-date-picker" v-model="selDate" type="daterange"
:picker-options="pickerOptions" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> popper-class="bg-date-picker-pop" :editable="false" @change="dtChange"
:picker-options="pickerOptions" range-separator="至" start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>
</div> </div>
<div :key="'a'+elSummaryKey"> <div :key="'a' + elSummaryKey">
<div class="warning-info-title" style="padding-left: 20px;"> <div class="warning-info-title" style="padding-left: 20px;">
<div :class="safeNav == 0 ? 'active' : ''" @click="doSafeNav(0, '汇总总数')">汇总</div> <div :class="safeNav == 0 ? 'active' : ''" @click="doSafeNav(0, '汇总总数')">汇总</div>
<div :class="safeNav == 3 ? 'active' : ''" @click="doSafeNav(3, '集团总数')">集团</div> <div :class="safeNav == 3 ? 'active' : ''" @click="doSafeNav(3, '集团总数')">集团</div>
@ -17,10 +19,10 @@
<div :class="safeNav == 6 ? 'active' : ''" @click="doSafeNav(6, '监理单位')">监理单位</div> <div :class="safeNav == 6 ? 'active' : ''" @click="doSafeNav(6, '监理单位')">监理单位</div>
<div :class="safeNav == 7 ? 'active' : ''" @click="doSafeNav(7, '总包单位')">总包单位</div> <div :class="safeNav == 7 ? 'active' : ''" @click="doSafeNav(7, '总包单位')">总包单位</div>
</div> </div>
<project-overview-chart2 :key="'b'+safeNav" :sp="'\n'" :maintitle="fmt(summaryTotal)" <project-overview-chart2 :key="'b' + safeNav" :sp="'\n'" :maintitle="fmt(summaryTotal)"
:typedata="summary" :text="safeText" :height="230"></project-overview-chart2> :typedata="summary" :text="safeText" :height="230"></project-overview-chart2>
</div> </div>
<div style="padding:0px 20px" :key="'c'+elSummaryPrjKey"> <div style="padding:0px 20px" :key="'c' + elSummaryPrjKey">
<el-row> <el-row>
<el-col :span="12" v-if="1 == 2"> <el-col :span="12" v-if="1 == 2">
<div class="rank-chart-title bottom-line">安全隐患类型分析</div> <div class="rank-chart-title bottom-line">安全隐患类型分析</div>
@ -28,10 +30,12 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<div class="rank-chart-title bottom-line"> <div class="rank-chart-title bottom-line">
<span style="position: relative;top: -4px;">项目安全隐患占比({{ summaryPrjTotal }})</span></div> <span style="position: relative;top: -4px;">项目安全隐患占比({{ summaryPrjTotal
}})</span>
</div>
<div class="idle-list problemmodify_list" style="padding-top:20px;"> <div class="idle-list problemmodify_list" style="padding-top:20px;">
<el-table style="width: 100%" ref="wgzp" :data="summaryPrj" height="600" @row-click="doProbleRowClick" <el-table style="width: 100%" ref="wgzp" :data="summaryPrj" height="600"
:row-style="rowStyle" class="elTable"> @row-click="doProbleRowClick" :row-style="rowStyle" class="elTable">
<el-table-column type="index" width="40"> <el-table-column type="index" width="40">
<template slot-scope="scope"> <template slot-scope="scope">
<div <div
@ -47,7 +51,7 @@
:color="scope.$index < 3 && +scope.row.id > 0 ? '#f05e35' : '#6ab9fe'"></idle-list-chart> :color="scope.$index < 3 && +scope.row.id > 0 ? '#f05e35' : '#6ab9fe'"></idle-list-chart>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="id" label="隐患数" width="60" align="center"> <el-table-column prop="id" label="隐患数" width="70" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div>{{ scope.row.id }} </div> <div>{{ scope.row.id }} </div>
</template> </template>
@ -72,9 +76,9 @@
</module-one-3-1> </module-one-3-1>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<module-one-1-1 :label="'教育培训('+WorkTrainCnt1+')'" style="position: relative;"> <module-one-1-1 :label="'教育培训(' + WorkTrainCnt1 + ')'" style="position: relative;">
<img src="images/icon2001.png" <img src="images/icon2001.png"
style="position: absolute;cursor: pointer;right: 20px;top: 13px;z-index: 9;" style="position: absolute;cursor: pointer;right: 20px;top: 13px;z-index: 9;" v-if="projects.length>1"
@click="doShowWorkTrain(0)"> @click="doShowWorkTrain(0)">
<enginChart ref="chart3" :height="300"></enginChart> <enginChart ref="chart3" :height="300"></enginChart>
<!-- <!--
@ -109,9 +113,9 @@
</div> </div>
</div>--> </div>-->
</module-one-1-1> </module-one-1-1>
<module-one-1-1 :label="'应急演练('+WorkTrainCnt2+')'" style="position: relative;"> <module-one-1-1 :label="'应急演练(' + WorkTrainCnt2 + ')'" style="position: relative;">
<img src="images/icon2001.png" <img src="images/icon2001.png"
style="position: absolute;cursor: pointer;right: 20px;top: 13px;z-index: 9;" style="position: absolute;cursor: pointer;right: 20px;top: 13px;z-index: 9;" v-if="projects.length>1"
@click="doShowWorkTrain(1)"> @click="doShowWorkTrain(1)">
<enginChart ref="chart4" :height="300"></enginChart> <enginChart ref="chart4" :height="300"></enginChart>
<!-- <!--
@ -148,8 +152,9 @@
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="特种作业人员"> <module-one-1-1 label="特种作业人员">
<div class="quality-table special-table"> <div class="quality-table special-table">
<el-table :data="specialDataList" class="mytable" style="width: 100%;background: transparent;" height="265" <el-table :data="specialDataList" class="mytable"
ref="fbsubordinateUnit" @row-click="doSpecialRowClick"> style="width: 100%;background: transparent;" height="265" ref="fbsubordinateUnit"
@row-click="doSpecialRowClick">
<el-table-column prop="projectName" label="项目名称" min-width="180"></el-table-column> <el-table-column prop="projectName" label="项目名称" min-width="180"></el-table-column>
<el-table-column prop="total" label="操作证数"> </el-table-column> <el-table-column prop="total" label="操作证数"> </el-table-column>
<!-- <el-table-column prop="expired" label="即将过期"> </el-table-column> --> <!-- <el-table-column prop="expired" label="即将过期"> </el-table-column> -->
@ -173,24 +178,83 @@
@click="fileNavChage(3)">子分公司</span> @click="fileNavChage(3)">子分公司</span>
</div> </div>
<div class="file-list scroll"> <div class="file-list scroll">
<div v-for="(it, id) in fileList" :key="id" class="file-item" > <div v-for="(it, id) in fileList" :key="id" class="file-item">
<svg v-if="it.fileType=='PDF'" class="my-svg-icon2" style="vertical-align: middle;fill: currentColor;overflow: hidden;" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1379"><path d="M905.185809 178.844158C898.576738 172.685485 891.19337 165.824412 883.21687 158.436127 860.422682 137.322863 837.434925 116.207791 815.697647 96.487895 813.243072 94.261877 813.243072 94.261877 810.786411 92.037081 781.783552 65.781062 757.590948 44.376502 739.713617 29.293612 729.254178 20.469111 721.020606 13.860686 714.970549 9.501727 710.955023 6.608611 707.690543 4.524745 704.47155 2.998714 700.417679 1.07689 696.638044-0.094029 691.307277 0.005928 677.045677 0.273349 665.6 11.769337 665.6 26.182727L665.6 77.352844 665.6 128.522961 665.6 230.863194 665.6 256.448252 691.2 256.448252 896 256.448252 870.4 230.863194 870.4 998.414942 896 972.829884 230.381436 972.829884C187.90385 972.829884 153.6 938.623723 153.6 896.20663L153.6 26.182727 128 51.767786 588.8 51.767786C602.93849 51.767786 614.4 40.312965 614.4 26.182727 614.4 12.05249 602.93849 0.597669 588.8 0.597669L128 0.597669 102.4 0.597669 102.4 26.182727 102.4 896.20663C102.4 966.91021 159.652833 1024 230.381436 1024L896 1024 921.6 1024 921.6 998.414942 921.6 230.863194 921.6 205.278135 896 205.278135 691.2 205.278135 716.8 230.863194 716.8 128.522961 716.8 77.352844 716.8 26.182727C716.8 39.813762 705.748075 50.91427 692.267725 51.167041 687.705707 51.252584 685.069822 50.435995 682.52845 49.231204 682.259458 49.103682 683.344977 49.796618 685.029451 51.010252 689.779394 54.432502 697.145822 60.34494 706.686383 68.394196 724.009052 83.009121 747.816448 104.072869 776.413589 129.961594 778.850014 132.168064 778.850014 132.168064 781.285216 134.376514 802.876774 153.964212 825.739479 174.96442 848.413564 195.966437 856.350957 203.3185 863.697005 210.144893 870.269888 216.269843 874.209847 219.941299 877.019309 222.565641 878.499674 223.951409 888.81866 233.610931 905.019017 233.081212 914.684179 222.768247 924.349344 212.455283 923.819315 196.264383 913.500326 186.604861 911.981323 185.182945 909.155025 182.542876 905.185809 178.844158ZM102.4 461.128719 0 461.128719 0 896.074709 512 896.074709 1024 896.074709 1024 461.128719 153.6 461.128719 153.6 460.531049 102.4 460.531049 102.4 461.128719ZM208.2 711 208.2 819.2 157.6 819.2 157.6 528 269 528C301.533495 528 327.366571 536.466581 346.5 553.4 365.633429 570.333419 375.2 592.733195 375.2 620.6 375.2 649.133476 365.833427 671.333254 347.1 687.2 328.366573 703.066746 302.133502 711 268.4 711L208.2 711ZM208.2 670.4 269 670.4C287.00009 670.4 300.733286 666.166709 310.2 657.7 319.666714 649.233291 324.4 637.000079 324.4 621 324.4 605.266588 319.600047 592.700047 310 583.3 300.399951 573.899953 287.200083 569.066669 270.4 568.8L208.2 568.8 208.2 670.4ZM419.4 819.2 419.4 528 505.4 528C531.133461 528 553.966566 533.733276 573.9 545.2 593.833434 556.666724 609.266611 572.933229 620.2 594 631.133389 615.066771 636.6 639.199863 636.6 666.4L636.6 681C636.6 708.600139 631.100055 732.866562 620.1 753.8 609.099945 774.733438 593.433436 790.866609 573.1 802.2 552.766564 813.533391 529.466799 819.2 503.2 819.2L419.4 819.2ZM470 568.8 470 778.8 503 778.8C529.533466 778.8 549.89993 770.500083 564.1 753.9 578.30007 737.299917 585.533331 713.466822 585.8 682.4L585.8 666.2C585.8 634.599842 578.933402 610.46675 565.2 593.8 551.466598 577.13325 531.533463 568.8 505.4 568.8L470 568.8ZM854.8 695.8 737.6 695.8 737.6 819.2 687 819.2 687 528 872 528 872 568.8 737.6 568.8 737.6 655.4 854.8 655.4 854.8 695.8Z" fill="#5E5E5E" p-id="1380"></path></svg> <svg v-if="it.fileType == 'PDF'" class="my-svg-icon2"
<svg v-if="it.fileType=='PPT' || it.fileType=='PPTX'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028054240" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1331"><path d="M938.666667 469.333333a85.333333 85.333333 0 0 1 85.333333 85.333334v213.333333a85.333333 85.333333 0 0 1-85.333333 85.333333H85.333333a85.333333 85.333333 0 0 1-85.333333-85.333333v-213.333333a85.333333 85.333333 0 0 1 85.333333-85.333334h853.333334zM282.922667 536.490667H169.258667V810.666667h44.970666v-105.216h67.968c66.816 0 100.224-28.416 100.224-84.864 0-56.064-33.408-84.096-99.456-84.096z m251.562666 0H420.821333V810.666667h44.928v-105.216h67.925334c66.858667 0 100.266667-28.416 100.266666-84.864 0-56.064-33.450667-84.096-99.498666-84.096z m341.333334 0h-224.64v38.4h89.898666V810.666667h44.928v-235.776h89.813334v-38.4z m-596.352 38.4c19.626667 0 34.176 3.456 43.434666 10.752 9.216 6.912 14.208 18.432 14.208 34.944 0 16.512-4.608 28.416-13.824 35.712-9.216 6.912-23.808 10.752-43.776 10.752H214.186667v-92.16h65.28z m251.52 0c19.626667 0 34.176 3.456 43.434666 10.752 9.216 6.912 14.208 18.432 14.208 34.944 0 16.512-4.608 28.416-13.824 35.712-9.216 6.912-23.808 10.752-43.818666 10.752h-65.28v-92.16h65.28z" fill="#008df0" p-id="1332"></path><path d="M609.408 10.538667l314.709333 275.370666a42.666667 42.666667 0 0 1 14.549334 32.128V896a128 128 0 0 1-120.490667 127.786667L810.666667 1024H213.333333a128 128 0 0 1-127.786666-120.490667L85.333333 896V128A128 128 0 0 1 205.824 0.213333L213.333333 0h367.957334a42.666667 42.666667 0 0 1 28.117333 10.538667zM512 85.333333H213.333333a42.666667 42.666667 0 0 0-42.368 37.674667L170.666667 128v768a42.666667 42.666667 0 0 0 37.674666 42.368L213.333333 938.666667h597.333334a42.666667 42.666667 0 0 0 42.368-37.674667L853.333333 896V384h-213.333333a128 128 0 0 1-127.146667-113.066667l-0.64-7.424L512 256V85.333333z m295.338667 213.333334L597.333333 103.808V256a42.666667 42.666667 0 0 0 37.674667 42.368L640 298.666667h167.338667z" fill="#008df0" p-id="1333"></path></svg> style="vertical-align: middle;fill: currentColor;overflow: hidden;"
<svg v-if="it.fileType=='XLS' || it.fileType=='XLSX'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028166276" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1478"><path d="M896 0a128 128 0 0 1 127.786667 120.490667L1024 128v768a128 128 0 0 1-120.490667 127.786667L896 1024H298.666667a128 128 0 0 1-127.786667-120.490667L170.666667 896v-128H85.333333a85.333333 85.333333 0 0 1-85.333333-85.333333V341.333333a85.333333 85.333333 0 0 1 85.333333-85.333333h85.333334V128A128 128 0 0 1 291.157333 0.213333L298.666667 0h597.333333z m0 85.333333H298.666667a42.666667 42.666667 0 0 0-42.368 37.674667L256 128v128h170.666667a85.333333 85.333333 0 0 1 85.333333 85.333333v341.333334a85.333333 85.333333 0 0 1-85.333333 85.333333H256v128a42.666667 42.666667 0 0 0 37.674667 42.368L298.666667 938.666667h597.333333a42.666667 42.666667 0 0 0 42.368-37.674667L938.666667 896V128a42.666667 42.666667 0 0 0-37.674667-42.368L896 85.333333z m-42.666667 554.666667a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM181.76 378.026667H125.013333l102.4 147.2L117.76 682.666667h56.746667L256 561.92 337.493333 682.666667h56.746667l-110.506667-157.44 103.253334-147.2H330.24L256 488.106667 181.76 378.026667zM853.333333 469.333333a42.666667 42.666667 0 0 1 0 85.333334h-213.333333a42.666667 42.666667 0 0 1 0-85.333334h213.333333z m0-170.666666a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333z" fill="#008df0" p-id="1479"></path></svg> viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
<svg v-if="it.fileType=='DOC' || it.fileType=='DOCX'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028476347" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1626"><path d="M256 896a42.666667 42.666667 0 0 0 37.674667 42.368L298.666667 938.666667h597.333333a42.666667 42.666667 0 0 0 42.368-37.674667L938.666667 896V128a42.666667 42.666667 0 0 0-42.666667-42.666667H298.666667a42.666667 42.666667 0 0 0-42.368 37.674667L256 128v128h170.666667a85.333333 85.333333 0 0 1 85.333333 85.333333v341.333334a85.333333 85.333333 0 0 1-85.333333 85.333333H256v128z m597.333333-256a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM108.373333 378.026667H55.893333L143.36 682.666667h49.92l61.866667-235.093334h1.706666L318.72 682.666667h49.493333l87.893334-304.64H403.626667l-59.306667 237.226666h-1.706667L280.32 378.026667H231.68l-62.293333 237.226666h-1.706667L108.373333 378.026667zM853.333333 469.333333a42.666667 42.666667 0 0 1 0 85.333334h-213.333333a42.666667 42.666667 0 0 1 0-85.333334h213.333333z m0-170.666666a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM85.333333 768a85.333333 85.333333 0 0 1-85.333333-85.333333V341.333333a85.333333 85.333333 0 0 1 85.333333-85.333333h85.333334V128A128 128 0 0 1 291.157333 0.213333L298.666667 0h597.333333a128 128 0 0 1 127.786667 120.490667L1024 128v768a128 128 0 0 1-120.490667 127.786667L896 1024H298.666667a128 128 0 0 1-127.786667-120.490667L170.666667 896v-128H85.333333z" fill="#008df0" p-id="1627"></path></svg> p-id="1379">
<svg v-if="it.fileType=='TXT'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028607806" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1774"><path d="M581.290667 0a42.666667 42.666667 0 0 1 28.117333 10.538667l314.709333 275.370666a42.666667 42.666667 0 0 1 14.549334 32.128V896a128 128 0 0 1-120.490667 127.786667L810.666667 1024H213.333333a128 128 0 0 1-127.786666-120.490667L85.333333 896V128A128 128 0 0 1 205.824 0.213333L213.333333 0h367.957334zM512 85.333333H213.333333a42.666667 42.666667 0 0 0-42.368 37.674667L170.666667 128v768a42.666667 42.666667 0 0 0 37.674666 42.368L213.333333 938.666667h597.333334a42.666667 42.666667 0 0 0 42.368-37.674667L853.333333 896V384h-213.333333a128 128 0 0 1-127.146667-113.066667l-0.64-7.424L512 256V85.333333z m178.901333 384.170667v59.733333h-139.818666v366.933334H481.152v-366.933334H341.333333v-59.733333h349.568zM597.333333 103.808V256a42.666667 42.666667 0 0 0 37.674667 42.368L640 298.666667h167.338667L597.333333 103.808z" fill="#008df0" p-id="1775"></path></svg> <path
<svg v-if="it.fileType=='PNG' || it.fileType=='JPG' || it.fileType=='JPEG'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028684554" class="icon my-svg-icon2" viewBox="0 0 1117 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1922"><path d="M977.454545 0a139.636364 139.636364 0 0 1 139.636364 139.636364v744.727272a139.636364 139.636364 0 0 1-139.636364 139.636364H139.636364a139.636364 139.636364 0 0 1-139.636364-139.636364V139.636364a139.636364 139.636364 0 0 1 139.636364-139.636364zM321.163636 495.848727L93.090909 761.902545V884.363636a46.545455 46.545455 0 0 0 41.099636 46.219637L139.636364 930.909091h837.818181a46.312727 46.312727 0 0 0 23.319273-6.237091 42.914909 42.914909 0 0 1-8.052363-5.818182l-4.049455-4.189091-196.189091-236.637091-151.04 188.881455a46.545455 46.545455 0 0 1-71.586909 1.396364l-3.490909-4.654546L321.163636 495.848727zM977.454545 93.090909H139.636364a46.545455 46.545455 0 0 0-46.545455 46.545455v479.232l197.352727-230.260364a46.545455 46.545455 0 0 1 70.656-0.046545l3.444364 4.514909 243.944727 365.940363 146.432-183.016727a46.545455 46.545455 0 0 1 67.677091-5.306182l4.002909 4.096L1024 811.659636V139.636364a46.545455 46.545455 0 0 0-41.099636-46.219637L977.454545 93.090909z m-186.181818 139.636364a93.090909 93.090909 0 1 1 0 186.181818 93.090909 93.090909 0 0 1 0-186.181818z" fill="#008df0" p-id="1923"></path></svg> d="M905.185809 178.844158C898.576738 172.685485 891.19337 165.824412 883.21687 158.436127 860.422682 137.322863 837.434925 116.207791 815.697647 96.487895 813.243072 94.261877 813.243072 94.261877 810.786411 92.037081 781.783552 65.781062 757.590948 44.376502 739.713617 29.293612 729.254178 20.469111 721.020606 13.860686 714.970549 9.501727 710.955023 6.608611 707.690543 4.524745 704.47155 2.998714 700.417679 1.07689 696.638044-0.094029 691.307277 0.005928 677.045677 0.273349 665.6 11.769337 665.6 26.182727L665.6 77.352844 665.6 128.522961 665.6 230.863194 665.6 256.448252 691.2 256.448252 896 256.448252 870.4 230.863194 870.4 998.414942 896 972.829884 230.381436 972.829884C187.90385 972.829884 153.6 938.623723 153.6 896.20663L153.6 26.182727 128 51.767786 588.8 51.767786C602.93849 51.767786 614.4 40.312965 614.4 26.182727 614.4 12.05249 602.93849 0.597669 588.8 0.597669L128 0.597669 102.4 0.597669 102.4 26.182727 102.4 896.20663C102.4 966.91021 159.652833 1024 230.381436 1024L896 1024 921.6 1024 921.6 998.414942 921.6 230.863194 921.6 205.278135 896 205.278135 691.2 205.278135 716.8 230.863194 716.8 128.522961 716.8 77.352844 716.8 26.182727C716.8 39.813762 705.748075 50.91427 692.267725 51.167041 687.705707 51.252584 685.069822 50.435995 682.52845 49.231204 682.259458 49.103682 683.344977 49.796618 685.029451 51.010252 689.779394 54.432502 697.145822 60.34494 706.686383 68.394196 724.009052 83.009121 747.816448 104.072869 776.413589 129.961594 778.850014 132.168064 778.850014 132.168064 781.285216 134.376514 802.876774 153.964212 825.739479 174.96442 848.413564 195.966437 856.350957 203.3185 863.697005 210.144893 870.269888 216.269843 874.209847 219.941299 877.019309 222.565641 878.499674 223.951409 888.81866 233.610931 905.019017 233.081212 914.684179 222.768247 924.349344 212.455283 923.819315 196.264383 913.500326 186.604861 911.981323 185.182945 909.155025 182.542876 905.185809 178.844158ZM102.4 461.128719 0 461.128719 0 896.074709 512 896.074709 1024 896.074709 1024 461.128719 153.6 461.128719 153.6 460.531049 102.4 460.531049 102.4 461.128719ZM208.2 711 208.2 819.2 157.6 819.2 157.6 528 269 528C301.533495 528 327.366571 536.466581 346.5 553.4 365.633429 570.333419 375.2 592.733195 375.2 620.6 375.2 649.133476 365.833427 671.333254 347.1 687.2 328.366573 703.066746 302.133502 711 268.4 711L208.2 711ZM208.2 670.4 269 670.4C287.00009 670.4 300.733286 666.166709 310.2 657.7 319.666714 649.233291 324.4 637.000079 324.4 621 324.4 605.266588 319.600047 592.700047 310 583.3 300.399951 573.899953 287.200083 569.066669 270.4 568.8L208.2 568.8 208.2 670.4ZM419.4 819.2 419.4 528 505.4 528C531.133461 528 553.966566 533.733276 573.9 545.2 593.833434 556.666724 609.266611 572.933229 620.2 594 631.133389 615.066771 636.6 639.199863 636.6 666.4L636.6 681C636.6 708.600139 631.100055 732.866562 620.1 753.8 609.099945 774.733438 593.433436 790.866609 573.1 802.2 552.766564 813.533391 529.466799 819.2 503.2 819.2L419.4 819.2ZM470 568.8 470 778.8 503 778.8C529.533466 778.8 549.89993 770.500083 564.1 753.9 578.30007 737.299917 585.533331 713.466822 585.8 682.4L585.8 666.2C585.8 634.599842 578.933402 610.46675 565.2 593.8 551.466598 577.13325 531.533463 568.8 505.4 568.8L470 568.8ZM854.8 695.8 737.6 695.8 737.6 819.2 687 819.2 687 528 872 528 872 568.8 737.6 568.8 737.6 655.4 854.8 655.4 854.8 695.8Z"
<svg v-if="it.fileType=='MP4'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" t="1692028772745" class="icon my-svg-icon2" viewBox="0 0 1117 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2072"><path d="M977.454545 0a139.636364 139.636364 0 0 1 139.403637 131.444364L1117.090909 139.636364v744.727272a139.636364 139.636364 0 0 1-131.444364 139.403637L977.454545 1024H139.636364a139.636364 139.636364 0 0 1-139.403637-131.444364L0 884.363636V139.636364A139.636364 139.636364 0 0 1 131.444364 0.232727L139.636364 0h837.818181z m46.545455 302.545455h-122.228364l-7.214545 5.818181-4.608-5.818181h-267.450182l-7.214545 5.818181-4.608-5.818181H343.226182l-7.214546 5.818181L331.403636 302.545455H93.090909V884.363636a46.545455 46.545455 0 0 0 41.099636 46.219637L139.636364 930.909091h837.818181a46.545455 46.545455 0 0 0 46.219637-41.099636L1024 884.363636V302.545455zM484.212364 422.818909l4.654545 2.420364 279.272727 162.909091a46.545455 46.545455 0 0 1 5.12 76.986181l-5.12 3.444364-279.272727 162.909091a46.545455 46.545455 0 0 1-69.678545-34.909091L418.909091 791.272727v-325.818182a46.545455 46.545455 0 0 1 65.303273-42.635636zM512 546.443636v163.793455l140.381091-81.92L512 546.443636zM163.84 93.090909H139.636364a46.545455 46.545455 0 0 0-46.219637 41.099636L93.090909 139.636364v69.818181h163.84l-93.090909-116.363636z m279.272727 0H282.996364l93.090909 116.363636h160.116363l-93.090909-116.363636z m279.272728 0h-160.116364l93.090909 116.363636h160.116364l-93.090909-116.363636zM977.454545 93.090909h-135.912727l93.090909 116.363636H1024V139.636364a46.545455 46.545455 0 0 0-41.099636-46.219637L977.454545 93.090909z" fill="#008df0" p-id="2073"></path></svg> fill="#5E5E5E" p-id="1380"></path>
</svg>
<svg v-if="it.fileType == 'PPT' || it.fileType == 'PPTX'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028054240" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="1331">
<path
d="M938.666667 469.333333a85.333333 85.333333 0 0 1 85.333333 85.333334v213.333333a85.333333 85.333333 0 0 1-85.333333 85.333333H85.333333a85.333333 85.333333 0 0 1-85.333333-85.333333v-213.333333a85.333333 85.333333 0 0 1 85.333333-85.333334h853.333334zM282.922667 536.490667H169.258667V810.666667h44.970666v-105.216h67.968c66.816 0 100.224-28.416 100.224-84.864 0-56.064-33.408-84.096-99.456-84.096z m251.562666 0H420.821333V810.666667h44.928v-105.216h67.925334c66.858667 0 100.266667-28.416 100.266666-84.864 0-56.064-33.450667-84.096-99.498666-84.096z m341.333334 0h-224.64v38.4h89.898666V810.666667h44.928v-235.776h89.813334v-38.4z m-596.352 38.4c19.626667 0 34.176 3.456 43.434666 10.752 9.216 6.912 14.208 18.432 14.208 34.944 0 16.512-4.608 28.416-13.824 35.712-9.216 6.912-23.808 10.752-43.776 10.752H214.186667v-92.16h65.28z m251.52 0c19.626667 0 34.176 3.456 43.434666 10.752 9.216 6.912 14.208 18.432 14.208 34.944 0 16.512-4.608 28.416-13.824 35.712-9.216 6.912-23.808 10.752-43.818666 10.752h-65.28v-92.16h65.28z"
fill="#008df0" p-id="1332"></path>
<path
d="M609.408 10.538667l314.709333 275.370666a42.666667 42.666667 0 0 1 14.549334 32.128V896a128 128 0 0 1-120.490667 127.786667L810.666667 1024H213.333333a128 128 0 0 1-127.786666-120.490667L85.333333 896V128A128 128 0 0 1 205.824 0.213333L213.333333 0h367.957334a42.666667 42.666667 0 0 1 28.117333 10.538667zM512 85.333333H213.333333a42.666667 42.666667 0 0 0-42.368 37.674667L170.666667 128v768a42.666667 42.666667 0 0 0 37.674666 42.368L213.333333 938.666667h597.333334a42.666667 42.666667 0 0 0 42.368-37.674667L853.333333 896V384h-213.333333a128 128 0 0 1-127.146667-113.066667l-0.64-7.424L512 256V85.333333z m295.338667 213.333334L597.333333 103.808V256a42.666667 42.666667 0 0 0 37.674667 42.368L640 298.666667h167.338667z"
fill="#008df0" p-id="1333"></path>
</svg>
<svg v-if="it.fileType == 'XLS' || it.fileType == 'XLSX'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028166276" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="1478">
<path
d="M896 0a128 128 0 0 1 127.786667 120.490667L1024 128v768a128 128 0 0 1-120.490667 127.786667L896 1024H298.666667a128 128 0 0 1-127.786667-120.490667L170.666667 896v-128H85.333333a85.333333 85.333333 0 0 1-85.333333-85.333333V341.333333a85.333333 85.333333 0 0 1 85.333333-85.333333h85.333334V128A128 128 0 0 1 291.157333 0.213333L298.666667 0h597.333333z m0 85.333333H298.666667a42.666667 42.666667 0 0 0-42.368 37.674667L256 128v128h170.666667a85.333333 85.333333 0 0 1 85.333333 85.333333v341.333334a85.333333 85.333333 0 0 1-85.333333 85.333333H256v128a42.666667 42.666667 0 0 0 37.674667 42.368L298.666667 938.666667h597.333333a42.666667 42.666667 0 0 0 42.368-37.674667L938.666667 896V128a42.666667 42.666667 0 0 0-37.674667-42.368L896 85.333333z m-42.666667 554.666667a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM181.76 378.026667H125.013333l102.4 147.2L117.76 682.666667h56.746667L256 561.92 337.493333 682.666667h56.746667l-110.506667-157.44 103.253334-147.2H330.24L256 488.106667 181.76 378.026667zM853.333333 469.333333a42.666667 42.666667 0 0 1 0 85.333334h-213.333333a42.666667 42.666667 0 0 1 0-85.333334h213.333333z m0-170.666666a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333z"
fill="#008df0" p-id="1479"></path>
</svg>
<svg v-if="it.fileType == 'DOC' || it.fileType == 'DOCX'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028476347" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="1626">
<path
d="M256 896a42.666667 42.666667 0 0 0 37.674667 42.368L298.666667 938.666667h597.333333a42.666667 42.666667 0 0 0 42.368-37.674667L938.666667 896V128a42.666667 42.666667 0 0 0-42.666667-42.666667H298.666667a42.666667 42.666667 0 0 0-42.368 37.674667L256 128v128h170.666667a85.333333 85.333333 0 0 1 85.333333 85.333333v341.333334a85.333333 85.333333 0 0 1-85.333333 85.333333H256v128z m597.333333-256a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM108.373333 378.026667H55.893333L143.36 682.666667h49.92l61.866667-235.093334h1.706666L318.72 682.666667h49.493333l87.893334-304.64H403.626667l-59.306667 237.226666h-1.706667L280.32 378.026667H231.68l-62.293333 237.226666h-1.706667L108.373333 378.026667zM853.333333 469.333333a42.666667 42.666667 0 0 1 0 85.333334h-213.333333a42.666667 42.666667 0 0 1 0-85.333334h213.333333z m0-170.666666a42.666667 42.666667 0 0 1 0 85.333333h-213.333333a42.666667 42.666667 0 0 1 0-85.333333h213.333333zM85.333333 768a85.333333 85.333333 0 0 1-85.333333-85.333333V341.333333a85.333333 85.333333 0 0 1 85.333333-85.333333h85.333334V128A128 128 0 0 1 291.157333 0.213333L298.666667 0h597.333333a128 128 0 0 1 127.786667 120.490667L1024 128v768a128 128 0 0 1-120.490667 127.786667L896 1024H298.666667a128 128 0 0 1-127.786667-120.490667L170.666667 896v-128H85.333333z"
fill="#008df0" p-id="1627"></path>
</svg>
<svg v-if="it.fileType == 'TXT'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028607806" class="icon my-svg-icon2" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="1774">
<path
d="M581.290667 0a42.666667 42.666667 0 0 1 28.117333 10.538667l314.709333 275.370666a42.666667 42.666667 0 0 1 14.549334 32.128V896a128 128 0 0 1-120.490667 127.786667L810.666667 1024H213.333333a128 128 0 0 1-127.786666-120.490667L85.333333 896V128A128 128 0 0 1 205.824 0.213333L213.333333 0h367.957334zM512 85.333333H213.333333a42.666667 42.666667 0 0 0-42.368 37.674667L170.666667 128v768a42.666667 42.666667 0 0 0 37.674666 42.368L213.333333 938.666667h597.333334a42.666667 42.666667 0 0 0 42.368-37.674667L853.333333 896V384h-213.333333a128 128 0 0 1-127.146667-113.066667l-0.64-7.424L512 256V85.333333z m178.901333 384.170667v59.733333h-139.818666v366.933334H481.152v-366.933334H341.333333v-59.733333h349.568zM597.333333 103.808V256a42.666667 42.666667 0 0 0 37.674667 42.368L640 298.666667h167.338667L597.333333 103.808z"
fill="#008df0" p-id="1775"></path>
</svg>
<svg v-if="it.fileType == 'PNG' || it.fileType == 'JPG' || it.fileType == 'JPEG'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028684554" class="icon my-svg-icon2" viewBox="0 0 1117 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="1922">
<path
d="M977.454545 0a139.636364 139.636364 0 0 1 139.636364 139.636364v744.727272a139.636364 139.636364 0 0 1-139.636364 139.636364H139.636364a139.636364 139.636364 0 0 1-139.636364-139.636364V139.636364a139.636364 139.636364 0 0 1 139.636364-139.636364zM321.163636 495.848727L93.090909 761.902545V884.363636a46.545455 46.545455 0 0 0 41.099636 46.219637L139.636364 930.909091h837.818181a46.312727 46.312727 0 0 0 23.319273-6.237091 42.914909 42.914909 0 0 1-8.052363-5.818182l-4.049455-4.189091-196.189091-236.637091-151.04 188.881455a46.545455 46.545455 0 0 1-71.586909 1.396364l-3.490909-4.654546L321.163636 495.848727zM977.454545 93.090909H139.636364a46.545455 46.545455 0 0 0-46.545455 46.545455v479.232l197.352727-230.260364a46.545455 46.545455 0 0 1 70.656-0.046545l3.444364 4.514909 243.944727 365.940363 146.432-183.016727a46.545455 46.545455 0 0 1 67.677091-5.306182l4.002909 4.096L1024 811.659636V139.636364a46.545455 46.545455 0 0 0-41.099636-46.219637L977.454545 93.090909z m-186.181818 139.636364a93.090909 93.090909 0 1 1 0 186.181818 93.090909 93.090909 0 0 1 0-186.181818z"
fill="#008df0" p-id="1923"></path>
</svg>
<svg v-if="it.fileType == 'MP4'"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
t="1692028772745" class="icon my-svg-icon2" viewBox="0 0 1117 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="2072">
<path
d="M977.454545 0a139.636364 139.636364 0 0 1 139.403637 131.444364L1117.090909 139.636364v744.727272a139.636364 139.636364 0 0 1-131.444364 139.403637L977.454545 1024H139.636364a139.636364 139.636364 0 0 1-139.403637-131.444364L0 884.363636V139.636364A139.636364 139.636364 0 0 1 131.444364 0.232727L139.636364 0h837.818181z m46.545455 302.545455h-122.228364l-7.214545 5.818181-4.608-5.818181h-267.450182l-7.214545 5.818181-4.608-5.818181H343.226182l-7.214546 5.818181L331.403636 302.545455H93.090909V884.363636a46.545455 46.545455 0 0 0 41.099636 46.219637L139.636364 930.909091h837.818181a46.545455 46.545455 0 0 0 46.219637-41.099636L1024 884.363636V302.545455zM484.212364 422.818909l4.654545 2.420364 279.272727 162.909091a46.545455 46.545455 0 0 1 5.12 76.986181l-5.12 3.444364-279.272727 162.909091a46.545455 46.545455 0 0 1-69.678545-34.909091L418.909091 791.272727v-325.818182a46.545455 46.545455 0 0 1 65.303273-42.635636zM512 546.443636v163.793455l140.381091-81.92L512 546.443636zM163.84 93.090909H139.636364a46.545455 46.545455 0 0 0-46.219637 41.099636L93.090909 139.636364v69.818181h163.84l-93.090909-116.363636z m279.272727 0H282.996364l93.090909 116.363636h160.116363l-93.090909-116.363636z m279.272728 0h-160.116364l93.090909 116.363636h160.116364l-93.090909-116.363636zM977.454545 93.090909h-135.912727l93.090909 116.363636H1024V139.636364a46.545455 46.545455 0 0 0-41.099636-46.219637L977.454545 93.090909z"
fill="#008df0" p-id="2073"></path>
</svg>
<div style="flex-grow: 1;padding-left: 20px;line-height: 24px;width: 75%;"> <div style="flex-grow: 1;padding-left: 20px;line-height: 24px;width: 75%;">
<div class="file-name">{{ it.fileName }}</div> <div class="file-name">{{ it.fileName }}</div>
<div style="color: #aaa;" class="file-time">{{ it.createTime |formatDate }}</div> <div style="color: #aaa;" class="file-time">{{ it.createTime | formatDate }}</div>
<div style="color: #aaa;" class="file-time"><svg style="vertical-align: text-bottom;cursor: pointer;" t="1697992702309" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4259" width="16" height="16"><path d="M512 768c-183.466667 0-328.533333-85.333333-426.666667-256 98.133333-170.666667 243.2-256 426.666667-256s328.533333 85.333333 426.666667 256c-98.133333 170.666667-243.2 256-426.666667 256z m8.533333-426.666667c-128 0-256 55.466667-328.533333 170.666667 72.533333 115.2 200.533333 170.666667 328.533333 170.666667s238.933333-55.466667 311.466667-170.666667c-72.533333-115.2-183.466667-170.666667-311.466667-170.666667z m-8.533333 298.666667c-72.533333 0-128-55.466667-128-128s55.466667-128 128-128 128 55.466667 128 128-55.466667 128-128 128z m0-85.333333c25.6 0 42.666667-17.066667 42.666667-42.666667s-17.066667-42.666667-42.666667-42.666667-42.666667 17.066667-42.666667 42.666667 17.066667 42.666667 42.666667 42.666667z" fill="#01A9FF" p-id="4260"></path></svg> <span style="color:#01A9FF;cursor: pointer;">{{it.readNum}}</span></div> <div style="color: #aaa;" class="file-time"><svg
style="vertical-align: text-bottom;cursor: pointer;" t="1697992702309"
class="icon" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="4259" width="16" height="16">
<path
d="M512 768c-183.466667 0-328.533333-85.333333-426.666667-256 98.133333-170.666667 243.2-256 426.666667-256s328.533333 85.333333 426.666667 256c-98.133333 170.666667-243.2 256-426.666667 256z m8.533333-426.666667c-128 0-256 55.466667-328.533333 170.666667 72.533333 115.2 200.533333 170.666667 328.533333 170.666667s238.933333-55.466667 311.466667-170.666667c-72.533333-115.2-183.466667-170.666667-311.466667-170.666667z m-8.533333 298.666667c-72.533333 0-128-55.466667-128-128s55.466667-128 128-128 128 55.466667 128 128-55.466667 128-128 128z m0-85.333333c25.6 0 42.666667-17.066667 42.666667-42.666667s-17.066667-42.666667-42.666667-42.666667-42.666667 17.066667-42.666667 42.666667 17.066667 42.666667 42.666667 42.666667z"
fill="#01A9FF" p-id="4260"></path>
</svg> <span style="color:#01A9FF;cursor: pointer;">{{ it.readNum }}</span></div>
</div> </div>
<div> <div>
<span @click="downloadFile(it)" class="file-detail">查看详情</span> <span @click="downloadFile(it)" class="file-detail">查看详情</span>
</div> </div>
</div> </div>
<div v-if="!fileList || fileList.length==0" style="text-align: center;"> <div v-if="!fileList || fileList.length == 0" style="text-align: center;">
<img src="images/nodata.png" style="width: 240px;"> <img src="images/nodata.png" style="width: 240px;">
<div style="text-align: center;">暂无数据</div> <div style="text-align: center;">暂无数据</div>
</div> </div>
@ -199,15 +263,22 @@
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="作业审批" style="position: relative;"> <module-one-1-1 label="作业审批" style="position: relative;">
<div class="warning-info-title" style="padding-left: 8px;font-size:14px;"> <div class="warning-info-title" style="padding-left: 8px;font-size:14px;">
<div :class="infoNav == 'sxkj' ? 'active' : ''" @click="onWarningInfoNav('sxkj', '受限空间')">受限空间</div> <div :class="infoNav == 'sxkj' ? 'active' : ''" @click="onWarningInfoNav('sxkj', '受限空间')">
<div :class="infoNav == 'dhzy' ? 'active' : ''" @click="onWarningInfoNav('dhzy', '动火作业')">动火作业</div> 受限空间</div>
<div :class="infoNav == 'lsyd' ? 'active' : ''" @click="onWarningInfoNav('lsyd', '临时用电')">临时用电</div> <div :class="infoNav == 'dhzy' ? 'active' : ''" @click="onWarningInfoNav('dhzy', '动火作业')">
<div :class="infoNav == 'gczy' ? 'active' : ''" @click="onWarningInfoNav('gczy', '高处作业')">高处作业</div> 动火作业</div>
<div :class="infoNav == 'dzzy' ? 'active' : ''" @click="onWarningInfoNav('dzzy', '吊装作业')">吊装作业</div> <div :class="infoNav == 'lsyd' ? 'active' : ''" @click="onWarningInfoNav('lsyd', '临时用电')">
临时用电</div>
<div :class="infoNav == 'gczy' ? 'active' : ''" @click="onWarningInfoNav('gczy', '高处作业')">
高处作业</div>
<div :class="infoNav == 'dzzy' ? 'active' : ''" @click="onWarningInfoNav('dzzy', '吊装作业')">
吊装作业</div>
<!-- <div :class="infoNav == 'ptzy' ? 'active' : ''" @click="onWarningInfoNav('ptzy', '破土作业')">破土作业</div> <!-- <div :class="infoNav == 'ptzy' ? 'active' : ''" @click="onWarningInfoNav('ptzy', '破土作业')">破土作业</div>
<div :class="infoNav == 'dlzy' ? 'active' : ''" @click="onWarningInfoNav('dlzy', '断路作业')">断路作业</div> --> <div :class="infoNav == 'dlzy' ? 'active' : ''" @click="onWarningInfoNav('dlzy', '断路作业')">断路作业</div> -->
</div> </div>
<div v-if="safetyWorkFlowList && safetyWorkFlowList.length>0" class="quality-table special-table scroll" style="overflow-x: hidden;overflow-y: scroll;height: 238px;margin-right: 12px;"> <div v-if="safetyWorkFlowList && safetyWorkFlowList.length > 0"
class="quality-table special-table scroll"
style="overflow-x: hidden;overflow-y: scroll;height: 238px;margin-right: 12px;">
<el-table :data="safetyWorkFlowList" class="mytable" style="background: transparent;"> <el-table :data="safetyWorkFlowList" class="mytable" style="background: transparent;">
<el-table-column prop="businessKeyName" label="项目名称" min-width="150"></el-table-column> <el-table-column prop="businessKeyName" label="项目名称" min-width="150"></el-table-column>
<el-table-column prop="total" label="申请状态"> <el-table-column prop="total" label="申请状态">
@ -228,20 +299,22 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<div v-if="!safetyWorkFlowList || safetyWorkFlowList.length==0" style="text-align: center;"> <div v-if="!safetyWorkFlowList || safetyWorkFlowList.length == 0" style="text-align: center;">
<img src="images/nodata.png" style="width: 240px;"> <img src="images/nodata.png" style="width: 240px;">
<div style="text-align: center;">暂无数据</div> <div style="text-align: center;">暂无数据</div>
</div> </div>
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="保险采购明细"> <module-one-1-1 label="保险采购明细">
<div class="quality-table special-table"> <div class="quality-table special-table">
<el-table :data="insuranceDataList" class="my-table" style="width: 100%;background: transparent;" height="265" @row-click="doInsuranceRowClick" <el-table :data="insuranceDataList" class="my-table"
ref="fbsubordinateUnit"> style="width: 100%;background: transparent;" height="265"
@row-click="doInsuranceRowClick" ref="fbsubordinateUnit">
<el-table-column prop="projectName" label="项目名称" align="left" min-width="180"> </el-table-column> <el-table-column prop="projectName" label="项目名称" align="left" min-width="180">
</el-table-column>
<el-table-column prop="azxstate" label="安责险" class-name="td-center" align="center"> <el-table-column prop="azxstate" label="安责险" class-name="td-center" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<svg v-if="scope.row.azxstate==''" style="width: 1em;height: 1em;position: relative; <svg v-if="scope.row.azxstate == ''" style="width: 1em;height: 1em;position: relative;
top: -2px;vertical-align: middle;fill: currentColor;overflow: hidden;" top: -2px;vertical-align: middle;fill: currentColor;overflow: hidden;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
p-id="3100"> p-id="3100">
@ -262,7 +335,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="yqxstate" class-name="td-center" label="一切险" align="center"> <el-table-column prop="yqxstate" class-name="td-center" label="一切险" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<svg v-if="scope.row.yqxstate==''" style="width: 1em;height: 1em;position: relative; <svg v-if="scope.row.yqxstate ==''" style="width: 1em;height: 1em;position: relative;
top: -2px;vertical-align: middle;fill: currentColor;overflow: hidden;" top: -2px;vertical-align: middle;fill: currentColor;overflow: hidden;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
p-id="3100"> p-id="3100">
@ -318,19 +391,19 @@ export default {
components: { components: {
worktrainDlg, worktrainDlg,
projectSpecialDlg, projectSpecialDlg,
ProblemmodifyDetail,AttendanceDetailDialog, ProblemmodifyDetail, AttendanceDetailDialog,
projectInsuranceDlg,JobWorkerDialog,enginChart,workTrainListDlg projectInsuranceDlg, JobWorkerDialog, enginChart, workTrainListDlg
}, },
data() { data() {
return { return {
dictWorkTrainDataType:[], dictWorkTrainDataType: [],
selDate:'', selDate: '',
elSummaryKey:0, elSummaryKey: 0,
elSummaryPrjKey:0, elSummaryPrjKey: 0,
elKey: 0, elKey: 0,
dept: null, dept: null,
projectInfo:null, projectInfo: null,
projects:[], projects: [],
safeNav: 0, safeNav: 0,
safeText: '汇总总数', safeText: '汇总总数',
rowStyle: { rowStyle: {
@ -339,11 +412,11 @@ export default {
height: '32px' height: '32px'
}, },
//1 //1
WorkTrainCnt1:0, WorkTrainCnt1: 0,
WorkTrainChart1:[], WorkTrainChart1: [],
//2 //2
WorkTrainCnt2:0, WorkTrainCnt2: 0,
WorkTrainChart2:[], WorkTrainChart2: [],
// //
workTrainList: [], workTrainList: [],
// //
@ -357,21 +430,18 @@ export default {
infoNav: 'sxkj', infoNav: 'sxkj',
staffText: '在岗人员', staffText: '在岗人员',
surveyUrl: 'images/survey_icon_4.png', surveyUrl: 'images/survey_icon_4.png',
laborPersonnelTotal: 100, laborPersonnelTotal: 0,
laborPersonnelData: [ laborPersonnelData: [
{ text: "总包人员", value: 10 }, { text: "总包人员", value: 0 },
{ text: "监理人员", value: 70 }, { text: "监理人员", value: 0 },
{ text: "劳务人员", value: 220 }, { text: "劳务人员", value: 0 },
], ],
safetyWorkFlowList:[], safetyWorkFlowList: [],
// //
specialDataList:[], specialDataList: [],
// //
insuranceDataList: [ insuranceDataList: [
{ name: '荟锦坊一期', dt1: '已购买', dt2: '正在办理' },
{ name: '泾河智谷一期', dt1: '正在办理', dt2: '正在办理' },
{ name: '泊域人才中心', dt1: '正在办理', dt2: '正在办理' },
{ name: '云和悦小区', dt1: '正在办理', dt2: '正在办理' },
], ],
summary: [], summary: [],
summaryTotal: 0, summaryTotal: 0,
@ -414,7 +484,7 @@ export default {
}, },
mounted() { mounted() {
this.$bus.$on("projectChange", debounce(res => { this.$bus.$on("projectChange", debounce(res => {
this.projectInfo=res; this.projectInfo = res;
this.doDeptChane(); this.doDeptChane();
this.getWorkTrainChart(); this.getWorkTrainChart();
//this.getWorkTrainList(); //this.getWorkTrainList();
@ -434,41 +504,41 @@ export default {
this.getProjectSpecialView(); this.getProjectSpecialView();
this.getDeptSafetyWorksList(); this.getDeptSafetyWorksList();
this.getProjectInsuranceList(); this.getProjectInsuranceList();
if(this.fileNav==3){ if (this.fileNav == 3) {
this.getWorkFileList(); this.getWorkFileList();
} }
})); }));
if(this.$root.hasInitHeader){ if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }
}, },
methods: { methods: {
doShowWorkTrain(type){ doShowWorkTrain(type) {
this.$refs.workTrainListDlg.showDialog({ this.$refs.workTrainListDlg.showDialog({
type:type, type: type,
deptId:this.dept.id||0, deptId: this.dept.id || 0,
projectId:this.projectInfo?.id||0, projectId: this.projectInfo?.id || 0,
prj:this.projectInfo||{}, prj: this.projectInfo || {},
dicts:this.dictWorkTrainDataType.filter(d=>d.cssClass==(type==0?'a':'b')) dicts: this.dictWorkTrainDataType.filter(d => d.cssClass == (type == 0 ? 'a' : 'b'))
}); });
}, },
doShowAttendanceDetail(){ doShowAttendanceDetail() {
let data={ let data = {
deptId:this.dept.id||0, deptId: this.dept.id || 0,
projectId:this.projectInfo?.id||0, projectId: this.projectInfo?.id || 0,
attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD") attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD")
} }
if(this.infoNav == 1){ if (this.infoNav == 1) {
this.$refs.attDetailDlg.showDialog(data); this.$refs.attDetailDlg.showDialog(data);
}else{ } else {
this.$refs.jobWorkerdlg.showDialog(data); this.$refs.jobWorkerdlg.showDialog(data);
} }
}, },
initMe(){ initMe() {
this.projectInfo=this.$root.project||{}; this.projectInfo = this.$root.project || {};
this.dept=this.$root.dept||{}; this.dept = this.$root.dept || {};
this.projects=this.$root.projects||[]; this.projects = this.$root.projects || [];
this.doDeptChane(); this.doDeptChane();
this.getWorkTrainChart(); this.getWorkTrainChart();
//this.getWorkTrainList(); //this.getWorkTrainList();
@ -476,18 +546,18 @@ export default {
this.getProjectSpecialView(); this.getProjectSpecialView();
this.getDeptSafetyWorksList(); this.getDeptSafetyWorksList();
this.getProjectInsuranceList(); this.getProjectInsuranceList();
if(this.fileNav==3){ if (this.fileNav == 3) {
this.getWorkFileList(); this.getWorkFileList();
} }
}, },
doInsuranceRowClick(row){ doInsuranceRowClick(row) {
this.$refs.insDlg.showDialog(this.projects, this.projectInfo,row) this.$refs.insDlg.showDialog(this.projects, this.projectInfo, row)
}, },
doProbleRowClick(a,b,c){ doProbleRowClick(a, b, c) {
this.$refs.probDlg.showDialog(a,0,this.safeNav,this.selDate); this.$refs.probDlg.showDialog(a, 0, this.safeNav, this.selDate);
}, },
doSpecialRowClick(row){ doSpecialRowClick(row) {
row.title = row.projectName+"特种作业人员清单"; row.title = row.projectName + "特种作业人员清单";
this.$refs.projectSpecialDlg.showDialog(row); this.$refs.projectSpecialDlg.showDialog(row);
}, },
doShowDlgTrain(it, type) { doShowDlgTrain(it, type) {
@ -506,23 +576,23 @@ export default {
}, },
// //
getWorkFileList() { getWorkFileList() {
this.$api.workFile.getWorkFileList(this.fileNav,this.fileNav==3?this.dept.id:0).then(d => { this.$api.workFile.getWorkFileList(this.fileNav, this.fileNav == 3 ? this.dept.id : 0).then(d => {
this.fileList = d.rows; this.fileList = d.rows;
//let _title = "" + this.fileList.length + ""; //let _title = "" + this.fileList.length + "";
let _title = "传达文件"; let _title = "传达文件";
this.fileTitle = _title; this.fileTitle = _title;
}); });
}, },
getWorkTrainChart(){ getWorkTrainChart() {
this.$api.workTrain.getGroupByDataType(this.dept?.id||0,this.projectInfo?.id||0).then(d => { this.$api.workTrain.getGroupByDataType(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => {
this.WorkTrainChart1=(d.data||[]).filter(it=>it.trainType==='a').map(it=>{return {value:it.id||0,name:it.trainTitle}}); this.WorkTrainChart1 = (d.data || []).filter(it => it.trainType === 'a').map(it => { return { value: it.id || 0, name: it.trainTitle } });
this.WorkTrainChart2=(d.data||[]).filter(it=>it.trainType==='b').map(it=>{return {value:it.id||0,name:it.trainTitle}}); this.WorkTrainChart2 = (d.data || []).filter(it => it.trainType === 'b').map(it => { return { value: it.id || 0, name: it.trainTitle } });
let cnt=0; let cnt = 0;
this.WorkTrainChart1.forEach(it=>{cnt+=it.value||0;}) this.WorkTrainChart1.forEach(it => { cnt += it.value || 0; })
this.WorkTrainCnt1=cnt; this.WorkTrainCnt1 = cnt;
cnt=0; cnt = 0;
this.WorkTrainChart2.forEach(it=>{cnt+=it.value||0;}) this.WorkTrainChart2.forEach(it => { cnt += it.value || 0; })
this.WorkTrainCnt2=cnt; this.WorkTrainCnt2 = cnt;
let opt = { let opt = {
tooltip: { tooltip: {
@ -533,7 +603,7 @@ export default {
radius: '60%', radius: '60%',
data: this.WorkTrainChart1, data: this.WorkTrainChart1,
label: { label: {
alignTo:'edge', alignTo: 'edge',
edgeDistance: "10%", edgeDistance: "10%",
color: "#fff", color: "#fff",
formatter: '{name|{b}}\n{cnt|{c}}', formatter: '{name|{b}}\n{cnt|{c}}',
@ -549,13 +619,13 @@ export default {
] ]
}; };
this.$refs.chart3.init(opt); this.$refs.chart3.init(opt);
let tmps=this.WorkTrainChart2; let tmps = this.WorkTrainChart2;
let opt2 = { let opt2 = {
grid: { grid: {
left: 10, left: 10,
right:10, right: 10,
top:40, top: 40,
bottom:60 bottom: 60
}, },
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
@ -566,16 +636,16 @@ export default {
color: ['#409eff'], color: ['#409eff'],
xAxis: { xAxis: {
type: 'category', type: 'category',
data: tmps.map(d => d.name.replace("演练","\n演练")), data: tmps.map(d => d.name.replace("演练", "\n演练")),
axisLabel: { axisLabel: {
color: "#fff", color: "#fff",
fontSize:10, fontSize: 10,
} }
}, },
yAxis: { yAxis: {
type: 'value', type: 'value',
axisLabel: { axisLabel: {
show:false, show: false,
color: "#fff" color: "#fff"
} }
}, },
@ -583,7 +653,7 @@ export default {
{ {
label: { label: {
show:true, show: true,
color: '#82c9ff', color: '#82c9ff',
position: 'top', position: 'top',
}, },
@ -598,39 +668,39 @@ export default {
}, },
// //
getWorkTrainList() { getWorkTrainList() {
this.$api.workTrain.getWorkTrainList(0, this.dept?.id||0,this.projectInfo?.id||0).then(d => { this.$api.workTrain.getWorkTrainList(0, this.dept?.id || 0, this.projectInfo?.id || 0).then(d => {
this.workTrainList = d.rows; this.workTrainList = d.rows;
}); });
}, },
// //
getEmergencyDrillList() { getEmergencyDrillList() {
this.$api.workTrain.getWorkTrainList(1, this.dept?.id||0,this.projectInfo?.id||0).then(d => { this.$api.workTrain.getWorkTrainList(1, this.dept?.id || 0, this.projectInfo?.id || 0).then(d => {
this.emergencyDrillList = d.rows; this.emergencyDrillList = d.rows;
}); });
}, },
// //
getProjectSpecialView(){ getProjectSpecialView() {
this.$api.special.getProjectSpecialView(this.dept?.id||0,this.projectInfo?.id||0).then(d => { this.$api.special.getProjectSpecialView(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => {
this.specialDataList = d.rows; this.specialDataList = d.rows;
}); });
}, },
// //
getDeptSafetyWorksList(){ getDeptSafetyWorksList() {
// //
this.$api.flow.findSafetyWorkList(this.dept?.id||0,this.projectInfo?.id||0,this.infoNav).then(d => { this.$api.flow.findSafetyWorkList(this.dept?.id || 0, this.projectInfo?.id || 0, this.infoNav).then(d => {
this.safetyWorkFlowList = d.data||[]; this.safetyWorkFlowList = d.data || [];
}); });
}, },
getProjectId(cb) { getProjectId(cb) {
let func = () => { let func = () => {
let prjId = this.projectInfo?.id||0; let prjId = this.projectInfo?.id || 0;
if (prjId == 0) { if (prjId == 0) {
if (!this.projects||this.projects.length == 0) { if (!this.projects || this.projects.length == 0) {
setTimeout(func, 100); setTimeout(func, 100);
} else { } else {
if(this.projects.length>1){ if (this.projects.length > 1) {
cb && cb(this.projects[1].id); cb && cb(this.projects[1].id);
}else{ } else {
cb(0); cb(0);
} }
} }
@ -640,36 +710,46 @@ export default {
} }
func(); func();
}, },
loadAttendanceData(){ loadAttendanceData() {
this.getProjectId(id => { this.getProjectId(id => {
let data={ if (id == 0) {
subDeptId:this.dept.id||0, this.laborPersonnelTotal = 0;
projectId:id||0, this.laborPersonnelData = [
{ text: "总包人员", value: 0 },
{ text: "监理人员", value: 0 },
{ text: "劳务人员", value: 0 },
];
this.elDeptWorks++;
return;
}
let data = {
subDeptId: this.dept.id || 0,
projectId: id || 0,
attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD") attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD")
} }
this.$api.attendance.groupByComany(data).then(d=>{ this.$api.attendance.groupByComany(data).then(d => {
let tmps=d.data||[]; let tmps = d.data || [];
const func=(ids)=>{ const func = (ids) => {
let sum=0; let sum = 0;
tmps.filter(it=>ids.includes(it.companyTypeId)).map(it=>it.id).forEach(it=>{ tmps.filter(it => ids.includes(it.companyTypeId)).map(it => it.id).forEach(it => {
sum+=it*1; sum += it * 1;
}) })
return sum; return sum;
} }
this.laborPersonnelTotal = 0; this.laborPersonnelTotal = 0;
this.laborPersonnelData = [{ text: "劳务人员", value: func(["0","2","3","4","5"]) }, { text: "监理人员", value: func(["8"]) }, { text: "总包人员", value: func(["1","6"]) }]; this.laborPersonnelData = [{ text: "劳务人员", value: func(["0", "2", "3", "4", "5"]) }, { text: "监理人员", value: func(["8"]) }, { text: "总包人员", value: func(["1", "6"]) }];
this.laborPersonnelData.forEach(it=>{ this.laborPersonnelData.forEach(it => {
this.laborPersonnelTotal += it.value; this.laborPersonnelTotal += it.value;
}) })
this.elDeptWorks++; this.elDeptWorks++;
}); });
}); });
}, },
getProjectInsuranceList(){ getProjectInsuranceList() {
this.$api.insurance.getProjectInsuranceList(this.dept?.id||0,this.projectInfo?.id||0).then(d => { this.$api.insurance.getProjectInsuranceList(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => {
this.insuranceDataList=[]; this.insuranceDataList = [];
if(d.rows.length>0 && d.rows[0]!=null){ if (d.rows.length > 0 && d.rows[0] != null) {
this.insuranceDataList = d.rows; this.insuranceDataList = d.rows;
} }
}); });
@ -678,20 +758,20 @@ export default {
n = "" + n; n = "" + n;
return " ".substring(0, 3 - n.length) + n; return " ".substring(0, 3 - n.length) + n;
}, },
dtChange(){ dtChange() {
this.doDeptChane(); this.doDeptChane();
}, },
doDeptChane() { doDeptChane() {
let postData={ let postData = {
deptId:this.dept?.id||0, deptId: this.dept?.id || 0,
roleType:this.safeNav, roleType: this.safeNav,
projectId:this.projectInfo?.id||0 projectId: this.projectInfo?.id || 0
}; };
if(this.selDate.length>0){ if (this.selDate.length > 0) {
postData.startDate=this.$dt(this.selDate[0]).format("YYYY-MM-DD"); postData.startDate = this.$dt(this.selDate[0]).format("YYYY-MM-DD");
} }
if(this.selDate.length>1){ if (this.selDate.length > 1) {
postData.endDate=this.$dt(this.selDate[1]).format("YYYY-MM-DD"); postData.endDate = this.$dt(this.selDate[1]).format("YYYY-MM-DD");
} }
this.$api.problemmodify.safetySummary(postData).then(d => { this.$api.problemmodify.safetySummary(postData).then(d => {
@ -735,7 +815,7 @@ export default {
} else { } else {
it.prop = (it.value * 100.0 / this.summaryPrjTotal).toFixed(1); it.prop = (it.value * 100.0 / this.summaryPrjTotal).toFixed(1);
} }
it.rate =(it.value==0?0:it.isDel * 100.0 / it.value).toFixed(1); it.rate = (it.value == 0 ? 0 : it.isDel * 100.0 / it.value).toFixed(1);
}) })
this.elSummaryPrjKey++; this.elSummaryPrjKey++;
}) })
@ -749,7 +829,7 @@ export default {
}, },
downloadFile(it) { downloadFile(it) {
this.$api.workFile.workFileRead(it.id).then(d => { this.$api.workFile.workFileRead(it.id).then(d => {
it.readNum=d.data.readNum; it.readNum = d.data.readNum;
}) })
if (it && it.filePath) { if (it && it.filePath) {
window.open('/jhapi' + it.filePath); window.open('/jhapi' + it.filePath);
@ -758,10 +838,10 @@ export default {
downloadFlowFile(it) { downloadFlowFile(it) {
// //
this.$api.flow.findFormDatasByProcInsId(it.procInsId).then(d => { this.$api.flow.findFormDatasByProcInsId(it.procInsId).then(d => {
if(d.data && d.data.files){ if (d.data && d.data.files) {
// //
d.data.files.split(",").forEach(item => { d.data.files.split(",").forEach(item => {
this.$api.downFile("/jhapi" + item, {}, item.substring(item.lastIndexOf("/")+1)); this.$api.downFile("/jhapi" + item, {}, item.substring(item.lastIndexOf("/") + 1));
}); });
} }
}) })
@ -819,7 +899,8 @@ export default {
position: relative; position: relative;
top: 3px; top: 3px;
} }
.problemmodify_list{
.problemmodify_list {
.el-table__body-wrapper { .el-table__body-wrapper {
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 8px; width: 8px;
@ -830,14 +911,17 @@ export default {
background-color: rgb(1, 169, 255); background-color: rgb(1, 169, 255);
border-radius: 4px; border-radius: 4px;
} }
tr{
tr {
cursor: pointer; cursor: pointer;
} }
} }
} }
.warning-info-title div{
.warning-info-title div {
padding: 0 12px 0 20px !important; padding: 0 12px 0 20px !important;
} }
.center-image .screen-one-2-1 { .center-image .screen-one-2-1 {
overflow: hidden; overflow: hidden;
} }
@ -981,8 +1065,10 @@ export default {
overflow: hidden; overflow: hidden;
margin: 10px 5px 5px 5px; margin: 10px 5px 5px 5px;
} }
.file-time{
float:left; .file-time {
width:50%; float: left;
width: 50%;
} }
}</style> }
</style>

View File

@ -3,21 +3,26 @@
<module-one-1-1 label="举牌验收"> <module-one-1-1 label="举牌验收">
<div class="checking-row1" style="position: relative;height: 310px;overflow: hidden;"> <div class="checking-row1" style="position: relative;height: 310px;overflow: hidden;">
<div class="checking-chart-nav"> <div class="checking-chart-nav">
<span class="chart-nv-item" @click="showChart1 = true" :class="showChart1 ? 'active' : ''">常规验收</span> <span class="chart-nv-item" @click="showChart1 = true"
<span class="chart-nv-item" @click="showChart1 = false" :class="!showChart1 ? 'active' : ''">隐蔽验收</span> :class="showChart1 ? 'active' : ''">常规验收</span>
<span class="chart-nv-item" @click="showChart1 = false"
:class="!showChart1 ? 'active' : ''">隐蔽验收</span>
</div> </div>
<div v-if="chart"> <div v-if="chart">
<enginChart :class="showChart1 ? 'show-chart' : 'hide-chart'" ref="chart1" :height="300"></enginChart> <enginChart :class="showChart1 ? 'show-chart' : 'hide-chart'" ref="chart1" :height="300">
<enginChart :class="!showChart1 ? 'show-chart' : 'hide-chart'" ref="chart2" :height="300"></enginChart> </enginChart>
<enginChart :class="!showChart1 ? 'show-chart' : 'hide-chart'" ref="chart2" :height="300">
</enginChart>
</div> </div>
</div> </div>
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="常规验收" class="scroll checking-row2" style="position: relative;"> <module-one-1-1 label="常规验收" class="scroll checking-row2" style="position: relative;">
<img src="images/icon2001.png" style="position: absolute;cursor: pointer;right: 12px;top: 12px;" <img src="images/icon2001.png" style="position: absolute;cursor: pointer;right: 12px;top: 12px;"
@click="doShowCheckingListDlg(1)"> @click="doShowCheckingListDlg(1)" v-if="prjs.length>1">
<div class="checking-group-nav warning-info-title" style="padding-left: 20px;"> <div class="checking-group-nav warning-info-title" style="padding-left: 20px;">
<div class="nav-item" :class="nav1 == it.dictValue ? 'active' : ''" @click="doQueryGroup(it.dictValue, 'a')" <div class="nav-item" :class="nav1 == it.dictValue ? 'active' : ''"
v-for="(it, idx) in dict1" :key="it.dictValue">{{ it.dictLabel }}</div> @click="doQueryGroup(it.dictValue, 'a')" v-for="(it, idx) in dict1" :key="it.dictValue">{{
it.dictLabel }}</div>
</div> </div>
<div v-if="!projectInfo || projectInfo.id == 0"> <div v-if="!projectInfo || projectInfo.id == 0">
<div class="idle-list problemmodify_list" style="padding:0px 10px"> <div class="idle-list problemmodify_list" style="padding:0px 10px">
@ -38,7 +43,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="id" label="占比" width="100" align="center"> <el-table-column prop="id" label="占比" width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div>{{ scope.row.percent?scope.row.percent.toFixed(2)+'%':'' }} </div> <div>{{ scope.row.percent ? scope.row.percent.toFixed(2) + '%' : '' }} </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -49,17 +54,18 @@
<img src="images/nodata.png" style="width: 120px;"> <img src="images/nodata.png" style="width: 120px;">
<div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div> <div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div>
</div> </div>
<div v-else class="acceptance-list scroll" > <div v-else class="acceptance-list scroll">
<div class="acceptance-item" v-for="(it, idx) in dataList1" :key="idx" style="cursor: pointer;"> <div class="acceptance-item" v-for="(it, idx) in dataList1" :key="idx" style="cursor: pointer;">
<div class="row-1"> <div class="row-1">
<div class="div-img"> <div class="div-img">
<el-image :src="getProfileImage(it.mainImage)" :preview-src-list="getBigProfileImage(it)" /> <el-image :src="getProfileImage(it.mainImage)"
:preview-src-list="getBigProfileImage(it)" />
</div> </div>
<div class="div-text" style="width: 65%;" @click="doShowChecking(it)"> <div class="div-text" style="width: 65%;" @click="doShowChecking(it)">
<div class="row-3"> <div class="row-3">
<div v-if="it.checkResult == '1'" class="sp-lbl"></div> <div v-if="it.checkResult == '1'" class="sp-lbl"></div>
<div v-if="it.checkResult == '2'" class="sp-err"></div> <div v-if="it.checkResult == '2'" class="sp-err"></div>
<div class="sp-date">{{ it.checkingDate|formatDate }}</div> <div class="sp-date">{{ it.checkingDate | formatDate }}</div>
</div> </div>
<div class="row-3"> <div class="row-3">
<span class="sp-label">项目:</span> <span class="sp-label">项目:</span>
@ -80,10 +86,11 @@
</module-one-1-1> </module-one-1-1>
<module-one-1-1 label="隐蔽验收" class="scroll checking-row3" style="position: relative;"> <module-one-1-1 label="隐蔽验收" class="scroll checking-row3" style="position: relative;">
<img src="images/icon2001.png" style="position: absolute;cursor: pointer;right: 12px;top: 12px;" <img src="images/icon2001.png" style="position: absolute;cursor: pointer;right: 12px;top: 12px;"
@click="doShowCheckingListDlg(2)"> @click="doShowCheckingListDlg(2)" v-if="prjs.length>1">
<div class="checking-group-nav warning-info-title" style="padding-left: 20px;"> <div class="checking-group-nav warning-info-title" style="padding-left: 20px;">
<div class="nav-item" :class="nav2 == it.dictValue ? 'active' : ''" @click="doQueryGroup(it.dictValue, 'b')" <div class="nav-item" :class="nav2 == it.dictValue ? 'active' : ''"
v-for="(it, idx) in dict2" :key="it.dictValue">{{ it.dictLabel }}</div> @click="doQueryGroup(it.dictValue, 'b')" v-for="(it, idx) in dict2" :key="it.dictValue">{{
it.dictLabel }}</div>
</div> </div>
<div v-if="!projectInfo || projectInfo.id == 0"> <div v-if="!projectInfo || projectInfo.id == 0">
<div class="idle-list problemmodify_list" style="padding:0px 10px"> <div class="idle-list problemmodify_list" style="padding:0px 10px">
@ -104,7 +111,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="id" label="占比" width="100" align="center"> <el-table-column prop="id" label="占比" width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div>{{ scope.row.percent?scope.row.percent.toFixed(2)+'%':'' }} </div> <div>{{ scope.row.percent ? scope.row.percent.toFixed(2) + '%' : '' }} </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -115,17 +122,18 @@
<img src="images/nodata.png" style="width: 120px;"> <img src="images/nodata.png" style="width: 120px;">
<div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div> <div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div>
</div> </div>
<div v-else class="acceptance-list scroll" > <div v-else class="acceptance-list scroll">
<div class="acceptance-item" v-for="(it, idx) in dataList2" :key="idx" style="cursor: pointer;"> <div class="acceptance-item" v-for="(it, idx) in dataList2" :key="idx" style="cursor: pointer;">
<div class="row-1"> <div class="row-1">
<div class="div-img"> <div class="div-img">
<el-image :src="getProfileImage(it.mainImage)" :preview-src-list="getBigProfileImage(it)" /> <el-image :src="getProfileImage(it.mainImage)"
:preview-src-list="getBigProfileImage(it)" />
</div> </div>
<div class="div-text" style="width: 65%;" @click="doShowChecking(it)"> <div class="div-text" style="width: 65%;" @click="doShowChecking(it)">
<div class="row-3"> <div class="row-3">
<div v-if="it.checkResult == '1'" class="sp-lbl"></div> <div v-if="it.checkResult == '1'" class="sp-lbl"></div>
<div v-if="it.checkResult == '2'" class="sp-err"></div> <div v-if="it.checkResult == '2'" class="sp-err"></div>
<div class="sp-date">{{ it.checkingDate |formatDate }}</div> <div class="sp-date">{{ it.checkingDate | formatDate }}</div>
</div> </div>
<div class="row-3"> <div class="row-3">
<span class="sp-label">项目:</span> <span class="sp-label">项目:</span>
@ -150,6 +158,7 @@
</template> </template>
<script> <script>
import debounce from "lodash.debounce";
import throttle from 'lodash.throttle' import throttle from 'lodash.throttle'
import enginChart from '../engin/enginChart.vue' import enginChart from '../engin/enginChart.vue'
import showCheckingDlg from './showCheckingDlg.vue' import showCheckingDlg from './showCheckingDlg.vue'
@ -157,7 +166,7 @@ import listDlg from './projectCheckingListDlg.vue'
export default { export default {
name: 'JhbigscreenProjectChecking', name: 'JhbigscreenProjectChecking',
components: { components: {
enginChart, showCheckingDlg,listDlg enginChart, showCheckingDlg, listDlg
}, },
data() { data() {
return { return {
@ -176,6 +185,7 @@ export default {
chart: true, chart: true,
dataList1: [], dataList1: [],
dataList2: [], dataList2: [],
prjs:[],
}; };
}, },
created() { created() {
@ -194,6 +204,12 @@ export default {
}); });
}, },
mounted() { mounted() {
this.$bus.$on(
"loadProjects",
debounce((prjs) => {
this.prjs = prjs;
})
);
this.$bus.$on("projectChange", throttle((res) => { this.$bus.$on("projectChange", throttle((res) => {
this.projectInfo = res; this.projectInfo = res;
this.loadData(); this.loadData();
@ -208,12 +224,12 @@ export default {
}, },
methods: { methods: {
doShowCheckingListDlg(lvl1){ doShowCheckingListDlg(lvl1) {
this.$refs.listDlg.showDialog({ this.$refs.listDlg.showDialog({
lvl1:lvl1, lvl1: lvl1,
deptId:this.dept?.id || 0, deptId: this.dept?.id || 0,
projectInfo:this.projectInfo, projectInfo: this.projectInfo,
dicts:lvl1==1?this.dict1:this.dict2 dicts: lvl1 == 1 ? this.dict1 : this.dict2
}); });
}, },
doShowChecking(it) { doShowChecking(it) {
@ -442,15 +458,17 @@ export default {
} }
.problemmodify_list { .problemmodify_list {
&.idle-list{ &.idle-list {
.el-table__body .el-table__row { .el-table__body .el-table__row {
line-height: 36px; line-height: 36px;
height: 36px !important; height: 36px !important;
} }
.el-table td{
.el-table td {
height: 36px; height: 36px;
} }
} }
.el-table__body-wrapper { .el-table__body-wrapper {
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 8px; width: 8px;
@ -507,15 +525,18 @@ export default {
} }
} }
.acceptance-list{
.acceptance-list {
margin-top: 0px; margin-top: 0px;
max-height: 230px; max-height: 230px;
overflow-y: auto; overflow-y: auto;
.acceptance-item{
&:first-child{ .acceptance-item {
margin-top:0px; &:first-child {
margin-top: 0px;
} }
.row-3{
.row-3 {
display: flex; display: flex;
} }
} }