You need to sign in or sign up before continuing.
item-detail.service.ts 3.67 KB
Newer Older
1 2
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
3
import { ItemDetail, SearchItemDetailModel } from '../models/itemDetail.model';
4 5

@Injectable({ providedIn: 'root' })
6
export class ItemDetailService {
7 8 9

  constructor(private http: HttpClient) { }
  url: string;
10
  listItemDetail: ItemDetail[] = [
11
    {
12
      id : 1,
13 14 15 16 17 18 19 20
      equirment : {
        eqId: 2,
        eqName: "เมาส์",
        eqDesc: "...",
        eqType: "it",
        eqPic: "assets/img/mou.jpg"
      },
      userName: 'เกม',
Your Name committed
21 22
      sDate: '2021-12-09',
      eDate: '2021-12-15',
23 24
      sTime: '22:30',
      eTime: '22:30',
25
      eStatus: 0,
26
      Quantity: '1',
27 28
      eTelephone: '0123456789',
      email: 'qwerty@qwerty',
29
      remark: 'test',
30 31
      allDay: false,
      returnItem: true
32 33
    },
    {
34
      id : 2,
35 36 37 38 39 40 41 42
      equirment : {
        eqId: 3,
        eqName: "โน๊ตบุ๊ค",
        eqDesc: "หน้าจอขนาด 20 นิ้ว",
        eqType: "it",
        eqPic: "assets/img/notebook.jpg"
      },
      userName: 'แป๊ะ',
Your Name committed
43 44
      sDate: '2021-12-09',
      eDate: '2021-12-13',
45 46
      sTime: '22:30',
      eTime: '22:30',
47
      eStatus: 1,
48
      Quantity: '1',
49 50
      eTelephone: '0123456789',
      email: 'qwerty@qwerty',
51
      remark: 'test',
52 53
      allDay: false,
      returnItem: true
54 55 56 57
    },

  ]

58 59 60 61
  addItemDetail(model: ItemDetail) {
    console.log(this.listItemDetail);
    this.listItemDetail.push(model);
    this.listItemDetail.reverse
62 63
  }

64 65


66 67
  getListItemDetail() {
    return this.listItemDetail;
68 69
  }

70
  // getListItemDetail() {
71 72
  //   this.http.get(this.url).subscribe((response: any) => {
  //     console.log(response);
73
  //     this.listItemDetail = response.content;
74 75 76 77 78 79
  //   }, error => {
  //     console.log(error)
  //     // alert("ไม่สามารถดึงข้อมูลห้องประชุมได้ เนื่องจาก :\n" + error.message)
  //   })
  // }

80
  searchListItemDetail(searchModel: SearchItemDetailModel) {
81 82
    this.http.get(this.url + '&startDate=' + searchModel.sDate.split("-")[2] + '-' + searchModel.sDate.split("-")[1] + '-' + searchModel.sDate.split("-")[0] + '&endDate=' + searchModel.eDate.split("-")[2] + '-' + searchModel.eDate.split("-")[1] + '-' + searchModel.eDate.split("-")[0] + '&startTime=' + searchModel.sTime + ':00' + '&endTime=' + searchModel.eTime + ':00').subscribe((response: any) => {
      console.log(response);
83
      this.listItemDetail = response;
84 85 86 87 88 89 90 91 92 93 94 95 96 97
    }, error => {
      console.log(error)
      alert("ไม่สามารถค้นหาอุปกรณ์ที่ว่างได้ เนื่องจาก :\n" + error.message)
    })
  }

  // addEquirment(EquirmentModel: Equirment) {
  //   this.http.post(this.url, EquirmentModel).subscribe(response => {
  //     console.log(response);

  //   })


  // }
98
  deleteItemDetail(ItemDetailModel: ItemDetail) {
99
    this.http.delete(this.url + "/" + ItemDetailModel.id).subscribe(response => {
100
      console.log(response);
101
      this.getListItemDetail()
102 103 104 105
      alert("ลบข้อมูลอุปกรณ์สำเร็จ")
    })
  }

106
  // updateItemDetail(ItemDetailModel: ItemDetail) {
107
  //   this.http.put(this.url + "/" +ItemDetailModel.id, ItemDetailModel).subscribe(response => {
108 109 110 111 112 113 114
  //     console.log(response);
  //     alert("อัพเดทข้อมูลอุปกรณ์สำเร็จ")
  //   })
  // }

  updateItemDetail(row_obj: ItemDetail) {
    this.listItemDetail = this.listItemDetail.filter((value, key) => {
115
        if (value.id === row_obj.id) {
116 117 118 119 120
            value = row_obj;
        }
        return true;
    });
}
121

122
  ItemDetailModel(eqId: string) {
123 124 125 126

  }

}