You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

71 lines
2.7 KiB

  1. import React from "react";
  2. import classNames from "classnames";
  3. import { makeStyles } from "@material-ui/core/styles";
  4. import Select from 'react-select';
  5. import Button from "components/CustomButtons/Button.js";
  6. import Icon from "@material-ui/core/Icon";
  7. import styles from "assets/jss/nextjs-material-kit/pages/componentsSections/notificationsStyles.js";
  8. import Card from "components/Card/Card.js";
  9. import CardBody from "components/Card/CardBody.js";
  10. import GridContainer from "components/Grid/GridContainer.js";
  11. import GridItem from "components/Grid/GridItem.js";
  12. const useStyles = makeStyles(styles);
  13. const DataYGP = function ({ selected,handleName, backend, ygp, ...props }) {
  14. const classes = useStyles();
  15. const { ...rest } = props;
  16. const imageClasses = classNames(
  17. classes.imgRaised,
  18. classes.imgRoundedCircle,
  19. classes.imgFluid
  20. );
  21. const navImageClasses = classNames(classes.imgRounded, classes.imgGallery);
  22. const ProductYGP = ygp.map((data) => {
  23. return (
  24. <div style={{padding:"40px"}}>
  25. <img
  26. alt="..."
  27. style={{ height: "150px", display: "block" }}
  28. src={`${backend}${data.img["url"]}`}
  29. className={navImageClasses}
  30. />
  31. <div align="center">
  32. <h3>{data.name}</h3>
  33. <h4>Rp.{data.price}</h4>
  34. <Button color="info" round href={"/product/ygp_details?s="+data.id}>
  35. <Icon className={classes.icons}>open_in_new</Icon>Detail Product
  36. </Button>
  37. </div>
  38. </div>
  39. );
  40. })
  41. return (
  42. <div>
  43. <Card className={classes.textCenter} align="center" style={{padding:"5px"}}>
  44. <CardBody>
  45. <div align="center" style={{marginTop:"-50px"}}>
  46. <h2>Yamaha Geniue Part</h2>
  47. <Select
  48. value={(selected)?ygp.filter((i)=>i.id==selected):null}
  49. getOptionLabel={option => `${option.name} ${option.part_code}`}
  50. getOptionValue={option => option.id}
  51. options={ygp}
  52. isMulti
  53. instanceId="name"
  54. placeholder="filter by Nama Part"
  55. onChange={values => handleName(values)}
  56. />
  57. <br></br>
  58. <GridContainer justify="center" style={{padding:"40px", marginTop:"-50px"}}>
  59. {ProductYGP}
  60. </GridContainer>
  61. </div>
  62. </CardBody>
  63. </Card>
  64. </div>
  65. );
  66. }
  67. export default DataYGP;