Browse Source

Merge remote-tracking branch 'origin/masterNew' into referMasterNew

# Conflicts:
#	src/js/cdss.js
#	src/js/cdssHorizontal.js
zhouna 4 years ago
parent
commit
2f186000f2
66 changed files with 6339 additions and 1448 deletions
  1. 96 0
      src/css/PIE.htc
  2. 128 2
      src/css/cdss.less
  3. 209 23
      src/css/cdssHorizontal.less
  4. 0 0
      src/css/common.css
  5. 60 1
      src/css/common.less
  6. 6 2
      src/css/followUpV.less
  7. 95 0
      src/css/homeStatic.less
  8. 0 505
      src/css/index.less
  9. 1 1
      src/css/information.less
  10. 101 0
      src/css/informationOut.css
  11. 419 131
      src/css/informationOut.less
  12. 101 0
      src/css/print.css
  13. 292 0
      src/css/searchStaticList.less
  14. 545 0
      src/css/staticInfo.less
  15. 548 0
      src/css/staticInfoOut.less
  16. 55 0
      src/html/cdss.html
  17. 55 0
      src/html/cdssHorizontal.html
  18. 57 0
      src/html/homeStatic.html
  19. 65 31
      src/html/informationOut.html
  20. 66 0
      src/html/searchStaticList.html
  21. 102 0
      src/html/staticInfo.html
  22. 78 0
      src/html/staticInfoOut.html
  23. BIN
      src/images/d1.png
  24. 15 0
      src/images/d1.svg
  25. BIN
      src/images/dn.png
  26. BIN
      src/images/g1.png
  27. BIN
      src/images/go.png
  28. BIN
      src/images/icon-circular.png
  29. BIN
      src/images/icon-circular2.png
  30. BIN
      src/images/icon-hel.png
  31. BIN
      src/images/icon-success.png
  32. BIN
      src/images/icon-warning.png
  33. BIN
      src/images/icon-warns.png
  34. 13 0
      src/images/icon_current.svg
  35. BIN
      src/images/icon_current2.png
  36. BIN
      src/images/icon_nurse_push.png
  37. BIN
      src/images/leftpage.png
  38. BIN
      src/images/nolis.png
  39. BIN
      src/images/printing.png
  40. BIN
      src/images/printing2.png
  41. BIN
      src/images/recommend.png
  42. BIN
      src/images/rightpage.png
  43. BIN
      src/images/staticBg.png
  44. BIN
      src/images/staticBgS.png
  45. BIN
      src/images/staticLogo.png
  46. BIN
      src/images/t1.png
  47. BIN
      src/images/t2.png
  48. BIN
      src/images/t3.png
  49. BIN
      src/images/warn.png
  50. BIN
      src/images/word.png
  51. 88 0
      src/js/PIE.js
  52. 369 324
      src/js/cdss.js
  53. 346 285
      src/js/cdssHorizontal.js
  54. 62 0
      src/js/homeStatic.js
  55. 1 1
      src/js/index.js
  56. 513 105
      src/js/informationOut.js
  57. 237 0
      src/js/jQuery.print.js
  58. 74 14
      src/js/promise.js
  59. 228 0
      src/js/searchStaticList.js
  60. 7 18
      src/js/smartAlert.js
  61. 551 0
      src/js/staticInfo.js
  62. 556 0
      src/js/staticInfoOut.js
  63. 2 2
      src/js/staticSearch.js
  64. 126 0
      src/js/tcmiss.js
  65. 11 1
      src/js/util.js
  66. 61 2
      webpack.config.js

File diff suppressed because it is too large
+ 96 - 0
src/css/PIE.htc


+ 128 - 2
src/css/cdss.less

@@ -222,6 +222,9 @@ body{
     color: @tabColor;
     margin-right: 20px;
     display: inline-block;
+  &:last-child {
+    margin-right: 0;
+  }
 }
 .moduleItem{
     border: 1px solid #EAEDF1;
@@ -316,7 +319,7 @@ body{
 }
 .tabList{
     line-height: 39px;
-    margin-bottom: 4px;
+  margin-bottom: 8px;
     padding: 0 20px 0 20px;
     box-sizing: border-box;
 }
@@ -337,7 +340,7 @@ body{
         left: 32%;
         background: #3B9ED0;
         position: absolute;
-        bottom: 0;
+      bottom: 3px;
     }
 }
 .moduleWrapper{
@@ -452,4 +455,127 @@ body{
     img{
         margin-left: 4px;
     }
+}
+
+/*******中医********/
+.tcmWarp {
+  box-sizing: border-box;
+  width: 100%;
+  height: 100%;
+  overflow-y: auto;
+}
+.tcm-item {
+  display: none;
+  margin: 0 15px 10px;
+  border: 1px #EEF5FD solid;
+  border-radius: 8px;
+  .title {
+    background: #EEF5FD;
+    height: 30px;
+    line-height: 30px;
+    padding: 0 12px;
+    border-radius: 8px 8px 0px 0px;
+    img {
+      vertical-align: middle;
+      width: 24px;
+      height: 24px;
+    }
+    .h2 {
+      font-weight: bold;
+      font-size: 16px;
+      color: #333;
+    }
+    .go {
+      float: right;
+      margin-right: 10px;
+      font-size: 12px;
+      color: #333;
+      text-decoration: none;
+      cursor: pointer;
+      img {
+        width: 5px;
+        height: 9px;
+        vertical-align: inherit;
+      }
+    }
+  }
+  .infos {
+    padding-top: 10px;
+    li {
+      margin-bottom: 5px;
+      padding-left: 18px;
+      .label {
+        display: inline-block;
+        width: 98px;
+        margin-right: 15px;
+        font-size: 14px;
+        color: #333;
+      }
+      .val {
+        color: #666;
+      }
+    }
+  }
+  .detail {
+    margin: 0 10px;
+    border-top: 1px #E6E6E6 solid;
+    padding-top: 5px;
+    /*max-height: 134px;*/
+    overflow-y: hidden;
+    li {
+      margin: 0 0 6px 10px;
+    }
+    .label {
+      float: left;
+      border-left: 2px solid #267FD7;
+      padding-left: 5px;
+      line-height: 12px;
+      margin-top: 4px;
+    }
+    .val {
+      margin-left: 65px;
+      .name {
+        color: #333;
+      }
+      .desc {
+        color: #666;
+        overflow-x: hidden;
+        white-space: nowrap;
+        width: 100%;
+        text-overflow: ellipsis;
+      }
+
+    }
+  }
+  &.recipe {
+    display: none;
+  }
+  &.knowledge .content {
+    padding: 8px 10px 12px;
+    li {
+      display: inline-block;
+      width: 29%;
+      text-align: center;
+      padding: 0 2%;
+      margin-top: 8px;
+    }
+    .a-link {
+      display: inline-block;
+      width: 100%;
+      border: 1px #3B9ED0 solid;
+      color: #3B9ED0;
+      height: 30px;
+      line-height: 30px;
+      border-radius: 4px;
+      cursor: pointer;
+      background: url("../images/go.png") 95% center no-repeat;
+      text-indent: -8px;
+      text-decoration: none;
+    }
+  }
+}
+.evaluationtitle:hover{
+    text-decoration: underline;
+    color: #0000FF;
+    cursor: pointer;
 }

+ 209 - 23
src/css/cdssHorizontal.less

@@ -185,15 +185,44 @@
     border-bottom: 1px solid #3B9ED0;
     cursor: pointer;
 }
-.moduleItem.tips{
+.tips-cont{
+    position: relative;
+    background: #FFE8DD;
+  max-height: 81px;
+    overflow: hidden;
+    .moduleTitle{
+        position: absolute;
+        top:0;
+        font-size: 14px;
+        font-weight: 600;
+        color:#FF7836;
+    }
+}
+.moduleItem.crivalue,.moduleItem.rationali,.moduleItem.highrisk,.moduleItem.otherremind{
     max-height: 81px;
     overflow-y: hidden;
     // background: #FFE8DD;
     position: relative;
+    .moduleTitle{
+        color: #FF7836;
+    }
+    .moduleBox{
+        padding: 0 0 0 80px;
+        position: relative;
+    }
+    .moduleBoxName{
+        position: absolute;
+        left: 0;
+        font-size: 12px;
+        color:#FF7836;
+        display: inline-block;
+        border: 1px solid #FF7836;
+        line-height: 18px;
+        top: 3px;
+        padding: 0 7px;
+        border-radius: 9px;
+    }
 }
-.moduleItem.tips .moduleTitle{
-   color: #FF7836;
-} 
 .showMore,.showLess{
     display: inline-block;
     cursor: pointer;
@@ -223,6 +252,7 @@
     border-radius: 1px;
     padding: 0 0 0 80px;
     display: none;
+    z-index: 1;
 }
 .longStrBoxTitle{
     position: absolute;
@@ -232,23 +262,6 @@
     text-align: right;
     font-weight: 600;
 }
-.tips .moduleBox{
-    padding: 0 0 0 80px;
-    position: relative;
-}
-.tips .moduleBoxName{
-    position: absolute;
-    left: 0;
-    font-size: 12px;
-    color:#fff;
-    display: inline-block;
-    border: 1px solid #FF7836;
-    line-height: 18px;
-    top: 3px;
-    padding: 0 7px;
-    border-radius: 3px;
-    background-color: #FF7836;
-}
 .diag .moduleBox{
     padding: 0 0 0 60px;
     position: relative;
@@ -290,11 +303,12 @@
     position: relative;
     top: -5px;
 }
-.medicine .titleIcon, .operation .titleIcon, .general .titleIcon{
+
+/*.medicine .titleIcon, .operation .titleIcon, .general .titleIcon, .nurse .titleIcon {
     width: 13px;
     position: relative;
     top: 2px;
-}
+}*/
 .moduleItem.casewriting{
     padding: 0 0 0 160px;
     // background: rgba(60,172,228,.17);
@@ -433,4 +447,176 @@
 .lisBox {
     // position: absolute;
     // left: 50px;
+}
+
+/*******中医********/
+.tcm-item {
+    display: none;
+    .title {
+        float: left;
+        height: 30px;
+        padding: 0 12px;
+      margin-top: 9px;
+        border-radius: 8px 8px 0px 0px;
+        img {
+            vertical-align: middle;
+            width: 20px;
+            height: 20px;
+        }
+        .h2 {
+            font-size: 14px;
+            color: #267FD7;
+        }
+        .go {
+            margin-right: 10px;
+            font-size: 14px;
+            color: #409ED1;
+            text-decoration: none;
+            cursor: pointer;
+            img {
+                width: 5px;
+                height: 9px;
+                vertical-align: inherit;
+            }
+        }
+    }
+    .go-btn, .go-push {
+        display: inline-block;
+        width: 80px;
+        height: 25px;
+        line-height: 25px;
+        border-radius: 4px;
+        text-align: center;
+        background: #DEF1FB;
+        text-decoration: none;
+        color: #409ED1;
+    }
+    .content {
+        .infos {
+            .label {
+                color: #333;
+            }
+            .val {
+                color: #666;
+            }
+            li {
+              float: left;
+              overflow: hidden;
+              text-overflow: ellipsis;
+              white-space: nowrap;
+              width: 150px;
+              &:first-child {
+                width: 262px;
+              }
+            }
+        }
+        .infos {
+            height: 24px;
+        }
+        .detail {
+            padding: 0 8px 8px 4px;
+            margin-right: 20px;
+          max-height: 125px;
+            overflow-y: hidden;
+            position: relative;
+            .go-push {
+                cursor: pointer;
+                width: 60px;
+                position: absolute;
+                left: 502px;
+                bottom: 4px;
+            }
+            li {
+                margin-bottom: 6px;
+            }
+            .label {
+                float: left;
+                border-left: 2px solid #267FD7;
+                padding-left: 5px;
+                line-height: 12px;
+                margin-top: 4px;
+            }
+            .val {
+                margin-left: 65px;
+                .name {
+                    color: #333;
+                }
+                .desc {
+                    color: #666;
+                  width: 494px;
+                  overflow: hidden;
+                  text-overflow: ellipsis;
+                  white-space: nowrap;
+                  /*&:nth-child(2) {    //ie8不兼容,用jquery
+                    width: 420px;
+                  }*/
+                }
+
+            }
+        }
+        .a-link {
+            display: inline-block;
+            width: 100%;
+            border: 1px #3B9ED0 solid;
+            color: #3B9ED0;
+            height: 30px;
+            line-height: 30px;
+            border-radius: 4px;
+            cursor: pointer;
+            background: url("../images/go.png") 94% center no-repeat;
+            text-indent: -8px;
+            text-decoration: none;
+        }
+    }
+}
+
+.recipe {
+    .title {
+        width: 124px;
+        margin-top: 0;
+    }
+    .content {
+        margin-left: 146px;
+    }
+}
+
+.idea {
+    .val {
+        border: 1px #3B9ED0 solid;
+        padding: 1px 4px;
+        color: #3B9ED0;
+        border-radius: 2px;
+      cursor: pointer;
+      &.active {
+        background: #3B9ED0;
+        color: #fff;
+      }
+    }
+    .go-text {
+        color: #49A3D2;
+        font-size: 14px;
+        text-decoration: none;
+    }
+  .zhifa {
+    display: inline-block;
+    .val {
+      margin-right: 10px;
+    }
+  }
+    img {
+        vertical-align: middle;
+    }
+}
+
+.knowledge .content p {
+    display: inline-block;
+    width: 88px;
+    margin-top: 8px;
+    margin-right: 10px;
+    text-align: center;
+}
+.evaluationtitle:hover{
+    text-decoration: underline;
+    color: #0000FF;
+    cursor: pointer;
 }

+ 0 - 0
src/css/common.css


+ 60 - 1
src/css/common.less

@@ -8,6 +8,7 @@
 @bgcMay:#FAEBEC; //疑似,警惕,可能
 @bgcModal:#DFEAFE; //弹窗头
 @tabColor: #777; // 右侧大Tab文字颜色
+@staticMainColor: #2A9BD5; // 静态知识主要颜色
 .disCopy {
     -webkit-touch-callout: none;
     -webkit-user-select: none;
@@ -45,4 +46,62 @@
 }
 .ql-align-center {
   text-align: center;
-}
+}
+
+.warning-box {
+  display: none;
+  position: fixed;
+  width: 100%;
+  height: 100%;
+  top: 0;
+  left: 0;
+  .bg {
+    width: 100%;
+    height: 100%;
+    background: #000;
+    opacity: .3;
+    filter:Alpha(opacity=30);
+    z-index: 999;
+  }
+  .inner-box {
+    width: 400px;
+    background: #fff;
+    position: absolute;
+    top: 50%;
+    left: 50%;
+    margin: -90px 0 0 -200px;
+    color: #333;
+    border-radius: 4px;
+  }
+  .title {
+    border-bottom: 1px #EBEBEB solid;
+    height: 40px;
+    line-height: 40px;
+    span {
+      margin-left: 20px;
+    }
+    i {
+      margin-left: 322px;
+      font-size: 16px;
+      cursor: pointer;
+    }
+  }
+  .content {
+    padding: 30px 20px;
+    img {
+      width: 20px;
+      height: 20px;
+      vertical-align: middle;
+      margin-right: 10px;
+    }
+  }
+  button {
+    width: 60px;
+    height: 34px;
+    background: @staticMainColor;
+    color: #fff;
+    text-align: center;
+    border-radius: 3px;
+    margin: 0 0 20px 322px;
+  }
+}

+ 6 - 2
src/css/followUpV.less

@@ -62,9 +62,13 @@
 .pacsBox{
     margin-top: 10px;
 }
-.infoBox:hover{
+
+/*.infoBox:hover{
     background: #EEEEEE;
-}
+    .title h2 {
+        background: #EEEEEE;
+    }
+}*/
 .itemBoxTitle{
     position: absolute;
     left: 0;

+ 95 - 0
src/css/homeStatic.less

@@ -0,0 +1,95 @@
+@import './common.less';
+
+.staticWrap {
+  .staticTopCenter {
+    width: 66.6%;
+    max-width: 800px;
+    margin: 0 auto;
+    text-align: center;
+    padding-top: 130px;
+  }
+  .staticTop {
+    height: 450px;
+    background-color: #2A9BD5;
+  }
+  .staticTopLogo {
+    margin-bottom: 40px;
+    img {
+      width: 62.4%;
+      max-width: 800px;
+    }
+  }
+  .staticTopTab {
+    ul {
+      text-align: left;
+    }
+    li {
+      /*display: inline-block;*/
+      float: left;
+      font-size: 16px;
+      color: #fff;
+      margin: 0 2% 10px;
+      cursor: pointer;
+      padding-bottom: 2px;
+      border-bottom: 2px solid #2A9BD5;
+    }
+    .tabFst {
+      border-bottom: 2px solid #fff;
+    }
+  }
+  .staticTopSearch {
+    width: 100%;
+    height: 60px;
+    line-height: 60px;
+    background-color: #fff;
+    border-radius: 8px;
+    padding-right: 100px;
+    box-sizing: border-box;
+    position: relative;
+    input {
+      height: 55px;
+      line-height: 55px;
+      box-sizing: border-box;
+      float: left;
+      border-radius: 8px;
+      width: 100%;
+      padding: 0 30px;
+    }
+    .searchBtn {
+      width: 88px;
+      height: 100%;
+      line-height: 50px;
+      border-left: 1px solid #979797;
+      position: absolute;
+      right: 0;
+      top: 0;
+      cursor: pointer;
+      color: #666;
+      padding-left: 40px;
+      box-sizing: border-box;
+      img {
+        position: absolute;
+        left: 34px;
+        top: 22px;
+        width: 20px;
+        height: 20px;
+      }
+    }
+  }
+  .foryou {
+    width: 100%;
+    text-align: center;
+    margin:180px 0 50px 0;
+    img{
+      width: 47%;
+      max-width: 647px;
+    }
+  }
+  .staticBg {
+    width: 62.4%;
+    margin: 0 auto;
+    img {
+      width: 100%;
+    }
+  }
+}

+ 0 - 505
src/css/index.less

@@ -1,507 +1,2 @@
 @import './common.less';
 
-.iframeWrap {
-  margin: 10px auto 50px;
-  padding: 20px;
-  min-width: 340px;
-  .conditionHintPub {
-    border: 1px solid #F2F2F2;
-    margin-bottom: 15px;
-    li {
-      padding-right: 18px;
-      float: left;
-      line-height: 24px;
-    }
-    .conditionMain {
-      padding: 17px;
-    }
-    .alertModal{
-      position: relative;
-      .mayResult {
-        color: #838383;
-        position: relative;
-      }
-      .mayResultSelect {
-        line-height: 28px;
-        .makesureResult {
-          cursor: pointer;
-          color: @colorBlue;
-        }
-        .sanjiao {
-          width: 18px;
-          height: 18px;
-          display: inline-block;
-          position: relative;
-          top: 3px;
-          background: url('../images/select.png') center center no-repeat;
-        }
-      }
-    }
-    .treatPlan {
-      font-weight: bold;
-      padding-bottom: 5px;
-    }
-    .treatPlanWrap {
-      padding-bottom: 10px;
-      border-bottom: 1px solid @grayColor;
-    }
-    .treatMedicine {
-      padding-top: 10px;
-      .medicinePart {
-        margin: 8px 0;
-        position: relative;
-      }
-      .medicine {
-        border-bottom: 1px solid @grayColor;
-        position: relative;
-      }
-      .medicine:hover {
-        color: @colorBlue;
-        .infoMsg {
-          display: inline-block;
-          right: -20px;
-          background-color: #fff;
-        }
-      }
-      .medicineDis {
-        color: @grayColor;
-        border-bottom: 1px solid @grayColor;
-      }
-      .medicineWaring {
-        background-color: #f4c051;
-        color: #000;
-        font-size: 12px;
-        border-radius: 4px;
-        border: 1px solid #fff;
-        line-height: 18px;
-      }
-      .medicineWaringDis {
-        background-color: #fff;
-        color: @grayColor;
-        font-size: 12px;
-        border-radius: 4px;
-        line-height: 18px;
-        border: 1px solid @grayColor;
-      }
-      .medicineWaringDisMsg {
-        color: @grayColor;
-      }
-    }
-    p {
-      line-height: 24px;
-      span {
-        display: inline-block;
-      }
-    }
-  }
-  .conditionHintWz{
-    h4 {
-      background-color: @bgcBlue;
-      i {
-        background: url("../images/inquire.png") center center no-repeat;
-      }
-    }
-  }
-  .conditionHintTg{
-    h4 {
-      background-color: @bgcBlue;
-      i {
-        background: url("../images/tgjc.png") center center no-repeat;
-      }
-    }
-  }
-  .conditionHintInspect{
-    h4 {
-      background-color: @bgcBlue;
-      i {
-        background: url("../images/inspect.png") center center no-repeat;
-      }
-    }
-  }
-  .conditionHintMay{
-    h4 {
-      background-color: @bgcMay;
-      i {
-        background: url("../images/yszd.png") center center no-repeat;
-      }
-    }
-  }
-  .conditionHintWarings{
-    display: none;
-    h4 {
-      color: @colorWaring;
-      i {
-        background: url("../images/warings.png") center center no-repeat;
-      }
-    }
-    li{
-      float: left;
-      line-height: 24px;
-    }
-    li:hover {
-      color: @colorBlue;
-    }
-  }
-  .conditionHintKnzd{
-    display: none;
-    h4 {
-      i {
-        background: url("../images/knzd.png") center center no-repeat;
-      }
-    }
-    ul {
-      li {
-        float: left;
-        line-height: 24px;
-      }
-      li:hover {
-        color: @colorBlue;
-      }
-    }
-  }
-  .conditionHintZhiliao{
-    h4 {
-      background-color: @bgcPlan;
-      i {
-        background: url("../images/zhiliao.png") center center no-repeat;
-      }
-    }
-  }
-  .conditionHintTips{
-    .mayIllness {
-      padding-bottom: 5px;
-      span {
-        position: relative;
-        border-bottom: 1px solid @grayColor;
-        .infoMsg {
-          position: relative;
-          border-bottom: 0;
-          float: right;
-        }
-      }
-      span:hover {
-        .infoMsg {
-          display: inline-block;
-        }
-      }
-      a {
-        border-bottom: 1px solid @grayColor;
-      }
-    }
-    h4 {
-      background-color: @bgcWaring;
-      i {
-        background: url("../images/tips.png") center center no-repeat;
-      }
-    }
-  }
-  .illnessTable {
-    color: @colorBlue;
-    line-height: 28px;
-    cursor: pointer;
-  }
-  .conditionHint{
-  }
-  h4 {
-    color: #000;
-    height: 40px;
-    line-height: 40px;
-    background-color: @bgcMay;
-    font-size: 16px;
-    font-weight: bold;
-  }
-  
-  h4 {
-    i {
-      content: '';
-      width: 40px;
-      height: 40px;
-      float: left;
-    }
-  }
-}
-.commonTreat,.conditionHintKnzdLis,.conditionHintWaringsLis,.conditionHintWzLis,.conditionHintTgLis,.conditionHintInspectLis,.conditionHintAssistLis{
-  position: relative;
-}
-.conditionHintInspectNull {
-  border-bottom: 1px solid @grayColor;
-  padding-bottom: 5px;
-  margin-bottom: 5px;
-}
-.conditionHintZhiliaoNull {
-  display: none;
-}
-.conditionHintAssistLis,.conditionHintInspectLis {
-  padding: 5px 0;
-  .slideDown {
-    padding: 5px 0 5px 0px;
-  }
-  li:first-child{
-    padding-right: 5px;
-  }
-}
-.pushEmpty {
-  color: #ADADAD;
-}
-.medicinePartLimitHeight {
-  height: 25px;
-  overflow: hidden;
-  position: relative;
-}
-.medicinePartLimitHeightSpec {
-  height: 75px;
-  overflow: hidden;
-  position: relative;
-}
-.slideDown {
-  background-color: #fff;
-  position: absolute;
-  bottom: 0px;
-  right: 0px;
-  color: @colorBlue;
-  height: 25px;
-  line-height: 25px;
-  box-shadow: -2px 0px 15px 0px #fff;
-  cursor: pointer;
-  i{
-    width: 10px;
-    height: 7px;
-    display: inline-block;
-    position: relative;
-    top: -2px;
-    background: url('../images/down.png') center center no-repeat;
-  }
-}
-.slideup {
-  background-color: #fff;
-  position: relative;
-  float: right;
-  bottom: 0px;
-  right: 0px;
-  color: @colorBlue;
-  cursor: pointer;
-  i{
-    width: 10px;
-    height: 7px;
-    display: inline-block;
-    position: relative;
-    top: -2px;
-    background: url('../images/up.png') center center no-repeat;
-  }
-}
-.disclaimer {
-  cursor: pointer;
-  height: 40px;
-  width: 100%;
-  line-height: 40px;
-  text-align: center;
-  position: fixed;
-  bottom: 0;
-  background-color: #ececec;
-  left: 0;
-  z-index: 98;
-  a {
-    display: block;
-  }
-}
-.infoMsg {
-  width: 20px;
-  height: 20px;
-  position: absolute;
-  top: 2px;
-  right: 0px;
-  cursor: pointer;
-  display: none;
-  background: url('../images/msg1.png') center center no-repeat;
-}
-.infoMsg:hover {
-  background: url('../images/msg2.png') center center no-repeat;
-}
-.infoMsgParent {
-  position: relative;
-}
-.infoMsgParent:hover {
-  .infoMsg {
-    display: block;
-  }
-}
-.responsibility {
-  text-align: center;
-  font-size: 12px;
-  color: #979797;
-  padding-top: 15px;
-}
-
-/*******病情提示*******/
-.illnessWrap{
-  padding: 30px 60px;
-  .conditionHintPub h4{
-    background-color:#fff;
-    font-size: 28px;
-  }
-  .popupModal{
-    width: 350px;
-  }
-  .conditionHintPub .conditionMain{
-    padding: 20px 0;
-  }
-  .makesureResult {
-    cursor: pointer;
-    color: #267FD7;
-  }
-  .mayResultSelect  .sanjiao{
-    width: 18px;
-    height: 18px;
-    display: inline-block;
-    position: relative;
-    top: 3px;
-    background: url(/images/select.png) center center no-repeat;
-  }
-  .conditionHintTips .mayIllness{
-    line-height: 30px;
-    span,a,.modalMainOne,.modalMainTwo{
-      border-bottom:none;
-    }
-    .diagName {
-      border-bottom: 1px solid #1E1E1E;
-    }
-    .sriticalinfo {
-      height:30px;
-      background:#F5F5F5;
-      line-height: 30px;
-      margin: 10px 0;
-  }
-    span .infoMsg{
-      float: none;
-      top: 5px;
-    }
-    .mayResult{
-      margin: 20px 0 0 0;
-      display: inline-block;
-    }
-  }
-  
-  .mayResult {
-    margin: 20px 0 0 0;
-    color: #838383;
-    position: relative;
-  }
-  .mayIllness span {
-    position: relative;
-  }
-  
-}
-
-/************治疗方案****************/
-.treatBox {
-  position: absolute;
-  width: 100%;
-  height: 100%;
-  overflow-y: auto;
-}
-.treatWrap{
-  padding: 30px 60px;
-  .treatMedicineWarp{
-    padding: 30px 0;
-  }
-  .conditionHintPub .conditionMain{
-    padding: 30px 0;
-    margin-top: 30px;
-    border-top:1px #E8EAEC solid;
-    .treatPlanWrap{
-      padding-bottom:30px;
-      border-bottom:1px #E8EAEC solid;
-    }
-    .treatPlan{
-      font-size: 22px;
-      font-weight: normal;
-    }
-    .commonTreat{
-      float: left;
-      margin-left: 65px;
-    }
-    .treatDrug{
-      font-size: 22px;
-      margin-bottom: 30px;
-    }
-    .drugWarp{
-      .medicinePart{
-        margin-bottom: 20px;
-      }
-      .drugType{
-        width: 158px;
-        float: left;
-        p{
-          margin-left: 10px;
-        }
-      }
-      .drugCont{
-        margin-left: 158px;
-      }
-      .drug{
-        display: inline-block;
-        margin:0 20px 10px 0;
-        .medicineWaring{
-          display: inline-block;
-          padding: 0 3px;
-          height: 18px;
-          font-size: 12px;
-          background: #F4C051;
-          border-radius: 4px;
-          vertical-align: middle;
-        }
-        .medicineWaringDis {
-          background-color: #fff;
-          color: @grayColor;
-          font-size: 12px;
-          border-radius: 4px;
-          line-height: 18px;
-          border: 1px solid @grayColor;
-        }
-        .medicineWaringDisMsg {
-          color: @grayColor;
-          i {
-            color: @grayColor;
-          }
-        }
-        .medicineDis {
-          color: @grayColor;
-        }
-        .medicine {
-          position: relative;
-          .infoMsg {
-            right: -20px;
-            top: 0;
-          }
-        }
-        .medicine:hover {
-          .infoMsg {
-            display: inline-block;
-          }
-        }
-        p{
-          color: #7C828E;
-          i{
-            color: #004BD9 ;
-          }
-        }
-
-      }
-    }
-  }
-  .conditionHintPub h4{
-    background-color:#fff;
-    font-size: 24px;
-    font-weight: normal;
-    .diseaseName{
-      font-size: 24px;
-    }
-  }
-  .treatMedicineNullText, .treatPlanNullText {
-    font-size: 20px;
-  }
- 
-}
-.treatPlanNullWrap .treatPlanNullText {
-  margin-top: 30px;
-}

+ 1 - 1
src/css/information.less

@@ -191,7 +191,7 @@
     border-radius: 0;
     border: none;
     background-color: #F5F6F7;
-    background: url('../images/icon_current.png') center center no-repeat;
+    background: url('../images/icon_current.png') centercenterno-repeat;
   }
 
   a:visited {

+ 101 - 0
src/css/informationOut.css

@@ -0,0 +1,101 @@
+
+@media print {
+  body{
+    background: #ffffff;
+    overflow-y: hidden;
+  }
+  #Print{
+    overflow-y: hidden;
+    background: #fff;
+  }
+
+  .scaletitle{
+    display: block;
+  }
+  .info_left{
+    width: 527px;
+    margin:30px auto;
+    display: block;
+    overflow: hidden;
+    border:1px solid #D8D8D8;
+  }
+  .contentList{
+    max-width: 100%;
+    border-bottom: 1PX solid #F3F3F3;
+    margin-bottom: 6px;
+  }
+  .item-list{
+    padding: 0 21px;
+  }
+  .item-title,.item-titles{
+    font-size: 14px;
+    font-weight: 400;
+    color: #333333;
+    line-height: 20px;
+    margin-top: 14px;
+  }
+  .item-content{
+    margin: 10px 0;
+    display: flex;
+    flex-flow: wrap;
+  }
+  .radio {
+    display: flex;
+    margin: 5px;
+    margin-right: 25px;
+  } 
+  label{
+    font-weight: 400;
+    color: #666666;
+    line-height: 20px;
+  }
+  label> input{
+    margin-right: 6px;
+  }
+  .num{
+    margin-left: 10px;
+  }
+  .recommend{
+    width: 18px;
+    height: 18px;
+  }
+  .result{
+    background: #EDFAFF;
+    border-radius: 10px;
+    font-size: 14px;
+    font-weight: 500;
+    color: #333333;
+    display: none;
+    margin: 0;
+    text-align: center;
+  }
+  .result_box{
+    margin:0;
+    display: inline-block;
+  }
+  .result_left{
+    display: flex;
+  }
+  .result_left>span{
+    display: block;
+    width: 250px;
+  }
+  .hel{
+    width: 21px;
+    height: 21px;
+    background: #2C96E5;
+    border-radius: 50%;
+    color: #fff;
+    font-size: 12px;
+    vertical-align: middle;
+    margin-right: 9px;
+    float: left;
+    display: none;
+  }
+  .name,.card{
+    border-top: none;
+  }
+  .name,.age,.sex,.cards{
+    border-left: none;
+  }
+}

+ 419 - 131
src/css/informationOut.less

@@ -1,19 +1,19 @@
-* {
-    margin: 0;
-    padding: 0;
-  }
-
+@import './common.less';
   ul,
   li {
     list-style: none;
   }
 
+div,li,span,i,p,h1,h2,h3,h4,h5,pre{
+  font-family: '微软雅黑', '宋体';
+}
   table {
     border-collapse: collapse;
     border-spacing: 0;
   }
 
   body {
+    /*min-width: 650px;*/
     font-size: 14px;
     overflow-y: hidden;
     font-family: '微软雅黑', '宋体';
@@ -24,18 +24,21 @@
   }
 
   h1 {
-    margin: 0 0px 5px 0px !important;
+    margin: 0 0px 15px 0px !important;
     font-size: 18px !important;
     /*line-height: 37px;*/
     padding: 0 0 0 40px;
   }
 
   .titleH2 {
-    font-size: 16px;
+    font-size: 18px;
     position: relative;
+    line-height: 17px;
     background: #fff;
     padding-right: 6px;
-    /*line-height: 30px;*/
+    padding-left: 15px;
+    font-weight: bold;
+    border-left: 4px solid @staticMainColor;
   }
 
   .content {
@@ -43,9 +46,11 @@
     height: 550px;
   }
   .infoBox {
-    border-left: 1px solid #969C9F;
-    padding: 0 0 0 33px;
-    margin: 0 0 4px 0;
+    .contentWrapper{
+      pre{
+        margin: 0 0 6px;
+      }
+    }
   }
   .infoWrapper {
     padding: 0 0 0 40px;
@@ -72,13 +77,22 @@
   .infos {
     height: 100%;
     overflow-y: auto;
-    padding: 0 60px 0 0;
+    overflow-x:hidden
+    /*padding: 0 60px 0 0;
+    width: calc(100% - 195px);*/
   }
 
   .infos>div {
-    margin-right: 160px;
+    margin-right: 6.5%;
+    .contentWrapper img{
+      max-width: 100%;
+    }
   }
 
+.infoBox {
+  border-bottom: 1px #E6E6E6 solid;
+  margin-bottom: 10px;
+}
   .title {
     position: relative;
     line-height: 24px;
@@ -118,84 +132,114 @@
         }
     }
   }
-  .anchors {
-    width: 200px;
-    position: absolute;
-    right:15px;
-    top: 0;
-    margin-right: 14px;
-    overflow: auto;
-    height: 100%;
-  }
-
-  .anchors ul {
-    padding: 15px 0px 15px 20px;
-    border-radius: 4px;
-    border: 1px solid #F5F6F7;
-    background-color: #F5F6F7;
-    line-height: 19px;
-  }
-
-  .anchors li {
-    position: relative;
-    border-left: 2px solid #E0E2E3;
-  }
+.anchors {
+  width: 155px;
+  position: absolute;
+  right:15px;
+  top: 0;
+  margin-right: 14px;
+  overflow-y: auto;
+  background-color: #EDFAFF;
+  padding: 20px 0;
+  height: calc(100% - 50px);
+  overflow-x: hidden;
+}
 
-  .anchors .anchor-line {
-    height: 20px;
-    width: 0;
-    border-left: 2px solid #E0E2E3;
-  }
+.anchors ul {
+  margin-left: 21px;
+  padding: 15px 0px 15px 10px;
+  border-radius: 4px;
+  border: 1px solid #EDFAFF;
+  /*background-color: #EDFAFF;*/
+  line-height: 19px;
+}
 
-  .anchors .anchor-line:last-child {
-    display: none;
-  }
+.anchors li {
+  position: relative;
+  border-left: 1px solid #8DD1EE;
+}
+.anchors li:first-child {
+  padding-top:20px
+}
 
-  .anchors i {
-    position: absolute;
-    display: inline-block;
-    width: 8px;
-    height: 8px;
-    border-radius: 5px;
-    border: 1px solid #E0E2E3;
-    background-color: #E0E2E3;
-    left: -6px;
-    top: 5px;
-  }
+.anchors .anchor-line {
+  height: 20px;
+  width: 0;
+  border-left: 1px solid #8DD1EE;
+}
 
-  .anchors a {
-    display: inline-block;
-    position: relative;
-    top: 0;
-    left: 0;
-    width: 132px;
-    padding: 0 0px 0 20px;
-    text-decoration: none;
-    font-size: 14px;
-    font-weight: 400;
-    color: #777;
-    word-wrap: break-word;
-  }
+.anchors .a-circle{
+  width: 10px;
+  height: 10px;
+  position: absolute;
+  top: 28px;
+  left: 27px;
+  z-index: 1;
+  background: url('../images/icon-circular2.png');
+  background-repeat: no-repeat;
+  background-position-x: center;
+  background-position-y: center;
+  background-size: 10px 10px;
+  background: none\9;
+  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../images/icon-circular2.png',sizingMethod='scale');
 
-  .anchors .active a {
-    color: #3B9ED0 !important;
-    font-weight: 700 !important;
-  }
+}
+.anchors .a-circle-2{
+  position: relative;
+  margin-top: -16px;
+  top: 0;
+}
+.anchors i {
+  position: absolute;
+  display: inline-block;
+  width: 10px;
+  height: 10px;
+  left: -6px;
+  top: 8px;
+  z-index: 1;
+  background: url('../images/icon-circular.png');
+  background-repeat: no-repeat;
+  background-position-x: center;
+  background-position-y: center;
+  background-size: 10px 10px;
+  background: none\9;
+  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../images/icon-circular.png',sizingMethod='scale');
+}
+.anchors li:first-child i{
+  top:29px;
+}
+.anchors a {
+  display: inline-block;
+  position: relative;
+  top: 4px;
+  left: 0;
+  width: 90px;
+  padding: 0 0px 0 20px;
+  text-decoration: none;
+  font-size: 14px;
+  font-weight: 400;
+  word-wrap: break-word;
+}
 
-  .anchors .active i {
-    width: 16px;
-    height: 16px;
-    top: 1px;
-    left: -8px;
-    border-radius: 0;
-    border: none;
-    background-color: #F5F6F7;
-    background: url('../images/icon_current.png') center center no-repeat;
-  }
+.anchors .active a {
+  /*color: #3B9ED0 !important;
+  font-weight: 700 !important;*/
+}
 
-  a:visited {
-    color: #777;
-  }
+.anchors .active i {
+  width: 18px;
+  height: 9px;
+  top: 10px;
+  left: -6px;
+  border: none;
+  background: url('../images/icon_current.png');
+  background-repeat: no-repeat;
+  background-position-x: center;
+  background-position-y: center;
+  background-size: 18px 9px;
+  background: none\9;
+  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../images/icon_current.png',sizingMethod='scale');
+}
   .disCopy {
     -webkit-touch-callout: none;
     -webkit-user-select: none;
@@ -207,43 +251,31 @@
   .tabBox{
     position: relative;
     background: #fff;
-    height: 38px;
-    border-bottom: 1px solid #E6E6E6;
-    padding: 0 40px;
+    padding: 0 40px 0;
   }
   .showWhich {
-    width: 94px;
+    width: 187px;
     text-align: center;
-    padding-top: 16px;
-    position: absolute;
-    z-index: 20;
-    bottom: -6px;
-    img {
-      width: 8px;
-      position: absolute;
-      top: 29px;
-      left: 76px;
-    }
+    padding: 20px 0 10px;
+    position: relative;
     .showWhichSelect {
-      border-radius: 4px 4px 0px 0px;;
-      background: #E2F1F8;
-      height: 30px;
-      line-height: 30px;
       display: inline-block;
+      color: @staticMainColor;
+      background: url("../images/d1.png") 200px 9px #EAFCFF no-repeat;
+      font-size: 16px;
+      padding:1px 24px 2px 10px;
       width: 100%;
-      padding-right: 20px;
-      padding-left: 10px;
-      box-sizing: border-box;
       cursor: pointer;
+      text-align: left;
     }
     ul {
       display: none;
       position: absolute;
-      left: -9px;
-      top: 48px;
+      left: 0;
+      top: 52px;
       z-index: 10;
       background-color: #fff;
-      width: 110px;
+      width: 220px;
       box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.18);
       border-radius: 4px;
       border: 1px solid #E6E6E6;
@@ -261,25 +293,35 @@
       }
     }
   }
-  .tabList{
-    position: absolute;
-    bottom: 0;
-    left: 186px;
-  }
-  .tab{
-    display: inline-block;
-    padding: 4px 18px 5px;
-    margin-right: 5px;
-    background: #EEEEEE;
-    border-radius:6px 6px 0px 0px;
-    cursor: pointer;
-    font-size: 14px;
-    color: #333;
-  }
-  .activeTab{
-    background: #3B9ED0;
-    color: #fff;
+  .titleCont{
+    background: #fff;
+    padding-left: 35px;
+    /*padding-bottom: 20px;*/
   }
+.titleCont .title{
+  font-size: 20px;
+  font-weight: bold;
+  margin-right: 33px;
+}
+.tabList{
+  display: inline-block;
+}
+.tab{
+  display: inline-block;
+  padding: 0 5px;
+  margin-right: 20px;
+  background: #fff;
+  border-radius:2px;
+  cursor: pointer;
+  font-size: 11px;
+  color: #2A9BD5;
+  border:1px #2A9BD5 solid;
+  vertical-align: text-bottom;
+}
+.activeTab{
+  background: #2A9BD5;
+  color: #fff;
+}
   .ql-align-right{
     text-align: right;
   }
@@ -294,7 +336,7 @@
 }
 .empty{
   text-align: center;
-  margin-top: 32vh;
+  padding-top: 32vh;
   img{
     width: 140px;
     height: 75px;
@@ -307,12 +349,258 @@
 }
 .open-win{
   position: absolute;
-  right: 15px;
-  bottom: 8px;
+  right: 38px;
+  bottom: 28px;
   cursor: pointer;
   color: #3B9ED0;
   font-size: 14px;
   padding-left: 30px;
-  background: url("../images/link.png") 0 -2px no-repeat;
-  background-size: 25px 25px;
+  background: url("../images/link.png") 4px 0 no-repeat;
+  background-size: 23px 23px;
+}
+.footer{
+  width: 100%;
+  height: 52px;
+  background: #172238;
+  padding-top: 8px;
+  position: absolute;
+  bottom: 0;
+  z-index: 1;
+  p{
+    color:#fff;
+    text-align: center;
+    font-size: 12px;
+    white-space: nowrap;
+  }
+}
+
+.infos::-webkit-scrollbar, .anchors::-webkit-scrollbar {
+  /*滚动条整体样式*/
+  width: 6px;
+  height: 100px;
+  /*高宽分别对应横竖滚动条的尺寸*/
+  background: #ebeef5;
+  -webkit-box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.2);
+}
+
+.infos::-webkit-scrollbar-thumb, .anchors::-webkit-scrollbar-thumb {
+  /*滚动条里面小方块*/
+  width: 6px;
+  border-radius: 5px;
+  background: @staticMainColor;
+  height: 100px;
+}
+
+.infos::-webkit-scrollbar-track, .anchors::-webkit-scrollbar-track {
+  /*滚动条里面轨道*/
+  border-radius: 2px;
+  background: #f0f2f5;
+  opacity: .2;
+}
+
+.scaletitle{
+  font-size: 20px;
+  font-weight: 500;
+  color: #333333;
+  line-height: 28px;
+  margin: 30px 0 8px 0;
+  text-align: center;
+  display: none;
+}
+.scaleBox{
+  border-bottom: none;
+}
+.contentList{
+  max-width: 100%;
+  border-bottom: 1PX solid #F3F3F3;
+  margin-bottom: 6px;
+  .item-list{
+    padding: 0 21px;
+    color: #666666;
+    .item-title,.item-titles{
+      font-size: 14px;
+      font-weight: 400;
+      color: #333333;
+      line-height: 20px;
+      margin-top: 14px;
+    }
+    .item-content{
+      margin: 10px 0;
+      display: flex;
+      flex-flow: wrap;
+      .radio {
+        display: flex;
+        margin: 5px;
+        margin-right: 25px;
+        label{
+          font-weight: 400;
+          color: #666666;
+          line-height: 20px;
+          & input{
+            margin-right: 6px;
+          }
+          .num{
+            margin-left: 10px;
+          }
+        }
+        .recommend{
+          width: 18px;
+          height: 18px;
+        }
+      } 
+    }
+  }
+}
+.scalebot{
+  margin-bottom: 44px;
+  text-align: right;
+  overflow: hidden;
+  .but{
+    width: 94px;
+    height: 34px;
+    background: #FFFFFF;
+    border-radius: 8px;
+    border: 1px solid #2A9BD5;
+    font-size: 16px;
+    font-weight: 400;
+    color: #2A9BD5;
+    margin-right: 9px;
+    float: right;
+  }
+  .score{
+    font-size: 16px;
+    font-weight: 400;
+    color: #333333;
+    margin-right: 30px;
+    display: none;
+    float: right;
+    line-height: 34px;
+  }
+}
+.result{
+  background: #EDFAFF;
+  border-radius: 10px;
+  font-size: 14px;
+  font-weight: 500;
+  color: #333333;
+  display: none;
+  margin: 0 75px;
+  text-align: center;
+  .result_box{
+    padding:25px 56px;
+    display: inline-block;
+    .result_left{
+      display: flex;
+      & span{
+        display: block;
+        width: 42px;
+      }
+      .hel{
+        width: 21px;
+        height: 21px;
+        background: #2C96E5;
+        border-radius: 50%;
+        color: #fff;
+        font-size: 12px;
+        vertical-align: middle;
+        margin-right: 9px;
+        float: left;
+      }
+      
+    }
+  }
+  
+}
+
+.foot{
+  margin-bottom: 20px;
+  margin-top: 40px;
+  display: none;
+  overflow: hidden;
+  .foot_box{
+    width: 300px;
+    margin: auto;
+    .printing{
+      float: left;
+      width: 94px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      border: 1px solid #333333;
+      cursor: pointer;
+      line-height: 32px;
+      & img{
+        margin: 0 12px 0 14px;
+        vertical-align: middle;
+      }
+    }
+    .printing:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+    .copy{
+      width: 132px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      float: left;
+      border: 1px solid #333333;
+      text-align: center;
+      line-height: 32px;
+      margin-left: 38px;
+      cursor: pointer;
+    }
+    .copy:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+  }
+  
+}
+#inputs{
+  position: absolute;top: 0;left: 0;opacity: 0;z-index: -10
+}
+#Print{
+  width: 100%!important;
+  overflow-x: hidden;
+}
+.scale{
+  .infos-box{
+    margin: 0 71px 20px 38px;
+    .infoWrapper {
+      padding: 0 75px;
+    }
+    .scalebot{
+      padding-right: 75px;
+    }
+  }
+}
+.chColor{
+  color: red!important;
+}
+.info_left {
+  width: 527px;
+  margin:30px auto;
+  display: none;
+  overflow: hidden;
+  border:1px solid #D8D8D8;
+  li {
+    width: 50%;
+    height: 30px;
+    padding: 0 10px;
+    box-sizing: border-box;
+    border: 1px solid #bbbfc1;
+    border-right: none;
+    font-size: 14px;
+    float: left;
+    border-bottom: none;
+  }
+  .name,.card{
+    border-top: none;
+  }
+  .name,.age,.sex,.cards{
+    border-left: none;
+  }
 }

+ 101 - 0
src/css/print.css

@@ -0,0 +1,101 @@
+
+@media print {
+  body{
+    background: #ffffff;
+    overflow-y: hidden;
+  }
+  #Print{
+    overflow-y: hidden;
+    background: #fff;
+  }
+
+  .scaletitle{
+    display: block;
+  }
+  .info_left{
+    width: 527px;
+    margin:30px auto;
+    display: block;
+    overflow: hidden;
+    border:1px solid #D8D8D8;
+  }
+  .contentList{
+    max-width: 100%;
+    border-bottom: 1PX solid #F3F3F3;
+    margin-bottom: 6px;
+  }
+  .item-list{
+    padding: 0 21px;
+  }
+  .item-title,.item-titles{
+    font-size: 14px;
+    font-weight: 400;
+    color: #333333;
+    line-height: 20px;
+    margin-top: 14px;
+  }
+  .item-content{
+    margin: 10px 0;
+    display: flex;
+    flex-flow: wrap;
+  }
+  .radio {
+    display: flex;
+    margin: 5px;
+    margin-right: 25px;
+  } 
+  label{
+    font-weight: 400;
+    color: #666666;
+    line-height: 20px;
+  }
+  label> input{
+    margin-right: 6px;
+  }
+  .num{
+    margin-left: 10px;
+  }
+  .recommend{
+    width: 18px;
+    height: 18px;
+  }
+  .result{
+    background: #EDFAFF;
+    border-radius: 10px;
+    font-size: 14px;
+    font-weight: 500;
+    color: #333333;
+    display: none;
+    margin: 0;
+    text-align: center;
+  }
+  .result_box{
+    margin:0;
+    display: inline-block;
+  }
+  .result_left{
+    display: flex;
+  }
+  .result_left>span{
+    display: block;
+    width: 250px;
+  }
+  .hel{
+    width: 21px;
+    height: 21px;
+    background: #2C96E5;
+    border-radius: 50%;
+    color: #fff;
+    font-size: 12px;
+    vertical-align: middle;
+    margin-right: 9px;
+    float: left;
+    display: none;
+  }
+  .name,.card{
+    border-top: none;
+  }
+  .name,.age,.sex,.cards{
+    border-left: none;
+  }
+}

+ 292 - 0
src/css/searchStaticList.less

@@ -0,0 +1,292 @@
+@import './common.less';
+
+.staticListWrap {
+  position: absolute;
+  width: 100%;
+  min-height: 100%;
+  /*height: 100%;
+  min-width: 900px;*/
+  padding: 60px 20px 20px;
+  box-sizing: border-box;
+  background-color: #DDE2E4;
+  /*overflow: auto;*/
+  .staticMainWrap {
+    background-color: #fff;
+    padding: 0 60px 20px 60px;
+  }
+  .staticResult {
+      .loading{
+        text-align: center;
+        img{
+          width: 50px;
+          height: 50px;
+        }
+      }
+  }
+  .staticTopCenter {
+    width: 100%;
+    position: fixed;
+    top: 0;
+    left: 0;
+    z-index: 10;
+    height: 60px;
+    line-height: 60px;
+    background-color: @staticMainColor;
+  }
+  .staticTopLogo {
+      height: 25px;
+      margin-top: 16px;
+      margin-left: 50px;
+  }
+  .staticTopTab {
+    padding-top: 20px;
+    background-color: #fff;
+    ul {
+      text-align: left;
+    }
+    li {
+      float: left;
+      font-size: 16px;
+      color: #333;
+      margin: 0 2% 10px;
+      cursor: pointer;
+      padding-bottom: 2px;
+    }
+    .tabFst {
+      color: @staticMainColor;
+    }
+  }
+  .staticTopSearch {
+    width: 95.3%;
+    max-width: 750px;
+    height: 50px;
+    line-height: 50px;
+    background-color: #fff;
+    border-radius: 8px;
+    padding-right: 75px;
+    box-sizing: border-box;
+    position: relative;
+    overflow: hidden;
+    border: 1px solid #979797;
+    input {
+      height: 50px;
+      line-height: 50px;
+      box-sizing: border-box;
+      float: left;
+      width: 100%;
+      padding: 0 30px;
+    }
+    .searchBtn {
+      width: 75px;
+      height: 50px;
+      line-height: 50px;
+      border-left: 1px solid #979797;
+      position: absolute;
+      right: 0;
+      top: 0;
+      cursor: pointer;
+      color: #666;
+      padding-left: 40px;
+      box-sizing: border-box;
+      img {
+        position: absolute;
+        left: 27px;
+        top: 15px;
+        width: 20px;
+        height: 20px;
+      }
+    }
+  }
+  .foryou {
+    width: 100%;
+    text-align: center;
+    margin:80px 0 50px 0;
+    color: #333;
+    font-size: 30px;
+    font-weight: bold;
+  }
+  .staticBg {
+    width: 800px;
+    margin: 0 auto;
+    img {
+      width: 100%;
+    }
+  }
+  .navTab {
+      height: 70px;
+      line-height: 70px;
+      a {
+        text-decoration: none;
+        color: @staticMainColor;
+      }
+  }
+}
+.staticResult {
+    .resultItem {
+      padding: 14px 38px;
+      background-color: #EDFAFF;
+      margin-bottom: 14px;
+        cursor: pointer;
+        div {
+            line-height: 20px;
+            span {
+                display: inline-block;
+            }
+            margin-bottom: 10px;
+        }
+    }
+    .type {
+        border-radius: 3px;
+        color: #fff;
+        padding: 0 5px;
+        background-color: @staticMainColor;
+    }
+    .code{
+      font-size: 14px;
+      color: #999;
+        margin-left: 10px;
+    }
+    .drug{
+        color: @staticMainColor;
+        margin-left: 10px;
+    }
+    .notice{
+        border: 1px solid @staticMainColor;
+        color: @staticMainColor;
+        border-radius: 3px;
+        margin-left: 10px;
+        padding: 0 5px;
+    }
+    .same {
+        color: #666;
+    }
+    .content {
+        word-break: break-all;
+        max-height: 40px;
+        overflow: hidden;
+    }
+    .resultItemEmpty {
+        text-align: center;
+        display: none;
+        img {
+            width: 358px;
+        }
+        p {
+            color: #999;
+        }
+    }
+}
+
+
+.pagination{
+    margin: 35px 0 20px 0  ;
+    text-align: right;
+    .goNum {
+        input::-webkit-outer-spin-button,
+        input::-webkit-inner-spin-button {
+            -webkit-appearance: none;
+        }
+      font-size: 12px;
+        input {
+          width: 25px;
+          height: 22px;
+          line-height: 22px;
+            text-align: center;
+            border-radius: 3px;
+            border: 1px solid @staticMainColor;
+            color: @staticMainColor;
+            box-sizing: border-box;
+        }
+    }
+    .select {
+      font-size: 12px;
+        color: @staticMainColor;
+      height: 22px;
+      line-height: 22px;
+        border: 1px solid @staticMainColor;
+        border-radius: 3px;
+        box-sizing: border-box;
+        position: relative;
+        margin-right: 10px;
+        outline: none;
+      background: none;
+    }
+    .totalSum{
+        display: inline-block;
+        font-size:12px;
+      height: 22px;
+      line-height: 22px;
+        color: @staticMainColor;
+        margin-right: 10px;
+        position: relative;
+    }
+    .pageNum,.prePage,.nextPage, .more{
+      font-size: 12px;
+        display: inline-block;
+        box-sizing: border-box;
+      /*width: 30px;
+      height: 30px;*/
+        line-height: 30px;
+        cursor: pointer;
+        margin: 0 10px 0 0;
+        text-align: center;
+        color: @staticMainColor;
+        border-radius: 3px;
+    }
+  .pageNum {
+    text-decoration: underline;
+  }
+    .prePage,.nextPage{
+        img{
+            position: relative;
+            top: 0px   ;
+        }
+    }
+     .more{
+        cursor: not-allowed;
+    }
+    .arrowPage{
+      width: 10px;
+    }
+    .activePage{
+      color: #FE7D3D;
+      text-decoration: none;
+    }
+    
+    .tipIcon{
+      color: #777;
+      cursor: pointer;
+      display: inline-block;
+      margin-left: 6px;
+      margin-right: 2px;
+    }
+    .toolTipIcon{
+        width: 18px;
+        position: relative;
+        top: 3px;
+    }
+    
+    .tooltip{
+        visibility: hidden;
+        position: relative;
+        padding: 7px 10px;
+        border-radius: 4px;
+        margin: 100px auto;
+        background-color: #4D4D4D;
+        text-align: center;
+        color: #fff;
+        font-size: 14px;
+    }
+    .tooltip:before{
+        content: '';
+        display: block;
+        position: absolute;
+        bottom: 9px;
+        left: -12px;
+        border-bottom: 6px solid transparent;
+        border-top: 6px solid transparent;
+        border-left: 6px solid transparent;
+        border-right: 6px solid #4D4D4D;
+    }
+    
+}

+ 545 - 0
src/css/staticInfo.less

