Commit 3bc77f4d by kingboy_xin

no message

parent 80106bcb
......@@ -51,12 +51,12 @@ export default new Router({
{ //费用管理主页
path: 'gpEexpense',
name: 'gpEexpense',
component: () => import('views/gp/expense/GpExpenseHome.vue'),
component: () => import('views/gp/expense/ContractAnalysis.vue'),
children:[
{
{ //费用管理签约
path: 'gpEexp',
name: 'gpEexp',
component: () => import('views/gp/expense/GpExpenseHome.vue'),
component: () => import('views/gp/expense/ContractAnalysis.vue'),
},
{ //费用管理就诊
path: 'gpVisit',
......
<template>
<div>
<div class="div-model fl01">
<div class="title">累计签约人均费用</div>
<div class="content">
<div class="qycontent">
<div class="qycontentline"><i class="i01"></i><span class="">实际值</span>|<span>同期</span></div>
<div class="qytexttop">
<el-tooltip content="签约居民年总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para01)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para02)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para03)=='-'?'-':Math.abs(nullreturn(para03))}}%</span>
<i :class="para03<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qycontentline"><i class="i02"></i><span class="">签约数·人</span>|<span>同期</span></div>
<div class="qytextdown">
<span class="spanfont"></span>
<div class="spandata">
<span>{{nullreturn(para04)}}</span>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para05)}}</span>
</div>
</div>
<div class="qytextdown">
<span class="spanfont">住院</span>
<div class="spandata">
<span>{{nullreturn(para06)}}</span>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para07)}}</span>
</div>
</div>
</div>
</div>
</div>
<div class="div-model fl002">
<div class="title">其中累计签约人均门诊费用
<img @click="question()" width="16" style="vertical-align: middle;" height="16"
src="~assets/img/common/icon-mainwen.png">
</div>
<div class="content">
<div class="qycontent">
<div class="qytexttop">
<el-tooltip content="签约居民年门诊总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para08)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para09)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para10)=='-'?'-':Math.abs(nullreturn(para10))}}%</span>
<i :class="para10<0?'el-icon-my-down':'el-icon-my-up'"></i>
<span class="span04"></span>
<code class="pian"></code>
<span class="span03">{{nullreturn(para11)=='-'?'-':Math.abs(nullreturn(para11))}}%</span>
<i :class="para11<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qytextmodel">
<span class="spanfont">累计就诊·千人</span>
<div class="spandata">
<span>{{nullreturn(para12 / 1000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para13 / 1000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para14)=='-'?'-':Math.abs(nullreturn(para14))}}%</span>
<i :class="para14<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextmodel">
<span class="spanfont">累计就诊·千次</span>
<div class="spandata">
<span>{{nullreturn(para15 / 1000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para16 / 1000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para17)=='-'?'-':Math.abs(nullreturn(para17))}}%</span>
<i :class="para17<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextmodel">
<span class="spanfont spanline" @click="showBox(1)">累计人均就诊·次</span>
<div class="spandata">
<span>{{nullreturn(para18)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para19)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para20)=='-'?'-':Math.abs(nullreturn(para20))}}%</span>
<i :class="para20<0?'el-icon-my-down':'el-icon-my-up'"></i>
<span class="span01"></span>
<code class="pian"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para21)=='-'?'-':Math.abs(nullreturn(para21))}}%</span>
<i :class="para21<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
</div>
</div>
</div>
<div class="div-model fr001">
<div class="title">其中累计签约人均住院费用</div>
<div class="content">
<div class="qycontent">
<div class="qytexttop">
<el-tooltip content="签约居民年住院总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para22)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para23)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para24)=='-'?'-':Math.abs(nullreturn(para24))}}%</span>
<i :class="para24<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qytextright">
<span class="spanfont">社区床日·元(实/同)</span>
<div class="spandata">
<span>{{nullreturn(para25)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para26)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para27)=='-'?'-':Math.abs(nullreturn(para27))}}%</span>
<i :class="para27<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextright">
<span class="spanfont spanline" @click="showBox(2)">二级指标·万(实/标)</span>
<div class="spandata">
<span>{{nullreturn(para28 / 10000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para29 / 10000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para30)=='-'?"-":Math.abs(nullreturn(para30))}}%</span>
<i :class="para30<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextright">
<span class="spanfont spanline" @click="showBox(3)">三级指标·万(实/标)</span>
<div class="spandata">
<span>{{nullreturn(para31 / 10000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para32 / 10000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para33)=='-'?"-":Math.abs(nullreturn(para33))}}%</span>
<i :class="para33<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
</div>
</div>
</div>
<!-----------底部内容---------->
<div class="div-model-b">
<div class="title">门诊</div>
<div class="div-model-echarts div-model-echarts2">
<div class="etitle1 spanline" @click="AnalyFn()">累计费用分析</div>
<div class="ecp01" @click="changeTabName(1)" :class="isgy==1?'clk':''">社区</div>
<div class="ecp02" @click="changeTabName(2)" :class="isgy==2?'clk':''">二级</div>
<div class="ecp03" @click="changeTabName(3)" :class="isgy==3?'clk':''">三级</div>
<div class="etitle2">累计人均就诊分析</div>
<div class="etotal01">合计</div>
<div class="etotal02 spanline" @click="AnalyFn()">组合内</div>
<div class="etotal03 spanline" @click="AnalyFn()">签约社区</div>
<el-table :header-cell-style="headerStyle2" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName2" :data="outpatientuplist">
<el-table-column prop="name" label="就诊·人/同·%">
<template slot-scope="scope">
{{scope.row.JZRS}}/{{scope.row.JZRS_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZRS_TBL))}}
<i :class="scope.row.JZRS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="province" label="人均·次/同·%">
<template slot-scope="scope">
{{scope.row.JZCS}}/{{scope.row.JZCS_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZCS_TBL))}}
<i :class="scope.row.JZCS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="pepole" label="人均·元/同·%">
<template slot-scope="scope">
{{scope.row.JZFY}}/{{scope.row.JZFY_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZFY_TBL))}}
<i :class="scope.row.JZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="city" label="人均药·元/同·%">
<template slot-scope="scope">
{{scope.row.JZYF}}/{{scope.row.JZYF_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZYF_TBL))}}
<i :class="scope.row.JZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
<el-table :header-cell-style="headerStyle2" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName2" :data="outpatientdownlist">
<el-table-column prop="name" label="目标/时值·%">
<template slot-scope="scope">
{{scope.row.MBL}}/{{scope.row.SJL}}
</template>
</el-table-column>
<el-table-column prop="province" label="目标/去年·次">
<template slot-scope="scope">
{{scope.row.MBZ}}/{{scope.row.QNZ}}
</template>
</el-table-column>
<el-table-column prop="pepole" label="时值/时标·次">
<template slot-scope="scope">
{{scope.row.ZXZ}}/{{scope.row.BZZ}}
</template>
</el-table-column>
<el-table-column prop="city" label="时值同比·%">
<template slot-scope="scope">
{{scope.row.TBZ=='-'?"-":Math.abs(nullreturn(scope.row.TBZ))}}
<i :class="scope.row.TBZ<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<div class="div-model-table div-model-table2">
<div class="tabletitle">
<span @click="changeAll(1)" :class="isall==1?'clk':''">{{TableName}}</span>
<span @click="changeAll(2)" :class="isall==2?'clk':''">缺陷</span>
</div>
<el-table v-show="isall==1" :header-cell-style="headerStyle" :fit="true" :cell-style="cellStyle"
height="230"
:row-class-name="tableRowClassName" :data="hospotallist">
<el-table-column prop="name" width="45" label="序列">
<template slot-scope="scope">{{scope.$index + 1}}</template>
</el-table-column>
<el-table-column prop="province" :show-overflow-tooltip="true" min-width="64">
<template slot="header" slot-scope="scope" class="Movearrow">
<div class="spanline spanleft" @click="showMzHospital()">医院</div>
</template>
<template slot-scope="scope">
<span class="spanline spanleft" @click="AnalyFn()">{{scope.row.JZJGJC}}</span>
</template>
</el-table-column>
<el-table-column prop="pepole" width="100" label="总费用·万/同·%">
<template slot-scope="scope">
<span class="ycqd_lf testright">
{{scope.row.MZFY}}/{{scope.row.MZFY_TBL=='-'?"-":Math.abs(nullreturn(scope.row.MZFY_TBL))}}
</span>
<span class="sp13"><i :class="scope.row.MZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i></span>
</template>
</el-table-column>
<el-table-column prop="city" width="74" label="总费用占比·%">
<template slot-scope="scope">{{scope.row.MZFY_ZB}}</template>
</el-table-column>
<el-table-column prop="address" width="100" label="药费·万/同·%">
<template slot-scope="scope">
<span class="ycqd_lf testright">
{{scope.row.MZYF}}/{{scope.row.MZYF_TBL=='-'?"-":Math.abs(nullreturn(scope.row.MZYF_TBL))}}
</span>
<span class="sp13"><i :class="scope.row.MZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i></span>
</template>
</el-table-column>
</el-table>
<el-table v-show="isall==2" :header-cell-style="headerStyle" :fit="true" :cell-style="cellStyle"
height="230"
:row-class-name="tableRowClassName" :data="defectlist">
<el-table-column prop="name" width="45" label="序列">
<template slot-scope="scope">{{scope.$index + 1}}</template>
</el-table-column>
<el-table-column prop="XM" width="90" label="姓名" class="spanline">
<template slot-scope="scope">
<span class="spanline" @click="toMember(scope.row.SFZH)">{{scope.row.XM}}</span>
</template>
</el-table-column>
<el-table-column prop="NL" label="年龄"></el-table-column>
<el-table-column prop="MZFY" :render-header="renderHeader"></el-table-column>
<el-table-column prop="JZCS" label="就诊·次"></el-table-column>
</el-table>
</div>
</div>
<!-- 累计人均就诊·次弹出层 -->
<div class="outService1" v-show="showouser1">
<p class="pservice1">累计人均门诊</p>
<div class="rightbox rightbox2">
<div class="rbiteml rbitem2">
<div class="rbitemlinner">就诊·次</div>
<div class="rbitemlinner">累计费用·元</div>
<div class="rbitemlinner">累计药费·元</div>
</div>
<div class="rbitemr">
<div class="rrline">
<div class="rrmodel">
<p>社区</p>
<p>实值/占·%同·%</p>
</div>
<div class="rrmodel">
<p>二级</p>
<p>实值/占·%同·%</p>
</div>
<div class="rrmodel">
<p>三级</p>
<p>实值/占·%同·%</p>
</div>
</div>
<div v-for="item in cumpercapvisdatalist" :key="item.index" class="rrmodelbot">
<p>{{item.JZCS}} / {{item.JZCS_ZB}} / {{item.JZCS_TBL=='-'?"-":Math.abs(nullreturn(item.JZCS_TBL))}}
<i :class="item.JZCS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
<p>{{item.JZFY}} / {{item.JZFY_ZB}} / {{item.JZFY_TBL=='-'?"-":Math.abs(nullreturn(item.JZFY_TBL))}}
<i :class="item.JZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
<p>{{item.JZYF}} / {{item.JZYF_ZB}} / {{item.JZYF_TBL=='-'?"-":Math.abs(nullreturn(item.JZYF_TBL))}}
<i :class="item.JZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
</div>
</div>
</div>
<div style="clear: both;"></div>
<div class="outServicewords">占比 = 当前医院级别累计人均门诊费用(次数)/累计人均门诊总费用(次数)*100%</div>
</div>
<!-- 门诊费用二级指标弹出层 -->
<div class="outService2" v-show="showouser2">
<p class="pservice2">二级指数单价Top4</p>
<el-table :header-cell-style="headerStyle3" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName"
:data="twoleveldatalist">
<el-table-column fixed label="序号" width="45">
<template slot-scope="scope">
<span>{{scope.$index + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="XM" label="姓名" width="70"></el-table-column>
<el-table-column prop="JZJGMC" label="住院机构" width="120"></el-table-column>
<el-table-column prop="ZSDJ_PLD" label="单·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.ZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="YPZSDJ_PLD" label="药·/偏·%">
<template slot-scope="scope">
{{scope.row.YPZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.YPZSDJ_PLD))}}
<i :class="scope.row.YPZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="HCZSDJ_PLD" label="耗·/偏·%">
<template slot-scope="scope">
{{scope.row.HCZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.HCZSDJ_PLD))}}
<i :class="scope.row.HCZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<div v-show="isyy" @click="yyshow" class="yydiv"></div>
<!-- 门诊费用三级指标弹出层 -->
<div class="outService3" v-show="showouser3">
<p class="pservice3">三级指数单价Top4</p>
<el-table :header-cell-style="headerStyle3" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName"
:data="threeleveldatalist">
<el-table-column fixed label="序号" width="60">
<template slot-scope="scope">
<span>{{scope.$index + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="XM" label="姓名" width="70"></el-table-column>
<el-table-column prop="JZJGMC" label="住院机构" width="120"></el-table-column>
<el-table-column prop="ZSDJ_PLD" label="单·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.ZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="YPZSDJ_PLD" label="药·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.YPZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="HCZSDJ_PLD" label="耗·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.HCZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- 点击问号弹出层 -->
<div class="explainbox" v-if="explain">
<div class="explainboxtitle"><span>累计就诊人均门诊费用标准</span></div>
<div class="explainboxtcontent">
<div class="explainboxtcontentleft">
<i class="icls"></i>说明
</div>
<div class="explainboxtcontentright">
<span>全年人均累计就诊费用为4839元,4月份 时标为 1613元,计算公式=(4839/12)*4</span>
</div>
</div>
</div>
</div>
</template>
<script>
import {home, getPageData} from 'api/home'
import PageHeader from "components/common/header/PageHeader";
import SideNavbar from "components/common/sideNavbar/SideNavbar";
export default {
name: "ContractAnalysis"
components: {
PageHeader,
SideNavbar
},
name: 'gpExpenseHome',
data() {
return {
token: '',
loginMsg: {},
para01: 1,
para02: 2,
yname: '',
yzback: false,
para03: 3,
para04: 4,
para05: 5,
para06: 6,
para07: 7,
para08: 8,
para09: 9,
para10: 10,
para11: 11,
para12: 12,
para13: 13,
para14: 14,
para15: 15,
para16: 16,
para17: 17,
para18: 18,
para19: 19,
para20: 20,
para21: 21,
para22: 22,
para23: 23,
para24: 24,
para25: 25,
para26: 26,
para27: 27,
para28: 28,
para29: 29,
para30: 30,
para31: 31,
para32: 32,
para33: 33,
selectTime: '2020-05',
jctxt: '150',
isgy: 1,
loginID: '',
isall: 1,
loading: false,
isyy: false,
TableName: '社区', // 用于切换右侧的表头名字
explain: false, // 用于显示或隐藏问号弹出层
showouser1: false, // 用于显示或隐藏累计人均就诊·次弹出层
showouser2: false, // 用于显示或隐藏二级指标弹出层
showouser3: false, // 用于显示或隐藏三级指标弹出层
detelist: {},
hzpoints: [],
cxsj: "",
numbers: "01",
topvaluelist: [{}],
hospotallist: [],
defectlist: [],
outpatientuplist: [],
outpatientdownlist: [],
twoleveldatalist: [],
threeleveldatalist: [],
cumpercapvisdatalist: [],
option: {
tooltip: {
position: [50, 50],
padding: 10,
trigger: 'axis',
formatter: function (params) {
var res = "<div class='ectabletitle'>";
res += "60以上(实值/同期)</div>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>管辖数:<li>";
res += "<li class='li03'>2 / 3人</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>2 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>签约数:<li>";
res += "<li class='li03'>2 / 3人</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>54 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>签约率:</li>";
res += "<li class='li03'>43 %/53 %</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>12 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li02'>签约率偏离度:</li>";
res +=
"<li class='li03'>43% <span class='el-icon-bottom'>&nbsp;</span> / 65% <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "<li></li>";
res += "<li></li>";
res += "</ul>";
return res
}
</script>
},
legend: {
textStyle: {
color: '#8393A9',
fontSize: 10
},
left: 25,
top: '5',
itemHeight: 10,
itemWidth: 10,
itemGap: 5,
data: ['已签约', '管辖数', '重点签约人数', '重点管辖数', '签约率偏离度', '重点签约率偏离度'],
align: 'left',
selectedMode: false
},
grid: {
top: 80,
bottom: 45,
left: 50
},
xAxis: [{
type: 'category',
data: ['静安', '黄埔', '闵行', '宝山', '松江', '青浦', '浦东', '奉贤'],
axisLine: {
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
axisLabel: {
interval: 0,
rotate: 60,
textStyle: {
fontSize: 10,
color: function (value, index) {
return '#8393A9';
}
}
},
splitLine: {
show: false,
onZero: false
},
axisTick: {
show: false
},
}],
yAxis: [{
type: 'value',
name: '千',
min: 0,
axisLabel: {
textStyle: {
color: '#8393A9',
type: 'solid'
},
},
axisLine: {
show: true,
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
splitLine: {
show: false
},
axisTick: {
show: true
}
},
{
type: 'value',
name: '%',
max: 100,
min: 0,
splitNumber: 5,
axisLabel: {
textStyle: {
color: function (value, index) {
return '#747d8d';
},
type: 'solid'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
splitLine: {
show: false
},
axisTick: {
show: true
},
}
],
series: [{
name: '已签约',
type: 'bar',
barWidth: null,
itemStyle: {
normal: {
color: '#2680ff'
}
},
data: [12, 23, 4, 5, 6, 21, 5, 2],
},
{
name: '管辖数',
type: 'bar',
stack: "1",
barWidth: null,
itemStyle: {
normal: {
color: '#2e4f8b'
}
},
data: [12, 3, 4, 5, 6, 21, 5, 2]
},
{
name: '重点签约人数',
type: 'bar',
barWidth: null,
itemStyle: {
normal: {
color: '#36f2d8'
}
},
data: [12, 3, 4, 5, 6, 12, 5, 2]
},
{
name: '重点管辖数',
type: 'bar',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
itemStyle: {
normal: {
color: '#336b84'
}
},
z: 11,
data: [12, 3, 4, 5, 6, 11, 5, 12],
},
{
name: '签约率偏离度',
type: 'line',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
z: 11,
itemStyle: {
normal: {
color: '#fda739'
}
},
data: [12, 3, 14, 5, 6, 12, 5, 21],
},
{
name: '重点签约率偏离度',
type: 'line',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
z: 11,
itemStyle: {
normal: {
color: '#f8d065'
}
},
data: [12, 3, 4, 5, 6, 11, 5, 21],
}
]
},
pieoption1: {
color: ["#1467FF", "#84B3FF", "#0447C3", "#2A71F2", "#5291FF", "#97BFFF"],
tooltip: {
trigger: 'item',
position: [-130, 0],
formatter: function (params) {
var res = "<div style='height:95px;width:250px;padding:0 10px;font-size: 12px;'>";
res += "<div>人群分析</div>";
res += "<table class='rqfx_table1' >";
res += "<thead>";
res += "<tr>";
res += "<td width='80'></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>合计·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>重点·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>非重点·人</span></td>";
res += "</tr>";
res += "</thead>";
res += "<tbody>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#3B91B3;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>签约</span></td>";
res += "<td class='tc'><span>1</span></td>";
res += "<td class='tc'><span>2</span></td>";
res += "<td class='tc'><span>3</span></td>";
res += "</tr>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#235293;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>未签约</span></td>";
res += "<td class='tc'><span>4</span></td>";
res += "<td class='tc'><span>5</span></td>";
res += "<td class='tc'><span>6</span></td>";
res += "</tr>";
res += "</tbody>";
res += "</table>";
res += "</div>";
return res
}
},
calculable: false,
series: [{
hoverAnimation: false,
name: '',
type: 'pie',
radius: [0, 34],
x: '36%',
width: '36%',
funnelAlign: 'right',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 1,
name: ''
},
{
value: 2,
name: ''
},
]
},
{
hoverAnimation: true,
hoverOffset: 3,
name: '',
type: 'pie',
radius: [44, 52],
x: '36%',
width: '36%',
funnelAlign: 'left',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 3,
name: 'A'
},
{
value: 4,
name: 'B'
},
{
value: 5,
name: 'C'
},
{
value: 6,
name: 'D'
},
]
}
]
},
pieoption2: {
color: ["#1467FF", "#84B3FF", "#0447C3", "#2A71F2", "#5291FF", "#97BFFF"],
tooltip: {
trigger: 'item',
position: [-130, 0],
formatter: function (params) {
var res = "<div style='height:95px;width:250px;padding:0 10px;font-size: 12px;'>";
res += "<div>人群分析</div>";
res += "<table class='rqfx_table1' >";
res += "<thead>";
res += "<tr>";
res += "<td width='80'></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>合计·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>重点·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>非重点·人</span></td>";
res += "</tr>";
res += "</thead>";
res += "<tbody>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#3B91B3;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>签约</span></td>";
res += "<td class='tc'><span>1</span></td>";
res += "<td class='tc'><span>2</span></td>";
res += "<td class='tc'><span>3</span></td>";
res += "</tr>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#235293;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>未签约</span></td>";
res += "<td class='tc'><span>4</span></td>";
res += "<td class='tc'><span>5</span></td>";
res += "<td class='tc'><span>6</span></td>";
res += "</tr>";
res += "</tbody>";
res += "</table>";
res += "</div>";
return res
}
},
calculable: false,
series: [{
hoverAnimation: false,
name: '',
type: 'pie',
radius: [0, 34],
x: '36%',
width: '36%',
funnelAlign: 'right',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 1,
name: ''
},
{
value: 2,
name: ''
},
]
},
{
hoverAnimation: true,
hoverOffset: 3,
name: '',
type: 'pie',
radius: [44, 52],
x: '36%',
width: '36%',
funnelAlign: 'left',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 3,
name: 'A'
},
{
value: 4,
name: 'B'
},
{
value: 5,
name: 'C'
},
{
value: 6,
name: 'D'
},
]
}
]
},
tableData2: [{
name: '1',
province: '60以上',
city: '-',
pepole: '11',
address: '-',
}, {
name: '2',
province: '高血压',
city: '-',
pepole: '11',
address: '-',
}, {
name: '3',
province: '糖尿病',
city: '-',
pepole: '11',
address: '-',
}],
tableData: [{
name: '1',
province: '60以上',
city: '-',
pepole: '11',
address: '-',
}, {
name: '2',
province: '高血压',
city: '-',
pepole: '11',
address: '-',
}, {
name: '3',
province: '糖尿病',
city: '-',
pepole: '11',
address: '-',
}, {
name: '4',
province: '0-6岁',
city: '-',
pepole: '11',
address: '-',
}, {
name: '5',
province: '孕产妇',
city: '-',
pepole: '11',
address: '-',
}, {
name: '6',
province: '残疾人',
city: '-',
pepole: '11',
address: '-',
}, {
name: '7',
province: '结核病',
city: '-',
pepole: '11',
address: '-',
}, {
name: '8',
province: '特殊家庭',
city: '-',
pepole: '11',
address: '-',
}, {
name: '9',
province: '贫困人口',
city: '-',
pepole: '11',
address: '-',
}, {
name: '10',
province: '精神病',
city: '-',
pepole: '11',
address: '-',
}]
}
},
methods: {
//累计签约人均费用数据接口
initsign() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfy",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode
}
getPageData(token, param).then(res => {
//console.log(res)
this.para01 = 0
this.para02 = 0
this.para03 = 0
this.para04 = 0
this.para05 = 0
this.para06 = 0
this.para07 = 0
this.para08 = 0
this.para09 = 0
this.para10 = 0
this.para11 = 0
this.para12 = 0
this.para13 = 0
this.para14 = 0
this.para15 = 0
this.para16 = 0
this.para17 = 0
this.para18 = 0
this.para19 = 0
this.para20 = 0
this.para21 = 0
this.para22 = 0
this.para23 = 0
this.para24 = 0
this.para25 = 0
this.para26 = 0
this.para27 = 0
this.para28 = 0
this.para29 = 0
this.para30 = 0
this.para31 = 0
this.para32 = 0
this.para33 = 0
if (res.code == 1 && res.data.length > 0) {
this.para01 = res.data[0].RJFY
this.para02 = res.data[0].RJFY_TBZ
this.para03 = res.data[0].RJFY_TBL
this.para04 = res.data[0].QYRS
this.para05 = res.data[0].QYRS_TBZ
this.para06 = res.data[0].ZYRS
this.para07 = res.data[0].ZYRS_TBZ
this.para08 = res.data[0].RJMZFY
this.para09 = res.data[0].RJMZFY_TBZ
this.para10 = res.data[0].RJMZFY_TBL
this.para11 = res.data[0].RJMZFY_PLD
this.para12 = res.data[0].JZRS
this.para13 = res.data[0].JZRS_TBZ
this.para14 = res.data[0].JZRS_TBL
this.para15 = res.data[0].JZCS
this.para16 = res.data[0].JZCS_TBZ
this.para17 = res.data[0].JZCS_TBL
this.para18 = res.data[0].RJJZCS
this.para19 = res.data[0].RJJZCS_TBZ
this.para20 = res.data[0].RJJZCS_TBL
this.para21 = res.data[0].RJJZCS_PLD
this.para22 = res.data[0].RJZYFY
this.para23 = res.data[0].RJZYFY_TBZ
this.para24 = res.data[0].RJZYFY_TBL
this.para25 = res.data[0].CRF
this.para26 = res.data[0].CRF_BZZ
this.para27 = res.data[0].CRF_PLD
this.para28 = res.data[0].EJZSDJ
this.para29 = res.data[0].EJZSDJ_BZZ
this.para30 = res.data[0].EJZSDJ_PLD
this.para31 = res.data[0].SJZSDJ
this.para32 = res.data[0].SJZSDJ_BZZ
this.para33 = res.data[0].SJZSDJ_PLD
this.topvaluelist = res.data[0]
}
})
},
//左侧门诊上面接口
initsignleftup() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": "",
}
}
this.outpatientuplist = []
getPageData(token, param).then(res => {
// console.log('左侧门诊上面接口:');
// console.log(res);
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].JZRS = this.commonJs.getActiveNum(item.JZRS)
res.data[index].JZRS_TBL = this.commonJs.getActiveNum(item.JZRS_TBL)
res.data[index].JZCS = this.commonJs.getActiveNum(item.JZCS)
res.data[index].JZCS_TBL = this.commonJs.getActiveNum(item.JZCS_TBL)
res.data[index].JZFY = this.commonJs.getActiveNum(item.JZFY)
res.data[index].JZFY_TBL = this.commonJs.getActiveNum(item.JZFY_TBL)
res.data[index].JZYF = this.commonJs.getActiveNum(item.JZYF)
res.data[index].JZYF_TBL = this.commonJs.getActiveNum(item.JZYF_TBL)
this.outpatientuplist = res.data
})
}
})
},
// 左侧门诊下面接口
initsignleftdown() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljrjjzfx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jzlx": "",
}
}
this.outpatientdownlist = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.length > 0) {
// console.log(res)
// console.log("打印数据”")
res.data.forEach((item, index) => {
res.data[index].MBL = this.commonJs.getActiveNum(item.MBL)
res.data[index].SJL = this.commonJs.getActiveNum(item.SJL)
res.data[index].MBZ = this.commonJs.getActiveNum(item.MBZ)
res.data[index].QNZ = this.commonJs.getActiveNum(item.QNZ)
res.data[index].ZXZ = this.commonJs.getActiveNum(item.ZXZ)
res.data[index].BZZ = this.commonJs.getActiveNum(item.BZZ)
res.data[index].TBZ = this.commonJs.getActiveNum(item.TBZ)
this.outpatientdownlist = res.data
})
}
})
},
//右侧列表社区接口
initsignrightcom() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx-list",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": this.isgy,
"pageIndex": 1,
"pageSize": 10,
}
}
this.hospotallist = []
getPageData(token, param).then(res => {
// console.log(res)
if (res.code == 1 && res.data.listData.length > 0) {
res.data.listData.forEach((item, index) => {
res.data.listData[index].MZFY = this.commonJs.getActiveNum(item.MZFY / 10000)
res.data.listData[index].MZFY_TBL = this.commonJs.getActiveNum(item.MZFY_TBL)
res.data.listData[index].MZFY_ZB = this.commonJs.getActiveNum(item.MZFY_ZB)
res.data.listData[index].MZYF = this.commonJs.getActiveNum(item.MZYF / 10000)
res.data.listData[index].MZYF_TBL = this.commonJs.getActiveNum(item.MZYF_TBL)
this.hospotallist = res.data.listData
})
}
})
},
//右侧列表缺陷接口
initsignrightdef() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-mzfyqx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"pageIndex": 1,
"pageSize": 10,
}
}
this.defectlist = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.listData.length > 0) {
res.data.listData.forEach((item, index) => {
res.data.listData[index].MZFY = this.commonJs.getActiveNum(item.MZFY)
this.defectlist = res.data.listData
})
}
})
},
//二级指标单价TOP4
initsignlevel() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx-jg-zd",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
}
this.twolevel = []
this.threelevel = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].ZSDJ_PLD = this.commonJs.getActiveNum(item.ZSDJ_PLD)
res.data[index].YPZSDJ_PLD = this.commonJs.getActiveNum(item.YPZSDJ_PLD)
res.data[index].HCZSDJ_PLD = this.commonJs.getActiveNum(item.HCZSDJ_PLD)
if (res.data[index].JZJGDJ == 2) {
this.twolevel.push(res.data[index]);
this.twoleveldatalist = this.twolevel
}
if (res.data[index].JZJGDJ == 3) {
this.threelevel.push(res.data[index]);
this.threeleveldatalist = this.threelevel
}
})
}
})
},
// 费用-就诊-累计人均弹窗接口
cumpercapvis() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfy-jg",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": ""
}
}
this.cumpercapvisdatalist = []
getPageData(token, param).then(res => {
// console.log('费用-就诊-累计人均弹窗接口');
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].JZCS = this.commonJs.getActiveNum(item.JZCS)
res.data[index].JZCS_ZB = this.commonJs.getActiveNum(item.JZCS_ZB)
res.data[index].JZCS_TBL = this.commonJs.getActiveNum(item.JZCS_TBL)
res.data[index].JZFY = this.commonJs.getActiveNum(item.JZFY)
res.data[index].JZFY_ZB = this.commonJs.getActiveNum(item.JZFY_ZB)
res.data[index].JZFY_TBL = this.commonJs.getActiveNum(item.JZFY_TBL)
res.data[index].JZYF = this.commonJs.getActiveNum(item.JZYF)
res.data[index].JZYF_ZB = this.commonJs.getActiveNum(item.JZYF_ZB)
res.data[index].JZYF_TBL = this.commonJs.getActiveNum(item.JZYF)
this.cumpercapvisdatalist = res.data
})
}
})
},
dataSearch(value) {
console.log(famartTime2(value));
let val = famartTime2(value)
this.cxsj = val
this.initsign()
this.initsignleftup()
this.initsignleftdown()
this.initsignrightcom()
this.initsignrightdef()
this.initsignlevel()
this.cumpercapvis()
},
yyshow() {
this.isyy = !this.isyy
this.showouser1 = false
this.showouser2 = false
this.showouser3 = false
},
goExit() {
this.$router.push('/Home');
},
headerStyle() {
return 'background:rgba(48,56,90,1); border:0; margin:0; padding:0; line-height:29px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
cellStyle() {
return 'background:none;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
changeAll(param) {
this.isall = param
},
AnalyFn() {
this.$router.push('/AnalySign');
},
tableRowClassName({
row,
rowIndex
}) {
if (rowIndex % 2 == 1) {
return 'warning-row';
} else {
return 'success-row';
}
},
tableRowClassName2({
row,
rowIndex
}) {
if (rowIndex % 2 == 1) {
return 'warning-row2';
} else {
return 'success-row2';
}
},
headerStyle2() {
return 'background:rgba(48,56,90,1); border:0; margin:0; padding:0; line-height:29px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
headerStyle3() {
return 'background:rgba(48,56,90,1);border:0; margin:0; padding:0; line-height:29px; color:#8891BE; font-size:12px; text-align:center;font-weight:500;'
},
headerStyle4() {
return 'background:#35426E; border:0; margin:0; padding:0; line-height:50px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
cellStyle2() {
return 'background:none;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
cellStyle4() {
return 'background:#35426E;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
hideLoading() {
this.loading = false
},
showLoading() {
this.loading = true
},
exitHome() {
this.$router.push('/Login');
},
question() {
this.explain = !this.explain
},
linkTo(param) {
if (param == 1) {
this.$router.push('/Signing');
} else if (param == 2) {
this.$router.push('/Cost');
} else if (param == 3) {
this.$router.push('/Achievements');
} else if (param == 4) {
this.$router.push('/Defect');
} else if (param == 5) {
this.$router.push('/Doctor');
} else if (param == 6) {
this.$router.push('/Logs');
} else if (param == 21) {
this.$router.push('/Cost');
} else if (param == 22) {
this.$router.push('/Sign');
}
},
toMember(param) {
// console.log('sss')
sessionStorage.setItem('backUrl', 'Cost');
this.$router.push('/Member?sfz=' + param);
//this.$router.push({Member: '/login?url=' + this.$route.path});
},
nullreturn(param) {
if (param == null || param == "NaN") {
return '-'
} else {
var num = parseFloat(param)
if (Math.abs(num) < 0.1) { //处理绝对值小于0.1的
num = num.toFixed(2);
} else if ((Math.abs(num) >= 0.1) && (Math.abs(num) <= 0.995)) { //处理绝对值大于等于0.1小于等于0.995的
num = num.toPrecision(2);
} else if (Math.abs(num) >= 999.5) { //处理绝对值大于等于999.5的
num = num.toFixed(0);
} else {
num = num.toPrecision(3)
}
return num
}
},
// 用于左侧的点击切换右侧表头内部的文字
changeTabName(num) {
if (num == 1) {
this.TableName = "社区"
this.isgy = num
this.isall = 1
} else if (num == 2) {
this.TableName = "二级"
this.isgy = num
this.isall = 1
} else {
this.TableName = "三级"
this.isgy = num
this.isall = 1
}
this.initsignrightcom()
},
showBox(num) {
if (num == 1) {
this.isyy = true
this.showouser1 = true
} else if (num == 2) {
this.isyy = true
this.showouser2 = true
} else if (num == 3) {
this.isyy = true
this.showouser3 = true
}
},
yzbackto() {
this.$router.push('/YSigning');
},
openCame() {
if (false) {
} else {
this.$message.error('移动APP打开扫一扫');
}
},
showMzHospital() {
this.$router.push('/MzHospitalList');
},
gotoDefect() {
this.$router.push('/Defect');
},
renderHeader() {
return ( <div
style = "text-decoration: underline;"
on-click = {() => this.gotoDefect() }>
门诊总费用·元 < /div>)
},
},
mounted: function () {
this.token = sessionStorage.getItem('token')
this.loginMsg = JSON.parse(sessionStorage.getItem('userinfo'))
if (this.loginMsg.roleCode == 'hcms.APP_SQYZ') {
this.yzback = true
}
this.yname = this.loginMsg.userName
if (this.loginMsg.roleCode == 'hcms.APP_SQYZ') {
console.log('家医数据信息:')
console.log(this.loginMsg)
this.loginMsg.gpNumber = sessionStorage.getItem('ygh')
this.yname = sessionStorage.getItem('yname')
}
this.cxsj = sessionStorage.getItem("cxsj")
this.initsign()
this.initsignleftup()
this.initsignleftdown()
this.initsignrightcom()
this.initsignrightdef()
this.initsignlevel()
this.cumpercapvis()
const obj = setInterval(() => {
if (document.getElementById("echats1")) {
const dom = document.getElementById("echats1")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.option, true)
}
clearInterval(obj)
}
}, 200)
const obj2 = setInterval(() => {
if (document.getElementById("ctpie1")) {
const dom = document.getElementById("ctpie1")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.pieoption1, true)
}
clearInterval(obj2)
}
}, 200)
const obj3 = setInterval(() => {
if (document.getElementById("ctpie2")) {
const dom = document.getElementById("ctpie2")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.pieoption2, true)
}
clearInterval(obj3)
}
}, 200)
},
}
</script>
<style scoped>
.el-table th.gutter {
display: table-cell !important;
}
.search /deep/ input {
border: 0;
margin: 0;
height: 30px;
}
.jntemblu {
width: 17px;
height: 17px;
margin-top: 7px;
font-size: 12px;
}
#echats1 {
width: 100%;
margin: 0 auto;
height: 260px;
}
.outService1 {
width: 550px;
z-index: 99;
position: fixed;
top: 265px;
left: 22%;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice1 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
.rightbox {
width: 49%;
height: 115px;
float: left;
}
.rightbox2 {
width: 530px;
padding: 9px;
height: 150px;
}
.rbiteml {
width: 60px;
height: 99px;
float: left;
padding-top: 31px;
box-sizing: border-box;
}
.rbitem2 {
margin-right: 5px;
height: 120px;
padding-top: 55px;
width: 85px;
}
.rbitemlinner {
width: 100%;
height: 32px;
color: #AAB1D2;
margin-top: 0px;
line-height: 32px;
font-size: 13px;
}
.rightbox2 .tablename4,
.tablename5 {
background: #3C5490;
color: rgb(170, 177, 210);
}
.rbitemr {
width: 430px;
height: 150px;
float: right;
color: #fff;
box-sizing: border-box;
}
.rrline {
height: 50px;
padding-top: 10px;
}
.rrline .rrmodel {
float: left;
width: 33.333%;
color: #AAB1D2;
line-height: 25px;
height: 50px;
}
.rrmodelbot {
height: 100px;
float: left;
width: 33.33%;
}
.rrmodelbot p {
line-height: 30px;
}
.rrmodelbot p:nth-child(odd) {
background: #303b62;
}
.outServicewords {
font-size: 14px;
color: #AAB1D2;
line-height: 45px;
height: 45px;
text-align: left;
padding-left: 15px;
}
.outService2 {
width: 480px;
z-index: 99;
position: fixed;
top: 230px;
right: 30px;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice2 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
.outService3 {
width: 480px;
z-index: 99;
position: fixed;
top: 260px;
right: 30px;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice3 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
/deep/ .el-input__icon {
line-height: 30px;
}
.clk {
color: #42CCFF;
}
.explainbox {
width: 330px;
border-radius: 5px;
z-index: 99;
position: fixed;
top: 110px;
left: 312px;
padding-bottom: 5px;
background: rgba(1, 1, 1, 0.8);
}
.explainboxtitle {
width: 90%;
margin: 0 auto;
text-align: left;
border-bottom: 1px solid #ccc;
}
.explainboxtitle span {
font-size: 14px;
font-weight: 500;
color: #FFFFFF;
line-height: 33px;
}
.explainboxtcontent {
width: 90%;
height: 40px;
margin: 0 auto;
text-align: left;
padding-top: 10px;
}
.explainboxtcontentleft {
width: 15%;
float: left;
font-size: 12px;
font-weight: 500;
color: #FFFFFF;
line-height: 16px;
text-align: center;
position: relative;
}
.explainboxtcontentleft i.icls {
position: absolute;
height: 10px;
width: 3px;
color: #0097FD;
background: #0097FD;
left: 0;
top: 4px;
}
.yydiv {
background: rgba(1, 1, 1, 0.7);
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
}
.explainboxtcontentright {
width: 85%;
float: right;
}
.explainboxtcontentright span {
font-size: 12px;
font-weight: 500;
color: #FFFFFF;
line-height: 16px;
}
.spanleft {
float: left;
}
.testright {
text-align: right;
}
/deep/ .el-table {
background: none;
}
/deep/ .el-table__expanded-cell {
background: none;
}
/deep/ .el-table th,
.el-table tr {
background: none;
}
/deep/ .el-table .warning-row {
background: rgba(48, 56, 90, 1);
height: 30px;
}
/deep/ .el-table .success-row {
background: #2a3557;
height: 30px;
}
/deep/ .el-table .warning-row2 {
background: rgba(48, 56, 90, 1);
height: 29px;
}
/deep/ .el-table .success-row2 {
background: #2a3557;
height: 29px;
}
/deep/ .el-table th > .cell {
padding: 0;
}
/deep/ .el-table .cell {
padding: 0;
line-height: 26px;
}
.el-table::before {
background: none
}
/deep/ .el-table,
.el-table__expanded-cell {
background: none;
}
/deep/ .el-table__fixed::before {
background-color: #293054;
}
.el-date-editor {
width: 30px;
position: absolute;
right: 0px;
top: 0px;
}
/deep/ .el-date-editor .el-date-editor--month input {
width: 30px;
border: 0;
padding-left: 0px;
}
/deep/ .el-date-editor .el-input__inner {
background: none !important;
}
/deep/ .el-date-editor .el-input__prefix {
display: none;
}
/deep/ .el-date-editor .el-input__suffix {
display: none;
}
</style>
<template>
<div>
<div class="div-model fl01">
<div class="title">累计签约人均费用</div>
<div class="content">
<div class="qycontent">
<div class="qycontentline"><i class="i01"></i><span class="">实际值</span>|<span>同期</span></div>
<div class="qytexttop">
<el-tooltip content="签约居民年总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para01)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para02)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para03)=='-'?'-':Math.abs(nullreturn(para03))}}%</span>
<i :class="para03<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qycontentline"><i class="i02"></i><span class="">签约数·人</span>|<span>同期</span></div>
<div class="qytextdown">
<span class="spanfont"></span>
<div class="spandata">
<span>{{nullreturn(para04)}}</span>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para05)}}</span>
</div>
</div>
<div class="qytextdown">
<span class="spanfont">住院</span>
<div class="spandata">
<span>{{nullreturn(para06)}}</span>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para07)}}</span>
</div>
</div>
</div>
</div>
</div>
<div class="div-model fl002">
<div class="title">其中累计签约人均门诊费用
<img @click="question()" width="16" style="vertical-align: middle;" height="16"
src="~assets/img/common/icon-mainwen.png">
</div>
<div class="content">
<div class="qycontent">
<div class="qytexttop">
<el-tooltip content="签约居民年门诊总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para08)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para09)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para10)=='-'?'-':Math.abs(nullreturn(para10))}}%</span>
<i :class="para10<0?'el-icon-my-down':'el-icon-my-up'"></i>
<span class="span04"></span>
<code class="pian"></code>
<span class="span03">{{nullreturn(para11)=='-'?'-':Math.abs(nullreturn(para11))}}%</span>
<i :class="para11<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qytextmodel">
<span class="spanfont">累计就诊·千人</span>
<div class="spandata">
<span>{{nullreturn(para12 / 1000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para13 / 1000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para14)=='-'?'-':Math.abs(nullreturn(para14))}}%</span>
<i :class="para14<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextmodel">
<span class="spanfont">累计就诊·千次</span>
<div class="spandata">
<span>{{nullreturn(para15 / 1000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para16 / 1000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para17)=='-'?'-':Math.abs(nullreturn(para17))}}%</span>
<i :class="para17<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextmodel">
<span class="spanfont spanline" @click="showBox(1)">累计人均就诊·次</span>
<div class="spandata">
<span>{{nullreturn(para18)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para19)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para20)=='-'?'-':Math.abs(nullreturn(para20))}}%</span>
<i :class="para20<0?'el-icon-my-down':'el-icon-my-up'"></i>
<span class="span01"></span>
<code class="pian"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para21)=='-'?'-':Math.abs(nullreturn(para21))}}%</span>
<i :class="para21<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
</div>
</div>
</div>
<div class="div-model fr001">
<div class="title">其中累计签约人均住院费用</div>
<div class="content">
<div class="qycontent">
<div class="qytexttop">
<el-tooltip content="签约居民年住院总费用 / 签约居民数" placement="bottom-start">
<span>{{nullreturn(para22)}}</span>
</el-tooltip>
<span class="span02">/</span>
<span class="span01">{{nullreturn(para23)}}</span>
<code class="tong"></code>
<span class="span03">{{nullreturn(para24)=='-'?'-':Math.abs(nullreturn(para24))}}%</span>
<i :class="para24<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
<div class="qytextright">
<span class="spanfont">社区床日·元(实/同)</span>
<div class="spandata">
<span>{{nullreturn(para25)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para26)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para27)=='-'?'-':Math.abs(nullreturn(para27))}}%</span>
<i :class="para27<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextright">
<span class="spanfont spanline" @click="showBox(2)">二级指标·万(实/标)</span>
<div class="spandata">
<span>{{nullreturn(para28 / 10000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para29 / 10000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para30)=='-'?"-":Math.abs(nullreturn(para30))}}%</span>
<i :class="para30<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
<div class="qytextright">
<span class="spanfont spanline" @click="showBox(3)">三级指标·万(实/标)</span>
<div class="spandata">
<span>{{nullreturn(para31 / 10000)}}</span>
<span class="span02">/</span>
<span class="span03">{{nullreturn(para32 / 10000)}}</span>
<span class="span01"></span>
<code class="tong"></code>
<span class="span01"></span>
<span class="span03">{{nullreturn(para33)=='-'?"-":Math.abs(nullreturn(para33))}}%</span>
<i :class="para33<0?'el-icon-my-down':'el-icon-my-up'"></i>
</div>
</div>
</div>
</div>
</div>
<!-----------底部内容---------->
<div class="div-model-b">
<div class="title">门诊</div>
<div class="div-model-echarts div-model-echarts2">
<div class="etitle1 spanline" @click="AnalyFn()">累计费用分析</div>
<div class="ecp01" @click="changeTabName(1)" :class="isgy==1?'clk':''">社区</div>
<div class="ecp02" @click="changeTabName(2)" :class="isgy==2?'clk':''">二级</div>
<div class="ecp03" @click="changeTabName(3)" :class="isgy==3?'clk':''">三级</div>
<div class="etitle2">累计人均就诊分析</div>
<div class="etotal01">合计</div>
<div class="etotal02 spanline" @click="AnalyFn()">组合内</div>
<div class="etotal03 spanline" @click="AnalyFn()">签约社区</div>
<el-table :header-cell-style="headerStyle2" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName2" :data="outpatientuplist">
<el-table-column prop="name" label="就诊·人/同·%">
<template slot-scope="scope">
{{scope.row.JZRS}}/{{scope.row.JZRS_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZRS_TBL))}}
<i :class="scope.row.JZRS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="province" label="人均·次/同·%">
<template slot-scope="scope">
{{scope.row.JZCS}}/{{scope.row.JZCS_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZCS_TBL))}}
<i :class="scope.row.JZCS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="pepole" label="人均·元/同·%">
<template slot-scope="scope">
{{scope.row.JZFY}}/{{scope.row.JZFY_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZFY_TBL))}}
<i :class="scope.row.JZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="city" label="人均药·元/同·%">
<template slot-scope="scope">
{{scope.row.JZYF}}/{{scope.row.JZYF_TBL=='-'?"-":Math.abs(nullreturn(scope.row.JZYF_TBL))}}
<i :class="scope.row.JZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
<el-table :header-cell-style="headerStyle2" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName2" :data="outpatientdownlist">
<el-table-column prop="name" label="目标/时值·%">
<template slot-scope="scope">
{{scope.row.MBL}}/{{scope.row.SJL}}
</template>
</el-table-column>
<el-table-column prop="province" label="目标/去年·次">
<template slot-scope="scope">
{{scope.row.MBZ}}/{{scope.row.QNZ}}
</template>
</el-table-column>
<el-table-column prop="pepole" label="时值/时标·次">
<template slot-scope="scope">
{{scope.row.ZXZ}}/{{scope.row.BZZ}}
</template>
</el-table-column>
<el-table-column prop="city" label="时值同比·%">
<template slot-scope="scope">
{{scope.row.TBZ=='-'?"-":Math.abs(nullreturn(scope.row.TBZ))}}
<i :class="scope.row.TBZ<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<div class="div-model-table div-model-table2">
<div class="tabletitle">
<span @click="changeAll(1)" :class="isall==1?'clk':''">{{TableName}}</span>
<span @click="changeAll(2)" :class="isall==2?'clk':''">缺陷</span>
</div>
<el-table v-show="isall==1" :header-cell-style="headerStyle" :fit="true" :cell-style="cellStyle"
height="230"
:row-class-name="tableRowClassName" :data="hospotallist">
<el-table-column prop="name" width="45" label="序列">
<template slot-scope="scope">{{scope.$index + 1}}</template>
</el-table-column>
<el-table-column prop="province" :show-overflow-tooltip="true" min-width="64">
<template slot="header" slot-scope="scope" class="Movearrow">
<div class="spanline spanleft" @click="showMzHospital()">医院</div>
</template>
<template slot-scope="scope">
<span class="spanline spanleft" @click="AnalyFn()">{{scope.row.JZJGJC}}</span>
</template>
</el-table-column>
<el-table-column prop="pepole" width="100" label="总费用·万/同·%">
<template slot-scope="scope">
<span class="ycqd_lf testright">
{{scope.row.MZFY}}/{{scope.row.MZFY_TBL=='-'?"-":Math.abs(nullreturn(scope.row.MZFY_TBL))}}
</span>
<span class="sp13"><i :class="scope.row.MZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i></span>
</template>
</el-table-column>
<el-table-column prop="city" width="74" label="总费用占比·%">
<template slot-scope="scope">{{scope.row.MZFY_ZB}}</template>
</el-table-column>
<el-table-column prop="address" width="100" label="药费·万/同·%">
<template slot-scope="scope">
<span class="ycqd_lf testright">
{{scope.row.MZYF}}/{{scope.row.MZYF_TBL=='-'?"-":Math.abs(nullreturn(scope.row.MZYF_TBL))}}
</span>
<span class="sp13"><i :class="scope.row.MZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i></span>
</template>
</el-table-column>
</el-table>
<el-table v-show="isall==2" :header-cell-style="headerStyle" :fit="true" :cell-style="cellStyle"
height="230"
:row-class-name="tableRowClassName" :data="defectlist">
<el-table-column prop="name" width="45" label="序列">
<template slot-scope="scope">{{scope.$index + 1}}</template>
</el-table-column>
<el-table-column prop="XM" width="90" label="姓名" class="spanline">
<template slot-scope="scope">
<span class="spanline" @click="toMember(scope.row.SFZH)">{{scope.row.XM}}</span>
</template>
</el-table-column>
<el-table-column prop="NL" label="年龄"></el-table-column>
<el-table-column prop="MZFY" :render-header="renderHeader"></el-table-column>
<el-table-column prop="JZCS" label="就诊·次"></el-table-column>
</el-table>
</div>
</div>
<!-- 累计人均就诊·次弹出层 -->
<div class="outService1" v-show="showouser1">
<p class="pservice1">累计人均门诊</p>
<div class="rightbox rightbox2">
<div class="rbiteml rbitem2">
<div class="rbitemlinner">就诊·次</div>
<div class="rbitemlinner">累计费用·元</div>
<div class="rbitemlinner">累计药费·元</div>
</div>
<div class="rbitemr">
<div class="rrline">
<div class="rrmodel">
<p>社区</p>
<p>实值/占·%同·%</p>
</div>
<div class="rrmodel">
<p>二级</p>
<p>实值/占·%同·%</p>
</div>
<div class="rrmodel">
<p>三级</p>
<p>实值/占·%同·%</p>
</div>
</div>
<div v-for="item in cumpercapvisdatalist" :key="item.index" class="rrmodelbot">
<p>{{item.JZCS}} / {{item.JZCS_ZB}} / {{item.JZCS_TBL=='-'?"-":Math.abs(nullreturn(item.JZCS_TBL))}}
<i :class="item.JZCS_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
<p>{{item.JZFY}} / {{item.JZFY_ZB}} / {{item.JZFY_TBL=='-'?"-":Math.abs(nullreturn(item.JZFY_TBL))}}
<i :class="item.JZFY_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
<p>{{item.JZYF}} / {{item.JZYF_ZB}} / {{item.JZYF_TBL=='-'?"-":Math.abs(nullreturn(item.JZYF_TBL))}}
<i :class="item.JZYF_TBL<0?'el-icon-my-down':'el-icon-my-up'"></i>
</p>
</div>
</div>
</div>
<div style="clear: both;"></div>
<div class="outServicewords">占比 = 当前医院级别累计人均门诊费用(次数)/累计人均门诊总费用(次数)*100%</div>
</div>
<!-- 门诊费用二级指标弹出层 -->
<div class="outService2" v-show="showouser2">
<p class="pservice2">二级指数单价Top4</p>
<el-table :header-cell-style="headerStyle3" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName"
:data="twoleveldatalist">
<el-table-column fixed label="序号" width="45">
<template slot-scope="scope">
<span>{{scope.$index + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="XM" label="姓名" width="70"></el-table-column>
<el-table-column prop="JZJGMC" label="住院机构" width="120"></el-table-column>
<el-table-column prop="ZSDJ_PLD" label="单·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.ZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="YPZSDJ_PLD" label="药·/偏·%">
<template slot-scope="scope">
{{scope.row.YPZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.YPZSDJ_PLD))}}
<i :class="scope.row.YPZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="HCZSDJ_PLD" label="耗·/偏·%">
<template slot-scope="scope">
{{scope.row.HCZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.HCZSDJ_PLD))}}
<i :class="scope.row.HCZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<div v-show="isyy" @click="yyshow" class="yydiv"></div>
<!-- 门诊费用三级指标弹出层 -->
<div class="outService3" v-show="showouser3">
<p class="pservice3">三级指数单价Top4</p>
<el-table :header-cell-style="headerStyle3" :fit="true" :cell-style="cellStyle2" height="125"
:row-class-name="tableRowClassName"
:data="threeleveldatalist">
<el-table-column fixed label="序号" width="60">
<template slot-scope="scope">
<span>{{scope.$index + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="XM" label="姓名" width="70"></el-table-column>
<el-table-column prop="JZJGMC" label="住院机构" width="120"></el-table-column>
<el-table-column prop="ZSDJ_PLD" label="单·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.ZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="YPZSDJ_PLD" label="药·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.YPZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
<el-table-column prop="HCZSDJ_PLD" label="耗·/偏·%">
<template slot-scope="scope">
{{scope.row.ZSDJ_PLD=='-'?"-":Math.abs(nullreturn(scope.row.ZSDJ_PLD))}}
<i :class="scope.row.HCZSDJ_PLD<0?'el-icon-my-down':'el-icon-my-up'"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- 点击问号弹出层 -->
<div class="explainbox" v-if="explain">
<div class="explainboxtitle"><span>累计就诊人均门诊费用标准</span></div>
<div class="explainboxtcontent">
<div class="explainboxtcontentleft">
<i class="icls"></i>说明
</div>
<div class="explainboxtcontentright">
<span>全年人均累计就诊费用为4839元,4月份 时标为 1613元,计算公式=(4839/12)*4</span>
</div>
</div>
</div>
</div>
</template>
<script>
import {home, getPageData} from 'api/home'
import PageHeader from "components/common/header/PageHeader";
import SideNavbar from "components/common/sideNavbar/SideNavbar";
export default {
components: {
PageHeader,
SideNavbar
},
name: 'gpExpenseHome',
data() {
return {
token: '',
loginMsg: {},
para01: 1,
para02: 2,
yname: '',
yzback: false,
para03: 3,
para04: 4,
para05: 5,
para06: 6,
para07: 7,
para08: 8,
para09: 9,
para10: 10,
para11: 11,
para12: 12,
para13: 13,
para14: 14,
para15: 15,
para16: 16,
para17: 17,
para18: 18,
para19: 19,
para20: 20,
para21: 21,
para22: 22,
para23: 23,
para24: 24,
para25: 25,
para26: 26,
para27: 27,
para28: 28,
para29: 29,
para30: 30,
para31: 31,
para32: 32,
para33: 33,
selectTime: '2020-05',
jctxt: '150',
isgy: 1,
loginID: '',
isall: 1,
loading: false,
isyy: false,
TableName: '社区', // 用于切换右侧的表头名字
explain: false, // 用于显示或隐藏问号弹出层
showouser1: false, // 用于显示或隐藏累计人均就诊·次弹出层
showouser2: false, // 用于显示或隐藏二级指标弹出层
showouser3: false, // 用于显示或隐藏三级指标弹出层
detelist: {},
hzpoints: [],
cxsj: "",
numbers: "01",
topvaluelist: [{}],
hospotallist: [],
defectlist: [],
outpatientuplist: [],
outpatientdownlist: [],
twoleveldatalist: [],
threeleveldatalist: [],
cumpercapvisdatalist: [],
option: {
tooltip: {
position: [50, 50],
padding: 10,
trigger: 'axis',
formatter: function (params) {
var res = "<div class='ectabletitle'>";
res += "60以上(实值/同期)</div>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>管辖数:<li>";
res += "<li class='li03'>2 / 3人</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>2 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>签约数:<li>";
res += "<li class='li03'>2 / 3人</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>54 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li01'>签约率:</li>";
res += "<li class='li03'>43 %/53 %</li>";
res += "<li><span class='tag-circle'>同</span></li>";
res += "<li>12 <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "</ul>";
res += "<ul class='ectable01'>";
res += "<li class='li02'>签约率偏离度:</li>";
res +=
"<li class='li03'>43% <span class='el-icon-bottom'>&nbsp;</span> / 65% <span class='el-icon-bottom'>&nbsp;</span></li>";
res += "<li></li>";
res += "<li></li>";
res += "</ul>";
return res
}
},
legend: {
textStyle: {
color: '#8393A9',
fontSize: 10
},
left: 25,
top: '5',
itemHeight: 10,
itemWidth: 10,
itemGap: 5,
data: ['已签约', '管辖数', '重点签约人数', '重点管辖数', '签约率偏离度', '重点签约率偏离度'],
align: 'left',
selectedMode: false
},
grid: {
top: 80,
bottom: 45,
left: 50
},
xAxis: [{
type: 'category',
data: ['静安', '黄埔', '闵行', '宝山', '松江', '青浦', '浦东', '奉贤'],
axisLine: {
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
axisLabel: {
interval: 0,
rotate: 60,
textStyle: {
fontSize: 10,
color: function (value, index) {
return '#8393A9';
}
}
},
splitLine: {
show: false,
onZero: false
},
axisTick: {
show: false
},
}],
yAxis: [{
type: 'value',
name: '千',
min: 0,
axisLabel: {
textStyle: {
color: '#8393A9',
type: 'solid'
},
},
axisLine: {
show: true,
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
splitLine: {
show: false
},
axisTick: {
show: true
}
},
{
type: 'value',
name: '%',
max: 100,
min: 0,
splitNumber: 5,
axisLabel: {
textStyle: {
color: function (value, index) {
return '#747d8d';
},
type: 'solid'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#8393A9',
type: 'solid'
}
},
splitLine: {
show: false
},
axisTick: {
show: true
},
}
],
series: [{
name: '已签约',
type: 'bar',
barWidth: null,
itemStyle: {
normal: {
color: '#2680ff'
}
},
data: [12, 23, 4, 5, 6, 21, 5, 2],
},
{
name: '管辖数',
type: 'bar',
stack: "1",
barWidth: null,
itemStyle: {
normal: {
color: '#2e4f8b'
}
},
data: [12, 3, 4, 5, 6, 21, 5, 2]
},
{
name: '重点签约人数',
type: 'bar',
barWidth: null,
itemStyle: {
normal: {
color: '#36f2d8'
}
},
data: [12, 3, 4, 5, 6, 12, 5, 2]
},
{
name: '重点管辖数',
type: 'bar',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
itemStyle: {
normal: {
color: '#336b84'
}
},
z: 11,
data: [12, 3, 4, 5, 6, 11, 5, 12],
},
{
name: '签约率偏离度',
type: 'line',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
z: 11,
itemStyle: {
normal: {
color: '#fda739'
}
},
data: [12, 3, 14, 5, 6, 12, 5, 21],
},
{
name: '重点签约率偏离度',
type: 'line',
smooth: true,
yAxisIndex: 1,
symbol: 'circle',
symbolSize: 6,
z: 11,
itemStyle: {
normal: {
color: '#f8d065'
}
},
data: [12, 3, 4, 5, 6, 11, 5, 21],
}
]
},
pieoption1: {
color: ["#1467FF", "#84B3FF", "#0447C3", "#2A71F2", "#5291FF", "#97BFFF"],
tooltip: {
trigger: 'item',
position: [-130, 0],
formatter: function (params) {
var res = "<div style='height:95px;width:250px;padding:0 10px;font-size: 12px;'>";
res += "<div>人群分析</div>";
res += "<table class='rqfx_table1' >";
res += "<thead>";
res += "<tr>";
res += "<td width='80'></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>合计·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>重点·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>非重点·人</span></td>";
res += "</tr>";
res += "</thead>";
res += "<tbody>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#3B91B3;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>签约</span></td>";
res += "<td class='tc'><span>1</span></td>";
res += "<td class='tc'><span>2</span></td>";
res += "<td class='tc'><span>3</span></td>";
res += "</tr>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#235293;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>未签约</span></td>";
res += "<td class='tc'><span>4</span></td>";
res += "<td class='tc'><span>5</span></td>";
res += "<td class='tc'><span>6</span></td>";
res += "</tr>";
res += "</tbody>";
res += "</table>";
res += "</div>";
return res
}
},
calculable: false,
series: [{
hoverAnimation: false,
name: '',
type: 'pie',
radius: [0, 34],
x: '36%',
width: '36%',
funnelAlign: 'right',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 1,
name: ''
},
{
value: 2,
name: ''
},
]
},
{
hoverAnimation: true,
hoverOffset: 3,
name: '',
type: 'pie',
radius: [44, 52],
x: '36%',
width: '36%',
funnelAlign: 'left',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 3,
name: 'A'
},
{
value: 4,
name: 'B'
},
{
value: 5,
name: 'C'
},
{
value: 6,
name: 'D'
},
]
}
]
},
pieoption2: {
color: ["#1467FF", "#84B3FF", "#0447C3", "#2A71F2", "#5291FF", "#97BFFF"],
tooltip: {
trigger: 'item',
position: [-130, 0],
formatter: function (params) {
var res = "<div style='height:95px;width:250px;padding:0 10px;font-size: 12px;'>";
res += "<div>人群分析</div>";
res += "<table class='rqfx_table1' >";
res += "<thead>";
res += "<tr>";
res += "<td width='80'></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>合计·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>重点·人</span></td>";
res += "<td width='80' class='tc'><span style='color:#B3BFD2;'>非重点·人</span></td>";
res += "</tr>";
res += "</thead>";
res += "<tbody>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#3B91B3;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>签约</span></td>";
res += "<td class='tc'><span>1</span></td>";
res += "<td class='tc'><span>2</span></td>";
res += "<td class='tc'><span>3</span></td>";
res += "</tr>";
res += "<tr>";
res +=
"<td align='left'><span style='width:12px;height:9px;background:#235293;border-radius:2px;display: inline-block;'></span> <span style='font-size: 12px;'>未签约</span></td>";
res += "<td class='tc'><span>4</span></td>";
res += "<td class='tc'><span>5</span></td>";
res += "<td class='tc'><span>6</span></td>";
res += "</tr>";
res += "</tbody>";
res += "</table>";
res += "</div>";
return res
}
},
calculable: false,
series: [{
hoverAnimation: false,
name: '',
type: 'pie',
radius: [0, 34],
x: '36%',
width: '36%',
funnelAlign: 'right',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 1,
name: ''
},
{
value: 2,
name: ''
},
]
},
{
hoverAnimation: true,
hoverOffset: 3,
name: '',
type: 'pie',
radius: [44, 52],
x: '36%',
width: '36%',
funnelAlign: 'left',
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: [{
value: 3,
name: 'A'
},
{
value: 4,
name: 'B'
},
{
value: 5,
name: 'C'
},
{
value: 6,
name: 'D'
},
]
}
]
},
tableData2: [{
name: '1',
province: '60以上',
city: '-',
pepole: '11',
address: '-',
}, {
name: '2',
province: '高血压',
city: '-',
pepole: '11',
address: '-',
}, {
name: '3',
province: '糖尿病',
city: '-',
pepole: '11',
address: '-',
}],
tableData: [{
name: '1',
province: '60以上',
city: '-',
pepole: '11',
address: '-',
}, {
name: '2',
province: '高血压',
city: '-',
pepole: '11',
address: '-',
}, {
name: '3',
province: '糖尿病',
city: '-',
pepole: '11',
address: '-',
}, {
name: '4',
province: '0-6岁',
city: '-',
pepole: '11',
address: '-',
}, {
name: '5',
province: '孕产妇',
city: '-',
pepole: '11',
address: '-',
}, {
name: '6',
province: '残疾人',
city: '-',
pepole: '11',
address: '-',
}, {
name: '7',
province: '结核病',
city: '-',
pepole: '11',
address: '-',
}, {
name: '8',
province: '特殊家庭',
city: '-',
pepole: '11',
address: '-',
}, {
name: '9',
province: '贫困人口',
city: '-',
pepole: '11',
address: '-',
}, {
name: '10',
province: '精神病',
city: '-',
pepole: '11',
address: '-',
}]
}
},
methods: {
//累计签约人均费用数据接口
initsign() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfy",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode
}
getPageData(token, param).then(res => {
//console.log(res)
this.para01 = 0
this.para02 = 0
this.para03 = 0
this.para04 = 0
this.para05 = 0
this.para06 = 0
this.para07 = 0
this.para08 = 0
this.para09 = 0
this.para10 = 0
this.para11 = 0
this.para12 = 0
this.para13 = 0
this.para14 = 0
this.para15 = 0
this.para16 = 0
this.para17 = 0
this.para18 = 0
this.para19 = 0
this.para20 = 0
this.para21 = 0
this.para22 = 0
this.para23 = 0
this.para24 = 0
this.para25 = 0
this.para26 = 0
this.para27 = 0
this.para28 = 0
this.para29 = 0
this.para30 = 0
this.para31 = 0
this.para32 = 0
this.para33 = 0
if (res.code == 1 && res.data.length > 0) {
this.para01 = res.data[0].RJFY
this.para02 = res.data[0].RJFY_TBZ
this.para03 = res.data[0].RJFY_TBL
this.para04 = res.data[0].QYRS
this.para05 = res.data[0].QYRS_TBZ
this.para06 = res.data[0].ZYRS
this.para07 = res.data[0].ZYRS_TBZ
this.para08 = res.data[0].RJMZFY
this.para09 = res.data[0].RJMZFY_TBZ
this.para10 = res.data[0].RJMZFY_TBL
this.para11 = res.data[0].RJMZFY_PLD
this.para12 = res.data[0].JZRS
this.para13 = res.data[0].JZRS_TBZ
this.para14 = res.data[0].JZRS_TBL
this.para15 = res.data[0].JZCS
this.para16 = res.data[0].JZCS_TBZ
this.para17 = res.data[0].JZCS_TBL
this.para18 = res.data[0].RJJZCS
this.para19 = res.data[0].RJJZCS_TBZ
this.para20 = res.data[0].RJJZCS_TBL
this.para21 = res.data[0].RJJZCS_PLD
this.para22 = res.data[0].RJZYFY
this.para23 = res.data[0].RJZYFY_TBZ
this.para24 = res.data[0].RJZYFY_TBL
this.para25 = res.data[0].CRF
this.para26 = res.data[0].CRF_BZZ
this.para27 = res.data[0].CRF_PLD
this.para28 = res.data[0].EJZSDJ
this.para29 = res.data[0].EJZSDJ_BZZ
this.para30 = res.data[0].EJZSDJ_PLD
this.para31 = res.data[0].SJZSDJ
this.para32 = res.data[0].SJZSDJ_BZZ
this.para33 = res.data[0].SJZSDJ_PLD
this.topvaluelist = res.data[0]
}
})
},
//左侧门诊上面接口
initsignleftup() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": "",
}
}
this.outpatientuplist = []
getPageData(token, param).then(res => {
// console.log('左侧门诊上面接口:');
// console.log(res);
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].JZRS = this.commonJs.getActiveNum(item.JZRS)
res.data[index].JZRS_TBL = this.commonJs.getActiveNum(item.JZRS_TBL)
res.data[index].JZCS = this.commonJs.getActiveNum(item.JZCS)
res.data[index].JZCS_TBL = this.commonJs.getActiveNum(item.JZCS_TBL)
res.data[index].JZFY = this.commonJs.getActiveNum(item.JZFY)
res.data[index].JZFY_TBL = this.commonJs.getActiveNum(item.JZFY_TBL)
res.data[index].JZYF = this.commonJs.getActiveNum(item.JZYF)
res.data[index].JZYF_TBL = this.commonJs.getActiveNum(item.JZYF_TBL)
this.outpatientuplist = res.data
})
}
})
},
// 左侧门诊下面接口
initsignleftdown() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljrjjzfx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jzlx": "",
}
}
this.outpatientdownlist = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.length > 0) {
// console.log(res)
// console.log("打印数据”")
res.data.forEach((item, index) => {
res.data[index].MBL = this.commonJs.getActiveNum(item.MBL)
res.data[index].SJL = this.commonJs.getActiveNum(item.SJL)
res.data[index].MBZ = this.commonJs.getActiveNum(item.MBZ)
res.data[index].QNZ = this.commonJs.getActiveNum(item.QNZ)
res.data[index].ZXZ = this.commonJs.getActiveNum(item.ZXZ)
res.data[index].BZZ = this.commonJs.getActiveNum(item.BZZ)
res.data[index].TBZ = this.commonJs.getActiveNum(item.TBZ)
this.outpatientdownlist = res.data
})
}
})
},
//右侧列表社区接口
initsignrightcom() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx-list",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": this.isgy,
"pageIndex": 1,
"pageSize": 10,
}
}
this.hospotallist = []
getPageData(token, param).then(res => {
// console.log(res)
if (res.code == 1 && res.data.listData.length > 0) {
res.data.listData.forEach((item, index) => {
res.data.listData[index].MZFY = this.commonJs.getActiveNum(item.MZFY / 10000)
res.data.listData[index].MZFY_TBL = this.commonJs.getActiveNum(item.MZFY_TBL)
res.data.listData[index].MZFY_ZB = this.commonJs.getActiveNum(item.MZFY_ZB)
res.data.listData[index].MZYF = this.commonJs.getActiveNum(item.MZYF / 10000)
res.data.listData[index].MZYF_TBL = this.commonJs.getActiveNum(item.MZYF_TBL)
this.hospotallist = res.data.listData
})
}
})
},
//右侧列表缺陷接口
initsignrightdef() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-mzfyqx",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"pageIndex": 1,
"pageSize": 10,
}
}
this.defectlist = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.listData.length > 0) {
res.data.listData.forEach((item, index) => {
res.data.listData[index].MZFY = this.commonJs.getActiveNum(item.MZFY)
this.defectlist = res.data.listData
})
}
})
},
//二级指标单价TOP4
initsignlevel() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfyfx-jg-zd",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
}
this.twolevel = []
this.threelevel = []
getPageData(token, param).then(res => {
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].ZSDJ_PLD = this.commonJs.getActiveNum(item.ZSDJ_PLD)
res.data[index].YPZSDJ_PLD = this.commonJs.getActiveNum(item.YPZSDJ_PLD)
res.data[index].HCZSDJ_PLD = this.commonJs.getActiveNum(item.HCZSDJ_PLD)
if (res.data[index].JZJGDJ == 2) {
this.twolevel.push(res.data[index]);
this.twoleveldatalist = this.twolevel
}
if (res.data[index].JZJGDJ == 3) {
this.threelevel.push(res.data[index]);
this.threeleveldatalist = this.threelevel
}
})
}
})
},
// 费用-就诊-累计人均弹窗接口
cumpercapvis() {
let token = sessionStorage.getItem('token')
let param = {
"key": "fygl-qy-ljfy-jg",
"tjsj": this.cxsj,
"gpgh": this.loginMsg.gpNumber,
"yljgdm": this.loginMsg.orgCode,
"parameter": {
"jglx": ""
}
}
this.cumpercapvisdatalist = []
getPageData(token, param).then(res => {
// console.log('费用-就诊-累计人均弹窗接口');
if (res.code == 1 && res.data.length > 0) {
res.data.forEach((item, index) => {
res.data[index].JZCS = this.commonJs.getActiveNum(item.JZCS)
res.data[index].JZCS_ZB = this.commonJs.getActiveNum(item.JZCS_ZB)
res.data[index].JZCS_TBL = this.commonJs.getActiveNum(item.JZCS_TBL)
res.data[index].JZFY = this.commonJs.getActiveNum(item.JZFY)
res.data[index].JZFY_ZB = this.commonJs.getActiveNum(item.JZFY_ZB)
res.data[index].JZFY_TBL = this.commonJs.getActiveNum(item.JZFY_TBL)
res.data[index].JZYF = this.commonJs.getActiveNum(item.JZYF)
res.data[index].JZYF_ZB = this.commonJs.getActiveNum(item.JZYF_ZB)
res.data[index].JZYF_TBL = this.commonJs.getActiveNum(item.JZYF)
this.cumpercapvisdatalist = res.data
})
}
})
},
dataSearch(value) {
console.log(famartTime2(value));
let val = famartTime2(value)
this.cxsj = val
this.initsign()
this.initsignleftup()
this.initsignleftdown()
this.initsignrightcom()
this.initsignrightdef()
this.initsignlevel()
this.cumpercapvis()
},
yyshow() {
this.isyy = !this.isyy
this.showouser1 = false
this.showouser2 = false
this.showouser3 = false
},
goExit() {
this.$router.push('/Home');
},
headerStyle() {
return 'background:rgba(48,56,90,1); border:0; margin:0; padding:0; line-height:29px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
cellStyle() {
return 'background:none;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
changeAll(param) {
this.isall = param
},
AnalyFn() {
this.$router.push('/AnalySign');
},
tableRowClassName({
row,
rowIndex
}) {
if (rowIndex % 2 == 1) {
return 'warning-row';
} else {
return 'success-row';
}
},
tableRowClassName2({
row,
rowIndex
}) {
if (rowIndex % 2 == 1) {
return 'warning-row2';
} else {
return 'success-row2';
}
},
headerStyle2() {
return 'background:rgba(48,56,90,1); border:0; margin:0; padding:0; line-height:29px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
headerStyle3() {
return 'background:rgba(48,56,90,1);border:0; margin:0; padding:0; line-height:29px; color:#8891BE; font-size:12px; text-align:center;font-weight:500;'
},
headerStyle4() {
return 'background:#35426E; border:0; margin:0; padding:0; line-height:50px; color:#6D779A; font-size:12px; text-align:center;font-weight:500;'
},
cellStyle2() {
return 'background:none;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
cellStyle4() {
return 'background:#35426E;color:#fff;border:0; margin:0; padding:0; line-height:29px; color:#AAB1D2; font-size:12px; text-align:center;font-weight:500'
},
hideLoading() {
this.loading = false
},
showLoading() {
this.loading = true
},
exitHome() {
this.$router.push('/Login');
},
question() {
this.explain = !this.explain
},
linkTo(param) {
if (param == 1) {
this.$router.push('/Signing');
} else if (param == 2) {
this.$router.push('/Cost');
} else if (param == 3) {
this.$router.push('/Achievements');
} else if (param == 4) {
this.$router.push('/Defect');
} else if (param == 5) {
this.$router.push('/Doctor');
} else if (param == 6) {
this.$router.push('/Logs');
} else if (param == 21) {
this.$router.push('/Cost');
} else if (param == 22) {
this.$router.push('/Sign');
}
},
toMember(param) {
// console.log('sss')
sessionStorage.setItem('backUrl', 'Cost');
this.$router.push('/Member?sfz=' + param);
//this.$router.push({Member: '/login?url=' + this.$route.path});
},
nullreturn(param) {
if (param == null || param == "NaN") {
return '-'
} else {
var num = parseFloat(param)
if (Math.abs(num) < 0.1) { //处理绝对值小于0.1的
num = num.toFixed(2);
} else if ((Math.abs(num) >= 0.1) && (Math.abs(num) <= 0.995)) { //处理绝对值大于等于0.1小于等于0.995的
num = num.toPrecision(2);
} else if (Math.abs(num) >= 999.5) { //处理绝对值大于等于999.5的
num = num.toFixed(0);
} else {
num = num.toPrecision(3)
}
return num
}
},
// 用于左侧的点击切换右侧表头内部的文字
changeTabName(num) {
if (num == 1) {
this.TableName = "社区"
this.isgy = num
this.isall = 1
} else if (num == 2) {
this.TableName = "二级"
this.isgy = num
this.isall = 1
} else {
this.TableName = "三级"
this.isgy = num
this.isall = 1
}
this.initsignrightcom()
},
showBox(num) {
if (num == 1) {
this.isyy = true
this.showouser1 = true
} else if (num == 2) {
this.isyy = true
this.showouser2 = true
} else if (num == 3) {
this.isyy = true
this.showouser3 = true
}
},
yzbackto() {
this.$router.push('/YSigning');
},
openCame() {
if (false) {
} else {
this.$message.error('移动APP打开扫一扫');
}
},
showMzHospital() {
this.$router.push('/MzHospitalList');
},
gotoDefect() {
this.$router.push('/Defect');
},
renderHeader() {
return ( <div
style = "text-decoration: underline;"
on-click = {() => this.gotoDefect() }>
门诊总费用·元 < /div>)
},
},
mounted: function () {
this.token = sessionStorage.getItem('token')
this.loginMsg = JSON.parse(sessionStorage.getItem('userinfo'))
if (this.loginMsg.roleCode == 'hcms.APP_SQYZ') {
this.yzback = true
}
this.yname = this.loginMsg.userName
if (this.loginMsg.roleCode == 'hcms.APP_SQYZ') {
console.log('家医数据信息:')
console.log(this.loginMsg)
this.loginMsg.gpNumber = sessionStorage.getItem('ygh')
this.yname = sessionStorage.getItem('yname')
}
this.cxsj = sessionStorage.getItem("cxsj")
this.initsign()
this.initsignleftup()
this.initsignleftdown()
this.initsignrightcom()
this.initsignrightdef()
this.initsignlevel()
this.cumpercapvis()
const obj = setInterval(() => {
if (document.getElementById("echats1")) {
const dom = document.getElementById("echats1")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.option, true)
}
clearInterval(obj)
}
}, 200)
const obj2 = setInterval(() => {
if (document.getElementById("ctpie1")) {
const dom = document.getElementById("ctpie1")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.pieoption1, true)
}
clearInterval(obj2)
}
}, 200)
const obj3 = setInterval(() => {
if (document.getElementById("ctpie2")) {
const dom = document.getElementById("ctpie2")
const myChart = this.$echarts.init(dom)
if (this.option && typeof this.option === "object") {
myChart.setOption(this.pieoption2, true)
}
clearInterval(obj3)
}
}, 200)
},
}
</script>
<style scoped>
.el-table th.gutter {
display: table-cell !important;
}
.search /deep/ input {
border: 0;
margin: 0;
height: 30px;
}
.jntemblu {
width: 17px;
height: 17px;
margin-top: 7px;
font-size: 12px;
}
#echats1 {
width: 100%;
margin: 0 auto;
height: 260px;
}
.outService1 {
width: 550px;
z-index: 99;
position: fixed;
top: 265px;
left: 22%;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice1 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
.rightbox {
width: 49%;
height: 115px;
float: left;
}
.rightbox2 {
width: 530px;
padding: 9px;
height: 150px;
}
.rbiteml {
width: 60px;
height: 99px;
float: left;
padding-top: 31px;
box-sizing: border-box;
}
.rbitem2 {
margin-right: 5px;
height: 120px;
padding-top: 55px;
width: 85px;
}
.rbitemlinner {
width: 100%;
height: 32px;
color: #AAB1D2;
margin-top: 0px;
line-height: 32px;
font-size: 13px;
}
.rightbox2 .tablename4,
.tablename5 {
background: #3C5490;
color: rgb(170, 177, 210);
}
.rbitemr {
width: 430px;
height: 150px;
float: right;
color: #fff;
box-sizing: border-box;
}
.rrline {
height: 50px;
padding-top: 10px;
}
.rrline .rrmodel {
float: left;
width: 33.333%;
color: #AAB1D2;
line-height: 25px;
height: 50px;
}
.rrmodelbot {
height: 100px;
float: left;
width: 33.33%;
}
.rrmodelbot p {
line-height: 30px;
}
.rrmodelbot p:nth-child(odd) {
background: #303b62;
}
.outServicewords {
font-size: 14px;
color: #AAB1D2;
line-height: 45px;
height: 45px;
text-align: left;
padding-left: 15px;
}
.outService2 {
width: 480px;
z-index: 99;
position: fixed;
top: 230px;
right: 30px;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice2 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
.outService3 {
width: 480px;
z-index: 99;
position: fixed;
top: 260px;
right: 30px;
border-radius: 5px;
background: linear-gradient(180deg, rgba(53, 66, 110, 1) 0%, rgba(54, 66, 109, 1) 100%);
}
.pservice3 {
height: 35px;
line-height: 35px;
text-align: left;
padding-left: 18px;
color: #A6AED6;
font-size: 15px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
background: #3F4E7D;
}
/deep/ .el-input__icon {
line-height: 30px;
}
.clk {
color: #42CCFF;
}
.explainbox {
width: 330px;
border-radius: 5px;
z-index: 99;
position: fixed;
top: 110px;
left: 312px;
padding-bottom: 5px;
background: rgba(1, 1, 1, 0.8);
}
.explainboxtitle {
width: 90%;
margin: 0 auto;
text-align: left;
border-bottom: 1px solid #ccc;
}
.explainboxtitle span {
font-size: 14px;
font-weight: 500;
color: #FFFFFF;
line-height: 33px;
}
.explainboxtcontent {
width: 90%;
height: 40px;
margin: 0 auto;
text-align: left;
padding-top: 10px;
}
.explainboxtcontentleft {
width: 15%;
float: left;
font-size: 12px;
font-weight: 500;
color: #FFFFFF;
line-height: 16px;
text-align: center;
position: relative;
}
.explainboxtcontentleft i.icls {
position: absolute;
height: 10px;
width: 3px;
color: #0097FD;
background: #0097FD;
left: 0;
top: 4px;
}
.yydiv {
background: rgba(1, 1, 1, 0.7);
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
}
.explainboxtcontentright {
width: 85%;
float: right;
}
.explainboxtcontentright span {
font-size: 12px;
font-weight: 500;
color: #FFFFFF;
line-height: 16px;
}
.spanleft {
float: left;
}
.testright {
text-align: right;
}
/deep/ .el-table {
background: none;
}
/deep/ .el-table__expanded-cell {
background: none;
}
/deep/ .el-table th,
.el-table tr {
background: none;
}
/deep/ .el-table .warning-row {
background: rgba(48, 56, 90, 1);
height: 30px;
}
/deep/ .el-table .success-row {
background: #2a3557;
height: 30px;
}
/deep/ .el-table .warning-row2 {
background: rgba(48, 56, 90, 1);
height: 29px;
}
/deep/ .el-table .success-row2 {
background: #2a3557;
height: 29px;
}
/deep/ .el-table th > .cell {
padding: 0;
}
/deep/ .el-table .cell {
padding: 0;
line-height: 26px;
}
.el-table::before {
background: none
}
/deep/ .el-table,
.el-table__expanded-cell {
background: none;
}
/deep/ .el-table__fixed::before {
background-color: #293054;
}
.el-date-editor {
width: 30px;
position: absolute;
right: 0px;
top: 0px;
}
/deep/ .el-date-editor .el-date-editor--month input {
width: 30px;
border: 0;
padding-left: 0px;
}
/deep/ .el-date-editor .el-input__inner {
background: none !important;
}
/deep/ .el-date-editor .el-input__prefix {
display: none;
}
/deep/ .el-date-editor .el-input__suffix {
display: none;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment