MultSpread.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  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} 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. function mainSuitLabel(dispatch,params){
  35. const index = params.ikey;
  36. let ikey = index.substr(1);
  37. const {changeVal,totalVal} = params;
  38. dispatch({
  39. type:CHANGE_LABELVAL,
  40. data:{changeVal:changeVal,ikey:ikey,totalVal}
  41. })
  42. }
  43. //其他史
  44. function otherHisLabelEdit(dispatch,params){
  45. const index = params.ikey;
  46. const {changeVal,totalVal} = params;
  47. let ikey = index.substr(1);
  48. dispatch({
  49. type:CHANGEOTHERTEXTLABEL,
  50. data:{changeVal:changeVal,ikey:ikey,totalVal}
  51. })
  52. }
  53. //查体
  54. function checkBodyLabelEdit(dispatch,params){
  55. const index = params.ikey;
  56. let ikey = index.substr(1);
  57. const {changeVal,totalVal} = params;
  58. dispatch({
  59. type:CHANGECHECKTEXTLABEL,
  60. data:{changeVal:changeVal,ikey:ikey,totalVal}
  61. })
  62. }
  63. function mapDispatchToProps(dispatch){
  64. return {
  65. resetHide(){
  66. dispatch({
  67. type: RESET
  68. })
  69. },
  70. handleDbclick(obj){
  71. dispatch({
  72. type:CLICKCOUNT,
  73. data:obj,
  74. clickType:'双击',
  75. num:1
  76. });
  77. },
  78. saveAddItem(id,data){ //保存有加号的标签原始数据
  79. dispatch({
  80. type: SETADDITEMINIT,
  81. id,
  82. data
  83. });
  84. },
  85. addLabelItem(param){
  86. const {copyId,ikey} = param;
  87. const boxMark = ikey.substr(0,1);
  88. const inx = ikey.substr(1);
  89. //埋点记录
  90. dispatch({
  91. type:CLICKCOUNT,
  92. data:{id:copyId,isAddIcon:true},
  93. clickType:'单击',
  94. num:1
  95. });
  96. dispatch(getCopyData(copyId,inx,boxMark));
  97. },
  98. saveEditText(params){
  99. const {type} = params;
  100. switch (+type){
  101. case 1:
  102. mainSuitLabel(dispatch,params);
  103. break;
  104. case 2:
  105. break;
  106. case 3:
  107. otherHisLabelEdit(dispatch,params);
  108. break;
  109. case 4:
  110. checkBodyLabelEdit(dispatch,params);
  111. break;
  112. default:
  113. }
  114. },
  115. handleClick(obj){
  116. dispatch({
  117. type:CLICKCOUNT,
  118. data:obj,
  119. clickType:'单击',
  120. num:1
  121. });
  122. }
  123. /*handleConfirm(checks,key){
  124. dispatch({
  125. type: CONFIRMSELECTED,
  126. checks,
  127. key
  128. })
  129. }*/
  130. }
  131. }
  132. const MultSpreadCont = connect(mapStateToProps,mapDispatchToProps)(MultSpread);
  133. export default MultSpreadCont;