{"version":3,"sources":["./src/app/_services/APIService/sct.service.ts","./src/app/components/specialized/abstract-base.component.ts","./src/app/components/specialized/base.component.ts"],"names":[],"mappings":"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","file":"default~components-manager-manager-module~components-public-market-market-module~components-report-r~8d3d9040.js","sourcesContent":["import { Injectable } from \"@angular/core\";\r\nimport { Observable, throwError } from 'rxjs'\r\nimport { catchError, tap } from 'rxjs/operators'\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpResponse, HttpParams } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment';\r\nimport { LoginService } from './login.service';\r\nimport { data_detail_model, new_import_export_model, tong_quan_bg_model, new_model } from 'src/app/_models/APIModel/export-import.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class SCTService {\r\n // declare variable\r\n private data: any;\r\n private apiSCT = environment.apiEndpoint + \"api/sct\";\r\n private urlDanhSachBuonBanThuocLa = \"/danh-sach-buon-ban-thuoc-la\";\r\n private urlDanhSachBanLeXangDau = \"/danh-sach-buon-le-xang-dau\";\r\n private urlDanhSachBuonBanRuou = \"/danh-sach-buon-ban-ruou\";\r\n private urlDanhSachBuonBanLPG = \"/danh-sach-buon-ban-lpg\";\r\n private urlDanhSachQuanLyHoaChat = \"/danh-sach-quan-ly-hoa-chat\";\r\n private urlDanhSachQuanLyChietNapLPG = \"/danh-sach-quan-ly-chiet-nap-lpg\";\r\n private urlDanhSachQuanLyCongNghiepThucPham = \"/danh-sach-quan-ly-cong-nghiep-thuc-pham\";\r\n private urlDanhSachQuanLyVatLieuNoCongNghiep = \"/vlncn\";\r\n\r\n private urlDanhSachDaCap = \"/danh-sach-ban-hang-da-cap\";\r\n\r\n private apiSpecialized = environment.apiEndpoint + \"api/qltm\";\r\n private urlDanhSachNhapKhau = \"/xnk/nhap-khau\";\r\n private urlDanhSachNhapKhauTC = \"/xnk/nhap-khau-tc\";\r\n private urlDanhSachXuatKhau = \"/xnk/xuat-khau\";\r\n private urlDanhSachXuatKhauTC = \"/xnk/xuat-khau-tc\";\r\n\r\n private urlDanhSachTMBG = \"/thuong-mai-bien-gioi\";\r\n private urlDanhSachTMBGTQ = \"/thuong-mai-bien-gioi-tq\";\r\n\r\n private urlDanhSachCSSX = \"/cssx\";\r\n private urlDanhSachCSSXTH = \"/cssx-tonghop\";\r\n\r\n private urlDanhSachBLHH = \"/blhh\";\r\n private urlDanhSachBLHHTH = \"/blhh-tonghop\";\r\n\r\n private urlChiTietNhapKhau = \"/xnk/chi-tiet-nhap-khau\";\r\n private urlChiTietNhapKhauTC = \"/xnk/chi-tiet-nhap-khau-tc\";\r\n private urlChiTietXuatKhau = \"/xnk/chi-tiet-xuat-khau\";\r\n private urlChiTietXuatKhauTC = \"/xnk/chi-tiet-xuat-khau-tc\";\r\n\r\n private urlDNNhapKhau = \"/xnk/doanh-nghiep-nhap-khau\";\r\n private urlDNNhapKhauTC = \"/xnk/doanh-nghiep-nhap-khau-tc\";\r\n private urlDNXuatKhau = \"/xnk/doanh-nghiep-xuat-khau\";\r\n private urlDNXuatKhauTC = \"/xnk/doanh-nghiep-xuat-khau-tc\";\r\n\r\n private urlDuLieuBienGioiNK = \"/tmbg/nhap-khau\";\r\n private urlDuLieuBienGioiXK = \"/tmbg/xuat-khau\";\r\n private urlThuongMaiBienGioiNK = \"/tmbg/nhap-khau\";\r\n private urlThuongMaiBienGioiXK = \"/tmbg/xuat-khau\";\r\n\r\n\r\n // start api cong nghiep\r\n private apiIndustry = environment.apiEndpoint + \"api/qlcn\";\r\n private url_congbohopquy = \"/cbhq\";\r\n\r\n // end api cong nghiep\r\n\r\n // start api quan huyen\r\n private apiDanhSach = environment.apiEndpoint + \"api/danh-sach\";\r\n\r\n private urlQuanHuyen = \"/quan-huyen\";\r\n private urlPhuongXa = \"/phuong-xa\";\r\n private urlPhuongXaQuanHuyen = \"/phuong-xa-kem-quan-huyen\"\r\n // end api quan huyen\r\n\r\n private urlUpdateRecord = environment.apiEndpoint + 'api/update-record';\r\n private urlLrisApi = environment.apiEndpoint + \"api/bao-cao/lris\";\r\n public urlMonthlyReportSKHDT = environment.apiEndpoint + \"api/bao-cao/thuc-hien-thang-skhdt\";\r\n\r\n token: any;\r\n username: any;\r\n\r\n constructor(public http: HttpClient, public logOutService: LoginService) {\r\n // this.data = JSON.parse(localStorage.getItem('currentUser'));\r\n // this.token = this.data.token;\r\n }\r\n\r\n public GetDanhSachBuonBanThuocLa(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachBuonBanThuocLa;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBanLeXangDau(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachBanLeXangDau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBuonBanRuou(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachBuonBanRuou;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBuonBanLPG(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachBuonBanLPG;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachQuanLyHoaChat(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachQuanLyHoaChat;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachQuanLyChietNapLPG(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachQuanLyChietNapLPG;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachQuanLyCongNghiepThucPham(time_id: number) {\r\n var apiUrl = this.apiSCT + this.urlDanhSachQuanLyCongNghiepThucPham;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachQuanLyVatLieuNoCongNghiep(time_id: number) {\r\n var apiUrl = this.apiIndustry + this.urlDanhSachQuanLyVatLieuNoCongNghiep;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n // public GetDanhSachQuanLyCumCongNghiep() {\r\n // var apiUrl = this.apiIndustry + this.urlDanhSachQuanLyCumCongNghiep;\r\n // let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n // // let params = new HttpParams().set('time_id', time_id.toString());\r\n // return this.http.get(apiUrl, { headers: headers}).pipe(tap(data => data),\r\n // catchError(this.handleError)\r\n // );\r\n // }\r\n\r\n // Start Import and Export\r\n public GetDanhSachNhapKhau(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachNhapKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachNhapKhauTC(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachNhapKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBLHH(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachBLHH;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBLHHTongHop(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachBLHHTH;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachCSSX(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachCSSX;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachCSSXTongHop(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachCSSXTH;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachTMBG(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachTMBG;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachTMBGTQ(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachTMBGTQ;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachXuatKhau(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachXuatKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public GetDanhSachXuatKhauTC(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachXuatKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuBLHHThang(time_id: number, data: new_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachBLHH;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuCSSXThang(time_id: number, data: new_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachCSSX;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuTMBGThang(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachTMBG;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuTMBGTQThang(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachTMBGTQ;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n // Post\r\n public CapNhatDuLieuNKThang(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachNhapKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuNKThangTC(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachNhapKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuXKThang(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachXuatKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDuLieuXKThangTC(time_id: number, data: new_import_export_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachXuatKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatChiTietXKThang(time_id: number, data: data_detail_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlChiTietXuatKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatChiTietXKThangTC(time_id: number, data: data_detail_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlChiTietXuatKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatChiTietNKThang(time_id: number, data: data_detail_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlChiTietNhapKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatChiTietNKThangTC(time_id: number, data: data_detail_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlChiTietNhapKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDNNKThang(data: any[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDNNhapKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n // let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.post(apiUrl, data, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDNNKThangTC(data: any[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDNNhapKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n // let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDNXKThang(data: any[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDNXuatKhau;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n // let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.post(apiUrl, data, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDNXKThangTC(data: any[]) {\r\n var apiUrl = this.apiSpecialized + this.urlDNXuatKhauTC;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n // let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n\r\n public GetDuLieuXuatKhauBG(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDuLieuBienGioiXK;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDuLieuNhapKhauBG(time_id: number) {\r\n var apiUrl = this.apiSpecialized + this.urlDuLieuBienGioiNK;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public CapNhatDuLieuNKBG(time_id: number, data: tong_quan_bg_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlThuongMaiBienGioiNK;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n public CapNhatDuLieuXKBG(time_id: number, data: tong_quan_bg_model[]) {\r\n var apiUrl = this.apiSpecialized + this.urlThuongMaiBienGioiXK;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id.toString());\r\n\r\n return this.http.post(apiUrl, data, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetDanhSachBHDaCap() {\r\n var apiUrl = this.apiSpecialized + this.urlDanhSachDaCap;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.get(apiUrl, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n LaydulieuCongBoHopQuy() {\r\n var apiUrl = this.apiIndustry + this.url_congbohopquy;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.get(apiUrl, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public LayDanhSachQuanHuyen() {\r\n var apiUrl = this.apiDanhSach + this.urlQuanHuyen;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.get(apiUrl, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public LayDanhSachPhuongXa() {\r\n var apiUrl = this.apiDanhSach + this.urlPhuongXa;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.get(apiUrl, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n LayDanhSachPhuongXaQuanHuyen() {\r\n var apiUrl = this.apiDanhSach + this.urlPhuongXaQuanHuyen;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.get(apiUrl, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public UpdateRecord(datas) {\r\n var apiUrl = this.urlUpdateRecord;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n return this.http.put(apiUrl, datas, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetLrisReportData(payload) {\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let requestData = {\r\n \"method\" : \"get\",\r\n \"body\" : payload\r\n }\r\n return this.http.post(this.urlLrisApi, requestData, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public PostLrisReportData(payload) {\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let requestData = {\r\n \"method\" : \"post\",\r\n \"body\" : payload\r\n }\r\n return this.http.post(this.urlLrisApi, requestData, { headers: headers }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public GetMonthlyReportSKHDT(time_id) {\r\n var apiUrl = this.urlMonthlyReportSKHDT;\r\n let headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n let params = new HttpParams().set('time_id', time_id);\r\n return this.http.get(apiUrl, { headers: headers, params: params }).pipe(tap(data => data),\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n public handleError(error: HttpErrorResponse) {\r\n let errorMessage = '';\r\n if (error.error instanceof ErrorEvent) {\r\n // client-side error\r\n errorMessage = `Lỗi: ${error.error.message}`;\r\n } else {\r\n // server-side error\r\n errorMessage = `Mã lỗi: ${error.status}\\nMessage: ${error.error.message}`;\r\n }\r\n return throwError(errorMessage);\r\n }\r\n}\r\n","import { OnInit, ElementRef, ViewChild, Injector } from '@angular/core';\r\nimport { MatAccordion } from '@angular/material/expansion';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatOption, MatSelect, MatTableDataSource } from '@angular/material';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { FormBuilder } from '@angular/forms';\r\n\r\n// Services\r\nimport { ExcelService } from 'src/app/_services/excelUtil.service';\r\nimport { InformationService } from 'src/app/shared/information/information.service';\r\nimport { ConfirmationDialogService } from 'src/app/shared/confirmation-dialog/confirmation-dialog.service';\r\nimport { DistrictModel, SubDistrictModel, DistrictWardModel } from 'src/app/_models/APIModel/domestic-market.model';\r\nimport { SCTService } from 'src/app/_services/APIService/sct.service';\r\n\r\nimport { LinkModel } from 'src/app/_models/link.model';\r\nimport { BreadCrumService } from 'src/app/_services/injectable-service/breadcrums.service';\r\n\r\nimport moment from 'moment';\r\n\r\nexport abstract class AbstractBaseComponent implements OnInit {\r\n\r\n @ViewChild(MatAccordion, { static: false }) accordion: MatAccordion;\r\n @ViewChild(MatPaginator, undefined) paginator: MatPaginator;\r\n @ViewChild('TABLE', { static: false }) table: ElementRef;\r\n\r\n protected _linkOutput: LinkModel = new LinkModel();\r\n //Constant\r\n LINK_DEFAULT: string = \"\";\r\n TITLE_DEFAULT: string = \"\";\r\n TEXT_DEFAULT: string = \"\";\r\n EXCEL_NAME: string = \"Sở công thương\";\r\n\r\n protected sctService: SCTService;\r\n protected excelService: ExcelService;\r\n protected logger: InformationService;\r\n protected formBuilder: FormBuilder;\r\n protected confirmationDialogService: ConfirmationDialogService;\r\n protected _breadCrumService: BreadCrumService;\r\n\r\n public dataSource = new MatTableDataSource();\r\n public filteredDataSource = new MatTableDataSource();\r\n public selection = new SelectionModel(true, []);\r\n\r\n public formData: any;\r\n public formParams: any;\r\n public view = 'list';\r\n public mode = 'create';\r\n \r\n public readonly dateFormat = 'YYYY/MM/DD';\r\n public currentTime = moment();\r\n public currentYear = new Date().getFullYear();\r\n public currentMonth = parseInt(moment().format('MM'));\r\n // public currentYearAndMonth = this.currentYear.toString() + (this.currentMonth >= 10 ? this.currentMonth.toString() : '0' + this.currentMonth.toString());\r\n public monthSelection: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];\r\n public yearSelection = Array(12).fill(1).map((element, index) => new Date().getFullYear() - index);\r\n public yearSelectionDict = [{\r\n index: 0,\r\n year: \"---Tất cả---\"\r\n }].concat(Array(12).fill(1).map((element, index) => { \r\n let idx = new Date().getFullYear() - index;\r\n let year = `Năm ${idx}`;\r\n return { \r\n index: idx,\r\n year : year\r\n }\r\n }));\r\n // {{y.year}}\r\n\r\n public terms = [{id: 6, value: '6 Tháng'}, {id: 12, value: '1 Năm'}];\r\n\r\n public displayedColumns = ['select', 'index'];\r\n public displayedFields = {};\r\n public filterModel = {};\r\n public formPrevData = {};\r\n \r\n public districts: DistrictModel[] = [];\r\n public wards: SubDistrictModel[] = [];\r\n public districtWards: DistrictWardModel[] = [];\r\n public filteredDistrictWards = [];\r\n public districtWardSorted = {};\r\n\r\n constructor(injector: Injector) {\r\n this.excelService = injector.get(ExcelService);\r\n this.logger = injector.get(InformationService);\r\n this.formBuilder = injector.get(FormBuilder);\r\n this.confirmationDialogService = injector.get(ConfirmationDialogService);\r\n this.sctService = injector.get(SCTService);\r\n this._breadCrumService = injector.get(BreadCrumService);\r\n }\r\n\r\n ngOnInit() {\r\n this.autoOpen();\r\n this.initListView();\r\n this.initFormView();\r\n this.initFilters();\r\n this.initDistricts();\r\n this.getLinkDefault();\r\n this.sendLinkToNext(true);\r\n }\r\n\r\n protected initListView() {\r\n // In case we have already declared all field in displayed Columns\r\n if (this.displayedColumns.length == 2 && Object.keys(this.displayedFields).length > 0) {\r\n this.displayedColumns = this.displayedColumns.concat(Object.keys(this.displayedFields));\r\n }\r\n }\r\n\r\n protected initFormView() {\r\n let datas = this.getFormParams();\r\n this.formData = this.formBuilder.group(datas);\r\n }\r\n\r\n public initFilters() {\r\n for (var key of Object.keys(this.filterModel)) {\r\n this.filterModel[key] = [];\r\n }\r\n }\r\n\r\n public setFormParams() {}\r\n\r\n\r\n public getFormParams() {\r\n return {};\r\n }\r\n\r\n public autoOpen() {\r\n setTimeout(() => {\r\n if (this.accordion) this.accordion.openAll()}\r\n , 1000);\r\n }\r\n public ExportTOExcel(filename, sheetname) {\r\n this.excelService.exportDomTableAsExcelFile(filename, sheetname, this.table.nativeElement);\r\n }\r\n\r\n public ExportToExcel(all=false) {\r\n if (all) {\r\n let self = this;\r\n let dataSource = this.dataSource.data;\r\n let datas = [];\r\n dataSource.forEach(function (record: Object) {\r\n let data = {};\r\n for (let k in record) {\r\n if (self.displayedFields[k]) data[self.displayedFields[k]] = record[k];\r\n }\r\n datas.push(data);\r\n });\r\n this.excelService.exportJsonAsExcelFile(this.EXCEL_NAME, this.EXCEL_NAME, datas);\r\n } else {\r\n this.excelService.exportDomTableAsExcelFile(this.EXCEL_NAME, this.EXCEL_NAME, this.table.nativeElement);\r\n }\r\n }\r\n\r\n @ViewChild('dSelect', { static: false }) dSelect: MatSelect;\r\n allSelected = false;\r\n toggleAllSelection() {\r\n this.allSelected = !this.allSelected; // to control select-unselect\r\n\r\n if (this.allSelected) {\r\n this.dSelect.options.forEach((item: MatOption) => item.select());\r\n } else {\r\n this.dSelect.options.forEach((item: MatOption) => item.deselect());\r\n }\r\n this.dSelect.close();\r\n }\r\n\r\n public isAllSelected() {\r\n let numSelected = this.selection.selected.length;\r\n let numRows = this.dataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n\r\n //Event check\r\n public masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.dataSource.data.forEach(row => this.selection.select(row));\r\n }\r\n //Event check item\r\n public checkboxLabel(row): string {\r\n\r\n if (!row) {\r\n return `${this.isAllSelected() ? 'select' : 'deselect'} all`;\r\n }\r\n return `${this.selection.isSelected(row) ? 'deselect' : 'select'} row ${row.id + 1}`;\r\n }\r\n\r\n public initDistricts() {\r\n this.sctService.LayDanhSachQuanHuyen().subscribe(res => {\r\n if (res['success'])\r\n this.districts = res['data'];\r\n })\r\n }\r\n\r\n public initWards(){\r\n this.sctService.LayDanhSachPhuongXa().subscribe(res => {\r\n if(res['success'])\r\n this.wards = res['data'];\r\n })\r\n }\r\n\r\n public initDistrictWard(sorted=true) {\r\n if (Object.keys(this.districtWardSorted).length == 0)\r\n this.sctService.LayDanhSachPhuongXaQuanHuyen().subscribe(res => {\r\n if(res['success']) {\r\n let districtWardData = res['data'];\r\n this.districtWards = districtWardData;\r\n this.filteredDistrictWards = districtWardData.slice()\r\n if (sorted) {\r\n districtWardData.forEach(x => {\r\n if (!this.districtWardSorted[x.ten_quan_huyen]) {\r\n this.districtWardSorted[x.ten_quan_huyen] = [{\r\n id_phuong_xa: x.id_phuong_xa,\r\n ten_phuong_xa: x.ten_phuong_xa,\r\n }];\r\n } else {\r\n this.districtWardSorted[x.ten_quan_huyen].push({\r\n id_phuong_xa: x.id_phuong_xa,\r\n ten_phuong_xa: x.ten_phuong_xa,\r\n })\r\n }\r\n });\r\n }\r\n } \r\n })\r\n }\r\n\r\n public findDistrictId(wardId : number){\r\n var district = this.filteredDistrictWards.find(x => x.id_phuong_xa == wardId);\r\n return district.id_quan_huyen;\r\n }\r\n\r\n getLinkDefault(){}\r\n\r\n public sendLinkToNext(type: boolean) {\r\n this._linkOutput.link = this.LINK_DEFAULT;\r\n this._linkOutput.title = this.TITLE_DEFAULT;\r\n this._linkOutput.text = this.TEXT_DEFAULT;\r\n this._linkOutput.type = type;\r\n this._breadCrumService.sendLink(this._linkOutput);\r\n }\r\n\r\n remove(){}\r\n\r\n protected formatDate(date) {\r\n let formattedDate = moment(date, this.dateFormat);\r\n return formattedDate.isValid() ? formattedDate : \"\";\r\n }\r\n \r\n}","import { AbstractBaseComponent } from 'src/app/components/specialized/abstract-base.component';\r\nexport class BaseComponent extends AbstractBaseComponent {\r\n public DB_TABLE = '';\r\n public EXCEL_NAME: string = \"Sở công thương\";\r\n public errorMessage: any;\r\n\r\n public statusList = [\r\n { id_trang_thai_hoat_dong: 1, ten_trang_thai_hoat_dong: 'ĐANG HOẠT ĐỘNG' },\r\n { id_trang_thai_hoat_dong: 2, ten_trang_thai_hoat_dong: 'KHÔNG HOẠT ĐỘNG' },\r\n { id_trang_thai_hoat_dong: 3, ten_trang_thai_hoat_dong: 'ĐANG XIN GIẤY PHÉP' }\r\n ];\r\n\r\n public periodList: Object[] = [\r\n { id: 1, title: \"6 tháng đầu năm\" },\r\n { id: 2, title: \"6 tháng cuối năm\" }\r\n ];\r\n // ======================================\r\n // =========== CRUD FUNCTIONS ===========\r\n // ======================================\r\n public prepareData(data) { return data }\r\n\r\n public prepareRemoveData(data) { return data }\r\n\r\n public prepareModDataForEdit(data) { return data }\r\n\r\n public prepareEditData(data) {\r\n function _compareChangedData(prevData, curData) {\r\n return Object.keys(curData).reduce((diff, key) => {\r\n if (prevData[key] === curData[key]) return diff\r\n return {\r\n ...diff,\r\n [key]: curData[key]\r\n }\r\n }, {});\r\n }\r\n let pKey = { id: data.id };\r\n let modDatas = _compareChangedData(this.formPrevData, data);\r\n modDatas = this.prepareModDataForEdit(modDatas);\r\n let datas = {\r\n pKey: pKey,\r\n modDatas: modDatas,\r\n table: this.DB_TABLE,\r\n }\r\n return datas;\r\n }\r\n\r\n public callService(data) { }\r\n\r\n public callRemoveService(data) { }\r\n\r\n public callEditService(data) {\r\n this.sctService.UpdateRecord(data).subscribe(response => this.successNotify(response), error => this.errorNotify(error));\r\n }\r\n\r\n public onCreate() {\r\n // Must change to async function\r\n if (this.formData.invalid) {\r\n this.logger.msgError(\"Cần nhập đầy đủ các thông tin cần thiết trên biểu mẫu\");\r\n } else {\r\n let data = this.formData.value;\r\n if (this.mode == 'edit') {\r\n data = this.prepareEditData(data);\r\n this.callEditService(data);\r\n }\r\n else {\r\n data = this.prepareData(data);\r\n this.callService(data);\r\n }\r\n }\r\n }\r\n\r\n public onRemove() {\r\n // Must change to async function\r\n let data = this.selection.selected;\r\n data = this.prepareRemoveData(data);\r\n this.callRemoveService(data);\r\n this.resetAll();\r\n }\r\n\r\n // ========================================================\r\n // =================== ACTIONS FUNCTIONS ==================\r\n // ========================================================\r\n\r\n public switchView() {\r\n if (this.view == 'list') {\r\n this.view = 'form';\r\n } else {\r\n // Temporary put the this.ngOnInit()\r\n this.ngOnInit();\r\n this.view = 'list';\r\n this.mode = 'create';\r\n this.formData.reset();\r\n this.selection.clear();\r\n this.autoOpen();\r\n }\r\n }\r\n\r\n public switchEditMode() {\r\n this.mode = 'edit';\r\n this.switchView();\r\n this.setFormParams();\r\n this.formPrevData = this.formData.value;\r\n }\r\n\r\n public clearTable(event) {\r\n event.preventDefault();\r\n this.formData.reset();\r\n }\r\n\r\n public resetAll(): void {\r\n this.formData.reset();\r\n if (this.view == 'form') this.switchView();\r\n this.selection.clear();\r\n this.ngOnInit();\r\n }\r\n\r\n public openRemoveDialog() {\r\n let self = this;\r\n this.confirmationDialogService.confirm('Xác nhận', 'Bạn chắc chắn muốn xóa?', 'Đồng ý', 'Đóng')\r\n .then(confirm => {\r\n if (confirm) {\r\n self.onRemove();\r\n return;\r\n }\r\n })\r\n .catch((err) => console.log('Hủy không thao tác: \\n' + err));\r\n }\r\n\r\n public successNotify(response) {\r\n if (response.id == -1) {\r\n this.logger.msgError(\"Lưu lỗi! Lý do: \" + response.message);\r\n }\r\n else {\r\n this.logger.msgSuccess(\"Dữ liệu được lưu thành công!\");\r\n this.resetAll();\r\n }\r\n }\r\n\r\n public errorNotify(error) {\r\n this.logger.msgError(\"Không thể thực thi! Lý do: \\n\" + error);\r\n }\r\n\r\n // ========================================================\r\n // =========== FILTERS AND PAGINATION FUNCTIONS ===========\r\n // ========================================================\r\n\r\n _prepareData() { }\r\n\r\n paginatorAgain() {\r\n this.paginator._intl.itemsPerPageLabel = \"Số hàng\";\r\n this.paginator._intl.firstPageLabel = \"Trang Đầu\";\r\n this.paginator._intl.lastPageLabel = \"Trang Cuối\";\r\n this.paginator._intl.previousPageLabel = \"Trang Trước\";\r\n this.paginator._intl.nextPageLabel = \"Trang Tiếp\";\r\n this.filteredDataSource.paginator = this.paginator;\r\n }\r\n\r\n isAllSelected() {\r\n const numSelected = this.selection.selected.length;\r\n // const numRows = this.dataSource.data.length;\r\n const numRows = this.filteredDataSource.connect().value.length;\r\n return numSelected === numRows;\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.filteredDataSource.connect().value.forEach(row => this.selection.select(row));\r\n }\r\n\r\n filterArray(dataSource, filters) {\r\n const filterKeys = Object.keys(filters);\r\n let filteredData = [...dataSource];\r\n filterKeys.forEach(key => {\r\n let filterCrits = [];\r\n if (filters[key].length) {\r\n filters[key].forEach(criteria => {\r\n filterCrits = filterCrits.concat(filteredData.filter(x => x[key] == criteria));\r\n });\r\n filteredData = [...filterCrits];\r\n }\r\n })\r\n return filteredData;\r\n }\r\n\r\n applyFilter(event) {\r\n if (event.target) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.filteredDataSource.filter = filterValue.trim().toLowerCase();\r\n } else {\r\n let filteredData = this.filterArray(this.dataSource.data, this.filterModel);\r\n\r\n if (!filteredData.length) {\r\n if (this.filterModel)\r\n this.filteredDataSource.data = [];\r\n else\r\n this.filteredDataSource.data = this.dataSource.data;\r\n }\r\n else {\r\n this.filteredDataSource.data = filteredData;\r\n }\r\n\r\n }\r\n this._prepareData();\r\n this.paginatorAgain();\r\n }\r\n}"],"sourceRoot":"webpack:///"}