@@ -0,0 +1,545 @@
+@import './common.less';
+
+  ul,
+  li {
+    list-style: none;
+  }
+  div,li,span,i,p,h1,h2,h3,h4,h5,pre{
+    font-family: '微软雅黑', '宋体';
+  }
+  table {
+    border-collapse: collapse;
+    border-spacing: 0;
+  }
+
+  body {
+    font-size: 14px;
+    overflow-y: hidden;
+    font-family: '微软雅黑', '宋体';
+    background: #dde2ea;
+    height: 100%;
+    color: #1E1E1E;
+    line-height: 21px;
+  }
+  .banner{
+    width: 100%;
+    position: fixed;
+    top: 0;
+    left: 0;
+    z-index: 10;
+    height: 60px;
+    line-height: 60px;
+    background-color: @staticMainColor;
+  }
+.staticTopLogo {
+  height: 25px;
+  margin-top: 16px;
+  margin-left: 50px;
+}
+  h1 {
+    margin: 0 0px 15px 0px !important;
+    font-size: 18px !important;
+    /*line-height: 37px;*/
+    padding: 0 0 0 40px;
+  }
+
+  .titleH2 {
+    font-size: 18px;
+    position: relative;
+    background: #fff;
+    padding-right: 6px;
+    padding-left: 15px;
+    font-weight: 600;
+    border-left: 4px solid @staticMainColor;
+    /*line-height: 30px;*/
+    color: #333333;
+  }
+
+  .content {
+    position: relative;
+    height: 550px;
+  }
+  .infoBox {
+    border-bottom: 1px solid #E6E6E6;
+    padding: 0;
+    margin: 0 0 20px 0;
+  }
+  .infoBox:hover {
+    background-color: #fff;
+  }
+  .infoWrapper {
+    padding: 0 0 0 40px;
+  }
+  .circleBox {
+    position: absolute;
+    z-index: 10;
+    background: #fff;
+    left: -38px;
+    height: 32px;
+    top: -1px;
+  }
+  // .circle {
+  //   display: inline-block;
+  //   *display:inline;
+  //   *zoom:1;
+  //   width: 10px;
+  //   height: 10px;
+  //   border-radius: 50%;
+  //   background: #3B9ED0;
+  //   position: relative;
+  //   top: 2px;
+  // }
+  .infos {
+    height: 100%;
+    overflow-y: auto;
+    border-top: 1px solid #E6E6E6;
+  }
+
+  .infos>div {
+    margin-right: 6.5%;
+    .contentWrapper img{
+      max-width: 100%;
+    }
+  }
+
+  .title {
+    position: relative;
+    line-height: 24px;
+    
+    margin: 18px 0 4px;
+  }
+
+  .line {
+    border-bottom: 1px dashed #ccc;
+  }
+
+  .container {
+    /*width:100%;*/
+    overflow: hidden;
+    background: #fff;
+    margin: 0 20px;
+    /*padding: 8px 0 0px 0px;
+    left: 0;
+    right: 0;*/
+    display: none;
+    position: relative;
+  }
+
+  pre {
+    white-space: pre-wrap;
+    word-wrap: break-word;
+    color: #1E1E1E;
+    ol li {
+      list-style: decimal;
+      list-style-position:inside;
+    }
+    ul {
+      padding-left: 20px;
+      li {
+            list-style-position:inside;
+            list-style: inside;
+      }
+    }
+  }
+  .anchors {
+    width: 210px;
+    position: absolute;
+    right:15px;
+    top: 0;
+    margin-right: 14px;
+    overflow-y: auto;
+    background-color: #EDFAFF;
+    padding: 25px 0;
+    // height: calc(100% - 50px);
+    overflow-x: hidden;
+  }
+
+  .anchors ul {
+    margin-left: 30px;
+    padding: 15px 0px 15px 20px;
+    border-radius: 4px;
+    border: 1px solid #EDFAFF;
+    /*background-color: #EDFAFF;*/
+    line-height: 19px;
+  }
+
+  .anchors li {
+    position: relative;
+    border-left: 1px solid #8DD1EE;
+  }
+.anchors li:first-child {
+  padding-top:30px
+}
+
+  .anchors .anchor-line {
+    height: 30px;
+    width: 0;
+    border-left: 1px solid #8DD1EE;
+  }
+
+.anchors .a-circle{
+  width: 16px;
+  height: 16px;
+  position: absolute;
+  left: 43px;
+  z-index: 1;
+  background: url('../images/icon-circular2.png');
+  background-repeat: no-repeat;
+  background-position-x: center;
+  background-position-y: center;
+}
+.anchors .a-circle-2{
+  margin-left: 0;
+  margin-top: -16px;
+}
+  .anchors i {
+    position: absolute;
+    display: inline-block;
+    width: 16px;
+    height: 16px;
+    left: -9px;
+    top: 5px;
+    z-index: 1;
+    background: url('../images/icon-circular.png');
+    background-repeat: no-repeat;
+    background-position-x: center;
+    background-position-y: center;
+  }
+.anchors li:first-child i{
+  top:37px;
+}
+  .anchors a {
+    display: inline-block;
+    position: relative;
+    top: 4px;
+    left: 0;
+    width: 126px;
+    padding: 0 0px 0 20px;
+    text-decoration: none;
+    font-size: 16px;
+    font-weight: 400;
+    word-wrap: break-word;
+  }
+
+  .anchors .active a {
+    /*color: #3B9ED0 !important;
+    font-weight: 700 !important;*/
+  }
+
+  .anchors .active i {
+    width: 30px;
+    height: 15px;
+    top: 6px;
+    left: -15px;
+    border-radius: 0;
+    border: none;
+    background-color: #F5F6F7;
+    background: url('../images/icon_current2.png');
+    background-repeat: no-repeat;
+    background-position-x: center;
+    background-position-y: center;
+  }
+  .disCopy {
+    -webkit-touch-callout: none;
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+  }
+  .tabBox{
+    position: relative;
+    background: #fff;
+    padding: 0 38px;
+    margin: 60px 20px 0;
+    overflow: hidden;
+  }
+.tabBox .title{
+  display: block;
+  font-size: 20px;
+  font-weight: bold;
+  color: rgba(0, 0, 0, 0.85);
+  line-height: 28px;
+  margin: 26px 0 14px 0;
+}
+  .tabList{
+    display: inline-block;
+  }
+  .tab{
+    display: inline-block;
+    padding: 5px 14px;
+    margin-right: 5px;
+    background: #EEEEEE;
+    cursor: pointer;
+    font-size: 14px;
+    color: #333333;
+    border-radius: 6px 6px 0px 0px;
+
+  }
+  .activeTab{
+    background: @staticMainColor;
+    color: #fff;
+    font-size: 16px;
+  }
+  .ql-align-right{
+    text-align: right;
+  }
+  .ql-align-center{
+    text-align: center;
+  }
+.open-win{
+  position: absolute;
+  right: 15px;
+  bottom: 8px;
+  cursor: pointer;
+  color: #3B9ED0;
+  font-size: 14px;
+  padding-left: 30px;
+  background: url("../images/link.png") 0 -2px no-repeat;
+  background-size: 25px 25px;
+  /*img{
+    width: 30px;
+    height: 30px;
+    vertical-align: middle;
+    margin-right: 10px;
+  }*/
+}
+.btmFix {
+  height: 20px;
+  width: calc(100% - 40px);
+  position: fixed;
+  bottom: 0;
+  left: 20px;
+  z-index: 20;
+  background-color: #fff;
+}
+
+.infos::-webkit-scrollbar, .anchors::-webkit-scrollbar {
+  /*滚动条整体样式*/
+  width: 6px;
+  height: 100px;
+  /*高宽分别对应横竖滚动条的尺寸*/
+  background: #ebeef5;
+  -webkit-box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.2);
+}
+
+.infos::-webkit-scrollbar-thumb, .anchors::-webkit-scrollbar-thumb {
+  /*滚动条里面小方块*/
+  width: 6px;
+  border-radius: 5px;
+  background: @staticMainColor;
+  height: 100px;
+}
+
+.infos::-webkit-scrollbar-track, .anchors::-webkit-scrollbar-track {
+  /*滚动条里面轨道*/
+  border-radius: 2px;
+  background: #f0f2f5;
+  opacity: .2;
+}
+.scaletitle{
+  font-size: 20px;
+  font-weight: 500;
+  color: #333333;
+  line-height: 28px;
+  margin: 30px 0 8px 0;
+  text-align: center;
+  display: none;
+}
+.scaleBox{
+  border-bottom: none;
+}
+.contentList{
+  max-width: 100%;
+  border-bottom: 1PX solid #F3F3F3;
+  margin-bottom: 6px;
+  .item-list{
+    padding: 0 21px;
+    color: #666666;
+    .item-title,.item-titles{
+      font-size: 14px;
+      font-weight: 400;
+      color: #333333;
+      line-height: 20px;
+      margin-top: 14px;
+    }
+    .item-content{
+      margin: 10px 0;
+      display: flex;
+      flex-flow: wrap;
+      .radio {
+        display: flex;
+        margin: 5px;
+        margin-right: 25px;
+        label{
+          font-weight: 400;
+          color: #666666;
+          line-height: 20px;
+          & input{
+            margin-right: 6px;
+          }
+          .num{
+            margin-left: 10px;
+          }
+        }
+        .recommend{
+          width: 18px;
+          height: 18px;
+        }
+      } 
+    }
+  }
+}
+.scalebot{
+  margin-bottom: 44px;
+  text-align: right;
+  overflow: hidden;
+  .but{
+    width: 94px;
+    height: 34px;
+    background: #FFFFFF;
+    border-radius: 8px;
+    border: 1px solid #2A9BD5;
+    font-size: 16px;
+    font-weight: 400;
+    color: #2A9BD5;
+    margin-right: 9px;
+    float: right;
+  }
+  .score{
+    font-size: 16px;
+    font-weight: 400;
+    color: #333333;
+    margin-right: 30px;
+    display: none;
+    float: right;
+    line-height: 34px;
+  }
+}
+.result{
+  background: #EDFAFF;
+  border-radius: 10px;
+  font-size: 14px;
+  font-weight: 500;
+  color: #333333;
+  display: none;
+  margin: 0 75px;
+  text-align: center;
+  .result_box{
+    padding:25px 56px;
+    display: inline-block;
+    .result_left{
+      display: flex;
+      & span{
+        display: block;
+        width: 42px;
+      }
+      .hel{
+        width: 21px;
+        height: 21px;
+        background: #2C96E5;
+        border-radius: 50%;
+        color: #fff;
+        font-size: 12px;
+        vertical-align: middle;
+        margin-right: 9px;
+        float: left;
+      }
+      
+    }
+  }
+  
+}
+
+.foot{
+  margin-bottom: 20px;
+  margin-top: 40px;
+  display: none;
+  overflow: hidden;
+  .foot_box{
+    width: 300px;
+    margin: auto;
+    .printing{
+      float: left;
+      width: 94px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      border: 1px solid #333333;
+      cursor: pointer;
+      line-height: 32px;
+      & img{
+        margin: 0 12px 0 14px;
+        vertical-align: middle;
+      }
+    }
+    .printing:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+    .copy{
+      width: 132px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      float: left;
+      border: 1px solid #333333;
+      text-align: center;
+      line-height: 32px;
+      margin-left: 38px;
+      cursor: pointer;
+    }
+    .copy:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+  }
+  
+}
+#inputs{
+  position: absolute;top: 0;left: 0;opacity: 0;z-index: -10
+}
+#Print{
+  width: 100%!important;
+  overflow-x: hidden;
+}
+.scale{
+  .infos-box{
+    margin: 0 71px 20px 38px;
+    .infoWrapper {
+      padding: 0 75px;
+    }
+    .scalebot{
+      padding-right: 75px;
+    }
+  }
+}
+.chColor{
+  color: red!important;
+}
+.info_left {
+  width: 527px;
+  margin:30px auto;
+  display: none;
+  overflow: hidden;
+  border:1px solid #D8D8D8;
+  li {
+    width: 50%;
+    height: 30px;
+    padding: 0 10px;
+    box-sizing: border-box;
+    border: 1px solid #bbbfc1;
+    border-right: none;
+    font-size: 14px;
+    float: left;
+    border-bottom: none;
+  }
+  .name,.card{
+    border-top: none;
+  }
+  .name,.age,.sex,.cards{
+    border-left: none;
+  }
+}

+ 548 - 0
src/css/staticInfoOut.less

@@ -0,0 +1,548 @@
+@import './common.less';
+  ul,
+  li {
+    list-style: none;
+  }
+
+div,li,span,i,p,h1,h2,h3,h4,h5,pre{
+  font-family: '微软雅黑', '宋体';
+}
+  table {
+    border-collapse: collapse;
+    border-spacing: 0;
+  }
+
+  body {
+    /*min-width: 650px;*/
+    font-size: 14px;
+    overflow-y: hidden;
+    font-family: '微软雅黑', '宋体';
+    background: #dde2ea;
+    height: 100%;
+    color: #1E1E1E;
+    line-height: 21px;
+  }
+
+  h1 {
+    margin: 0 0px 15px 0px !important;
+    font-size: 18px !important;
+    /*line-height: 37px;*/
+    padding: 0 0 0 40px;
+  }
+
+  .titleH2 {
+    font-size: 18px;
+    position: relative;
+    background: #fff;
+    padding-right: 6px;
+    padding-left: 15px;
+    font-weight: bold;
+    border-left: 4px solid @staticMainColor;
+  }
+
+  .content {
+    position: relative;
+    height: 550px;
+  }
+  .infoBox {
+  }
+  .infoWrapper {
+    padding: 0 0 0 40px;
+  }
+  .circleBox {
+    position: absolute;
+    z-index: 10;
+    background: #fff;
+    left: -38px;
+    height: 32px;
+    top: -1px;
+  }
+  .circle {
+    display: inline-block;
+    *display:inline;
+    *zoom:1;
+    width: 10px;
+    height: 10px;
+    border-radius: 50%;
+    background: #3B9ED0;
+    position: relative;
+    top: 2px;
+  }
+  .infos {
+    height: 100%;
+    overflow-y: auto;
+    /*padding: 0 60px 0 0;*/
+    width: calc(100% - 250px);
+  }
+
+  .infos>div {
+    margin-right: 6.5%;
+    .contentWrapper img{
+      max-width: 100%;
+    }
+  }
+
+.infoBox {
+  border-bottom: 1px #E6E6E6 solid;
+  margin-bottom: 10px;
+}
+  .title {
+    position: relative;
+    line-height: 24px;
+    
+    margin: 0 0 4px;
+  }
+
+  .line {
+    border-bottom: 1px dashed #ccc;
+  }
+
+  .container {
+    width:100%;
+    overflow: hidden;
+    background: #fff;
+    margin: 0 auto;
+    padding: 8px 0 0px 0px;
+    display: none;
+    position: relative;
+    left: 0;
+    right: 0;
+  }
+
+  pre {
+    white-space: pre-wrap;
+    word-wrap: break-word;
+    color: #1E1E1E;
+    ol li {
+        list-style: decimal;
+        list-style-position:inside;
+    }
+    ul {
+        padding-left: 20px;
+        li {
+            list-style-position:inside;
+            list-style: inside;
+        }
+    }
+  }
+.anchors {
+  width: 210px;
+  position: absolute;
+  right:15px;
+  top: 0;
+  margin-right: 14px;
+  overflow-y: auto;
+  background-color: #EDFAFF;
+  padding: 25px 0;
+  height: calc(100% - 50px);
+  overflow-x: hidden;
+}
+
+.anchors ul {
+  margin-left: 30px;
+  padding: 15px 0px 15px 20px;
+  border-radius: 4px;
+  border: 1px solid #EDFAFF;
+  /*background-color: #EDFAFF;*/
+  line-height: 19px;
+}
+
+.anchors li {
+  position: relative;
+  border-left: 1px solid #8DD1EE;
+}
+.anchors li:first-child {
+  padding-top:30px
+}
+
+.anchors .anchor-line {
+  height: 30px;
+  width: 0;
+  border-left: 1px solid #8DD1EE;
+}
+
+.anchors .a-circle{
+  border:2px #8DD1EE solid;
+  width: 16px;
+  height: 16px;
+  background: #fff;
+  border-radius: 16px;
+  position: absolute;
+  left: 41px;
+  z-index: 1;
+}
+.anchors .a-circle:last-child{
+  position: unset;
+  margin-left: 41px;
+  margin-top: -16px;
+}
+.anchors i {
+  position: absolute;
+  display: inline-block;
+  width: 16px;
+  height: 16px;
+  border-radius: 8px;
+  border: 1px solid @staticMainColor;
+  background-color: @staticMainColor;
+  left: -10px;
+  top: 5px;
+  z-index: 1;
+}
+.anchors li:first-child i{
+  top:35px;
+}
+.anchors a {
+  display: inline-block;
+  position: relative;
+  top: 4px;
+  left: 0;
+  width: 126px;
+  padding: 0 0px 0 20px;
+  text-decoration: none;
+  font-size: 16px;
+  font-weight: 400;
+  word-wrap: break-word;
+}
+
+.anchors .active a {
+  /*color: #3B9ED0 !important;
+  font-weight: 700 !important;*/
+}
+
+.anchors .active i {
+  width: 26px;
+  height: 16px;
+  top: 6px;
+  left: -14px;
+  border-radius: 0;
+  border: none;
+  background-color: #F5F6F7;
+  background: url('../images/icon_current.svg') center center no-repeat;
+}
+  .disCopy {
+    -webkit-touch-callout: none;
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+  }
+  .tabBox{
+    position: relative;
+    background: #fff;
+    padding: 0 40px 0;
+  }
+  .showWhich {
+    width: 187px;
+    text-align: center;
+    padding: 30px 0 20px;
+    position: relative;
+    .showWhichSelect {
+      display: inline-block;
+      color: @staticMainColor;
+      background: url("../images/d1.png") 200px 9px #EAFCFF no-repeat;
+      font-size: 16px;
+      padding:1px 24px 2px 9px;
+      width: 100%;
+      cursor: pointer;
+    }
+    ul {
+      display: none;
+      position: absolute;
+      left: 0;
+      top: 52px;
+      z-index: 10;
+      background-color: #fff;
+      width: 220px;
+      box-shadow: 0px 6px 16px 0px rgba(0, 0, 0, 0.18);
+      border-radius: 4px;
+      border: 1px solid #E6E6E6;
+      li {
+        height: 35px;
+        line-height: 35px;
+        white-space: nowrap;/*强制在一行显示*/
+        text-overflow:ellipsis;/*设置超出内容显示...*/
+        overflow: hidden;/*一定不能少 超出的内容进行隐藏*/
+        padding:0 20px;
+        cursor: pointer;
+        &:hover {
+          background-color: #E2F1F8;
+        }
+      }
+    }
+  }
+  .titleCont{
+    background: #fff;
+    padding-left: 39px;
+    padding-bottom: 20px;
+  }
+.titleCont .title{
+  font-size: 20px;
+  font-weight: bold;
+  margin-right: 23px;
+}
+.tabList{
+  display: inline-block;
+}
+.tab{
+  display: inline-block;
+  padding: 0 5px;
+  margin-right: 20px;
+  background: #fff;
+  border-radius:2px;
+  cursor: pointer;
+  font-size: 11px;
+  color: #2A9BD5;
+  border:1px #2A9BD5 solid;
+  vertical-align: text-bottom;
+}
+.activeTab{
+  background: #2A9BD5;
+  color: #fff;
+}
+  .ql-align-right{
+    text-align: right;
+  }
+  .ql-align-center{
+    text-align: center;
+  }
+  
+.ellipsis{
+  white-space: nowrap;/*强制在一行显示*/
+  text-overflow:ellipsis;/*设置超出内容显示...*/
+  overflow: hidden;/*一定不能少 超出的内容进行隐藏*/
+}
+.empty{
+  text-align: center;
+  padding-top: 32vh;
+  img{
+    width: 140px;
+    height: 75px;
+  }
+  p{
+    margin-top: 10px;
+    font-size: 15px;
+    color: #aaa;
+  }
+}
+.open-win{
+  position: absolute;
+  right: 38px;
+  bottom: 28px;
+  cursor: pointer;
+  color: #3B9ED0;
+  font-size: 14px;
+  padding-left: 30px;
+  background: url("../images/link.png") 0 -2px no-repeat;
+  background-size: 25px 25px;
+}
+.footer{
+  width: 100%;
+  height: 52px;
+  background: #172238;
+  padding-top: 8px;
+  position: absolute;
+  bottom: 0;
+  z-index: 1;
+  p{
+    color:#fff;
+    text-align: center;
+    font-size: 12px;
+    white-space: nowrap;
+  }
+}
+
+.infos::-webkit-scrollbar, .anchors::-webkit-scrollbar {
+  /*滚动条整体样式*/
+  width: 6px;
+  height: 100px;
+  /*高宽分别对应横竖滚动条的尺寸*/
+  background: #ebeef5;
+  -webkit-box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.2);
+}
+
+.infos::-webkit-scrollbar-thumb, .anchors::-webkit-scrollbar-thumb {
+  /*滚动条里面小方块*/
+  width: 6px;
+  border-radius: 5px;
+  background: @staticMainColor;
+  height: 100px;
+}
+
+.infos::-webkit-scrollbar-track, .anchors::-webkit-scrollbar-track {
+  /*滚动条里面轨道*/
+  border-radius: 2px;
+  background: #f0f2f5;
+  opacity: .2;
+}
+
+.scaletitle{
+  font-size: 20px;
+  font-weight: 500;
+  color: #333333;
+  line-height: 28px;
+  margin: 30px 0 8px 0;
+  text-align: center;
+}
+.scaleBox{
+  border-bottom: none;
+}
+.contentList{
+  max-width: 100%;
+  border-bottom: 1PX solid #F3F3F3;
+  margin-bottom: 6px;
+  .item-list{
+    padding: 0 21px;
+    .item-title{
+      font-size: 14px;
+      font-weight: 400;
+      color: #333333;
+      line-height: 20px;
+      margin-top: 14px;
+    }
+    .item-content{
+      margin: 10px 0;
+      display: flex;
+      flex-flow: wrap;
+      .radio {
+        display: flex;
+        margin: 5px;
+        margin-right: 25px;
+        label{
+          display: flex;
+          align-items: center;
+          font-weight: 400;
+          color: #666666;
+          line-height: 20px;
+          & input{
+            margin-right: 6px;
+          }
+          .num{
+            margin-left: 10px;
+          }
+        }
+        .recommend{
+          width: 18px;
+          height: 18px;
+        }
+      } 
+    }
+  }
+}
+.scalebot{
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
+  margin-bottom: 44px;
+  .but{
+    width: 94px;
+    height: 34px;
+    background: #FFFFFF;
+    border-radius: 8px;
+    border: 1px solid #2A9BD5;
+    font-size: 16px;
+    font-weight: 400;
+    color: #2A9BD5;
+    margin-right: 9px;
+  }
+  .score{
+    font-size: 16px;
+    font-weight: 400;
+    color: #333333;
+    margin-right: 30px;
+    display: none;
+  }
+}
+.result{
+  background: #EDFAFF;
+  border-radius: 10px;
+  font-size: 14px;
+  font-weight: 500;
+  color: #333333;
+  display: none;
+  margin: 0 75px;
+  .result_box{
+    display: flex;
+    justify-content: center;
+    padding: 25px 56px;
+    .hel{
+      width: 21px;
+      height: 21px;
+      background: #2C96E5;
+      border-radius: 50%;
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      color: #fff;
+      margin-right: 9px;
+      font-size: 12px;
+    }
+  }
+  
+}
+.result_title{
+  max-width: 85%;
+}
+.foot{
+  margin-bottom: 20px;
+  margin-top: 40px;
+  display: none;
+  .foot_box{
+    display: flex;
+    justify-content: center;
+    .printing{
+      display: flex;
+      align-items: center;
+      justify-content: space-around;
+      width: 94px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      border: 1px solid #333333;
+      cursor: pointer;
+    }
+    .printing:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+    .copy{
+      width: 132px;
+      height: 32px;
+      background: #FFFFFF;
+      border-radius: 4px;
+      border: 1px solid #333333;
+      text-align: center;
+      line-height: 32px;
+      margin-left: 38px;
+      cursor: pointer;
+    }
+    .copy:hover{
+      background: #2C96E5;
+      color: #fff;
+      border:1px solid #2C96E5;
+    }
+  }
+  
+}
+#inputs{
+  position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;
+}
+#Print{
+  overflow-x: hidden;
+}
+.scale{
+  .infos-box{
+    border: 1px solid #E6E6E6;
+    margin: 0 71px 20px 38px;
+    .infoWrapper {
+      padding: 0 75px;
+    }
+    .scalebot{
+      padding-right: 75px;
+    }
+  }
+}
+.chColor{
+  color: red!important;
+}

+ 55 - 0
src/html/cdss.html

@@ -80,6 +80,61 @@
           <div class="followUpWrap moduleWrapper">
             
           </div>
+            <div class="tcmWarp moduleWrapper">
+                <div class="go-push tcm-item">
+                    <p class="title">
+                        <img class="icon" src="./images/t1.png" alt="">
+                        <span class="h2">病症推导</span>
+                        <a class="go" id="goPush">去推导 <img class="icon" src="./images/g1.png" alt=""></a>
+                    </p>
+                </div>
+                <div class="recipe tcm-item">
+                    <p class="title">
+                        <img class="icon" src="./images/t2.png" alt="">
+                        <span class="h2">中医处方推荐</span>
+                        <a class="go" id="goTreat">更多 <img class="icon" src="./images/g1.png" alt=""></a>
+                    </p>
+                    <div class="content">
+                        <ul class="infos clearfix">
+                            <li>
+                                <span class="label">中医诊断病症:</span>
+                                <span class="val" id="jibing"></span>
+                            </li>
+                            <li>
+                                <span class="label">中医病名:</span>
+                                <span class="val" id="bingming"></span>
+                            </li>
+                            <li>
+                                <span class="label">中医证候:</span>
+                                <span class="val" id="zhenghou"></span>
+                            </li>
+                        </ul>
+                        <div class="detail">
+                            <ul>
+
+                            </ul>
+                        </div>
+                    </div>
+                </div>
+                <div class="knowledge tcm-item">
+                    <p class="title">
+                        <img class="icon" src="./images/t3.png" alt="">
+                        <span class="h2">中医知识库</span>
+                    </p>
+                    <div class="content">
+                        <ul class="item">
+                            <li><a class="a-link" code="zyzsjyk">中医经验库</a></li>
+                            <li><a class="a-link" code="zycx">中药查询</a></li>
+                            <li><a class="a-link" code="fjcx">方剂查询</a></li>
+                        </ul>
+                        <ul class="item">
+                            <li><a class="a-link" code="jfcx">经方查询</a></li>
+                            <li><a class="a-link" code="jbcx">疾病查询</a></li>
+                            <li><a class="a-link" code="xwcx">穴位查询</a></li>
+                        </ul>
+                    </div>
+                </div>
+            </div>
           <div class="disclaimer clearfix">
             <span class="version-tip"><span class="version-txt">版本说明 <img class="newIcon" src="./images/new.png"></span></span>
             <span class="logo">&copy; 朗通医疗</span>

+ 55 - 0
src/html/cdssHorizontal.html

@@ -47,6 +47,61 @@
         </div>
         <div class="followUpWrap moduleWrapper">
             
+        </div>
+        <div class="tcmWarp moduleWrapper">
+          <div class="go-push tcm-item clearfix">
+            <p class="title">
+              <img class="icon" src="./images/t1.png" alt="">
+              <span class="h2">病症推导:</span>
+              <a class="go go-btn" id="goPush">去推导 <img class="icon" src="./images/go.png" alt=""></a>
+            </p>
+          </div>
+          <div class="recipe tcm-item clearfix">
+            <p class="title">
+              <img class="icon" src="./images/t2.png" alt="">
+              <span class="h2">中医处方推荐:</span>
+            </p>
+            <div class="content">
+              <ul class="infos clearfix">
+                <li>
+                  <span class="label">中医诊断病症:</span>
+                  <span class="val" id="jibing"></span>
+                </li>
+                <li>
+                  <span class="label">中医病名:</span>
+                  <span class="val" id="bingming"></span>
+                </li>
+                <li>
+                  <span class="label">中医证候:</span>
+                  <span class="val" id="zhenghou"></span>
+                </li>
+              </ul>
+              <!--<div class="idea">
+                <span class="label">治法:</span>
+                <p class="zhifa" id="zhifa"><span class="val">&#45;&#45;</span></p>
+                <a class="go go-text" href="">展开 <img src="../images/dn.png" alt=""></a>
+              </div>-->
+              <div class="detail horizontal-detail">
+                <ul>
+
+                </ul>
+              </div>
+            </div>
+          </div>
+          <div class="knowledge tcm-item clearfix">
+            <p class="title fl">
+              <img class="icon" src="./images/t3.png" alt="">
+              <span class="h2">中医知识库:</span>
+            </p>
+            <div class="content">
+              <p><a class="a-link" code="zyzsjyk">中医经验库</a></p>
+              <p><a class="a-link" code="zycx">中药查询</a></p>
+              <p><a class="a-link" code="fjcx">方剂查询</a></p>
+              <p><a class="a-link" code="jfcx">经方查询</a></p>
+              <p><a class="a-link" code="jbcx">疾病查询</a></p>
+              <p><a class="a-link" code="xwcx">穴位查询</a></p>
+            </div>
+          </div>
         </div>
         <div class="medicalKonwledgeWrap moduleWrapper">
          <div class="searchBox">

File diff suppressed because it is too large
+ 57 - 0
src/html/homeStatic.html


File diff suppressed because it is too large
+ 65 - 31
src/html/informationOut.html


File diff suppressed because it is too large
+ 66 - 0
src/html/searchStaticList.html


File diff suppressed because it is too large
+ 102 - 0
src/html/staticInfo.html


File diff suppressed because it is too large
+ 78 - 0
src/html/staticInfoOut.html


BIN
src/images/d1.png


+ 15 - 0
src/images/d1.svg

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="10px" height="7px" viewBox="0 0 10 7" version="1.1" xmlns="http://www.w3.org/2000/svg"
+     xmlns:xlink="http://www.w3.org/1999/xlink">
+    <!-- Generator: Sketch 61 (89581) - https://sketch.com -->
+    <title>向下</title>
+    <desc>Created with Sketch.</desc>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="辅检详情对接页" transform="translate(-139.000000, -37.000000)" fill="#2A9BD5" fill-rule="nonzero">
+            <g id="向下" transform="translate(139.000000, 37.000000)">
+                <path d="M0.617841012,0 C0.108021168,0 -0.218083867,0.753229533 0.172524759,1.18540835 L4.56116968,6.04118247 C4.81296271,6.31960584 5.18729092,6.31960584 5.43897029,6.04118247 L9.82781761,1.18552892 C10.2085166,0.76421551 9.91163569,0.000137215503 9.38886126,0.000137215503 L0.617830114,0 L0.617841012,0 Z"
+                      id="路径"></path>
+            </g>
+        </g>
+    </g>
+</svg>

BIN
src/images/dn.png


BIN
src/images/g1.png


BIN
src/images/go.png


BIN
src/images/icon-circular.png


BIN
src/images/icon-circular2.png


BIN
src/images/icon-hel.png


BIN
src/images/icon-success.png


BIN
src/images/icon-warning.png


BIN
src/images/icon-warns.png


+ 13 - 0
src/images/icon_current.svg

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="26px" height="16px" viewBox="0 0 26 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <!-- Generator: Sketch 61 (89581) - https://sketch.com -->
+    <title>矩形</title>
+    <desc>Created with Sketch.</desc>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="疾病详情-临床路径页" transform="translate(-1121.000000, -304.000000)" fill="#2A9BD5">
+            <g id="编组-3" transform="translate(1079.000000, 126.000000)">
+                <polygon id="矩形" points="42 178 63.6239567 178 68 186.189897 63.6239567 194 42 194"></polygon>
+            </g>
+        </g>
+    </g>
+</svg>

BIN
src/images/icon_current2.png


BIN
src/images/icon_nurse_push.png


BIN
src/images/leftpage.png


BIN
src/images/nolis.png


BIN
src/images/printing.png


BIN
src/images/printing2.png


BIN
src/images/recommend.png


BIN
src/images/rightpage.png


BIN
src/images/staticBg.png


BIN
src/images/staticBgS.png


BIN
src/images/staticLogo.png


BIN
src/images/t1.png


BIN
src/images/t2.png


BIN
src/images/t3.png


BIN
src/images/warn.png


BIN
src/images/word.png


File diff suppressed because it is too large
+ 88 - 0
src/js/PIE.js


File diff suppressed because it is too large
+ 369 - 324
src/js/cdss.js


+ 346 - 285
src/js/cdssHorizontal.js

