liucf 6 年 前
コミット
30e9cd0cf4

+ 3 - 1
src/components/AddAssistCheck/index.jsx

@@ -70,12 +70,14 @@ class AddAssistCheck extends React.Component {
       if (!_cons.is(event.target) && _cons.has(event.target).length === 0) { // Mark 1
         this.setState({ date: false });
       }
-      if(!event.target.isEqualNode(_close) && !event.target.isEqualNode(_del)  && event.target.parentNode != _del && !event.target.isEqualNode(_closeTil)){
+      if(_del){
+        if(!event.target.isEqualNode(_close) && !event.target.isEqualNode(_del)  && event.target.parentNode != _del && !event.target.isEqualNode(_closeTil)){
           this.setState({
             visible: false,
             id: null,
             activeName:''
           })
+        }
       }
     });
     this.getCurrentDate();

+ 4 - 1
src/components/AddInspect/index.jsx

@@ -101,11 +101,14 @@ class Inspect extends React.Component {
           this.setState({ showFill: false, date: false });
         }
       }
-      if(!event.target.isEqualNode(_impClose) && !event.target.isEqualNode(_addClose) && !event.target.isEqualNode(_del)  && event.target.parentNode != _del && !event.target.isEqualNode(_closeTil)){
+      
+      if(_del){
+        if(!event.target.isEqualNode(_impClose) && !event.target.isEqualNode(_addClose) && !event.target.isEqualNode(_del)  && event.target.parentNode != _del && !event.target.isEqualNode(_closeTil)){
           this.setState({
             id: null,
             impId: null
           })
+        }
       }
     });
     this.getCurrentDate();

+ 1 - 0
src/components/AddInspect/index.less

@@ -185,6 +185,7 @@
         z-index: 30;
         border-radius: 50%;
         background: @closeIcon;
+        // background: url('/img/close.png') no-repeat center center;
         background-size: 100% 100%;
         background-color: #fff;
     }

+ 28 - 7
src/components/MainSuit/index.jsx

@@ -8,6 +8,7 @@ import config from "@config/index";
 import {isIE,getPageCoordinate,windowEventHandler,filterDataArr,getAllDataList,getAllDataStringList,ifOtherClear} from "@utils/tools.js";
 import $ from 'jquery';
 import store from '@store';
+import {getFeature} from '@store/async-actions/fetchModules';
 
 class MainSuit extends Component{
   constructor(props){
@@ -208,23 +209,43 @@ class MainSuit extends Component{
     });
 
   }
+  //除主诉外 其他是否为空
+  ifClear(){
+    let baseList = store.getState();
+    let jsonData = getAllDataList(baseList);
+    let jsonStr = getAllDataStringList(baseList);
+    let flg = ifOtherClear(jsonData,jsonStr,baseList);
+    return flg;
+  }
 
   handleBlur(e){//隐藏常见症状下拉、存自由输入的值
     const {freeText,saveText,datas,clearSearch,getSymptomFeature,currentData,saveChronic} = this.props;
     const that = this;
     let data = this.state.inpText;
+    //分词-现病史没有模板的时候才去获取
+    if(currentData&&currentData.length==0){
+      const me = getFeature(e.target.innerText);
+      me.then((res)=>{
+        // console.log(222,res)
+        if(res.data.code==0){
+          const result = res.data.data;
+          getSymptomFeature && getSymptomFeature(result);
+          // 判断是否为慢病复诊-请求慢病模板
+          /*let flg = this.ifClear();
+          if(result.? && !flg){
+            saveChronic && saveChronic({name:'糖尿病',id:21773});
+          }*/
+        }
+      })
+    }
     if(!isIE()){
-      if(currentData&&currentData.length==0){//现病史没有模板的时候才去获取
+      /*if(currentData&&currentData.length==0){//现病史没有模板的时候才去获取
         getSymptomFeature && getSymptomFeature(e.target.innerText);
-      } 
+      } */
       e.target.innerText?(e.target.innerText=""):(e.target.innerHTML="")
       freeText && freeText(data.trim());
       // 慢病模板获取:精确匹配"糖尿病复诊",储存慢病字段
-      // 页面有模板数据 就不在请求
-      let baseList = store.getState();
-      let jsonData = getAllDataList(baseList);
-      let jsonStr = getAllDataStringList(baseList);
-      let flg = ifOtherClear(jsonData,jsonStr,baseList);//除主诉外 其他是否为空
+      let flg = this.ifClear();
       if((data.trim()=='糖尿病复诊'||data.trim()=='糖尿病(复诊)'||data.trim()=='糖尿病(复诊)') && !flg){
         saveChronic && saveChronic({name:'糖尿病',id:21773});
       }

+ 3 - 4
src/components/ScaleTable/index.jsx

@@ -21,8 +21,7 @@ class ScaleTable extends React.Component{
       valueData:{},
       start:false,   //点击计算
       scaleResult1:null,
-      result:{},
-      saveFlag:false
+      result:{}
     }
     this.handleFormula = this.handleFormula.bind(this);
   }
@@ -228,7 +227,7 @@ class ScaleTable extends React.Component{
   }
   componentWillReceiveProps(nextProps){
     const {tableId,saveScaleData,getResult,closeTable,scaleInfo,unscroeClose} = this.props;
-    const {valueData,saveFlag} = this.state;
+    const {valueData} = this.state;
     const data = nextProps.scaleInfo;
     // if(JSON.stringify(data) !== '{}' && data[tableId]){
     if(JSON.stringify(data) !== '{}' && data[tableId] && JSON.stringify(valueData) == '{}'){
@@ -289,7 +288,7 @@ class ScaleTable extends React.Component{
   componentWillUnmount(){
     // 储存计算结果和选择后的data
     const {tableId,getResult,scaleInfo,saveScaleData,formulaResult,comfirnFlag,flagT} = this.props;
-    const {valueData,scaleResult1,start,saveFlag} = this.state;
+    const {valueData,scaleResult1,start} = this.state;
     // 替换表格内容--1)没有点计算且没有计算结果;2)点了计算
     const scaleResult = scaleResult1 || formulaResult&&formulaResult[tableId]; //量表计算结果
     if(start || !scaleResult && valueData.scaleType==1){//仅计分量表储存

+ 7 - 1
src/containers/MainSuit.js

@@ -174,7 +174,7 @@ function mapDispatchToProps(dispatch) {
           dis:0
         })
       },
-      async getSymptomFeature(item){
+      /*async getSymptomFeature(item){
         const it = item&&item.trim();
         const symptomFeature = await getFeature(it);
         if(symptomFeature.data.code==0){
@@ -184,6 +184,12 @@ function mapDispatchToProps(dispatch) {
             data:data
           })
         }
+      },*/
+      getSymptomFeature(data){
+        dispatch({
+          type:SET_FEATURE,
+          data:data
+        })
       },
       async saveChronic(item){//储存慢病信息
         // loading

+ 1 - 1
src/containers/ScaleSearchContainer.js

@@ -10,7 +10,7 @@ function mapStateToProps(state) {
     return{
         searchResult: state.scaleSearch.searchResult,
         formulaResult: pushMessage.formulaResult,//????????
-        scaleInfo: pushMessage.scaleInfo,//��������
+        scaleInfo: pushMessage.scaleInfo,//量表内容
     }
 }