Browse Source

右侧推送

zhangxc 4 years ago
parent
commit
2a509a3607

+ 133 - 14
src/css/cdss.less

@@ -448,20 +448,20 @@
     color: #AAA;
     font-size: 12px;
 }
-.titleIcon{
-    width: 16px;
-    margin: 0px 12px 0 12px;
-    position: relative;
-    top: 2px;
-}
-.warningbox{
-    .titleIcon{
-        width: 16px;
-        margin: 0px 12px 0 -5px;
-        position: relative;
-        top: 2px;
-    }  
-}
+// .titleIcon{
+//     width: 16px;
+//     margin: 0px 12px 0 12px;
+//     position: relative;
+//     top: 2px;
+// }
+// .warningbox{
+//     .titleIcon{
+//         width: 16px;
+//         margin: 0px 12px 0 -5px;
+//         position: relative;
+//         top: 2px;
+//     }  
+// }
 .loading{
     position: fixed;
     width: 100%;
@@ -533,4 +533,123 @@
             top: 9px;
         }
     }
+}
+
+
+// CDSS6.0
+.tab{
+    color: @tabColor;
+    margin-right: 20px;
+    display: inline-block;
+}
+.moduleItem{
+    min-height: 80px;
+    border: 1px solid #EAEDF1;
+    margin: 0 0 20px 0;
+}
+.longBox,.shortBox{
+    padding: 5px 15px;
+}
+.longBox{
+    display: none;
+}
+.pushItemBox{
+    position: relative;
+    display: inline-block;
+    margin-right: 15px;
+}
+.pushItemName{
+    position: relative;
+    display: inline-block;
+    line-height: 31px;
+}
+.infoImg{
+    width: 18px;
+    position: absolute;
+    top: -13px;
+    left: 50%;
+    margin: 0 0 0 -9px;
+    cursor: pointer;
+    display: none;
+}
+.pushItemBox:hover{
+    .infoImg{
+        display: block;
+    }
+}
+.showMore,.showLess{
+    display: inline-block;
+    cursor: pointer;
+    float: right;
+    line-height: 31px;
+    color: #3B9ED0;
+}
+.moduleTitle{
+    height: 40px;
+    line-height: 40px;
+    font-size: 14px;
+    font-weight: 600;
+    .titleIcon{
+        width: 24px;
+        position: relative;
+        top: 8px;
+        margin: 0 8px;
+    }
+}
+.iconArrowImg{
+    width: 14px;
+}
+.moduleBox{
+    padding: 5px 0;
+}
+.moduleBoxTitle{
+    padding: 0 15px;
+    line-height: 31px;
+    font-weight: 500;
+}
+.iconMark{
+    width: 4px;
+    position: absolute;
+    left: 20px;
+    top: 8px;
+}
+.billingPushItem{
+    padding: 0 15px 0 30px;
+    position: relative;
+    line-height: 31px;
+}
+.moduleItem{
+    border-radius: 4px;
+    .moduleBox{
+        border-bottom: 1px solid #EAEDF1;
+    }
+    .moduleBox:last-child{
+        border-bottom: 0;
+    }
+}
+.tabList{
+    line-height: 39px;
+    margin-bottom: 10px;
+}
+.tab{
+    font-size:18px;
+    color: #777777;
+    position: relative;
+    cursor: pointer;
+}
+.activeTab{
+    color:#3B9ED0;
+    font-weight: 600;
+    .activeLine{
+        display: inline-block;
+        width: 34%;
+        height: 3px;
+        left: 32%;
+        background: #3B9ED0;
+        position: absolute;
+        bottom: 0;
+    }
+}
+.moduleWrapper{
+    display: none;
 }

+ 14 - 1
src/css/common.less

@@ -1,3 +1,4 @@
+@import './reset.css';
 @grayColor:#D1D1D1; //边框
 @bgcBlue:#ECF4FC; //背景蓝色
 @colorBlue:#267FD7;  //hover
@@ -6,6 +7,7 @@
 @bgcPlan:#E3FEFE; //治疗
 @bgcMay:#FAEBEC; //疑似,警惕,可能
 @bgcModal:#DFEAFE; //弹窗头