@@ -1,11 +1,11 @@
-if(!Promise){
-    var Promise = require("bluebird");
+if (!Promise) {
+  var Promise = require("bluebird");
   // Configure
-    Promise.config({
-      longStackTraces: true,
-      warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
-    })
-  }
+  Promise.config({
+    longStackTraces: true,
+    warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
+  })
+}
 const $ = require("jquery");
 require('./../css/reset.css');
 require('./../css/cdssHorizontal.less');
@@ -13,26 +13,29 @@ require('./../css/popup.css');
 require('./../css/staticSearch.css')
 require('./../js/staticSearch.js')
 require('./../images/empty2.png').replace(/^undefined/g, '')
+require('./../images/dn.png').replace(/^undefined/g, '')
 require('./../images/loading.gif').replace(/^undefined/g, '')
 let emptyImg = require('./../images/empty3.png').replace(/^undefined/g, '')
 require('./../images/new2.png').replace(/^undefined/g, '')
-const { post,config,getUrlArgObject,openNewWin,titleConfigH,throttle, } = require('./promise.js');
+const { post, config, getUrlArgObject, openNewWin, titleConfigH, throttle, } = require('./promise.js');
 let infoImg = require('./../images/icon_info.png').replace(/^undefined/g, '')
 let infoImgOn = require('./../images/icon_info_on.png').replace(/^undefined/g, '')
 let iconArrowUp = require('./../images/icon_arrow_up.png').replace(/^undefined/g, '')
 let iconArrowDown = require('./../images/icon_arrow_down.png').replace(/^undefined/g, '')
 let showImg = require('./../images/show2.png').replace(/^undefined/g, '')
 let collapseImg = require('./../images/collapse2.png').replace(/^undefined/g, '')
-let treatDisName,treatUniqueName
+let treatDisName, treatUniqueName
 let generalTreatInfo
 const { renderFollowUp } = require('./followUp.js');
+const { getTcmMr } = require('./tcmiss.js');
 
 setWidth()
