diagnosticList.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import { SET_DIAG_TO_MAINSUIT, SET_CHRONIC_MAG_ITEM, SHOW_REFER_RECORD } from '@store/types/diagnosticList';
  2. import {getAllDataList,getAllDataStringList,isAllClear,filterDataArr} from '@utils/tools';
  3. import {getChronic} from '@store/async-actions/homePage.js';
  4. import {storageLocal} from '@utils/tools'
  5. import { SAVE_FREE } from '@store/types/mainSuit';
  6. import {ISREAD} from "../types/homePage";
  7. export const isAddMainSuit = () =>{
  8. return (dispatch, getState) => {
  9. const state = getState();
  10. if(state.diagnosticList.diagnosticList.length === 1 && state.diagnosticList.diagnosticList[0].type === 2) {
  11. const isAddMainSuitFlag = state.mainSuit.data && state.mainSuit.data.length === 0 && state.mainSuit.saveText //判断主诉和化验查体是否为空
  12. && (state.mainSuit.saveText.length === 0 || state.mainSuit.saveText.length === 1
  13. && state.mainSuit.saveText[0] === '') && state.assistCheck && state.assistCheck.dataString.length === 0
  14. && state.inspect.labelList && state.inspect.labelList.length === 0 && state.inspect.inspectStrPlus.length === 0
  15. if(isAddMainSuitFlag) {
  16. dispatch({
  17. type:ISREAD
  18. });
  19. dispatch({
  20. type: SET_DIAG_TO_MAINSUIT,
  21. data: state.diagnosticList.diagnosticStr
  22. })
  23. dispatch({
  24. type: SAVE_FREE,
  25. data:state.diagnosticList.diagnosticStr
  26. })
  27. }
  28. }
  29. }
  30. }
  31. export const isChronicMag = (item) => {
  32. return (dispatch, getState) => {
  33. const state = getState();
  34. let jsonData = getAllDataList(state);
  35. let jsonStr = getAllDataStringList(state);
  36. let flg = isAllClear(jsonData,jsonStr,state);
  37. if(!flg) {
  38. // 从缓存取慢病列表
  39. let chronicList = JSON.parse(storageLocal.get('chronic'));
  40. if(!chronicList){
  41. getChronic().then(() =>{
  42. chronicList = JSON.parse(storageLocal.get('chronic'));
  43. for(let i=0; i<chronicList.length; i++){
  44. if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
  45. //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
  46. // 是--引用 否--走慢病流程
  47. dispatch({
  48. type: SET_CHRONIC_MAG_ITEM,
  49. chronicMagItem: item
  50. })
  51. dispatch({
  52. type: SHOW_REFER_RECORD
  53. })
  54. }
  55. }
  56. });
  57. } else {
  58. console.log(999,chronicList)
  59. for(let i=0; i<chronicList.length; i++){
  60. if(chronicList[i].id==item.id&&chronicList[i].name==item.name){
  61. //弹窗提示 “是否引用往期病例”?--往期病例接口、弹窗、引用
  62. // 是--引用 否--走慢病流程
  63. dispatch({
  64. type: SET_CHRONIC_MAG_ITEM,
  65. chronicMagItem: item
  66. })
  67. dispatch({
  68. type: SHOW_REFER_RECORD
  69. })
  70. }
  71. }
  72. }
  73. }
  74. }
  75. }