Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. /* eslint-disable no-unused-vars */
  2. import React, { Component } from 'react';
  3. import { Card, CardHeader, ListGroup, ListGroupItem } from 'reactstrap';
  4.  
  5. import TicketCard from '../ticketCard/TicketCard';
  6. import './ListCardTickets.scss';
  7.  
  8. import axios from 'axios';
  9.  
  10. class ListCardTickets extends Component {
  11. constructor(props) {
  12. super(props);
  13.  
  14. this.state = {
  15. tickets: []
  16. };
  17. }
  18.  
  19. render() {
  20. return (
  21. <div>
  22. <Card style={{ width: '200%' }}>
  23. <CardHeader className={'cstm-card-header'}>All Tickets</CardHeader>
  24. <ListGroup variant="flush">
  25. {this.state.tickets.map((value) => {
  26. return <ListGroupItem className={'cstm-list-item'}><TicketCard id={value.id} name={value.name} states={value.states} /></ListGroupItem>;
  27. })}
  28. </ListGroup>
  29. </Card>
  30. </div>
  31. );
  32. }
  33.  
  34. async componentDidMount() {
  35. await axios.get('/api/tickets/states')
  36. .then((response) => {
  37. let tickets = [];
  38.  
  39. for (let itr in response.data) {
  40. let ticketId = response.data[itr].ticketId;
  41. if (tickets[ticketId] == null)
  42. tickets[ticketId] = {
  43. id: ticketId,
  44. name: response.data[itr].Board.name,
  45. fields: [response.data[itr].TicketSchema.name]
  46. };
  47. else
  48. tickets[ticketId].states.push(response.data[itr].StateSchema.name);
  49. }
  50.  
  51. let temp = this.state;
  52. temp.tickets = tickets;
  53.  
  54. this.setState(temp);
  55. })
  56. .catch(err => {
  57. console.log(err);
  58. return null;
  59. });
  60. }
  61. }
  62. export default ListCardTickets;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement