ソースを参照

Merge remote-tracking branch 'origin/master' into his/wenzhouweijiju

# Conflicts:
#	src/html/index.html
#	webpack.config.js
lipc 6 年 前
コミット
36bcc60e25

+ 3 - 1
package.json

@@ -17,6 +17,8 @@
     "express": "^4.16.4",
     "file-loader": "^3.0.1",
     "html-webpack-plugin": "^3.2.0",
+    "less": "^3.9.0",
+    "less-loader": "^5.0.0",
     "mini-css-extract-plugin": "^0.6.0",
     "style-loader": "^0.23.1",
     "uglifyjs-webpack-plugin": "^2.1.2",
@@ -28,7 +30,7 @@
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "webpack",
     "watch": "webpack --watch",
-    "dev": "webpack-dev-server --open",
+    "dev": "webpack-dev-server --open http://localhost:8081/illness.html",
     "server": "node server.js"
   },
   "repository": {

+ 2 - 1
src/css/index.css

@@ -10,7 +10,7 @@
 .iframeWrap .conditionHintPub li {
   padding-right: 18px;
   float: left;
-  line-height: 24px;
+  line-height: 25px;
 }
 .iframeWrap .conditionHintPub .conditionMain {
   /*padding: 17px;*/
@@ -293,6 +293,7 @@
   top: 2px;
   right: 0px;
   display: none;
+  cursor: pointer;
   background: url('../images/msg1.png') center center no-repeat;
 }
 .infoMsg:hover {

+ 146 - 1
src/css/index.less

@@ -57,7 +57,7 @@
       }
       .medicine:hover {
         color: @colorBlue;
-        a {
+        .infoMsg {
           display: inline-block;
           right: -20px;
           background-color: #fff;
@@ -289,6 +289,7 @@
   }
 }
 .disclaimer {
+  cursor: pointer;
   height: 40px;
   width: 100%;
   line-height: 40px;
@@ -308,6 +309,7 @@
   position: absolute;
   top: 2px;
   right: 0px;
+  cursor: pointer;
   display: none;
   background: url('../images/msg1.png') center center no-repeat;
 }
@@ -327,4 +329,147 @@
   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{
+    margin: 20px 0 0 0;
+    border-top:1px #E8EAEC solid;
+    span,a,.modalMainOne,.modalMainTwo{
+      border-bottom:none;
+    }
+    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;
+  }
+  
+}
+
+/************治疗方案****************/
+.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;
+        }
+        
+        .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;
 }

+ 494 - 0
src/css/landscape.css

