mainSuit.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. import {COMM_SYMPTOMS,CLEAR_COMSYMPTOMS,SHOW_TAIL,INSERT_MAIN,
  2. SET_SEARCH,CLEAR_SEARCH,GET_BIGDATAPUSH,SET_MAINSUIT,MIX_CONFIRM,NUMBER_SELECT,
  3. RADIO_SELECT,COMM_CONFIRM,CHANGE_LABELVAL,SAVE_FREE,CLEAR_MAIN_SUIT,SET_DATA,
  4. INSERT_SEARCH,MAIN_FOCUS_INDEX,SETTEXTMODEVALUE,SETMAINTEXT,MAINADDLABELITEM,SETMAININPUT,DEL_MAIN,CHANGE_LABELVAL_NUMBER,
  5. REMOVE_MAIN_ID,MAINSUIT_MUL,DEL_MAIN_LABLE,SET_FEATURE,SET_MS_RADIO_INPUT_VAL} from '../types/mainSuit'
  6. import {getCommSymptoms,handleTailClick,insertMain,setSearch,getBigSymptom,setMainMoudle,confirm,
  7. setNumberValue,setRadioValue,commConfirm,changeLabelVal,saveFreeVal,clearMainSuit,insertSearch,setTextModeValue,setCheckText,
  8. addLabelItem,setInputLabel,backspaceText,changeNumLabelVal,removeId,multipleComfirn,delSingleLable,
  9. getSymptomFeature,setRadioInputValue} from '../actions/mainSuit'
  10. const initState = {
  11. showDrop:false,
  12. CommonSymptoms:[],//常见症状
  13. searchDatas:[],//搜索结果
  14. bigDataSymptom:[],//大数据推送症状
  15. moduleData:[],//主诉模板
  16. addSmoduleData:[],//添加病情变化模板
  17. data:[],//主诉使用的模板数据
  18. saveText:[],//主诉框内的值
  19. selecteds:[],
  20. moduleNum:{num:0},//点了几次添加病情变化
  21. focusIndex:'',
  22. mainIds:[], //选中的主症状和伴随的id(搜索去重)
  23. editClear:true,
  24. symptomFeature:{//分词
  25. featureData:[],
  26. refresh:false //用于数据更新
  27. }
  28. }
  29. export default function(state=initState,action){
  30. const res = Object.assign({},state);
  31. switch (action.type){
  32. case SET_MAINSUIT://主诉模板
  33. return setMainMoudle(state,action);
  34. case SET_DATA://主诉使用模板
  35. // res.data = res.moduleData.concat();
  36. res.data = JSON.parse(JSON.stringify(res.moduleData));
  37. res.update=Math.random();
  38. return res;
  39. // return setMainData(state,action);
  40. case COMM_SYMPTOMS:
  41. return getCommSymptoms(state,action);
  42. case CLEAR_COMSYMPTOMS://清空常见症状
  43. // return clearCommSymptoms(state,action);
  44. res.CommonSymptoms = [];
  45. return res;
  46. case GET_BIGDATAPUSH://大数据推送症状
  47. return getBigSymptom(state,action);
  48. case SHOW_TAIL://显示标签尾巴
  49. return handleTailClick(state,action);
  50. case INSERT_MAIN://插入选中的常见症状
  51. return insertMain(state,action);
  52. case COMM_CONFIRM://普通多选框确定事件
  53. return commConfirm(state,action);
  54. case MIX_CONFIRM://有伴 多选框确定事件
  55. return confirm(state,action);
  56. case SET_SEARCH:
  57. return setSearch(state,action);
  58. case INSERT_SEARCH:
  59. return insertSearch(state,action);
  60. case CLEAR_SEARCH://清空搜索结果
  61. res.searchDatas = [];
  62. return res;
  63. case NUMBER_SELECT://数字键盘选中的值处理
  64. return setNumberValue(state,action);
  65. case RADIO_SELECT://单选选中的值处理
  66. return setRadioValue(state,action);
  67. case CHANGE_LABELVAL://改变标签值
  68. return changeLabelVal(state,action);
  69. case CHANGE_LABELVAL_NUMBER://数字标签输入值
  70. return changeNumLabelVal(state,action);
  71. case SAVE_FREE://自由输入
  72. return saveFreeVal(state,action);
  73. case MAIN_FOCUS_INDEX:
  74. res.focusIndex = action.index;
  75. res.span = action.$span;
  76. return res;
  77. case CLEAR_MAIN_SUIT://清除数据
  78. return clearMainSuit(state,action);
  79. case SETTEXTMODEVALUE:
  80. return setTextModeValue(state,action);
  81. case SETMAINTEXT:
  82. return setCheckText(state,action);
  83. case MAINADDLABELITEM:
  84. return addLabelItem(state,action);
  85. case SETMAININPUT:
  86. return setInputLabel(state,action);
  87. case DEL_MAIN:
  88. return backspaceText(state,action);
  89. case REMOVE_MAIN_ID:
  90. return removeId(state,action);
  91. case MAINSUIT_MUL://单列多选
  92. return multipleComfirn(state,action);
  93. case DEL_MAIN_LABLE://单独删除标签
  94. return delSingleLable(state,action);
  95. case SET_FEATURE://主诉分词
  96. return getSymptomFeature(state,action);
  97. case SET_MS_RADIO_INPUT_VAL:
  98. return setRadioInputValue(state,action);
  99. default:
  100. return state;
  101. }
  102. }