Explorar o código

历史病例优化

Luolei1992 %!s(int64=5) %!d(string=hai) anos
pai
achega
5b6a7820bc

+ 3 - 2
src/components/HistoryCaseContainer/HistoryList/index.jsx

@@ -13,6 +13,7 @@ import { ConfirmModal } from '@commonComp';
 import {showHistory} from "@store/actions/historyTemplates";
 import { CONFIRM_TYPE } from "@store/types/typeConfig";
 import {billing} from '@store/async-actions/pushMessage';
+import {getHistempDetail} from '@store/async-actions/historyTemplates';
 
 
 class HistoryCaseContainer extends React.Component {
@@ -62,7 +63,7 @@ class HistoryCaseContainer extends React.Component {
         this.setState({visible:false})
         store.dispatch(showHistory(false))
         store.dispatch({type: CONFIRM_TYPE, confirmType: activeHis.sign});
-        pushAllDataList(activeHis.sign,'push',activeHis,'history')       //引用
+        store.dispatch(getHistempDetail(activeHis))
         if(didPushParamChange()){
           store.dispatch(billing())
         }
@@ -81,7 +82,7 @@ class HistoryCaseContainer extends React.Component {
         activeId:idx,
         activeHis:val,
         dataStr:val.detailList||[],
-        dataJson:JSON.parse(val.dataJson)||{},
+        // dataJson:JSON.parse(val.dataJson)||{},
       })
     }
     render(){

+ 20 - 14
src/components/Operation/index.jsx

@@ -160,21 +160,23 @@ class Operation extends Component {
       Notify.info('模板数据不能为空')
       return false
     }
-    console.log(jsonStr,'文本')
-    console.log(jsonData,'结构')       //测试需要用到,不要删了
-    console.log(tmpLis)
+    // console.log(jsonStr,'文本')
+    // console.log(jsonData,'结构')       //测试需要用到,不要删了
+    // console.log(tmpLis,'接口返回的')
     for(let i = 0;i <tmpLis.length;i++){
       let dataStr = tmpLis[i].preview;
-      let dataJson = tmpLis[i].dataJson;
+      // let dataJson = tmpLis[i].dataJson;
       // console.log(jsonStr.chief , JSON.stringify(eval('('+JSON.parse(dataStr).chief+')')))
-      // console.log(jsonData.chief)
       if(whichSign == 0){
         if(
           jsonStr.chief == JSON.stringify(eval('('+JSON.parse(dataStr).chief+')')) && 
           jsonStr.present == JSON.stringify(eval('('+JSON.parse(dataStr).present+')')) && 
           jsonStr.other == JSON.stringify(eval('('+JSON.parse(dataStr).other+')')) && 
-          jsonStr.vital == JSON.stringify(eval('('+JSON.parse(dataStr).vital+')'))
-          // &&
+          jsonStr.vital == JSON.stringify(eval('('+JSON.parse(dataStr).vital+')')) &&
+          jsonStr.lis == JSON.parse(dataStr).lis &&
+          jsonStr.pacs == JSON.parse(dataStr).pacs &&
+          jsonStr.diag == JSON.parse(dataStr).diag &&
+          jsonStr.advice == JSON.parse(dataStr).advice
           // JSON.stringify(jsonData.chief) == JSON.stringify(JSON.parse(dataJson).chief) &&    
           // JSON.stringify(jsonData.checkedListImport) == JSON.stringify(JSON.parse(dataJson).checkedListImport) &&    
           // JSON.stringify(jsonData.present) == JSON.stringify(JSON.parse(dataJson).present)  &&     
@@ -199,13 +201,17 @@ class Operation extends Component {
           jsonStr.chief == JSON.stringify(eval('('+JSON.parse(dataStr).chief+')')) && 
           jsonStr.present == JSON.stringify(eval('('+JSON.parse(dataStr).present+')')) && 
           jsonStr.other == JSON.stringify(eval('('+JSON.parse(dataStr).other+')')) && 
-          jsonStr.vital == JSON.stringify(eval('('+JSON.parse(dataStr).vital+')'))  &&
-          JSON.stringify(jsonData.vital) == JSON.stringify(JSON.parse(dataJson).vital) && 
-          JSON.stringify(jsonData.lis) == JSON.stringify(JSON.parse(dataJson).lis) &&  
-          JSON.stringify(jsonData.pacs) == JSON.stringify(JSON.parse(dataJson).pacs) &&     
-          JSON.stringify(jsonData.diag) == JSON.stringify(JSON.parse(dataJson).diag) &&    
-          JSON.stringify(jsonData.advice) == JSON.stringify(JSON.parse(dataJson).advice) &&        
-          JSON.stringify(jsonData.addItems) == JSON.stringify(JSON.parse(dataJson).addItems)
+          jsonStr.vital == JSON.stringify(eval('('+JSON.parse(dataStr).vital+')')) &&
+          jsonStr.lis == JSON.parse(dataStr).lis &&
+          jsonStr.pacs == JSON.parse(dataStr).pacs &&
+          jsonStr.diag == JSON.parse(dataStr).diag &&
+          jsonStr.advice == JSON.parse(dataStr).advice
+          // JSON.stringify(jsonData.vital) == JSON.stringify(JSON.parse(dataJson).vital) && 
+          // JSON.stringify(jsonData.lis) == JSON.stringify(JSON.parse(dataJson).lis) &&  
+          // JSON.stringify(jsonData.pacs) == JSON.stringify(JSON.parse(dataJson).pacs) &&     
+          // JSON.stringify(jsonData.diag) == JSON.stringify(JSON.parse(dataJson).diag) &&    
+          // JSON.stringify(jsonData.advice) == JSON.stringify(JSON.parse(dataJson).advice) &&        
+          // JSON.stringify(jsonData.addItems) == JSON.stringify(JSON.parse(dataJson).addItems)
         ){
           Notify.info('该模板已保存');
           return false;

+ 3 - 3
src/components/PreviewBody/ItemPart/index.jsx

@@ -22,9 +22,9 @@ const ItemPart = (props) => {
       </td>:
       <td className={style['patInfoSec']}>
       {
-        other_yjs.str1
+        other_yjs&&other_yjs.str1
       }
-      {dataJson['yjs_1']||dataJson['yjs_2']||dataJson['yjs_3']||dataJson['yjs_4']?<table className={style['formulaTable']}>
+      {(dataJson&&dataJson['yjs_1'])||(dataJson&&dataJson['yjs_2'])||(dataJson&&dataJson['yjs_3'])||(dataJson&&dataJson['yjs_4'])?<table className={style['formulaTable']}>
         <tr>
           <td rowSpan='2' className={style['alignMiddle']}>月经史:(</td>
           <td rowSpan='2' className={style['alignMiddle']}>{dataJson['yjs_1']||'初潮年龄'}</td>
@@ -36,7 +36,7 @@ const ItemPart = (props) => {
         </tr>
       </table>:''}
       {
-        other_yjs.str2
+       other_yjs&&other_yjs.str2
       }
     </td>
 

+ 17 - 14
src/components/PreviewBody/index.jsx

@@ -102,16 +102,19 @@ class PreviewBody extends Component {
   }
   render() {
     const { show, preInfo, dataJson, dataStr, baseObj, flg ,come,showAssessBtn,showHistoryCases} = this.props;
-    let other_data={},lis_data={},pas_data={},other_yjs='';
+    let other_data={},lis_data={},pas_data={},other_yjs='',access='',adviceData={};
     if(!come){
       other_data = JSON.parse(baseObj.detailList[2].contentJson)
       lis_data = JSON.parse(baseObj.detailList[4].contentJson)
       pas_data = JSON.parse(baseObj.detailList[5].contentJson)
-      other_yjs = other_data.pfix;
+      adviceData = JSON.parse(baseObj.detailList[7].contentJson)
+      other_yjs = other_data&&other_data.pfix;
+      access = other_data&&other_data.haveAssess
     }else{
       other_yjs = dataStr.other?filterOtherDataArr(JSON.parse(dataStr.other),dataJson.other):'';
+      access = dataJson.haveAssess
+      adviceData=dataJson.advice
     }
-    console.log(dataStr,dataJson,33333333333)
     //const isChronic = (dataJson.diagChronicMagItem&&dataJson.diagChronicMagItem.name)||(dataJson.mainChronicDesease&&dataJson.mainChronicDesease.name);
     const noData = JSON.stringify(preInfo) == '{}';
     return <div className={style['content']} style={{ width: flg ? '700' : '820' }}>
@@ -125,21 +128,21 @@ class PreviewBody extends Component {
           <PreviewInspect dataJson={come?dataJson.lis:lis_data} toTime={this.toTime} dateTime={this.state.dateTime} showDetails={this.showDetails}></PreviewInspect>
           <ItemPart dataStr={dataStr.pacs} title={'辅检:'} type={2}></ItemPart>
           <ItemPart dataStr={dataStr.diag} title={'诊断:'} type={2}></ItemPart>
-          {/* <tr className={style['patInfoFst']}>
+          <tr className={style['patInfoFst']}>
             <td className={style['patInfoSec']}>医嘱:</td>
             <td className={`${style['patInfoSec']} ${style['pushMessage']} ${style['font14']}`}>
-              {((dataJson.advice.assay && dataJson.advice.assay.length > 0) || (dataJson.advice.check && dataJson.advice.assay.check > 0)) && <p className={style.pushMessageTitle}><span>开单项目</span></p>}
+              {((adviceData&&adviceData.assay && adviceData.assay.length > 0) || ((adviceData&&adviceData.check)&& (adviceData&&adviceData.assay.check > 0))) && <p className={style.pushMessageTitle}><span>开单项目</span></p>}
               {
-                ((dataJson.advice.assay && dataJson.advice.assay.length > 0) || (dataJson.advice.check && dataJson.advice.assay.check > 0)) && <div className={style.pushMessageDes}>{dataJson.advice.check?dataJson.advice.check+',':''} {dataJson.advice.assay}</div>
+                ((adviceData&&adviceData.assay && adviceData.assay.length > 0) || ((adviceData&&adviceData.check) && (adviceData&&adviceData.assay.check > 0))) && <div className={style.pushMessageDes}>{adviceData.check?adviceData.check+',':''} {adviceData.assay}</div>
               }
-              {dataJson.advice.commontreatment && dataJson.advice.commontreatment.length > 0 && <p  className={style.pushMessageTitle}><span>一般治疗</span></p>}
+              {adviceData&&adviceData.commontreatment && adviceData.commontreatment.length > 0 && <p  className={style.pushMessageTitle}><span>一般治疗</span></p>}
               {
-                dataJson.advice.commontreatment && <div dangerouslySetInnerHTML={{__html: dataJson.advice.commontreatment}} className={style.pushMessageDes}></div>
+                adviceData&&adviceData.commontreatment && <div dangerouslySetInnerHTML={{__html: adviceData.commontreatment}} className={style.pushMessageDes}></div>
               }
-              {dataJson.advice.followUp && dataJson.advice.followUp.length > 0 && <p className={style.pushMessageTitle}><span>回访时间:<span className={style['bbtm']}>{dataJson.advice.followUp}</span> 后回访,不适随诊</span></p>}
-              {dataJson.advice.scheme && dataJson.advice.scheme.length > 0 && <p className={style.pushMessageTitle}><span>治疗方案</span></p>}
+              {adviceData&&adviceData.followUp && adviceData.followUp.length > 0 && <p className={style.pushMessageTitle}><span>回访时间:<span className={style['bbtm']}>{adviceData.followUp}</span> 后回访,不适随诊</span></p>}
+              {adviceData&&adviceData.scheme && adviceData.scheme.length > 0 && <p className={style.pushMessageTitle}><span>治疗方案</span></p>}
               {
-                dataJson.advice.scheme && dataJson.advice.scheme.map((item, index) => {
+                adviceData&&adviceData.scheme && adviceData.scheme.map((item, index) => {
                   return <p>{item.treatment.map((it, ii) => {
                     return (it.treatmentStr && it.treatmentStr.length > 0 ?
                       <div className={style.pushMessageDes}>{it.treatmentStr}</div> : '')
@@ -147,13 +150,13 @@ class PreviewBody extends Component {
                   })
               }
               {
-                dataJson.advice.adviceInput && <div className={style.pushMessageDes}>{dataJson.advice.adviceInput}</div>
+                adviceData&&adviceData.adviceInput && <div dangerouslySetInnerHTML={{__html: adviceData.adviceInput}} className={style.pushMessageDes}></div>
               }
             </td>
-          </tr> */}
+          </tr>
         </table>
         <p className={style.docName}>医生签名:<span>{baseObj ? baseObj.doctorName : (noData ? '' : preInfo.doctorName)}</span></p>
-        {showAssessBtn&&dataJson.haveAssess?<AssessResultHis showHistoryCases={showHistoryCases} inquiryId={baseObj&&baseObj.id} inquiryDate={baseObj&&baseObj.inquiryDate}></AssessResultHis>:""}
+        {showAssessBtn&&access?<AssessResultHis showHistoryCases={showHistoryCases} inquiryId={baseObj&&baseObj.id} inquiryDate={baseObj&&baseObj.inquiryDate}></AssessResultHis>:""}
         <div onClick={() => { this.surePrint(dataStr) }} className={style.printBtn} style={{
           display: show ? 'inline-block' : 'none',
         }}>打印</div>

+ 22 - 1
src/store/async-actions/historyTemplates.js

@@ -1,6 +1,7 @@
 import axios from '@utils/ajax';
-
+import { pushAllDataList } from '@utils/tools';
 import { initHistory } from '@store/actions/historyTemplates';
+import Notify from '@commonComp/Notify';
 import store from '@store';
 
 export const initItemList = (item) => {
@@ -27,6 +28,26 @@ export const initItemList = (item) => {
     }*/
     return axios.json('/inquiryInfo/hisInquirys',param);
 };
+export const getHistempDetail = (item) => {
+  const param = {
+      "inquiryId": item.id
+    }
+    return (dispatch) => {
+        axios.json('/inquiryInfo/getInquiryDetail',param).then((res)=>{
+            const data =res.data;
+            if(data.code == 0){
+                let tmpData = data.data
+                // let tmpList = tmpData.inquiryDetailList
+                // tmpData.detailList = tmpList
+                // console.log(tmpData)
+                pushAllDataList(item.sign,'push',tmpData,'history')       //引用                
+            }else{
+                console.log(data)
+                Notify.error(data.msg);
+            }
+        })
+    }
+};
 
 export function setInitHistory(data){
   return (dispatch) => {

+ 1 - 3
src/store/async-actions/print.js

@@ -36,8 +36,6 @@ export const saveMessage = (bool) => {
     otherData['pfix']=jsonStr.other?filterOtherDataArr(JSON.parse(jsonStr.other),jsonData.other):''
     pacsData.pacs = jsonData.pacs
     pacsData.checkedListImport = jsonData.checkedListImport
-    console.log(jsonData,787878787)
-    // return
     json('/inquiryInfo/saveInquiry', {
         "doctorId": state.doctorId,
         "hospitalDeptId": state.hospitalDeptId,
@@ -84,7 +82,7 @@ export const saveMessage = (bool) => {
         }, {
             "content": jsonStr.advice,
             "contentValue":jsonStr.advice,
-            "contentJson":'',
+            "contentJson":JSON.stringify(jsonData.advice),
             "type": 8
         }],
         "sign": whichSign, //类型0结构化 1文本

+ 1 - 1
src/store/async-actions/tabTemplate.js

@@ -153,7 +153,7 @@ export const changeTitleAsync = (obj) => { //改标题
         Notify.success('标题修改成功');
         store.dispatch(changeVisible(false))
       } else {
-        console.log(data)
+        // console.log(data)
         Notify.error(data.msg)
       }
     })

+ 0 - 1
src/store/reducers/tabTemplate.js

@@ -101,7 +101,6 @@ export default (state = initDataList, action) => {
       tempArr.splice(tempArr.findIndex(item => item === action.id), 1)
       newState.checkItems = [...tempArr]
     }
-    console.log(newState.checkItems)
     return newState;
   }
   if (action.type === KEEP_PUSH_DATA) {

+ 1 - 3
src/utils/tools.js

@@ -287,7 +287,6 @@ const pushAllDataList =(whichSign,action,reData,type) =>{           //回读清
           const oData = dataJson.other;
           const onlyOneText = oData.length==1&&oData[0].tagType==8&&!(oData[0].name||oData[0].value);
           if(type == 'template'){        //结构化模板回读
-            console.log(reData,1111111)
               let dataJsonStr = JSON.parse(reData.preview);
                 // console.log(dataJson,dataJsonStr,'结构化模板引用')
                 store.dispatch({
@@ -355,7 +354,7 @@ const pushAllDataList =(whichSign,action,reData,type) =>{           //回读清
             }else{    //结构化历史病历回读
                 /*let dataJson = JSON.parse(reData.dataJson);*/
                 let dataJsonStr = reData.detailList;
-              // console.log(dataJson,dataJsonStr,'结构化历史病历回读')
+              // console.log(dataJsonStr,'结构化历史病历回读')
                 // console.log(dataJson.mainSuitSelecteds,7887)
                 store.dispatch({
                     type: CLEAR_MAIN_SUIT,
@@ -568,7 +567,6 @@ function filterDataArr(arrTmp){   //数据处理
 //其他史预览数据处理-月经史
 function filterOtherDataArr(arrTmp,jsonArr){
   let tmpArr = [];
-  console.log(jsonArr,11111111)
   let index1 = jsonArr.findIndex((item)=>{
     return item.formulaCode=='yjs_1';
   });