TypeConfigContainer.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import React from "react";
  2. import { connect } from "react-redux";
  3. import Banner from "../components/Banner";
  4. import { SHOW_CONFIG_MODAL, CLOSE_CONFIG_MODAL, CHANGE_TYPE, CONFIRM_TYPE } from "../store/types/typeConfig";
  5. import {saveMode} from '@store/async-actions/fetchModules';
  6. import config from "@config/index";
  7. import {Notify} from '@commonComp';
  8. function mapStateToProps(state) {
  9. return {
  10. typeConfig:state.typeConfig.typeConfig||config.defaultValue.mode,
  11. visible:state.typeConfig.visible
  12. };
  13. }
  14. function mapDispatchToProps(dispatch) {
  15. return {
  16. showConfigModal: () => {
  17. dispatch({type: SHOW_CONFIG_MODAL})
  18. },
  19. closeConfigModal: () => {
  20. dispatch({type: CLOSE_CONFIG_MODAL})
  21. },
  22. changeType: typeConfig => {
  23. dispatch({type: CHANGE_TYPE, typeConfig})
  24. },
  25. confirmType: confirmType => {
  26. //保存模式切换结果
  27. dispatch(saveMode(confirmType)).then((res)=>{
  28. if(res.data.code=='0'&&res.data.data){
  29. //切换后只会影响下一个点的模块(主诉、现病史、其他史)是否有模板
  30. dispatch({type: CONFIRM_TYPE, confirmType});
  31. Notify.success("模式切换成功");
  32. }else{
  33. Notify.error(res.data.msg+",请稍后再试");
  34. }
  35. });
  36. }
  37. };
  38. }
  39. const BannerContainer = connect(
  40. mapStateToProps,
  41. mapDispatchToProps
  42. )(Banner);
  43. export default BannerContainer;