@@ -0,0 +1,362 @@
+@import './reset.less';
+.container{
+ width: 100%;
+ height: 100%;
+ overflow: auto;
+ background-color: #fff;
+}
+.abnormal {
+ ul,li{
+ list-style: none;
+ }
+ h2{
+ box-sizing: border-box;
+ z-index: 20;
+ height: 44px;
+ line-height: 44px;
+ padding: 0 0 0 15px;
+ border-bottom: 1px solid #E2E5EF;
+ font-size: 16px;
+ font-weight: bold ;
+ letter-spacing: 1px;
+ .main-body{
+ margin: 20px 0;
+ padding: 0 35px;
+ min-width: 1090px;
+ /*width: 100%;*/
+ table{
+ border:1px solid #E2E5EF;
+ border-collapse: collapse;
+ thead{
+ background: #EFF0F9;
+
+ th,td{
+ height: 40px;
+ padding: 10px;
+ text-align: center;
+ th{
+ font-size: 14px;
+ font-weight: 500;
+ white-space: nowrap;
+ th[code]{
+ cursor: pointer;
+ &:after{
+ content:"";
+ display:inline-block;
+ width: 11px;
+ height: 14px;
+ margin-left: 4px;
+ vertical-align: middle;
+ background: url("../images/grey.png");
+ &.asc:after{
+ background: url("../images/up_blue.png");
+ &.desc:after{
+ background: url("../images/down_blue.png");
+ td{
+ font-weight: 400;
+ .moduleNumber{
+ .scoreOperaItem{
+ width: 50px;
+ .tabFoot{
+ /*border: 1px solid #E2E5EF;
+ border-top: none;
+ box-sizing: border-box;*/
+ .scoreOpera{
+ height: 50px;
+ line-height: 50px;
+ margin: 0 20px 0 0;
+ img{
+ margin: 0 10px 0 0;
+ .recordScoreOperaBtn{
+ color: @activeColor;
+ .recordScoreBtn{
+ display: inline-block;
+ width:68px;
+ height:30px;
+ line-height: 30px;
+ border-radius:4px;
+ border: 1px solid @activeColor;
+ .filterBox{
+ margin-bottom: 15px;
+ .filterItem{
+ position: relative;
+ float: left;
+ line-height: 40px;
+ margin: 0 20px 15px 0;
+ span{
+ input{
+ width:120px;
+ height:40px;
+ border: 1px solid #E2E5EF;
+ outline: none;
+ margin-right: 10px;
+ padding: 0 10px;
+ .filterDropList{
+ position: absolute;
+ right: 0;
+ max-height: 200px;
+ overflow-y: auto;
+ background: #fff;
+ display: none;
+ border: 1px solid #e4e7ed;
+ box-shadow: 0 2px 12px 0 #e4e7ed;
+ z-index: 2;
+ li{
+ .deptList{
+ width: 160px;
+ max-height: 400px;
+ .levelList{
+ width: 120px;
+ height: 120px;
+ li:hover{
+ background-color: #EEF4FF;
+ .selectLevel,.selectDept{
+ .selectDept{
+ .filter{
+ width:60px;
+ height:36px;
+ background:@activeColor;
+ color: #fff;
+ line-height: 36px;
+ top: 2px;
+ .arrow{
+ width: 10px;
+ top: 16px;
+ right: 10px;
+ .iconCheck{
+ width: 14px;
+ .fl{
+ .clearfix:after {
+ content: '';
+ height: 0;
+ line-height: 0;
+ display: block;
+ visibility: hidden;
+ clear: both;
+ .clearfix{
+ zoom:1
+ .divide{
+ margin: 0 10px;
+ .datapickerBox{
+ .iconCalen{
+ width: 15px;
+ top: 12px;
+ .textCenter{
+ .patientNameSpan{
+ color: #00A1F0;
+ .patientNameSpans{
+ color: #FF4D4F;
+ margin-left: 30px;
+ .deptItem:hover{
+ .ellipsis{
+ overflow: hidden;
+ text-overflow:ellipsis;
+ .pagination{
+ margin: 35px 0 0 0 ;
+ text-align: right;
+ .totalSum{
+ font-size:12px;
+ line-height:17px;
+ color: #777777;
+ margin-right: 20px;
+ .pageNum,.prePage,.nextPage, .more{
+ width: 20px;
+ color: #777;
+ .prePage,.nextPage{
+ top: 0px ;
+ .more{
+ cursor: not-allowed;
+ .arrowPage{
+ width: 6px;
+ .activePage{
+ .ui-datepicker-calendar {
+ border: 0 none;
+ min-width: 0;
+ .ui-datepicker thead {
+ color: #c3cbd6;
+ .ui-datepicker td {
+ padding: 0;
+ height: auto;
+ color: #657180;
+ .ui-datepicker td span, .ui-datepicker td a {
+ height: 30px;
+ .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
+ border: 0;
+ &:hover {
+ background-color: #c4d8fe;
+ .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
+ color: #333;
+ font-weight: normal;
+ margin: 0 5px;
+ width: 40%;
+ border-radius: 3px;
+ .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
+ top: 5px;
+ .ui-state-active, .ui-widget-content .ui-state-active {
+ background-color: @activeColor !important;
+ .ui-state-highlight, .ui-widget-content .ui-state-highlight {
+ background-color: #fff5bf !important;
+ .ui-widget-header {
+ input::-webkit-outer-spin-button,
+ input::-webkit-inner-spin-button {
+ -webkit-appearance: none;
+ input[type="number"] {
+ -moz-appearance: textfield;
+.abnormalClear {
+ top: 2px !important;
@@ -1,20 +1,23 @@
body.console {
overflow: auto;
+ background: @activeBg;
}
.echarts {
width: 100%;
- height: 300px;
+ height: 292px;
padding: 0 15px;
.barChartPay {
+ height: 261px;
.emptyCircle {
width: 35%;
- height: 200px;
+ height: 135px;
float: left;
- margin-top: 32px;
+ margin-top: 38px;
#emptyCircleB {
margin-top: 50px;
@@ -25,8 +28,9 @@ body.console {
.partWrap {
// overflow: auto;
height: auto;
- background: #f5f5f5;
min-width: 1185px;
ul {
padding: 0 40px;
@@ -68,10 +72,12 @@ body.console {
.title {
font-size: 16px;
font-weight: bold;
- border-bottom: 1px solid #E2E5EF;
- height: 36px;
- line-height: 36px;
+ color: @themeFontClr;
+ border-bottom: 1px solid @themeBorderClr;
padding-left: 15px;
.swiperWrap {
@@ -80,7 +86,7 @@ body.console {
.grayLine {
height: 10px;
- background-color: #f5f5f5;
+ background-color: @activeBg;
.partTitleT {
height: 44px;
@@ -91,7 +97,7 @@ body.console {
right: 0;
box-sizing: border-box;
- background-color: #fff;
+ background-color: @themeColor;
z-index: 20;
line-height: 44px;
@@ -99,23 +105,26 @@ body.console {
font-size: 14px;
letter-spacing: 1px;
+ min-width: 100px;
p {
display: inline-block;
span {
.dateDetail {
font-size: 12px;
- color: #777777;
margin-right: 30px;
font-weight: normal;
.monthYear {
float: right;
margin-right: 20px;
- border: 1px solid #5A8EEE;
+ border: 1px solid #00A1FF;
height: 28px;
line-height: 28px;
border-radius: 4px;
@@ -130,12 +139,12 @@ body.console {
text-align: center;
- .mon {
- color: #5A8EEE;
- }
.year {
+ background-color: #00A1FF;
color: #fff;
- background-color: #5A8EEE;
+ .mon {
@@ -148,39 +157,40 @@ body.console {
.pubEchart {
- margin-bottom: 10px;
- border-top: 10px solid #f5f5f5;
+ /*margin-bottom: 10px;*/
+ border-top: 10px solid @activeBg;
.pubEchartB {
width: 55%;
margin-bottom: 10px;
background-color: #fff;
- border-left: 10px solid #f5f5f5;
+ border-left: 10px solid @activeBg;
.paymoney {
position: relative;
+ background: @themeColor;
.dept {
.circle {
- height: 304px;
+ height: 256px;
.circleB {
- height: 350px;
+ height: 258px;
width: 45%;
@@ -196,14 +206,14 @@ body.console {
padding-right: 30px;
- max-height: 250px;
- overflow: auto;
+ max-height: 180px;
table {
.explainLi {
- height: 30px;
- line-height: 30px;
+ height: 26px;
+ line-height: 26px;
@@ -222,13 +232,14 @@ body.console {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
.smp {
width: 100px;
.deptNum {
- color: #333;
padding-right: 10px;
@@ -236,7 +247,7 @@ body.console {
text-align: right;
.percent {
- color: #777;
width: 40px;
@@ -245,15 +256,17 @@ body.console {
.part01 {
width: 28%;
- border-right: 10px solid #f5f5f5;
+ border-right: 10px solid @activeBg;
- padding: 40px 20px;
- border-bottom: 10px solid #f5f5f5;
+ padding: 28px 20px;
+ border-bottom: 10px solid @activeBg;
+ /*background: @themeColor;*/
li {
width: 33.33%;
border-left: 3px solid #F2637B;
height: 72px;
@@ -268,48 +281,58 @@ body.console {
.defect {
- height: 452px;
+ /*background-color: @themeColor;*/
+ height: 385px;
.list {
- padding: 15px 5px;
+ padding: 13px 5px;
+ overflow-x: hidden;
height: 405px;
- .thead {
+ /*.thead {
td {
color: #51649C;
+ }*/
.qtable {
+ .thead{
+ background: #142753;
- padding: 7px 10px;
+ padding: 8px 10px;
i {
width: 17px;
height: 17px;
line-height: 17px;
border-radius: 8px;
- background-color: #999;
+ background-color: #526186;
- tr {
- border-bottom: 1px solid #f5f5f5;
- box-sizing: border-box;
+ tr:nth-child(2n+1) {
+ background: #283B69;
+ /*border-bottom: 1px solid @activeBg;
.td01 {
- width: 30px;
+ min-width: 30px;
+ .td02name {
+ min-width: 113px;
.td02 {
-
.td03 {
@@ -320,12 +343,12 @@ body.console {
.part02{
width: 39%;
.bingli {
- padding: 20px;
+ padding: 10px 20px;
width: 23%;
@@ -333,38 +356,43 @@ body.console {
.fst {
// border-right: 1px solid #E2E5EF;
+ border-right: 1px solid @themeBorderClr;
width: 30%;
.bingliLis {
- border-top: 1px solid #E2E5EF;
- padding: 20px 30px;
+ border-top: 1px solid @themeBorderClr;
+ padding: 15px 30px;
+ height: 168px;
- padding-bottom: 2px;
+ padding-bottom: 5px;
.panPartPub {
- height: 130px;
+ height: 110px;
- width: 100px;
+ width: 78px;
position: absolute;
bottom: 0;
left: 50%;
margin-left: -50px;
.fen {
- height: 100px;
+ height: 78px;
@@ -378,30 +406,37 @@ body.console {
.barChartLine {
+ height: 257px;
.barChartLineBox {
// width: 100%;
.partTitlePub {
- height: 44px;
- line-height: 44px;
+ color:@themeFontClr;
.name {
.personNum {
- color: #51649C;
@@ -411,9 +446,11 @@ body.console {
height: 36px;
line-height: 40px;
.explainNum {
margin-top: 8px;
.toggleSlide {
@@ -431,6 +468,9 @@ body.console {
img {
width: 10px;
@@ -0,0 +1,377 @@
+.dayDetail {
+ .dayFilter {
+ .levelList {
+ height: 80px;
+ .selectLevel,.levelList {
+ width: 180px;
+ .filterItem.deptListWrap {
+ .selectDept,.deptList {
@@ -0,0 +1,495 @@
+body.console {
+ background-color: #f5f5f5;
+.echarts {
+ height: 300px;
+ padding: 0 15px;
+.barChartPay {
+.emptyCircle {
+ width: 35%;
+ height: 200px;
+ margin-top: 32px;
+#emptyCircleB {
+ margin-top: 50px;
+.partAll {
+.partWrap {
+ // overflow: auto;
+ background: #f5f5f5;
+ min-width: 1080px;
+ ul {
+ padding: 0 40px;
+ .partLi {
+ margin: 15px 0;
+ width: 20%;
+ height: 100px;
+ .partIn {
+ padding: 10px 15px;
+ margin: 0 6px;
+ p {
+ padding-bottom: 10px;
+ color: #51649C;
+ .top {
+ margin-bottom: 12px;
+ .btm {
+ padding-bottom: 4px;
+ img {
+ width: 40px;
+ span {
+ float: right;
+ font-size: 28px;
+ .title {
+ font-weight: bold;
+ height: 36px;
+ padding-left: 15px;
+.swiperWrap {
+ width: 300px;
+ border: 1px solid #ccc;
+.grayLine {
+ height: 10px;
+.partTitleT {
+.partTitle {
+ top: 0px;
+ left: 0;
+ span,i {
+ .dateDetail {
+ font-size: 12px;
+ margin-right: 30px;
+ .monthYear {
+ height: 28px;
+ line-height: 28px;
+ border-radius: 4px;
+ margin-top: 7px;
+ width: 48px;
+ .year {
+ background-color: @activeColor;
+.partTitles {
+ padding-left: 10px;
+ margin-right: 0;
+.pubEchart {
+ margin-bottom: 10px;
+ border-top: 10px solid #f5f5f5;
+.pubEchartB {
+ width: 55%;
+ border-left: 10px solid #f5f5f5;
+.paymoney {
+.dept {
+.circle {
+ height: 304px;
+.circleB {
+ height: 350px;
+.btmWrap {
+.explainPan {
+ width: 60%;
+ top: 50%;
+ padding-right: 30px;
+ max-height: 250px;
+ table {
+ .explainLi {
+ .tip {
+ border-radius: 50%;
+ background-color: red;
+ .deptName {
+ width: 110px;
+ text-overflow: ellipsis;
+ .smp {
+ width: 100px;
+ .deptNum {
+ padding-right: 10px;
+ .percent {
+.circleBSingle .explainPan .deptName p {
+ width: 220px;
+.part01 {
+ width: 38%;
+ border-right: 10px solid #f5f5f5;
+ padding: 40px 20px;
+ border-bottom: 10px solid #f5f5f5;
+ li {
+ width: 50%;
+ .lis {
+ border-left: 3px solid #F2637B;
+ height: 72px;
+ padding-left: 12px;
+ margin-left: 60px;
+ &.li02 {
+ border-left: 3px solid #37CBCB;
+ &.li03 {
+ border-left: 3px solid #FAD336;
+ .defect {
+ height: 452px;
+ .list {
+ padding: 15px 5px;
+ height: 405px;
+ .thead {
+ td {
+ .qtable {
+ padding: 7px 10px;
+ i {
+ width: 17px;
+ height: 17px;
+ line-height: 17px;
+ border-radius: 8px;
+ background-color: #999;
+ tr {
+ border-bottom: 1px solid #f5f5f5;
+ .td01 {
+ width: 30px;
+ .td02 {
+ .td03 {
+ .td04 {
+.part02{
+ // border-right: 10px solid #f5f5f5;
+ width: 62%;
+ .bingli {
+ padding: 20px;
+ width: 23%;
+ border-right: 1px solid #E2E5EF;
+ .fst {
+ // border-right: 1px solid #E2E5EF;
+ width: 30%;
+ .four {
+ border-right: 0 none;
+ .bingliLis {
+ border-top: 1px solid #E2E5EF;
+ padding: 20px 30px;
+ padding-bottom: 2px;
+ .panPartPub {
+ width: 33.33%;
+ height: 130px;
+ bottom: 0;
+ left: 50%;
+ margin-left: -50px;
+ .fen {
+.partTitlePub {
+ .name {
+ .personNum {
+.numShow {
+.explainNum {
+ margin-top: 8px;
+.toggleSlide {
+ margin-top: 6px;
+ width: 170px;
+ padding-right: 20px;
+ width: 155px;
+ z-index: 100;
+ top: -15px;
+.circleBLis {
+ // display: none;
+ .homePage {
+ width: 45%;
+ .homePageNo {
+.emptyLineCircle {
+ margin-top: 0;
@@ -0,0 +1,376 @@
+.deptScoreDetail {
+.deptScoreDetailControl {
@@ -1,3 +1,4 @@
+@import "./reset.less";
.managerContainer{
height: 100%;
@@ -11,20 +12,10 @@
list-style:none;
h2{
- width: 100%;
- z-index: 20;
- padding: 0 0 0 15px;
- font-size: 16px;
- font-weight: bold;
- letter-spacing: 1px;
+ .h2;
.main-body{
- margin: 20px 40px;
+ margin: 10px 40px;
table{
@@ -35,9 +26,9 @@
th,td{
- height: 40px;
+ height: 32px;
- padding: 10px;
+ padding:0 10px;
border:1px solid #E2E5EF;
border-collapse: collapse;
@@ -60,15 +51,14 @@
.filterItem{
- margin-right: 20px;
- line-height: 40px;
+ line-height: 32px;
margin: 0 20px 20px 0;
.filterDropList{
overflow-y: auto;
background: #fff;
display: none;
@@ -101,24 +91,30 @@
width:140px;
- padding: 0 10px;
- height:40px;
+ height:32px;
border-radius:4px;
border: 1px solid #E2E5EF;
cursor: pointer;
- padding-right: 26px;
+ padding:0 26px 0 10px;
.arrow{
- top: 16px;
right: 10px;
.moduleItemInp{
cursor: default;
outline: none;
+ .moduleItemInp:focus{
+ border: 1px solid @activeColor ;
+ outline: 0;
+ -webkit-box-shadow:@activeColor 0px 0px 2px;
+ -moz-box-shadow: @activeColor 0px 0px 2px;
+ box-shadow: @activeColor 0px 0px 2px;
.moduleTypeList{
width: 160px;
@@ -135,18 +131,21 @@
.filter{
width:60px;
- height:36px;
- background:#5A8EEE;
- top: -1px;
+ .filterclear{
+ top:0px;
.editItem{
.editItemDis{
@@ -195,7 +194,7 @@
width: 6px;
.activePage{
input::-webkit-outer-spin-button,
@@ -0,0 +1,379 @@
+.jiaji {
+ .deptListWrap {
@@ -1,87 +1,69 @@
body {
+ background:linear-gradient(133deg,rgba(45,79,139,1) 0%,rgba(20,39,83,1) 100%);
.login {
+ .bg{
+ background: url("../images/loginBg2.png") center center no-repeat;
+ background-size: 84%;
.waring {
color: #FF4D4F;
margin-top: 18px;
height: 18px;
- .logoTop {
- height:50px;
- line-height:50px;
- padding-left: 20px;
- background:linear-gradient(123deg,rgba(90,142,238,1) 0%,rgba(126,171,255,1) 100%);
- img {
- vertical-align: middle;
- span {
- width: 1px;
- height: 15px;
- display: inline-block;
- position: relative;
- top: 3px;
- left: -1px;
- margin: 0 3px;
- i {
- color: #fff;
- top: 1px;
.sureLogin {
- width: 120px;
height: 40px;
margin: 20px auto 0;
-.loginForm {
- width: 800px;
- height: 520px;
+p.title {
- left: 50%;
- top: 50%;
- margin-left: -400px;
- margin-top: -260px;
- border-radius:20px;
- p.title {
- font-size: 28px;
- position: absolute;
- top: 90px;
- left: 50px;
- .loginBg {
- float: left;
- width: 400px;
+ top: 90px;
+ left: 50px;
.message {
- width: 50%;
- padding:96px 50px;
+ background:linear-gradient(180deg,rgba(0,25,82,1) 0%,rgba(0,24,78,0.94) 100%);
+ .inner{
+ height: 360px;
+ margin-top: -180px;
+ margin-left: -150px;
.welcome {
font-size: 20px;
margin-bottom: 50px;
.perPub {
+ margin: auto;
padding-bottom: 8px;
vertical-align: middle;
@@ -91,7 +73,7 @@ body {
.iptWrap {
padding-left: 10px;
- border: 1px solid #E2E5EF;
+ border: 1px solid #97A4BA;
width: 300px;
line-height: 38px;
@@ -99,9 +81,18 @@ body {
input {
width: 80%;
+ background: none;
+ .inputFocus{
-}
.alertModal {
.modalBg {
@@ -184,6 +175,7 @@ body {
border-radius: 3px;
background: rgba(0, 0, 0, .6);
+ z-index: 9999;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#88000000,endColorstr=#88000000);
.loading {
@@ -1,25 +1,17 @@
.container{
.totalSumBox{
- margin: 0 0 20px 0;
+ margin: 0 0 10px 0;
+ padding: 0 20px 0 0;
.totalSum{
color: red;
@@ -28,13 +20,13 @@ table{
border-collapse: collapse;/*关键代码*/
+ min-width: 800px;
thead{
background: #EFF0F9;
padding: 0 20px;
@@ -50,9 +42,27 @@ table{
.moduleNumber{
+ width: 15%;
+ .moduleName{
+ .moduleScore{
+ .moduleOpera{
+.tableTitle table{
.moduleScore, .totalSum{
input{
@@ -66,13 +76,16 @@ table{
.saveModule{
- background: #5A8EEE;
+ background: @activeColor;
color:#fff;
padding: 9px 16px;
border-radius: 5px;
.tableWrapper{
+.tableInfo{
.mask {
@@ -88,7 +101,7 @@ table{
.moduleOperaItem{
.moduleOperaItemDis{
@@ -0,0 +1,293 @@
+.mukuai{
+ width:160px;
+ .selectUsed,.selectReject {
+ padding:0;
+ margin:0;
+ list-style:none;
+ .main-body {
+ margin: 20px 40px;
+ font-weight: 400
+ // .filterBox{
+ // margin: 0 0 20px 0;
+ // }
+ margin: 0 20px 20px 0;
+ .rejectList, .usedList{
+ .switchImg{
+ .roleSelect {
+ top: 3px;
+ .selectModuleType,.moduleItemInp,.selectUsed, .selectReject{
+ width:140px;
+ padding-right: 26px;
+ .moduleItemInp{
+ cursor: default;
+ .moduleTypeList{
+ .selectUsed, .selectReject{
+ width: 140px;
+ .modeTypeItem:hover{
+ .rejectList, .usedList {
+ top: -1px;
+ .editItem{
+ .editItemDis{
+ color: #aaa;
+.usrContain .selectReject,.usrContain .selectModuleType ,.managerContainer .selectModuleType {
+.usrContain .rejectList,.usrContain .usedList{
+.usrContain .selectModuleType, .usrContain .moduleItemInp, .usrContain .selectUsed, .usrContain .selectReject {
+.managerContainer .moduleTypeList {
+.managerContainer.usrContain .moduleTypeList {
+ height: 400px;
+.managerContainer.usrContain .selectReject {
+.partDetail {
+.partDetailControl {
@@ -0,0 +1,380 @@
+.payDetail {
@@ -7,20 +8,10 @@ ul,li{
list-style: none;
- font-weight: bold ;
+ .h2
- margin: 20px 0;
+ margin: 10px 0;
padding: 0 35px;
min-width: 1090px;
/*width: 100%;*/
@@ -30,14 +21,13 @@ table{
- thead{
+ thead th{
+ padding:6px 10px;
@@ -96,7 +86,7 @@ table{
.recordScoreOperaBtn{
.recordScoreBtn{
@@ -107,27 +97,27 @@ table{
-.filterBox{
+/*.filterBox{
margin-bottom: 15px;
+}*/
- margin: 0 20px 15px 0;
+ margin: 0 20px 5px 0;
span{
width:120px;
@@ -135,6 +125,13 @@ table{
padding: 0 10px;
+ input:focus{
@@ -168,7 +165,7 @@ table{
@@ -178,24 +175,25 @@ table{
-.filter{
+.filter,.reset{
top: 2px;
+ margin: 0 20px 22px 0;
.iconCheck{
@@ -222,7 +220,7 @@ table{
width: 120px;
@@ -230,14 +228,14 @@ table{
.iconCalen{
width: 15px;
- top: 12px;
+ top: 8px;
.textCenter{
.patientNameSpan{
@@ -250,6 +248,9 @@ table{
text-overflow:ellipsis;
+.unSelect{
+ color: #cfccd6
.pagination{
@@ -283,11 +284,13 @@ table{
.ui-datepicker-calendar {
border: 0 none;
min-width: 0;
@@ -327,7 +330,7 @@ table{
top: 5px;
.ui-state-active, .ui-widget-content .ui-state-active {
- background-color: #5a8eee !important;
.ui-state-highlight, .ui-widget-content .ui-state-highlight {
@@ -343,7 +346,7 @@ input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
input[type="number"] {
-moz-appearance: textfield;
@@ -169,7 +166,7 @@ table{
@@ -179,24 +176,25 @@ table{
@@ -223,7 +221,7 @@ table{
@@ -231,14 +229,14 @@ table{
@@ -251,6 +249,9 @@ table{
@@ -284,7 +285,7 @@ table{
@@ -328,7 +329,7 @@ table{
@@ -191,24 +188,25 @@ table{
@@ -243,14 +241,14 @@ table{
@@ -263,6 +261,9 @@ table{
@@ -296,7 +297,7 @@ table{
@@ -340,7 +341,7 @@ table{
@@ -1,11 +1,10 @@
@import './reset.less';
.main-part{
- margin-top: 20px;
#loading{
- margin-top: 30px;
+ /*margin-top: 30px;*/
@@ -13,44 +12,55 @@
.patient-info{
- // height: 50px;
+ /*height: 50px;*/
line-height: 50px;
- margin-top: 10px;
+ border-bottom: 1px #E2E5EF solid;
+ margin-bottom: 20px;
margin-right: 40px;
-#patientInfo{
- text-align: center;
- background:linear-gradient(123deg,#5A8EEE 0%,#7EABFF 100%);
- span{
.sub-menu{
width: @menuWt;
border-right: 1px @frameBdColor solid;
+ .logo{
+ margin:5px 0 44px;
+ text-indent: 22px;
+ &>a{
+ z-index: 1;
+ &>ul>li{
.active{
color: @activeColor;
- background: @activeBg;
- border-right: 3px @activeColor solid;
+ /*background: @activeBg;
+ border-right: 3px @activeColor solid;*/
.page:hover{
.list-1{
- p:hover{
- color: @activeColor;
&:after{
content: " ";
@@ -69,6 +79,10 @@
li.page{
text-indent: 30px;
+ &.active{
@@ -80,16 +94,43 @@
.copy-right{
position: fixed;
bottom: 0px;
- width: @menuWt+(-18px);
+ width: @menuWt;
font-size:12px;
- color: #aaa;
- background: #fff;
+ color: #F0F0F0;
padding: 10px 0 20px;
+ border-top: 1px @themeBorderClr solid;
+.menu-mini{
+ width: 60px;
+ background: url("../images/icon3.png") center no-repeat;
+ & ul{
+ left: 60px;
+ &.YH-KZT{
+ &.YH-QBYH-JCGN{
+ background: url("../images/icon2.png") center no-repeat;
+ border-left: 3px @activeColor solid;
.tab-container{
- margin-left: @menuWt+10px;
+ margin-left: @menuWt;
.content-box{
width:78%;
@@ -199,7 +240,7 @@
.cont{
min-width: 33%;
- margin-bottom: 15px;
+ margin-bottom: 5px;
padding-left: 5px;
&.active{
@@ -295,7 +336,7 @@
text-indent: 5px;
.title{
@@ -410,13 +451,13 @@
.slide-up{
&:before{
width: 14px;
content: "-";
font-size: 18px;
&.down:before{
@@ -436,7 +477,7 @@
}*/
@@ -0,0 +1,295 @@
+.quexianDetail{
+ .rejectList {
+ height: 80px !important;
+.quexianDetailControl{
+.quexianXQ {
@@ -94,13 +94,30 @@ textarea {
@headerHt:50px; /*logo栏高度*/
@menuLiHt:40px; /*菜单项高度*/
@menuWt:205px; /*菜单宽度*/
-@activeColor:#5A8EEE; /*菜单项选中颜色*/
-@activeBg:#EEF4FF; /*菜单项选中背景*/
+@themeColor:#203463; //主题背景色
+@themeFontClr:#fff; //主题字体色
+@themeBorderClr:#4A5D8E; //主题边框色
+@activeColor:#00A1FF; /*菜单项选中颜色*/
+@activeBg:#142753; /*菜单项选中背景*/
@borderColor:#E2E5EF; /**边框颜色**/
@frameBdColor:#F0F0F0;/***框架边框颜色**/
@warnColor:#FF4D4F; /**重点红色**/
@thBgColor:#EFF0F9; /**标题背景色**/
@tableBorderColor:#E2E5EF; /**表格边框**/
+.h2{
+ /*box-sizing: border-box;*/
+ /*padding: 0 0 0 15px;*/
+ border-bottom: 10px solid #F5F6FA;
+ text-indent: 20px;
/****弹窗样式*****/
@@ -233,7 +250,7 @@ textarea {
text-decoration: none;
.sure {
border-color: #1E9FFF;
@@ -245,6 +262,7 @@ textarea {
.divModal {
.modaltip {
@@ -288,3 +306,120 @@ input:-moz-placeholder{ /* Mozilla Firefox 4 to 18 */
input:-ms-input-placeholder{ /* Internet Explorer 10-11 */
color:#ccc;
+ top: 0;
+ a {
+ opacity: 70%;
+.filterBox {
+ /*.filter {
+ background:#fff;
+ border: 1px solid #777;
+ margin-left: 5px;
+.filterclearT {
+ height: 30px !important;
+ line-height: 32px !important;
+.goHomeDetail {
@@ -1,3 +1,5 @@
.leftMenu {
padding: 20px;
@@ -22,8 +24,8 @@
// width: 52px;
// height: 30px;
// line-height: 30px;
- // color: #5A8EEE;
- // border: 1px solid #5A8EEE;
+ // color: @activeColor;
+ // border: 1px solid @activeColor;
// border-radius: 4px;
// text-align: center;
// position: relative;
@@ -59,7 +61,7 @@
line-height: 36px;
margin-top: 10px;
+.tiaomu{
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta http-equiv="X-UA-Compatible" content="ie=edge">
+ <title>异常数据监控</title>
+</head>
+<body>
+ <div class="container abnormal">
+ <div class="partTitle">
+ <p><span></span>异常数据监控</p>
+ <div class="monthYear">
+ <span class="mon">本月</span>
+ <span class="year">本年</span>
+ </div>
+ <div class="dateDetail fr">
+ <div class="partTitleT"></div>
+ <div class="grayLine"></div>
+ <div class="main-body">
+ <div class="filterBox clearfix">
+ <span class="filterItem typeFilter">
+ <span>病人住院序号:</span>
+ <input class="patientNumInp" style="width: 148px;" type="text" placeholder="请输入病人住院序号">
+ </span>
+ <span class="filterItem typeFilter deptListWrap">
+ <span>异常归属模块:</span>
+ <span class="selectDept">
+ 全部
+ <ul class="deptList filterDropList">
+ <li class="deptItem " data-id=" " data-name="全部">全部</li>
+ <li class="deptItem ellipsis" title="数据模块" data-id="1" data-name="数据模块">数据模块</li>
+ <li class="deptItem ellipsis" title="质控类型" data-id="2" data-name="质控类型">质控类型</li>
+ <li class="deptItem ellipsis" title="XML结构" data-id="3" data-name="XML结构">XML结构</li>
+ </ul>
+ <span class="filterItem">
+ <span>状态:</span>
+ <span class="selectLevel">全部</span>
+ <ul class="levelList filterDropList">
+ <Li class="levelItem" data-name="全部" data-id=" ">全部</Li>
+ <Li class="levelItem" data-name="未处理" data-status="0" data-id="0">未处理</Li>
+ <Li class="levelItem" data-name="已处理" data-status="1" data-id="1">已处理</Li>
+ <span class="filter">查询</span>
+ <span class="filterclear abnormalClear">重置</span>
+ <div>
+ <table>
+ <thead>
+ <th class="moduleName" style="width: 65px;">序号</th>
+ <th class="beHospitalId textCenter">创建时间</th>
+ <th class="beHospitalId textCenter">病人住院序号</th>
+ <th class="patientNo textCenter" >异常归属模块</th>
+ <th class="patientName textCenter" style="width: 100px;">异常说明</th>
+ <th class="patientSex textCenter" >状态</th>
+ <th class="patientage textCenter" >备注</th>
+ <th class="patientage textCenter" style="width: 150px;">操作</th>
+ </thead>
+ <tbody>
+ </tbody>
+ </table>
+ <!--<div class="tabFoot">
+ <span class="scoreOpera" data-selectAll=false><img class="iconCheck" src="" alt="checkbox">全选</span>
+ <span class="recordScoreBtn">评分</span>
+ </div>-->
+ <div class="pagination"></div>
+</body>
+</html>
@@ -17,7 +17,7 @@
</div>
<div class="partTitleT"></div>
- <div class="grayLine"></div>
+ <!--<div class="grayLine"></div>-->
<div class="partWrap clearfix">
<div class="part01 fl">
@@ -124,7 +124,7 @@
<div class="pubEchartB paymoney">
<p class="title">各科室质控平均分柱状图</p>
- <div id="barChartPay" class="barChartPay"></div>
+ <div id="barChartPay" class="barChartPay" style="height: 217px;"></div>
@@ -0,0 +1,62 @@
+ <title>科室平均住院天数</title>
+ <div class="container dayDetail">
+ <p><a href="console.html">控制台 / </a>科室平均住院天数</p>
+ <span>科室名称:</span>
+ <input class="patientNumInp" style="width: 148px;" type="text" placeholder="请输入科室名称">
+ <!-- <span class="filterItem typeFilter deptListWrap">
+ <span>时间类型:</span>
+ <span class="selectDept" data-id="1">本月平均住院天数</span>
+ <li class="deptItem ellipsis" title="本月平均住院天数" data-id="1" data-name="本月平均住院天数">本月平均住院天数</li>
+ <li class="deptItem ellipsis" title="上月平均住院天数" data-id="2" data-name="上月平均住院天数">上月平均住院天数</li>
+ <li class="deptItem ellipsis" title="去年本月平均住院天数" data-id="3" data-name="去年本月平均住院天数">去年本月平均住院天数</li>
+ </span> -->
+ <!-- <span class="filterItem dayFilter">
+ <span class="selectLevel" data-id="1">本年平均住院天数</span>
+ <Li class="levelItem" data-name="本年平均住院天数" data-status="1" data-id="1">本年平均住院天数</Li>
+ <Li class="levelItem" data-name="去年平均住院天数" data-status="2" data-id="2">去年平均住院天数</Li>
+ <table class="tableDay">
@@ -0,0 +1,124 @@
+ <title>Document</title>
+<body class="console">
+ <div class="partDept">
+ <ul class="clearfix">
+ <p><span></span><i></i>数据概览</p>
+ <div class="toggleSlide fr">
+ <p><span>平均住院天数</span><img src="../images/arrow_down.png" alt=""> </p>
+ <ul>
+ <li class="toggleAverge toggleSlide1" data-str="平均住院天数" data-type="1">平均住院天数</li>
+ <li class="toggleAverge toggleSlide2" data-str="平均住院花费" data-type="2">平均住院花费</li>
+ <div class="partWrap clearfix">
+ <div class="part01 fl">
+ <p class="partTitlePub clearfix">
+ <span class="name">出院人数统计</span>
+ <span class="personNum">总人数:</span>
+ </p>
+ <li>
+ <div class="lis">
+ <p class="numShow died"></p>
+ <p class="explainNum">死亡人数</p>
+ </li>
+ <li class="li03">
+ <p class="numShow patientNum"></p>
+ <p class="explainNum">手术病人数</p>
+ <div class="defect">
+ <p class="partTitlePub">各模块缺陷占比排名</p>
+ <div class="list">
+ <table class="qtable">
+ <div class="part02 fl">
+ <ul class="bingli clearfix">
+ <li class="fst">
+ <p class="numShow"></p>
+ <p class="explainNum">累计质控病历数</p>
+ <p class="explainNum">甲级病历</p>
+ <p class="explainNum">乙级病历</p>
+ <li class="four">
+ <p class="explainNum">丙级病历</p>
+ <div class="bingliLis clearfix">
+ <p>病历评分等级占比</p>
+ <div class="panPartPub panPart02">
+ <div class="fen" id="fen01"></div>
+ <p>甲级占比</p>
+ <div class="panPartPub panPart01">
+ <div class="fen" id="fen02"></div>
+ <p>乙级占比</p>
+ <div class="panPartPub panPart03">
+ <div class="fen" id="fen03"></div>
+ <p>丙级占比</p>
+ <div class="circleB circleBSingle clearfix">
+ <p class="title">条目缺陷占比</p>
+ <div id="emptyCircleB" class="emptyCircle"></div>
+ <div class="explainPan explainPanB">
+ <div class="circleBLis">
+ <div class="circleB homePage clearfix">
+ <p class="title">病案首页合格率占比</p>
+ <div id="lineChart" class="emptyCircle emptyLineCircle"></div>
+ <div class="circleB homePageNo clearfix">
+ <div id="emptyCircleBc" class="emptyCircle"></div>
+ <div class="explainPan explainPanc explainPanBc">
@@ -0,0 +1,74 @@
+ <title>科室缺陷占比</title>
+ <div class="container deptScoreDetail">
+ <p><a href="console.html">控制台 / </a>科室缺陷占比</p>
+ <span>医生名称:</span>
+ <input class="patientNumInp" style="width: 148px;" type="text" placeholder="请输入医生名称">
+ <span style="overflow:hidden">科室:</span>
+ <span class="selectDept ellipsis" data-id=" "><i>--</i></span>
+ <th class="beHospitalId textCenter">科室编码</th>
+ <th class="beHospitalId textCenter">主管医生</th>
+ <th class="beHospitalId textCenter">缺陷总数</th>
+ <th class="beHospitalId textCenter">质控平均分</th>
+ <th class="beHospitalId textCenter">质控病历数</th>
+ <th class="beHospitalId textCenter">甲级病历数</th>
+ <th class="beHospitalId textCenter">乙级病历数</th>
+ <th class="beHospitalId textCenter">丙级病历数</th>
+ <th class="beHospitalId textCenter">甲级率</th>
+ <th class="beHospitalId textCenter">乙级率</th>
+ <th class="beHospitalId textCenter">丙级率</th>
@@ -0,0 +1,77 @@
+ <title>各科室缺陷占比</title>
+ <div class="container deptScoreDetailControl">
+ <p><a href="console.html">控制台 / </a>各科室缺陷占比</p>
+ <span>病历等级数:</span>
+ <span class="selectDept" data-id="">全部</span>
+ <li class="deptItem ellipsis" title="全部" data-id="" data-name="全部">全部</li>
+ <li class="deptItem ellipsis" title="甲级病历数" data-id="甲级病历数" data-name="甲级病历数">甲级病历数</li>
+ <li class="deptItem ellipsis" title="乙级病历数" data-id="乙级病历数" data-name="乙级病历数">乙级病历数</li>
+ <li class="deptItem ellipsis" title="丙级病历数" data-id="丙级病历数" data-name="丙级病历数">丙级病历数</li>
+ <th class="beHospitalId textCenter">科室名称</th>
@@ -8,10 +8,10 @@
</head>
<script type="text/html" id="menuTmpl">
{{if subMenuList.length}}
- <li class="list-1"><p>${name}</p>
+ <li class="list-1 ${code}"><p>${name}</p>
{{else}}
{{if showStatus==1}}
- <li class="page" code="${code}">${name}
+ <li class="page ${code}" code="${code}">${name}
{{/if}}
<ul>
@@ -21,26 +21,52 @@
</ul>
</li>
</script>
+<script type="text/html" id="miniMenuTmpl">
+ {{if subMenuList.length}}
+ <li class="list-1 ${code}">
+ {{else}}
+ <li class="page ${code}" code="${code}">
+ {{/if}}
+ {{each subMenuList}}
+ <li class="page" code="${code}">${name}</li>
+ {{/each}}
+</script>
<body>
<div class="container">
- <div class="header clearfix">
- <div class="title fl">
- <img src="../images/logo.png" alt="logo" />
- <span>AI病案质控平台</span>
- </div>
- <div class="login fr">
- <a class="setting" id="userName" href="javascript:void(0);">***</a>
- <ul class="userAction">
- <li id="changeWord">修改密码</li>
- <li><a class="login-out" href="./login.html">退出</a></li>
- </ul>
<div class="main-body clearfix">
<div class="menu fl">
+ <div class="logo">
+ <img src="../images/lantone.png" alt="">
+ <!--<a href="javescript:void(0);" class="slide-hide">
+ <img src="../images/down.png" alt="">
+ </a>-->
<ul></ul>
- <div class="copy-right">©杭州朗通信息技术有限公司</div></div>
+ <div class="copy-right">©杭州朗通信息技术有限公司</div>
+ <div class="menu-mini fl">
+ <!--<a href="javescript:void(0);" class="slide-show">
+ <img src="../images/up.png" alt="">
+ <ul></ul>
<div class="main" id="mainBox">
+ <div class="header clearfix">
+ <div class="title fl">
+ <!--<img src="../images/logo.png" alt="logo" />-->
+ <span>AI病案质控平台</span>
+ <div class="login fr">
+ <a class="setting" id="userName" href="javascript:void(0);">***</a>
+ <ul class="userAction">
+ <li id="changeWord">修改密码</li>
+ <li><a class="login-out" href="./login.html">退出</a></li>
<iframe src="./console.html" frameborder="0" id="contentIframe"></iframe>
@@ -44,6 +44,7 @@
</span>
<span class="filter">查询</span>
<table>
<thead>
@@ -0,0 +1,53 @@
+ <title>各科室甲级病历占比</title>
+ <div class="container jiaji">
+ <p><a href="console.html">控制台 / </a>各科室甲级病历占比</p>
+ <th class="moduleItemName">科室名称</th>
+ <th class="moduleScore" style="width: 80px;">甲级病历占比</th>
@@ -7,36 +7,39 @@
<title>登录页</title>
- <div class="login">
- <div class="logoTop">
+ <div class="login clearfix">
+ <!--<div class="logoTop">
<img src="../images/lantone.png" alt="">
<span></span>
<i>AI病案质控平台</i>
- <div class="loginForm clearfix">
- <img src="../images/loginBg.png" class="loginBg" alt="">
+ <div class="bg fl">
<p class="title">AI病案质控平台</p>
- <div class="message">
- <p class="welcome">欢迎使用!</p>
- <div class="perPub">
- <p>用户名</p>
- <div class="iptWrap">
- <img src="../images/yonghu.png" alt="">
- <input type="text" placeholder="请输入用户名" id="username" value="" autocomplete="off">
+ <!--<div class="loginForm clearfix">-->
+ <div class="message fr">
+ <div class="inner">
+ <p class="welcome">欢迎使用!</p>
+ <div class="perPub">
+ <p>用户名</p>
+ <div class="iptWrap">
+ <img src="../images/yonghu.png" alt="">
+ <input type="text" placeholder="请输入用户名" id="username" value="" autocomplete="off">
- <br>
- <p>密码</p>
- <img src="../images/mima.png" alt="">
- <input type="text" placeholder="请输入密码" id="password" value="" autocomplete="off">
+ <br>
+ <p>密码</p>
+ <img src="../images/mima.png" alt="">
+ <input type="text" placeholder="请输入密码" id="password" value="" autocomplete="off">
+ <p class="waring"></p>
+ <div class="sureLogin">登录</div>
- <p class="waring"></p>
- <div class="sureLogin">登录</div>
+ <!--</div>-->
</body>
</html>
@@ -15,17 +15,21 @@
<div class="main-body">
<p class="totalSumBox">当前分数合计:<span class="totalSum"></span></p>
<div class="tableWrapper">
- <table>
- <thead>
- <th class="moduleNumber">序号</th>
- <th class="moduleName">模块名称</th>
- <th class="moduleScore">分值</th>
- <th class="moduleOpera">操作</th>
- </thead>
- <tbody>
- </tbody>
- </table>
+ <div class="tableTitle">
+ <tr>
+ <td class="moduleNumber">序号</td>
+ <td class="moduleName">模块名称</td>
+ <td class="moduleScore">分值</td>
+ <td class="moduleOpera">操作</td>
+ </tr>
+ <div class="tableInfo">
<!-- <div class="saveModuleBox">
+ <title></title>
+ <div class="managerContainer mukuai">
+ <p><a href="console.html">控制台 / </a>各模块缺陷占比</p>
+ <div class="filterBox">
+ <span>模块名称:</span>
+ <span class="">
+ <input class="moduleItemInp" type="text" placeholder="请输入模块名称">
+ <th class="moduleItemName">模块名称</th>
+ <th class="moduleScore" style="width: 80px;">缺陷占比</th>
+ <span>科室:</span>
+ <span class="selectDept" data-id=" "><i>--</i></span>
@@ -0,0 +1,65 @@
+ <title>病案首页合格率占比</title>
+ <div class="container partDetail">
+ <p><a href="console.html">控制台 / </a>病案首页合格率占比</p>
+ <span>主管医生:</span>
+ <input class="patientNumInp" style="width: 148px;" type="text" placeholder="请输入主管医生">
+ <span class="selectDept ellipsis" data-id=""><i>--</i></span>
+ <th class="beHospitalId textCenter">合格率</th>
+ <th class="beHospitalId textCenter">不合格率</th>
@@ -0,0 +1,67 @@
+ <div class="container partDetailControl">
+ <span>合格率:</span>
+ <li class="deptItem ellipsis" title="合格" data-id="合格" data-name="合格">合格</li>
+ <li class="deptItem ellipsis" title="不合格" data-id="不合格" data-name="不合格">不合格</li>
@@ -0,0 +1,75 @@
+ <title>科室平均住院花费</title>
+ <div class="container payDetail">
+ <p><a href="console.html">控制台 / </a>科室平均住院花费</p>
+ <span class="selectDept" data-id="1">本月平均住院花费</span>
+ <li class="deptItem ellipsis" title="本月平均住院花费" data-id="1" data-name="本月平均住院花费">本月平均住院花费</li>
+ <li class="deptItem ellipsis" title="上月平均住院花费" data-id="2" data-name="上月平均住院天数">上月平均住院花费</li>
+ <li class="deptItem ellipsis" title="去年本月平均住院花费" data-id="3" data-name="去年本月平均住院花费">去年本月平均住院花费</li>
+ <span class="filterItem dayFilter">
+ <span class="selectLevel" data-id="1">本年平均住院花费</span>
+ <Li class="levelItem" data-name="本年平均住院花费" data-status="1" data-id="1">本年平均住院花费</Li>
+ <Li class="levelItem" data-name="去年平均住院花费" data-status="2" data-id="2">去年平均住院花费</Li>
+ <th class="patientNo textCenter" >平均住院花费(元)</th>
@@ -24,8 +24,8 @@
<span class="filterItem typeFilter deptListWrap">
<span>科室:</span>
- <span class="selectDept">
- 全部
+ <span class="selectDept unSelect">
+ 选择科室
<ul class="deptList filterDropList"></ul>
@@ -39,27 +39,37 @@
<input class="doctorNumInp" type="text" placeholder="请输入医生工号">
<span class="filterItem typeFilter clearfix">
- <span class="fl">入院日期:</span>
+ <span class="fl">出院日期:</span>
<span class="datapickerBox fl"><input type="text" placeholder="请选择时间" id="datepicker" autocomplete="off" /></span>
<span class="divide fl">-</span>
<span class="datapickerBox fl"><input type="text" placeholder="请选择时间" id="datepicker2" autocomplete="off" /></span>
<span class="filterItem">
<span>病历等级:</span>
- <span class="selectLevel">全部</span>
+ <span class="selectLevel unSelect">选择病历等级</span>
<ul class="levelList filterDropList">
- <Li class="levelItem" data-name="全部" data-id="">全部</Li>
<Li class="levelItem" data-name="未评分" data-id="未评分">未评分</Li>
<Li class="levelItem" data-name="甲" data-id="甲">甲</Li>
<li class="levelItem" data-name="乙" data-id=乙>乙</li>
<li class="levelItem" data-name="丙" data-id=丙>丙</li>
+ <!-- <span class="reset">重置</span> -->
+ <span class="filterclear abnormalClear filterclearT">重置</span>
<div>
+ <td colspan="17">
+ <div class="tabFoot">
+ <span class="scoreOpera" data-selectAll=false><img class="iconCheck" src="../images/icon_unchecked.png" alt="checkbox">全选</span>
+ </td>
<th class="textCenter" ></th>
<th class="recordScoreOpera textCenter" style="width: 65px;">操作</th>
<th class="beHospitalId textCenter" code="behospital_code">病人住院序号</th>
@@ -82,14 +92,14 @@
</tbody>
<tfoot>
- <tr>
- <td colspan="17">
- <div class="tabFoot">
- <span class="scoreOpera" data-selectAll=false><img class="iconCheck" src="../images/icon_unchecked.png" alt="checkbox">全选</span>
- <span class="recordScoreBtn">评分</span>
- </td>
- </tr>
+ <!-- <tr>
+ </tr> -->
</tfoot>
</table>
<span class="filterItem typeFilter">
@@ -39,16 +39,15 @@
@@ -56,32 +55,42 @@
- <th class="textCenter" ></th>
- <th class="recordScoreOpera textCenter" style="width: 65px;">操作</th>
- <th class="beHospitalId textCenter" code="behospital_code">病人住院序号</th>
- <th class="patientNo textCenter" code="file_code">病案号</th>
- <th class="patientName textCenter" code="name" style="width: 100px;">病人姓名</th>
- <th class="patientSex textCenter" code="sex">性别</th>
- <th class="patientage textCenter" code="age">年龄</th>
- <th class="bedNum textCenter" code="bed_code">床号</th>
- <th class="inHospitalDate textCenter" code="behospital_date">入院日期</th>
- <th class="outHospitalDate textCenter" code="leave_hospital_date">出院日期</th>
- <th class="doctorName textCenter" code="beh_doctor_name">住院医生</th>
- <th class="doctorName textCenter" code="doctor_name">主管医生</th>
- <th class="doctorName textCenter" code="director_doctor_name">主任医生</th>
- <th class="deptName textCenter" code="beh_dept_name">科室</th>
- <th class="recordLevel textCenter" code="level">病历等级</th>
- <th class="recordScore textCenter" code="score_res">病历得分</th>
- <th class="scoreTime textCenter" code="grade_time">评分时间</th>
+ <th class="textCenter" ></th>
+ <th class="recordScoreOpera textCenter" style="width: 65px;">操作</th>
+ <th class="beHospitalId textCenter" code="behospital_code">病人住院序号</th>
+ <th class="patientNo textCenter" code="file_code">病案号</th>
+ <th class="patientName textCenter" code="name" style="width: 100px;">病人姓名</th>
+ <th class="patientSex textCenter" code="sex">性别</th>
+ <th class="patientage textCenter" code="age">年龄</th>
+ <th class="bedNum textCenter" code="bed_code">床号</th>
+ <th class="inHospitalDate textCenter" code="behospital_date">入院日期</th>
+ <th class="outHospitalDate textCenter" code="leave_hospital_date">出院日期</th>
+ <th class="doctorName textCenter" code="beh_doctor_name">住院医生</th>
+ <th class="doctorName textCenter" code="doctor_name">主管医生</th>
+ <th class="doctorName textCenter" code="director_doctor_name">主任医生</th>
+ <th class="deptName textCenter" code="beh_dept_name">科室</th>
+ <th class="recordLevel textCenter" code="level">病历等级</th>
+ <th class="recordScore textCenter" code="score_res">病历得分</th>
+ <th class="scoreTime textCenter" code="grade_time">评分时间</th>
</thead>
<tbody>
- <tfoot>
+ <!-- <tfoot>
<tr>
<td colspan="17">
<div class="tabFoot">
@@ -90,7 +99,7 @@
</td>
</tr>
- </tfoot>
+ </tfoot> -->
@@ -56,41 +55,51 @@
@@ -19,6 +19,19 @@
+ <script type="text/html" id="miniMenuTmpl">
+ {{if sonMode.length}}
+ <li class="page ${code}" code="${name}">
+ {{each sonMode}}
+ <li class="page" code="${name.replace(/[^\u4e00-\u9fa5|a-zA-Z0-9]+/g,'')}">${name}</li>
+ </script>
<script type="text/html" id="infoTmpl">
<span>病案号:${fileCode}</span>
<span>姓名:${name}</span>
@@ -550,18 +563,18 @@
<div class="flaw-item" code="${modelName.replace(/[^\u4e00-\u9fa5|a-zA-Z0-9]+/g,'')}">
<div class="title">
{{if info}}
- <a {{if pageKeyList[0]}} href="#anchor${pageKeyList[0]}" {{/if}}>${msg}(${info})</a>
+ <a {{if pageKeyList[0]}} anchors="${pageKeyList}" href="#anchor${pageKeyList[0]}" {{/if}}>${msg}(${info})</a>
- <a {{if pageKeyList[0]}} href="#anchor${pageKeyList[0]}" {{/if}}>${msg}</a>
+ <a {{if pageKeyList[0]}} anchors="${pageKeyList}" href="#anchor${pageKeyList[0]}" {{/if}}>${msg}</a>
- <div class="opers">
+ <div class="opers clearfix">
{{if score===0}}
- <p>评分:<span class="red">warn</span></p>
+ <p class="fl">评分:<span class="red">warn</span></p>
- <p>评分:<span class="red">-${score}</span></p>
+ <p class="fl">评分:<span class="red">-${score}</span></p>
- <div class="oper">
+ <div class="oper fr">
<a class="edit-flaw blue" code="${id}" href="javascript:void(0);" style="margin-right: 20px;">修改</a>
<a class="del-flaw red" code="${id}" href="javascript:void(0);">删除</a>
@@ -615,14 +628,26 @@
- <div class="patient-info" id="patientInfo"></div>
- <p id="loading">加载中,请稍候 ...</p>
<div class="main-part clearfix">
- <div class="sub-menu content-ht">
+ <div class="sub-menu">
<ul id="subMenu"></ul>
<div class="copy-right">©杭州朗通信息技术有限公司</div>
+ <!-- <a href="javescript:void(0);" class="slide-show">
<div class="tab-container clearfix">
+ <div class="patient-info" id="patientInfo"></div>
+ <p id="loading">加载中,请稍候 ...</p>
<div class="flaw-table"></div>
<div class="content-box fl" id="contentInfo"></div>
<div class="operation fr" id="flaws">
+ <title>缺陷详情</title>
+ <div class="managerContainer quexianDetail">
+ <p class="titlePic"></p>
+ <span>缺陷名称:</span>
+ <input class="moduleItemInp" type="text" placeholder="请输入缺陷名称">
+ <th class="moduleItemName">缺陷名称</th>
+ <th class="moduleItemName textCenter">数量</th>
+ <div class="managerContainer quexianDetailControl">
@@ -0,0 +1,70 @@
+ <div class="container quexianXQ">
+ <p><span></span>病案首页合格率占比</p>
+ <th class="patientNo textCenter" >平均住院天数</th>
@@ -0,0 +1,60 @@
+ <div class="managerContainer tiaomu">
+ <p><a href="console.html">控制台 / </a>条目缺陷占比</p>
+ <span>条目名称:</span>
+ <input class="moduleItemInp" type="text" placeholder="请输入条目名称">
+ <th class="moduleItemName">条目名称</th>
+ <th class="moduleItemName">数量</th>
@@ -39,6 +39,7 @@
</span> -->
@@ -0,0 +1,530 @@
+const $ = require('jquery');
+require("../css/abnormal.less");
+require('./modal.js');
+const {api} = require('./api.js')
+const {post,getCookie} = require('./utils.js')
+require('./../resource/jquery-ui/jquery-ui.min.js');
+require('./../resource/jquery-ui/jquery-ui.min.css');
+const iconCheck= require("./../images/icon_check.png")
+const iconUnCheck = require("./../images/icon_unchecked.png")
+const iconCalenBlue= require("./../images/icon_calen_blue.png")
+const iconCalenGrey= require("./../images/icon_calen_grey.png")
+const iconDown= require("./../images/arrow_down.png")
+const iconUp = require("./../images/arrow_up.png")
+const loadingImg = require("./../images/loading.gif")
+const arrowLeft= require("./../images/arrow_left.png")
+const arrowRight = require("./../images/arrow_right.png")
+$(".selectLevel").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+$(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+let tabList = [], name = "", behospitalCode="", behosDateStart="", level="",behosDateEnd="", scoreSum = 0,statisticsType=2,
+ nameTemp = "", behospitalCodeTemp="",levelTemp="", deptId="",deptIdTemp="", doctorName="", doctorNum="",doctorNameTemp="",doctorNumTemp="",
+ data_desc=[],data_asc=[];
+$(".abnormalClear").click(function(){
+ window.location.reload()
+})
+$('.datapickerBox').append(`<img class="iconCalen" src=${iconCalenGrey} />`)
+$('.iconCalen').on("mouseenter", function(e){
+ $(this).attr("src", iconCalenBlue)
+$('.iconCalen').on("mouseleave", function(e){
+ $(this).attr("src", iconCalenGrey)
+$('.iconCalen').on("click", function(e){
+ $(this).parent().find("input").focus()
+$('.recordScoreBtn').css("opacity",hasData('FUNC000017')?'1':'0.5')
+dateChange()
+//所有数据切换日期筛选
+function dateChange(){
+ $(".monthYear .mon").click(function(){
+ $(this).css({
+ backgroundColor:'#00A1FF',
+ color:'#fff'
+ }).siblings().css({
+ color:'#00A1FF',
+ backgroundColor:'#fff'
+ })
+ statisticsType = 1
+ getTabData(1)
+ $(".monthYear .year").click(function(){
+ statisticsType = 2
+//判断有无某一权限
+ function hasData(data){
+ let trdObj = JSON.parse(getCookie("trdObj"))
+ let lis = trdObj['YH-BLZK-ZKPF']
+ if(!lis){
+ return false
+ if(lis.indexOf(data)>-1){//有权限
+ return true
+ return false;
+function getTabData(activePage){
+ const param = {
+ current:activePage,
+ size: 15,
+ behospitalCode: behospitalCode||"",//病历号
+ type: deptId||"",//(1:数据模块 2:质控类型 3:XML结构)
+ status: level||"",//(0:未处理,1:已处理)
+ statisticsType: statisticsType||2, //1-本月,2-本年
+ post(api.getQcAnnormal,param).then(res =>{
+ if(res.data.code == '0'){
+ const data = res.data.data;
+ tabList = data.records;
+ const totalPage = data.pages;
+ const totalNum = data.total;
+ renderTab(tabList,data.hospitalId,activePage);
+ renderPagination(totalPage,Number(activePage),totalNum)
+ if(totalPage > 1){
+ } else{
+ $('.pagination').html("")
+ }else{
+ $.alerModal({"message":res.data.msg,type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+ }).catch((e) =>{
+getTabData(1)
+$(".filter").on("click", function(e){
+ name = nameTemp
+ behospitalCode = behospitalCodeTemp
+ level = levelTemp
+ deptId = deptIdTemp
+function renderTab(data,hisId,activePage){
+ let str = ``
+ for(let i = 0; i < data.length; i++){
+ const item = data[i]
+ str += `
+ <tr data-index=${i}>
+ <td class="textCenter">${(activePage-1)*15 + i+1}</td>
+ <td>${item.gmtCreate || "-"}</td>
+ <td>${item.behospitalCode || "-"}</td>
+ <td >${item.typeName || "-"}</td>
+ <td>${item.description || "-"}</td>
+ <td>${item.statusName || "-"}</td>
+ <td>${item.remark || "-"}</td>
+ <td class="textCenter">
+ <span data-index="${i}" data-type="1" class="patientNameSpan">修改</span>
+ <span data-index="${i}" data-type="2" class="patientNameSpan patientNameSpans">删除</span>
+ `
+ $('tbody').html(str?str:'<tr><td colspan="17" style="text-align: center;color: #aaa">暂无数据~</td></tr>')
+ bindScoreDetail(hisId)
+function scoreDetail(id,age,hid,code){
+ window.open(`./qcScore.html?id=${id}&age=${age}&hid=${hid}&code=${code}`)
+function bindScoreDetail(hisId){
+ $('.patientNameSpan').on('click',function(e){
+ const index = $(this).attr("data-index")
+ const type = $(this).attr("data-type")
+ const item = tabList[index]
+ midifyMsgBox(item,type)
+function midifyMsgBox(item,type){
+ const itemCopy = JSON.parse(JSON.stringify(item))
+ let msgBox = ''
+ if(type == 1){
+ msgBox = `<div class="midifyMsgBox">
+ <div class="mask"></div>
+ <div class="midifyMsgContent abnormal">
+ <p class="midifyMsgTitle">修改 <img class="iconClose" src=${require('./../images/icon_close_default.png')} alt="关闭" /></p>
+ <div class="itemMsgInfoBox">
+ <span class="itemMsgLab abnormalLeft">状态:</span>
+ <span class="abnormalAll" data-status="${itemCopy.status}">${itemCopy.status == 0?"未处理":"已处理"}<img class="arrow" src=${iconDown} alt="下拉"></span>
+ <ul class="abnormalStatusLis">
+ <li data-status="0">未处理</li>
+ <li data-status="1">已处理</li>
+ <span class="itemMsgLab abnormalLeft abnormalMark">备注:</span>
+ <span class="itemInfoRight">
+ <textarea class="abnormalTxt" placeholder="请输入内容" >${itemCopy.remark}</textarea>
+ <div class="itemMsgInfoTips">支持≥0的数字输入,最多保留小数点后1位~</div>
+ <div class="midifyMsgBtn abnormalBtn">
+ <span class="midifyEdit">保存</span>
+ </div>`
+ <div class="midifyMsgContent midifyMsgContentDel">
+ <p class="midifyMsgTitle">删除记录<img class="iconClose" src=${require('./../images/icon_close_default.png')} alt="关闭" /></p>
+ <p class="delTips">确认要删除该条异常记录?</p>
+ <div class="midifyMsgBtn midifyMsgBtnDel">
+ <span class="midifyEdit midifyEditDel">确定</span>
+ $("#mainBox", parent.document).append(msgBox)
+ $(".midifyEditDel", parent.document).on("click",function(){
+ delModifyOne(itemCopy)
+ $(".midifyEditQuit", parent.document).on("click",function(){
+ $("#mainBox .midifyMsgBox", parent.document).remove()
+ $(".abnormalAll", parent.document).on("click",function(){
+ $(".abnormalStatusLis", parent.document).slideToggle()
+ $(".abnormalStatusLis li", parent.document).on("click",function(){
+ let status = $(this).attr("data-status")
+ let str = $(this).html()
+ $(".abnormalAll", parent.document).attr("data-status",status).html(str+`<img class="arrow" src=${iconDown} alt="下拉"></img>`)
+ $("#mainBox .midifyMsgBox .iconClose", parent.document).on("click", function(e){
+ $("#mainBox .midifyMsgBox .itemScore", parent.document).on("keypress", function(event){
+ return (/[\d\.]/.test(String.fromCharCode(event.keyCode)))
+ $("#mainBox .midifyMsgBox .itemScore", parent.document).on("input", function(e){
+ const val = $(this).val()
+ itemCopy.score = val
+ $("#mainBox .midifyMsgBox .midifyEdit", parent.document).on("click", function(e){
+ saveModifyOne(itemCopy)
+//保存修改
+function delModifyOne(itemCopy){
+ let param = {
+ "id": itemCopy.id
+ post(api.delQcAnnormal,param).then(res =>{
+ $.alerModal({"message":'删除成功',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+function saveModifyOne(itemCopy){
+ let txt = $(".abnormalTxt", parent.document).val()
+ let status = $(".abnormalAll", parent.document).attr("data-status")
+ "id": itemCopy.id,
+ "remark": txt,
+ "status": status
+ post(api.saveQcAnnormal,param).then(res =>{
+ $.alerModal({"message":'修改成功',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+//选择病历等级
+$('.selectLevel').on("click", function(e){
+ e.stopPropagation()
+ $(".deptList ").css("display", "none")
+ $(".selectDept .arrow").attr("src",iconDown)
+ const showList = $(".levelList ").css("display")
+ if(showList == "none" ||!showList){
+ $(".levelList ").css("display","block")
+ $(".selectLevel .arrow").attr("src",iconUp)
+ $(".levelList ").css("display", "none")
+ $(".selectLevel .arrow").attr("src",iconDown)
+bindLeveldSelect()
+//是否启用选择
+function bindLeveldSelect(){
+ $('.levelItem').on("click",function(){
+ const levelItemName = $(this).attr("data-name")
+ const levelItemItemId = $(this).attr("data-id")
+ levelTemp =levelItemItemId
+ $('.selectLevel').html(levelItemName)
+ $(".levelList").css("display", "none")
+ $(".selectLevel").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+//全选绑定
+$('.selectDept').on("click", function(e){
+ $(".levelList ").css("display","none")
+ const showList = $(".deptList ").css("display")
+ $(".deptList ").css("display","block")
+ $(".selectDept .arrow").attr("src",iconUp)
+function rendeDeptList(deptList){
+ let str = `<li class="deptItem " data-id=" " data-name="全部">全部</li>`
+ for(let i = 0; i < deptList.length; i++){
+ str += `<li class="deptItem ellipsis" title=${deptList[i].deptName} data-id=${deptList[i].deptId} data-name=${deptList[i].deptName}> ${deptList[i].deptName}</li>`
+ $('.deptList').html(str)
+bindDeptSelect()
+//科室选择
+function bindDeptSelect(){
+ $('.deptItem').on("click",function(){
+ const deptItemName = $(this).attr("data-name")
+ const deptItemId = $(this).attr("data-id")
+ deptIdTemp =deptItemId
+ if(deptItemName.length > 10){
+ $('.selectDept').html(deptItemName.substring(0,8)+'...')
+ $('.selectDept').html(deptItemName)
+ $('.selectDept ').attr('title',deptItemName)
+ $(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+ $(".deptList").css("display", "none")
+function loading(){
+ const str = `
+ <div class="loadingBox">
+ <img class="loadingImg" src=${loadingImg} alt="loading" />
+ $("#mainBox", parent.document).append(str)
+function hideLoading(){
+ $("#mainBox .loadingBox", parent.document).remove()
+$('.recordScoreBtn').on("click",function(e){
+ if(!hasData('FUNC000017')){
+ return
+ let scoreList = []
+ for(let i = 0; i <tabList.length; i++){
+ if(tabList[i].hasSelect){
+ scoreList.push(tabList[i].behospitalCode)
+ if(scoreList.length === 0){
+ $.alerModal({"message":'请选择要评分的项!',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+ loading()
+ for(let j = 0; j < scoreList.length; j++){
+ recordScore(scoreList[j],scoreList.length)
+$("th[code]").on("click",function(e){
+ const code=$(this).attr("code");
+ if(data_asc[0]===code){
+ data_desc=[code];
+ data_asc=[];
+ $("th[code]").removeClass("asc desc");
+ $(this).addClass("desc");
+ data_desc=[];
+ data_asc=[code];
+ $(this).addClass("asc");
+ getTabData(1);
+});
+function recordScore(behospitalCode,totalNum){
+ behospitalCode: behospitalCode
+ post(api.recordScore,param).then(res =>{
+ scoreSum++
+ if(scoreSum === totalNum){
+ hideLoading()
+ scoreSum = 0
+ const activePage = $(".activePage").attr('data-page') || 1
+ getTabData(activePage)
+ }else{}
+$(".patientNumInp").on("input", function(e){
+ const val = $(this).val().trim()
+ behospitalCodeTemp = val
+$(".patientNameInp").on("input", function(e){
+ nameTemp = val
+$(".doctorInp").on("input", function(e){
+ doctorNameTemp = val
+$(".doctorNumInp").on("input", function(e){
+ const val = $(this).val().trim();
+ doctorNumTemp = val
+$(function() {
+ $.datepicker.regional['zh-CN'] = {
+ clearText: '清除',
+ clearStatus: '清除已选e799bee5baa6e59b9ee7ad9431333361303131日期',
+ closeText: '关闭',
+ closeStatus: '不改变当前选择',
+ prevText: '<上月',
+ prevStatus: '显示上月',
+ prevBigText: '<<',
+ prevBigStatus: '显示上一年',
+ nextText: '下月>',
+ nextStatus: '显示下月',
+ nextBigText: '>>',
+ nextBigStatus: '显示下一年',
+ currentText: '今天',
+ currentStatus: '显示本月',
+ monthNames: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
+ monthNamesShort: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
+ yearNamesShort: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
+ monthStatus: '选择月份',
+ yearStatus: '选择年份',
+ weekHeader: '周',
+ weekStatus: '年内周次',
+ dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
+ dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
+ dayNamesMin: ['日','一','二','三','四','五','六'],
+ dayStatus: '设置 DD 为一周起始',
+ dateStatus: '选择 m月 d日, DD',
+ dateFormat: 'yy-mm-dd',
+ firstDay: 1,
+ initStatus: '请选择日期',
+ isRTL: false};
+ $.datepicker.setDefaults($.datepicker.regional['zh-CN']);
+ $( "#datepicker" ).datepicker({
+ changeMonth: true,
+ changeYear: true,
+ dateFormat:"yy/mm/dd"
+ });
+ $( "#datepicker2" ).datepicker({
+//分页渲染
+function renderPagination(totalPage,activePage,totalNum){
+ let str = `<span class="totalSum">共${totalPage}页/${totalNum}条数据</span><span class="prePage"><img class="arrowPage" src=${arrowLeft} /></span>`
+ if(totalPage <= 6){
+ for(let i = 1; i <= totalPage; i++){
+ str += `<span class="pageNum ${'page'+i}" data-page=${i}>${i}</span>`
+ if(activePage <= 3){ //选中页数小于4
+ for(let i = 1; i <= 4; i++){
+ str += `<span class="more" >...</span>`
+ str += `<span class="pageNum ${'page'+totalPage}" data-page=${totalPage}>${totalPage}</span>`
+ } else if(activePage > totalPage -3){
+ str += `<span class="pageNum page1" data-page=1>1</span>`
+ str += `<span class="pageNum ${'page'+(totalPage-3)}" data-page=${totalPage -3}>${totalPage -3}</span>`
+ str += `<span class="pageNum ${'page'+(totalPage-2)}" data-page=${totalPage -2}>${totalPage -2}</span>`
+ str += `<span class="pageNum ${'page'+(totalPage-1)}" data-page=${totalPage -1}>${totalPage -1}</span>`
+ } else {
+ str += `<span class="pageNum ${'page'+(activePage -1)}" data-page=${activePage -1}>${activePage -1}</span>`
+ str += `<span class="pageNum ${'page'+activePage}" data-page=${activePage}>${activePage}</span>`
+ str += `<span class="pageNum ${'page'+(activePage +1)}" data-page=${activePage +1}>${activePage +1}</span>`
+ str += `<span class="nextPage"><img class="arrowPage" src=${arrowRight} /></span>`
+ $('.pagination').html(str)
+ $('.page' + activePage).addClass('activePage')
+ $(".pageNum").on("click", function(e){
+ const activePageNow = Number($(this).attr('data-page'))
+ getTabData(activePageNow)
+ // renderPagination(totalPage,activePageNow,totalNum)
+ $(".prePage").on("click", function(e){
+ let activePageNow = Number($(".activePage").attr('data-page'))
+ if(activePageNow > 1){
+ activePageNow--
+ $(".nextPage").on("click", function(e){
+ if(activePageNow < totalPage){
+ activePageNow++
+$(document).on("click", function(){
+$((function($){
+})($));
@@ -1,5 +1,14 @@
const api = {
+ getMenu:'/sys/user/getUserOrgMenu', //获取菜单
+ midifyPassword:'/sys/user/midifyPassword', //修改密码
+ getSubMenu:'/qc/mode/getMenu', //获取质控评分菜单
+ delScore:'/qc/behospitalInfo/delCase' ,//删除评分项
+ editScore:'/qc/behospitalInfo/updCase' ,//修改评分
+ addScore:'/qc/behospitalInfo/addCase' ,//添加评分项
+ getRecordDetail:'/qc/behospitalInfo/getByBehospitalCode', //获取病例明细
+ getInfoModule:'/qc/module/getById',
+ getModuleById:'/qc/module/getModuleMap',
getQcCases:'/qc/cases/getQcCases',
getQcCasesAll:'/qc/casesEntryHospital/getQcCasesAll',
getQcCasesEntryAll:'/qc/casesEntryHospital/getQcCasesEntryAll',
@@ -13,7 +22,51 @@ const api = {
getDeptList:'/bas/dept/getList',
getDeptListUser:'/bas/dept/listForUser',
getDeptListDept:'/bas/dept/getListUser',
+ getAverageDayNum:'/console/getAverageDayNum',//平均住院天数
+ getAverageFee:'/console/getAverageFee',//平均住院费用
+ getAverageScore:'/console/getAverageScore',//各科室质控平均分
+ leaveHosCount:'/console/leaveHosCount',//出院人数统计
+ mrCount:'/console/mrCount',//质控病历统计
+ entryCountGroupByCase:'/console/entryCountGroupByCase',//各模块缺陷占比排行
+ getLevelResultDept:'/console/getLevelResultDept',//各科室甲级占比
+ entryCountGroupByEntry:'/console/entryCountGroupByEntry',//条目缺陷占比
+ entryByDept:'/console/entryByDept',//各科室缺陷占比
+ getDept:'/consoleByDept/getDept',//获取科室列表
+ leaveHosCountByDept:'/consoleByDept/leaveHosCountByDept',//出院人数统计
+ mrCountByDept:'/consoleByDept/mrCountByDept',//质控病历统计
+ getJwt:'/sys/user/getJwt',//登录
+ getRoleMenu:'/sys/role/getRoleMenu',//获取角色菜权限单等数据
+ list:'/sys/role/list', //获取角色列表信息
+ userPage:'/sys/user/userPage',
+ getUserDepts:'/sys/user/getUserDepts',
+ getUserRoles:'/sys/user/getUserRoles',
+ disable:'/sys/user/disable',
+ enable:'/sys/user/enable',
+ editUserDepts:'/sys/user/editUserDepts',
+ editUserRoles:'/sys/user/editUserRoles',
+ listForUserRole:'/sys/role/listForUser',
+ saveRoleMenu:'/sys/role/saveRoleMenu',//修改角色菜单权限数据
+ entryCountGroupByEntryAndDept:'/consoleByDept/entryCountGroupByEntryAndDept',//条目缺陷占比
+ entryCountGroupByCaseAndDept:'/consoleByDept/entryCountGroupByCaseAndDept',//各模块缺陷占比排行
+ entryCountGroupByEntryAndDeptPage:'/consoleByDept/entryCountGroupByEntryAndDeptPage',//条目明细(科室)
+ entryCountGroupByCaseAndDeptPage:'/consoleByDept/entryCountGroupByCaseAndDeptPage',//模块缺陷占比明细(科室)
+ entryCountGroupByEntryPage:'/console/entryCountGroupByEntryPage',//条目明细
+ entryCountGroupByCasePage:'/console/entryCountGroupByCasePage',//模块缺陷占比明细
+ getAverageDayNumPage:'/console/getAverageDayNumPage',//住院天数详情
+ getAverageFeePage:'/console/getAverageFeePage',//花费详情
+ delQcAnnormal:'/qc/abnormal/delQcAnnormal',//异常数据删除
+ getQcAnnormal:'/qc/abnormal/getQcAnnormal',//异常数据查询
+ saveQcAnnormal:'/qc/abnormal/saveQcAnnormal',//异常数据修改
+ resultStatisticsByDeptPage:'/console/resultStatisticsByDeptPage',//各科室缺陷占比排行(分页)
+ levelPercentGroupByDeptPage:'/console/levelPercentGroupByDeptPage',//甲级科室缺陷占比排行(分页)台州
+ levelStatistics:'/console/levelStatistics',//科室缺陷占比排行(组合全局)
+ homePageLevelStatistics:'/console/homePageLevelStatistics',//病案首页合格率占比
+ homePageLevelLimit:'/console/homePageLevelLimit',//病案首页合格率占比
+ homePageLevelByDeptLimit:'/consoleByDept/homePageLevelStatisticsByDept',//病案首页合格率占比keshi详情
+ homePageLevelStatisticsByDept:'/consoleByDept/homePageLevelByDeptLimit',//病案首页合格率占比(科室)-内页
+ levelStatisticsByDept:'/consoleByDept/levelStatisticsByDept',//科室缺陷占比排行
+ resultStatisticsByDeptAndDoctorPage:'/consoleByDept/resultStatisticsByDeptAndDoctorPage'//缺陷明细-科室(分页)-内页
module.exports = {
api
-};
+};
@@ -5,14 +5,20 @@ require("../images/logo.png")
require("../images/arrow_down.png")
// import 'zrender/lib/svg/svg';
const echarts = require('echarts');
const {post,setCookie,delCookie,getCookie} = require('../js/utils.js');
-let payMoney = [],dayLis = [],dateType = 2,slideType = 1;
+let payMoney = [],dayLis = [],dateType = 2,slideType = 1,hospital=getCookie("hospital");
$(function(){
if(!hasData('YH-KZT')){
$("body").html('')
- $(".partTitle p span").html(getCookie("hospital"))
+ if(hospital == "台州市立"){
+ $(".part03 .partTitlePub .name").html('各科室甲级病例占比')
+ $(".part03 .partTitlePub .name").html('病案首页合格率')
+ $(".partTitle p span").html(hospital)
setInterval(() => {
getTimeDetail()
}, 1000);
@@ -53,7 +59,30 @@ $(function(){
$(this).parent().slideToggle().prev().find("span").html(str)
})
+ getDetails()
+function getDetails(){
+ $(".part02 .bingli,.part02 .bingliLis,.part03 .circle .title,.pubEchartB.paymoney .title").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","deptScoreDetailControl.html")
+ $(".container",parent.document).removeClass("console-cont");
+ $(".part03 .partTitlePub").click(function(){
+ $(parent.document).find("#contentIframe").attr("src",hospital=="台州市立"?"jiaji.html":"partDetailControl.html")
+ $(".paymoney.pubEchart .title").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","dayDetail.html")
+ $(".defect .partTitlePub").click(function(){//from 1 console / 2 deptConsole
+ $(parent.document).find("#contentIframe").attr("src","mukuaiControl.html?from=1&dateType="+dateType)
+ $(".circleB .title").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","tiaomuControl.html?from=1&dateType="+dateType)
//判断有无某一权限
function hasData(data){
let lis = JSON.parse(getCookie("codeLis"))
@@ -72,22 +101,22 @@ function resizeBox(){
function dateChange(){
$(".monthYear .mon").click(function(){
$(this).css({
- backgroundColor:'#5A8EEE',
color:'#fff'
}).siblings().css({
- color:'#5A8EEE',
- backgroundColor:'#fff'
+ color:'#fff',
+ backgroundColor:'#203463'
dateType = 1
getBarData(1)
$(".monthYear .year").click(function(){
dateType = 2
getBarData(2)
@@ -134,9 +163,8 @@ function initConsole(result){
//获取图表数据
function getBarData(type){
- console.log(slideType,'797979898')
if(hasData('FUNC000045')){
- post('/console/getAverageDayNum',{//平均住院天数
+ post(api.getAverageDayNum,{//平均住院天数
"type": type||1//1月2年
}).then((res)=>{
let data = res.data;
@@ -152,7 +180,7 @@ function getBarData(type){
$(".toggleSlide1").css("opacity",0.5)
if(hasData('FUNC000046')){
- post('/console/getAverageFee',{//平均住院费用
+ post(api.getAverageFee,{//平均住院费用
@@ -168,7 +196,7 @@ function getBarData(type){
$(".toggleSlide2").css("opacity",0.5)
if(hasData('FUNC000047')){
- post('/console/getAverageScore',{//各科室质控平均分
+ post(api.getAverageScore,{//各科室质控平均分
@@ -183,8 +211,8 @@ function getBarData(type){
- if(hasData('FUNC000048')){
- post('/console/getLevelResultDept',{//各科室甲级占比
+ if(hasData('FUNC000048')&&hospital=="台州市立"){
+ post(api.getLevelResultDept,{//各科室甲级占比
@@ -199,8 +227,24 @@ function getBarData(type){
+ if(hasData('FUNC000075')&&hospital=="长兴医院"){
+ post(api.homePageLevelLimit,{//病案首页
+ "type": type||1//1月2年
+ }).then((res)=>{
+ let data = res.data;
+ if(data.code == 0){
+ let result1 = data.data||[]
+ let dataX1=[],dataY1=[]
+ for(let i = 0;i < result1.length;i++){
+ dataX1.push(result1[i].deptName)
+ dataY1.push(result1[i].firstLevelPercentStr.replace('%',''))
+ lineChartSpecial(dataX1,dataY1)
if(hasData('FUNC000049')){
- post('/console/leaveHosCount',{//出院人数统计
+ post(api.leaveHosCount,{//出院人数统计
@@ -213,7 +257,7 @@ function getBarData(type){
if(hasData('FUNC000050')){
- post('/console/mrCount',{//质控病历统计
+ post(api.mrCount,{//质控病历统计
let data = res.data
@@ -260,18 +304,19 @@ function getBarData(type){
if(hasData('FUNC000051')){
- post('/console/entryCountGroupByCase',{//各模块缺陷占比排行
+ post(api.entryCountGroupByCase,{//各模块缺陷占比排行
if(data.code == 0){
- let result1 = data.data['各模块缺陷占比排行']||[]
+ let result1 = data.data['各模块缺陷占比排行']||[];
+ result1.length>8?result1.length=8:"";
queList(result1)
if(hasData('FUNC000052')){
- post('/console/entryCountGroupByEntry',{//条目缺陷占比
+ post(api.entryCountGroupByEntry,{//条目缺陷占比
@@ -286,7 +331,7 @@ function getBarData(type){
if(hasData('FUNC000053')){
- post('/console/entryByDept',{//各科室缺陷占比
+ post(api.entryByDept,{//各科室缺陷占比
@@ -356,7 +401,7 @@ function part02pan(data,dom){
let color = ['#37CBCB','#dedede'];
let echartData = data;
option = {
- backgroundColor: bgColor,
+ //backgroundColor: bgColor,
color: color,
title: [{
text:'{val|' + echartData[0].percentStr + '}',
@@ -366,7 +411,7 @@ function part02pan(data,dom){
rich: {
val: {
fontSize: 14,
- color: '#333',
+ color: '#fff',
fontWeight: 'bold',
padding: [10, 0]
},
@@ -400,7 +445,7 @@ function lineChart(dataX,dataY){
myCharts.resize()
});
- color:"#5A8EEE",
+ color:"#00A1FF",
tooltip: {
trigger: 'axis',
color:'#fff',
@@ -421,7 +466,7 @@ function lineChart(dataX,dataY){
left: 0,
textStyle: {
- color:'#666666',
fontWeight: 400
}],
@@ -450,7 +495,7 @@ function lineChart(dataX,dataY){
data: dataX,
axisLabel: {//x轴刻度
- color: '#333'
+ color: '#fff'
rotate:'45',
formatter: function (value) {
@@ -463,7 +508,7 @@ function lineChart(dataX,dataY){
axisLine: {//x轴
lineStyle:{
- color:'#AAAAAA'
@@ -472,7 +517,7 @@ function lineChart(dataX,dataY){
axisLabel: {
formatter: '{value} %',
- color: '#333333'
@@ -498,6 +543,98 @@ function lineChart(dataX,dataY){
};
myCharts.setOption(option);
+function lineChartSpecial(dataX,dataY){
+ var myCharts = echarts.init(document.getElementById('lineChart'));
+ var lengthNum = dataX.length;
+ $(window).resize(function(){
+ myCharts.resize()
+ option = {
+ color: ['#3398DB'],
+ tooltip: {
+ trigger: 'axis',
+ position: 'right',
+ axisPointer: { // 坐标轴指示器,坐标轴触发有效
+ type: 'line' // 默认为直线,可选为:'line' | 'shadow'
+ },
+ grid: {
+ left: '3%',
+ right: '4%',
+ bottom: '3%',
+ containLabel: true
+ xAxis: [
+ {
+ type: 'category',
+ data: dataX,
+ axisTick: {
+ alignWithLabel: true
+ axisLabel: {//x轴刻度
+ textStyle: {
+ rotate:45,
+ formatter: function (value) {
+ //x轴的文字改为竖版显示
+ if(value.length>7){
+ return value.slice(0,7)+'...'
+ return value;
+ axisLine: {//x轴
+ lineStyle:{
+ ],
+ yAxis: [
+ type: 'value',
+ axisLine: {//y轴
+ show: false
+ axisLabel: {//y轴刻度
+ splitLine:{//分割线
+ color:'#4A5D8E'
+ title:[{
+ text: '合格率',
+ top: 15,
+ left: 10,
+ fontSize: 14,
+ fontWeight: 400
+ }],
+ series: [
+ name: '质控平均分',
+ type: 'bar',
+ barWidth: '23%',
+ data: dataY
+ ]
+ };
+ myCharts.setOption(option);
//柱状图住院费用
function barChartPay(dataX,dataY){
var myCharts = echarts.init(document.getElementById('barChartPay'));
@@ -529,7 +666,7 @@ function barChartPay(dataX,dataY){
rotate:45,
@@ -558,12 +695,12 @@ function barChartPay(dataX,dataY){
axisLabel: {//y轴刻度
splitLine:{//分割线
- color:'#EFF3FC'
@@ -575,7 +712,7 @@ function barChartPay(dataX,dataY){
left: 10,
@@ -689,7 +826,7 @@ function barChart(data,type){
data3.push(data[i].lastYearAverageValue)//去年本月
- color: ['#5A8EEE', '#FAD336', '#37CBCB'],
+ color: ['#00A1FF', '#FAD336', '#37CBCB'],
axisPointer: {
@@ -708,7 +845,7 @@ function barChart(data,type){
@@ -718,6 +855,9 @@ function barChart(data,type){
right:15,
top:15,
selectedMode:false,
+ textStyle:{
formatter: function (name) {
return name;
@@ -742,7 +882,7 @@ function barChart(data,type){
@@ -755,7 +895,7 @@ function barChart(data,type){
@@ -769,9 +909,14 @@ function barChart(data,type){
axisTick: {
show: false
@@ -810,7 +955,7 @@ function emptyCircle(data){
$(window).resize(function(){
myChart.resize()
- let bgColor = '#fff';
+ let bgColor = '#203463';
let title = '总量';
let color = ['#F2637B','#975FE4', '#399FFF', '#37CBCB', '#4CCB73','#FAD336','#F2637B','#975FE4', '#399FFF', '#37CBCB', '#4CCB73','#FAD336'];
@@ -819,7 +964,7 @@ function emptyCircle(data){
total += echartData[i].num
+ /*backgroundColor: bgColor,*/
text: data.length>0?'{val|' + total + '}\n{name|' + title + '}':'',
@@ -829,14 +974,14 @@ function emptyCircle(data){
fontSize: 24,
name: {
fontSize: 12,
fontWeight: 'normal',
- color: '#777',
@@ -904,7 +1049,7 @@ function emptyCircleB(data){
@@ -913,7 +1058,7 @@ function emptyCircleB(data){
@@ -923,14 +1068,14 @@ function emptyCircleB(data){
@@ -1006,8 +1151,8 @@ function queList(data){
for(let i = 0;i < data.length;i++){
strAll += `
- <td style="text-align:center;"><i style="background:${i < 3?'#bea571':'#eff3fc'};color:${i < 3?'#fff':'#999'};">${i+1}</i></td>
- <td>${data[i].name}</td>
+ <td style="text-align:center;"><i style="background:${i < 3?'#ECB22E':'#526186'};color:${i < 3?'#fff':'#B7BDCC'};">${i+1}</i></td>
+ <td><p class="td02name">${data[i].name}</p></td>
<td>${data[i].num}</td>
<td>${data[i].percentStr}</td>
@@ -0,0 +1,548 @@
+require("../css/dayDetail.less");
+$(".partTitle a").click(function(){
+ //初始菜单选中
+ $(".menu .page",parent.document).removeClass("active").eq(0).addClass("active");
+ $(".container",parent.document).addClass("console-cont");
+ name: behospitalCode||"",
+ type: statisticsType||2, //1-本月,2-本年
+ dateType: "",//(3-上月,4-去年本月,5-去年(必填))
+ post(api.getAverageDayNumPage,param).then(res =>{
+ let str = '',tmp = ''
+ <td>${item.name || "-"}</td>
+ <td >${item.totleValue}</td>
+ <td >${item.lastAverageValue}</td>
+ <td style="display:${statisticsType==1?'table':'none'}">${item.lastYearAverageValue}</td>
+ let sts = `
+ ${statisticsType==1?`<thead class="monType">
+ <th class="patientNo textCenter" >上月平均住院天数(天)</th>
+ <th class="patientNo textCenter" >本月平均住院天数(天)</th>
+ <th class="patientNo textCenter" >去年本月平均住院天数(天)</th>
+ </thead>`:`
+ <thead class="yearType">
+ <th class="patientNo textCenter" >本年平均住院天数(天)</th>
+ <th class="patientNo textCenter" >去年平均住院天数(天)</th>
+ `}
+ ${str?str:'<tr><td colspan="17" style="text-align: center;color: #aaa">暂无数据~</td></tr>'}
+ $('.tableDay').html(sts)
+ <span class="abnormalAll" data-status="${itemCopy.status}">${itemCopy.status == 0?"未处理":"已处理"}</span>
+ <span class="midifyEdit midifyEditDel">删除</span>
+ <span class="midifyEdit midifyEditQuit">取消</span>
+ $(".abnormalAll", parent.document).attr("data-status",status).html(str)
+ levelTemp =deptItemId
@@ -0,0 +1,743 @@
+require("../css/reset.less")
+require("../css/deptConsole.less")
+require("../images/logo.png")
+require("../images/arrow_down.png")
+// import 'zrender/lib/svg/svg';
+const echarts = require('echarts');
+const {post,setCookie,delCookie,getCookie} = require('../js/utils.js');
+let payMoney = [],dayLis = [],dateType = 2,curDept = '',datafst=[],datasec=[],datatrd=[],datafour=[],hospital=getCookie("hospital");
+$(function(){
+ if(!hasData('YH-KZT')&&!hasData('YH-KZTKS')){
+ $("body").html('')
+ $(".circleBSingle").css("display","block")
+ $(".circleBLis").css("display","none")
+ $(".circleBSingle").css("display","none")
+ $(".circleBLis").css("display","block")
+ setInterval(() => {
+ getTimeDetail()
+ }, 1000);
+ // resizeBox()
+ initConsole()//质控列表
+ getOwnDept()
+ dateChange()
+ $(window).click(function(){
+ window.parent.userActionHide()
+ $(".toggleSlide ul").css("display","none")
+ $(".toggleSlide p").click(function(e){
+ $(this).next().slideToggle()
+ tiaomu()
+function tiaomu(){
+ $(".defect .partTitlePub").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","mukuai.html?from=2&deptName="+curDept+"&dateType="+dateType)
+ $(".circleBSingle .title,.homePageNo .title").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","tiaomu.html?from=2&deptName="+curDept+"&dateType="+dateType)
+ $(".homePage .title").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","partDetail.html")
+ $(".part02 .bingli,.part02 .bingliLis").click(function(){
+ $(parent.document).find("#contentIframe").attr("src","deptScoreDetail.html")
+function hasData(data){
+ let lis = JSON.parse(getCookie("codeLis"))||[]
+ // console.log(lis)
+function resizeBox(){
+ $(".partWrap").css({
+ height:$(window).height()-38+'px'
+ dateType = 1
+ getBarData(1)
+ dateType = 2
+ getBarData(2)
+//控制台数
+function initConsole(result){
+ let url = {
+ '本月病历数':require("../images/icon6.png"),
+ '本月不合格病历-机器':require("../images/icon7.png"),
+ '本月质控数-机器':require("../images/icon10.png"),
+ '本月甲级病历-机器':require("../images/icon8.png"),
+ '本月乙级病历-机器':require("../images/icon9.png"),
+ '本年病历数':require("../images/icon6.png"),
+ '本年不合格病历-机器':require("../images/icon7.png"),
+ '本年质控数-机器':require("../images/icon10.png"),
+ '本年甲级病历-机器':require("../images/icon8.png"),
+ '本年乙级病历-机器':require("../images/icon9.png"),
+ let dom = '';
+ for(let i in result){
+ if(i.indexOf("人工")==-1){
+ let name = i.split("-")[0];
+ let num = 0;
+ if(name=='本月病历数'||name=='本年病历数'){
+ num = result[i]
+ num = result[name+'-人工']+result[i]
+ dom += `
+ <li class="partLi">
+ <div class="partIn">
+ <p class="top">${name}</p>
+ <p class="btm clearfix">
+ <img src="${url[i]}" alt="">
+ <span>${num}</span>
+ $(".partAll").html(dom)
+//获取科室列表
+function getOwnDept(){
+ // if(hasData('FUNC000058')){
+ post(api.getDept,{}).then((res)=>{
+ let result = data.data
+ renderDeptLis(result)//科室tab渲染
+ curDept = result[0].deptName
+ $(".partTitle p i,.toggleSlide p span").html(curDept).attr("title",curDept)
+ getBarData(2)//图标数据获取
+function renderDeptLis(data){
+ let str = ''
+ for(let i = 0; i < data.length;i++){
+ <li title="${data[i].deptName}" class="${i == 0?'li0 toggleAverge toggleSlide1':'toggleAverge toggleSlide1'}" data-dept="${data[i].deptName}">${data[i].deptName}</li>
+ $(".toggleSlide ul").html(str)
+ $(".toggleSlide ul li").click(function(){
+ let name = $(this).attr("data-dept")
+ curDept = name
+ $(this).parent().slideToggle().prev().find("span").html(name).attr("title",name)
+ $(".partTitle p i").html(name).attr("title",name)
+ personNum(datafst[name]||[])
+ setNumDetail(datasec[name]||[])
+ queList(datatrd[name]||[])
+ for(let i = 0;i < datafour[name].length;i++){
+ datafour[name][i].value = datafour[name][i].num
+ emptyCircleB(datafour[name])
+ panDetailB(datafour[name])
+ $(this).addClass("li0").siblings().removeClass("li0")
+//获取图表数据
+function getBarData(type){
+ if(hasData('FUNC000054')){
+ post(api.leaveHosCountByDept,{//出院人数统计
+ let result = data.data[curDept]||[]
+ datafst = data.data
+ personNum(result)
+ if(hasData('FUNC000055')){
+ post(api.mrCountByDept,{//质控病历统计
+ let data = res.data
+ let result3 = data.data[curDept]||[]
+ datasec = data.data
+ setNumDetail(result3)
+ if(hasData('FUNC000056')){
+ post(api.entryCountGroupByCaseAndDept,{//各模块缺陷占比排行
+ let result1 = data.data[curDept]||[]
+ datatrd = data.data
+ queList(result1)
+ if(hasData('FUNC000057')){
+ if(hospital=="台州市立"){
+ post(api.entryCountGroupByEntryAndDept,{//条目缺陷占比
+ for(let i = 0;i < result3.length;i++){
+ result3[i].value = result3[i].num
+ datafour = data.data
+ emptyCircleB(result3)
+ panDetailB(result3)
+ emptyCircleBc(result3)
+ panDetailBc(result3)
+ if(hospital=="长兴医院"&&hasData("FUNC000076")){
+ post(api.getAverageScore,{//病案首页
+ let result1 = data.data['各科室质控平均分']||[]
+ dataX1.push(result1[i].name)
+ dataY1.push(result1[i].averageValue)
+ color: '#333'
+ color:'#AAAAAA'
+ color: '#333333'
+ color:'#EFF3FC'
+ color:'#666666',
+//part01
+function personNum(data){
+ $(".personNum").html("总人数:"+data['总人数'])
+ $(".died").html(data['死亡人数'])
+ $(".newborn").html(data['新生儿人数'])
+ $(".patientNum").html(data['手术病人数'])
+//part02
+function setNumDetail(data){
+ // console.log(data,2222222222)
+ if(data.length == 0){
+ data = [
+ "id":null,
+ "name":"累计质控病历数",
+ "totleNum":0,
+ "num":0,
+ "percent":null,
+ "percentStr":null
+ "name":"甲级病历",
+ "totleNum":10,
+ "percent":0,
+ "percentStr":"0.00%"
+ "name":"乙级病历",
+ "name":"丙级病历",
+ for(let i = 0;i < data.length;i++){
+ <li class="${i==0?'fst':i == data.length-1?' four':''}">
+ <p class="numShow">${data[i].num}</p>
+ <p class="explainNum">${data[i].name}</p>
+ if(data[i].name == '甲级病历'){
+ let tmp = []
+ data[i].value = data[i].num
+ tmp.push(data[i])
+ tmp.push({percentStr:(1-data[i].percent)*100+'%',value:data[i].totleNum - data[i].num})
+ part02pan(tmp,'fen01')
+ if(data[i].name == '乙级病历'){
+ part02pan(tmp,'fen02')
+ if(data[i].name == '丙级病历'){
+ part02pan(tmp,'fen03')
+ $('.bingli').html(str)
+//part02pan
+function part02pan(data,dom){
+ // console.log(data,33333)
+ dom = echarts.init(document.getElementById(dom));
+ dom.resize()
+ let bgColor = '#fff';
+ let title = '总量';
+ let color = ['#37CBCB','#dedede'];
+ let echartData = data;
+ backgroundColor: bgColor,
+ color: color,
+ title: [{
+ text:'{val|' + echartData[0].percentStr + '}',
+ top: 'center',
+ left: 'center',
+ rich: {
+ val: {
+ color: '#333',
+ fontWeight: 'bold',
+ padding: [10, 0]
+ name: {
+ fontSize: 12,
+ fontWeight: 'normal',
+ color: '#777',
+ series: [{
+ name: '',
+ type: 'pie',
+ radius: ['70%', '90%'],
+ data: echartData,
+ hoverAnimation:false,
+ label: {
+ normal: {
+ show:false,
+ }]
+ dom.setOption(option);
+//柱状图住院日期
+function emptyCircleB(data){
+ var myChart = echarts.init(document.getElementById('emptyCircleB'));
+ myChart.resize()
+ let color = ['#F2637B','#975FE4', '#399FFF', '#37CBCB', '#4CCB73','#FAD336','#F2637B','#975FE4', '#399FFF', '#37CBCB', '#4CCB73','#FAD336'];
+ let total = 0;
+ for(let i = 0;i < echartData.length;i++){
+ total += echartData[i].num
+ text: data.length>0?'{val|' + total + '}\n{name|' + title + '}':'',
+ fontSize: 24,
+ trigger: 'item',
+ // formatter: '{b} : {c} ({d}%)',
+ formatter:function(item){
+ const {name, num, percentStr} = item.data
+ return `${name} : ${num} (${percentStr})`
+ hoverAnimation:true,
+ hoverOffset:5,
+ itemStyle: {
+ borderColor: bgColor,
+ borderWidth: 2
+ labelLine: {
+ length: 20,
+ length2: 120,
+ lineStyle: {
+ color: '#e6e6e6'
+ formatter: params => {
+ return params.name == 'A类'?params.name:''
+ padding: [0 , -100, 25, -100],
+ icon: {
+ fontSize: 16
+ padding: [0, 10, 0, 4],
+ color: '#666666'
+ value: {
+ fontSize: 18,
+ myChart.setOption(option);
+function emptyCircleBc(data){
+ var myChart = echarts.init(document.getElementById('emptyCircleBc'));
+//缺陷列表渲染
+function queList(data){
+ let strAll = '',tmp = `mm
+ <tr class="thead">
+ <td class="td01">排名</td>
+ <td class="td02">缺陷详情</td>
+ <td class="td03">数量</td>
+ <td class="td04">占比</td>
+ </tr>`
+ strAll += `
+ <td style="text-align:center;"><i style="background:${i < 3?'#bea571':'#eff3fc'};color:${i < 3?'#fff':'#999'};">${i+1}</i></td>
+ <td>${data[i].name}</td>
+ <td>${data[i].num}</td>
+ <td>${data[i].percentStr}</td>
+ $(".qtable").html(tmp+strAll)
+//饼图列表注释渲染
+function panDetailB(data){
+ let strAll = '';
+ <tr class="explainLi">
+ <td class="deptName" title="${data[i].name}">
+ <p><i class="tip" style="background-color:${color[i]}"></i>${data[i].name}</p>
+ <td class="deptNum">${data[i].num}</td>
+ <td class="percent">(${data[i].percentStr})</td>
+ $(".explainPanB table").html(strAll);
+ $(".explainPan").css({
+ marginTop:-($(".explainPan").height()/2-20)+'px'
+function panDetailBc(data){
+ $(".explainPanBc table").html(strAll);
+ marginTop:-($(".explainPanc").height()/2-20)+'px'
+//时间获取
+function getTimeDetail(){
+ const d = new Date();
+ const days = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
+ let sec = d.getSeconds()
+ let min = d.getMinutes()
+ let hour = d.getHours()
+ let str = `${d.getFullYear()}年${d.getMonth()+1}月${d.getDate()}日 / ${days[d.getDay()]} / ${hour>9?hour:'0'+hour}:${min>9?min:'0'+min}:${sec>9?sec:'0'+sec}`
+ $(".dateDetail").html(str)
@@ -0,0 +1,560 @@
+require("../css/deptScoreDetail.less");
+let deptList = JSON.parse(getCookie("deptList"))||[]
+//科室处理
+getDeptList()
+function getDeptList(){
+ if(deptList.length<=0)return
+ $(".deptScoreDetail .selectDept ").attr("data-id",deptList[0].deptName).find("i").html(deptList[0].deptName)
+ deptIdTemp = deptList[0].deptName
+ deptId = deptList[0].deptName
+ for(let i = 0;i < deptList.length;i++){
+ let tmp = deptList[i]
+ str += `<li class="deptItem ellipsis" title="${tmp.deptName}" data-id="${tmp.deptName}" data-name="${tmp.deptName}">${tmp.deptName}</li>`
+ $(".deptScoreDetail .filterDropList").html(str)
+ $(".dayDetail .deptListWrap").css("display","block")
+ $(".dayDetail .dayFilter").css("display","none")
+ $(".dayDetail .deptListWrap").css("display","none")
+ $(".dayDetail .dayFilter").css("display","block")
+ "asc": "",
+ "deptName": deptId||"",
+ "desc": "",
+ "level": "",
+ "name": behospitalCode||"",
+ "type": statisticsType||2
+ post(api.levelStatisticsByDept,param).then(res =>{
+ renderTab(data,data.hospitalId,activePage);
+ <td>${item.deptId || "-"}</td>
+ <td >${item.doctorName || "-"}</td>
+ <td class="goHomeDetail" data-doc="${item.doctorName || ""}">${item.entryNum || "-"}</td>
+ <td >${item.averageValue || "-"}</td>
+ <td >${item.mrNum || "-"}</td>
+ <td >${item.firstLevelNum || "-"}</td>
+ <td >${item.secondLevelNum || "-"}</td>
+ <td >${item.thirdLevelNum || "-"}</td>
+ <td >${item.firstLevelPercentStr || "-"}</td>
+ <td >${item.secondLevelPercentStr || "-"}</td>
+ <td >${item.thirdLevelPercentStr || "-"}</td>
+ $(".goHomeDetail").click(function(){
+ let docName = $(this).attr("data-doc")
+ $(parent.document).find("#contentIframe").attr("src","quexianDetail.html?from=2&deptName="+deptIdTemp+"&docName="+docName)
@@ -0,0 +1,544 @@
+require("../css/deptScoreDetailControl.less");
+ "level": deptId||'',
+ "type": statisticsType||2, //1-本月,2-本年
+ post(api.levelStatistics,param).then(res =>{
+ <td >${item.deptName || "-"}</td>
+ <td class="goHomeDetail" data-dept="${item.deptName || ""}">${item.entryNum || "-"}</td>
+ let deptName = $(this).attr("data-dept")
+ $(parent.document).find("#contentIframe").attr("src","quexianDetailControl.html?deptName="+deptName+"&from=2")
@@ -3,10 +3,12 @@ const $ = require('jquery');
require('jquery-templates');
const md5 = require('js-md5');
require("./modal.js")
-const {api,post,pageMap,delCookie,setCookie,getCookie} = require('./utils.js');
+const {post,pageMap,delCookie,setCookie,getCookie} = require('./utils.js');
let userInfo={};
getMenu();
+ getOwnDept();
//菜单展开收起
sureChangeWord()
$(".main").css({
@@ -21,10 +23,11 @@ $(function(){
$("#changeWord").css("opacity",hasData('FUNC000002')?'1':'0.5').hover(function(){
$(this).css("color","#777777")
+ $("#contentIframe").attr("src",hasData('YH-KZT')?'console.html':hasData('YH-KZTKS')?'deptConsole.html':'console.html');
- let lis = JSON.parse(getCookie("codeLis"))
if(lis.indexOf(data)>-1){//有权限
return true
@@ -38,10 +41,16 @@ window.userActionHide = userActionHide
function initMenu(data,userInfo){
//菜单数据填充
$("#menuTmpl").tmpl(data).appendTo(".menu ul");
+ $("#miniMenuTmpl").tmpl(data).appendTo(".menu-mini ul");
//用户数据填充
$("#userName").text(userInfo.linkman);
+ $(".menu .page").eq(0).addClass("active");
+ // if($(".menu .page").eq(0).is(".YH-KZT")||$(".menu .page").eq(0).is(".YH-KZTKS")||$(".menu .page").eq(1).is(".YH-KZTKS")){
+ if($(".menu .page").eq(0).is(".YH-KZT")){
+ $(".container").addClass("console-cont");
//菜单收起展开
- $(".menu .page").eq(0).addClass("active")
$(".list-1").on("click",function(){
// $(".list-1 .slide-up").removeClass('slide-up');
// $(this).toggleClass('slide-up');
@@ -53,8 +62,23 @@ function initMenu(data,userInfo){
$(this).removeClass("list-1-show")
$(this).find("ul").slideToggle();
+//收起菜单
+ $(".slide-hide").click(function(){
+ $(".menu").animate({"width":"45px"},function(){
+ $(this).hide();
+ $(".menu-mini").show();
+ $(".main").animate({"margin-left":"45px"});
+ //展开菜单
+ $(".slide-show").click(function(){
+ $(".menu-mini").hide();
+ $(".menu").show().animate({"width":"205px"},function(){
+ $(".main").animate({"margin-left":"205px"});
$(".list-1 li").on("click",function(e){
e.stopPropagation();
@@ -67,9 +91,29 @@ function initMenu(data,userInfo){
if(code === 'YH-BLZK-ZKPFGR'){
url += `?doctorName=${userInfo.linkman}`
+ // if(code === 'YH-KZT'||code === 'YH-KZTKS'){
+ if(code === 'YH-KZT'){
+ $(".container").removeClass("console-cont");
$("#contentIframe").attr("src",url);
+ setCookie("deptList",JSON.stringify(result))
function getMenu(){
post(api.getMenu).then(function(res){
if(res.data.code==='0'){
@@ -12,14 +12,16 @@ const arrowLeft= require("./../images/arrow_left.png")
const arrowRight = require("./../images/arrow_right.png")
-let casesId="", name="", isReject ="", isUsed ="",casesIdTemp="", nameTemp="", isRejectTemp ="", isUsedTemp =""
+let casesId="", name="", isReject ="", isUsed ="",casesIdTemp="", nameTemp="", isRejectTemp ="", isUsedTemp ="",size = 15
$(".selectModuleType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
$(".selectReject").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
$(".selectUsed").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
@@ -33,7 +35,7 @@ function getTabData(activePage){
name: name, //条目名
isReject: isReject, //1-单项否决 0-非
isUsed: isUsed, //0-未启用 1-启用
- size: 15
+ size: size
post(api.getQcCasesEntryAll,param).then(res =>{
if(res.data.code == '0'){
@@ -117,7 +119,7 @@ function renderTab(data,activePage){
const item = data[i]
str += `
<tr data-id=${item.id} data-index=${i}>
- <td class="textCenter">${(activePage-1)*10 + i+1}</td>
+ <td class="textCenter">${(activePage-1)*size + i+1}</td>
<td>${item.casesName}</td>
<td>${item.name}</td>
<td>${item.msg}</td>
+require("../css/jiaji.less");
+ dateType: level||"",//(3-上月,4-去年本月,5-去年(必填))
+ post(api.levelPercentGroupByDeptPage,param).then(res =>{
+ <td>${item.deptName || "-"}</td>
+ <td >${item.firstPercent || "-"}</td>
+ $('tbody').html(str)
@@ -2,6 +2,8 @@ const $ = require('jquery');
require("../css/reset.less")
require("../css/login.less")
const {post,setCookie,delCookie} = require('../js/utils.js');
@@ -17,6 +19,12 @@ $(function(){
$("#password").focus(function(){
$(this).attr("type","password")
+ $(".iptWrap input").focus(function(){
+ $(this).parent().addClass('inputFocus')
+ $(".iptWrap input").blur(function(){
+ $(this).parent().removeClass('inputFocus')
$("body").on('input','#username,#password',function(){
if($(this).val().trim() != ''){
$(".login .waring").html('')
@@ -35,7 +43,7 @@ function sureLogin(){
return
$.alerModal({type:"loading"});
- post('/sys/user/getJwt',{
+ post(api.getJwt,{
username:username,
password:md5(password)
@@ -49,9 +49,9 @@ const jQuery = require('jquery');
top:$(".modaltip").height()/2+'px'
if(ops.isFather){
+ //console.log('bbbbbbb')
ops.fatherWrapper.append(box)
} else{
- console.log('bbbbbbb')
$("body").append(box)
if(ops.type == 'tip'){
@@ -7,12 +7,17 @@ require('./modal.js');
// const layui = require('layui-src');
const {api} = require('./api.js')
const {post,getCookie} = require('./utils.js')
-$(".tableWrapper").css({
- height:$(window).height()-180+'px'
-})
+function setTbaleInfoHei(){
+ $(".tableInfo").css({
+ height:$(window).height()-180+'px'
+setTbaleInfoHei()
@@ -30,35 +35,6 @@ function getTabData(){
getTabData()
-// const data = [
-// {
-// name: '入院记录',
-// score: 10
-// },
-// },{
-// }
-// ,{
-// ]
function renderTab(){
let str = ``;
@@ -81,7 +57,12 @@ function renderTab(){
// <td class="totalSum"></td>
// </tr>
// `
- $('table tbody').html(str)
+ $('.tableInfo table').html(str?str:'<tr><td colspan="17" style="text-align: center;color: #aaa">暂无数据~</td></tr>')
+ const tableInfoBox = $(".tableInfo").height()
+ const tableInfoHei = $(".tableInfo table").height()
+ if(tableInfoHei > tableInfoBox){
+ $(".tableTitle").css("paddingRight", 15+'px')
// bindInput()
bindModuleOpera()
getTotalSum()
@@ -93,13 +74,14 @@ function bindModuleOpera(){
$(".moduleOperaItem").on("click", function(e){
- const index = $(this).parent().attr('data-index')
+ const index = $(this).parent().attr('data-index')
const item = data[index]
midifyMsgBox(item)
function getTotalSum(){
let sum = 0
+ console.log('data', data)
for(let i = 0; i < data.length; i++){
if(data[i].score){
sum += Number(data[i].score)
@@ -0,0 +1,460 @@
+require("../css/mukuai.less");
+const {post,getCookie,getUrlArgObjectNew} = require('./utils.js')
+const switchIconOpen = require("./../images/btn_open.png")
+const switchIconClose = require("./../images/btn_close.png")
+let casesId="", name="", isReject ="2", isUsed ="",casesIdTemp="", nameTemp="", isRejectTemp ="2", isUsedTemp ="",from="",deptIdTemp="",deptItemId="",deptId=""
+$(".selectModuleType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+$(".selectReject").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+$(".selectUsed").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+ let srcUrl = $("#contentIframe",parent.document).attr("src")
+ isReject = 2||getUrlArgObjectNew("dateType",srcUrl)
+ // deptName = getUrlArgObjectNew("deptName",srcUrl)||""
+ from = getUrlArgObjectNew("from",srcUrl)||""
+ getTabData(1)//条目缺陷
+ $(".partTitle a").click(function(){
+ $(".abnormalClear").click(function(){
+ $(document).on("click",'.deptItem',function(){
+ const deptItemName = $(this).attr("data-name")||''
+ $(".mukuai .selectDept ").attr("data-id",deptList[0].deptName).find("i").html(deptList[0].deptName)
+ $(".mukuai .filterDropList").html(str)
+ //所有数据切换日期筛选
+ isReject = 1
+ isRejectTemp = 1
+ isReject = 2
+ isRejectTemp = 2
+//获取表格数据
+ type: isReject,
+ name: name, //条目名
+ deptName: deptId||deptList.length>0&&deptList[0].deptName, //科室名
+ size: 15
+ post(from == 1?api.entryCountGroupByCasePage:api.entryCountGroupByCaseAndDeptPage,param).then(res =>{
+ const data = res.data.data.records
+ const totalPage = res.data.data.pages
+ const totalNum = res.data.data.total
+ renderTab(data,activePage)
+ }).catch((e) =>{})
+$(".moduleItemInp").on("input", function(e){
+ casesId=casesIdTemp, name=nameTemp, isReject =isRejectTemp, isUsed =isUsedTemp,deptId = deptIdTemp
+$(".filterclear").on("click", function(e){
+ nameTemp = ""
+ $(".moduleItemInp").val("")
+$('.selectModuleType').on("click", function(e){
+ $(".rejectList ").css("display","none")
+ $(".usedList ").css("display", "none")
+ $(".selectReject .arrow").attr("src",iconDown)
+ $(".selectUsed .arrow").attr("src",iconDown)
+ const showList = $(".moduleTypeList ").css("display")
+ $(".moduleTypeList ").css("display","block")
+ $(".selectModuleType .arrow").attr("src",iconUp)
+ $(".moduleTypeList ").css("display", "none")
+ $(".selectModuleType .arrow").attr("src",iconDown)
+$('.selectReject').on("click", function(e){
+ const showList = $(".rejectList ").css("display")
+ $(".rejectList ").css("display","block")
+ $(".selectUsed .arrow").attr("src",iconUp)
+ $(".rejectList ").css("display", "none")
+$('.selectUsed').on("click", function(e){
+ const showList = $(".usedList ").css("display")
+ $(".usedList ").css("display","block")
+// bindRejectSelect()
+// bindUsedSelect()
+// getmoduleTypeList()
+function renderTab(data,activePage){
+ let str = ``;
+ const cls = hasData("FUNC000007")?"editItem":"editItemDis";
+ <tr data-id=${item.id} data-index=${i}>
+ <td>${item.name}</td>
+ <td class="textCenter">${item.percentStr}</td>
+ bindEdit(data,activePage)
+function bindEdit(data,activePage){
+ if(!hasData('FUNC000007')){
+ $('.editItem').click(function(e){
+ editItem(data[index],activePage)
+//修改
+function editItem(item,activePage){
+ const itemCpoy = JSON.parse(JSON.stringify(item))
+ $('.pop-box').remove()
+ $('.container').append('<div class="pop-box"></div>')
+ <div class="itemMsgBox">
+ <div class="itemMsgContent">
+ <p class="itemMsgTitle">修改 <img class="iconClose" src=${require('./../images/icon_close_default.png')} alt="关闭" /></p>
+ <div class="itemMsgContentBox">
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">模块名称:</span> <span class="itemInfoRight">${itemCpoy.casesName}</span></div>
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">条目名称:</span> <span class="itemInfoRight"> ${itemCpoy.name}</span></div>
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">提示信息:</span> <span class="itemInfoRight"> <input class="itemTipMsg" value="${itemCpoy.msg}" /></span></div>
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">
+ 分值:
+ </span> <span class="itemInfoRight">
+ <input class="itemScore" type="number" min="0" value=${itemCpoy.score} />
+ <p class="itemMsgInfoTips">支持≥0的数字输入,最多保留小数点后1位~</p>
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">单项否决:</span><span class="itemInfoRight itemReject">${item.isReject == '1' ? `<img class="switchImg" src=${switchIconOpen} /><span class="imgInfo"> 是</span>`:`<img class="switchImg" src=${switchIconClose} /> <span class="imgInfo"> 否</span>`}</span></div>
+ <div class="itemMsgInfoBox"><span class="itemMsgLab">启用:</span><span class=" temInfoRight itemUsed">${item.isUsed == '1' ? `<img class="switchImg" src=${switchIconOpen} /><span class="imgInfo"> 是</span>`:`<img class="switchImg" src=${switchIconClose} /> <span class="imgInfo"> 否</span>`}</span></div>
+ <div class="confirmEditBox"><span class="confirmEdit">保存</span></div>
+ $("#mainBox .itemMsgBox .iconClose", parent.document).on("click", function(e){
+ $("#mainBox .itemMsgBox", parent.document).remove()
+ $("#mainBox .itemMsgBox .itemTipMsg", parent.document).on("input", function(e){
+ itemCpoy.msg = val
+ $("#mainBox .itemMsgBox .itemScore", parent.document).on("keypress", function(e){
+ return (/[0-9\.]/.test(String.fromCharCode(e.keyCode)))
+ $("#mainBox .itemMsgBox .itemScore", parent.document).on("input", function(e){
+ itemCpoy.score = val
+ $("#mainBox .itemMsgBox .itemReject", parent.document).on("click", function(e){
+ itemCpoy.isReject = itemCpoy.isReject == 1 ? 0 : 1
+ $('#mainBox .itemMsgBox', parent.document).remove()
+ editItem(itemCpoy,activePage)
+ $("#mainBox .itemMsgBox .itemUsed", parent.document).on("click", function(e){
+ itemCpoy.isUsed = itemCpoy.isUsed == 1 ? 0 : 1
+ $("#mainBox .itemMsgBox .confirmEdit", parent.document).on("click", function(){
+ var reg = new RegExp(/^\d+(\.\d)?$/);
+ if(reg.test(itemCpoy.score)){
+ // console.log('itemCopy', itemCpoy)
+ if(!itemCpoy.msg.trim()){
+ $.alerModal({"message":"提示信息不能为空~",type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+ saveEdit(itemCpoy,activePage)
+ $("#mainBox .itemMsgBox .itemMsgInfoTips", parent.document).css("display","none")
+ $("#mainBox .itemMsgBox .itemMsgInfoTips", parent.document).css("display","block")
+function saveEdit(item,activePage){
+ id: item.id,
+ isReject: item.isReject,
+ isUsed: item.isUsed,
+ msg: item.msg,
+ score: item.score
+ post(api.updataQcCasesEntry,param).then(res =>{
+ // const data = res.data.data
+ $.alerModal({"message":"修改成功",type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+//获取模块类型
+function getmoduleTypeList(){
+ post(api.getQcCasesAll).then(res =>{
+ const moduleTypeList = res.data.data
+ renderModuleTypeList(moduleTypeList)
+function renderModuleTypeList(moduleTypeList){
+ let str = `<li class="modeTypeItem " data-id=" " data-name="全部">全部</li>`
+ for(let i = 0; i < moduleTypeList.length; i++){
+ str += `<li class="modeTypeItem ellipsis" title=${moduleTypeList[i].name} data-id=${moduleTypeList[i].id} data-name=${moduleTypeList[i].name}> ${moduleTypeList[i].name}</li>`
+ $('.moduleTypeList').html(str)
+ bindModuleTypeSelect()
+//模块类型选择
+function bindModuleTypeSelect(){
+ $('.modeTypeItem').on("click",function(){
+ const modeTypeItemName = $(this).attr("data-name")
+ const modeTypeItemId = $(this).attr("data-id")
+ casesIdTemp =modeTypeItemId
+ $('.selectModuleType').html(modeTypeItemName).attr("title",modeTypeItemName)
+ $(".selectModuleType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+//单项否决选择
+function bindRejectSelect(){
+ $('.rejectItem').on("click",function(){
+ const rejectItemName = $(this).attr("data-name")
+ const rejectItemId = $(this).attr("data-id")
+ isRejectTemp=rejectItemId
+ $('.selectReject').html(rejectItemName)
+ $(".selectReject").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+function bindUsedSelect(){
+ $('.usedItem').on("click",function(){
+ const usedItemName = $(this).attr("data-name")
+ const usedItemItemId = $(this).attr("data-id")
+ isUsedTemp =usedItemItemId
+ $('.selectUsed').html(usedItemName)
+ $(".usedList").css("display", "none")
+ $(".selectUsed").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
@@ -0,0 +1,459 @@
+ // $(".mukuai .selectDept ").attr("data-id",deptList[0].deptName).find("i").html(deptList[0].deptName)
+ deptName: deptId, //科室名
@@ -0,0 +1,550 @@
+require("../css/partDetail.less");
+ $(".partDetail .selectDept ").attr("data-id",deptList[0].deptName).find("i").html(deptList[0].deptName)
+ $(".partDetail .filterDropList").html(str)
+ post(api.homePageLevelByDeptLimit,param).then(res =>{
+ <td data-doc="${item.doctorName || ""}" class="goHomeDetail">${item.entryNum || "-"}</td>
+ $(parent.document).find("#contentIframe").attr("src","quexianDetail.html?from=1&deptName="+deptIdTemp+"&docName="+docName)
@@ -0,0 +1,539 @@
+require("../css/partDetailControl.less");
+ "level": deptId||"",
+ post(api.homePageLevelStatistics,param).then(res =>{
+ $(parent.document).find("#contentIframe").attr("src","quexianDetailControl.html?deptName="+deptName+"&from=1")
@@ -0,0 +1,552 @@
+require("../css/payDetail.less");
+ post(api.getAverageFeePage,param).then(res =>{
@@ -32,7 +32,9 @@ $('.iconCalen').on("click", function(e){
$(this).parent().find("input").focus()
$('.recordScoreBtn').css("opacity",hasData('FUNC000017')?'1':'0.5')
let trdObj = JSON.parse(getCookie("trdObj"))
@@ -56,8 +58,8 @@ function getTabData(activePage){
desc:data_desc, //降序
doctorName: doctorName,
doctorCode: doctorNum,
- behosDateStart: behosDateStart, //1-单项否决 0-非
- behosDateEnd: behosDateEnd, //0-未启用 1-启用
+ leaveHosDateStart: behosDateStart, //1-单项否决 0-非
+ leaveHosDateEnd: behosDateEnd, //0-未启用 1-启用
size: 15
post(api.qcList,param).then(res =>{
@@ -81,7 +83,7 @@ function getTabData(activePage){
-getTabData(1)
+//getTabData(1)
$(".filter").on("click", function(e){
behosDateStart = $("#datepicker").val().trim()
@@ -106,9 +108,50 @@ $(".filter").on("click", function(e){
doctorNum = doctorNumTemp
getTabData(1)
+$(".reset").on("click", function(e){
+ tabList = [];
+ name = "";
+ behospitalCode="";
+ behosDateStart="";
+ level="";
+ behosDateEnd="";
+ scoreSum = 0;
+ nameTemp = "";
+ behospitalCodeTemp="";
+ levelTemp="";
+ deptId="";
+ deptIdTemp="";
+ doctorName="";
+ doctorNum="";
+ doctorNameTemp="";
+ doctorNumTemp="";
+ $('.patientNumInp').val('')
+ $('.patientNameInp').val('')
+ $('.doctorInp').val('')
+ $('.doctorNumInp').val('')
+ $('#datepicker').val('')
+ $('#datepicker2').val('')
+ $('.selectDept ').html('选择科室')
+ $('.selectDept ').addClass('unSelect')
+ $('.selectLevel').html('选择病历等级')
+ $('.selectLevel ').addClass('unSelect')
+ $("th[code]").removeClass("asc desc")
function renderTab(data,hisId){
let str = ``
- let hasSelectAll = true
+ let hasSelectAll = true;
+ if(data.length===0){
+ $('tbody').html(`<tr><td colspan='17' style="text-align: center;color: #aaa">暂无数据~</td></tr>`);
+ return;
if(!item.hasSelect){
@@ -196,6 +239,7 @@ function bindLeveldSelect(){
$('.selectLevel').html(levelItemName)
$(".levelList").css("display", "none")
$(".selectLevel").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
+ $('.selectLevel').removeClass('unSelect')
@@ -216,7 +260,7 @@ function bindRecordScoreOper(){
const index = $(this).parent().attr("data-index")
const behospitalCode = tabList[index].behospitalCode
loading()
- recordScore(behospitalCode,1)
+ recordScore(behospitalCode,1,true)
function bindOperaAll(){
@@ -265,7 +309,7 @@ function getDeptList(){
function rendeDeptList(deptList){
- let str = `<li class="deptItem " data-id=" " data-name="全部">全部</li>`
for(let i = 0; i < deptList.length; i++){
str += `<li class="deptItem ellipsis" title=${deptList[i].deptName} data-id=${deptList[i].deptId} data-name=${deptList[i].deptName}> ${deptList[i].deptName}</li>`
@@ -285,8 +329,8 @@ function bindDeptSelect(){
$('.selectDept ').attr('title',deptItemName)
$(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
$(".deptList").css("display", "none")
+ $('.selectDept').removeClass('unSelect')
function loading(){
@@ -335,9 +379,9 @@ $("th[code]").on("click",function(e){
$(this).addClass("asc");
getTabData(1);
- console.log(code)
+ // console.log(code)
-function recordScore(behospitalCode,totalNum){
+function recordScore(behospitalCode,totalNum,hasToast){
const param = {
behospitalCode: behospitalCode
@@ -351,10 +395,21 @@ function recordScore(behospitalCode,totalNum){
getTabData(activePage)
- }else{}
+ if(hasToast){
+ $.alerModal({"message":'评分成功',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
+ $.alerModal({"message":'评分失败',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
}).catch((e) =>{
$(".patientNumInp").on("input", function(e){
@@ -410,13 +465,14 @@ $(function() {
$( "#datepicker" ).datepicker({
changeMonth: true,
changeYear: true,
- dateFormat:"yy/mm/dd"
- });
+ dateFormat:"yy/mm/dd",
+ }).datepicker( "setDate", "-1m" );
$( "#datepicker2" ).datepicker({
dateFormat:"yy/mm/dd"
+ }).datepicker( "setDate", new Date());
+ $(".filter").click(); //初始查询
//分页渲染