|
@ -3,83 +3,594 @@ |
|
|
<div class="g-main"> |
|
|
<div class="g-main"> |
|
|
<div> |
|
|
<div> |
|
|
<div class="m-search"> |
|
|
<div class="m-search"> |
|
|
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'100px'"> |
|
|
<el-form |
|
|
|
|
|
:inline="true" |
|
|
|
|
|
:model="formData" |
|
|
|
|
|
ref="ref_searchform" |
|
|
|
|
|
:label-width="'100px'" |
|
|
|
|
|
> |
|
|
<el-form-item label="自评周期"> |
|
|
<el-form-item label="自评周期"> |
|
|
<el-date-picker v-model="formData.period" type="month" value-format="yyyy-MM" placeholder="选择日期" |
|
|
<el-date-picker |
|
|
style="width: 202px" clearable> |
|
|
v-model="formData.period" |
|
|
|
|
|
type="month" |
|
|
|
|
|
value-format="yyyy-MM" |
|
|
|
|
|
placeholder="选择日期" |
|
|
|
|
|
style="width: 202px" |
|
|
|
|
|
clearable |
|
|
|
|
|
> |
|
|
</el-date-picker> |
|
|
</el-date-picker> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<div style="float: right; margin-top: 5px"> |
|
|
<div style="float: right; margin-top: 5px"> |
|
|
<el-button style="margin-left: 30px" size="small" type="primary " |
|
|
<el-button |
|
|
@click="handleSearch">查询</el-button> |
|
|
style="margin-left: 30px" |
|
|
<el-button style="margin-left: 10px" is-plain class="diy-button--white el-button--default" |
|
|
size="small" |
|
|
size="small" @click="resetSearch">重置</el-button> |
|
|
type="primary " |
|
|
|
|
|
@click="handleSearch" |
|
|
|
|
|
>查询</el-button |
|
|
|
|
|
> |
|
|
|
|
|
<el-button |
|
|
|
|
|
style="margin-left: 10px" |
|
|
|
|
|
is-plain |
|
|
|
|
|
class="diy-button--white el-button--default" |
|
|
|
|
|
size="small" |
|
|
|
|
|
@click="resetSearch" |
|
|
|
|
|
>重置</el-button |
|
|
|
|
|
> |
|
|
</div> |
|
|
</div> |
|
|
</el-form> |
|
|
</el-form> |
|
|
|
|
|
|
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="m-table"> |
|
|
<div class="m-table"> |
|
|
<div class="div_btn" v-if="btnFlag"> |
|
|
<div class="div_btn" v-if="btnFlag"> |
|
|
<el-button type="primary" size="small" class="diy-button--white el-button--default" |
|
|
<el-button |
|
|
@click="handleCreateMonthlySurvey">生成本月社区自查问卷表</el-button> |
|
|
type="primary" |
|
|
|
|
|
size="small" |
|
|
|
|
|
class="diy-button--white el-button--default" |
|
|
|
|
|
@click="handleCreateMonthlySurvey" |
|
|
|
|
|
>生成本月社区自查问卷表</el-button |
|
|
|
|
|
> |
|
|
</div> |
|
|
</div> |
|
|
<div class="m-table-item" :style="{ height: maxTableHeight + 'px', width: '100%' }"> |
|
|
<div |
|
|
|
|
|
class="m-table-item" |
|
|
|
|
|
:style="{ height: maxTableHeight + 'px', width: '100%' }" |
|
|
|
|
|
> |
|
|
<div>本月已参与调研人数 {{ personQty }}人</div> |
|
|
<div>本月已参与调研人数 {{ personQty }}人</div> |
|
|
<section class="content_box"> |
|
|
<section class="content_box"> |
|
|
<div class="left"> |
|
|
<div class="left"> |
|
|
<img src="../../../../assets/img/satisfaction/zhdf.png" alt="Image"> |
|
|
<img |
|
|
|
|
|
src="../../../../assets/img/satisfaction/zhdf.png" |
|
|
|
|
|
alt="Image" |
|
|
|
|
|
/> |
|
|
<div class="left_right"> |
|
|
<div class="left_right"> |
|
|
<div>{{ synthesisScore }}</div> |
|
|
<div>{{ synthesisScore }}</div> |
|
|
<div>综合得分</div> |
|
|
<div>综合得分</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="right_box"> |
|
|
<div class="right_box"> |
|
|
<div :class="synthesisState ? 'up' : 'down'"> |
|
|
<div :class="synthesisState ? 'up' : 'down'"> |
|
|
<img src="@/assets/images/index/up.png" alt="" v-if="synthesisState && synthesisScoreBtLastMonth!=0" > |
|
|
<img |
|
|
<img src="@/assets/images/index/down.png" alt="" v-if="!synthesisState && synthesisScoreBtLastMonth!=0" > |
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
alt="" |
|
|
|
|
|
v-if="synthesisState && synthesisScoreBtLastMonth != 0" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
alt="" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
!synthesisState && |
|
|
|
|
|
synthesisScoreBtLastMonth != 0 && |
|
|
|
|
|
synthesisScoreBtLastMonth != null |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
<span>{{ synthesisScoreBtLastMonth }}</span> |
|
|
<span>{{ synthesisScoreBtLastMonth }}</span> |
|
|
</div> |
|
|
</div> |
|
|
<div style="color: #999;">较上月</div> |
|
|
<div style="color: #999">较上月</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="right"> |
|
|
<div class="right"> |
|
|
<div class="box" v-for="(item, index) in score" :key="index"> |
|
|
<div class="box" v-for="(item, index) in score" :key="index"> |
|
|
<div class="card"> |
|
|
<div class="card"> |
|
|
<img :src="item.imgUrl" alt="Image"> |
|
|
<img :src="item.imgUrl" alt="Image" /> |
|
|
<div class="right_right"> |
|
|
<div class="right_right"> |
|
|
<div>{{ item.score }}</div> |
|
|
<div>{{ item.score }}</div> |
|
|
<div>{{ item.satisfactionCategoryName }}</div> |
|
|
<div>{{ item.satisfactionCategoryName }}</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="right_box"> |
|
|
<div class="right_box"> |
|
|
<div> |
|
|
<div> |
|
|
<img src="@/assets/images/index/up.png" alt="" v-if="item.state && item.scoreDiffBtLastMonth!=0" > |
|
|
<img |
|
|
<img src="@/assets/images/index/down.png" alt="" v-if="!item.state && item.scoreDiffBtLastMonth!=0" > |
|
|
src="@/assets/images/index/up.png" |
|
|
<span :class="item.state?'up':'down'">{{item.scoreDiffBtLastMonth}}</span> |
|
|
alt="" |
|
|
|
|
|
v-if="item.state && item.scoreDiffBtLastMonth != 0" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
alt="" |
|
|
|
|
|
v-if="!item.state && item.scoreDiffBtLastMonth != 0" |
|
|
|
|
|
/> |
|
|
|
|
|
<span :class="item.state ? 'up' : 'down'">{{ |
|
|
|
|
|
item.scoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
</div> |
|
|
</div> |
|
|
<div style="color: #999;">较上月</div> |
|
|
<div style="color: #999">较上月</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</section> |
|
|
</section> |
|
|
<div id="myCharts"></div> |
|
|
|
|
|
|
|
|
<section class="bto-box"> |
|
|
|
|
|
<div id="myCharts" v-if="user.level != 'street'"></div> |
|
|
|
|
|
<div v-else class="f-top16"> |
|
|
|
|
|
<el-table :data="tableList" :height="tabHeight" border align="center"> |
|
|
|
|
|
<el-table-column label="序号" type="index" width="80" /> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="社区" |
|
|
|
|
|
show-overflow-tooltip |
|
|
|
|
|
prop="agencyName" |
|
|
|
|
|
width="200" |
|
|
|
|
|
> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="参与调研人数" |
|
|
|
|
|
prop="personQty" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="综合得分" |
|
|
|
|
|
prop="synthesisScore" |
|
|
|
|
|
width="150" |
|
|
|
|
|
align="center" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.synthesisScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.synthesisScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.synthesisScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="文化设施" |
|
|
|
|
|
prop="culturalFacilityScore" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.culturalFacilityScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.culturalFacilityScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.culturalFacilityScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="基础教育" |
|
|
|
|
|
prop="basicEducation" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.basicEducationScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.basicEducationScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.basicEducationScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="体育设施" |
|
|
|
|
|
prop="sportsFacility" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.sportsFacilityScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.sportsFacilityScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.sportsFacilityScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="生态环境" |
|
|
|
|
|
prop="ecologicalEnv" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.ecologicalEnvScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.ecologicalEnvScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.ecologicalEnvScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="社会治安" |
|
|
|
|
|
prop="socialSecurity" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.socialSecurityScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.socialSecurityScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.socialSecurityScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="社会救助" |
|
|
|
|
|
prop="socialAssistance" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.socialAssistanceScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.socialAssistanceScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.socialAssistanceScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="老有所养" |
|
|
|
|
|
prop="oldPeopleProvide" |
|
|
|
|
|
width="150" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.oldPeopleProvideScore |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.oldPeopleProvideScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.oldPeopleProvideScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column label="病有所医" prop="medical" width="150" > |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
<div class="f-flex"> |
|
|
|
|
|
<span class="down f-right8">{{ |
|
|
|
|
|
scope.row.medicalScore |
|
|
|
|
|
}}</span> |
|
|
<div> |
|
|
<div> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/up.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth > |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<img |
|
|
|
|
|
src="@/assets/images/index/down.png" |
|
|
|
|
|
width="10px" |
|
|
|
|
|
height="14px" |
|
|
|
|
|
v-if=" |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth < |
|
|
|
|
|
0 && |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth != 0 |
|
|
|
|
|
" |
|
|
|
|
|
/> |
|
|
|
|
|
<span class="gray">{{ |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth < 0 |
|
|
|
|
|
? Math.abs( |
|
|
|
|
|
scope.row.medicalScoreDiffBtLastMonth |
|
|
|
|
|
) |
|
|
|
|
|
: scope.row.medicalScoreDiffBtLastMonth |
|
|
|
|
|
}}</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
label="操作" |
|
|
|
|
|
width="90" |
|
|
|
|
|
align="center" |
|
|
|
|
|
fixed="right" |
|
|
|
|
|
> |
|
|
|
|
|
<template slot-scope="data"> |
|
|
|
|
|
<el-button type="text" @click="handleView(data.row)" |
|
|
|
|
|
>查看</el-button |
|
|
|
|
|
> |
|
|
|
|
|
</template> |
|
|
|
|
|
</el-table-column> |
|
|
|
|
|
</el-table> |
|
|
|
|
|
<el-row type="flex"> |
|
|
|
|
|
<el-col :span="12" align="left"> |
|
|
|
|
|
<div style="margin-top: 25px">共{{ total }}条</div> |
|
|
|
|
|
</el-col> |
|
|
|
|
|
<el-col :span="12" align="right"> |
|
|
|
|
|
<el-pagination |
|
|
|
|
|
@size-change="handleSizeChange" |
|
|
|
|
|
@current-change="handleCurrentChange" |
|
|
|
|
|
:current-page.sync="pageNo" |
|
|
|
|
|
:page-size="pageSize" |
|
|
|
|
|
layout="prev, pager, next,jumper" |
|
|
|
|
|
:total="total" |
|
|
|
|
|
> |
|
|
|
|
|
</el-pagination |
|
|
|
|
|
></el-col> |
|
|
|
|
|
</el-row> |
|
|
|
|
|
</div> |
|
|
|
|
|
</section> |
|
|
</div> |
|
|
</div> |
|
|
<el-dialog v-if="showFormList && user.level == 'community'" :visible.sync="showFormList" :close-on-click-modal="false" |
|
|
<div></div> |
|
|
:close-on-press-escape="false" title="社区自查" :modal-append-to-body="false" width="820px" top="5vh" |
|
|
</div> |
|
|
class="dialog-h" @closed="showFormList = false"> |
|
|
</div> |
|
|
<form-list ref="ref_add_form" @handleClose="handleClose" :satisfactionCategoryStr="satisfactionCategoryStr" |
|
|
<el-dialog |
|
|
@handelDetail="handelDetail" @handelFollowUpList="handelFollowUpList" :period="formData.period" :seriesName="seriesName" :inspRecordId="inspRecordId"></form-list> |
|
|
v-if="showFormList && user.level == 'community'" |
|
|
<el-dialog width="920px" class="dialog-h" title="社区自查报告详情" :close-on-click-modal="false" |
|
|
:visible.sync="showFormList" |
|
|
v-if="showFollowUpDetail" :visible.sync="showFollowUpDetail" append-to-body> |
|
|
:close-on-click-modal="false" |
|
|
<follow-Detail :period="formData.period" :inspResultId="inspResultId" @handleClose="showFollowUpDetail = false"></follow-Detail> |
|
|
:close-on-press-escape="false" |
|
|
|
|
|
title="社区自查" |
|
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
|
width="820px" |
|
|
|
|
|
top="5vh" |
|
|
|
|
|
class="dialog-h" |
|
|
|
|
|
@closed="showFormList = false" |
|
|
|
|
|
> |
|
|
|
|
|
<form-list |
|
|
|
|
|
ref="ref_add_form" |
|
|
|
|
|
@handleClose="handleClose" |
|
|
|
|
|
:satisfactionCategoryStr="satisfactionCategoryStr" |
|
|
|
|
|
@handelDetail="handelDetail" |
|
|
|
|
|
@handelFollowUpList="handelFollowUpList" |
|
|
|
|
|
:period="formData.period" |
|
|
|
|
|
:seriesName="seriesName" |
|
|
|
|
|
:inspRecordId="inspRecordId" |
|
|
|
|
|
></form-list> |
|
|
|
|
|
<el-dialog |
|
|
|
|
|
width="920px" |
|
|
|
|
|
class="dialog-h" |
|
|
|
|
|
title="社区自查报告详情" |
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
|
v-if="showFollowUpDetail" |
|
|
|
|
|
:visible.sync="showFollowUpDetail" |
|
|
|
|
|
append-to-body |
|
|
|
|
|
> |
|
|
|
|
|
<follow-Detail |
|
|
|
|
|
:period="formData.period" |
|
|
|
|
|
:inspResultId="inspResultId" |
|
|
|
|
|
@handleClose="showFollowUpDetail = false" |
|
|
|
|
|
></follow-Detail> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
<el-dialog width="820px" class="dialog-h" title="回访记录" :close-on-click-modal="false" v-if="showFollowUpList" |
|
|
<el-dialog |
|
|
:visible.sync="showFollowUpList" append-to-body> |
|
|
width="820px" |
|
|
|
|
|
class="dialog-h" |
|
|
|
|
|
title="回访记录" |
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
|
v-if="showFollowUpList" |
|
|
|
|
|
:visible.sync="showFollowUpList" |
|
|
|
|
|
append-to-body |
|
|
|
|
|
> |
|
|
<follow-list :id="inspResultId"></follow-list> |
|
|
<follow-list :id="inspResultId"></follow-list> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
@ -89,11 +600,8 @@ |
|
|
加载中<span class="dot">...</span> |
|
|
加载中<span class="dot">...</span> |
|
|
</div> |
|
|
</div> |
|
|
</el-image> |
|
|
</el-image> |
|
|
<div> |
|
|
<div><span>问卷链接:</span> {{ questionnaireUrl }}</div> |
|
|
<span>问卷链接:</span> {{ questionnaireUrl }} |
|
|
<span slot="footer" class="dialog-footer"> </span> |
|
|
</div> |
|
|
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
|
|
</span> |
|
|
|
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
@ -149,10 +657,10 @@ export default { |
|
|
type: "category", |
|
|
type: "category", |
|
|
boundaryGap: true, |
|
|
boundaryGap: true, |
|
|
axisLine: { |
|
|
axisLine: { |
|
|
show: true |
|
|
show: true, |
|
|
}, |
|
|
}, |
|
|
axisTick: { |
|
|
axisTick: { |
|
|
show: false |
|
|
show: false, |
|
|
}, |
|
|
}, |
|
|
data: [], // 请将yourDataArray替换为您的x轴数据数组 |
|
|
data: [], // 请将yourDataArray替换为您的x轴数据数组 |
|
|
splitLine: { |
|
|
splitLine: { |
|
@ -160,19 +668,16 @@ export default { |
|
|
lineStyle: { |
|
|
lineStyle: { |
|
|
width: 60, // 设置阴影的宽度 |
|
|
width: 60, // 设置阴影的宽度 |
|
|
color: "#000", |
|
|
color: "#000", |
|
|
opacity: 0 |
|
|
opacity: 0, |
|
|
}, |
|
|
}, |
|
|
// 控制间隔,这里设置为2表示左右两侧有间隔,可以根据需要调整 |
|
|
// 控制间隔,这里设置为2表示左右两侧有间隔,可以根据需要调整 |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yAxis: { |
|
|
yAxis: { |
|
|
type: "value", |
|
|
type: "value", |
|
|
name: "单位(个)", |
|
|
name: "单位(个)", |
|
|
min: 0, |
|
|
min: 0, |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
series: [ |
|
|
series: [ |
|
|
{ |
|
|
{ |
|
@ -216,31 +721,43 @@ export default { |
|
|
|
|
|
|
|
|
satisfactionCategory: [], //类目 |
|
|
satisfactionCategory: [], //类目 |
|
|
satisfactionCategoryName: [], |
|
|
satisfactionCategoryName: [], |
|
|
score: [], //综合得分 |
|
|
score: [], //得分 |
|
|
|
|
|
|
|
|
showFormList: false, //自查列表弹框 |
|
|
showFormList: false, //自查列表弹框 |
|
|
showFollowUpDetail: false, //自查列表中查看弹框 |
|
|
showFollowUpDetail: false, //自查列表中查看弹框 |
|
|
showFollowUpList: false, //回访记录弹框 |
|
|
showFollowUpList: false, //回访记录弹框 |
|
|
showTduckImage: false, |
|
|
showTduckImage: false, |
|
|
|
|
|
|
|
|
qrCodeImgUrl: '',//生成二维码图片链接 |
|
|
qrCodeImgUrl: "", //生成二维码图片链接 |
|
|
questionnaireUrl: '', |
|
|
questionnaireUrl: "", //问卷调查链接 |
|
|
synthesisScore: '', |
|
|
|
|
|
personQty: '', |
|
|
synthesisScore: "", //综合得分 |
|
|
|
|
|
synthesisState: false, //综合得分状态 |
|
|
|
|
|
synthesisScoreBtLastMonth: null, //综合得分对比上月 |
|
|
|
|
|
personQty: "", //人数 |
|
|
|
|
|
|
|
|
inspResultId: "", |
|
|
inspResultId: "", |
|
|
|
|
|
|
|
|
btnFlag:true, |
|
|
btnFlag: true, //生成调查问卷按钮权限(非社区账号) |
|
|
|
|
|
|
|
|
|
|
|
user: {}, |
|
|
|
|
|
|
|
|
synthesisState:false, |
|
|
tableList: [], |
|
|
synthesisScoreBtLastMonth:null, |
|
|
|
|
|
|
|
|
total: 0, |
|
|
|
|
|
pageNo: 1, |
|
|
|
|
|
pageSize: 20, |
|
|
}; |
|
|
}; |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
maxTableHeight() { |
|
|
maxTableHeight() { |
|
|
const h = this.clientHeight - this.searchH - 330 + this.iframeHeight; |
|
|
let num = this.user.level == "street" ? 50 : 0; |
|
|
const _h = this.clientHeight - 330 - this.searchH; |
|
|
const _h = this.clientHeight - 260 - this.searchH - num; |
|
|
return this.$store.state.inIframe ? h : _h; |
|
|
return _h; |
|
|
|
|
|
}, |
|
|
|
|
|
tabHeight() { |
|
|
|
|
|
const _h = this.clientHeight - 600; |
|
|
|
|
|
return _h; |
|
|
}, |
|
|
}, |
|
|
...mapGetters(["clientHeight", "iframeHeight"]), |
|
|
...mapGetters(["clientHeight", "iframeHeight"]), |
|
|
}, |
|
|
}, |
|
@ -248,19 +765,21 @@ export default { |
|
|
async mounted() { |
|
|
async mounted() { |
|
|
this.user = this.$store.state.user; |
|
|
this.user = this.$store.state.user; |
|
|
this.agencyId = this.user.agencyId; |
|
|
this.agencyId = this.user.agencyId; |
|
|
if(this.user.level != 'community'){ |
|
|
if (this.user.level != "community") { |
|
|
this.btnFlag = false |
|
|
this.btnFlag = false; |
|
|
} |
|
|
} |
|
|
await this.getDicts(); |
|
|
await this.getDicts(); |
|
|
await this.getTableData(); |
|
|
await this.initData(); |
|
|
await this.initEcharts(); |
|
|
if (this.user.level != "street") { |
|
|
|
|
|
this.initEcharts(); |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
created() { |
|
|
created() { |
|
|
let date = new Date() |
|
|
let date = new Date(); |
|
|
this.formData.period = util.formatDate(date, 'yyyy-MM') |
|
|
this.formData.period = util.formatDate(date, "yyyy-MM"); |
|
|
}, |
|
|
}, |
|
|
activated() { |
|
|
activated() { |
|
|
this.handleWindowResize() |
|
|
// this.handleWindowResize(); |
|
|
}, |
|
|
}, |
|
|
methods: { |
|
|
methods: { |
|
|
// ------------------------------------字典------------------------------------------ |
|
|
// ------------------------------------字典------------------------------------------ |
|
@ -288,20 +807,21 @@ export default { |
|
|
// ------------------------------------事件------------------------------------------ |
|
|
// ------------------------------------事件------------------------------------------ |
|
|
handelDetail(id) { |
|
|
handelDetail(id) { |
|
|
this.showFollowUpDetail = true; |
|
|
this.showFollowUpDetail = true; |
|
|
this.inspResultId = id |
|
|
this.inspResultId = id; |
|
|
}, |
|
|
}, |
|
|
handelFollowUpList(id) { |
|
|
handelFollowUpList(id) { |
|
|
this.showFollowUpList = true; |
|
|
this.showFollowUpList = true; |
|
|
this.inspResultId = id |
|
|
this.inspResultId = id; |
|
|
}, |
|
|
}, |
|
|
async handleCreateMonthlySurvey() { |
|
|
async handleCreateMonthlySurvey() { |
|
|
try { |
|
|
try { |
|
|
let url = '/governance/satisfaction/communitySelfInsp/generateQuestionnaire' |
|
|
let url = |
|
|
const { data, code } = await requestPost(url) |
|
|
"/governance/satisfaction/communitySelfInsp/generateQuestionnaire"; |
|
|
|
|
|
const { data, code } = await requestPost(url); |
|
|
if (code == 0) { |
|
|
if (code == 0) { |
|
|
this.showTduckImage = true |
|
|
this.showTduckImage = true; |
|
|
this.qrCodeImgUrl = data.qrCodeImgUrl |
|
|
this.qrCodeImgUrl = data.qrCodeImgUrl; |
|
|
this.questionnaireUrl = data.questionnaireUrl |
|
|
this.questionnaireUrl = data.questionnaireUrl; |
|
|
} |
|
|
} |
|
|
} catch (err) { |
|
|
} catch (err) { |
|
|
console.log(err); |
|
|
console.log(err); |
|
@ -316,7 +836,7 @@ export default { |
|
|
}); |
|
|
}); |
|
|
this.$nextTick(() => { |
|
|
this.$nextTick(() => { |
|
|
window.addEventListener("resize", this.handleWindowResize); |
|
|
window.addEventListener("resize", this.handleWindowResize); |
|
|
}) |
|
|
}); |
|
|
}, |
|
|
}, |
|
|
handleWindowResize() { |
|
|
handleWindowResize() { |
|
|
if (this.myChart) { |
|
|
if (this.myChart) { |
|
@ -328,44 +848,52 @@ export default { |
|
|
this.satisfactionCategoryStr = this.dicts.satisfaction_category.filter( |
|
|
this.satisfactionCategoryStr = this.dicts.satisfaction_category.filter( |
|
|
(item) => item.label == name |
|
|
(item) => item.label == name |
|
|
)[0].value; |
|
|
)[0].value; |
|
|
this.seriesName = seriesName == '满意'?'veryGood':seriesName == '基本满意'?'good':'bad'; |
|
|
this.seriesName = |
|
|
|
|
|
seriesName == "满意" |
|
|
|
|
|
? "veryGood" |
|
|
|
|
|
: seriesName == "基本满意" |
|
|
|
|
|
? "good" |
|
|
|
|
|
: "bad"; |
|
|
}, |
|
|
}, |
|
|
handleClose() { |
|
|
handleClose() { |
|
|
this.showFormList = false; |
|
|
this.showFormList = false; |
|
|
this.showFollowUpDetail = false |
|
|
this.showFollowUpDetail = false; |
|
|
}, |
|
|
}, |
|
|
// 搜索事件 |
|
|
// 搜索事件 |
|
|
handleSearch(val) { |
|
|
handleSearch(val) { |
|
|
|
|
|
this.initData(); |
|
|
|
|
|
}, |
|
|
|
|
|
async initData() { |
|
|
|
|
|
if (this.user.level != "street") { |
|
|
|
|
|
this.getCharts(); |
|
|
|
|
|
} else { |
|
|
this.getTableData(); |
|
|
this.getTableData(); |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
async getTableData() { |
|
|
async getCharts() { |
|
|
try { |
|
|
let url = "/governance/satisfaction/communitySelfInsp/stats/synthesis"; |
|
|
// const url = "/governance/satisfaction/communitySelfInsp/stats/synthesis/superior"; |
|
|
|
|
|
// const { formData } = this; |
|
|
|
|
|
// let agencyId = this.$store.state.user.agencyId; |
|
|
|
|
|
// const { data, msg } = await requestGet(url, { ...formData,agencyId }); |
|
|
|
|
|
const url = "/governance/satisfaction/communitySelfInsp/stats/synthesis"; |
|
|
|
|
|
const { formData } = this; |
|
|
const { formData } = this; |
|
|
const { data, msg } = await requestGet(url, { ...formData }); |
|
|
const { data, code, msg } = await requestGet(url, { ...formData }); |
|
|
|
|
|
if (code == 0) { |
|
|
// 清空数组和属性值 |
|
|
|
|
|
this.total = data.total || 0; |
|
|
|
|
|
this.score = []; |
|
|
this.score = []; |
|
|
this.option.series.forEach(series => series.data = []); |
|
|
this.option.series.forEach((series) => (series.data = [])); |
|
|
this.option.xAxis.data = []; |
|
|
this.option.xAxis.data = []; |
|
|
this.tableData = data.categoryDatas || []; |
|
|
|
|
|
this.satisfactionCategory = []; |
|
|
this.satisfactionCategory = []; |
|
|
this.inspRecordId = data.inspRecordId; |
|
|
this.inspRecordId = data.inspRecordId; |
|
|
this.synthesisScore = data.synthesisScore; |
|
|
this.synthesisScore = data.synthesisScore; |
|
|
this.synthesisScoreBtLastMonth = data.synthesisScoreBtLastMonth; |
|
|
this.synthesisScoreBtLastMonth = data.synthesisScoreBtLastMonth; |
|
|
this.synthesisState = this.synthesisScoreBtLastMonth >= 0; |
|
|
this.synthesisState = this.synthesisScoreBtLastMonth >= 0; |
|
|
if (this.synthesisScoreBtLastMonth < 0) { |
|
|
if (this.synthesisScoreBtLastMonth < 0) { |
|
|
this.synthesisScoreBtLastMonth = Math.abs(this.synthesisScoreBtLastMonth); |
|
|
this.synthesisScoreBtLastMonth = Math.abs( |
|
|
|
|
|
this.synthesisScoreBtLastMonth |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
this.personQty = data.personQty; |
|
|
this.personQty = data.personQty; |
|
|
|
|
|
|
|
|
const allowedCategories = this.dicts.satisfaction_category.map(item => item.value); |
|
|
const allowedCategories = this.dicts.satisfaction_category.map( |
|
|
for (const item of this.tableData) { |
|
|
(item) => item.value |
|
|
|
|
|
); |
|
|
|
|
|
for (const item of data.categoryDatas) { |
|
|
if (allowedCategories.includes(item.satisfactionCategory)) { |
|
|
if (allowedCategories.includes(item.satisfactionCategory)) { |
|
|
this.option.series[0].data.push(item.veryGoodQty); |
|
|
this.option.series[0].data.push(item.veryGoodQty); |
|
|
this.option.series[1].data.push(item.goodQty); |
|
|
this.option.series[1].data.push(item.goodQty); |
|
@ -377,25 +905,75 @@ export default { |
|
|
satisfactionCategoryName: item.satisfactionCategoryName, |
|
|
satisfactionCategoryName: item.satisfactionCategoryName, |
|
|
imgUrl: require(`@/assets/img/satisfaction/${item.satisfactionCategory}.png`), |
|
|
imgUrl: require(`@/assets/img/satisfaction/${item.satisfactionCategory}.png`), |
|
|
scoreDiffBtLastMonth: item.scoreDiffBtLastMonth, |
|
|
scoreDiffBtLastMonth: item.scoreDiffBtLastMonth, |
|
|
state: item.scoreDiffBtLastMonth >= 0 |
|
|
state: item.scoreDiffBtLastMonth >= 0, |
|
|
}); |
|
|
}); |
|
|
if (item.scoreDiffBtLastMonth < 0) { |
|
|
if (item.scoreDiffBtLastMonth < 0) { |
|
|
item.scoreDiffBtLastMonth = Math.abs(item.scoreDiffBtLastMonth); |
|
|
item.scoreDiffBtLastMonth = Math.abs(item.scoreDiffBtLastMonth); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
this.myChart.setOption(this.option); |
|
|
this.myChart.setOption(this.option); |
|
|
} catch (error) { |
|
|
} else { |
|
|
console.log(error); |
|
|
this.$message.error(msg); |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
|
|
|
async getTableData() { |
|
|
|
|
|
let url = |
|
|
|
|
|
"/governance/satisfaction/communitySelfInsp/stats/synthesis/superior"; |
|
|
|
|
|
const { formData, agencyId } = this; |
|
|
|
|
|
const { data, msg, code } = await requestGet(url, { |
|
|
|
|
|
...formData, |
|
|
|
|
|
agencyId, |
|
|
|
|
|
}); |
|
|
|
|
|
if (code == 0) { |
|
|
|
|
|
this.score = []; |
|
|
|
|
|
this.satisfactionCategory = []; |
|
|
|
|
|
this.inspRecordId = data.inspRecordId; |
|
|
|
|
|
this.synthesisScore = data.synthesisScore; |
|
|
|
|
|
this.synthesisScoreBtLastMonth = data.synthesisScoreBtLastMonth; |
|
|
|
|
|
this.synthesisState = this.synthesisScoreBtLastMonth >= 0; |
|
|
|
|
|
if (this.synthesisScoreBtLastMonth < 0) { |
|
|
|
|
|
this.synthesisScoreBtLastMonth = Math.abs( |
|
|
|
|
|
this.synthesisScoreBtLastMonth |
|
|
|
|
|
); |
|
|
|
|
|
} |
|
|
|
|
|
this.personQty = data.personQty; |
|
|
|
|
|
|
|
|
|
|
|
const allowedCategories = this.dicts.satisfaction_category.map( |
|
|
|
|
|
(item) => item.value |
|
|
|
|
|
); |
|
|
|
|
|
for (const item of data.categoryDatas) { |
|
|
|
|
|
if (allowedCategories.includes(item.satisfactionCategory)) { |
|
|
|
|
|
this.satisfactionCategory.push(item.satisfactionCategory); |
|
|
|
|
|
this.score.push({ |
|
|
|
|
|
score: item.score, |
|
|
|
|
|
satisfactionCategoryName: item.satisfactionCategoryName, |
|
|
|
|
|
imgUrl: require(`@/assets/img/satisfaction/${item.satisfactionCategory}.png`), |
|
|
|
|
|
scoreDiffBtLastMonth: item.scoreDiffBtLastMonth, |
|
|
|
|
|
state: item.scoreDiffBtLastMonth >= 0, |
|
|
|
|
|
}); |
|
|
|
|
|
if (item.scoreDiffBtLastMonth < 0) { |
|
|
|
|
|
item.scoreDiffBtLastMonth = Math.abs(item.scoreDiffBtLastMonth); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
this.tableList = data.childrenAgencyDatas; |
|
|
|
|
|
this.total = this.tableList.length |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
handleCurrentChange() { |
|
|
|
|
|
this.pageNo = val; |
|
|
|
|
|
this.getTableData(); |
|
|
|
|
|
}, |
|
|
|
|
|
handleSizeChange() { |
|
|
|
|
|
this.pageSize = val; |
|
|
|
|
|
window.localStorage.setItem("pageSize", val); |
|
|
|
|
|
this.getTableData(); |
|
|
|
|
|
}, |
|
|
// 重置 |
|
|
// 重置 |
|
|
resetSearch() { |
|
|
resetSearch() { |
|
|
this.formData = {}; |
|
|
this.formData = {}; |
|
|
this.getTableData(); |
|
|
this.initData(); |
|
|
}, |
|
|
}, |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
@ -465,14 +1043,6 @@ export default { |
|
|
margin: 0; |
|
|
margin: 0; |
|
|
width: 10px; |
|
|
width: 10px; |
|
|
height: 14px; |
|
|
height: 14px; |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
.down{ |
|
|
|
|
|
color:#FF7135 ; |
|
|
|
|
|
} |
|
|
|
|
|
.up{ |
|
|
|
|
|
color:#00BB72 ; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.right { |
|
|
.right { |
|
@ -500,8 +1070,20 @@ export default { |
|
|
|
|
|
|
|
|
#myCharts { |
|
|
#myCharts { |
|
|
width: 100%; |
|
|
width: 100%; |
|
|
|
|
|
height: 100%; |
|
|
|
|
|
} |
|
|
|
|
|
.bto-box { |
|
|
flex: 1; |
|
|
flex: 1; |
|
|
} |
|
|
} |
|
|
|
|
|
.down { |
|
|
|
|
|
color: #ff7135; |
|
|
|
|
|
} |
|
|
|
|
|
.up { |
|
|
|
|
|
color: #00bb72; |
|
|
|
|
|
} |
|
|
|
|
|
.gray { |
|
|
|
|
|
color: #999999; |
|
|
|
|
|
} |
|
|
</style> |
|
|
</style> |
|
|
|
|
|
|
|
|
|
|
|
|