+@tabColor: #777; // 右侧大Tab文字颜色
 .disCopy {
     -webkit-touch-callout: none;
     -webkit-user-select: none;
@@ -18,4 +20,15 @@
     white-space: nowrap;/*强制在一行显示*/
 	text-overflow:ellipsis;/*设置超出内容显示...*/
 	overflow: hidden;/*一定不能少 超出的内容进行隐藏*/
-}
+}
+.clearfix:after{
+    content: ""; 
+    display: block; 
+    height: 0; 
+    clear: both; 
+    visibility: hidden;  
+  }
+  
+  .clearfix {
+    zoom: 1; 
+  }

+ 1 - 1
src/css/staticSearch.css

@@ -2,7 +2,7 @@
     width: 80%;
     background: #fff;
     margin: 0 auto;
-    padding: 0 30px;
+    /* padding: 0 30px; */
     position: absolute;
     /* width: 80%; */
     left: 30px;

+ 36 - 7
src/html/cdss.html

@@ -26,7 +26,10 @@
         </div>
       </div> -->
       <div class="iframeWrap">
-        <div class="recommendWrap">
+        <div class="tabList">
+
+        </div>
+        <div class="recommendWrap moduleWrapper">
           <div class="empty">
             <img class="emptyImg" src="./images/empty.png" alt="空">
             <p class="emptyTxt">内容暂无推送信息~</p>
@@ -36,14 +39,40 @@
             <img class="loadingImg" src="./images/loading.gif" alt="loading">
             <!-- <p class="loadingTxt">loading~</p> -->
           </div>
+          <p class="responsibility"></p>
+          <div class="disclaimer clearfix">
+            <span class="version-tip">版本说明</span>
+            <span class="logo">&copy 朗通医疗</span>
+            <span class="disclaimerInfo">免责声明</span>
+          </div>
+        </div>
+        <div class="qcWrap moduleWrapper">
+
+        </div>
+        <div class="medicalKonwledgeWrap moduleWrapper">
+          <div class="container">
+            <div class="searchKnowledge">
+                <div class="staticSearchT">
+                    <div class="ipt">
+                        <input type="text" value="" placeholder="医学知识搜索">
+                    </div>
+                    <i id="clearKnowledge"></i>
+                    <button >搜索</button>
+                </div>
+                <div class="searchTypeBox"></div>
+    
+                <div class="staticSearchB">
+                    <p class="tip">查询内容</p>
+                    <p class="empty">暂无搜索结果!</p>
+                    <ul>
+                        
+                    </ul>
+                </div>
+            </div>
+          </div>
         </div>
       </div>
-      <p class="responsibility"></p>
-      <div class="disclaimer clearfix">
-        <span class="version-tip">版本说明</span>
-        <span class="logo">&copy 朗通医疗</span>
-        <span class="disclaimerInfo">免责声明</span>
-      </div>
+    
   </div>
 </body>
 

BIN
src/images/icon_arrow_down.png


BIN
src/images/icon_arrow_up.png


BIN
src/images/icon_checkup_push.png


BIN
src/images/icon_common_treat_push.png


BIN
src/images/icon_diag_push.png


BIN
src/images/icon_drug_push.png


BIN
src/images/icon_info.png


BIN
src/images/icon_info_on.png


BIN
src/images/icon_lis_push.png


BIN
src/images/icon_mark.png


BIN
src/images/icon_operation_push.png


BIN
src/images/icon_pacs_push.png


BIN
src/images/icon_scale_push.png


BIN
src/images/icon_symptom_push.png


BIN
src/images/icon_warning.png


+ 304 - 246
src/js/cdss.js

@@ -1,28 +1,34 @@
 require('./../css/reset.css');
 require('./../css/cdss.less');
 require('./../css/popup.css');
+require('./../css/staticSearch.css')
+require('./../js/staticSearch.js')
 require('./../images/empty.png')
 require('./../images/loading.gif')
 require('./../images/right.png')
 // require('./popupEdit.js');
 var Promise = require("bluebird");
-let diagFirstImg = require('./../images/yszd.png')
-let diagWarningImg = require('./../images/warning.png')
-let diagPossibleImg = require('./../images/knzd.png')
-let diagIdentifyImg = require('./../images/jianb.png')
-let labAndPacsImg = require('./../images/inspect.png')
-let physiExamImg = require('./../images/tgjc.png')
-let medicalIndicationsImg = require('./../images/tips.png')
+let infoImg = require('./../images/icon_info.png')
+let infoImgOn = require('./../images/icon_info_on.png')
+let iconArrowUp = require('./../images/icon_arrow_up.png')
+let iconArrowDown = require('./../images/icon_arrow_down.png')
+let iconMark = require('./../images/icon_mark.png')
 
 
 const $ = require("jquery");
