Admin.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. import React from 'react';
  2. import {connect} from 'react-redux'
  3. import {Link} from 'react-router-dom'
  4. import {Switch, Route} from "react-router-dom";
  5. import {
  6. setSheduleDoctor,
  7. postShedule,
  8. changeInputValueDoctorForm,
  9. changeInputValueServiceForm,
  10. postDoctors,
  11. changeSelectedDoctorId,
  12. changeSelectedServiceId,
  13. putDoctors,
  14. deleteDoctors,
  15. postServices,
  16. putServices,
  17. deleteServices
  18. } from "../../actions/actions";
  19. import Shedule from './Shedule'
  20. import ChangeServicesDoctors from './ChangeServices-Doctors'
  21. export class Admin extends React.Component {
  22. render() {
  23. const {
  24. doctors,
  25. services,
  26. postNewShedule,
  27. postNewDoctor,
  28. postNewService,
  29. changeDoctorId,
  30. changeServiceId
  31. } = this.props.app;
  32. const {
  33. setSheduleDoctor,
  34. postShedule,
  35. changeInputValueDoctorForm,
  36. changeInputValueServiceForm,
  37. postDoctors,
  38. changeSelectedDoctorId,
  39. changeSelectedServiceId,
  40. putDoctors,
  41. deleteDoctors,
  42. putServices,
  43. deleteServices,
  44. postServices
  45. } = this.props;
  46. return (
  47. <div className="main">
  48. <div className="info-wrap">
  49. <div className = " btn-box">
  50. <Link to='/admin/change-shedule' className = "btn link admin">Shedule</Link>
  51. <Link to='/admin/change-doctors' className = "btn link admin">Doctors</Link>
  52. <Link to='/admin/change-services' className = "btn link admin">Services</Link>
  53. </div>
  54. <Switch>
  55. <Route path='/admin/change-shedule' render={() => <Shedule
  56. doctors={doctors}
  57. postNewShedule={postNewShedule}
  58. setSheduleDoctor={setSheduleDoctor}
  59. postShedule={postShedule}
  60. />} />
  61. <Route path='/admin/change-doctors' render={() => <ChangeServicesDoctors
  62. data={doctors}
  63. itemId={changeDoctorId}
  64. changeId={changeSelectedDoctorId}
  65. form={postNewDoctor}
  66. postItem={postDoctors}
  67. putItem={putDoctors}
  68. deleteItem={deleteDoctors}
  69. changeInputValues={changeInputValueDoctorForm}
  70. />} />
  71. <Route path='/admin/change-services' render={() => <ChangeServicesDoctors
  72. data={services}
  73. itemId={changeServiceId}
  74. changeId={changeSelectedServiceId}
  75. form={postNewService}
  76. postItem={postServices}
  77. putItem={putServices}
  78. deleteItem={deleteServices}
  79. changeInputValues={changeInputValueServiceForm}
  80. />} />
  81. </Switch>
  82. </div>
  83. </div>
  84. );
  85. }
  86. }
  87. const mapStateToProps = state => {
  88. return {
  89. app:state.app,
  90. }
  91. };
  92. const mapDispatchToProps = {
  93. setSheduleDoctor,
  94. postShedule,
  95. changeInputValueDoctorForm,
  96. changeInputValueServiceForm,
  97. postDoctors,
  98. changeSelectedDoctorId,
  99. changeSelectedServiceId,
  100. putDoctors,
  101. deleteDoctors,
  102. postServices,
  103. putServices,
  104. deleteServices
  105. };
  106. export default connect (mapStateToProps,mapDispatchToProps)(Admin)