otherHistory.js 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. import {RECOVER_TAG_OTHER,SETDATA,CONFIRMSELECTED,SETRADIO,SETNUMBER,SETOTHERCHECKBOX,SETOTHERTEXT,SETOTHERSEARCHDATA,
  2. SELECTOTHERSEARCHDATA,CLEAROTHERHISTORY,CHANGEOTHERTEXTLABEL,SETOTHERINPUT,SETTEXTMODEVALUE,OTHER_FOCUS_INDEX,OTHERHIS_CLEAR,
  3. OTHERADDLABELITEM,OTHEREDICLEAR,DEL_OTHERHIS,OTHERHIS_MUL,REMOVE_OTHER_ID,DEL_OTHERHIS_LABLE,SET_OT_RADIO_INPUT_VAL} from '../types/otherHistory';
  4. import {recoveTag,confirm,setCheckBoxValue,setCheckText,setSearchData,insertLabelData,clearOtherHistory,
  5. changeTextLabel,setTextModeValue,addLabelItem,setNumberValue,otherEditClear,backspaceText,multipleComfirn,
  6. removeId,delSingleLable} from '../actions/otherHistory';
  7. import {setRadioInputValue,setRadioValue,setInputLabel} from '@utils/utils';
  8. import config from '@config/index';
  9. const block = Object.assign(JSON.parse(config.textLabel),{full:true});//空白时保留一个自由文本标签
  10. const initState = {
  11. data:[block],
  12. isEmpty:true,
  13. saveText:[],
  14. selecteds:[],
  15. deledTags:{},
  16. focusIndex:'',
  17. editClear:true};
  18. export default function(state=initState,action){//console.log(state)
  19. const res = Object.assign({},state);
  20. switch (action.type){
  21. case SETDATA:
  22. res.data = action.data;
  23. res.selecteds = action.selecteds||[];
  24. const period = action.period;
  25. if(period){
  26. res.yjs_1=period.yjs_1;
  27. res.yjs_2=period.yjs_2;
  28. res.yjs_3=period.yjs_3;
  29. res.yjs_4=period.yjs_4;
  30. }
  31. res.saveText = action.save||[];
  32. res.isEmpty = action.isEmpty;
  33. return res;
  34. case SETRADIO:
  35. return setRadioValue(state,action);
  36. case SETNUMBER:
  37. return setNumberValue(state,action);
  38. case CONFIRMSELECTED:
  39. return confirm(state,action);
  40. case SETOTHERTEXT:
  41. return setCheckText(state,action);
  42. case SETOTHERSEARCHDATA:
  43. return setSearchData(state,action);
  44. case SETOTHERCHECKBOX:
  45. return setCheckBoxValue(state,action);
  46. case SELECTOTHERSEARCHDATA:
  47. return insertLabelData(state,action);
  48. case CLEAROTHERHISTORY:
  49. return clearOtherHistory(state,action);
  50. case CHANGEOTHERTEXTLABEL:
  51. return changeTextLabel(state,action);
  52. case SETOTHERINPUT:
  53. return setInputLabel(state,action);
  54. case SETTEXTMODEVALUE:
  55. return setTextModeValue(state,action);
  56. case OTHERADDLABELITEM:
  57. return addLabelItem(state,action);
  58. case OTHER_FOCUS_INDEX:
  59. res.focusIndex = action.index;
  60. res.span = action.$span;
  61. case OTHERHIS_CLEAR:
  62. res.searchData = [];
  63. return res;
  64. case OTHEREDICLEAR:
  65. return otherEditClear(state,action);
  66. case DEL_OTHERHIS:
  67. return backspaceText(state,action);
  68. case OTHERHIS_MUL:
  69. return multipleComfirn(state,action);
  70. case REMOVE_OTHER_ID:
  71. return removeId(state,action);
  72. case DEL_OTHERHIS_LABLE:
  73. return delSingleLable(state,action);
  74. case SET_OT_RADIO_INPUT_VAL:
  75. return setRadioInputValue(state,action);
  76. case RECOVER_TAG_OTHER:
  77. return recoveTag(state,action);
  78. default:
  79. return res;
  80. }
  81. }