-const { post,config,getUrlArgObject,openNewWin } = require('./promise.js');
+const { post,config,getUrlArgObject,openNewWin,titleConfig } = require('./promise.js');
 const { transConf } = require('./util.js');
 const {renderWrapper, renderCaseStandard,renderWarning,renderRecommendInfo,renderMultRecommendInfo,renderRecommendConditTips} = require('./cdssDom.js');
+const { data } = require('jquery');
 const { render } = require('less');
 
 
-
+let moduleConfig={
+  auxiliary:"recommendWrap",
+  qc:"qcWrap",
+  medical:"medicalKonwledgeWrap"
+}
+let moduleNum = 0
 let mrId = getUrlArgObject('mrId') 
 const tipsMode = getUrlArgObject('tipsMode') || 1
 let msg;
@@ -30,7 +36,7 @@ let msg;
 function getMRInfo() {
    return post(config.getMr2,{mrId:mrId})
 }
-$('.loading').css("display","block")
+// $('.loading').css("display","block")
 $('.empty').css("display","none")
 getMRInfo().then(res =>{
     if(res.data.code == '0'){
@@ -38,7 +44,6 @@ getMRInfo().then(res =>{
         window.msg = msg
         getConf().then(res =>{
           if(res.data.code == '0'){
-            console.log('data',res.data.data)
             // const configArr = res.data.data.pushSetList || []
             // getPageInfo(configArr)
             const data = res.data.data&&res.data.data[0]
@@ -49,7 +54,6 @@ getMRInfo().then(res =>{
         //   renderCaseStandard('CaseStandard', '病例书写规范', res.data.data.warning)
         // })
         // getHosptDeptUsal().then(res =>{
-        //   console.log('ressss', res)
         //   const diagCommon = res.data.data
         //   renderRecommendInfo(5,'diagCommon', '常见症状', diagCommon, true,7,2);
         // })
@@ -77,13 +81,17 @@ getMRInfo().then(res =>{
 // window.pushMessage = {}
 function getConf() {
   var msg = window.msg 
-  return post(config.getPushSet,{hospitalId: 0,planCode: ""})
+  return post(config.getPushSet,{hospitalId: 1,planCode: "all"})
 }
 
 function getPushInfo() {
-  return  post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22',ruleType:config.ruleTypeMap['22']},msg))
+  return  post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22',hospitalId:2,ruleType:config.ruleTypeMap['22']},msg))
   
 }
+function getPusgWarning(){
+  return  post(config.indicationPush,Object.assign({ruleType: '1,2,3,4',hospitalId:2,ruleType:config.ruleTypeMap['22']},msg))
+}
+
 
 function getAnalyse() {
   const param = getAnalyseParam()
@@ -103,169 +111,7 @@ function getHosptDeptUsal(){
 }
 
 
-// function getPageInfo(configArr) {
-//   let {confArr, showLabsNum, showPacsNum, labsAndPacMode} = transConf(configArr),
- 
-//     diagWaring = [{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7}]
-//     // diagWaring = [],
-//     diagFirst = [],
-//     diagPossible = [],
-//     diagIdentify = [],
-//     labRecommend = [],
-//     pacsRecommend = [],
-//     physiExamRecommend = [],
-//     symptomRecommend = [],
-//     medicalIndications = [],
-//     diagCommon = [],
-//     CaseStandard = [],
-//     labAndPacsRecommend = [],
-//     disName=""
-//     const hasCaseStandard = confArr.findIndex(item => item.code == 'specification_show') > -1
-//     const hasCommon = confArr.findIndex(item => item.code == 'comsympto_show') > -1
-//     if(hasCommon){
-//       if(hasCaseStandard){
-//         Promise.all([getHosptDeptUsal(),getPushInfo(),getAnalyse()]).then(([res1, res2, res3]) =>{
-//           diagCommon = res1&&res.data&&res.data.data&&res.data.data || []
-//           diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
-//           diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
-//           diagDetermine = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['确诊'] || []
-//           diagFirst = diagDetermine.concat (diagFirst)
-//           diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
-//           diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
-//           labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
-//           pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
-//           physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
-//           symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
-//           medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
-//           CaseStandard = res3&&res3.data&&res3.data.data&&res3.data.data.warning || []
-//           labAndPacsRecommend = [
-//             {
-//                 title: '化验',
-//                 className: 'labRecommend',
-//                 data:  labRecommend,
-//                 showNum: showLabsNum
-//             },
-//             {
-//                 title: '辅检',
-//                 className: 'pacsRecommend',
-//                 data:  pacsRecommend,
-//                 showNum: showPacsNum
-//             }
-//           ]
-//           window.pushMessage = medicalIndications;//计算的需要的相关数据
-//           renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
-
-//         }).catch(function (err) {
-//           console.log(err);
-//         })
-//       } else{
-//         Promise.all([getHosptDeptUsal(),getPushInfo()]).then(([res1, res2]) =>{
-//           diagCommon = res1&&res1.data&&res1.data.data&&res1.data.data || []
-//           // diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
-//           diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
-//           diagDetermine = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['确诊'] || []
-//           diagFirst = diagDetermine.concat (diagFirst)
-//           diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
-//           diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
-//           labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
-//           pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
-//           physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
-//           symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
-//           medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
-//           labAndPacsRecommend = [
-//             {
-//                 title: '化验',
-//                 className: 'labRecommend',
-//                 data:  labRecommend,
-//                 showNum: showLabsNum
-//             },
-//             {
-//                 title: '辅检',
-//                 className: 'pacsRecommend',
-//                 data:  pacsRecommend,
-//                 showNum: showPacsNum
-//             }
-//           ]
-//           window.pushMessage = medicalIndications;//计算的需要的相关数据
-//           renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
-
-//         }).catch(function (err) {
-//           console.log(err);
-//         })
-//       }
-//     }else{
-//       if(hasCaseStandard){
-//         Promise.all([getAnalyse(), getPushInfo()]).then(([res1, res2]) =>{
-//           getPushData(res2)
-//           diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
-//           diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
-//           diagDetermine = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['确诊'] || []
-//           diagFirst = diagDetermine.concat (diagFirst)
-//           diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
-//           diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
-//           labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
-//           pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
-//           physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
-//           symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
-//           medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
-//           CaseStandard = res1&&res1.data&&res1.data.data&&res1.data.data.warning || []
-//           labAndPacsRecommend = [
-//             {
-//                 title: '化验',
-//                 className: 'labRecommend',
-//                 data:  labRecommend,
-//                 showNum: showLabsNum
-//             },
-//             {
-//                 title: '辅检',
-//                 className: 'pacsRecommend',
-//                 data:  pacsRecommend,
-//                 showNum: showPacsNum
-//             }
-//           ]
-//           window.pushMessage = medicalIndications;//计算的需要的相关数据
-//           renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
-
-//         }).catch(function (err) {
-//           console.log(err);
-//         })
-//       } else{
-     
-//         getPushInfo().then(res =>{
-//           diagWaring = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['警惕'] || []
-//           diagFirst = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['拟诊'] || []
-//           diagDetermine = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['确诊'] || []
-//           diagFirst = diagDetermine.concat (diagFirst)
-//           diagPossible = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['可能诊断'] || []
-//           diagIdentify = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['鉴别诊断'] || []
-//           labRecommend = res&&res.data&&res.data.data&&res.data.data.lab || []
-//           pacsRecommend = res&&res.data&&res.data.data&&res.data.data.pacs || []
-//           physiExamRecommend = res&&res.data&&res.data.data&&res.data.data.vital || []
-//           symptomRecommend = res&&res.data&&res.data.data&&res.data.data.symptom || []
-//           medicalIndications = res&&res.data&&res.data.data&&res.data.data.medicalIndications || []
-//           labAndPacsRecommend = [
-//             {
-//                 title: '化验',
-//                 className: 'labRecommend',
-//                 data:  labRecommend,
-//                 showNum: showLabsNum
-//             },
-//             {
-//                 title: '辅检',
-//                 className: 'pacsRecommend',
-//                 data:  pacsRecommend,
-//                 showNum: showPacsNum
-//             }
-//           ]
-//           window.pushMessage = medicalIndications;//计算的需要的相关数据
-//           renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
-//         }).catch(function (err) {
-//           console.log(err);
-//         })
-//       }
-//     }
-
-// }
+
 
 function getPushData(res){
   if(res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis){
@@ -311,64 +157,6 @@ $(document).on('click',".allDis .right,.allDis .secDis",function(){
   $(".allDis").css("display","none")
   $(".singleDis").css("display","block")
 })
-// function renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard){
-
-//   let renderNum = 0
-//     for(let i = 0; i < confArr.length; i++) {
-   
-//       switch(confArr[i].code) {
-//         case "symptoms_show":  //问诊症状
-//           symptomRecommend.length > 0 && renderRecommendInfo(confArr[i].showNum,'symptomRecommend', '问诊症状', symptomRecommend, false)
-//            $('.symptomRecommend h4 img').attr('src',diagFirstImg)
-//           symptomRecommend.length > 0 && renderNum++
-//           break; 
-//         case "physical_show": //体格检查
-//           physiExamRecommend.length > 0 &&  renderRecommendInfo(5,'physiExamRecommend', '体格检查', physiExamRecommend, false)
-//              $('.physiExamRecommend h4 img').attr('src',physiExamImg)
-//           physiExamRecommend.length > 0 && renderNum++
-//           break;
-//         case "illness_show": //病情提示
-//           medicalIndications.length > 0 && renderRecommendConditTips('conditTips','病情提示', medicalIndications || []);
-//           medicalIndications.length > 0 && renderNum++;
-//           break;
-//         case "vigilant_show": //警惕诊断
-//           diagWaring.length > 0 && renderWarning(confArr[i].showNum,'warning', '警惕诊断', diagWaring, true,7,2);
-//           diagWaring.length > 0 &&  renderNum++;
-//           break;
-//         case "comsympto_show": //常见症状
-//           diagCommon.length > 0 && renderRecommendInfo(confArr[i].showNum,'commonSymp', '常见症状', diagCommon, true,7,2);
-//           diagCommon.length > 0 && renderNum++;
-//           break;
-//         case "specification_show": //病例书写规范
-//           CaseStandard.length > 0 &&  renderCaseStandard('CaseStandard', '病历书写规范提示', CaseStandard);
-//           CaseStandard.length > 0 && renderNum++;
-//           break;
-//         case "Inspush_show": //检验检查
-//           (labRecommend.length > 0 || pacsRecommend.length >0) && renderMultRecommendInfo('labAndPacsRecommend', '检验检查', labAndPacsRecommend, false);
-//           (labRecommend.length > 0 || pacsRecommend.length >0) && renderNum++
-//           break;
-//         case "diapush_show": //推荐诊断
-//           diagFirst.length>0 && renderRecommendInfo(5,'diagFirst', '初步诊断', diagFirst, true,7,2);
-//           diagFirst.length>0 && renderNum++
-//           diagPossible.length>0 && renderRecommendInfo(5,'diagPossible', '可能诊断', diagPossible, true,7,2);
-//           diagPossible.length>0 && renderNum++
-//           diagIdentify.length>0 && renderRecommendInfo(5,'diagIdentify', '鉴别诊断', diagIdentify, true,7,2);
-//           diagIdentify.length>0 && renderNum++;
-//            $('.diagFirst h4 img').attr('src',diagFirstImg);
-//            $('.diagPossible h4 img').attr('src',diagPossibleImg);
-//            $('.diagIdentify h4 img').attr('src',diagIdentifyImg);
-//           break;
-//         default:
-//           break;
-//       } 
-//     }
-//     $('.loading').css("display","none")
-//     if(renderNum > 0 || diagWaring.length > 0){
-//       $(".empty").css("display","none")
-//     }else{
-//       $(".empty").css("display","block")
-//     }
-// }
 
 
 
@@ -389,38 +177,308 @@ function getVersion() {
       $(".version-tip").addClass('new-icon');
       localStorage.setItem('versionTime',time+"=new");     //保存版本更新时间
     }else{
-      $(".version-tip").removeClass('new-icon');
+      $(".version-tip").removeClass("new-icon");
     }
   })
 }
 function getDisclaimer() {
-    post(config.disclaimer, '').then((res) => {
-        const data = res.data.data.find(item => item.disclaimerCode == '2');
+    post(config.disclaimer, "").then((res) => {
+        const data = res.data.data.find(item => item.disclaimerCode == "2");
         $(".responsibility").html(data.description);
-        $('.iframeWrap').css({height: $(window).height()-115-$(".responsibility").height()+'px'})
+        $(".iframeWrap").css({height: $(window).height()-115-$(".responsibility").height()+"px"})
 
     })
 }
 
 function renderPage(pageSet){
     renderTab(pageSet.sysSetInfo)
-    renderContent(pageSet.sysSetInfo)
+    const hasAuxiliary = hasTab("辅助信息",pageSet.sysSetInfo)
+    const hasMedical = hasTab("医学知识",pageSet.sysSetInfo)
+    if(hasAuxiliary){
+      renderModuleWrapper(hasAuxiliary.planDetails)
+      let needPush = isNeedPush(hasAuxiliary.planDetails)
+      let needPushWarning = isNeedPushWarning(hasAuxiliary.planDetails)
+      if(needPush || needPushWarning){
+        renderPushData()
+      }
+      if(needPushWarning){
+        renderPushWarning()
+      }
+    }
+}
+
+function renderPushData(){
+  return getPushInfo().then(res =>{
+    if(res.data.code == "0"){
+      const result = res.data.data
+      let diagPush = result.dis 
+    
+      // let lisPush = result.lis || []
+      // let pacsPush = result.pacs || []
+      let symptomPush = result.symptom ||[]
+      // let checkupPush = result.vital ||[]
+
+      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}]
+      renderLis(lisPush,5,null,true)
+      renderPacs(pacsPush,5,null,true)
+      renderCheckup(checkupPush,5,null,false)
+      renderSymptomPush(symptomPush,5,null,true)
+      renderDiag(diagPush)
+      bindOpenInfo()
+      bindSlide()
+    }
+  })
+}
+
+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){
+      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){
+      return true
+    }
+  }
+  return false
+}
+
+function renderPushWarning(){
+  return getPusgWarning().then(res =>{
+    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 || []  //注意调试信息
+      $('.moduleItem.tips').append(titleStr('warning'))
+      renderBillingPush(billMsgList,'开单合理性提醒')
+      renderBillingPush(criticalValList,'危急值提醒')
+    }
+    
+  })
+}
+
+function renderBillingPush(list,name){
+  if(list.length === 0){
+    return
+  }
+  let str = ``
+  for(let i = 0; i < list.length; i++){
+    str += `<div class="billingPushItem"><img class="iconMark" src=${iconMark}>${list[i].msg}</div>`
+  }
+  let titleStr = titleStr2(name)
+  let boxStr = `<div class="moduleBox">
+        ${titleStr}
+        ${str}
+      </div>`
+  $(".tips").append(boxStr)
 }
 
+
+function renderDiag(diagPush){
+  let possibleDiagPush = diagPush["可能诊断"] || []
+  // let firstDiagPush = diagPush["初步诊断"] || []
+  // let identifyDiagPush = diagPush["鉴别诊断"] || []
+
+  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}]
+  $('.moduleItem.diag').append(titleStr("diagPush"))
+  renderDiagItem(possibleDiagPush,"可能诊断")
+  renderDiagItem(firstDiagPush,"初步诊断")
+  renderDiagItem(identifyDiagPush,"鉴别诊断")
+
+}
+
+function renderDiagItem(list,name){
+  if(list.length === 0){
+    return
+  }
+  let titleStr = titleStr2(name)
+  let {shortStr, longStr} = renderItemWrapper(list,5,null,true)
+  let boxStr = `<div class="moduleBox">
+        ${titleStr}
+        ${shortStr}
+        ${longStr}
+      </div>`
+  $(".diag").append(boxStr)
+}
+
+
+function renderLis(list,showNum,type,hasInfo){
+  if(list.length > 0 &&  $(".moduleItem.pacs").length > 0){
+    moduleNum++
+    $('.moduleItem.lis').append(titleStr("lisPush"))
+    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    $('.moduleItem.lis').append(shortStr).append(longStr)
+    $('.moduleItem.lis').css("display","block")
+  }
+ 
+}
+
+function renderPacs(list,showNum,type,hasInfo){
+  if(list.length > 0 &&  $(".moduleItem.pacs").length > 0){
+    moduleNum++
+    $(".moduleItem.pacs").append(titleStr("pacsPush"))
+    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    $(".moduleItem.pacs").append(shortStr).append(longStr)
+    $('.moduleItem.pacs').css("display","block")
+  }
+ 
+}
+function renderCheckup(list,showNum,type,hasInfo){
+  if(list.length > 0 &&  $(".moduleItem.vital").length > 0){
+    moduleNum++
+    $(".moduleItem.vital").append(titleStr("checkupPush"))
+    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    $(".moduleItem.vital").append(shortStr).append(longStr)
+    $('.moduleItem.vital').css("display","block")
+  }
+}
+function renderSymptomPush(list,showNum,type,hasInfo){
+  if(list.length > 0 &&  $(".moduleItem.vital").length > 0){
+    moduleNum++
+    $(".moduleItem.symptom").append(titleStr('symptomPush'))
+    let {shortStr, longStr} = renderItemWrapper(list,showNum,type,hasInfo)
+    $(".moduleItem.symptom").append(shortStr).append(longStr)
+    $(".moduleItem.symptom").css("display","block")
+  }
+ 
+}
+
+
+
+
+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].name,type,hasInfo)
+    }
+    longStr += renderPushItem(list[i].name,type,hasInfo)
+  }
+
+  if(showNum1 >= list.length){
+    return {
+      shortStr:`<div class="shortBox">${shortStr}</div>`,
+      longStr:''
+    }
+  }else{
+    shortStr += `<span class="showMore">更多 <img class="iconArrowImg" src="${iconArrowDown}"></span>`
+    longStr += `<span class="showLess">收起 <img class="iconArrowImg"  src="${iconArrowUp}"></span>`
+    return {
+      shortStr:`<div class="shortBox clearfix">${shortStr}</div>`,
+      longStr:`<div class="longBox clearfix">${longStr}</div>`
+    }
+  }
+}
+
+function renderPushItem(name,type,hasInfo){
+  if(hasInfo){
+    str= `<span class="pushItemBox"><span class="pushItemName">${name}</span><img class="infoImg" src="${infoImg}"></span>`
+  }else{
+    str= `<span class="pushItemBox">${name}</span>`
+  }
+  return str
+}
+
+function bindOpenInfo(){
+  $(".infoImg").on("mouseenter", function(){
+    $(this).attr("src", infoImgOn)
+  }).on("mouseleave", function(){
+    $(this).attr("src", infoImg)
+  })
+}
+
+function bindSlide(){
+  $(".showMore").on("click", function(){
+    $(this).parent().parent().find(".longBox").css("display","block")
+    $(this).parent().parent().find(".shortBox").css("display","none")
+  })
+  $(".showLess").on("click", function(){
+    $(this).parent().parent().find(".longBox").css("display","none")
+    $(this).parent().parent().find(".shortBox").css("display","block")
+  })
+}
+
+function renderModuleWrapper(moduleList){
+  let moduleStr = ''
+  for(let i = 0; i < moduleList.length; i++){
+    // if(moduleList[i].status !='0'){
+      moduleStr += `<div class="moduleItem ${moduleList[i].code}" style="display:block"></div>`
+    // }
+   
+  }
+  $(".recommendWrap").append(moduleStr)
+}
+
+function hasTab(tabName,tabList){
+  for(let i = 0; i < tabList.length; i++){
+    if(tabList[i].name == tabName){
+      return tabList[i]
+    }
+  }
+  return false
+}
 function renderTab(tabList){
-    let str = ''
+    let tabStr = ''
     for(let i = 0; i < tabList.length; i++){
-        str += `<span class="${i === 0 ? 'activeTab':''}">${tabList.name}</span>`
+      tabStr += `<span class="tab ${i === 0 ? 'activeTab':''}" data-name="${tabList[i].code}" >${tabList[i].name}<span class="activeLine"></span></span>`
     }
+    $(".tabList").append(tabStr)
+    getModuleShow(moduleConfig[tabList[0].code])
+    bindTabClick()
 }
-function renderContent(){
-   
+
+function titleStr(type){
+  let titleStr = ''
+  titleStr += `<h4 class="moduleTitle" style="background:${titleConfig[type].background}"><img class="titleIcon" src=${titleConfig[type].icon}>${titleConfig[type].name}</h4>`
+  return titleStr
+}
+function titleStr2(name){
+  let titleStr = ''
+  titleStr += `<p class="moduleBoxTitle">${name}:</p>`
+  return titleStr
+}
+
+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(){
-  getDisclaimer(); //获取免责声明
-  getVersion();   //获取版本信息
+  // getDisclaimer(); //获取免责声明
+  // getVersion();   //获取版本信息
   $(".disclaimerInfo").on("click", function(){
     openNewWin("disclaimer.html")
   });

+ 3 - 0
src/js/cdssDom.js

@@ -353,6 +353,9 @@ function slideToggle(domName,childrenNodeStrShort,childrenNodeStrLong){//展开
         $(this).remove()
     })
 }
+
+
+
 module.exports ={
     renderCaseStandard,
     renderWarning,

+ 67 - 5
src/js/promise.js

@@ -1,7 +1,20 @@
 const qs = require('qs');
 const $ = require("jquery");
 var Promise = require('./rePromise');
-//重写assign方法
+let imgReg = /undefined/g
+let iconWarning = require('./../images/icon_warning.png')
+let iconSymptomPush = require('./../images/icon_symptom_push.png')
+let iconLisPush = require('./../images/icon_lis_push.png')
+let iconPacsPush = require('./../images/icon_pacs_push.png')
+let iconScalePush = require('./../images/icon_scale_push.png')
+let iconOperationPush = require('./../images/icon_operation_push.png')
+let iconDrugPush = require('./../images/icon_drug_push.png')
+let iconDiagPush = require('./../images/icon_diag_push.png')
+let iconCommonTreatPush = require('./../images/icon_drug_push.png')
+let iconCheckupPush = require('./../images/icon_checkup_push.png')
+
+
+//重写assign方法imgR
 if (typeof Object.assign != 'function') {
   Object.assign = function (target) {
     'use strict';
@@ -31,7 +44,8 @@ window.console = window.console || (function () {
 })();
 
 const config = {
-  pushInner: '/api/data/push/push',
+  pushInner: '/sys/push/push',
+  indicationPush:'/sys/push/indicationPush',
   calculate: '/api/data/calc/calculate',
   disclaimer: '/sys/disclaimerInfo/getDisclaimerInfo',
   information: '/api/data/conceptDetail/getConceptDetail',
@@ -41,9 +55,9 @@ const config = {
   getMr: '/sys/mr/getMr', //页面推送患者信息
   getMr2: '/sys/mr/getMr', //icss推送患者信息
   getVersion: '/sys/versionInfo/getVersionInfoAlls',
-  getStaticKnowledge: '/api/data/search/getStaticKnowledge',
+  getStaticKnowledge: '/demo/retrieval/index',
   getStaticScale: '/api/data/search/getScale',
-  dictionaryInfo: '/api/data/dictionaryInfo/getList', //字典信息
+  dictionaryInfo: '/sys/dictionaryInfo/getList', //字典信息
   getPushSet:'/sys/plan/getSysPlanInfoDatas', //获取推送配置
   analyse:'/api/data/mrqc/analyse',
   getHosptDeptUsal:'/api/data/concept/getHosptDeptUsal', //获取科室常用标签
@@ -143,6 +157,53 @@ const throttle = function (fn, threshhold) {
   }
 }
 
+const titleConfig = {
+  warning:{
+    background: "#FFE8DD",
+    icon: iconWarning,
+    name:"智能警示"
+  },
+  symptomPush:{
+    background: "#EEF5FD",
+    icon: iconSymptomPush,
+    name:"推荐症状"
+  },
+  diagPush:{
+    background: "#FAECED",
+    icon: iconDiagPush,
+    name:"智能诊断"
+  },
+  checkupPush:{
+    background: "#EEF5FD",
+    icon: iconCheckupPush,
+    name:"推荐体格检查"
+  },
+  scalePush:{
+    background: "#ECF4FC",
+    icon: iconScalePush,
+    name:"推荐量表"
+  },
+  lisPush:{
+    background: "#ECF4FC",
+    icon: iconLisPush,
+    name:"推荐化验"
+  },
+  pacsPush:{
+    background: "#ECF4FC",
+    icon: iconPacsPush,
+    name:"推荐辅检"
+  },
+  drugPush:{
+    background: "#E3FEFE",
+    icon: iconDrugPush,
+    name:"推荐用药"
+  },
+  operationPush:{
+    background: "#E3FEFE",
+    icon: iconOperationPush,
+    name:"推荐手术及操作"
+  },
+}
 module.exports = {
   config,
   post,
@@ -150,5 +211,6 @@ module.exports = {
   imageUrlPrefix,
   throttle,
   openNewWin,
-  isIe8
+  isIe8,
+  titleConfig
 }