-let moduleConfig={
-  auxiliary:"recommendWrap",
-  qc:"qcWrap",
-  medical:"medicalKonwledgeWrap",
-  followup:'followUpWrap'
+let moduleConfig = {
+  auxiliary: "recommendWrap",
+  qc: "qcWrap",
+  medical: "medicalKonwledgeWrap",
+  followup: 'followUpWrap',
+  tcmiss: 'tcmWarp',
 }
 let allInterface = 0
 let hasCompleteTnterface = 0
@@ -47,195 +50,203 @@ let tipsMsg;
 let caseWriteStandradList;
 
 function getMRInfo() {
-  return post(config.getMr2,{mrId:mrId})
+  return post(config.getMr2, { mrId: mrId })
 }
 function getConf() {
-  var msg = window.msg 
-  return post(config.getPushSet,{hospitalId:hospitalIdUrl||msg.hospitalId||1,planCode: planCode})
+  var msg = window.msg
+  return post(config.getPushSet, { hospitalId: hospitalIdUrl || msg.hospitalId || 1, planCode: planCode })
 }
 function getPushInfo() {
-  return  post(config.pushInner,Object.assign({},msg,{featureType: '1,4,5,6,7,8,9,10',hospitalId:hospitalIdUrl||msg.hospitalId,ruleType:config.ruleTypeMap['22']}))
-  
+  return post(config.pushInner, Object.assign({}, msg, {
+    featureType: '1,4,5,6,7,8,9,10,12,13',
+    hospitalId: hospitalIdUrl || msg.hospitalId,
+    ruleType: config.ruleTypeMap['22']
+  }))
+
 }
-function getPusgWarning(){
-    const indPush = pushMrId ? config.indicationPushCache : config.indicationPush;
-    return post(indPush, Object.assign({}, msg, {mrId: pushMrId || mrId}))
+function getPusgWarning() {
+  const indPush = pushMrId ? config.indicationPushCache : config.indicationPush;
+  return post(indPush, Object.assign({}, msg, { ruleType: '1,2,3,4', mrId: pushMrId || mrId }))
 }
-function getWriteStandardPush(){
-  return  post(config.caseWritingPrompt,Object.assign({},msg,{hospitalId:2||msg.hospitalId}))
+function getWriteStandardPush() {
+  return post(config.caseWritingPrompt, Object.assign({}, msg, { hospitalId: 2 || msg.hospitalId }))
 }
 
-if(mrId){
-  Promise.all([getConf(),getMRInfo()]).then(([res1,res2])=>{
-    const data = res1.data.data&&res1.data.data[0]
-    msg = res2.data.data ||{}
-    if(!(msg&&msg.diseaseName&&msg.diseaseName.name)){
-      msg.diseaseName={}
+if (mrId) {
+  Promise.all([getConf(), getMRInfo()]).then(([res1, res2]) => {
+    const data = res1.data.data && res1.data.data[0]
+    msg = res2.data.data || {}
+    if (!(msg && msg.diseaseName && msg.diseaseName.name)) {
+      msg.diseaseName = {}
     }
     window.msg = msg
     renderPage(data)
   })
-} else{
-  getConf().then(res =>{
-    if(res.data.code == '0'){
+} else {
+  getConf().then(res => {
+    if (res.data.code == '0') {
       // const configArr = res.data.data.pushSetList || []
       // getPageInfo(configArr)
-      const data = res.data.data&&res.data.data[0]
+      const data = res.data.data && res.data.data[0]
       renderPage(data)
     }
   })
 }
 
-function renderPage(pageSet){
-  if(!pageSet || !pageSet.sysSetInfo){
+function renderPage(pageSet) {
+  if (!pageSet || !pageSet.sysSetInfo) {
     return
   }
   renderTab(pageSet.sysSetInfo)
   const iframeHei = $(".bodyWrap").height()
   const tabHei = $(".tabList").height()
-  $(".contentWrapper").css("height",iframeHei-tabHei-10-20-30+'px')
-  const hasAuxiliary = hasTab("辅助信息",pageSet.sysSetInfo)
-  const hasMedical = hasTab("医学知识",pageSet.sysSetInfo)
-  const hasFollowUp = hasTab("随访计划",pageSet.sysSetInfo)
- 
-  if(hasAuxiliary){
+  $(".contentWrapper").css("height", iframeHei - tabHei - 10 - 20 - 30 + 'px')
+  const hasAuxiliary = hasTab("辅助信息", pageSet.sysSetInfo)
+  const hasMedical = hasTab("医学知识", pageSet.sysSetInfo)
+  const hasFollowUp = hasTab("随访计划", pageSet.sysSetInfo)
+  const hasTcm = hasTab("中医辅助", pageSet.sysSetInfo)
+
+  if (hasTcm) {
+    getTcmMr(mrId, hasTcm);
+  }
+  if (hasAuxiliary) {
     renderModuleWrapper(hasAuxiliary.planDetails)
     let needPush = isNeedPush(hasAuxiliary.planDetails)
     let needPushWarning = isNeedPushWarning(hasAuxiliary.planDetails)
     let needWriteStandardPush = isNeedwriteStandardPush(hasAuxiliary.planDetails)
-    if(needPush || needPushWarning){
+    if (needPush || needPushWarning) {
       renderPushData()
       allInterface++
     }
-    if(needPushWarning){
+    if (needPushWarning) {
       renderPushWarning()
       allInterface++
     }
-    if(needWriteStandardPush){
+    if (needWriteStandardPush) {
       renderCaseWrite()
       allInterface++
     }
-  if(hasFollowUp){
-    renderFollowUp(msg,1)
+    if (hasFollowUp) {
+      renderFollowUp(msg, 1)
+    }
   }
+}
+function renderTab(tabList) {
+  if (!tabList) {
+    return
   }
- }
- function renderTab(tabList){
-   if(!tabList){
-     return
-   }
   let tabStr = ''
   let TabNum = 0
-  for(let i = 0; i < tabList.length; i++){
-    if(tabList[i].status == '1'){
+  for (let i = 0; i < tabList.length; i++) {
+    if (tabList[i].status == '1') {
       TabNum++
-      tabStr += `<span class="tab" style="border-bottom:${tabList.length==i+1?'0':'1px solid #3B9ED0'}" data-name="${tabList[i].code}" ><span class="tabName">${tabList[i].name}</span><span class="activeLine"></span></span>`
+      tabStr += `<span class="tab" style="border-bottom:${tabList.length == i + 1 ? '0' : '1px solid #3B9ED0'}" data-name="${tabList[i].code}" ><span class="tabName">${tabList[i].name}</span><span class="activeLine"></span></span>`
     }
-    
+
   }
   $(".tabList").append(tabStr)
   $(".tabList .tab").eq(0).addClass("activeTab")
-  $(".tabList .tab").css("height", 1/TabNum * 100 + '%')
-  let showModuleName =  $(".tabList .tab").eq(0).attr("data-name")
+  $(".tabList .tab").css("height", 1 / TabNum * 100 + '%')
+  let showModuleName = $(".tabList .tab").eq(0).attr("data-name")
   getModuleShow(moduleConfig[showModuleName])
   bindTabClick()
   setTabNameTop()
 }
-function hasTab(tabName,tabList){
-  for(let i = 0; i < tabList.length; i++){
-    if(tabList[i].name == tabName){
+function hasTab(tabName, tabList) {
+  for (let i = 0; i < tabList.length; i++) {
+    if (tabList[i].name == tabName) {
       return tabList[i]
     }
   }
   return false
 }
 
-function renderModuleWrapper(moduleList){
-  if(!moduleList){
+function renderModuleWrapper(moduleList) {
+  if (!moduleList) {
     return
   }
-  let moduleStr = '',treatStr=""
-  for(let i = 0; i < moduleList.length; i++){
-    if(moduleList[i].status !='0'){
-      if(moduleList[i].code == 'general' || moduleList[i].code == 'medicine' || moduleList[i].code == 'operation'){
-        treatStr += `<div class="moduleItem ${moduleList[i].code }"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
-      }else if(moduleList[i].code == 'critical'){
+  let moduleStr = '', treatStr = ""
+  for (let i = 0; i < moduleList.length; i++) {
+    if (moduleList[i].status != '0') {
+      if (moduleList[i].code == 'general' || moduleList[i].code == 'medicine' || moduleList[i].code == 'operation' || moduleList[i].code == 'nurse') {
+        treatStr += `<div class="moduleItem ${moduleList[i].code}"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
+      } else if (moduleList[i].code == 'critical') {
         moduleStr += `<div class="moduleItem warning"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
         // moduleStr += `<div class="moduleItem tips"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
-      }else{
-        moduleStr += `<div class="moduleItem ${moduleList[i].code }"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
+      } else {
+        moduleStr += `<div class="moduleItem ${moduleList[i].code}"  data-num="${moduleList[i].number}" style="display:none"><span class="moduleItemTitBox"></span></div>`
       }
     }
-   
+
   }
   $(".recommendWrap .leftBox").append(moduleStr)
   $(".recommendWrap .rightBox").append(treatStr)
 }
-function isNeedPush(list){
-  let pushCode = ["diag","lis","pacs","symptom","vital"]
-  for(let i = 0; i < list.length; i++){
-    if(pushCode.indexOf(list[i].code)>-1){
-      if(list[i].status == "1"){
+function isNeedPush(list) {
+  let pushCode = ["diag", "lis", "pacs", "symptom", "vital"]
+  for (let i = 0; i < list.length; i++) {
+    if (pushCode.indexOf(list[i].code) > -1) {
+      if (list[i].status == "1") {
         return true
       }
     }
   }
   return false
- }
- function isNeedPushWarning(list){
-  let pushCode = ["tips"]
-  for(let i = 0; i < list.length; i++){
-    if(pushCode.indexOf(list[i].code)>-1){
-      if(list[i].status == "1"){
+}
+function isNeedPushWarning(list) {
+  let pushCode = ["crivalue", "rationali", "highrisk", "otherremind"]
+  for (let i = 0; i < list.length; i++) {
+    if (pushCode.indexOf(list[i].code) > -1) {
+      if (list[i].status == "1") {
         return true
       }
     }
   }
   return false
- }
- function isNeedwriteStandardPush(list){
+}
+function isNeedwriteStandardPush(list) {
   let pushCode = ["casewriting"]
-  for(let i = 0; i < list.length; i++){
-    if(pushCode.indexOf(list[i].code)>-1){
-      if(list[i].status == "1"){
+  for (let i = 0; i < list.length; i++) {
+    if (pushCode.indexOf(list[i].code) > -1) {
+      if (list[i].status == "1") {
         return true
       }
     }
   }
   return false
 }
- function bindTabClick(){
-  $(".tabList .tab").on("click", function(){
+function bindTabClick() {
+  $(".tabList .tab").on("click", function () {
     $(".activeTab").removeClass("activeTab")
     $(this).addClass("activeTab")
     const moduleName = $(this).attr("data-name")
     getModuleShow(moduleConfig[moduleName])
   })
 }
- function getModuleShow(moduleClassName){
-  if( $(`.${moduleClassName}`).css("display") =="none"){
-    $(".moduleWrapper").css("display","none")
-    $(`.${moduleClassName}`).css("display","block")
+function getModuleShow(moduleClassName) {
+  if ($(`.${moduleClassName}`).css("display") == "none") {
+    $(".moduleWrapper").css("display", "none")
+    $(`.${moduleClassName}`).css("display", "block")
   }
 }
- function setTabNameTop(){
-   tabNameList = $(".tabList .tab .tabName")
-   for(let i = 0; i < tabNameList.length; i++){
+function setTabNameTop() {
+  tabNameList = $(".tabList .tab .tabName")
+  for (let i = 0; i < tabNameList.length; i++) {
     let tabNameHei = $(".tabList .tab .tabName").eq(i).height()
-    $(".tabList .tab .tabName").eq(i).css("marginTop",-tabNameHei/2+"px")
-   }
- }
-function renderCaseWrite(){
-  getWriteStandardPush().then(res =>{
+    $(".tabList .tab .tabName").eq(i).css("marginTop", -tabNameHei / 2 + "px")
+  }
+}
+function renderCaseWrite() {
+  getWriteStandardPush().then(res => {
     hasCompleteTnterface++
-    if(res.data.code == '0'){
+    if (res.data.code == '0') {
       const caseWriteList = res.data.data || {}
       let caseWritePush = Object.keys(caseWriteList) || []
-     
+
       renderwriteStandardPage(caseWritePush)
-      if($(".moduleItem.casewriting")){
+      if ($(".moduleItem.casewriting")) {
         let casewritingHei = $(".moduleItem.casewriting")[0].scrollHeight
-        if(casewritingHei > 81){
+        if (casewritingHei > 81) {
           $(".casewriting").append(`<span class="showMoreCaseWrite">更多</span>`)
           caseWriteStandradList = caseWritePush
           showMoreCaseWrite()
@@ -244,62 +255,67 @@ function renderCaseWrite(){
     }
   })
 }
-function renderPushData(){
-  return getPushInfo().then(res =>{
+function renderPushData() {
+  return getPushInfo().then(res => {
     hasCompleteTnterface++
-    if(res.data.code == "0"){
+    if (res.data.code == "0") {
       const result = res.data.data
-      let diagPush = result.dis ||{}
+      let diagPush = result.dis || {}
       let lisPush = result.lis || []
+      let scalePush = result.scale || []
       let pacsPush = result.pacs || []
-      let symptomPush = result.symptom ||[]
-      let checkupPush = result.vital ||[]
+      let symptomPush = result.symptom || []
+      let checkupPush = result.vital || []
       let medicinesPush = result.medicines || []
-      let operationsPush = result.operations ||[]
-      let treatPush = result.treat&&result.treat[0] ||{}
-      treatDisName = treatPush&&treatPush["name"]
-      treatUniqueName = treatPush&&treatPush["uniqueName"]
-      let generaTreatPush = treatPush&&treatPush["generaTreat"]
+      let operationsPush = result.operations || []
+      let nursePush = result.nurse || []
+      let treatPush = result.treat && result.treat[0] || {}
+      treatDisName = treatPush && treatPush["name"]
+      treatUniqueName = treatPush && treatPush["uniqueName"]
+      let generaTreatPush = treatPush && treatPush["generaTreat"]
       generalTreatInfo = generaTreatPush
       // let lisPush =[{name:"血常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null}]
       // let pacsPush = [{name:"胸部x射线",hisNameList:null},{name:"心电图",hisNameList:null}]
       // let checkupPush = [{name:"神志表情",hisNameList:null},{name:"面部表情",hisNameList:null}]
       let lisNum = $(".moduleItem.lis").attr("data-num") || 5
+      let scaleNum = $(".moduleItem.evaluation").attr("data-num") || 5
       let pacsNum = $(".moduleItem.pacs").attr("data-num") || 5
       let checkupNum = $(".moduleItem.vital").attr("data-num") || 5
       let symptomNum = $(".moduleItem.symptom").attr("data-num") || 5
       let medicinesNum = $(".moduleItem.medicine").attr("data-num") || 5
       let operationsNum = $(".moduleItem.operation").attr("data-num") || 5
+      let nurseNum = $(".moduleItem.nurse").attr("data-num") || 5
 
-      renderLis(lisPush,lisNum,3,true)
-      renderPacs(pacsPush,pacsNum,5,true)
-      renderCheckup(checkupPush,checkupNum,null,true)
-      renderSymptomPush(symptomPush,symptomNum,null,true)
+      renderLis(lisPush, lisNum, 3, true)
+      renderScale(scalePush, scaleNum, 8, true)
+      renderPacs(pacsPush, pacsNum, 5, true)
+      renderCheckup(checkupPush, checkupNum, null, true)
+      renderSymptomPush(symptomPush, symptomNum, null, true)
       renderDiag(diagPush)
-
-      if(medicinesPush.length > 0 || operationsPush.length > 0||generaTreatPush){
+      if (medicinesPush.length > 0 || operationsPush.length > 0 || generaTreatPush || nursePush.length > 0) {
         let str = `<img class="treatIcon" src = ${titleConfigH["treat"].icon} /><span>${titleConfigH["treat"].name}</span>`
         $(".rightBoxTitle").append(str)
         renderDisName()
-        $(".rightWrapper").css("display","inline-block")
-        $(".leftWrapper").css("borderRight","1px solid #E6E6E6")
-      }else{
+        $(".rightWrapper").css("display", "inline-block")
+        $(".leftWrapper").css("borderRight", "1px solid #E6E6E6")
+      } else {
         $(".leftWrapper").css({
           borderRight: "0px",
           width: "100%"
         })
       }
-      if((!$(".moduleItem.medicine")&&!$(".moduleItem.operation")&&!(".moduleItem.general")) ||($(".moduleItem.general").length === 0&&$(".moduleItem.medicine").length === 0&&$(".moduleItem.operation").length === 0)){
-        $(".rightWrapper").css("display","none")
+      if ((!$(".moduleItem.medicine") && !$(".moduleItem.operation") && !(".moduleItem.general")) || ($(".moduleItem.general").length === 0 && $(".moduleItem.medicine").length === 0 && $(".moduleItem.operation").length === 0)) {
+        $(".rightWrapper").css("display", "none")
         $(".leftWrapper").css({
           borderRight: "0px",
           width: "100%"
         })
       }
-    
+
       rendergeneraTreatPush(generaTreatPush)
-      renderMedicinesPush(medicinesPush,1,2,true)
-      renderOperationPush(operationsPush,1,6,true)
+      renderMedicinesPush(medicinesPush, medicinesNum, 2, true)
+      renderOperationPush(operationsPush, operationsNum, 6, true)
+      renderNurse(nursePush, nurseNum, 9, true)
       // if(hasCompleteTnterface === allInterface){
       //   $('.loading').css("display","none")
       //   if(moduleNum === 0){ 
@@ -313,194 +329,218 @@ function renderPushData(){
   })
 }
 
-function renderLis(list,showNum,type,hasInfo){
-  if(list.length > 0 &&  $(".moduleItem.lis").length > 0){
+function renderLis(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.lis").length > 0) {
     moduleNum++
     $('.moduleItem.lis .moduleItemTitBox').append(titleStr("lisPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $('.moduleItem.lis').append(shortStr)
-    $('.moduleItem.lis').append(renderLongStr(titleConfigH["lisPush"].name,longStr,titleConfigH["lisPush"].location))
-    $('.moduleItem.lis').css("display","block")
+    $('.moduleItem.lis').append(renderLongStr(titleConfigH["lisPush"].name, longStr, titleConfigH["lisPush"].location))
+    $('.moduleItem.lis').css("display", "block")
+  }
+}
+function renderScale(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.evaluation").length > 0) {
+    moduleNum++
+    $('.moduleItem.evaluation .moduleItemTitBox').append(titleStr("scalePush"))
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
+    $('.moduleItem.evaluation').append(shortStr)
+    $('.moduleItem.evaluation').append(renderLongStr(titleConfigH["scalePush"].name, longStr, titleConfigH["scalePush"].location))
+    $('.moduleItem.evaluation').css("display", "block")
+    // $('.moduleItem.evaluation').children(".shortBox").children(".pushItemBox").children(".pushItemName").addClass("evaluationtitle")
+    // $('.moduleItem.evaluation').children(".longStrBox").children(".longBox").children(".pushItemBox").children(".pushItemName").addClass("evaluationtitle")
+  }
+}
+
+function renderNurse(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.nurse").length > 0) {
+    moduleNum++
+    $('.moduleItem.nurse .moduleItemTitBox').append(titleStr("nursePush"))
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
+    $(".moduleItem.nurse").append(shortStr)
+    $(".moduleItem.nurse").append(renderLongStr(titleConfigH["nursePush"].name, longStr, titleConfigH["nursePush"].location))
+    $(".moduleItem.nurse").css("display", "block")
   }
- 
 }
-function renderPacs(list,showNum,type,hasInfo){
-  if(list.length > 0 &&  $(".moduleItem.pacs").length > 0){
+function renderPacs(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.pacs").length > 0) {
     moduleNum++
     $('.moduleItem.pacs .moduleItemTitBox').append(titleStr("pacsPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $(".moduleItem.pacs").append(shortStr)
-    $(".moduleItem.pacs").append(renderLongStr(titleConfigH["pacsPush"].name,longStr,titleConfigH["pacsPush"].location))
-    $('.moduleItem.pacs').css("display","block")
+    $(".moduleItem.pacs").append(renderLongStr(titleConfigH["pacsPush"].name, longStr, titleConfigH["pacsPush"].location))
+    $('.moduleItem.pacs').css("display", "block")
   }
- 
+
 }
-function renderSymptomPush(list,showNum,type,hasInfo){
-  if(list.length > 0 &&  $(".moduleItem.symptom").length > 0){
+function renderSymptomPush(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.symptom").length > 0) {
     moduleNum++
     $('.moduleItem.symptom .moduleItemTitBox').append(titleStr("symptomPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $(".moduleItem.symptom").append(shortStr)
-    $(".moduleItem.symptom").append(renderLongStr(titleConfigH["symptomPush"].name,longStr,titleConfigH["symptomPush"].location))
-    $('.moduleItem.symptom').css("display","block")
+    $(".moduleItem.symptom").append(renderLongStr(titleConfigH["symptomPush"].name, longStr, titleConfigH["symptomPush"].location))
+    $('.moduleItem.symptom').css("display", "block")
   }
- 
+
 }
-function renderMedicinesPush(list,showNum,type,hasInfo){
+function renderMedicinesPush(list, showNum, type, hasInfo) {
 
-  if(list.length > 0 &&  $(".moduleItem.medicine").length > 0){
+  if (list.length > 0 && $(".moduleItem.medicine").length > 0) {
     moduleNum++
     $('.moduleItem.medicine .moduleItemTitBox').append(titleStr("drugPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $(".moduleItem.medicine").append(shortStr)
-    $(".moduleItem.medicine").append(renderLongStr(titleConfigH["drugPush"].name,longStr,titleConfigH["drugPush"].location))
-    $(".moduleItem.medicine").css("display","block")
+    $(".moduleItem.medicine").append(renderLongStr(titleConfigH["drugPush"].name, longStr, titleConfigH["drugPush"].location))
+    $(".moduleItem.medicine").css("display", "block")
   }
- 
+
 }
-function renderOperationPush(list,showNum,type,hasInfo){
-  if(list.length > 0 &&  $(".moduleItem.operation").length > 0){
+function renderOperationPush(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.operation").length > 0) {
     moduleNum++
     $('.moduleItem.operation .moduleItemTitBox').append(titleStr("operationPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $(".moduleItem.operation").append(shortStr)
-    $(".moduleItem.operation").append(renderLongStr(titleConfigH["operationPush"].name,longStr,titleConfigH["operationPush"].location))
-    $(".moduleItem.operation").css("display","block")
+    $(".moduleItem.operation").append(renderLongStr(titleConfigH["operationPush"].name, longStr, titleConfigH["operationPush"].location))
+    $(".moduleItem.operation").css("display", "block")
   }
- 
+
 }
-function renderDisName(){
-  $(".disName").append(`${treatDisName}`)
+function renderDisName() {
+  $(".disName").append(`${treatDisName || ''}`)
 }
-function rendergeneraTreatPush(list){
-  if(list&&list.length > 0 &&  $(".moduleItem.general").length > 0){
+function rendergeneraTreatPush(list) {
+  if (list && list.length > 0 && $(".moduleItem.general").length > 0) {
     moduleNum++
- 
+
     $('.moduleItem.general .moduleItemTitBox').append(titleStr("generaTreatPush"))
     let str = `<div class="generalTreatInfo clearfix isOverFlow">${list}</div>`
     $(".moduleItem.general").append(str)
-    
-    setTimeout(function(){
+
+    setTimeout(function () {
       let generaTreatHei = $(".moduleItem .generalTreatInfo")[0].scrollHeight
-      if(generaTreatHei >81){
+      if (generaTreatHei > 81) {
         $(".moduleItem .generalTreatInfo").append(`<span class="showMoreGeneralTreat">更多</span>`)
         bindGeneralSlide()
       }
     })
-  
-   
-    $(".moduleItem.general").css("display","block")
+
+
+    $(".moduleItem.general").css("display", "block")
   }
 }
-function renderCheckup(list,showNum,type,hasInfo){
-  if(list.length > 0 &&  $(".moduleItem.vital").length > 0){
+function renderCheckup(list, showNum, type, hasInfo) {
+  if (list.length > 0 && $(".moduleItem.vital").length > 0) {
     moduleNum++
     $(".moduleItem.vital .moduleItemTitBox").append(titleStr("checkupPush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, type, hasInfo)
     $(".moduleItem.vital").append(shortStr)
-    $(".moduleItem.vital").append(renderLongStr(titleConfigH["checkupPush"].name,longStr,titleConfigH["checkupPush"].location))
-    $('.moduleItem.vital').css("display","block")
+    $(".moduleItem.vital").append(renderLongStr(titleConfigH["checkupPush"].name, longStr, titleConfigH["checkupPush"].location))
+    $('.moduleItem.vital').css("display", "block")
   }
 }
-function renderDiag(diagPush){
+function renderDiag(diagPush) {
   let possibleDiagPush = diagPush["可能诊断"] || []
   let firstDiagPush = diagPush["初步诊断"] || []
   let identifyDiagPush = diagPush["鉴别诊断"] || []
   let warningDiagPush = diagPush["警惕"] || []
-  let number =  $('.moduleItem.diag').attr("data-num") || 5
-  let warnNumber =  $('.moduleItem.warning').attr("data-num") || 5
-  
+  let number = $('.moduleItem.diag').attr("data-num") || 5
+  let warnNumber = $('.moduleItem.warning').attr("data-num") || 5
+
   $('.moduleItem.diag .moduleItemTitBox').append(titleStr("diagPush"))
   // let warningDiagPush = [{name:"血常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"血常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null}]
   // let firstDiagPush =  [{name:"血常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null}]
   // let identifyDiagPush = diagPush["鉴别诊断"] ||  [{name:"血常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null},{name:"尿常规",hisNameList:null}]
-  renderDiagItem(possibleDiagPush,"可能诊断",number)
-  renderDiagItem(firstDiagPush,"初步诊断",number)
-  renderDiagItem(identifyDiagPush,"鉴别诊断",number)
-  renderWarningDiag(warningDiagPush,"警惕",1000)
+  renderDiagItem(possibleDiagPush, "可能诊断", number)
+  renderDiagItem(firstDiagPush, "初步诊断", number)
+  renderDiagItem(identifyDiagPush, "鉴别诊断", number)
+  renderWarningDiag(warningDiagPush, "警惕", 1000)
   moreInfo()
 }
-function renderDiagItem(list,name,number){
-  if(list.length === 0){
+function renderDiagItem(list, name, number) {
+  if (list.length === 0) {
     return
   }
   let titleStr = `<span class="moduleBoxName">${name}</span>`
-  let {shortStr, longStr} = renderItemWrapper(list,number,1,true)
+  let { shortStr, longStr } = renderItemWrapper(list, number, 1, true)
   let boxStr = `<div class="moduleBox">
         ${titleStr}
         ${shortStr}
       </div>`
   $(".diag").append(boxStr)
-  $(".diag").append(renderLongStr(name,longStr,"left"))
-  $('.moduleItem.diag').css("display","block")
+  $(".diag").append(renderLongStr(name, longStr, "left"))
+  $('.moduleItem.diag').css("display", "block")
 }
-function renderWarningDiag(list,name,showNum){
-  if(list.length > 0 &&  $(".moduleItem.warning").length > 0){
+function renderWarningDiag(list, name, showNum) {
+  if (list.length > 0 && $(".moduleItem.warning").length > 0) {
     moduleNum++
     $('.moduleItem.warning .moduleItemTitBox').append(titleStr("vigilancePush"))
-    let {shortStr, longStr} = renderItemWrapper(list,showNum,1,true)
+    let { shortStr, longStr } = renderItemWrapper(list, showNum, 1, true)
     $('.moduleItem.warning').append(shortStr)
-    $('.moduleItem.warning').css("display","block")
+    $('.moduleItem.warning').css("display", "block")
   }
 }
-function renderwriteStandardPage(list){
-  if(list.length > 0 &&  $(".moduleItem.casewriting").length > 0){
+function renderwriteStandardPage(list) {
+  if (list.length > 0 && $(".moduleItem.casewriting").length > 0) {
     moduleNum++
     $(".moduleItem.casewriting .moduleItemTitBox").append(titleStr("casewritingPush"))
     let str = ``
-    for(let i = 0; i < list.length; i++){
-       str += `<p>${list[i]}</p>`
+    for (let i = 0; i < list.length; i++) {
+      str += `<p>${list[i]}</p>`
     }
     $(".moduleItem.casewriting").append(str)
-    $('.moduleItem.casewriting').css("display","block")
+    $('.moduleItem.casewriting').css("display", "block")
   }
 }
-
-function renderPushWarning(){
-  return getPusgWarning().then(res =>{
+function renderPushWarning() {
+  return getPusgWarning().then(res => {
     hasCompleteTnterface++
-    if(res.data.code == '0'){
-      const result = res.data.data
+    if (res.data.code == '0') {
+      const result = res.data.data;
       let billMsgList = result.billMsgList || []  //开单合理性提醒
       let highRiskList = result.highRiskList || []  //高危药品、手术
       let criticalValList = result.criticalValList || []  //危急值提醒
       let noteList = result.noteList || []  //检查内容注意事项
       let dubugStr = result.dubugStr || []  //注意调试信息
       let otherList = result.otherList || []  //其他提醒
-      $('.moduleItem.tips .moduleItemTitBox').append(titleStr('warning'))
-      renderBillingPush(billMsgList,'开单合理性')
-      renderBillingPush(highRiskList,'高风险提示')
-      renderBillingPush(criticalValList,'危急值提醒')
-      renderBillingPush(noteList,'检查注意事项')
-      renderBillingPush(otherList,'其他提醒')
+      renderBillingPush(billMsgList, '开单合理性', 'rationali')
+      renderBillingPush(highRiskList, '高风险提示', 'highrisk')
+      renderBillingPush(criticalValList, '危急值提醒', 'crivalue')
+      renderBillingPush(noteList, '检查注意事项')
+      renderBillingPush(otherList, '其他提醒', 'otherremind')
+      const codes = ($(".rationali.tips").length ? 'rationali,' : "") + ($(".highrisk.tips").length ? 'highrisk,' : "") + ($(".crivalue.tips").length ? 'crivalue,' : "") + ($(".otherremind.tips").length ? 'otherremind' : "");
+      $(".moduleItem.tips").wrapAll("<div class='tips-cont' codes=" + codes + "></div>");
+      $('.tips-cont').append(titleStr('warning'))
       moreInfo()
-      if($(".moduleItem.tips")){
-        let tipsHei = $(".moduleItem.tips")[0].scrollHeight
-        if(tipsHei > 81){
-          $(".tips").append(`<span class="showMoreNewPage">更多</span>`)
+      const hasTipsNum = $(".moduleItem.tips").length;
+      if (hasTipsNum) {
+        let tipsHei = $(".tips-cont")[0].scrollHeight;
+        if (tipsHei > 81) {
+          $(".tips-cont").append(`<span class="showMoreNewPage">更多</span>`)
           tipsMsg = result
           showMoreNewPage()
         }
       }
- 
+
       // renderBillingPush(dubugStr,'注意调试信息')
-     
+
     }
-    if(hasCompleteTnterface === allInterface){
-      $('.loading').css("display","none")
-      if(moduleNum === 0){//console.log(999)
+    if (hasCompleteTnterface === allInterface) {
+      $('.loading').css("display", "none")
+      if (moduleNum === 0) {//console.log(999)
         // empty()
       }
     }
-    
+
   })
 }
-function renderBillingPush(list,name){
-  if(list.length === 0){
+function renderBillingPush(list, name, code) {
+  if (list.length === 0) {
     return
   }
   let str = ``
-  for(let i = 0; i < list.length; i++){
+  for (let i = 0; i < list.length; i++) {
     str += `<div class="billingPushItem">${list[i].msg}</div>`
   }
   let titleStr = `<span class="moduleBoxName">${name}</span>`
@@ -508,11 +548,11 @@ function renderBillingPush(list,name){
         ${titleStr}
         ${str}
       </div>`
-  $(".tips").append(boxStr)
-  $('.moduleItem.tips').css("display","block")
+  $("." + code).append(boxStr)
+  $('.moduleItem.' + code).addClass("tips").attr("code", code).css("display", "block")
 }
-function renderLongStr(name,longStr,location){
-  if(!longStr){
+function renderLongStr(name, longStr, location) {
+  if (!longStr) {
     return
   }
   let str = `
@@ -525,96 +565,116 @@ function renderLongStr(name,longStr,location){
 }
 
 
-function renderItemWrapper(list,showNum,type,hasInfo){
+function renderItemWrapper(list, showNum, type, hasInfo) {
   let showNum1 = showNum || 5
   let shortStr = '', longStr = ''
-
-  for(let i = 0; i < list.length; i++){
-    if(i <= showNum1-1){
-      shortStr += renderPushItem(list[i],type)
+  for (let i = 0; i < list.length; i++) {
+    if (i <= showNum1 - 1) {
+      shortStr += renderPushItem(list[i], type)
     }
-    longStr += renderPushItem(list[i],type)
+    longStr += renderPushItem(list[i], type)
   }
 
-  if(showNum1 >= list.length){
+  if (showNum1 >= list.length) {
     return {
-      shortStr:`<div class="shortBox">${shortStr}</div>`,
-      longStr:''
+      shortStr: `<div class="shortBox">${shortStr}</div>`,
+      longStr: ''
     }
-  }else{
+  } else {
     shortStr += `<span class="showMore"> <img class="iconArrowImg" src="${showImg}"></span>`
     longStr += `<span class="showLess"><img class="iconArrowImg"  src="${collapseImg}"></span>`
     return {
-      shortStr:`<div class="shortBox clearfix">${shortStr}</div>`,
-      longStr:`<div class="longBox clearfix">${longStr}</div>`
+      shortStr: `<div class="shortBox clearfix">${shortStr}</div>`,
+      longStr: `<div class="longBox clearfix">${longStr}</div>`
     }
   }
 }
-function renderPushItem(item,type){
-  str= `<span class="pushItemBox" data-name="${item.name}" data-type="${type}"><span class="pushItemName">${item.name}</span>${item.hasInfo=="1"?`<img class="infoImg" src="${infoImg}">`:""}</span>`
-return str
+function renderPushItem(item, type) {
+  str = `<span class="pushItemBox" data-name="${item.name}" data-type="${type}">`
+  str += `${item.hasScale == "0" ? `<span class="pushItemName">${type == 8 ? ('【' + item.name + '】') : item.name}</span>` : item.hasScale == "1" ? `<span class="pushItemName evaluationtitle">${type == 8 ? ('【' + item.name + '】') : item.name}</span>` : `<span class="pushItemName">${type == 8 ? ('【' + item.name + '】') : item.name}</span>`}`
+  str += `${item.hasInfo == "1" ? `<img class="infoImg" src="${infoImg}">` : ""}`
+  str += '</span >'
+  return str
 }
-function bindOpenInfo(){
-  $(".infoImg").on("mouseenter", function(){
+function bindOpenInfo() {
+  $(".infoImg").on("mouseenter", function () {
     $(this).attr("src", infoImgOn)
-  }).on("mouseleave", function(){
+  }).on("mouseleave", function () {
     $(this).attr("src", infoImg)
   })
 }
 
 
-function titleStr(type){
+function titleStr(type) {
   let titleStr = ''
   titleStr += `<div class="moduleTitle"><img class="titleIcon" src=${titleConfigH[type].icon}>${titleConfigH[type].name}:</div>`
   return titleStr
 }
-function bindSlide(){
-  $(".showMore").on("click", function(){
-    $(".longStrBox").css("display","none")
-    $(this).parents(".moduleItem ").find(".longStrBox").css("display","block")
+function bindSlide() {
+  $(".showMore").on("click", function () {
+    $(".longStrBox").css("display", "none")
+    $(this).parents(".moduleItem ").find(".longStrBox").css("display", "block")
     let location = $(this).parents(".moduleItem ").find(".longStrBox").attr("data-location")
     let scrollTop = getLongTop(location)
-    $(this).parents(".moduleItem ").find(".longStrBox").css("top", 5 +Number(scrollTop)+ "px")
+    $(this).parents(".moduleItem ").find(".longStrBox").css("top", 5 + Number(scrollTop) + "px")
   })
-  $(".showLess").on("click", function(){
-    $(this).parent().parent().css("display","none")
+  $(".showLess").on("click", function () {
+    $(this).parent().parent().css("display", "none")
   })
   addScrollEvent()
 }
-function showMoreNewPage(){
-  $(".showMoreNewPage").on("click", function(){
+function showMoreNewPage() {
+  const codes = $(".tips-cont").attr("codes");
+  $(".showMoreNewPage").on("click", function () {
     // openNewWin(`smartAlert.html?billMsgList=${encodeURIComponent(billMsgList)}&highRiskList=${encodeURIComponent(highRiskList)}&criticalValList=${encodeURIComponent(criticalValList)}&noteList=${encodeURIComponent(noteList)}`)
-    openNewWin(`smartAlert.html?mrId=${mrId}&hospitalId=${hospitalIdUrl}`)
+    openNewWin(`smartAlert.html?mrId=${mrId}&hospitalId=${hospitalIdUrl}&codes=` + codes);
   })
 }
-function showMoreCaseWrite(){
-  $(".showMoreCaseWrite").on("click", function(){
+function showMoreCaseWrite() {
+  $(".showMoreCaseWrite").on("click", function () {
     // openNewWin(`smartAlert.html?billMsgList=${encodeURIComponent(billMsgList)}&highRiskList=${encodeURIComponent(highRiskList)}&criticalValList=${encodeURIComponent(criticalValList)}&noteList=${encodeURIComponent(noteList)}`)
     openNewWin(`caseWriteStandard.html?caseWriteStandradList=${encodeURIComponent(JSON.stringify(caseWriteStandradList))}`)
   })
 }
-function bindGeneralSlide(){
-  $(".showMoreGeneralTreat").on("click",function(){
+function bindGeneralSlide() {
+  $(".showMoreGeneralTreat").on("click", function () {
     openNewWin(`generalTreat.html?disName=${treatDisName}&name=${treatUniqueName}`)
   })
 }
-function setWidth(){
+function setWidth() {
   let winWidth = $(".bodyWrap").css("width")
-  $(".contentBox").css("width",winWidth)
+  $(".contentBox").css("width", winWidth)
 }
 
 //医学知识搜索
 searchMedical()
-function searchMedical(){
-  $(".medicalKonwledgeWrap .search").on("click", function(){
-    openNewWin(`staticSearch.html?searchType=1`)
+function searchMedical() {
+  $(".medicalKonwledgeWrap .search").on("click", function () {
+    openNewWin(`homeStatic.html?mrId=${mrId}&hospitalId=${hospitalIdUrl}&planCode=${planCode}`)
   })
 }
 function moreInfo() {
-  $('.infoImg').off("click").click(function(){
+  $('.infoImg').off("click").click(function () {
+    const name = $(this).parent().attr('data-name')
+    const type = $(this).parent().attr('data-type')
+    openNewWin(`staticInfo.html?type=${encodeURIComponent(type)}&position=0&name=${encodeURIComponent(name)}`)
+  })
+  $('.evaluationtitle').off("click").click(function () {
+    console.log(11)
     const name = $(this).parent().attr('data-name')
     const type = $(this).parent().attr('data-type')
-    openNewWin(`information.html?type=${encodeURIComponent(type)}&position=0&name=${encodeURIComponent(name)}`)
+    console.log(name)
+    openNewWin(`staticInfo.html?type=${encodeURIComponent(type)}&position=0&name=${encodeURIComponent(name)}&page=1&gauge=gauge`)
+  })
+  
+}
+function pushItemName(){
+  $('.pushItemName').off("click").click(function () {
+    console.log(11)
+    const name = $(this).parent().attr('data-name')
+    const type = $(this).parent().attr('data-type')
+    console.log(name)
+    openNewWin(`staticInfo.html?type=${encodeURIComponent(type)}&position=0&name=${encodeURIComponent(name)}`)
   })
 }
 function getVersion() {
@@ -622,47 +682,48 @@ function getVersion() {
     const data = res.data.data;
     const ver = localStorage.getItem('versionTime');
     const time = data.refreshTime;
-    if(!ver||ver===time+"=new"||time!==ver.replace("=new","")){       //判断版本是否更新
+    if (!ver || ver === time + "=new" || time !== ver.replace("=new", "")) {       //判断版本是否更新
       $(".versionBottom").addClass('new-icon');
-      localStorage.setItem('versionTime',time+"=new");     //保存版本更新时间
-    }else{
+      localStorage.setItem('versionTime', time + "=new");     //保存版本更新时间
+    } else {
       $(".versionBottom").removeClass("new-icon");
     }
   })
 }
-function getLongTop(type){
+function getLongTop(type) {
   let scrollTop = 0
-  if(type === "left"){
+  if (type === "left") {
     scrollTop = $(".leftWrapper").scrollTop() || 0
-  }else if(type === "right"){
+  } else if (type === "right") {
     scrollTop = $(".rightWrapper").scrollTop() || 0
   }
   return scrollTop
 }
-function addScrollEvent(){
-  $(`.leftWrapper`).off("scroll").scroll(throttle(function(){
-    if($(".leftWrapper .longStrBox").css("display") === "block"){
-      $(".leftWrapper .longStrBox").css("top",Number(getLongTop("left"))+5+"px")
+function addScrollEvent() {
+  $(`.leftWrapper`).off("scroll").scroll(throttle(function () {
+
+    if ($(".leftWrapper .longStrBox:visible").length) {
+      $(".leftWrapper .longStrBox:visible").css("top", Number(getLongTop("left")) + 5 + "px")
     }
   }, 100));
-  $(`.rightWrapper`).off("scroll").scroll(throttle(function(){
-    if($(".rightWrapper .longStrBox").css("display") === "block"){
-      $(".rightWrapper .longStrBox").css("top",Number(getLongTop("right"))+5+"px")
+  $(`.rightWrapper`).off("scroll").scroll(throttle(function () {
+    if ($(".rightWrapper .longStrBox:visible").css("display") === "block") {
+      $(".rightWrapper .longStrBox:visible").css("top", Number(getLongTop("right")) + 5 + "px")
     }
   }, 100));
 }
-$(function(){
+$(function () {
   getVersion()
-  $(window).on("resize",function(){
+  $(window).on("resize", function () {
     setWidth()
   })
-  $(".versionTop").on("click", function(){
+  $(".versionTop").on("click", function () {
     openNewWin("disclaimer.html")
   });
-  $(".versionBottom").on("click", function(){
+  $(".versionBottom").on("click", function () {
     const ver = localStorage.getItem('versionTime');
     $(".versionBottom").removeClass('new-icon');
-    localStorage.setItem('versionTime',ver.replace("=new",""));
+    localStorage.setItem('versionTime', ver.replace("=new", ""));
     openNewWin("version.html");
   });
 })

+ 62 - 0
src/js/homeStatic.js

@@ -0,0 +1,62 @@
+require('./../css/homeStatic.less');
+
+const $ = require("jquery");
+const {post, config,} = require('./promise.js');
+const {toggleWarnBox} = require('./util.js');
+let searchType = 0;
+require('./../images/staticBgS.png').replace(/^undefined/g, '')
+require('./../images/staticLogo.png').replace(/^undefined/g, '')
+require('./../images/staticBg.png').replace(/^undefined/g, '')
+require('./../images/word.png').replace(/^undefined/g, '')
+
+$(function(){
+  getAllTypes()
+  goSearchList()
+});
+//tab
+function renderTab(data){
+  let str = '';
+  for (let i = 0; i < data.length; i++) {
+    const element = data[i];
+    str += `<li class="${i==0?'tabFst':''}" data-id="${element.val}">${element.name}</li>`
+  }
+  $('.staticTopTab ul').html(str)
+  $(".staticTopTab li").click(function(){
+    searchType = $(this).attr('data-id')
+    $(this).css({borderColor:'#fff'}).siblings().css({borderColor:'#2A9BD5'})
+  })
+}
+//搜索跳转
+function goSearchList(){
+  $(".searchBtn").click(function(){
+    let vals = $('.searchStr').val()
+      if (!vals) {
+          $(".staticResult .loading").hide();
+          toggleWarnBox('检索词不能为空!');
+          return;
+      }
+    window.location.href = './searchStaticList.html?type='+searchType+'&inputStr='+vals
+  })
+}
+//获取字典信息
+function getAllTypes(){
+  const allTypes = localStorage.getItem('allTypes')&&JSON.parse(localStorage.getItem('allTypes'))||[];
+  if(allTypes.length>0){
+    renderTab(allTypes)
+    return
+  }
+  post(config.dictionaryInfo, {}).then((res) => {
+    const result = res.data
+    if(result.code==='0'){
+      const data = result.data[7]||[];
+      localStorage.setItem('allTypes',JSON.stringify(data))
+      renderTab(data)
+    }
+  })
+}
+
+$(function () {
+    $(".warning-box .confirm,.warning-box .close").click(function () {
+        toggleWarnBox();
+    })
+});

+ 1 - 1
src/js/index.js

@@ -1,5 +1,5 @@
 require('./../css/reset.css');
-require('./../css/indexVert.less');
+require('./../css/homeStatic.less');
 require('./../css/popup.css');
 // require('./popupEdit.js');
 var Promise = require("bluebird");

+ 513 - 105
src/js/informationOut.js

@@ -1,23 +1,42 @@
-if(!Promise){
+if (!Promise) {
   var Promise = require("bluebird");
-// Configure
+  // Configure
   Promise.config({
     longStackTraces: true,
     warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
   })
 }
 require('../css/informationOut.less')
+require('../css/informationOut.css')
 const {
   post,
   throttle,
   imageUrlPrefix,
   config,
   getUrlArgObject,
-  openNewWin
+  openNewWin,
+  Toast
 } = require('./promise.js');
 const $ = require("jquery");
-let showName,noticeName,clinicalPathwayName,showLis=[]
+const print = require("../js/jQuery.print")
+let printing = require('./../images/printing.png');
+let printing2 = require('./../images/printing2.png');
+let hel = require('./../images/icon-hel.png');
+let showName, noticeName, clinicalPathwayName, showLis = [], selectedDrop = 0, selectedTab = 0, isclick, num, top = 0
 
+//如果是子窗口,隐藏网页查看按钮
+function myBrowser() {
+  var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
+  var isOpera = userAgent.indexOf("Opera") > -1;
+  if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {
+    return "IE";
+  }; //判断是否IE浏览器
+}
+if (window.opener) {
+  selectedDrop = getUrlArgObject("d") || 0;
+  selectedTab = getUrlArgObject("t") || 0;
+  $("#openWin,.footer").hide();
+}
 let icond = require('./../images/d.png').replace(/^undefined/g, '')
 function getInfomation() {
   // var param = {
@@ -31,195 +50,584 @@ function getInfomation() {
     "hospitalId": getUrlArgObject('hospitalId'),
     "hisName": getUrlArgObject('hisName'),
     "hisDetailName": getUrlArgObject('hisDetailName'),
-    "contentTypes":[1,2,3]
+    "contentTypes": [1, 2, 3]
   };
-  const uname = getUrlArgObject('uname')
-  // showName = param.name
+  //showName = param.hisName;
   // if (param.type == 5 || param.type == 51) {
   //   param.type = 12;
   //   param.name = uname;
   // }
 
   post(config.getStaticKnowledgeForHIS, param).then((res) => {
-    if(res.data.code==='0'){
+    if (res.data.code === '0') {
       const data = res.data.data
       var str = '';
       var anchors = '';
-      if (!data||data.length===0) {
+      let sName = '';
+      if (!data || data.length === 0) {
         showEmpty();
         return;
       }
-      showLis=data
-      for(let i = 0;i < showLis.length;i++){
+      showLis = data
+      for (let i = 0; i < showLis.length; i++) {
         let tmp = showLis[i]
-        str+=`<li data-idx="${i}" title="${tmp.name}">${tmp.name}</li>`
+        str += `<li data-idx="${i}" title="${tmp.name}(${tmp.hisName})">${tmp.name}(${tmp.hisName})</li>`
       }
-      $(".showWhich ul").html(str)
-      $(".showWhichSelect").html(showLis[0].name).attr("title",showLis[0].name)
-      showName = data[0].name
-      document.title = showName
+      $(".showWhich ul").html(str);
+      sName = showLis[selectedDrop].name + "(" + showLis[selectedDrop].hisName + ")";
+      $(".showWhichSelect").html(sName).attr("title", sName)
+      showName = data[selectedDrop].name + "(" + data[selectedDrop].hisName + ")";
       showInfoSelect()
-      showInfo(data[0])
-      $('.content img').bind('contextmenu', function(){
+      showInfo(data[selectedDrop], 1)
+      renderTitleShow();
+      $('.content img').bind('contextmenu', function () {
         return false
       })
-    }else{
+    } else {
       showEmpty();
     }
   })
 }
 getInfomation();
-function showEmpty(){
-  const str=`<div class="empty"><img src="../images/empty3.png" alt=""><p>暂无静态知识</p></div>`;
-  $(".tabBox").html(str).css("border-bottom","none");
+function showEmpty() {
+  const str = `<div class="empty"><img src="../images/empty3.png" alt=""><p>暂无静态知识</p></div>`;
+  $(".tabBox").html(str).css("border-bottom", "none");
+  $("body").css('background', '#fff');
 }
-function showInfo(data){
+function showInfo(data, type) {
   var detailList = data.details
+  var scale = data.scale
   var staticKnowList = detailList['静态知识']
   var noticeInfo = detailList['注意事项']
   var clinicalPathwayInfo = detailList['临床路径']
+  var name = data.name
   noticeName = data.noticeName || "注意事项"
   clinicalPathwayName = data.clinicalPathwayName || "临床路径"
+  var scaleInfo = data.scale ? data.scale.scaleDetails : ''
   // $("h1").css({
   //   "color": "#267FD7",
   //   "borderBottom": "4px solid  #E9E9E9",
   //   "padding": "0px 60px 50px 0px"
   // });
-  renderTab(detailList)
-  staticKnowList&&renderContent(staticKnowList,'staticKnowledge')
-  noticeInfo&&renderContent(noticeInfo,'notice')
-  clinicalPathwayInfo&&renderContent(clinicalPathwayInfo,'clinicalPathway')
+  renderTab(detailList, scale)
+  staticKnowList && renderContent(staticKnowList, 'staticKnowledge')
+  noticeInfo && renderContent(noticeInfo, 'notice')
+  clinicalPathwayInfo && renderContent(clinicalPathwayInfo, 'clinicalPathway')
+  scaleInfo && renderContentscale(scaleInfo, 'scale', name)
 }
-function showInfoSelect(){
-  $('.showWhich li').click(function(){
+function showInfoSelect() {
+  $('.showWhich li').click(function () {
     let idx = $(this).attr('data-idx')
-    let name = $(this).html(),str=''
-    showName = showLis[idx].name
-    document.title = showName
-    showInfo(showLis[idx])
+    let name = $(this).html(), str = ''
+    selectedDrop = idx;
+    selectedTab = 0;
+    showName = showLis[idx].name + "(" + showLis[idx].hisName + ")";
+    num = $(".activeTab").attr('data-num')
+    
+    showInfo(showLis[idx], 2)
     $('.content .infos').scrollTop(0)
-    $(".showWhich ul").css("display","none")
-    $(".showWhichSelect").html(name).attr("title",name)
+    $(".showWhich ul").css("display", "none")
+    $(".showWhichSelect").html(name).attr("title", name)
+    renderTitleShow();
   })
-  $(".showWhichSelect").click(function(e){
+  $(".showWhichSelect").click(function (e) {
     e.stopPropagation()
     $(".showWhich ul").slideToggle()
   })
-  $(document).click(function(){
-    $(".showWhich ul").css("display","none")
+  $(document).click(function () {
+    $(".showWhich ul").css("display", "none")
   })
 }
-function renderContent(list, contentWrapClassName){
+function renderTitleShow() {
+  document.title = showName;
+  // $(".titleCont .title").html($(".tabList .tab:eq(" + selectedTab + ")").attr("data-title"));
+  $(".titleCont .title").html($(".showWhich .showWhichSelect").attr("title"));
+  
+
+}
+function renderContent(list, contentWrapClassName) {
   $(`.${contentWrapClassName} .infos`).html('');
   $(`.${contentWrapClassName} .anchors ul`).html('');
+  for (var i = 0; i < list.length; i++) {
+    var item = list[i];
+    item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+    anchors = '<li><i></i><a href="#' + contentWrapClassName + i +
+      '">' + item.title + '</a></li><li class="anchor-line"></li>';
+    str = '<div class="infoBox"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+      '">'
+    if (getUrlArgObject('type') == 8) {
+      str += '【' + item.title + '】'
+    } else {
+      str += item.title
+    }
+    str += '</h2></div>' +
+      '<div class="contentWrapper"><pre>' + item.content + '</pre><div></div>';
+    str = `<div class="infoWrapper">${str}</div>`
+    $(`.${contentWrapClassName} .infos`).append(str);
+    $(`.${contentWrapClassName} .anchors ul`).append(anchors);
+  }
+
+  function addScrollEvent() {
+    var scrollTop = $(`.${contentWrapClassName} .infos`).scrollTop()
+
+    var divHeight = 0;
     for (var i = 0; i < list.length; i++) {
-        var item = list[i];
-        item.content = item.content&&item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
-        anchors = '<li><i></i><a href="#' + contentWrapClassName+i +
-          '">' + item.title + '</a></li><li class="anchor-line"></li>';
-        str = '<div class="infoBox"><div class="title"> <div class= "circleBox"><span class="circle"> </span></div> <h2 class="titleH2" id="' + contentWrapClassName+i +
-          '">'
-        if (getUrlArgObject('type') == 8) {
-          str += '【' + item.title + '】'
-        } else {
-          str += item.title
+      divHeight = divHeight + parseInt($('#' + contentWrapClassName + i).css('height')) + parseInt($('#' + contentWrapClassName + i).parent().next().css('height')) + 20
+      if (divHeight > scrollTop) {
+        var anchor = 2 * i;
+        $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+        return;
+      }
+    }
+  }
+  $(`.${contentWrapClassName} .infos`).scroll(throttle(addScrollEvent, 200));
+  addLinkClickEvent(contentWrapClassName);
+  adjustHeight();
+  adjustWidth()
+}
+
+function renderContentscale(list, contentWrapClassName, name) {
+  $(`.${contentWrapClassName} .infos .infos-box`).html('');
+  $(`.${contentWrapClassName} .anchors ul`).html('');
+  var pushInfo = []
+  var textType = []
+  var constant = 0
+  $('.scaletitle').html(name);
+  for (var i = 0; i < list[0].detailList.length; i++) {
+    var item = list[0].detailList[i];
+    textType.push(item.textType)
+    if (item.resultType == 1) {
+      constant += parseFloat(item.constant)
+    }
+    if (item.textType == 11) {
+      item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+      str = '<div class="infoBox scaleBox" data-id="' + item.id + '"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+        '">'
+      str += item.content
+      str += '</h2></div>'
+      str = `<div class="infoWrapper">${str}</div>`
+      $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+      for (var j = 0; j < item.subList.length; j++) {
+        var items = item.subList[j];
+        for (var k = 0; k < items.detailList.length; k++) {
+          var it = items.detailList[k];
+          it.content = it.content && it.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+          str = '<div class="contentList" data-id="' + it.parentId + '-' + it.groupNum + '"><div class="item-list">';
+          if (it.selectType == 21) {
+            str += '<p class="item-title">' + it.content + '</p>'
+          } else if (it.selectType == 22) {
+            str += '<p class="item-titles">' + it.content + '</p>'
+          }
+          str += '<div class="item-content" data-id="' + it.id + '">'
+          str += '</div></div></div>'
+          $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "]").append(str);
+          for (var l = 0; l < it.subList[0].detailList.length; l++) {
+            var its = it.subList[0].detailList[l];
+            its.content = its.content && its.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+            str = '<div class="radio" name="scale' + its.parentId + '" value="' + its.score + '">';
+            if (it.selectType == 21 && item.resultType == 1) {
+              str += '<label><input class="radio_type" type="radio" name="scale' + its.parentId + '" value="' + parseFloat(((its.score * it.factor + it.constant) * item.factor + item.constant)) + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 1) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + parseFloat(((its.score * it.factor + it.constant) * item.factor + item.constant)) + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 21 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="radio" value="' + its.result + '" data_obj="' + it.content + '' + its.result + '" proposal="' + its.pushInfo + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + its.result + '" data_obj="' + it.content + '' + its.result + '" proposal="' + its.pushInfo + '" resultType="' + item.resultType + '"/>'
+            }
+            str += '<span class="inp">' + its.content + '</span>'
+            if (item.resultType == 1) {
+              str += '<span class="num">(' + its.score + ')</span>'
+            }
+            str += '</label>'
+            str += `${its.match == 1 ? `<img class="recommend" src="./../images/recommend.png" />` : ``}</div>`
+            $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "] .contentList .item-content[data-id=" + its.parentId + "]").append(str);
+          }
         }
-        str += '</h2></div>' +
-          '<div class="contentWrapper"><pre>' + item.content + '</pre><div></div>';
-          str = `<div class="infoWrapper">${str}</div>`
-        $(`.${contentWrapClassName} .infos`).append(str);
-        $(`.${contentWrapClassName} .anchors ul`).append(anchors);
-    }
-
-    function addScrollEvent() {
-      var scrollTop = $(`.${contentWrapClassName} .infos`).scrollTop()
-
-      var divHeight = 0;
-      for (var i = 0; i < list.length; i++) {
-        divHeight = divHeight + parseInt($('#'+contentWrapClassName+i).css('height')) + parseInt($('#'+contentWrapClassName+i).parent().next().css('height')) + 20
-        if (divHeight > scrollTop) {
-          var anchor = 2 * i;
-          $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
-          return;
+      }
+    }
+    if (item.textType == 12) {
+      item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+      str = '<div class="infoBox scaleBox" data-id="' + item.id + '"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+        '">'
+      str += item.content
+      str += '</h2></div>'
+      str = `<div class="infoWrapper">${str}</div>`
+      $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+      for (var j = 0; j < item.subList.length; j++) {
+        var items = item.subList[j];
+        for (var k = 0; k < items.detailList.length; k++) {
+          var it = items.detailList[k];
+          it.content = it.content && it.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+          str = '<div class="contentList" data-id="' + it.parentId + '-' + it.groupNum + '"><div class="item-list">';
+          str += it.content
+          str += '<div class="item-content" data-id="' + it.id + '">'
+          str += '</div></div></div>'
+          $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "]").append(str);
         }
       }
     }
-    $(`.${contentWrapClassName} .infos`).scroll(throttle(addScrollEvent, 200));
-    addLinkClickEvent(contentWrapClassName);
-    adjustHeight();
-    adjustWidth()
+    if (item.textType == 13) {
+      for (var m = 0; m < item.subList[0].detailList[0].subList[0].detailList.length; m++) {
+        var itl = item.subList[0].detailList[0].subList[0].detailList[m]
+        let arr = {
+          content: JSON.parse(itl.content),
+          result: itl.result,
+          pushInfo: itl.pushInfo
+        }
+        pushInfo.push(arr)
+      }
+    }
+  }
+  str = '<div class="scalebot">'
+  str += '<button class="but">结果</button><p class="score"></p>'
+  str += '</div>'
+  str += `<div class="result"><div class="result_box"><div class="result_left"><img src="./../images/icon-hel.png" class="hel"/><p id="result_title" class="result_title"></p></div><textarea id="inputs"></textarea></div></div>`
+  str += `<div class="foot"><div class="foot_box"><div class="printing"><img src="./../images/printing.png" class="slideImg"/>打印</div><div class="copy">确认并复制结果</div></div></div>`
+  $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+  function addScrollEvent() {
+    var scrollTop = $(`.${contentWrapClassName} .infos .infos-box`).scrollTop()
+    var divHeight = 0;
+    for (var i = 0; i < list.length; i++) {
+      divHeight = divHeight + parseInt($('#' + contentWrapClassName + i).css('height')) + parseInt($('#' + contentWrapClassName + i).parent().next().css('height')) + 20
+      if (divHeight > scrollTop) {
+        var anchor = 2 * i;
+        $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+        return;
+      }
+    }
+  }
+  $(`.${contentWrapClassName} .infos .infos-box`).scroll(throttle(addScrollEvent, 200));
+  addLinkClickEvent(contentWrapClassName);
+  adjustHeight();
+  adjustWidth()
+  getcheck()
+  getResult(pushInfo, textType, constant)
+  copy(name)
+  getprinting()
+
+}
+function getprinting() {
+  $('.printing').click(function () {
+    $('.foot').hide()
+    $('.scalebot').hide()
+    $('#Print').css({
+      'height': 'auto', //高度自动
+    }).print();
+    $('.foot').show()
+    $('.scalebot').show()
+    $('#Print').css({
+      'height': '100%', //高度自动
+    });
+  })
 }
 
+function getcheck() {
+  $('input:radio').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    if ($radio.data('waschecked') == true) {
+      $radio.prop('checked', false);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#666666");
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#333333");
+      if (isclick) {
+        getchecks()
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    } else {
+      $radio.prop('checked', true);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.data('waschecked', true);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#C7C7C7");
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#C7C7C7");
+      if (isclick) {
+        getchecks()
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    }
+  });
+  $('input:checkbox').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    $radio.parents('.contentList').each(function (i) {
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined) {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", false);
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#666666");
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#333333");
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      } else {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#C7C7C7");
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#C7C7C7");
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      }
+    })
+  });
+}
+
+function copy(name) {
+  $(".copy").click(function () {
+    var texts = document.getElementById("result_title").innerText;
+    if (texts == '') {
+      Toast('温馨提示:结果为空,无法复制', 500, 'warn')
+      return
+    }
+    var inputs = document.getElementById("inputs");
+    inputs.value = name + '结果为:' + texts.substring(3); // 修改文本框的内容(赋值内容)
+    inputs.select(); // 选中文本
+    document.execCommand("copy"); // 执行浏览器复制命令
+    Toast('复制成功', 500, 'success')
+  })
+
+}
+function getchecks() {
+  $(".contentList").each(function (i) {
+    if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-title").addClass('chColor');
+    } else {
+      $(this).find(".item-title").removeClass('chColor');
+    }
+    if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-titles").addClass('chColor');
+    } else {
+      $(this).find(".item-titles").removeClass('chColor');
+    }
+  });
+}
+$('#Print').on('scroll', function () {
+  top = $('#Print').scrollTop()
+})
+function getResult(pushInfo, textType, constant) {
+  $(".but").click(function () {
+    let arr = [];
+    let multarr = []
+    let multname
+    let num = 0
+    let result
+    let key = false
+    let proposal = ''
+    let proposals = []
+    let scrollTop = []
+    let v
+    let numType = false
+    isclick = true
+    for (var i = 0; i < textType.length; i++) {
+      if (textType[i] == 13) {
+        numType = true
+      }
+    }
+    $(".contentList").each(function (i) {
+      if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-title").addClass('chColor');
+      } else {
+        $(this).find(".item-title").removeClass('chColor');
+      }
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-titles").addClass('chColor');
+      } else {
+        $(this).find(".item-titles").removeClass('chColor');
+      }
+      scrollTop.push($(this).eq(0).find(".chColor").offset())
+    });
+
+    for (var i = 0; i < scrollTop.length; i++) {
+      if (scrollTop[i] != undefined) {
+        v = scrollTop[i]
+        break
+      }
+    }
+    if (v) {
+      $(`.scale .infos`).scrollTop(v.top + top - 160)
+    }
+    if (!$(".contentList").find(".item-title").hasClass('chColor') && !$(".contentList").find(".item-titles").hasClass('chColor')) {
+      $('input[type="radio"]:checked').each(function () {
+        if ($(this).attr("resultType") == 1) {
+          num += parseFloat($(this).val())
+        } else {
+          arr.push($(this).attr("data_obj"))
+          proposals.push($(this).attr("proposal"))
+        }
+      });
+      $('input[type="checkbox"]:checkbox:checked').each(function () {
+        if ($(this).attr("resultType") == 1) {
+          num += parseFloat($(this).val())
+        } else {
+          arr.push($(this).attr("data_obj"))
+          proposals.push($(this).attr("proposal"))
+        }
+      });
+      num = num + constant
+      num = parseFloat(num).toFixed(2)
+      tmp = arr.join(";");
+      if (pushInfo.length > 0) {
+        for (var i = 0; i < pushInfo.length; i++) {
+          if (pushInfo[i].content.max >= num && num >= pushInfo[i].content.min && !tmp) {
+            result = pushInfo[i].result + '(' + num + '分' + ')'
+            if (proposals.join(";")) {
+              proposal = pushInfo[i].pushInfo + ';' + proposals.join(";");
+            } else {
+              proposal = pushInfo[i].pushInfo
+            }
+            break
+          } else if (pushInfo[i].content.max >= num && num >= pushInfo[i].content.min && tmp) {
+            result = pushInfo[i].result + '(' + num + '分' + ')' + ';' + tmp
+            if (proposals.join(";")) {
+              proposal = pushInfo[i].pushInfo + ';' + proposals.join(";");
+            } else {
+              proposal = pushInfo[i].pushInfo
+            }
+            break
+          } else {
+            result = tmp
+            proposal = proposals.join(";");
+          }
+        }
+      } else {
+        result = tmp
+        proposal = proposals.join(";");
+      }
+      if (result) {
+        $(".hel").attr({
+          "title": proposal
+        });
+        $(".result_title").html('结果:' + result);
+        if (num >= 0 && numType) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".result").css('display', 'block')
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'block')
+        $(".foot").css('display', 'block')
+      } else {
+        if (num >= 0 && numType) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'none')
+        $(".foot").css('display', 'block')
+      }
+    } else {
+      Toast('温馨提示:必填选项不能为空~', 500, 'warn')
+    }
+  })
+  $(".printing").hover(
+    function () {
+      $(".slideImg").attr("src", "./../images/printing2.png");
+    }, function () {
+      $(".slideImg").attr("src", "./../images/printing.png");
 
+    });
+}
 
 function addLinkClickEvent(contentWrapClassName) {
   $(`.${contentWrapClassName} .anchors li:first`).addClass("active");
   $(`.${contentWrapClassName}  .anchors li>a`).on("click", function () {
 
     const that = this
-    setTimeout(function(){
+    setTimeout(function () {
       $(`.${contentWrapClassName} .anchors .active`).removeClass('active');
       $(that).parent().addClass("active");
-    },20)
+    }, 20)
 
   });
 }
 
-function renderTab(detailList){
+function renderTab(detailList, scale) {
   $(".tabList").html('')
-  if(detailList['静态知识']){
-    $(".tabList").append(`<span class="tab" data-module="staticKnowledge">静态知识</span>`)
-    $(".staticKnowledge h1").html(showName);
+  $(".container").css("display", "none")
+  if (detailList['静态知识']) {
+    $(".tabList").append(`<span class="tab" data-num="1" data-module="staticKnowledge" data-title="` + showName + `">静态知识</span>`)
+  }
+  if (detailList['临床路径']) {
+    $(".tabList").append(`<span class="tab" data-num="2" data-module="clinicalPathway" data-title="` + clinicalPathwayName + `">临床路径</span>`)
+    //$(".tabBox .title").html(clinicalPathwayName);
+  }
+  if (detailList['注意事项']) {
+    $(".tabList").append(`<span class="tab" data-num="2" data-module="notice" data-title="` + noticeName + `">注意事项</span>`)
+    //$(".tabBox .title").html(noticeName);
   }
-  if(detailList['临床路径']){
-    $(".tabList").append(`<span class="tab" data-module="clinicalPathway">临床路径</span>`)
-    $(".clinicalPathway h1").html(clinicalPathwayName);
+  if (!!scale && getUrlArgObject('type') == 8) {
+    $(".tabList").append(`<span class="tab" data-num="2" data-module="scale" data-title="` + showName + `">评估内容</span>`)
+    //$(".tabBox .title").html(noticeName);
   }
-  if(detailList['注意事项']){
-    $(".tabList").append(`<span class="tab" data-module="notice">注意事项</span>`)
-    $(".notice h1").html(noticeName);
+  let defaultModuleName
+  if ((getUrlArgObject('page') && getUrlArgObject('page') == 1 && scale && detailList['静态知识']) || (getUrlArgObject('scale') && getUrlArgObject('scale') != 'staticKnowledge' && detailList['静态知识']) || num == 2) {
+    console.log(1)
+    $(".tabList .tab").eq(1).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(1).attr("data-module")
+  } else {
+    $(".tabList .tab").eq(0).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
   }
-  $(".tabList .tab").eq(0).addClass("activeTab")
-  let defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
-  $(`.${defaultModuleName}`).css("display","block")
+  if ($('.tabList').children('.tab').length == 1) {
+    $(".tabList .tab").eq(0).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
+  }
+  $(`.${defaultModuleName}`).css("display", "block")
   bindTabClick()
 }
-function bindTabClick(){
-  $(".tabList .tab").on("click", function(){
+function bindTabClick() {
+  $(".tabList .tab").on("click", function () {
+    if ($('.tabList').children('.tab').length == 1) {
+      return
+    }
     const moduleName = $(this).attr("data-module")
     const display = $(`.${moduleName}`).css("display")
-    if(display == "none"){
+    selectedTab = $('.tabList .tab').index(this);
+    // $(".titleCont .title").html($(this).attr('data-title'));
+    if (display == "none") {
       $(".activeTab").removeClass("activeTab")
       $(this).addClass("activeTab")
-      $(".container").css("display","none")
-  
-      $(`.${moduleName}`).css("display","block")
+      $(".container").css("display", "none")
+      $(`.${moduleName}`).css("display", "block")
       $(`.${moduleName} .infos`).scrollTop(0)
     }
   })
-  $("#openWin").on("click",function(){
-    const type= getUrlArgObject('type');
-    const hospitalId= getUrlArgObject('hospitalId');
-    const hisName= getUrlArgObject('hisName');
-    const hisDetailName= getUrlArgObject('hisDetailName');
-    openNewWin("informationOut.html?hospitalId="+encodeURIComponent(hospitalId)+"&hisName="+encodeURIComponent(hisName)+"&hisDetailName="+encodeURIComponent(hisDetailName)+"&type="+encodeURIComponent(type));
+  $("#openWin").on("click", function () {
+    const type = getUrlArgObject('type');
+    const hospitalId = getUrlArgObject('hospitalId');
+    const hisName = getUrlArgObject('hisName');
+    const hisDetailName = getUrlArgObject('hisDetailName');
+    const scale = $('.activeTab').attr('data-module')
+    console.log(scale)
+    openNewWin("informationOut.html?hospitalId=" + encodeURIComponent(hospitalId) + "&hisName=" + encodeURIComponent(hisName) + "&hisDetailName=" + encodeURIComponent(hisDetailName || '') + "&type=" + encodeURIComponent(type) + "&d=" + selectedDrop + "&t=" + selectedTab + "&scale=" + scale);
   })
 }
 function adjustHeight() {
+  const extHt = window.opener?60:0;     //网页查看时隐藏页脚
   var ht = window.innerHeight || document.documentElement.clientHeight;
-  $(".content").height(ht - 90 + "px");
+  $(".content").height(ht - 160 + "px");
+  $(".content .infos").height(ht - 170 + "px");
+  $(".content .anchors").height(ht - 217 + "px");
 }
 function adjustWidth() {
   var wt = window.innerWidth || document.documentElement.clientWidth;
-  $(".titleH2").width(wt- 0.2*wt -33 - 200 - 17 - 40 -15 + 'px')
-  $("pre").width(wt- 0.2*wt - 200 + 'px')
+  // $(".titleH2").width(wt - 0.2 * wt - 33 - 200 - 17 - 40 - 15 + 'px')
+  $(".content .infos").width(wt - 155 - 33 - 17 - 40 - 15 + 'px');
 }
-$(window).on('resize', function(){
+$(window).on('resize', function () {
   adjustHeight()
   adjustWidth()
 })
-//如果是子窗口,隐藏网页查看按钮
-if(window.opener){
-  $("#openWin").hide();
-}
 

+ 237 - 0
src/js/jQuery.print.js

@@ -0,0 +1,237 @@
+/* @license 
+ * jQuery.print, version 1.3.2
+ *  (c) Sathvik Ponangi, Doers' Guild
+ * Licence: CC-By (http://creativecommons.org/licenses/by/3.0/)
+ *--------------------------------------------------------------------------*/
+const $ = require("jquery");
+(function ($) {
+    "use strict";
+    // A nice closure for our definitions
+    function getjQueryObject(string) {
+        // Make string a vaild jQuery thing
+        var jqObj = $("");
+        try {
+            jqObj = $(string)
+                .clone();
+        } catch (e) {
+            jqObj = $("<span />")
+                .html(string);
+        }
+        return jqObj;
+    }
+
+    function printFrame(frameWindow) {
+        // Print the selected window/iframe
+        var def = $.Deferred();
+        try {
+            setTimeout(function () {
+                // Fix for IE : Allow it to render the iframe
+                frameWindow.focus();
+                try {
+                    // Fix for IE11 - printng the whole page instead of the iframe content
+                    if (!frameWindow.document.execCommand('print', false, null)) {
+                        // document.execCommand returns false if it failed -http://stackoverflow.com/a/21336448/937891
+                        frameWindow.print();
+                    }
+                } catch (e) {
+                    frameWindow.print();
+                }
+                frameWindow.close();
+                def.resolve();
+            }, 250);
+        } catch (err) {
+            def.reject(err);
+        }
+        return def;
+    }
+
+    function printContentInNewWindow(content) {
+        // Open a new window and print selected content
+        var w = window.open();
+        w.document.write(content);
+        w.document.close();
+        return printFrame(w);
+    }
+
+    function isNode(o) {
+        /* http://stackoverflow.com/a/384380/937891 */
+        return !!(typeof Node === "object" ? o instanceof Node : o && typeof o === "object" && typeof o.nodeType === "number" && typeof o.nodeName === "string");
+    }
+    $.print = $.fn.print = function () {
+        // Print a given set of elements
+        var options, $this, self = this;
+        // console.log("Printing", this, arguments);
+        if (self instanceof $) {
+            // Get the node if it is a jQuery object
+            self = self.get(0);
+        }
+        if (isNode(self)) {
+            // If `this` is a HTML element, i.e. for
+            // $(selector).print()
+            $this = $(self);
+            if (arguments.length > 0) {
+                options = arguments[0];
+            }
+        } else {
+            if (arguments.length > 0) {
+                // $.print(selector,options)
+                $this = $(arguments[0]);
+                if (isNode($this[0])) {
+                    if (arguments.length > 1) {
+                        options = arguments[1];
+                    }
+                } else {
+                    // $.print(options)
+                    options = arguments[0];
+                    $this = $("html");
+                }
+            } else {
+                // $.print()
+                $this = $("html");
+            }
+        }
+        // Default options
+        var defaults = {
+            globalStyles: true,
+            mediaPrint: false,
+            stylesheet: null,
+            noPrintSelector: ".no-print",
+            iframe: true,
+            append: null,
+            prepend: null,
+            manuallyCopyFormValues: true,
+            deferred: $.Deferred()
+        };
+        // Merge with user-options
+        options = $.extend({}, defaults, (options || {}));
+        var $styles = $("");
+        if (options.globalStyles) {
+            // Apply the stlyes from the current sheet to the printed page
+            $styles = $("style, link, meta, title");
+        } else if (options.mediaPrint) {
+            // Apply the media-print stylesheet
+            $styles = $("link[media=print]");
+        }
+        if (options.stylesheet) {
+            // Add a custom stylesheet if given
+            $styles = $.merge($styles, $('<link rel="stylesheet" href="' + options.stylesheet + '">'));
+        }
+        // Create a copy of the element to print
+        var copy = $this.clone();
+        // Wrap it in a span to get the HTML markup string
+        copy = $("<span/>")
+            .append(copy);
+        // Remove unwanted elements
+        copy.find(options.noPrintSelector)
+            .remove();
+        // Add in the styles
+        copy.append($styles.clone());
+        // Appedned content
+        copy.append(getjQueryObject(options.append));
+        // Prepended content
+        copy.prepend(getjQueryObject(options.prepend));
+        if (options.manuallyCopyFormValues) {
+            // Manually copy form values into the HTML for printing user-modified input fields
+            // http://stackoverflow.com/a/26707753
+            copy.find("input")
+                .each(function () {
+                    var $field = $(this);
+                    if ($field.is("[type='radio']") || $field.is("[type='checkbox']")) {
+                        if ($field.prop("checked")) {
+                            $field.attr("checked", "checked");
+                        }
+                    } else {
+                        $field.attr("value", $field.val());
+                    }
+                });
+            copy.find("select").each(function () {
+                var $field = $(this);
+                $field.find(":selected").attr("selected", "selected");
+            });
+            copy.find("textarea").each(function () {
+                // Fix for https://github.com/DoersGuild/jQuery.print/issues/18#issuecomment-96451589
+                var $field = $(this);
+                $field.text($field.val());
+            });
+        }
+        // Get the HTML markup string
+        var content = copy.html();
+        // Notify with generated markup & cloned elements - useful for logging, etc
+        try {
+            options.deferred.notify('generated_markup', content, copy);
+        } catch (err) {
+            console.warn('Error notifying deferred', err);
+        }
+        // Destroy the copy
+        copy.remove();
+        if (options.iframe) {
+            // Use an iframe for printing
+            try {
+                var $iframe = $(options.iframe + "");
+                var iframeCount = $iframe.length;
+                if (iframeCount === 0) {
+                    // Create a new iFrame if none is given
+                    $iframe = $('<iframe height="0" width="0" border="0" wmode="Opaque"/>')
+                        .prependTo('body')
+                        .css({
+                            "position": "absolute",
+                            "top": -999,
+                            "left": -999
+                        });
+                }
+                var w, wdoc;
+                w = $iframe.get(0);
+                w = w.contentWindow || w.contentDocument || w;
+                wdoc = w.document || w.contentDocument || w;
+                wdoc.open();
+                wdoc.write(content);
+                wdoc.close();
+                printFrame(w)
+                    .done(function () {
+                        // Success
+                        setTimeout(function () {
+                            // Wait for IE
+                            if (iframeCount === 0) {
+                                // Destroy the iframe if created here
+                                $iframe.remove();
+                            }
+                        }, 100);
+                    })
+                    .fail(function (err) {
+                        // Use the pop-up method if iframe fails for some reason
+                        console.error("Failed to print from iframe", err);
+                        printContentInNewWindow(content);
+                    })
+                    .always(function () {
+                        try {
+                            options.deferred.resolve();
+                        } catch (err) {
+                            console.warn('Error notifying deferred', err);
+                        }
+                    });
+            } catch (e) {
+                // Use the pop-up method if iframe fails for some reason
+                console.error("Failed to print from iframe", e.stack, e.message);
+                printContentInNewWindow(content)
+                    .always(function () {
+                        try {
+                            options.deferred.resolve();
+                        } catch (err) {
+                            console.warn('Error notifying deferred', err);
+                        }
+                    });
+            }
+        } else {
+            // Use a new window for printing
+            printContentInNewWindow(content)
+                .always(function () {
+                    try {
+                        options.deferred.resolve();
+                    } catch (err) {
+                        console.warn('Error notifying deferred', err);
+                    }
+                });
+        }
+        return this;
+    };
+})($);

+ 74 - 14
src/js/promise.js

@@ -2,12 +2,16 @@ const qs = require('qs');
 const $ = require("jquery");
 // var Promise = require('./rePromise');
 var Promise = require("bluebird");
+let warn = require('./../images/icon-warning.png').replace(/^undefined/g, '')
+let success = require('./../images/icon-success.png').replace(/^undefined/g, '')
 let iconWarning = require('./../images/icon_waring_white.png').replace(/^undefined/g, '')
 let iconWarning1 = require('./../images/icon_warning.png').replace(/^undefined/g, '')
 let iconSymptomPush = require('./../images/icon_symptom_push.png').replace(/^undefined/g, '')
 let iconLisPush = require('./../images/icon_lis_push.png').replace(/^undefined/g, '')
 let iconPacsPush = require('./../images/icon_pacs_push.png').replace(/^undefined/g, '')
 let iconScalePush = require('./../images/icon_scale_push.png').replace(/^undefined/g, '')
+let iconNursePush = require('./../images/icon_nurse_push.png').replace(/^undefined/g, '')
+
 let iconOperationPush = require('./../images/icon_operation_push.png').replace(/^undefined/g, '')
 let iconDrugPush = require('./../images/icon_drug_push.png').replace(/^undefined/g, '')
 let iconDiagPush = require('./../images/icon_diag_push.png').replace(/^undefined/g, '')
@@ -54,15 +58,15 @@ const config = {
     indicationPushCache: '/sys/mr/getIndicationMr',
   calculate: '/api/data/calc/calculate',
   disclaimer: '/sys/disclaimerInfo/getDisclaimerInfo',
-  information: '/graph/conceptInfo/getStaticKnowledge',
-  getStaticKnowledgeForHIS:'/graph/conceptInfo/getStaticKnowledgeForHIS', //对接一对多
+  information: '/kl/conceptInfo/getStaticKnowledge',
+  getStaticKnowledgeForHIS:'/kl/conceptInfo/getStaticKnowledgeForHIS', //对接一对多
   informationMore: '/api/data/conceptDetail/getConceptDetails',
   pushScale: '/api/data/push/pushScale',
   getSysSetInfoDatas: '/sys/plan/getSysPlanInfoDatas',
   getMr: '/sys/mr/getMr', //页面推送患者信息
   getMr2: '/sys/mr/getMr', //icss推送患者信息
   getVersion: '/sys/versionInfo/getVersionInfoAlls',
-  getStaticKnowledge: '/graph/conceptInfo/staticKnowledgeIndex',//静态知识检索
+  getStaticKnowledge: '/kl/conceptInfo/staticKnowledgeIndex',//静态知识检索
   getStaticScale: '/api/data/search/getScale',
   dictionaryInfo: '/sys/dictionaryInfo/getList', //字典信息
   getPushSet:'/sys/plan/getSysPlanInfoDatas', //获取推送配置
@@ -74,7 +78,8 @@ const config = {
     '22':'1,2',
     '11':'3',
     '8':'4,5'
-  }
+  },
+  staticSearch:'/kl/conceptInfo/staticIndexPage', //检索静态知识
 }
 const isLocal = window.location.hostname.indexOf('localhost') !=-1;
 const imageUrlPrefix = isLocal ?'http://192.168.2.241:82':'http://'+window.location.hostname+':82';
@@ -98,6 +103,26 @@ const getUrlArgObject = function getQueryString(name) {
   }
 }
 
+const get = function (url, data) {
+    return new Promise((resolve, reject) => {
+        $.ajax({
+            method: 'get',
+            url: url,
+            //data: data,
+            contentType: "application/json; charset=UTF-8",
+            beforeSend: function (xmlHttp) {
+                xmlHttp.setRequestHeader("If-Modified-Since", "0");
+                xmlHttp.setRequestHeader("Cache-Control", "no-cache");
+            },
+            success: function (res) {
+                resolve({data: res});
+            },
+            error: function (error) {
+                reject(error);
+            },
+        });
+    });
+}
 const post = function (url, data) {
   return new Promise((resolve, reject) => {
     $.ajax({
@@ -125,10 +150,10 @@ const newinConf = {
   top: '0',    //窗口的 y 坐标。以像素计。
   openMode: "_blank"  //每次都是新窗口打开为_blank,打开同一窗口填写任意字符串
 }
-
+const newWindowLocationTcm = `width=800, height=600, left=${newinConf.left}, top=${newinConf.top},resizable=yes, scrollbars=yes`
 const newWindowLocation = `width=${newinConf.width}, height=${newinConf.height}, left=${newinConf.left}, top=${newinConf.top},resizable=yes, scrollbars=yes`
-const openNewWin = function (url) {
-  window.open(url, newinConf.openMode, newWindowLocation)
+const openNewWin = function (url, isTcm) {
+  window.open(url, newinConf.openMode, isTcm ? newWindowLocationTcm : newWindowLocation)
 }
 
 //判断浏览器是否为Ie8
@@ -189,7 +214,7 @@ const titleConfig = {
     name:"推荐体格检查"
   },
   scalePush:{
-    background: "#ECF4FC",
+    background: "#EEF5FD",
     icon: iconScalePush,
     name:"推荐量表"
   },
@@ -208,6 +233,11 @@ const titleConfig = {
     icon: iconDrugPush,
     name:"推荐用药"
   },
+    nursePush: {
+        background: "#E3FEFE",
+        icon: iconNursePush,
+        name: "推荐护理"
+    },
   operationPush:{
     background: "#E3FEFE",
     icon: iconOperationPush,
@@ -250,9 +280,10 @@ const titleConfigH = {
     location:"left"
   },
   scalePush:{
-    background: "#ECF4FC",
+    background: "#EEF5FD",
     icon: iconScalePush,
-    name:"推荐量表"
+    name:"推荐量表",
+    location:"left"
   },
   lisPush:{
     background: "#ECF4FC",
@@ -268,22 +299,28 @@ const titleConfigH = {
   },
   generaTreatPush:{
     background: "#E3FEFE",
-    icon: iconTreatMedicine,
+    icon: iconTreat,
     name:"一般治疗",
     location:"right"
   },
   drugPush:{
     background: "#E3FEFE",
-    icon: iconTreatMedicine,
+    icon: iconDrugPush,
     name:"推荐用药",
     location:"right"
   },
   operationPush:{
     background: "#E3FEFE",
-    icon: iconTreatMedicine,
+    icon: iconOperationPush,
     name:"手术/操作",
     location:"right"
   },
+    nursePush: {
+        background: "#E3FEFE",
+        icon: iconNursePush,
+        name: "推荐护理",
+        location: "right"
+    },
   vigilancePush:{
     background: "#FFE8DD",
     icon: iconWarning,
@@ -302,8 +339,30 @@ const titleConfigH = {
     location:"left"
   }
 }
+const Toast = function (msg, duration,type) {
+  duration = isNaN(duration) ? 3000 : duration;
+  var m = document.createElement('div');
+  if(type == 'warn'){
+    m.innerHTML = '<div style="margin:auto"><img class="warn" style="margin-right:14px;float:left" src="./../images/icon-warning.png" /><span>'+msg+'</span></div>'
+    m.style.cssText = "margin:auto;width:250px;vertical-align:middle;padding:25px 14px;height: 30px;color: #fff;line-height: 30px;text-align: center;border-radius: 8px;position: absolute;top: 0;left: 0;right:0;bottom:0;z-index: 999999;background: #333;font-size: 16px;";
+  }else if(type == 'success'){
+    m.innerHTML = '<div style="margin:auto;width:120px"><img class="warn" style="width:32px;margin-right:14px;float:left" src="./../images/icon-success.png" /><span>' + msg +'</span></div>'
+    m.style.cssText = "margin:auto;width:120px;vertical-align:middle;padding:25px 14px;height: 30px;color: #fff;line-height: 30px;text-align: center;border-radius: 8px;position: absolute;top: 0;left: 0;right:0;bottom:0;z-index: 999999;background: #333;font-size: 16px;";
+  }
+  
+  
+  $('.warn').css('margin-top','10px')
+  document.body.appendChild(m);
+  setTimeout(function () {
+    var d = 0.5;
+    m.style.webkitTransition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in';
+    m.style.opacity = '0';
+    setTimeout(function () { document.body.removeChild(m) }, d * 1000);
+  }, duration);
+}
 module.exports = {
   config,
+    get,
   post,
   getUrlArgObject,
   imageUrlPrefix,
@@ -311,5 +370,6 @@ module.exports = {
   openNewWin,
   isIe8,
   titleConfig,
-  titleConfigH
+  titleConfigH,
+  Toast
 }

+ 228 - 0
src/js/searchStaticList.js

@@ -0,0 +1,228 @@
+require('./../css/searchStaticList.less');
+
+const $ = require("jquery");
+const { post,config,getUrlArgObject,openNewWin } = require('./promise.js');
+const {toggleWarnBox} = require('./util.js');
+
+let searchType = 0, inputStr = '', curPage = 1, size = 10, totalPage = 1;
+searchType = getUrlArgObject('type') || 0
+inputStr = getUrlArgObject('inputStr') || ''
+
+let arrowLeft = require('./../images/leftpage.png').replace(/^undefined/g, '')
+let arrowRight = require('./../images/rightpage.png').replace(/^undefined/g, '')
+require('./../images/staticBgS.png').replace(/^undefined/g, '')
+require('./../images/staticLogo.png').replace(/^undefined/g, '')
+require('./../images/staticBg.png').replace(/^undefined/g, '')
+require('./../images/nolis.png').replace(/^undefined/g, '')
+require('./../images/warn.png').replace(/^undefined/g, '')
+
+$(function(){
+  initData()
+  getAllTypes()
+  getSearchList()
+  getTabData()
+});
+//tab
+function renderTab(data){
+    let str = '';
+    for (let i = 0; i < data.length; i++) {
+      const element = data[i];
+      str += `<li class="${i==0?'tabFst':''}" data-id="${element.val}">${element.name}</li>`
+    }
+    $('.staticTopTab ul').html(str)
+    $('.staticTopTab li[data-id='+searchType+']').css({color:'#2A9BD5'}).siblings().css({color:'#333'});
+    $(".staticTopTab li").click(function(){
+      searchType = $(this).attr('data-id')
+      $(this).css({color:'#2A9BD5'}).siblings().css({color:'#333'})
+    })
+  }
+//获取字典信息
+function getAllTypes(){
+    const allTypes = localStorage.getItem('allTypes')&&JSON.parse(localStorage.getItem('allTypes'))||[];
+    if(allTypes.length>0){
+      renderTab(allTypes)
+      return
+    }
+    post(config.dictionaryInfo, {}).then((res) => {
+      const result = res.data
+      if(result.code==='0'){
+        const data = result.data[7]||[];
+        localStorage.setItem('allTypes',JSON.stringify(data))
+        renderTab(data)
+      }
+    })
+  }
+function getSearchList(){
+    $(".searchBtn").click(function(){
+        $(".resultItemWrap,.pagination").html("");
+        $(".staticResult .loading").show();
+        curPage=1;
+        getTabData()
+    })
+}
+function getTabData(){
+    let vals = $('.searchStr').val();
+    if (!vals) {
+        $(".staticResult .loading").hide();
+        toggleWarnBox('检索词不能为空!');
+        return;
+    }
+    let param = {
+        size,
+        current:curPage,
+        types:[+searchType],
+        inputStr:vals
+    }
+    $(".resultItemEmpty").hide();
+    post(config.staticSearch,param).then((res) => {
+      const result = res.data
+      if(result.code == 0) {
+        const data = result.data;
+        tabList = data.records;
+          totalPage = data.pages;
+        const totalNum = data.total;
+        renderList(tabList);
+        if(totalNum > 0){
+            renderPagination(totalPage,Number(curPage),totalNum)
+        } else{
+            $('.pagination').html("")
+        }
+      }
+    })
+}
+function renderList(tabList){
+    $(".staticResult .loading").hide();
+    if(tabList.length == 0){
+        $('.pagination').html('')
+        $(".resultItemWrap").html('');
+        $(".resultItemEmpty").css({display:'block'});
+        return
+    }
+    let str = ''
+    for(let i = 0;i<tabList.length;i++){
+        let item = tabList[i]
+        str += `
+            <div class="resultItem" data-type="${item.type}" data-name="${item.name}">
+                <div>
+                    <span class="type">${item.typeName}</span>
+                    <span class="drug">${item.name}</span>
+                    ${item.code ?`<span class="code">${item.code}</span>`:''}
+                </div>
+                ${item.retrievalName?`<div class="same">同义词:<span>${item.retrievalName}</span></div>`:''}
+                <div class="content">
+                    <p>${item.abstractContent}</p>
+                </div>
+            </div>
+        `
+    }
+    $(".resultItemWrap").html(str);
+    $('.resultItem').click(function(){
+        let name = $(this).attr('data-name')
+        let type = $(this).attr('data-type')
+        if(window.opener){
+            openNewWin(`./staticInfo.html?name=${name}&type=${type}`);
+        }else{
+            window.open(`./staticInfo.html?name=${name}&type=${type}`);
+        }
+    })
+    window.scrollTo(0, 0);
+}
+function initData(){
+    if(searchType){
+        $('.staticTopTab li').eq(searchType).css({color:'#2A9BD5'}).siblings().css({color:'#333'})
+    }
+    if(inputStr){
+        $(".searchStr").val(inputStr)
+    }
+}
+
+// 分页
+function renderPagination(totalPage,activePage,totalNum){
+    let str = `<span class="totalSum">共${totalNum}条</span>
+        <select class="select">
+            <option value="10" ${size==10?'selected':''}>10条/页</option>
+            <option value="50" ${size==50?'selected':''}>50条/页</option>
+            <option value="100" ${size==100?'selected':''}>100条/页</option>
+            <option value="500" ${size==500?'selected':''}>500条/页</option>
+            <option value="1000" ${size==1000?'selected':''}>1000条/页</option>
+            <option value="5000" ${size==5000?'selected':''}>5000条/页</option>
+        </select>
+        <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>`
+        }
+    }else{
+        if(activePage <= 3){ //选中页数小于4
+            for(let i = 1; i <= 4; i++){
+                str += `<span class="pageNum ${'page'+i}" data-page=${i}>${i}</span>`
+            }
+            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="more" >...</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>`
+            str += `<span class="pageNum ${'page'+totalPage}" data-page=${totalPage}>${totalPage}</span>`
+        } else {
+            str += `<span class="pageNum page1" data-page=1>1</span>`
+            str += `<span class="more" >...</span>`
+            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="more" >...</span>`
+            str += `<span class="pageNum ${'page'+totalPage}" data-page=${totalPage}>${totalPage}</span>`
+        }
+       
+    }
+    str += `<span class="nextPage"><img class="arrowPage" src=${arrowRight} /></span>
+        <span class="goNum">前往 <input type="number" value="${curPage}" /> 页</span>`
+    $('.pagination').html(str)
+    $('.page' + activePage).addClass('activePage')
+    $(".pageNum").on("click", function(e){
+        //console.log($(this)[0])
+        const activePageNow = Number($(this).attr('data-page'))
+        curPage = activePageNow
+        getTabData()
+    })
+    $(".prePage").on("click", function(e){
+        let activePageNow = Number($(".activePage").attr('data-page'))
+        if(activePageNow > 1){
+            curPage = --activePageNow
+            getTabData()
+        }
+    })
+    $(".nextPage").on("click", function(e){
+        let activePageNow = Number($(".activePage").attr('data-page'))
+        if(activePageNow < totalPage){
+            curPage = ++activePageNow
+            getTabData()
+        }
+    })
+    $('.select').change(function(){
+        size = $(this).val();
+        curPage=1;
+        getTabData()
+    })
+    $('.goNum input').change(function(){
+        const n = $(this).val()
+        if (totalPage < n || n < 1) {
+            toggleWarnBox("请输入1-" + totalPage + "范围内的整数");
+            return;
+        }
+        curPage = n;
+        getTabData()
+    })
+}
+
+$(function () {
+    $(".warning-box .confirm,.warning-box .close").click(function () {
+        toggleWarnBox();
+    })
+});
+

+ 7 - 18
src/js/smartAlert.js

@@ -1,7 +1,8 @@
 const $ = require("jquery");
 const { post,config,getUrlArgObject } = require('./promise.js');
-let mrId = getUrlArgObject('mrId') 
+let mrId = getUrlArgObject('mrId')
 let hospitalIdUrl = getUrlArgObject('hospitalId') || ''
+const codes = getUrlArgObject('codes') || ''
 let msg
 $(function(){
   function getMRInfo() {
@@ -21,29 +22,17 @@ $(function(){
         let noteList = result.noteList || []  //检查内容注意事项
         let dubugStr = result.dubugStr || []  //注意调试信息
         let otherList = result.otherList || []  //其他提醒
-        renderBillingPush(billMsgList,'开单合理性')
-        renderBillingPush(highRiskList,'高风险提示')
-        renderBillingPush(criticalValList,'危急值提醒')
-        renderBillingPush(noteList,'检查注意事项')
-        renderBillingPush(otherList,'其他提醒')
+        codes.indexOf("rationali")>-1&&renderBillingPush(billMsgList,'开单合理性')
+        codes.indexOf("highrisk")>-1&&renderBillingPush(highRiskList,'高风险提示')
+        codes.indexOf("crivalue")>-1&&renderBillingPush(criticalValList,'危急值提醒')
+        //renderBillingPush(noteList,'检查注意事项')
+        codes.indexOf("otherremind")>-1&&renderBillingPush(otherList,'其他提醒')
         // renderBillingPush(dubugStr,'注意调试信息')
        
       }
 
     })
   })
-  // let tipsMsg = JSON.parse(getUrlArgObject("tipsMsg")) || {}
- 
-  // let billMsgList = tipsMsg.billMsgList || []
-  // let highRiskList = tipsMsg.highRiskList || []
-  // let criticalValList = tipsMsg.criticalValList || []
-  // let noteList = tipsMsg.noteList || []
-  // let otherList = tipsMsg.otherList || []  //其他提醒
-  // renderBillingPush(billMsgList,'开单合理性')
-  // renderBillingPush(highRiskList,'高风险提示')
-  // renderBillingPush(criticalValList,'危急值提醒')
-  // renderBillingPush(noteList,'检查注意事项')
-  // renderBillingPush(otherList,'其他提醒')
   function renderBillingPush(list,name){
     if(list.length === 0){
       return

+ 551 - 0
src/js/staticInfo.js

@@ -0,0 +1,551 @@
+if (!Promise) {
+  var Promise = require("bluebird");
+  // Configure
+  Promise.config({
+    longStackTraces: true,
+    warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
+  })
+}
+require('../css/staticInfo.less')
+require('../css/print.css')
+const {
+  post,
+  throttle,
+  imageUrlPrefix,
+  config,
+  getUrlArgObject,
+  openNewWin,
+  Toast
+} = require('./promise.js');
+const $ = require("jquery");
+const print = require("../js/jQuery.print")
+let printing = require('./../images/printing.png');
+let printing2 = require('./../images/printing2.png');
+let recommend = require('./../images/recommend.png');
+let hel = require('./../images/icon-hel.png');
+
+let showName, noticeName, clinicalPathwayName, isclick,top = 0
+function myBrowser() {
+  var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
+  var isOpera = userAgent.indexOf("Opera") > -1;
+  if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {
+    return "IE";
+  }; //判断是否IE浏览器
+}
+
+function getInfomation() {
+  var param = {
+    "type": getUrlArgObject('type'),
+    "name": getUrlArgObject('name'),
+    "position": getUrlArgObject('position'),
+    "contentTypes": [1, 2, 3],
+    "mrId": getUrlArgObject('mrId')
+  };
+  showName = param.name
+  $(".tabBox .title").html(showName);
+
+  post(config.information, param).then((res) => {
+    const data = res.data.data
+    // const data = dataaaa.data
+    document.title = showName
+    var str = '';
+    var anchors = '';
+    if (!data) {
+      $(".title").html("暂时没有数据");
+      $(".anchors").css("display", "none");
+      return;
+    }
+    var detailList = data.details
+    var scale = data.scale
+    var staticKnowList = detailList['静态知识']
+    var noticeInfo = detailList['注意事项']
+    var clinicalPathwayInfo = detailList['临床路径']
+    var scaleInfo = data.scale ? data.scale.scaleDetails : ''
+    var name = data.name
+    noticeName = data.noticeName || "注意事项"
+    clinicalPathwayName = data.clinicalPathwayName || "临床路径"
+    renderTab(detailList, scale)
+    staticKnowList && renderContent(staticKnowList, 'staticKnowledge')
+    noticeInfo && renderContent(noticeInfo, 'notice')
+    clinicalPathwayInfo && renderContent(clinicalPathwayInfo, 'clinicalPathway')
+    scaleInfo && renderContentscale(scaleInfo, 'scale', name)
+    $('.content img').bind('contextmenu', function () {
+      return false
+    })
+
+  })
+}
+getInfomation();
+
+
+function renderContent(list, contentWrapClassName) {
+
+  for (var i = 0; i < list.length; i++) {
+    var item = list[i];
+    item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+    anchors = '<li><i></i><a href="#' + contentWrapClassName + i +
+      '">' + item.title + '</a></li><li class="anchor-line"></li>';
+    str = '<div class="infoBox"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+      '">'
+    /*if (getUrlArgObject('type') == 8) {
+      str += '【' + item.title + '】'
+    } else {*/
+    str += item.title
+    /*}*/
+    str += '</h2></div>' +
+      '<div class="contentWrapper"><pre>' + item.content + '</pre><div></div>';
+    str = `<div class="infoWrapper">${str}</div>`
+    $(`.${contentWrapClassName} .infos`).append(str);
+    $(`.${contentWrapClassName} .anchors ul`).append(anchors);
+  }
+
+  function addScrollEvent() {
+    var scrollTop = $(`.${contentWrapClassName} .infos`).scrollTop()
+
+    var divHeight = 0;
+    for (var i = 0; i < list.length; i++) {
+      divHeight = divHeight + parseInt($('#' + contentWrapClassName + i).css('height')) + parseInt($('#' + contentWrapClassName + i).parent().next().css('height')) + 20
+
+      if (divHeight > scrollTop) {
+        var anchor = 2 * i;
+        $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+        return;
+      }
+    }
+  }
+  $(`.${contentWrapClassName} .infos`).scroll(throttle(addScrollEvent, 200));
+  addLinkClickEvent(contentWrapClassName);
+  adjustHeight();
+  adjustWidth()
+}
+
+function renderContentscale(list, contentWrapClassName, name) {
+  var pushInfo = []
+  var textType = []
+  var constant = 0
+  $('.scaletitle').html(name);
+  for (var i = 0; i < list[0].detailList.length; i++) {
+    var item = list[0].detailList[i];
+    textType.push(item.textType)
+    if (item.resultType == 1) {
+      constant += parseFloat(item.constant)
+    }
+    if (item.textType == 11) {
+      item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+      str = '<div class="infoBox scaleBox" data-id="' + item.id + '"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+        '">'
+      str += item.content
+      str += '</h2></div>'
+      str = `<div class="infoWrapper">${str}</div>`
+      $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+      for (var j = 0; j < item.subList.length; j++) {
+        var items = item.subList[j];
+        for (var k = 0; k < items.detailList.length; k++) {
+          var it = items.detailList[k];
+          it.content = it.content && it.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+          str = '<div class="contentList" data-id="' + it.parentId + '-' + it.groupNum + '"><div class="item-list">';
+          if (it.selectType == 21) {
+            str += '<p class="item-title">' + it.content + '</p>'
+          } else if (it.selectType == 22) {
+            str += '<p class="item-titles">' + it.content + '</p>'
+          }
+          str += '<div class="item-content" data-id="' + it.id + '">'
+          str += '</div></div></div>'
+          $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "]").append(str);
+          for (var l = 0; l < it.subList[0].detailList.length; l++) {
+            var its = it.subList[0].detailList[l];
+            its.content = its.content && its.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+            str = '<div class="radio" name="scale' + its.parentId + '" value="' + its.score + '">';
+            if (it.selectType == 21 && item.resultType == 1) {
+              str += '<label><input class="radio_type" type="radio" name="scale' + its.parentId + '" value="' + parseFloat(((its.score * it.factor + it.constant) * item.factor)) + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 1) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + parseFloat(((its.score * it.factor + it.constant) * item.factor)) + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 21 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="radio" value="' + its.result + '" data_obj="' + it.content + '' + its.result + '" proposal="' + its.pushInfo + '" resultType="' + item.resultType + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + its.result + '" data_obj="' + it.content + '' + its.result + '" proposal="' + its.pushInfo + '" resultType="' + item.resultType + '"/>'
+            }
+            str += '<span class="inp">' + its.content + '</span>'
+            if (item.resultType == 1) {
+              str += '<span class="num">(' + its.score + ')</span>'
+            }
+            str += '</label>'
+            str += `${its.match == 1 ? `<img class="recommend" src="./../images/recommend.png" />` : ``}</div>`
+            $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "] .contentList .item-content[data-id=" + its.parentId + "]").append(str);
+          }
+        }
+      }
+    }
+    if (item.textType == 12) {
+      item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+      str = '<div class="infoBox scaleBox" data-id="' + item.id + '"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+        '">'
+      str += item.content
+      str += '</h2></div>'
+      str = `<div class="infoWrapper">${str}</div>`
+      $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+      for (var j = 0; j < item.subList.length; j++) {
+        var items = item.subList[j];
+        for (var k = 0; k < items.detailList.length; k++) {
+          var it = items.detailList[k];
+          it.content = it.content && it.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+          str = '<div class="contentList" data-id="' + it.parentId + '-' + it.groupNum + '"><div class="item-list">';
+          str += it.content
+          str += '<div class="item-content" data-id="' + it.id + '">'
+          str += '</div></div></div>'
+          $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "]").append(str);
+        }
+      }
+    }
+    if (item.textType == 13) {
+      for (var m = 0; m < item.subList[0].detailList[0].subList[0].detailList.length; m++) {
+        var itl = item.subList[0].detailList[0].subList[0].detailList[m]
+        let arr = {
+          content: JSON.parse(itl.content),
+          result: itl.result,
+          pushInfo: itl.pushInfo
+        }
+        pushInfo.push(arr)
+      }
+    }
+  }
+  str = '<div class="scalebot">'
+  str += '<button class="but">结果</button><p class="score"></p>'
+  str += '</div>'
+  str += `<div class="result"><div class="result_box"><div class="result_left"><img src="./../images/icon-hel.png" class="hel"/><p id="result_title" class="result_title"></p></div><textarea id="inputs"></textarea></div></div>`
+  str += `<div class="foot"><div class="foot_box"><div class="printing"><img src="./../images/printing.png" class="slideImg"/>打印</div><div class="copy">确认并复制结果</div></div></div>`
+  $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+  function addScrollEvent() {
+    var scrollTop = $(`.${contentWrapClassName} .infos .infos-box`).scrollTop()
+    var divHeight = 0;
+    for (var i = 0; i < list.length; i++) {
+      divHeight = divHeight + parseInt($('#' + contentWrapClassName + i).css('height')) + parseInt($('#' + contentWrapClassName + i).parent().next().css('height')) + 20
+      if (divHeight > scrollTop) {
+        var anchor = 2 * i;
+        $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+        return;
+      }
+    }
+  }
+  $(`.${contentWrapClassName} .infos .infos-box`).scroll(throttle(addScrollEvent, 200));
+  addLinkClickEvent(contentWrapClassName);
+  adjustHeight();
+  adjustWidth()
+  getcheck()
+  getResult(pushInfo, textType, constant)
+  copy(name)
+  getprinting()
+}
+function getprinting() {
+  $('.printing').click(function () {
+    $('.foot').hide()
+    $('.scalebot').hide()
+    $('#Print').css({
+      'height': 'auto', //高度自动
+    }).print()
+    $('.foot').show()
+    $('.scalebot').show()
+    $('#Print').css({
+      'height': '100%', //高度自动
+    });
+  })
+}
+
+function getcheck() {
+  $('input:radio').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    if ($radio.data('waschecked') == true) {
+      $radio.prop('checked', false);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", false);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#666666");
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#333333");
+      if (isclick) {
+        getchecks()
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    } else {
+      $radio.prop('checked', true);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.data('waschecked', true);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#C7C7C7");
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#C7C7C7");
+      if (isclick) {
+        getchecks()
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    }
+  });
+  $('input:checkbox').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    $radio.parents('.contentList').each(function (i) {
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined) {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", false);
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#666666");
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#333333");
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      } else {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('label').css("color", "#C7C7C7");
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.item-titles').css("color", "#C7C7C7");
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      }
+    })
+  });
+}
+$('#Print').on('scroll', function () {
+  top = $('#Print').scrollTop()
+})
+function copy(name) {
+  $(".copy").click(function () {
+    var texts = document.getElementById("result_title").innerText;
+    if (texts == '') {
+      Toast('温馨提示:结果为空,无法复制', 500, 'warn')
+      return
+    }
+    var inputs = document.getElementById("inputs");
+    inputs.value = name + '结果为:' + texts.substring(3); // 修改文本框的内容(赋值内容)
+    inputs.select(); // 选中文本
+    document.execCommand("copy"); // 执行浏览器复制命令
+    Toast('复制成功', 500, 'success')
+  })
+
+}
+function getchecks() {
+  $(".contentList").each(function (i) {
+    if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-title").addClass('chColor');
+    } else {
+      $(this).find(".item-title").removeClass('chColor');
+    }
+    if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-titles").addClass('chColor');
+    } else {
+      $(this).find(".item-titles").removeClass('chColor');
+    }
+  });
+}
+function getResult(pushInfo, textType, constant) {
+  $(".but").click(function () {
+    let arr = [];
+    let multarr = []
+    let multname
+    let num = 0
+    let result
+    let key = false
+    let proposal = ''
+    let proposals = []
+    let scrollTop = []
+    let v
+    let numType = false
+    isclick = true
+    for (var i = 0; i < textType.length; i++) {
+      if (textType[i] == 13) {
+        numType = true
+      }
+    }
+    $(".contentList").each(function (i) {
+      if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-title").addClass('chColor');
+      } else {
+        $(this).find(".item-title").removeClass('chColor');
+      }
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-titles").addClass('chColor');
+      } else {
+        $(this).find(".item-titles").removeClass('chColor');
+      }
+      scrollTop.push($(this).eq(0).find(".chColor").offset())
+    });
+    for (var i = 0; i < scrollTop.length; i++) {
+      if (scrollTop[i] != undefined) {
+        v = scrollTop[i]
+        break
+      }
+    }
+    if (v) {
+      $(`.scale .infos`).scrollTop(v.top + top-160)
+    }
+    if (!$(".contentList").find(".item-title").hasClass('chColor') && !$(".contentList").find(".item-titles").hasClass('chColor')) {
+      $('input[type="radio"]:checked').each(function () {
+        if ($(this).attr("resultType") == 1) {
+          num += parseFloat($(this).val())
+        } else {
+          arr.push($(this).attr("data_obj"))
+          proposals.push($(this).attr("proposal"))
+        }
+      });
+      $('input[type="checkbox"]:checkbox:checked').each(function () {
+        if ($(this).attr("resultType") == 1) {
+          num += parseFloat($(this).val())
+        } else {
+          arr.push($(this).attr("data_obj"))
+          proposals.push($(this).attr("proposal"))
+        }
+      });
+      num = num + constant
+      num = parseFloat(num).toFixed(2)
+      tmp = arr.join(";");
+      if (pushInfo.length > 0) {
+        for (var i = 0; i < pushInfo.length; i++) {
+          if (pushInfo[i].content.max >= num && num >= pushInfo[i].content.min && !tmp) {
+            result = pushInfo[i].result + '(' + num + '分' + ')'
+            if (proposals.join(";")) {
+              proposal = pushInfo[i].pushInfo + ';' + proposals.join(";");
+            } else {
+              proposal = pushInfo[i].pushInfo
+            }
+            break
+          } else if (pushInfo[i].content.max >= num && num >= pushInfo[i].content.min && tmp) {
+            result = pushInfo[i].result + '(' + num + '分' + ')' + ';' + tmp
+            if (proposals.join(";")) {
+              proposal = pushInfo[i].pushInfo + ';' + proposals.join(";");
+            } else {
+              proposal = pushInfo[i].pushInfo
+            }
+            break
+          } else {
+            result = tmp
+            proposal = proposals.join(";");
+          }
+        }
+      } else {
+        result = tmp
+        proposal = proposals.join(";");
+      }
+      if (result) {
+        $(".hel").attr({
+          "title": proposal
+        });
+        $(".result_title").html('结果:' + result);
+        if (num >= 0 && numType) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".result").css('display', 'block')
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'block')
+        $(".foot").css('display', 'block')
+      } else {
+        if (num >= 0 && numType) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'none')
+        $(".foot").css('display', 'block')
+      }
+    } else {
+      Toast('温馨提示:必填选项不能为空~', 500, 'warn')
+    }
+  })
+  $(".printing").hover(
+    function () {
+      $(".slideImg").attr("src", "./../images/printing2.png");
+    }, function () {
+      $(".slideImg").attr("src", "./../images/printing.png");
+
+    });
+}
+
+function addLinkClickEvent(contentWrapClassName) {
+  $(`.${contentWrapClassName} .anchors li:first`).addClass("active");
+  $(`.${contentWrapClassName}  .anchors li>a`).on("click", function () {
+    const that = this
+    setTimeout(function () {
+      $(`.${contentWrapClassName} .anchors .active`).removeClass('active');
+      $(that).parent().addClass("active");
+    }, 20)
+
+  });
+}
+
+function renderTab(detailList, scale) {
+  if (detailList['静态知识']) {
+    $(".tabList").append(`<span class="tab" data-module="staticKnowledge" data-title="` + showName + `">静态知识</span>`)
+  }
+  if (detailList['临床路径']) {
+    $(".tabList").append(`<span class="tab" data-module="clinicalPathway" data-title="` + clinicalPathwayName + `">临床路径</span>`)
+    //$(".tabBox .title").html(clinicalPathwayName);
+  }
+  if (detailList['注意事项']) {
+    $(".tabList").append(`<span class="tab" data-module="notice" data-title="` + noticeName + `">注意事项</span>`)
+    //$(".tabBox .title").html(noticeName);
+  }
+  if (!!scale && getUrlArgObject('type') == 8) {
+    $(".tabList").append(`<span class="tab" data-module="scale" data-title="` + showName + `">评估内容</span>`)
+    //$(".tabBox .title").html(noticeName);
+  }
+  let defaultModuleName
+  if (getUrlArgObject('page') && getUrlArgObject('page') == 1 && scale && detailList['静态知识']) {
+    $(".tabList .tab").eq(1).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(1).attr("data-module")
+  } else {
+    $(".tabList .tab").eq(0).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
+  }
+  $(`.${defaultModuleName}`).css("display", "block")
+  bindTabClick()
+}
+
+function bindTabClick() {
+  $(".tabList .tab").on("click", function () {
+    const moduleName = $(this).attr("data-module")
+    const display = $(`.${moduleName}`).css("display")
+    $(".tabBox .title").html($(this).attr('data-title'));
+    if (display == "none") {
+      $(".activeTab").removeClass("activeTab")
+      $(this).addClass("activeTab")
+      $(".container").css("display", "none")
+      $(`.${moduleName}`).css("display", "block")
+      $(`.${moduleName} .infos`).scrollTop(0)
+    }
+  })
+  $("#openWin").on("click", function () {
+    const type = getUrlArgObject('type');
+    const name = getUrlArgObject('name');
+    const position = getUrlArgObject('position');
+    openNewWin("staticInfo.html?name=" + encodeURIComponent(name) + "&position=" + encodeURIComponent(position) + "&type=" + encodeURIComponent(type));
+  })
+}
+function adjustHeight() {
+  var ht = window.innerHeight || document.documentElement.clientHeight;
+  $(".content").height(ht - 160 + "px");
+  $(".content .infos").height(ht - 170 + "px");
+  $(".content .anchors").height(ht - 217 + "px");
+}
+function adjustWidth() {
+  var wt = window.innerWidth || document.documentElement.clientWidth;
+  $(".titleH2").width(wt - 0.2 * wt - 33 - 200 - 17 - 40 - 15 + 'px')
+  $(".content .infos").width(wt - 210 - 33 - 17 - 40 - 15 + 'px');
+}
+$(window).on('resize', function () {
+  adjustHeight()
+  adjustWidth()
+})
+
+//如果是子窗口,隐藏网页查看按钮
+if (window.opener) {
+  $("#openWin").hide();
+}

+ 556 - 0
src/js/staticInfoOut.js

@@ -0,0 +1,556 @@
+if(!Promise){
+  var Promise = require("bluebird");
+// Configure
+  Promise.config({
+    longStackTraces: true,
+    warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
+  })
+}
+require('../css/staticInfoOut.less')
+const {
+  post,
+  throttle,
+  imageUrlPrefix,
+  config,
+  getUrlArgObject,
+  openNewWin
+} = require('./promise.js');
+const $ = require("jquery");
+let printing = require('./../images/printing.png');
+let printing2 = require('./../images/printing2.png');
+let showName,noticeName,clinicalPathwayName,showLis=[],selectedDrop=0,selectedTab=0
+
+//如果是子窗口,隐藏网页查看按钮
+if(window.opener){
+    selectedDrop=getUrlArgObject("d")||0;
+    selectedTab=getUrlArgObject("t")||0;
+    $("#openWin").hide();
+}
+let icond = require('./../images/d.png').replace(/^undefined/g, '')
+function getInfomation() {
+  // var param = {
+  //   "type": getUrlArgObject('type'),
+  //   "name": getUrlArgObject('name'),
+  //   "position": getUrlArgObject('position'),
+  //   "contentTypes":[1,2,3]
+  // };
+  var param = {
+    "type": getUrlArgObject('type'),
+    "hospitalId": getUrlArgObject('hospitalId'),
+    "hisName": getUrlArgObject('hisName'),
+    "hisDetailName": getUrlArgObject('hisDetailName'),
+    "contentTypes":[1,2,3]
+  };
+  //showName = param.hisName;
+  // if (param.type == 5 || param.type == 51) {
+  //   param.type = 12;
+  //   param.name = uname;
+  // }
+
+  post(config.getStaticKnowledgeForHIS, param).then((res) => {
+    if(res.data.code==='0'){
+      const data = res.data.data
+      var str = '';
+      var anchors = '';
+      let sName ='';
+      if (!data||data.length===0) {
+        showEmpty();
+        return;
+      }
+      showLis=data
+      for(let i = 0;i < showLis.length;i++){
+        let tmp = showLis[i]
+        str+=`<li data-idx="${i}" title="${tmp.name}(${tmp.hisName})">${tmp.name}(${tmp.hisName})</li>`
+      }
+      $(".showWhich ul").html(str);
+        sName=showLis[selectedDrop].name+"("+showLis[selectedDrop].hisName+")";
+      $(".showWhichSelect").html(sName).attr("title",sName)
+      showName = data[selectedDrop].name+"("+data[selectedDrop].hisName+")";
+      showInfoSelect()
+      showInfo(data[selectedDrop])
+        renderTitleShow();
+      $('.content img').bind('contextmenu', function(){
+        return false
+      })
+    }else{
+      showEmpty();
+    }
+  })
+}
+getInfomation();
+function showEmpty(){
+  const str=`<div class="empty"><img src="../images/empty3.png" alt=""><p>暂无静态知识</p></div>`;
+  $(".tabBox").html(str).css("border-bottom","none");
+  $("body").css('background','#fff');
+}
+function showInfo(data){
+  var detailList = data.details
+  var scale = data.scale
+  var staticKnowList = detailList['静态知识']
+  var noticeInfo = detailList['注意事项']
+  var clinicalPathwayInfo = detailList['临床路径']
+  var name = data.name
+  noticeName = data.noticeName || "注意事项"
+  clinicalPathwayName = data.clinicalPathwayName || "临床路径"
+  var scaleInfo = data.scale ? data.scale.scaleDetails : ''
+  // $("h1").css({
+  //   "color": "#267FD7",
+  //   "borderBottom": "4px solid  #E9E9E9",
+  //   "padding": "0px 60px 50px 0px"
+  // });
+  renderTab(detailList, scale)
+  staticKnowList&&renderContent(staticKnowList,'staticKnowledge')
+  noticeInfo&&renderContent(noticeInfo,'notice')
+  clinicalPathwayInfo&&renderContent(clinicalPathwayInfo,'clinicalPathway')
+  scaleInfo && renderContentscale(scaleInfo, 'scale', name)
+}
+function showInfoSelect(){
+  $('.showWhich li').click(function(){
+    let idx = $(this).attr('data-idx')
+    let name = $(this).html(),str=''
+    selectedDrop=idx;
+    selectedTab=0;
+    showName = showLis[idx].name+"("+showLis[idx].hisName+")";
+    showInfo(showLis[idx])
+    renderTitleShow();
+    $('.content .infos').scrollTop(0)
+    $(".showWhich ul").css("display","none")
+    $(".showWhichSelect").html(name).attr("title",name)
+  })
+  $(".showWhichSelect").click(function(e){
+    e.stopPropagation()
+    $(".showWhich ul").slideToggle()
+  })
+  $(document).click(function(){
+    $(".showWhich ul").css("display","none")
+  })
+}
+function renderTitleShow(){
+    document.title = showName;
+    $(".titleCont .title").html($(".tabList .tab:eq("+selectedTab+")").attr("data-title"));
+}
+function renderContent(list, contentWrapClassName){
+  $(`.${contentWrapClassName} .infos`).html('');
+  $(`.${contentWrapClassName} .anchors ul`).html('');
+    for (var i = 0; i < list.length; i++) {
+        var item = list[i];
+        item.content = item.content&&item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+        anchors = '<li><i></i><a href="#' + contentWrapClassName+i +
+          '">' + item.title + '</a></li><li class="anchor-line"></li>';
+        str = '<div class="infoBox"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName+i +
+          '">'
+        if (getUrlArgObject('type') == 8) {
+          str += '【' + item.title + '】'
+        } else {
+          str += item.title
+        }
+        str += '</h2></div>' +
+          '<div class="contentWrapper"><pre>' + item.content + '</pre><div></div>';
+          str = `<div class="infoWrapper">${str}</div>`
+        $(`.${contentWrapClassName} .infos`).append(str);
+        $(`.${contentWrapClassName} .anchors ul`).append(anchors);
+    }
+
+    function addScrollEvent() {
+      var scrollTop = $(`.${contentWrapClassName} .infos`).scrollTop()
+
+      var divHeight = 0;
+      for (var i = 0; i < list.length; i++) {
+        divHeight = divHeight + parseInt($('#'+contentWrapClassName+i).css('height')) + parseInt($('#'+contentWrapClassName+i).parent().next().css('height')) + 20
+        if (divHeight > scrollTop) {
+          var anchor = 2 * i;
+          $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+          return;
+        }
+      }
+    }
+    $(`.${contentWrapClassName} .infos`).scroll(throttle(addScrollEvent, 200));
+    addLinkClickEvent(contentWrapClassName);
+    adjustHeight();
+    adjustWidth()
+}
+
+function renderContentscale(list, contentWrapClassName, name) {
+  var pushInfo = []
+  var textType = []
+  for (var i = 0; i < list[0].detailList.length; i++) {
+    var item = list[0].detailList[i];
+    console.log(item.resultType)
+    textType.push(item.textType)
+    if (item.textType == 11) {
+      anchors = '<li><i></i><a href="#' + contentWrapClassName + i +
+        '">' + item.content + '</a></li><li class="anchor-line"></li>';
+
+      item.content = item.content && item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+      str = '<div class="infoBox scaleBox" data-id="' + item.id + '"><div class="title"> <h2 class="titleH2" id="' + contentWrapClassName + i +
+        '">'
+      str += item.content
+      str += '</h2></div>'
+      str = `<div class="infoWrapper">${str}</div>`
+      $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+      $(`.${contentWrapClassName} .anchors ul`).append(anchors);
+      for (var j = 0; j < item.subList.length; j++) {
+        var items = item.subList[j];
+        for (var k = 0; k < items.detailList.length; k++) {
+          var it = items.detailList[k];
+          it.content = it.content && it.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+          str = '<div class="contentList" data-id="' + it.parentId + '-' + it.groupNum + '"><div class="item-list">';
+          if (it.selectType == 21) {
+            str += '<p class="item-title">' + it.content + '</p>'
+          } else if (it.selectType == 22) {
+            str += '<p class="item-titles">' + it.content + '</p>'
+          }
+          str += '<div class="item-content" data-id="' + it.id + '">'
+          str += '</div></div></div>'
+          $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "]").append(str);
+          for (var l = 0; l < it.subList[0].detailList.length; l++) {
+            var its = it.subList[0].detailList[l];
+            its.content = its.content && its.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
+            str = '<div class="radio" name="scale' + its.parentId + '" value="' + its.score + '">';
+            if (it.selectType == 21 && item.resultType == 1) {
+              str += '<label><input class="radio_type" type="radio" name="scale' + its.parentId + '" value="' + its.score + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 1) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + its.score + '"/>'
+            } else if (it.selectType == 21 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="radio" value="' + its.result + '" data_obj="' + it.content + '问题' + its.result + '"/>'
+            } else if (it.selectType == 22 && item.resultType == 2) {
+              str += '<label><input class="radio_type" name="scale' + its.parentId + '" type="checkbox" value="' + its.result + '" data_obj="' + its.result + '"/>'
+            }
+            str += its.content
+            if (item.resultType == 1) {
+              str += '<span class="num">' + '(' + its.score + ')' + '</span>'
+            }
+            str += '</label>'
+            str += `${its.match == 1 ? `<img class="recommend" src=${recommend} />` : ``}</div>`
+            $(".scale .infos .infos-box .infoWrapper .infoBox[data-id=" + it.parentId + "] .contentList .item-content[data-id=" + its.parentId + "]").append(str);
+          }
+        }
+      }
+
+    }
+    if (item.textType == 13) {
+      for (var m = 0; m < item.subList[0].detailList[0].subList[0].detailList.length; m++) {
+        var itl = item.subList[0].detailList[0].subList[0].detailList[m]
+        let arr = {
+          content: JSON.parse(itl.content),
+          result: itl.result,
+          pushInfo: itl.pushInfo
+        }
+        pushInfo.push(arr)
+      }
+    }
+  }
+  str = '<div class="scalebot">'
+  str += '<p class="score"></p>'
+  str += '<button class="but">结果</button></div>'
+  str += `<div class="result"><div class="result_box"><img src=${hel} class="hel"/><span>结果:</span><p id="result_title" class="result_title"></p><textarea id="inputs"></textarea></div></div>`
+  str += `<div class="foot"><div class="foot_box"><div class="printing"><img src=${printing} class="slideImg"/>打印</div><div class="copy">确认并复制结果</div></div></div>`
+  $(`.${contentWrapClassName} .infos .infos-box`).append(str);
+  // str = `<div class="foot"><div class="foot_box"><div class="printing"><img src=${printing} class="slideImg"/>打印</div><div class="copy">确认并复制结果</div></div></div>`
+  // $(`.${contentWrapClassName} .infos`).after(str);
+  function addScrollEvent() {
+    var scrollTop = $(`.${contentWrapClassName} .infos .infos-box`).scrollTop()
+    var divHeight = 0;
+    for (var i = 0; i < list.length; i++) {
+      divHeight = divHeight + parseInt($('#' + contentWrapClassName + i).css('height')) + parseInt($('#' + contentWrapClassName + i).parent().next().css('height')) + 20
+      if (divHeight > scrollTop) {
+        var anchor = 2 * i;
+        $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
+        return;
+      }
+    }
+  }
+  $(`.${contentWrapClassName} .infos .infos-box`).scroll(throttle(addScrollEvent, 200));
+  addLinkClickEvent(contentWrapClassName);
+  adjustHeight();
+  adjustWidth()
+  getcheck()
+  getResult(pushInfo, textType)
+  copy(name)
+  getprinting()
+}
+
+function getprinting() {
+  $('.printing').click(function () {
+    $('.foot').hide()
+    // $('.hel').hide()
+    $('#Print').css({
+      'height': 'auto', //高度自动
+    }).jqprint();
+    $('.foot').show()
+    // $('.hel').show()
+  })
+}
+
+function getcheck() {
+  $('input:radio').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    if ($radio.data('waschecked') == true) {
+      $radio.prop('checked', false);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", false);
+      if (isclick) {
+        getchecks()
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    } else {
+      $radio.prop('checked', true);
+      $("input:radio[name='" + domName + "']").data('waschecked', false);
+      $radio.data('waschecked', true);
+      $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+      if (isclick) {
+        getchecks()
+        console.log(11)
+        $(".score").html('');
+        $(".result_title").html('');
+        $(".result").css('display', 'none')
+        $(".foot").css('display', 'none')
+      }
+    }
+  });
+  $('input:checkbox').click(function () {
+    const domName = $(this).attr('name');
+    const $radio = $(this);
+    const id = $(this).parents('.contentList').data("id");
+    $radio.parents('.contentList').each(function (i) {
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined) {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", false);
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      } else {
+        $radio.parents('.contentList').siblings(".contentList[data-id='" + id + "']").find('.radio_type').attr("disabled", true);
+        if (isclick) {
+          getchecks()
+          $(".score").html('');
+          $(".result_title").html('');
+          $(".result").css('display', 'none')
+          $(".foot").css('display', 'none')
+        }
+      }
+    })
+  });
+}
+
+function copy(name) {
+  $(".copy").click(function () {
+    var texts = document.getElementById("result_title").innerText;
+    if (texts == '') {
+      Toast('结果为空,无法复制', 500, 'warn')
+      return
+    }
+    var inputs = document.getElementById("inputs");
+    inputs.value = name + '结果为:' + texts; // 修改文本框的内容(赋值内容)
+    console.log(inputs.value)
+    inputs.select(); // 选中文本
+    document.execCommand("copy"); // 执行浏览器复制命令
+    Toast('复制成功', 500, 'success')
+    setTimeout(() => {
+      window.close()
+    }, 500)
+
+  })
+
+}
+function getchecks() {
+  $(".contentList").each(function (i) {
+    if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-title").addClass('chColor');
+    } else {
+      $(this).find(".item-title").removeClass('chColor');
+    }
+    if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+      $(this).find(".item-titles").addClass('chColor');
+    } else {
+      $(this).find(".item-titles").removeClass('chColor');
+    }
+  });
+}
+
+function getResult(pushInfo, textType) {
+  $(".but").click(function () {
+    let arr = [];
+    let multarr = []
+    let multname
+    let num = 0
+    let result
+    let key = false
+    let proposal = ''
+    $(".contentList").each(function (i) {
+      if ($(this).find('input[type="radio"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-title").addClass('chColor');
+      } else {
+        $(this).find(".item-title").removeClass('chColor');
+      }
+      if ($(this).find('input[type="checkbox"]:checked').val() == undefined && $(this).find('.radio_type').attr('disabled') == undefined) {
+        $(this).find(".item-titles").addClass('chColor');
+      } else {
+        $(this).find(".item-titles").removeClass('chColor');
+      }
+    });
+    if (!$(".contentList").find(".item-title").hasClass('chColor') && !$(".contentList").find(".item-titles").hasClass('chColor')) {
+      isclick = true
+      $('input[type="radio"]:checked').each(function () {
+        if (!isNaN($(this).val())) {
+          num += parseFloat($(this).val())
+        } else {
+          arr.push($(this).attr("data_obj"))
+        }
+      });
+      $('input[type="checkbox"]:checkbox:checked').each(function () {
+        if (!isNaN($(this).val())) {
+          num += parseFloat($(this).val())
+        } else {
+          multname = $(this).parents('.item-content').siblings('.item-titles').html()
+          multarr.push($(this).attr("data_obj"))
+        }
+      });
+
+      if (multarr.join("、")) {
+        console.log(1)
+        arr.push(multname + multarr.join("、"))
+      }
+      console.log(arr)
+      tmp = arr.join(";");
+      if (pushInfo.length > 0) {
+        for (var i = 0; i < pushInfo.length; i++) {
+          if (pushInfo[i].content.max >= num && num >= pushInfo[i].content.min) {
+            if (tmp) {
+              result = pushInfo[i].result + '(' + num + '分' + ')' + ';' + tmp
+              proposal = pushInfo[i].pushInfo
+
+            } else {
+              result = pushInfo[i].result + '(' + num + '分' + ')'
+              proposal = pushInfo[i].pushInfo
+            }
+          } else {
+            if (tmp) {
+              result = tmp
+            }
+          }
+        }
+      } else {
+        result = tmp
+      }
+
+      if (result == undefined) {
+        if ($.inArray(13, textType) > 0) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'none')
+        $(".foot").css('display', 'block')
+      } else {
+        $(".hel").attr({
+          "title": proposal
+        });
+        $(".result_title").html(result);
+        if ($.inArray(13, textType) > 0) {
+          $(".score").html('总分:' + num + '分');
+        }
+        $(".result").css('display', 'block')
+        $(".score").css('display', 'block')
+        $(".copy").css('display', 'block')
+        $(".foot").css('display', 'block')
+      }
+    } else {
+      Toasts('温馨提示:必填选项不能为空~', 500, 'warn')
+    }
+  })
+  $(".printing").hover(
+    function () {
+      $(".slideImg").attr("src", printing2);
+    }, function () {
+      $(".slideImg").attr("src", printing);
+
+    });
+
+}
+
+function addLinkClickEvent(contentWrapClassName) {
+  $(`.${contentWrapClassName} .anchors li:first`).addClass("active");
+  $(`.${contentWrapClassName}  .anchors li>a`).on("click", function () {
+
+    const that = this
+    setTimeout(function(){
+      $(`.${contentWrapClassName} .anchors .active`).removeClass('active');
+      $(that).parent().addClass("active");
+    },20)
+
+  });
+}
+
+function renderTab(detailList, scale){
+  $(".tabList").html('')
+  if(detailList['静态知识']){
+    $(".tabList").append(`<span class="tab" data-module="staticKnowledge" data-title="`+showName+`">静态知识</span>`)
+    //$(".titleCont .title").html(showName);
+  }
+  if(detailList['临床路径']){
+    $(".tabList").append(`<span class="tab" data-module="clinicalPathway" data-title="`+clinicalPathwayName+`">临床路径</span>`)
+    //$(".titleCont .title").html(clinicalPathwayName);
+  }
+  if(detailList['注意事项']){
+    $(".tabList").append(`<span class="tab" data-module="notice" data-title="`+noticeName+`">注意事项</span>`)
+    //$(".titleCont .title").html(noticeName);
+  }
+  if (scale) {
+    $(".tabList").append(`<span class="tab" data-module="scale" data-title="` + showName + `">评估内容</span>`)
+    //$(".tabBox .title").html(noticeName);
+  }
+  if ((getUrlArgObject('page') && getUrlArgObject('page') == 1 && scale) || !detailList['静态知识']) {
+    $(".tabList .tab").eq(1).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(1).attr("data-module")
+  } else {
+    $(".tabList .tab").eq(0).addClass("activeTab")
+    defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
+  }
+  $(`.${defaultModuleName}`).css("display","block")
+  bindTabClick()
+}
+function bindTabClick(){
+  $(".tabList .tab").on("click", function(){
+    const moduleName = $(this).attr("data-module")
+    //const display = $(`.${moduleName}`).css("display")
+      selectedTab=$('.tabList .tab').index(this);
+      $(".titleCont .title").html($(this).attr('data-title'));
+    //if(display == "none"){
+      $(".activeTab").removeClass("activeTab")
+      $(this).addClass("activeTab")
+      $(".container").css("display","none")
+      $(`.${moduleName}`).css("display","block")
+      $(`.${moduleName} .infos`).scrollTop(0)
+    //}
+  })
+  $("#openWin").on("click",function(){
+    const type= getUrlArgObject('type');
+    const hospitalId= getUrlArgObject('hospitalId');
+    const hisName= getUrlArgObject('hisName');
+    const hisDetailName= getUrlArgObject('hisDetailName');console.log(selectedDrop)
+    openNewWin("staticInfoOut.html?hospitalId="+encodeURIComponent(hospitalId)+"&hisName="+encodeURIComponent(hisName)+"&hisDetailName="+encodeURIComponent(hisDetailName||'')+"&type="+encodeURIComponent(type)+"&d="+selectedDrop+"&t="+selectedTab);
+  })
+}
+function adjustHeight() {
+  var ht = window.innerHeight || document.documentElement.clientHeight;
+    $(".content,.content .infos").height(ht - 198 + "px");
+  /*$(".anchors").height(ht - 258 + "px");*/
+}
+function adjustWidth() {
+  var wt = window.innerWidth || document.documentElement.clientWidth;
+  $(".titleH2").width(wt- 0.2*wt -33 - 200 - 17 - 40 -15 + 'px')
+    //$("pre").width(wt- 0.2*wt - 200 + 'px')
+}
+$(window).on('resize', function(){
+  adjustHeight()
+  adjustWidth()
+})
+

+ 2 - 2
src/js/staticSearch.js

@@ -124,7 +124,7 @@ function getKnowledgeData(value) {
                 for(var i = 0;i<knowledgeLis.length;i++){
                     var tmpPart = knowledgeLis[i]
                     var tmpLi = `<li data-name='${tmpPart.name}' data-uname='${tmpPart.uniqueName}' data-type='${tmpPart.libTypeId}' data-sign='${tmpPart.type}'>
-                        <p>${tmpPart.name}<i>${tmpPart.typeName?('( '+tmpPart.typeName+' )'):''}</i> <span>${tmpPart.code}</span></p>
+                        <p>${tmpPart.name}<i>${tmpPart.typeName?('( '+tmpPart.typeName+' )'):''}</i> <span>${tmpPart.code||''}</span></p>
                         ${tmpPart.retrievalName?('<span>• '+tmpPart.retrievalName+'</span>'):''}
                     </li>`
                     lisStr += tmpLi
@@ -159,7 +159,7 @@ $(".staticSearchB ul").on("click","li",function(){
     const type = $(this).attr('data-type')
     const sign = $(this).attr('data-sign')
     if(type != 48){
-        openNewWin(`information.html?type=${encodeURIComponent(sign)}&position=0&name=${encodeURIComponent(infoMsgName)}`)
+        openNewWin(`staticInfo.html?type=${encodeURIComponent(sign)}&position=0&name=${encodeURIComponent(infoMsgName)}`)
         // openNewWin(`information.html?type=${encodeURIComponent(sign)}&position=0&name=${encodeURIComponent(infoMsgName)}&uname=${encodeURIComponent(infoMsgUName)}`)
     }else{
         let msg = JSON.parse(getUrlArgObject("msg"));

+ 126 - 0
src/js/tcmiss.js

@@ -0,0 +1,126 @@
+const $ = require("jquery");
+const {get, post, config, getUrlArgObject, openNewWin, titleConfig} = require('./promise.js');
+const targetUrl = '/lantone/index';
+let treatUrl = targetUrl;
+$(function () {
+    let mrId = getUrlArgObject('mrId')
+    $(".knowledge .a-link").click(function () {
+        const code = $(this).attr("code");
+        openNewWin(window.encodeURI(targetUrl + '?page=' + code), true);
+    })
+});
+
+function renderConfig(config) {
+    const classMap = {
+        'conditionder': 'go-push',
+        'treatment': 'recipe',
+        'tcmknowledge': 'knowledge',
+    };
+    config.map((it) => {
+        if (+it.status === 1) {
+            $(".tcmWarp ." + classMap[it.code]).show();
+        }
+    })
+}
+
+function getTcmMr(mrId, config) {
+    renderConfig(config.planDetails || []);
+    if (!mrId) {    //没有mrId时不显示推送模块
+        $(".recipe").hide();
+        $("#goPush").on("click", function () {
+            openNewWin(window.encodeURI(targetUrl + '?page=bztd&jibing='), true);
+        });
+    }else{
+        post('/sys/mr/getTcmMr', { mrId: mrId }).then((res) => {
+            //console.log(res)
+            let data = res.data.data || {}
+            const { tcmdisease, tcmsyndrome } = data;
+            if (res.data.code === '0') {
+                const diag = (tcmdisease || {}).uniqueName;
+                $("#goPush").on("click", function () {
+                    openNewWin(window.encodeURI(targetUrl + '?page=bztd&jibing=' + diag), true);
+                });
+                getTcmData({ tcmDiag: diag, tcmSyndrome: (tcmsyndrome || {}).uniqueName }, config)
+            } else {
+
+            }
+        })
+    }
+    
+}
+
+//获取处方推荐
+function getTcmData(param, config) {
+    const item = config.planDetails.filter((it) => it.code === "treatment");
+    const isHor = window.location.pathname.indexOf("cdssHorizontal") > -1;
+    const num = isHor ? 3 : ((item[0] || {}).number || 3);
+    const {tcmDiag, tcmSyndrome} = param;
+    if (!tcmDiag) {     //没有推送入参时不显示推送模块
+        $(".recipe").hide();
+        return;
+    }
+    $("#jibing").text(tcmDiag + "-" + tcmSyndrome);
+    $('#bingming').text(tcmDiag);
+    $('#zhenghou').text(tcmSyndrome);
+    treatUrl = targetUrl + '?jibing=' + tcmDiag + "&zhengxing=" + tcmSyndrome;
+    //处方推荐
+    get(window.encodeURI('/lantone/private/zycftj?jibing=' + tcmDiag + "&zhengxing=" + tcmSyndrome)).then((res) => {
+        console.log("窗口地址:", treatUrl)
+        let data = res.data.data || []
+        if (!data.length) {   //没有处方时不显示推送模块
+            $(".recipe").hide();
+            return;
+        }
+        if (res.data.status) {
+            renderTcm(data, num)
+        } else {
+
+        }
+    })
+    //治法推荐-暂时不用
+    /*get('/lantone/private/zhongyizx?type=1&code=' + tcmDiag + '&value=' + tcmSyndrome).then((res) => {
+        console.log(res)
+        let data = res.data.data || {}
+        if (res.data.status) {
+            //renderTcm(data)
+        } else {
+
+        }
+    })*/
+}
+
+function renderTcm(data, num = 3) {
+    let str = ``, it;
+    $("#goTreat").hide();
+    const n = num < data.length ? num : data.length;
+    for (let i = 0; i < n; i++) {
+        it = data[i];
+        str += `<li class="clearfix"><div class="label">处方${i + 1}:</div>
+                    <div class="val">
+                    <p class="name">${it.name}</p>
+                    <p class="desc" title="${it.effect}">${it.effect}</p>
+                </div></li>`;
+    }
+
+    if (data.length > num) {
+        if ($("#goTreat").length) {       //竖版不增加更多按钮,显示即可
+            str += ``;
+            $("#goTreat").show();
+        } else {
+            str += `<a class="go go-push" id="goTreat">更多 <img class="icon" src="./images/go.png" alt=""></a>`;
+            $("#goTreat").show();
+        }
+    }
+    $('.detail ul').html(str);
+    if(data.length > num){
+        $(".horizontal-detail .val:nth-child(2) .desc").css("width",'420px')
+    }
+    //更多治法
+    $("#goTreat").on('click', function () {
+        openNewWin(window.encodeURI(treatUrl), true);
+    });
+}
+
+module.exports = {
+    getTcmMr
+}

+ 11 - 1
src/js/util.js

@@ -47,8 +47,18 @@ const transConf = function(arr) {
         labsAndPacMode
     }
 }
+const $ = require("jquery");
 
+function toggleWarnBox(text) {
+    if (text) {
+        $(".warning-box .content span").text(text);
+        $(".warning-box").show();
+    } else {
+        $(".warning-box").hide();
+    }
+}
 
 module.exports = {
-    transConf
+    transConf,
+    toggleWarnBox
 }

+ 61 - 2
webpack.config.js

@@ -28,6 +28,10 @@ module.exports = {
     generalTreat:path.resolve(__dirname, 'src/js', 'generalTreat.js'),
     cdssPlan:path.resolve(__dirname, 'src/js', 'cdssPlan.js'),
     check:path.resolve(__dirname, 'src/js', 'check.js'),
+    homeStatic:path.resolve(__dirname, 'src/js', 'homeStatic.js'),
+    searchStaticList:path.resolve(__dirname, 'src/js', 'searchStaticList.js'),
+    staticInfo:path.resolve(__dirname, 'src/js', 'staticInfo.js'),
+    staticInfoOut:path.resolve(__dirname, 'src/js', 'staticInfoOut.js'),
     vendor: 'lodash'// 多个页面所需的公共库文件,防止重复打包带入
   },
   output: {
@@ -53,6 +57,58 @@ module.exports = {
         collapseWhitespace: true //删除空白符与换行符
       }
     }),
+    new HtmlWebpackPlugin({
+      title: 'homeStatic',
+      template: path.resolve(__dirname, 'src/html', 'homeStatic.html'),
+      filename: 'homeStatic.html',
+      chunks: ['homeStatic', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
+    new HtmlWebpackPlugin({
+      title: 'staticInfoOut',
+      template: path.resolve(__dirname, 'src/html', 'staticInfoOut.html'),
+      filename: 'staticInfoOut.html',
+      chunks: ['staticInfoOut', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
+    new HtmlWebpackPlugin({
+      title: 'staticInfo',
+      template: path.resolve(__dirname, 'src/html', 'staticInfo.html'),
+      filename: 'staticInfo.html',
+      chunks: ['staticInfo', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
+    new HtmlWebpackPlugin({
+      title: 'searchStaticList',
+      template: path.resolve(__dirname, 'src/html', 'searchStaticList.html'),
+      filename: 'searchStaticList.html',
+      chunks: ['searchStaticList', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
     new HtmlWebpackPlugin({
       title: 'index',
       template: path.resolve(__dirname, 'src/html', 'check.html'),
@@ -422,7 +478,10 @@ module.exports = {
     },
     hot: true,
     // openPage:'index.html?age=28&tipsName=血常规&tipsType=12&diseaseId=280&lisJson=&diagJson=急性胰腺炎&diseaseName=糖尿病&pastJson=无心脏病&otherJson=无高血压&pacsJson=腹部B超:无异常,%20报告日期:2019-05-07&sex=男&symptomJson=恶心呕吐腰痛&vitalJson=血压左上肢13/12mmHg&hospitalCode=A001',
-    openPage:'cdss.html?mrId=200821362618001909&hospitalId=1&planCode=plan_default'
+    openPage:'homeStatic.html?mrId=200821362618001909&hospitalId=1&planCode=plan_default',
+    disableHostCheck: true
   },
-  stats: { children: false }
+  stats: { children: false },
+
+ 
 }