room-detail.service.ts 3.13 KB
Newer Older
1 2
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
3
import { RoomDetail, SearchRoomDetailModel } from '../models/RoomDetail.model';
Your Name committed
4
import { Observable } from 'rxjs';
5

6

7
@Injectable({ providedIn: 'root' })
8
export class RoomDetailService {
9 10

    constructor(private http: HttpClient) { }
Your Name committed
11
    url: string = "http://a3be-115-87-232-117.ngrok.io";
Your Name committed
12
    listRoomDetail: RoomDetail[] = []
13

14 15
    editRoomDetail(model: RoomDetail) {
        this.listRoomDetail.push(model)
16 17
    }

18 19
    addRoomDetail(model: RoomDetail) {
        this.listRoomDetail.push(model);
20 21
    }

22 23 24 25 26 27 28 29 30
    // updateRoomDetail(model: RoomDetail){
    //     let temp = this.listRoomDetail.filter( x => 
    //         x.Id == model.Id
    //     )
    //     console.log("temp",temp);
    // }

    updateRoomDetail(row_obj: RoomDetail) {
        this.listRoomDetail = this.listRoomDetail.filter((value, key) => {
31
            if (value.id === row_obj.id) {
32 33 34 35
                value = row_obj;
            }
            return true;
        });
DESKTOP-HF0LVOG\myhr committed
36 37
    }

38

Your Name committed
39 40
    getListRoomDetail() : Observable<RoomDetail[]> {
        return this.http.get<RoomDetail[]>(this.url + "/book/lists"); 
41
    }
42

43 44 45



46
    // getListRoomDetail() {
47 48
    //   this.http.get(this.url).subscribe((response: any) => {
    //     console.log(response);
49
    //     this.listRoomDetail = response.content;
50 51 52 53 54 55
    //   }, error => {
    //     console.log(error)
    //     // alert("ไม่สามารถดึงข้อมูลห้องประชุมได้ เนื่องจาก :\n" + error.message)
    //   })
    // }

56
    searchListRoomDetail(searchModel: SearchRoomDetailModel) {
57 58
        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);
59
            this.listRoomDetail = response;
60 61 62 63 64 65 66 67 68 69 70 71 72 73
        }, error => {
            console.log(error)
            alert("ไม่สามารถค้นหาอุปกรณ์ที่ว่างได้ เนื่องจาก :\n" + error.message)
        })
    }

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

    //   })


    // }
74
    deleteRoomDetail(RoomDetailModel: RoomDetail) {
75
        this.http.delete(this.url + "/" + RoomDetailModel.id).subscribe(response => {
76
            console.log(response);
77
            this.getListRoomDetail()
78 79 80 81
            alert("ลบข้อมูลอุปกรณ์สำเร็จ")
        })
    }

DESKTOP-HF0LVOG\myhr committed
82 83 84 85 86 87
    // updateRoomDetail(RoomDetailModel: RoomDetail) {
    //     this.http.put(this.url + "/" + RoomDetailModel.Id, RoomDetailModel).subscribe(response => {
    //         console.log(response);
    //         alert("อัพเดทข้อมูลอุปกรณ์สำเร็จ")
    //     })
    // }
88 89

}