@@ -0,0 +1,494 @@
+.bodyWrap {
+  /* width: 1000px; */
+  height: 128px;
+  overflow: hidden;
+  font-size: 13px;
+  /* padding: 13px 0 */
+}
+.iframeWrap {
+    /* margin: 10px auto 50px;
+    padding: 20px; */
+    min-width: 340px;
+    height: 100%;
+  }
+  .push {
+    width: 55%;
+    float: left;
+    padding: 13px 5px 13px 0;
+    border-right: 1px solid  #EFEEEE;
+  }
+  .treat {
+    width: 35%;
+    float: left;
+    padding: 13px 0
+  }
+  .iframeWrap .conditionHintPub {
+    /* border: 1px solid #F2F2F2; */
+    margin-bottom: 8px;
+    height: 20px;
+    line-height: 20px;
+    position: relative;
+    background: #fff;
+ 
+  }
+  .iframeWrap .conditionHintPub li {
+    padding-right: 22px;
+    float: left;
+    line-height: 20px;
+    position: relative;
+    margin-bottom: 8px;
+  }
+  .iframeWrap .conditionHintPub .conditionMain {
+    margin: 0 0px 0 85px;
+    height: 20px;
+    overflow: hidden;
+    white-space: nowrap;
+    text-overflow: ellipsis;
+  }
+  .iframeWrap .conditionHintPub .alertModal {
+    position: relative;
+    float: left;
+  }
+  .iframeWrap .conditionHintPub .alertModal .mayResult {
+    color: #838383;
+    position: relative;
+  }
+  .iframeWrap .conditionHintPub .alertModal .mayResultSelect {
+    line-height: 20px;
+  }
+  .iframeWrap .conditionHintPub .alertModal .mayResultSelect .makesureResult {
+    cursor: pointer;
+    color: #267FD7;
+  }
+  .iframeWrap .conditionHintPub .alertModal .mayResultSelect .sanjiao {
+    width: 18px;
+    height: 18px;
+    display: inline-block;
+    position: relative;
+    top: 3px;
+    background: url('../images/select.png') center center no-repeat;
+  }
+  .iframeWrap .conditionHintPub .treatPlan {
+    font-weight: bold;
+    font-size: 13px;
+    color: #7C828E;
+    float: left;
+    width: 85px;
+    text-align: right;
+    margin-right: 10px;
+  }
+  .iframeWrap .conditionHintPub .treatPlanWrap {
+    height: 20px;
+    overflow: hidden;
+    position: relative;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine {
+    margin-top: 10px;
+    height: 52px;
+    overflow: hidden;
+    position: relative;
+  }
+  .iframeWrap .conditionHintPub .treatMedicineNull {
+    margin-top: 10px;
+    height: 28px;
+    overflow: hidden;
+    position: relative;
+  }
+  .treatMedicineNull .medicinePart {
+    color: #ADADAD;
+  }
+  .treatPlanNull .commonTreat {
+    color: #ADADAD;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicinePart {
+    /* margin: 8px 0; */
+    position: relative;
+    height: 20px;
+    overflow: hidden;
+    line-height: 20px;
+    margin: 0 0 8px 95px;
+    white-space: nowrap;
+    text-overflow: ellipsis;
+
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicine {
+    border-bottom: 1px solid #D1D1D1;
+    position: relative;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicine:hover {
+    color: #267FD7;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicine span {
+    display: none;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicine:hover span {
+    display: inline-block;
+    right: -20px;
+    background-color: #fff;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicineDis {
+    color: #D1D1D1;
+    border-bottom: 1px solid #D1D1D1;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicineWaring {
+    background-color: #f4c051;
+    color: #000;
+    font-size: 12px;
+    border-radius: 4px;
+    border: 1px solid #fff;
+    line-height: 18px;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicineWaringDis {
+    background-color: #fff;
+    color: #D1D1D1;
+    font-size: 12px;
+    border-radius: 4px;
+    line-height: 18px;
+    border: 1px solid #D1D1D1;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .medicineWaringDisMsg {
+    color: #D1D1D1;
+  }
+  .iframeWrap .conditionHintPub p {
+    line-height: 20px;
+  }
+  .iframeWrap .conditionHintPub p span {
+    display: inline-block;
+  }
+  .iframeWrap .conditionHintRecomDiag h4 {
+    color: #FF545B;
+  }
+  .iframeWrap .conditionHintRecomDiag h4 i {
+    background: url("../images/yszd.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintWz h4 {
+    color: #157FD5;
+  }
+  .iframeWrap .conditionHintWz h4 i {
+    background: url("../images/inquire.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintTg h4 {
+    color: #157FD5;
+  }
+  .iframeWrap .conditionHintTg h4 i {
+    background: url("../images/tgjc.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintInspect h4 {
+    background-color: #ECF4FC;
+  }
+  .iframeWrap .conditionHintInspect h4 i {
+    background: url("../images/inspect.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintMay h4 {
+    background-color: #FAEBEC;
+  }
+  .iframeWrap .conditionHintMay h4 i {
+    background: url("../images/yszd.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintWarings {
+    display: none;
+  }
+  .iframeWrap .conditionHintWarings h4 {
+    color: #FF545B;
+  }
+  .iframeWrap .conditionHintWarings h4 i {
+    background: url("../images/warings.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintWarings li {
+    float: left;
+    line-height: 20px;
+  }
+  .iframeWrap .conditionHintWarings li:hover {
+    color: #267FD7;
+  }
+  .iframeWrap .conditionHintKnzd {
+    display: none;
+  }
+  .iframeWrap .conditionHintKnzd h4 i {
+    background: url("../images/knzd.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintKnzd ul li {
+    float: left;
+    line-height: 20px;
+  }
+  .iframeWrap .conditionHintKnzd ul li:hover {
+    color: #267FD7;
+  }
+  .iframeWrap .conditionHintZhiliao h4 {
+    color: #1AB3A9;
+    margin-bottom: 8px;
+  }
+  .iframeWrap .conditionHintZhiliao h4 .treatPlan {
+    color: #1AB3A9;
+  }
+  .iframeWrap .conditionHintZhiliao h4 i {
+    background: url("../images/zhiliao.png") center center no-repeat;
+  }
+  .iframeWrap .conditionHintTips .mayIllness {
+    padding-bottom: 5px;
+    float: left;
+  }
+  .iframeWrap .conditionHintTips .mayIllness:hover  span{
+    color: #267FD7;
+  } 
+  .iframeWrap .conditionHintTips .mayIllness span {
+    position: relative;
+    border-bottom: 1px solid #D1D1D1;
+  }
+  .iframeWrap .conditionHintTips .mayIllness span .infoMsg {
+    position: relative;
+    border-bottom: 0;
+    float: right;
+    cursor: pointer;
+    display: none;
+  }
+  .iframeWrap .conditionHintTips .mayIllness span:hover .infoMsg {
+    display: inline-block;
+  }
+  .iframeWrap .conditionHintTips .mayIllness a {
+    border-bottom: 1px solid #D1D1D1;
+  }
+  .iframeWrap .conditionHintTips h4 {
+    color: #E66225;
+  }
+  .iframeWrap .conditionHintTips h4 i {
+    background: url("../images/tips.png") center center no-repeat;
+  }
+  .iframeWrap .illnessTable {
+    color: #040428;
+    line-height: 20px;
+    cursor: pointer;
+  }
+  .iframeWrap h4 {
+    color: #000;
+    height: 20px;
+    line-height: 20px;
+    /* background-color: #FAEBEC; */
+    font-size: 13px;
+    font-weight: bold;
+    display: inline-block;
+    position: absolute;
+    left: 0;
+  }
+  .iframeWrap h4 i {
+    content: '';
+    width: 16px;
+    height: 16px;
+    float: left;
+    margin: 2px 8px 0 0;
+  }
+  .commonTreat,
+  .conditionHintKnzdLis,
+  .conditionHintWaringsLis,
+  .conditionHintWzLis,
+  .conditionHintTgLis,
+  .conditionHintInspectLis,
+  .conditionHintRecomDiagLis,
+  .conditionHintAssistLis {
+    /* position: relative; */
+    background: #fff;
+  }
+  .conditionHintInspectNull {
+    border-bottom: 1px solid #D1D1D1;
+    padding-bottom: 5px;
+    margin-bottom: 5px;
+  }
+  .conditionHintZhiliaoNull {
+    padding-left: 20px;
+    display: none;
+  }
+  .conditionHintAssistLis,
+  .conditionHintInspectLis {
+    /* padding: 5px 0; */
+  }
+  .conditionHintAssistLis .slideDown,
+  .conditionHintInspectLis .slideDown {
+    /* padding: 5px 0 5px 0px; */
+  }
+  .conditionHintAssistLis li:first-child,
+  .conditionHintInspectLis li:first-child {
+    padding-right: 5px;
+  }
+  .pushEmpty {
+    color: #ADADAD;
+  }
+  .medicinePartLimitHeight {
+    height:20px;
+    overflow: hidden;
+    position: relative;
+    margin-bottom: 8px;
+  }
+  .medicinePartLimitHeightSpec {
+    height: 75px;
+    overflow: hidden;
+    position: relative;
+  }
+  .slideDown {
+    background-color: #fff;
+    position: absolute;
+    top: 0px;
+    right: 4px;
+    color: #267FD7;
+    height: 20px;
+    line-height: 20px;
+    box-shadow: -2px 0px 15px 0px #fff;
+    cursor: pointer;
+  }
+  .slideDown i {
+    width: 16px;
+    height: 16px;
+    display: inline-block;
+    position: relative;
+    top: 2px;
+    background: url('../images/show.png') center center no-repeat;
+  }
+  .slideUp {
+    background-color: #fff;
+    position: absolute;
+    top: 0x;
+    right: 4px;
+    color: #267FD7;
+    height: 20px;
+    line-height: 20px;
+    box-shadow: -2px 0px 15px 0px #fff;
+    cursor: pointer;
+  }
+  .slideUp i {
+    width: 16px;
+    height: 16px;
+    display: inline-block;
+    position: relative;
+    top: 2px;
+    background: url('../images/collapse.png') center center no-repeat;
+  }
+  .disclaimer {
+    height: 100%;
+    width: 5%;
+    line-height: 20px;
+    text-align: center;
+    bottom: 0;
+    background-color: #efefef;
+    z-index: 98;
+    float: left;
+    cursor: pointer;
+  }
+  .disclaimer a {
+    display: block;
+  }
+  .infoMsg {
+    width: 20px;
+    height: 20px;
+    position: absolute;
+    top: 0;
+    right: 2px;
+    display: none;
+    background: url('../images/msg1.png') center center no-repeat;
+    cursor: pointer;
+  }
+  .infoMsg:hover {
+    background: url('../images/msg2.png') center center no-repeat;
+  }
+  .infoMsgParent {
+    position: relative;
+  }
+  .warning {
+    background: #FFEDEE;
+    color: #FF545B;
+    border-radius: 10px;
+    height: 20px;
+  }
+  .warningImg {
+    position: relative;
+    top: 2px;
+  }
+  .infoMsgParent:hover {
+    color: #267FD7;
+  }
+  .infoMsgParent:hover .infoMsg {
+    display: block;
+  }
+  .responsibility {
+    text-align: center;
+    font-size: 12px;
+    color: #979797;
+    padding-top: 15px;
+  }
+  .treat .conditionMain {
+    /* overflow: auto; */
+  }
+  .diseaseName {
+    color: #040428;
+  }
+  .treat h4 {
+    display: block;
+    position: relative;
+  }
+  .treat .conditionHintPub .conditionMain {
+    margin: 0;
+    height: 80px;
+  }
+  .treat .slideDown {
+    right: 0;
+  }
+  .iframeWrap .conditionHintPub .treatMedicine .slideDown {
+    top: 28px;
+  }
+  .disclaimerName {
+    float: left;
+    height: 72px;
+    position: relative;
+    top: 50%;
+    left: 50%;
+    margin: -36px 0 0 -14px;
+    line-height: 18px;
+    color: #9C9C9C;
+  }
+  .disclaimerTip {
+    margin-left: 0;
+    line-height: 14px;
+    height: 56px;
+    margin: -28px 0 0 0;
+  }
+  .titleIcon {
+    position: relative;
+    width: 18px;
+    top: 1px;
+    display: block;
+    float: left;
+    margin-right: 8px;
+  }
+  .treatPlan .titleIcon{
+    right: -11px;
+  }
+  .pushBox {
+    padding-right: 40px;
+    background: #fff
+  }
+  .pushBoxBorder {
+    border: 1px solid #3A73E1;
+    border-radius: 4px;
+  }
+  .warning i {
+    display: inline-block;
+    float: left;
+    width: 20px;
+    height: 20px;
+    background: url('../images/warning.png') center center no-repeat;
+  }
+/* 滚动条宽度 */
+::-webkit-scrollbar{
+  /* 垂直滚动条宽度 */
+  width: 8px;
+  /* 水平滚动条高度 */
+  height: 8px;
+}
+/* 滑动滑块 */
+::-webkit-scrollbar-thumb{
+  background-color:rgba(0,0,0,.3);
+  height: 2px;
+  /* border-radius: 6px; */
+}
+/* 滚动条轨道 */
+::-webkit-scrollbar-track{
+  background-color:#ddd;
+}

+ 507 - 0
src/css/landscapeMedical.css

@@ -0,0 +1,507 @@
+.bodyWrap {
+    /* width: 1000px; */
+    height: 116px;
+    overflow: hidden;
+    font-size: 13px;
+    /* padding: 13px 0 */
+  }
+  .iframeWrap {
+      /* margin: 10px auto 50px;
+      padding: 20px; */
+      min-width: 340px;
+      height: 100%;
+    }
+    .push {
+      width: 55%;
+      float: left;
+      padding: 18px 5px 8px 20px;
+      border-right: 1px solid  #EFEEEE;
+    }
+    .treat {
+      width: 35%;
+      float: left;
+      padding: 18px 0
+    }
+    .iframeWrap .conditionHintPub {
+      /* border: 1px solid #F2F2F2; */
+      margin-bottom: 8px;
+      height: 20px;
+      line-height: 20px;
+      position: relative;
+      background: #fff;
+   
+    }
+    .iframeWrap .conditionHintPub li {
+      padding-right: 22px;
+      float: left;
+      line-height: 20px;
+      position: relative;
+      margin-bottom: 8px;
+    }
+    .iframeWrap .conditionHintPub .conditionMain {
+      margin: 0 0px 0 62px;
+      height: 20px;
+      overflow: hidden;
+      white-space: nowrap;
+      text-overflow: ellipsis;
+    }
+    .iframeWrap .conditionHintPub .alertModal {
+      position: relative;
+      float: left;
+    }
+    .iframeWrap .conditionHintPub .alertModal .mayResult {
+      color: #838383;
+      position: relative;
+    }
+    .iframeWrap .conditionHintPub .alertModal .mayResultSelect {
+      line-height: 20px;
+    }
+    .iframeWrap .conditionHintPub .alertModal .mayResultSelect .makesureResult {
+      cursor: pointer;
+      color: #267FD7;
+    }
+    .iframeWrap .conditionHintPub .alertModal .mayResultSelect .sanjiao {
+      width: 18px;
+      height: 18px;
+      display: inline-block;
+      position: relative;
+      top: 3px;
+      background: url('../images/select.png') center center no-repeat;
+    }
+    .iframeWrap .conditionHintPub .treatPlan {
+      font-weight: bold;
+      font-size: 13px;
+      color: #000000;
+      float: left;
+      width: 85px;
+      text-align: right;
+      margin-right: 10px;
+    }
+    .iframeWrap .conditionHintPub .treatPlanWrap {
+      height: 20px;
+      overflow: hidden;
+      position: relative;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine {
+      margin-top: 10px;
+      height: 28px;
+      overflow: hidden;
+      position: relative;
+    }
+    .iframeWrap .conditionHintPub .treatMedicineNull {
+      margin-top: 10px;
+      height: 28px;
+      overflow: hidden;
+      position: relative;
+    }
+    .treatMedicineNull .medicinePart {
+      color: #ADADAD;
+    }
+    .treatPlanNull .commonTreat {
+      color: #ADADAD;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicinePart {
+      /* margin: 8px 0; */
+      position: relative;
+      height: 20px;
+      overflow: hidden;
+      line-height: 20px;
+      margin: 0 0 8px 95px;
+      white-space: nowrap;
+      text-overflow: ellipsis;
+  
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicine {
+      border-bottom: 1px solid #D1D1D1;
+      position: relative;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicine:hover {
+      color: #267FD7;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicine span {
+      display: none;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicine:hover span {
+      display: inline-block;
+      right: -20px;
+      background-color: #fff;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicineDis {
+      color: #D1D1D1;
+      border-bottom: 1px solid #D1D1D1;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicineWaring {
+      background-color: #f4c051;
+      color: #000;
+      font-size: 12px;
+      border-radius: 4px;
+      border: 1px solid #fff;
+      line-height: 18px;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicineWaringDis {
+      background-color: #fff;
+      color: #D1D1D1;
+      font-size: 12px;
+      border-radius: 4px;
+      line-height: 18px;
+      border: 1px solid #D1D1D1;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .medicineWaringDisMsg {
+      color: #D1D1D1;
+    }
+    .iframeWrap .conditionHintPub p {
+      line-height: 20px;
+    }
+    .iframeWrap .conditionHintPub p span {
+      display: inline-block;
+    }
+    .iframeWrap .conditionHintRecomDiag h4 {
+      color: #FF545B;
+    }
+    .iframeWrap .conditionHintRecomDiag h4 i {
+      background: url("../images/yszd.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintWz h4 {
+      color: #157FD5;
+    }
+    .iframeWrap .conditionHintWz h4 i {
+      background: url("../images/inquire.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintTg h4 {
+        color: #157FD5;
+    }
+    .iframeWrap .conditionHintTg h4 i {
+      background: url("../images/tgjc.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintInspect h4 {
+        color: #157FD5;
+    }
+    .iframeWrap .conditionHintInspect h4 i {
+      background: url("../images/inspect.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintMay h4 {
+      background-color: #FAEBEC;
+    }
+    .iframeWrap .conditionHintMay h4 i {
+      background: url("../images/yszd.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintWarings {
+      display: none;
+    }
+    .iframeWrap .conditionHintWarings h4 {
+      color: #FF545B;
+    }
+    .iframeWrap .conditionHintWarings h4 i {
+      background: url("../images/warings.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintWarings li {
+      float: left;
+      line-height: 20px;
+    }
+    .iframeWrap .conditionHintWarings li:hover {
+      color: #267FD7;
+    }
+    .iframeWrap .conditionHintKnzd {
+      display: none;
+    }
+    .iframeWrap .conditionHintKnzd h4 i {
+      background: url("../images/knzd.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintKnzd ul li {
+      float: left;
+      line-height: 20px;
+    }
+    .iframeWrap .conditionHintKnzd ul li:hover {
+      color: #267FD7;
+    }
+    .iframeWrap .conditionHintZhiliao h4 {
+      position: relative;
+      color: #1AB3A9;
+      margin-bottom: 8px;
+    }
+    .iframeWrap .conditionHintZhiliao h4 .treatPlan {
+      color: #1AB3A9;
+    }
+    .treatPlanBg {
+        position: absolute;
+        width: 95%;
+        height: 100%;
+        left: 18px;
+        top: 0;
+        background: #1AB3A9;
+        border-radius: 13px;
+        opacity: 0.1;
+        filter:alpha(opacity=10);
+        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=10);";
+    }
+    .iframeWrap .conditionHintZhiliao h4 i {
+      background: url("../images/zhiliao.png") center center no-repeat;
+    }
+    .iframeWrap .conditionHintTips .mayIllness {
+      padding-bottom: 5px;
+      float: left;
+    }
+    .iframeWrap .conditionHintTips .mayIllness:hover  span{
+      color: #267FD7;
+    } 
+    .iframeWrap .conditionHintTips .mayIllness span {
+      position: relative;
+      border-bottom: 1px solid #D1D1D1;
+    }
+    .iframeWrap .conditionHintTips .mayIllness span .infoMsg {
+      position: relative;
+      border-bottom: 0;
+      float: right;
+      cursor: pointer;
+      display: none;
+    }
+    .iframeWrap .conditionHintTips .mayIllness span:hover .infoMsg {
+      display: inline-block;
+    }
+    .iframeWrap .conditionHintTips .mayIllness a {
+      border-bottom: 1px solid #D1D1D1;
+    }
+    .iframeWrap .conditionHintTips h4 {
+      color: #E66225;
+    }
+    .iframeWrap .conditionHintTips h4 i {
+      background: url("../images/tips.png") center center no-repeat;
+    }
+    .iframeWrap .illnessTable {
+      color: #040428;
+      line-height: 20px;
+      cursor: pointer;
+    }
+    .iframeWrap h4 {
+      color: #000;
+      height: 20px;
+      line-height: 20px;
+      /* background-color: #FAEBEC; */
+      font-size: 13px;
+      font-weight: bold;
+      display: inline-block;
+      position: absolute;
+      left: 0;
+    }
+    .iframeWrap h4 i {
+      content: '';
+      width: 16px;
+      height: 16px;
+      float: left;
+      margin: 2px 8px 0 0;
+    }
+    .commonTreat,
+    .conditionHintKnzdLis,
+    .conditionHintWaringsLis,
+    .conditionHintWzLis,
+    .conditionHintTgLis,
+    .conditionHintInspectLis,
+    .conditionHintRecomDiagLis,
+    .conditionHintAssistLis {
+      /* position: relative; */
+      background: #fff;
+    }
+    .conditionHintInspectNull {
+      border-bottom: 1px solid #D1D1D1;
+      padding-bottom: 5px;
+      margin-bottom: 5px;
+    }
+    .conditionHintZhiliaoNull {
+      padding-left: 20px;
+      display: none;
+    }
+    .conditionHintAssistLis,
+    .conditionHintInspectLis {
+      /* padding: 5px 0; */
+    }
+    .conditionHintAssistLis .slideDown,
+    .conditionHintInspectLis .slideDown {
+      /* padding: 5px 0 5px 0px; */
+    }
+    .conditionHintAssistLis li:first-child,
+    .conditionHintInspectLis li:first-child {
+      padding-right: 5px;
+    }
+    .pushEmpty {
+      color: #ADADAD;
+    }
+    .medicinePartLimitHeight {
+      height:20px;
+      overflow: hidden;
+      position: relative;
+      margin-bottom: 8px;
+    }
+    .medicinePartLimitHeightSpec {
+      height: 75px;
+      overflow: hidden;
+      position: relative;
+    }
+    .slideDown {
+      background-color: #fff;
+      position: absolute;
+      top: 0px;
+      right: 4px;
+      color: #267FD7;
+      height: 20px;
+      line-height: 20px;
+      box-shadow: -2px 0px 15px 0px #fff;
+      cursor: pointer;
+    }
+    .slideDown i {
+      width: 16px;
+      height: 16px;
+      display: inline-block;
+      position: relative;
+      top: 2px;
+      background: url('../images/show.png') center center no-repeat;
+    }
+    .slideUp {
+      background-color: #fff;
+      position: absolute;
+      top: 0x;
+      right: 4px;
+      color: #267FD7;
+      height: 20px;
+      line-height: 20px;
+      box-shadow: -2px 0px 15px 0px #fff;
+      cursor: pointer;
+    }
+    .slideUp i {
+      width: 16px;
+      height: 16px;
+      display: inline-block;
+      position: relative;
+      top: 2px;
+      background: url('../images/collapse.png') center center no-repeat;
+    }
+    .disclaimer {
+      height: 100%;
+      width: 5%;
+      line-height: 20px;
+      text-align: center;
+      bottom: 0;
+      background-color: #efefef;
+      z-index: 98;
+      float: left;
+      cursor: pointer;
+    }
+    .disclaimer a {
+      display: block;
+    }
+    .infoMsg {
+      width: 20px;
+      height: 20px;
+      position: absolute;
+      top: 0;
+      right: 2px;
+      display: none;
+      background: url('../images/msg1.png') center center no-repeat;
+      cursor: pointer;
+    }
+    .infoMsg:hover {
+      background: url('../images/msg2.png') center center no-repeat;
+    }
+    .infoMsgParent {
+      position: relative;
+    }
+    .warning {
+      background: #FFEDEE;
+      color: #FF545B;
+      border-radius: 10px;
+      height: 20px;
+    }
+    .warningImg {
+      position: relative;
+      top: 2px;
+    }
+    .infoMsgParent:hover {
+      color: #267FD7;
+    }
+    .infoMsgParent:hover .infoMsg {
+      display: block;
+    }
+    .responsibility {
+      text-align: center;
+      font-size: 12px;
+      color: #979797;
+      padding-top: 15px;
+    }
+    .treat .conditionMain {
+      /* overflow: auto; */
+    }
+    .diseaseName {
+      color: #1AB3A9;;
+    }
+    .treat h4 {
+      display: block;
+      position: relative;
+    }
+    .treat .conditionHintPub .conditionMain {
+      margin: 0;
+      height: 80px;
+    }
+    .treat .slideDown {
+      right: 0;
+    }
+    .iframeWrap .conditionHintPub .treatMedicine .slideDown {
+      /* top: 28px; */
+    }
+    .disclaimerName {
+      float: left;
+      height: 72px;
+      position: relative;
+      top: 50%;
+      left: 50%;
+      margin: -36px 0 0 -14px;
+      line-height: 18px;
+      color: #9C9C9C;
+    }
+    .disclaimerTip {
+      margin-left: 0;
+      line-height: 14px;
+      height: 56px;
+      margin: -28px 0 0 0;
+    }
+    .titleIcon {
+      position: relative;
+      width: 18px;
+      top: 1px;
+      display: block;
+      float: left;
+      margin-right: 8px;
+    }
+    .treatPlan .titleIcon{
+      right: -11px;
+    }
+    .pushBox {
+      padding-right: 40px;
+      background: #fff
+    }
+    .pushBoxBorder {
+      border: 1px solid #3A73E1;
+      border-radius: 4px;
+    }
+    .warning i {
+      display: inline-block;
+      float: left;
+      width: 20px;
+      height: 20px;
+      background: url('../images/warning.png') center center no-repeat;
+    }
+    /* 滚动条宽度 */
+::-webkit-scrollbar{
+  /* 垂直滚动条宽度 */
+  width: 8px;
+  /* 水平滚动条高度 */
+  height: 8px;
+}
+/* 滑动滑块 */
+::-webkit-scrollbar-thumb{
+  background-color:rgba(0,0,0,.3);
+  height: 2px;
+  /* border-radius: 6px; */
+}
+/* 滚动条轨道 */
+::-webkit-scrollbar-track{
+  background-color:#ddd;
+}

+ 9 - 0
src/css/landscapePage.css

@@ -0,0 +1,9 @@
+p {
+    color: blueviolet;
+  }
+  .iframeContainer {
+    width: 1000px;
+    height: 128px;
+    margin: 0 auto;
+    border: 1px solid #ccc;
+  }

+ 0 - 1
src/css/reset.css

@@ -33,7 +33,6 @@ input {
 
 html,
 body {
-  height: 100%;
   font-family: 'Microsoft YaHei', arial, tahoma, sans-serif;
   color: #000;
 }

ファイルの差分が大きいため隠しています
+ 30 - 0
src/html/illness.html


ファイルの差分が大きいため隠しています
+ 90 - 0
src/html/landscape.html


ファイルの差分が大きいため隠しています
+ 82 - 0
src/html/landscapeMedical.html


ファイルの差分が大きいため隠しています
+ 21 - 0
src/html/landscapePage.html


ファイルの差分が大きいため隠しています
+ 39 - 0
src/html/treatplan.html


BIN
src/images/collapse.png


BIN
src/images/show.png


BIN
src/images/warning.png


+ 27 - 29
src/index.js

@@ -7,31 +7,24 @@ const { post,config,getUrlArgObject } = require('./js/promise.js');
 
 const {bqtsFun,ybzlFun,cyywFun,knzdFun,jtFun,tjwzFun,tjtgFun,tjhyFun,tjfjFun,yszdFun} = require('./js/indexDom.js');
 //   symptom: "恶心呕吐腰痛", //胸痛,背痛,恶心,呕吐     //恶心呕吐腰痛   //牙周袋形成
-function getTypes(){
-  if(getUrlArgObject('diseaseId') && getUrlArgObject('diagJson')){
-    return "1,4,5,6,7,8,22"
-  }else{
-    return "1,4,5,6,7,22"
-  }
-}
+
 var msg = {
   age: getUrlArgObject('age'),
-  diseaseId: getUrlArgObject('diseaseId'),
   sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
   symptom: getUrlArgObject('symptomJson'),
   vital: getUrlArgObject('vitalJson'),
   lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
   pacs: getUrlArgObject('pacsJson'),
   diag: getUrlArgObject('diagJson'),
-  featureType: getTypes(),
+  diseaseName: getUrlArgObject('diagJson'),
   other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
-  hospitalCode:getUrlArgObject('hospitalCode') || ''
+  hosCode:getUrlArgObject('hospitalCode') || ''
 }//推送相关信息
 
 window.msg = msg
 window.pushMessage = {}
 
-post(config.pushInner,msg).then((res)=>{
+post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22'},msg)).then((res)=>{
   var data = res.data
   if(data.code == 0){
     var result = data.data;
@@ -39,23 +32,6 @@ post(config.pushInner,msg).then((res)=>{
       window.pushMessage = result.medicalIndications;//计算的需要的相关数据
       bqtsFun(result.medicalIndications)
     }
-    if(result.treat){
-      var num = 0;
-      if(result.treat.commonTreatment && result.treat.commonTreatment.content){
-        ++num
-        ybzlFun(result.treat.commonTreatment.content)//一般治疗
-      }
-      if(result.treat.treatment && result.treat.treatment.length>0){
-        ++num
-        cyywFun(result.treat.treatment)//常用药物
-      }
-      if(num == 0){
-        $(".conditionHintZhiliaoNull").css("display","block")
-      }
-    }else{
-      $(".conditionHintZhiliaoNull").css("display","block")
-      $(".treatMedicine").css("display","none")
-    }
     if(result.dis){
       var proB = result.dis['可能诊断'] || []//可能
       var proY = result.dis['确诊'] || []//确诊
@@ -77,7 +53,7 @@ post(config.pushInner,msg).then((res)=>{
       $(".conditionHintTgNull").css("display","none")
       tjtgFun(result.vital)
     }
-    if(result.pacs.length > 0 && result.lab.length > 0){
+    if(result.pacs && result.lab.length > 0){
       $(".conditionHintAssistLis").css({
         "border-top":"1px solid #D1D1D1"
       })
@@ -95,3 +71,25 @@ post(config.pushInner,msg).then((res)=>{
   }
 })
 
+post(config.pushTreatment,Object.assign({featureType: '8'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    var result = data.data;
+    var num = 0;
+    if(result.commonTreatment && result.commonTreatment.content){
+      ++num
+      ybzlFun(result.commonTreatment.content)//一般治疗
+    }
+    if(result.treatment && result.treatment.length>0){
+      ++num
+      cyywFun(result.treatment)//常用药物
+    }
+    if(num == 0){
+      $(".conditionHintZhiliaoNull").css("display","block")
+    }
+  }else{
+    $(".conditionHintZhiliaoNull").css("display","block")
+    $(".treatMedicine").css("display","none")
+  }
+})
+

+ 130 - 0
src/js/illness.js

@@ -0,0 +1,130 @@
+require('../css/index.less');
+require('../css/reset.css');
+require('../css/popup.css');
+require('./popup');
+const $ = require("jquery");
+const { post,config,getUrlArgObject,openNewWin } = require('./promise.js');
+
+var msg = {
+  age: getUrlArgObject('age'),
+  sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
+  symptom: getUrlArgObject('symptomJson'),
+  vital: getUrlArgObject('vitalJson'),
+  lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
+  pacs: getUrlArgObject('pacsJson'),
+  diag: getUrlArgObject('diagJson'),
+  diseaseName: getUrlArgObject('diagJson'),
+  other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
+  hosCode:getUrlArgObject('hospitalCode') || ''
+}//推送相关信息
+
+window.msg = msg
+window.pushMessage = {}
+
+post(config.pushInner,Object.assign({featureType: '22'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0) {
+    var result = data.data;
+    if (result.medicalIndications && result.medicalIndications.length > 0) {//病情提示
+      window.pushMessage = result.medicalIndications;//计算的需要的相关数据
+      bqtsFun(result.medicalIndications)
+    }
+  }
+});
+
+function bqtsFun(data){//病情提示
+  for(var k = 0;k < data.length;k++){
+    var tmpBq = data[k]
+    var tmpBqStr = '<div class="mayIllness">患者可能有 <span data-name='+tmpBq.name+'>'+tmpBq.name+'<span target="_blank" title="点击该名称可看详细说明" class="infoMsg" href="information.html?type=22&position=2&name='+tmpBq.name+'"></span></span> :';
+    var tmpBqDetailStr = ''
+    for(var m = 0;m < tmpBq.details.length;m++){
+      var tmpBqDetail = tmpBq.details[m]
+      if(tmpBqDetail.type == 1){
+        tmpBqDetailStr+=tmpBqStr+ "<span target='_blank' data-scaleName="+tmpBqDetail.content.name+" href='scale.html?featureType=21&sex="+msg.sex+"&lis="+JSON.stringify(msg.lis)+"&diag="+msg.diag+"&scaleName="+tmpBqDetail.content.name+"&symptom="+msg.symptom+"&other="+msg.other+"&pacs="+msg.pacs+"&vital="+msg.vital+"&age="+msg.age+"&scaleId="+tmpBqDetail.content.id+"' class='illnessTable'>【"+tmpBqDetail.content.name+"】</span>"+
+          '</div>';
+      }
+      if(tmpBqDetail.type == 2){
+        var deepDetailName = '<div class="modalTitle">'+tmpBqDetail.content.name+'<i class="closeModal"></i></div>'
+        var deepDetailStr = ''
+        var deepDetailResultStr = ''
+        for(var n = 0;n < tmpBqDetail.content.details.length;n++){
+          var deepDetail = tmpBqDetail.content.details[n]
+          if(deepDetail.controlType == 2){//0-radio,1-checkbox,2-text,3-dropdownlist
+            deepDetailStr+='<li class="radioCheck"><span class="modalMaintltle">请输入'+deepDetail.name+': </span><input type="text" placeholder="请输入" value="'+deepDetail.value+'"><i class="uint">'+deepDetail.uint+'</i></li>'
+          }
+          if(deepDetail.controlType == 0){
+            let tooDeepDetailStr = ''
+            for(var f = 0;f<deepDetail.details.length;f++){
+              var tooDeepDetail = deepDetail.details[f]
+              if(deepDetail.name == '性别'){
+                tooDeepDetailStr+='<li class="radioChecks '+(tooDeepDetail.state == 1?"radioCheckSec":"")+'" data-select="'+(tooDeepDetail.state == 1?"select":"")+'"><i></i><span>'+tooDeepDetail.detailName+'</span></li>'
+              }else{
+                tooDeepDetailStr+='<li class="radioChecks"><i></i><span>'+tooDeepDetail.detailName+'</span>'+(tooDeepDetail.state == 1?"<a>(智能推荐)</a>":"")+'</li>'
+              }
+            }
+            deepDetailStr+='<li class="radioCheck"><span class="modalMaintltle">'+deepDetail.name+': </span>'+
+              '<ul class="clearfix caculateLis">'+
+              tooDeepDetailStr+
+              '</ul>'+
+              '</li>'
+          }
+        }
+        for(var v = 0;v < tmpBqDetail.content.result.length;v++){
+          deepDetailResultStr+='<p class="result"><span class="calculateName">'+tmpBqDetail.content.result[v].name+':</span><span class="calculateResult"></span></p>'
+        }
+        tmpBqDetailStr+='<div class="mayResult">计算公式结果:<span class="mayResultSelect" data-num="'+k+'">'+
+          '<span class="makesureResult">请选择</span>'+
+          '<span class="sanjiao"></span>'+
+          '<div class="popupModal">'+
+          deepDetailName+
+          '<div class="modalMainTwo">'+
+          '<ul class="clearfix">'+
+          deepDetailStr+
+          '</ul>'+
+          '<div class="calculate" data-num="'+k+'">计算</div>'+
+          '<p class="calculateError">请填写计算公式内容</p><div class="resultLis">'+
+          deepDetailResultStr+
+          '</div></div>'+
+          '<div class="btnWrap clearfix">'+
+          '<div class="sureScore" data-type="2">关闭</div>'+
+          '</div>'+
+          '</div>'+
+          '</span></div></div>'
+      }
+      if(tmpBqDetail.type == 3){
+        var deepDetailName = '<span class="modalMaintltle">'+tmpBqDetail.content.name+': </span>'
+        var deepDetailStr = ''
+        for(var n = 0;n < tmpBqDetail.content.details.length;n++){
+          var deepDetail = tmpBqDetail.content.details[n]
+          deepDetailStr+='<li class="radioChecks"><i></i><span>'+deepDetail.detailName+'</span>'+(deepDetail.state == 1?"<a>(智能推荐)</a>":"")+'</li>'
+        }
+        tmpBqDetailStr+='<div class="mayResult">可能结果:<span class="mayResultSelect" data-num="'+k+'"><span class="makesureResult">请选择</span><i class="sanjiao"></i>'+
+          '<div class="popupModal">'+
+          '<div class="modalTitle">结果选择<i class="closeModal"></i></div>'+
+          '<div class="modalMainOne">'+
+          deepDetailName+
+          '<ul class="clearfix">'+
+          deepDetailStr+
+          '</ul>'+
+          '</div>'+
+          '<div class="btnWrap clearfix">'+
+          '<div class="sureScore" data-type="3" data-num="'+k+'">确定</div>'+
+          '</div>'+
+          '</div>'+
+          '</span></div></div>'
+      }
+    }
+    /*if(tmpBqStr != '' || tmpBqDetailStr != ''){
+      $(".conditionHintTipsNull").css("display","none")
+    }*/
+    $(".conditionHintTipsNull").html('<div class="conditionMain clearfix">'+'<div class="alertModal">'+tmpBqDetailStr+'</div></div>')
+  }
+  $(".mayIllness .infoMsg").on("click",function(){
+    const infoMsgName = $(this).parent().attr('data-name')
+    openNewWin(`information.html?type=22&position=2&name=${infoMsgName}`)
+  })
+  $(".illnessTable").on('click',function(){
+    const scaleName = $(this).attr('data-scaleName')
+    openNewWin(`scale.html?featureType=21&sex=${msg.sex}&lis=${JSON.stringify(msg.lis)}&diag=${msg.diag}&scaleName=${scaleName}&symptom=${msg.symptom}&other=${msg.other}&pacs=${msg.pacs}&vital=${msg.vital}&age=${msg.age}`)
+  })
+}

ファイルの差分が大きいため隠しています
+ 12 - 12
src/js/indexDom.js


+ 6 - 6
src/js/information.js

@@ -10,7 +10,7 @@ const $ = require("jquery");
 function getInfomation() {
   var param = {
     "type": getUrlArgObject('type'),
-    "questionId": getUrlArgObject('questionId'),
+    "name": getUrlArgObject('name'),
     "position": getUrlArgObject('position')
   };
 
@@ -24,8 +24,8 @@ function getInfomation() {
       $(".anchors").css("display", "none");
       return;
     }
-    var list = data.introduceDetailList;
-    $("h1").html(data.tagName);
+    var list = data.details;
+    $("h1").html(data.name);
     $("h1").css({
       "color": "#267FD7",
       "borderBottom": "4px solid  #E9E9E9",
@@ -34,9 +34,9 @@ function getInfomation() {
     for (var i = 0; i < list.length; i++) {
       item = list[i];
       item.content = item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
-      anchors = '<li><i></i><a href="#' + item.id +
+      anchors = '<li><i></i><a href="#' + item.title +
         '">' + item.title + '</a></li><li class="anchor-line"></li>';
-      str = '<div class="title"><h2 id="' + item.id +
+      str = '<div class="title"><h2 id="' + item.title +
         '">'
       if (getUrlArgObject('type') == 8) {
         str += '【' + item.title + '】'
@@ -57,7 +57,7 @@ function getInfomation() {
       var scrollTop = $('.infos').scrollTop()
       var divHeight = 0;
       for (var i = 0; i < list.length; i++) {
-        divHeight = divHeight + parseInt($('#' + list[i].id).css('height')) + parseInt($('#' + list[i].id).parent().next().css('height')) + 40
+        divHeight = divHeight + parseInt($('#' + list[i].title).css('height')) + parseInt($('#' + list[i].title).parent().next().css('height')) + 40
         if (divHeight > scrollTop) {
           var anchor = 2 * i;
           $('.anchors ul').children().eq(anchor).addClass('active').siblings().removeClass('active');

ファイルの差分が大きいため隠しています
+ 169 - 0
src/js/landscapeDom.js


+ 118 - 0
src/js/landscapeMedical.js

@@ -0,0 +1,118 @@
+require('./../css/landscapeMedical.css');
+require('./../css/reset.css');
+require('./../css/popup.css');
+require('./popup');
+const $ = require("jquery");
+const { post,config,getUrlArgObject, openNewWin } = require('./promise.js');
+
+const {bqtsFun,ybzlFun,cyywFun,tjwzFun,tjtgFun,tjhyFun,tjfjFun, tjzdFun, slideToggle} = require('./landscapeDom.js');
+//   symptom: "恶心呕吐腰痛", //胸痛,背痛,恶心,呕吐     //恶心呕吐腰痛   //牙周袋形成
+
+var msg = {
+  age: getUrlArgObject('age'),
+  sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
+  symptom: getUrlArgObject('symptomJson'),
+  vital: getUrlArgObject('vitalJson'),
+  lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
+  pacs: getUrlArgObject('pacsJson'),
+  diag: getUrlArgObject('diagJson'),
+  diseaseName: getUrlArgObject('diagJson'),
+  other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
+  hosCode:getUrlArgObject('hospitalCode') || ''
+}//推送相关信息
+
+window.msg = msg
+window.pushMessage = {}
+
+post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    var result = data.data;
+    if(result.medicalIndications && result.medicalIndications.length>0){//病情提示
+      window.pushMessage = result.medicalIndications;//计算的需要的相关数据
+      bqtsFun(result.medicalIndications)
+    }
+    if(result.dis){
+      var proB = result.dis['可能诊断'] || []//可能
+      var proY = result.dis['确诊'] || []//确诊
+      var proWaring = result.dis['警惕'] || []
+      tjzdFun(proWaring, 'warning')
+      tjzdFun(proY)
+      tjzdFun(proB)
+      
+      slideToggle($(".conditionHintRecomDiagLis")) 
+      $(".infoMsgParent .infoMsg").on("click",function(){
+        const infoMsgName = $(this).parent().attr('data-name')
+        openNewWin(`information.html?type=7&position=2&name=${infoMsgName}`)
+      })
+      if(proY.length == 0 && proB.length == 0 && proWaring.length == 0){
+        $(".conditionHintRecomDiagLis").css("display","none")
+      }else{
+        $(".conditionHintRecomDiagLisNull").css("display","none")
+      }
+    }
+    if(result.symptom && result.symptom.length > 0){//推荐问诊症状
+      $(".conditionHintWzNull").css("display","none")
+      tjwzFun(result.symptom)
+    }
+    if(result.pacs && result.pacs.length > 0){//体格检查
+      $(".conditionHintTgNull").css("display","none")
+      tjtgFun(result.pacs)
+    }
+    if(result.pacs && result.lab.length > 0){
+      $(".conditionHintAssistLis").css({
+        "border-top":"1px solid #D1D1D1"
+      })
+    }
+    if(result.lab && result.lab.length > 0){//化验
+      $(".conditionHintInspectNull").css("display","none")
+      $(".conditionHintAssistNull").css("display","none")
+      tjhyFun(result.lab)
+    }
+    if(result.pacs && result.pacs.length > 0){//辅检
+      $(".conditionHintInspectNull").css("display","none")
+      $(".conditionHintAssistNull").css("display","none")
+      tjfjFun(result.pacs)
+    }
+  }
+})
+
+$(".disclaimer").on("click",function() {
+  openNewWin("disclaimer.html")
+})
+post(config.pushTreatment,Object.assign({featureType: '8'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    $(".diseaseName").html(msg.diag)
+    var result = data.data;
+    var num = 0;
+    if(result.commonTreatment && result.commonTreatment.content){
+      $(".treatPlanNull").css("display","none")
+      ++num
+      ybzlFun(result.commonTreatment.content)//一般治疗
+      
+    }else {
+      $(".treatPlanNull").css("display","block")
+    }
+    if(result.treatment && result.treatment.length>0){
+      $(".treatMedicineNull").css("display","none")
+      ++num
+      cyywFun(result.treatment)//常用药物
+    } else {
+      $(".treatMedicineNull").css("display","block")
+      $(".treatMedicine").css("display","none")
+    }
+    $(".conditionHintZhiliaoAp ").on('click',".slideDown",function(){
+      openNewWin(`treatplan.html?age=${msg.age}&sex=${msg.sex}&symptomJson=${msg.symptom}&vitalJson=${msg.vital}&lisJson=${msg.lis}&pacsJson=${msg.pacs}&diagJson=${msg.diag}&otherJson=${msg.other}&hospitalCode=${msg.hosCode}`)
+    })
+    if(num == 0){
+      $(".conditionHintZhiliaoNull").css("display","block")
+    }
+  }else{
+    $(".treatMedicine").css("display","none")
+    $(".treatPlanNull").css("display","block")
+    $(".treatMedicineNull").css("display","block")
+  }
+})
+
+

+ 0 - 0
src/js/landscapeMedicalDom.js


+ 9 - 2
src/js/popup.js

@@ -111,7 +111,15 @@ $(".conditionHintTips").on('click','.calculate',function(e){
     }
   }
   for(var s = 0;s < paramsJson.content.details.length;s++){
-    if(paramsJson.content.details[s].controlType == 2 && paramsJson.content.details[s].value == ''){
+    var hasSelect = false
+    if(paramsJson.content.details[s].controlType == 0) {
+      for(let i = 0; i < paramsJson.content.details[s].details.length; i++) {
+        if(paramsJson.content.details[s].details[i].state == '1') {
+          hasSelect = true
+        }
+      }
+    }
+    if(paramsJson.content.details[s].controlType == 2 && paramsJson.content.details[s].value == ''||paramsJson.content.details[s].controlType == 0 && !hasSelect){
       that.parent().find(".calculateError").css("display","block");
       that.parent().find(".calculateResult").html('');
       return;
@@ -135,7 +143,6 @@ $(".conditionHintTips").on('click','.calculate',function(e){
       }
       that.parent().find(".calculateError").css("display","none")
     }else{
-      console.log(res)
       that.parent().find(".calculateError").html(data.msg).css("display","block")
       that.parent().find(".calculateResult").html('')
     }

+ 46 - 6
src/js/promise.js

@@ -1,12 +1,35 @@
 const qs = require('qs');
 const $ = require("jquery");
 var Promise = require('./rePromise');
-
+//重写assign方法
+if (typeof Object.assign != 'function') {
+  Object.assign = function(target) {
+    'use strict';
+    if (target == null) {
+      throw new TypeError('Cannot convert undefined or null to object');
+    }
+ 
+    target = Object(target);
+    for (var index = 1; index < arguments.length; index++) {
+      var source = arguments[index];
+      if (source != null) {
+        for (var key in source) {
+          if (Object.prototype.hasOwnProperty.call(source, key)) {
+            target[key] = source[key];
+          }
+        }
+      }
+    }
+    return target;
+  };
+}
 const config = {
-  pushInner:'/api/icss/push/pushInner',
-  calculate:'/api/icss/calc/calculate',
-  disclaimer: '/api/icss/disclaimerInformation/getDisclaimerInformations',
-  information: '/api/icss/introduceInfo/getByQuestionId'
+  pushInner:'/api/data/push/push',
+  calculate:'/api/data/calc/calculate',
+  disclaimer: '/api/data/disclaimerInformation/getDisclaimerInformations',
+  information: '/api/data/conceptDetail/getConceptDetail',
+  pushScale: '/api/data/push/pushScale',
+  pushTreatment: '/api/data/push/pushTreatment',
 }
 const imageUrlPrefix = 'http://10.11.21.173:82';
 const getUrlArgObject = function(parm) {  
@@ -21,6 +44,10 @@ const post = function(url,data){
       url:url,
       data:JSON.stringify(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});
       },
@@ -30,6 +57,18 @@ const post = function(url,data){
     });
   });
 }
+const newinConf = {
+  width: '600',   //窗口的文档显示区的宽度。以像素计。
+  height: '600',  //窗口文档显示区的高度。以像素计。
+  left: '0',  //窗口的 x 坐标。以像素计。
+  top: '0',    //窗口的 y 坐标。以像素计。
+  openMode: "_blank"  //每次都是新窗口打开为_blank,打开同一窗口填写任意字符串
+}
+
+const newWindowLocation = `width=${newinConf.width}, height=${newinConf.height}, left=${newinConf.left}, top=${newinConf.top} scrollbars=yes`
+const openNewWin = function(url) {
+  window.open(url, newinConf.openMode, newWindowLocation)
+}
 
 const throttle =  function(fn, threshhold) {
   var timeout
@@ -58,5 +97,6 @@ module.exports = {
   post,
   getUrlArgObject,
   imageUrlPrefix,
-  throttle
+  throttle,
+  openNewWin
 }

+ 4 - 6
src/js/scale.js

@@ -11,7 +11,6 @@ $(function () {
   var params = {
     "age": getUrlArgObject('age') || 28,
     "featureType": getUrlArgObject('featureType') || '21',
-    "scaleId": getUrlArgObject('scaleId') || 40744,
     "scaleName": getUrlArgObject('scaleName') || '密西根糖尿病周围神经病评分(MDNS)',
     "sex": getUrlArgObject('sex') || 1,
     "diag": getUrlArgObject('diag') || '肺结核(复诊);',
@@ -22,11 +21,11 @@ $(function () {
     "vital": getUrlArgObject('vital') || ''
   }
 
-  if (getUrlArgObject('scaleId')) {
-    post(config.pushInner, params).then((res) => {
+  if (getUrlArgObject('scaleName')) {
+    post(config.pushScale, params).then((res) => {
       const data = res.data.data
       if (res.data.code == 0) {
-        scaleInfo = data.scale;
+        scaleInfo = data;
         for (var i = 0; i < scaleInfo.length; i++) {
           if (scaleInfo[i].type == 1) {
             var scaleList = JSON.parse(scaleInfo[i].content)
@@ -134,12 +133,11 @@ function renderCalcu(scaleList) {
 }
 
 function getCalcuResult(data) {
-  var url = "/api/icss/calc/calculate";
   const param = {
     type: 1,
     data: data
   }
-  post(url, param).then((res) => {
+  post(config.calculate, param).then((res) => {
     const dataResult = res.data.data
     if (res.data.code == 0) {
       data.calculate.result = dataResult.calcalculate.result

+ 66 - 0
src/js/treatplan.js

@@ -0,0 +1,66 @@
+require('../css/index.less');
+require('../css/reset.css');
+require('../css/popup.css');
+require('../js/popup');
+const $ = require("jquery");
+const { post,config,getUrlArgObject,openNewWin } = require('../js/promise.js');
+
+var msg = {
+  age: getUrlArgObject('age'),
+  sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
+  symptom: getUrlArgObject('symptomJson'),
+  vital: getUrlArgObject('vitalJson'),
+  lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
+  pacs: getUrlArgObject('pacsJson'),
+  diag: getUrlArgObject('diagJson'),
+  diseaseName: getUrlArgObject('diagJson'),
+  other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
+  hosCode:getUrlArgObject('hospitalCode') || ''
+}//推送相关信息
+
+window.msg = msg
+window.pushMessage = {}
+post(config.pushTreatment,Object.assign({featureType: '8'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    var result = data.data;
+    var num = 0;
+    if(result.commonTreatment && result.commonTreatment.content){
+      $(".treatPlanNullWrap").css("display","none")
+      ++num
+      ybzlFun(result.commonTreatment.content)//一般治疗
+    }
+    if(result.treatment && result.treatment.length>0){
+      $(".treatMedicineNullText").css("display","none")
+      ++num
+      cyywFun(result.treatment)//常用药物
+    } 
+    
+  }else{
+    $(".conditionHintZhiliaoNull").css("display","block")
+    $(".treatMedicine").css("display","none")
+  }
+})
+
+function ybzlFun(data){//一般治疗
+  $(".conditionHintZhiliaoAp").prepend('<div class="treatPlanWrap clearfix"><p class="treatPlan">一般治疗</p><p class="commonTreat clearfix">'+data+'</p></div>')
+  $(".diseaseName").html(' ( '+msg.diag+' )')
+}
+function cyywFun(data){//常用药物
+  for(var i = 0;i < data.length;i++){
+    var tmpVal = data[i];
+    var str = '<div class="drugType">'+(i+1)+'. '+tmpVal.bigdrugsName+'<p>('+tmpVal.subdrugsName+')</p></div>';
+    var strPart = '';
+    for(var j = 0;j < tmpVal.medicitionsList.length;j++){
+      var tmpPart = tmpVal.medicitionsList[j]
+      strPart += '<div class="drug"><span  class="'+(tmpPart.forbidden == 2?'medicine medicineDis':'medicine')+'" data-name='+tmpPart.medicitionName+'>'+tmpPart.medicitionName+(tmpPart.forbidden==0?'':'<span class="medicineWaring">'+(tmpPart.forbidden == 1?'慎用':tmpPart.forbidden == 2?'禁用':'')+'</span>') +'<span class="infoMsg" target="_blank" href="drugInfo.html?type=8&position=5&name='+tmpPart.medicitionName+'" title="点击该名称可看详细说明"></span></span> ' +
+        
+        '<p class="'+(tmpPart.forbidden == 2?"medicineWaringDisMsg":"")+'"><i>'+tmpPart.rate+'</i> 使用率</p></div>'
+    }
+    $(".drugWarp").append('<div class="medicinePart clearfix">'+str+'<div class="drugCont">'+strPart+'</div></div>')
+  }
+  $(".medicine .infoMsg").on("click",function(){
+    const infoMsgName = $(this).parent().attr('data-name')
+    openNewWin(`information.html?type=8&position=5&name=${infoMsgName}`)
+  })
+}

+ 121 - 0
src/landscape.js

@@ -0,0 +1,121 @@
+require('./css/landscape.css');
+require('./css/reset.css');
+require('./css/popup.css');
+require('./js/popup');
+const $ = require("jquery");
+const { post,config,getUrlArgObject, openNewWin } = require('./js/promise.js');
+
+const {bqtsFun,ybzlFun,cyywFun,tjwzFun,tjtgFun,tjhyFun,tjfjFun, tjzdFun, slideToggle} = require('./js/landscapeDom.js');
+//   symptom: "恶心呕吐腰痛", //胸痛,背痛,恶心,呕吐     //恶心呕吐腰痛   //牙周袋形成
+
+var msg = {
+  age: getUrlArgObject('age'),
+  sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
+  symptom: getUrlArgObject('symptomJson'),
+  vital: getUrlArgObject('vitalJson'),
+  lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
+  pacs: getUrlArgObject('pacsJson'),
+  diag: getUrlArgObject('diagJson'),
+  diseaseName: getUrlArgObject('diagJson'),
+  other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
+  hosCode:getUrlArgObject('hospitalCode') || ''
+}//推送相关信息
+
+window.msg = msg
+window.pushMessage = {}
+
+post(config.pushTreatment,Object.assign({featureType: '8'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    $(".diseaseName").html(msg.diag)
+    var result = data.data;
+    var num = 0;
+    if(!!(result.commonTreatment && result.commonTreatment.content)){
+      $(".treatPlanNull").css("display","none")
+      ++num
+      ybzlFun(result.commonTreatment.content)//一般治疗
+    } else {
+      $(".treatPlanNull").css("display","block")
+    }
+    if(!!result.treatment && result.treatment.length>0){
+      $(".treatMedicineNull").css("display","none")
+      ++num
+      cyywFun(result.treatment)//常用药物
+    } else {
+      $(".treatMedicineNull").css("display","block")
+      $(".treatMedicine").css("display","none")
+    }
+    $(".conditionHintZhiliaoAp ").on('click',".slideDown",function(){
+      openNewWin(`treatplan.html?age=${msg.age}&sex=${msg.sex}&symptomJson=${msg.symptom}&vitalJson=${msg.vital}&lisJson=${msg.lis}&pacsJson=${msg.pacs}&diagJson=${msg.diag}&otherJson=${msg.other}&hospitalCode=${msg.hosCode}`)
+    })
+    if(num == 0){
+      $(".conditionHintZhiliaoNull").css("display","block")
+    }
+  }else{
+    $(".treatMedicine").css("display","none")
+    $(".treatPlanNull").css("display","block")
+    $(".treatMedicineNull").css("display","block")
+  }
+})
+
+
+post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22'},msg)).then((res)=>{
+  var data = res.data
+  if(data.code == 0){
+    
+    var result = data.data;
+    if(result.medicalIndications && result.medicalIndications.length>0){//病情提示
+      window.pushMessage = result.medicalIndications;//计算的需要的相关数据
+      bqtsFun(result.medicalIndications)
+    }
+    if(result.dis){
+      var proB = result.dis['可能诊断'] || []//可能
+      var proY = result.dis['确诊'] || []//确诊
+      var proWaring = result.dis['警惕'] || []
+      tjzdFun(proWaring, 'warning')
+      tjzdFun(proY)
+      tjzdFun(proB)
+      
+      slideToggle($(".conditionHintRecomDiagLis")) 
+      $(".infoMsgParent .infoMsg").on("click",function(){
+        const infoMsgName = $(this).parent().attr('data-name')
+        openNewWin(`information.html?type=7&position=2&name=${infoMsgName}`)
+      })
+      if(proY.length == 0 && proB.length == 0 && proWaring.length == 0){
+        $(".conditionHintRecomDiagLis").css("display","none")
+      }else{
+        $(".conditionHintRecomDiagLisNull").css("display","none")
+      }
+    }
+    if(result.symptom && result.symptom.length > 0){//推荐问诊症状
+      $(".conditionHintWzNull").css("display","none")
+      tjwzFun(result.symptom)
+    }
+    if(result.vital && result.vital.length > 0){//体格检查
+      $(".conditionHintTgNull").css("display","none")
+      tjtgFun(result.vital)
+    }
+    if(result.pacs && result.lab.length > 0){
+      $(".conditionHintAssistLis").css({
+        "border-top":"1px solid #D1D1D1"
+      })
+    }
+    if(result.lab && result.lab.length > 0){//化验
+      $(".conditionHintInspectNull").css("display","none")
+      $(".conditionHintAssistNull").css("display","none")
+      tjhyFun(result.lab)
+    }
+    if(result.pacs && result.pacs.length > 0){//辅检
+      $(".conditionHintInspectNull").css("display","none")
+      $(".conditionHintAssistNull").css("display","none")
+      tjfjFun(result.pacs)
+    }
+  }
+})
+
+$(".disclaimer").on("click",function() {
+  openNewWin("disclaimer.html")
+})
+
+
+

+ 18 - 0
src/landscapePage.js

@@ -0,0 +1,18 @@
+require('./css/landscapePage.css');
+const $ = require("jquery");
+
+var lis = [
+  {
+    detailName: "HGB*3/HCT",
+    maxValue: "",
+    minValue: "",
+    name: "血常规",
+    otherValue: "",
+    source: "0",
+    time: "2019-05-07 17:11",
+    uniqueName: "血常规-HGB*3/HCT",
+    units: "",
+    value: "4"
+  }
+];
+$(".iframeContainer").attr("src",'landscape.html?age=22&lisJson='+JSON.stringify(lis)+'&diagJson=糖尿病&pastJson=无心脏病&otherJson=无高血压&pacsJson=腹部B超:无异常, 报告日期:2019-05-07&sex=男&symptomJson=恶心呕吐腰痛&vitalJson=血压左上肢13/12mmHg')

+ 86 - 2
webpack.config.js

@@ -7,11 +7,16 @@ const webpack = require('webpack');
 const proxyHost = "http://10.11.21.173:5050";
 module.exports = {
   entry: {
+    landscapePage: path.resolve(__dirname, 'src', 'landscapePage.js'),
+    landscape: path.resolve(__dirname, 'src', 'landscape.js'),
+    landscapeMedical: path.resolve(__dirname, 'src/js', 'landscapeMedical.js'),
     index: path.resolve(__dirname, 'src', 'index.js'),
     page: path.resolve(__dirname, 'src', 'page.js'),
     information: path.resolve(__dirname, 'src/js', 'information.js'),
     disclaimer: path.resolve(__dirname, 'src/js', 'disclaimer.js'),
     scale: path.resolve(__dirname, 'src/js', 'scale.js'),
+    illness: path.resolve(__dirname, 'src/js', 'illness.js'),
+    treatplan: path.resolve(__dirname, 'src/js', 'treatplan.js'),
     vendor: 'lodash'// 多个页面所需的公共库文件,防止重复打包带入
   },
   output: {
@@ -37,6 +42,32 @@ module.exports = {
         collapseWhitespace: true //删除空白符与换行符
       }
     }),
+    new HtmlWebpackPlugin({
+      title: '病情提示',
+      template: path.resolve(__dirname, 'src/html', 'illness.html'),
+      filename: 'illness.html',
+      chunks: ['illness', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
+    new HtmlWebpackPlugin({
+      title: '治疗方案',
+      template: path.resolve(__dirname, 'src/html', 'treatplan.html'),
+      filename: 'treatplan.html',
+      chunks: ['treatplan', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
     new HtmlWebpackPlugin({
       title: 'page',
       template: path.resolve(__dirname, 'src/html', 'page.html'),
@@ -50,6 +81,19 @@ module.exports = {
         collapseWhitespace: true //删除空白符与换行符
       }
     }),
+    new HtmlWebpackPlugin({
+      title: 'landscapePage',
+      template: path.resolve(__dirname, 'src/html', 'landscapePage.html'),
+      filename: 'landscapePage.html',
+      chunks: ['landscapePage', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
     new HtmlWebpackPlugin({
       title: 'information',
       template: path.resolve(__dirname, 'src/html', 'information.html'),
@@ -106,6 +150,32 @@ module.exports = {
       filename: 'css/[name].css',
       chunkFilename: '[id].css'
     }),
+    new HtmlWebpackPlugin({
+      title: 'landscape',
+      template: path.resolve(__dirname, 'src/html', 'landscape.html'),
+      filename: 'landscape.html',
+      chunks: ['landscape', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
+    new HtmlWebpackPlugin({
+      title: 'landscapeMedical',
+      template: path.resolve(__dirname, 'src/html', 'landscapeMedical.html'),
+      filename: 'landscapeMedical.html',
+      chunks: ['landscapeMedical', 'vendor', 'common'],
+      inject: true,
+      hash: true, //防止缓存
+      minify: {
+        removeAttributeQuotes: true, //压缩 去掉引号
+        removeComments: true, //移除HTML中的注释
+        collapseWhitespace: true //删除空白符与换行符
+      }
+    }),
     new webpack.HotModuleReplacementPlugin(),
     new CleanWebpackPlugin()
   ],
@@ -168,7 +238,21 @@ module.exports = {
           'css-loader'
         ]
       },
-      { 
+      {
+        test: /\.less$/,
+        use: [
+          {
+            loader: 'style-loader', // creates style nodes from JS strings
+          },
+          {
+            loader: 'css-loader', // translates CSS into CommonJS
+          },
+          {
+            loader: 'less-loader', // compiles Less to CSS
+          },
+        ],
+      },
+      {
         test: /\.(png|jpg|jpeg|gif|svg)$/,
         use: {
           loader: 'file-loader',
@@ -184,7 +268,7 @@ module.exports = {
   // devtool: 'cheap-module-eval-source-map', //开发环境cheap-module-eval-source-map   //生产环境cheap-module-source-map
   mode: 'development',
   devServer: {
-    contentBase: path.join(__dirname, "dist"), //静态文件根目录
+    contentBase: "./dist", //静态文件根目录
     proxy: {
       '/api': proxyHost
     },