Kaynağa Gözat

Merge branch 'ChronicMag' of http://192.168.2.236:10080/zhouna/newICSS into ChronicMag

Luolei 6 yıl önce
ebeveyn
işleme
0523358a9f

+ 21 - 18
src/components/DiagnosticItem/index.jsx

@@ -30,10 +30,10 @@ class DiagnosticItem extends Component{
         this.addDiagodal(diagType)
     }
     close(){
-            this.setState({
-                visible: false
-            })
-        }
+        this.setState({
+            visible: false
+        })
+    }
     chooseDiagodal(item) {
         const { diagnosticList,getTips } = this.props;
         getTips && getTips(item);
@@ -62,21 +62,23 @@ class DiagnosticItem extends Component{
                 //         return
                 //     }
                 // }
-                isChronicMag(item);
-                // 从缓存取慢病列表
-                let chronicList = JSON.parse(storageLocal.get('chronic'));
-                if(!chronicList){
-                    getChronic();
-                    chronicList = JSON.parse(storageLocal.get('chronic'));
-                }
-                console.log(999,chronicList)
-                for(let i=0; i<chronicList.length; i++){
-                    if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
-                        //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
-                        // 是--引用   否--走慢病流程
-                        console.log("是慢病!")
-                    }
+                if(item.type == 2) {
+                    isChronicMag(item);
                 }
+                // 从缓存取慢病列表
+                // let chronicList = JSON.parse(storageLocal.get('chronic'));
+                // if(!chronicList){
+                //     getChronic();
+                //     chronicList = JSON.parse(storageLocal.get('chronic'));
+                // }
+                // console.log(999,chronicList)
+                // for(let i=0; i<chronicList.length; i++){
+                //     if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
+                //         //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
+                //         // 是--引用   否--走慢病流程
+                //         console.log("是慢病!")
+                //     }
+                // }
                 addDiagnostic&&addDiagnostic(item);
                 clearInput&&clearInput();
                 hideSearch&&hideSearch()
@@ -96,6 +98,7 @@ class DiagnosticItem extends Component{
                     <ConfirmModal visible={visible} okText='初诊' cancelText='复诊' confirm={this.confirm}  cancel={this.cancel} close={this.close}>
                         <div className={style['confirm-info']}>确定选择“{item.name}”为</div> 
                     </ConfirmModal>
+                   
                 </span>)
     }
 }

+ 15 - 1
src/components/DiagnosticList/index.jsx

