MultSpread.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. import React from 'react';
  2. import {connect} from 'react-redux';
  3. import MultSpread from "@components/MultSpread";
  4. import {SETSELECTED,CLEARSELECTED,CONFIRMSELECTED,CHANGEOTHERTEXTLABEL,OTHERADDLABELITEM} from '@types/otherHistory';
  5. import {CHANGECHECKTEXTLABEL,ADDLABELITEM} from '@types/checkBody.js';
  6. import {CHANGE_LABELVAL,MAINADDLABELITEM} from '@store/types/mainSuit.js';
  7. import {CURRENTADDLABELITEM,CURRENT_TEXT_LABEL} from '@store/types/currentIll.js';
  8. import {HIDE,RESET,CLICKCOUNT,SETADDITEMINIT,ISREAD} from '@store/types/homePage.js';
  9. function mapStateToProps(state){
  10. return {}
  11. }
  12. const typeObj={
  13. 1:MAINADDLABELITEM,
  14. 2:CURRENTADDLABELITEM,
  15. 3:OTHERADDLABELITEM,
  16. 4:ADDLABELITEM
  17. };
  18. const getCopyData = (copyId,inx,boxMark)=>{
  19. return (dispatch,getStore)=>{
  20. const state = getStore();
  21. const copy = state.homePage.addItems[copyId];
  22. dispatch({
  23. type:typeObj[+boxMark],
  24. data:JSON.stringify(copy),
  25. i:inx
  26. });
  27. //自由文本组件更新
  28. dispatch({
  29. type:ISREAD
  30. })
  31. }
  32. };
  33. /**************************双击标签输入*********************************/
  34. const editTypes={
  35. 1:CHANGE_LABELVAL, //主诉
  36. 2:CURRENT_TEXT_LABEL, //现病史
  37. 3:CHANGEOTHERTEXTLABEL, //其他史
  38. 4:CHANGECHECKTEXTLABEL //查体
  39. };
  40. function mapDispatchToProps(dispatch){
  41. return {
  42. resetHide(){
  43. dispatch({
  44. type: RESET
  45. })
  46. },
  47. handleDbclick(obj){
  48. dispatch({
  49. type:CLICKCOUNT,
  50. data:obj,
  51. clickType:'双击',
  52. num:1
  53. });
  54. },
  55. saveAddItem(id,data){ //保存有加号的标签原始数据
  56. dispatch({
  57. type:SETADDITEMINIT,
  58. id,
  59. data
  60. });
  61. },
  62. addLabelItem(param){
  63. const {copyId,ikey} = param;
  64. const boxMark = ikey.substr(0,1);
  65. const inx = ikey.split("-")[1];
  66. //埋点记录
  67. dispatch({
  68. type:CLICKCOUNT,
  69. data:{id:copyId,isAddIcon:true},
  70. clickType:'单击',
  71. num:1
  72. });
  73. dispatch(getCopyData(copyId,inx,boxMark));
  74. },
  75. saveEditText(params){
  76. const {type} = params;
  77. const index = params.ikey;
  78. let ikey = index.split("-")[1];
  79. const {changeVal,totalVal} = params;
  80. dispatch({
  81. type:editTypes[+type],
  82. data:{changeVal:changeVal,ikey:ikey,totalVal}
  83. });
  84. },
  85. handleClick(obj){
  86. dispatch({
  87. type:CLICKCOUNT,
  88. data:obj,
  89. clickType:'单击',
  90. num:1
  91. });
  92. }
  93. /*handleConfirm(checks,key){
  94. dispatch({
  95. type: CONFIRMSELECTED,
  96. checks,
  97. key
  98. })
  99. }*/
  100. }
  101. }
  102. const MultSpreadCont = connect(mapStateToProps,mapDispatchToProps)(MultSpread);
  103. export default MultSpreadCont;