TmtDate.js 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import React from "react";
  2. import DatePicker from "react-datepicker";
  3. import "react-datepicker/dist/react-datepicker.css";
  4. import FormGroup from "reactstrap/lib/FormGroup";
  5. import ms from "ms";
  6. import { Component } from "react";
  7. import { addDays, addMonths } from 'date-fns';
  8. class TmtDate extends Component {
  9. constructor(props) {
  10. super(props);
  11. const tmt_awal = new Date();
  12. this.state = {
  13. startDay: tmt_awal,
  14. maxDay: "",
  15. isiTmt: "",
  16. awalsanksi: "",
  17. akhirsanksi: "",
  18. };
  19. }
  20. handleAwalSanksi = (awalsanksi) => {
  21. this.setState({ awalsanksi });
  22. // this.props.setUploadSuratSanksi(this.state);
  23. };
  24. handleAkhirSanksi = (akhirsanksi) => {
  25. this.setState({ akhirsanksi });
  26. // this.props.setUploadSuratSanksi(this.state);
  27. };
  28. render() {
  29. return (
  30. <div>
  31. <FormGroup row className="mt-3">
  32. <label className="col-md-2 col-form-label">Isi TMT</label>
  33. <span className="col-sm-3 float-left">
  34. <DatePicker
  35. selected={this.state.awalsanksi}
  36. onChange={(e) => {
  37. this.handleAwalSanksi(e);
  38. // this.props.setTmt({ startDate: this.state.awalsanksi, endDate: this.state.akhirsanksi });
  39. }}
  40. selectsStart
  41. startDate={this.state.awalsanksi}
  42. dateFormat="dd/MM/yyyy"
  43. maxDate={this.state.startDay}
  44. placeholderText="Dari Tanggal"
  45. showDisabledMonthNavigation
  46. />
  47. </span>
  48. <span className="col-sm-3 float-right">
  49. <DatePicker
  50. selected={this.state.akhirsanksi}
  51. onChange={(e) => {
  52. this.handleAkhirSanksi(e);
  53. // this.props.setTmt({ startDate: this.state.awalsanksi, endDate: this.state.akhirsanksi });
  54. }}
  55. selectsEnd
  56. endDate={this.state.akhirsanksi}
  57. dateFormat="dd/MM/yyyy"
  58. minDate={this.state.awalsanksi}
  59. maxDate={addMonths(new Date(this.state.awalsanksi), 6)}
  60. placeholderText="Sampai tanggal"
  61. showDisabledMonthNavigation
  62. />
  63. </span>
  64. </FormGroup>
  65. <FormGroup row className="mt-1">
  66. <label className="col-md-2 col-form-label">TMT berlaku</label>
  67. <div className="col-md-10 mt-2">
  68. <b>{this.state.awalsanksi ? moment(this.state.awalsanksi).format("DD-MM-YYYY") : "-"}</b> hingga <b>{this.state.akhirsanksi ? moment(this.state.akhirsanksi).format("DD-MM-YYYY") : "-"}</b>
  69. </div>
  70. </FormGroup>
  71. </div>
  72. );
  73. }
  74. }
  75. export default TmtDate;