@@ -20,6 +20,8 @@ class DiagnosticList extends Component {
         this.close = this.close.bind(this);
         this.showTreat = this.showTreat.bind(this);
         this.handleClickDiag = this.handleClickDiag.bind(this);
+        this.referRecord = this.referRecord.bind(this);
+        this.noReferRecord = this.noReferRecord.bind(this);
     }
 
     componentWillReceiveProps(nextprops) {
@@ -75,10 +77,19 @@ class DiagnosticList extends Component {
         const { getTips } = this.props;
         getTips && getTips(item);
     }
+    referRecord() {
+        const { hideReferRecord } = this.props
+        hideReferRecord && hideReferRecord()
+    }
+    noReferRecord() {
+        const { hideReferRecord } = this.props
+        hideReferRecord && hideReferRecord()
+    }
+    
     
 
     render(){
-        const { list, treatment } = this.props
+        const { list, treatment, showReferRecord } = this.props
         const { visible, treatTitle } = this.state
         const lastIndex = list.length -1;
         return(
@@ -109,6 +120,9 @@ class DiagnosticList extends Component {
                                   >
                                   <div className={style['del-msg']}>是否删除该诊断?</div> 
                     </ConfirmModal>
+                    <ConfirmModal visible={showReferRecord} okText='是' cancelText='否' confirm={this.referRecord}  cancel={this.noReferRecord} close={this.noReferRecord}>
+                        <div className={style['confirm-info']}>是否引用往期病历</div> 
+                    </ConfirmModal>
                 </div>
                
             

+ 7 - 0
src/components/DiagnosticList/index.less

@@ -101,4 +101,11 @@
 .diag-up, .diag-down, .diag-del {
     width: 20px;
     margin-bottom: 4px;
+}
+.confirm-info {
+    height: 70px;
+    font-size: 16px;
+    line-height: 16px;
+    text-align: center;
+    padding: 10px 30px;
 }

+ 8 - 2
src/containers/DiagnosticList.js

@@ -1,7 +1,7 @@
 import React from 'react';
 import { connect } from 'react-redux';
 import DiagnosticList from '@components/DiagnosticList';
-import { ADD_DIAGNOSTIC,  DEL_DIAGNOSTIC, UP_DIAGNOSTIC, DOWN_DIAGNOSTIC, GET_DIAGNOSTIC_STR, GET_IS_FIRST } from '@store/types/diagnosticList'; 
+import { ADD_DIAGNOSTIC,  DEL_DIAGNOSTIC, UP_DIAGNOSTIC, DOWN_DIAGNOSTIC, GET_DIAGNOSTIC_STR, GET_IS_FIRST, HIDE_REFER_RECORD } from '@store/types/diagnosticList'; 
 import { getTreatResult } from '@store/async-actions/treat';
 import { SHOW_TREAT } from '../store/types/treat';
 import {billing, getTips} from '../store/async-actions/pushMessage';
@@ -13,7 +13,8 @@ function mapStateToProps(state) {
         list: state.diagnosticList.diagnosticList,
         treatment: state.treat.show,
         isFirst: state.diagnosticList.isFirst,
-        diagnosticStr: state.diagnosticList.diagnosticStr
+        diagnosticStr: state.diagnosticList.diagnosticStr,
+        showReferRecord: state.diagnosticList.showReferRecord,
     }
 }
 
@@ -62,6 +63,11 @@ function mapDispatchToProps(dispatch) {
         },
         getBilling: () => {
             dispatch(billing())
+        },
+        hideReferRecord: ()=>{
+            dispatch({
+                type: HIDE_REFER_RECORD
+            })
         }
     }
 }

+ 18 - 0
src/store/actions/diagnosticList.js

@@ -81,4 +81,22 @@ export const setClickDiag = (state, action) => {
     const res = Object.assign({}, state);
     res.clickDiag = action.clickDiag
     return res;
+}
+
+export const setChronicMagItem = (state, action) => {
+    const res = Object.assign({}, state);
+    res.chronicMagItem = action.chronicMagItem
+    return res;
+}
+
+export const showReferRecord = (state, action) => {
+    const res = Object.assign({}, state);
+    res.showReferRecord = true
+    return res;
+}
+
+export const hideReferRecord = (state, action) => {
+    const res = Object.assign({}, state);
+    res.showReferRecord = false
+    return res;
 }

+ 33 - 12
src/store/async-actions/diagnosticList.js

@@ -1,4 +1,4 @@
-import { SET_DIAG_TO_MAINSUIT } from '@store/types/diagnosticList';
+import { SET_DIAG_TO_MAINSUIT, SET_CHRONIC_MAG_ITEM, SHOW_REFER_RECORD } from '@store/types/diagnosticList';
 import {getAllDataList,getAllDataStringList,isAllClear,filterDataArr} from '@utils/tools';
 import {getChronic} from '@store/async-actions/homePage.js';
 import {storageLocal} from '@utils/tools'
@@ -38,21 +38,42 @@ export const isChronicMag = (item) => {
         let jsonStr = getAllDataStringList(state);
         let flg = isAllClear(jsonData,jsonStr,state);
         if(!flg) {
-            console.log('页面为空');
              // 从缓存取慢病列表
              let chronicList = JSON.parse(storageLocal.get('chronic'));
              if(!chronicList){
-                 getChronic();
-                 chronicList = JSON.parse(storageLocal.get('chronic'));
-             }
-             console.log(999,chronicList)
-             for(let i=0; i<chronicList.length; i++){
-                 if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
-                     //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
-                     // 是--引用   否--走慢病流程
-                     console.log("是慢病1111!")
-                 }
+                 getChronic().then(() =>{
+                    chronicList = JSON.parse(storageLocal.get('chronic'));
+                    for(let i=0; i<chronicList.length; i++){
+                        if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
+                            //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
+                            // 是--引用   否--走慢病流程
+                            dispatch({
+                                type: SET_CHRONIC_MAG_ITEM,
+                                chronicMagItem: item
+                            })
+                            dispatch({
+                                type: SHOW_REFER_RECORD
+                            })
+                        }
+                    }
+                 });
+             } else {
+                console.log(999,chronicList)
+                for(let i=0; i<chronicList.length; i++){
+                    if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
+                        //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
+                        // 是--引用   否--走慢病流程
+                        dispatch({
+                            type: SET_CHRONIC_MAG_ITEM,
+                            chronicMagItem: item
+                        })
+                        dispatch({
+                            type: SHOW_REFER_RECORD
+                        })
+                    }
+                }
              }
+             
         }
         
     }

+ 10 - 2
src/store/reducers/diagnosticList.js

@@ -1,5 +1,7 @@
-import { ADD_DIAGNOSTIC,  DEL_DIAGNOSTIC, UP_DIAGNOSTIC, DOWN_DIAGNOSTIC, SET_TREAT, GET_DIAGNOSTIC_STR, SET_DIAG_TO_MAINSUIT, GET_IS_FIRST,CLEAR_ALL_DIAG, SET_CLICK_DIAG ,CLEAR_DIAGNOSE} from '../types/diagnosticList';
-import { addDiagnostic,  delDiagnostic, upDiagnostic, downDiagnostic, setTreat, getDiagnosticStr, setDiagToMainSuit, getIsFirst,clearAllDiag, setClickDiag} from '../actions/diagnosticList';
+import { ADD_DIAGNOSTIC,  DEL_DIAGNOSTIC, UP_DIAGNOSTIC, DOWN_DIAGNOSTIC, SET_TREAT, GET_DIAGNOSTIC_STR, SET_DIAG_TO_MAINSUIT, 
+            GET_IS_FIRST,CLEAR_ALL_DIAG, SET_CLICK_DIAG ,CLEAR_DIAGNOSE, SET_CHRONIC_MAG_ITEM, SHOW_REFER_RECORD, HIDE_REFER_RECORD} from '../types/diagnosticList';
+import { addDiagnostic,  delDiagnostic, upDiagnostic, downDiagnostic, setTreat, getDiagnosticStr, setDiagToMainSuit, 
+        getIsFirst,clearAllDiag, setClickDiag, setChronicMagItem, showReferRecord, hideReferRecord} from '../actions/diagnosticList';
 
 const initState = {
     isFirst: true,
@@ -58,6 +60,12 @@ export default function (state=initState, action) {
             return clearAllDiag(state, action);
         case SET_CLICK_DIAG: 
             return setClickDiag(state, action);
+        case SET_CHRONIC_MAG_ITEM:
+            return setChronicMagItem(state, action);
+        case SHOW_REFER_RECORD: 
+            return showReferRecord(state, action);
+        case HIDE_REFER_RECORD: 
+        return hideReferRecord(state, action);
         case CLEAR_DIAGNOSE: 
             res.mainSuitStr = "";
             return res;

+ 6 - 1
src/store/types/diagnosticList.js

@@ -9,4 +9,9 @@ export const SET_DIAG_TO_MAINSUIT = 'SET_DIAG_TO_MAINSUIT'; //判断第一次添
 export const GET_IS_FIRST = 'GET_IS_FIRST'; //判断是否第一次添加诊断
 export const CLEAR_ALL_DIAG = 'CLEAR_ALL_DIAG'; //清除所有诊断
 export const SET_CLICK_DIAG = 'SET_CLICK_DIAG' //设置点击的诊断,获取提示详情时需要
-export const CLEAR_DIAGNOSE = 'CLEAR_DIAGNOSE' //
+export const CLEAR_DIAGNOSE = 'CLEAR_DIAGNOSE' //
+export const SET_CHRONIC_MAG_ITEM = 'SET_CHRONIC_MAG_ITEM'  //设置慢病信息
+export const SHOW_REFER_RECORD = 'SHOW_REFER_RECORD'  //显示引用历史病历弹窗
+export const HIDE_REFER_RECORD = 'HIDE_REFER_RECORD'  //隐藏引用历史病历弹窗
+
+