{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/@core/core.module.ts","./src/app/@core/data/listData.ts","./src/app/@core/data/noticeData.ts","./src/app/@core/mock/echarts.service.ts","./src/app/@core/mock/list-data.service.ts","./src/app/@core/mock/mock-data.module.ts","./src/app/@core/mock/notice-data.service.ts","./src/app/@core/module-import-guard.ts","./src/app/@core/services/auth-guard-service.guard.ts","./src/app/@core/services/auth-thisinh-service.guard.ts","./src/app/@core/services/auth.service.ts","./src/app/@core/services/color-hierarchy.ts","./src/app/@core/services/common.service.ts","./src/app/@core/services/custom-theme.service.ts","./src/app/@core/services/personalize.service.ts","./src/app/@core/services/script-loader.service.ts","./src/app/@shared/components/confirm-email/confirm-email.component.ts","./src/app/@shared/components/confirm-email/confirm-email.component.html","./src/app/@shared/components/footer/footer.component.ts","./src/app/@shared/components/footer/footer.component.html","./src/app/@shared/components/forgot-password/forgot-password.component.ts","./src/app/@shared/components/forgot-password/forgot-password.component.html","./src/app/@shared/components/form-upload/form-upload.component.ts","./src/app/@shared/components/form-upload/form-upload.component.html","./src/app/@shared/components/header/header-logo/header-logo.component.ts","./src/app/@shared/components/header/header-logo/header-logo.component.html","./src/app/@shared/components/header/header-operation/header-notice/header-notice.component.ts","./src/app/@shared/components/header/header-operation/header-notice/header-notice.component.html","./src/app/@shared/components/header/header-operation/header-operation.component.ts","./src/app/@shared/components/header/header-operation/header-operation.component.html","./src/app/@shared/components/header/header.component.ts","./src/app/@shared/components/header/header.component.html","./src/app/@shared/components/header/navbar/navbar.component.ts","./src/app/@shared/components/header/navbar/navbar.component.html","./src/app/@shared/components/login-user/login.component.ts","./src/app/@shared/components/login-user/login.component.html","./src/app/@shared/components/login/login.component.ts","./src/app/@shared/components/login/login.component.html","./src/app/@shared/components/modals/chi-tiet-category/chi-tiet-category.component.ts","./src/app/@shared/components/modals/chi-tiet-category/chi-tiet-category.component.html","./src/app/@shared/components/modals/chi-tiet-giay-phep-kinh-doanh/chi-tiet-giay-phep-kinh-doanh.component.ts","./src/app/@shared/components/modals/chi-tiet-giay-phep-kinh-doanh/chi-tiet-giay-phep-kinh-doanh.component.html","./src/app/@shared/components/modals/chi-tiet-lich-thi/chi-tiet-lich-thi.component.ts","./src/app/@shared/components/modals/chi-tiet-lich-thi/chi-tiet-lich-thi.component.html","./src/app/@shared/components/modals/chi-tiet-menu/chi-tiet-menu.component.ts","./src/app/@shared/components/modals/chi-tiet-menu/chi-tiet-menu.component.html","./src/app/@shared/components/modals/chi-tiet-news/chi-tiet-news.component.ts","./src/app/@shared/components/modals/chi-tiet-news/chi-tiet-news.component.html","./src/app/@shared/components/modals/chi-tiet-phu-hieu/chi-tiet-phu-hieu.component.ts","./src/app/@shared/components/modals/chi-tiet-phu-hieu/chi-tiet-phu-hieu.component.html","./src/app/@shared/components/modals/chi-tiet-phuong-tien/chi-tiet-phuong-tien.component.ts","./src/app/@shared/components/modals/chi-tiet-phuong-tien/chi-tiet-phuong-tien.component.html","./src/app/@shared/components/modals/chi-tiet-thi-sinh/chi-tiet-thi-sinh.component.ts","./src/app/@shared/components/modals/chi-tiet-thi-sinh/chi-tiet-thi-sinh.component.html","./src/app/@shared/components/modals/chi-tiet-vi-pham/chi-tiet-vi-pham.component.ts","./src/app/@shared/components/modals/chi-tiet-vi-pham/chi-tiet-vi-pham.component.html","./src/app/@shared/components/modals/import-bien-hieu/import-bien-hieu.component.ts","./src/app/@shared/components/modals/import-bien-hieu/import-bien-hieu.component.html","./src/app/@shared/components/modals/import-category/import-category.component.ts","./src/app/@shared/components/modals/import-category/import-category.component.html","./src/app/@shared/components/modals/import-chu-phuong-tien/import-chu-phuong-tien.component.ts","./src/app/@shared/components/modals/import-chu-phuong-tien/import-chu-phuong-tien.component.html","./src/app/@shared/components/modals/import-co-quan/import-co-quan.component.ts","./src/app/@shared/components/modals/import-co-quan/import-co-quan.component.html","./src/app/@shared/components/modals/import-don-vi-van-tai/import-don-vi-van-tai.component.ts","./src/app/@shared/components/modals/import-don-vi-van-tai/import-don-vi-van-tai.component.html","./src/app/@shared/components/modals/import-giay-phep-kd-lai-xe/import-giay-phep-kd-lai-xe.component.ts","./src/app/@shared/components/modals/import-giay-phep-kd-lai-xe/import-giay-phep-kd-lai-xe.component.html","./src/app/@shared/components/modals/import-menu/import-menu.component.ts","./src/app/@shared/components/modals/import-menu/import-menu.component.html","./src/app/@shared/components/modals/import-news/import-news.component.ts","./src/app/@shared/components/modals/import-news/import-news.component.html","./src/app/@shared/components/modals/import-nhan-hieu/import-nhan-hieu.component.ts","./src/app/@shared/components/modals/import-nhan-hieu/import-nhan-hieu.component.html","./src/app/@shared/components/modals/import-phu-hieu/import-phu-hieu.component.ts","./src/app/@shared/components/modals/import-phu-hieu/import-phu-hieu.component.html","./src/app/@shared/components/modals/import-phuong-tien/import-phuong-tien.component.ts","./src/app/@shared/components/modals/import-phuong-tien/import-phuong-tien.component.html","./src/app/@shared/components/modals/import-vi-pham/import-vi-pham.component.ts","./src/app/@shared/components/modals/import-vi-pham/import-vi-pham.component.html","./src/app/@shared/components/modals/profile-permission/profile-permission.component.ts","./src/app/@shared/components/modals/profile-permission/profile-permission.component.html","./src/app/@shared/components/personalize/personalize.component.ts","./src/app/@shared/components/personalize/personalize.component.html","./src/app/@shared/components/public/footer/footer.component.ts","./src/app/@shared/components/public/footer/footer.component.html","./src/app/@shared/components/public/header/header.component.ts","./src/app/@shared/components/public/header/header.component.html","./src/app/@shared/components/register-user/register-user.component.ts","./src/app/@shared/components/register-user/register-user.component.html","./src/app/@shared/components/register/register.component.ts","./src/app/@shared/components/register/register.component.html","./src/app/@shared/components/side-menu/side-menu.component.ts","./src/app/@shared/components/side-menu/side-draw.component.html","./src/app/@shared/components/side-settings/side-settings.component.ts","./src/app/@shared/components/side-settings/side-settings.component.html","./src/app/@shared/layouts/da-grid/col.component.ts","./src/app/@shared/layouts/da-grid/flex.directive.ts","./src/app/@shared/layouts/da-grid/index.ts","./src/app/@shared/layouts/da-grid/layout-col.component.ts","./src/app/@shared/layouts/da-grid/layout-row.component.ts","./src/app/@shared/layouts/da-grid/layout-utils.ts","./src/app/@shared/layouts/da-grid/layout.module.ts","./src/app/@shared/layouts/da-grid/layout.types.ts","./src/app/@shared/layouts/da-grid/public-api.ts","./src/app/@shared/layouts/da-grid/row.component.ts","./src/app/@shared/layouts/da-grid/screen-media-query.service.ts","./src/app/@shared/layouts/da-grid/style.directive.ts","./src/app/@shared/layouts/da-layout/da-layout.component.ts","./src/app/@shared/layouts/da-layout/da-layout.component.html","./src/app/@shared/layouts/da-layout/da-layout.config.ts","./src/app/@shared/layouts/da-layout/da-layout.module.ts","./src/app/@shared/layouts/da-layout/da-layout.service.ts","./src/app/@shared/layouts/da-layout/default-layout.config.ts","./src/app/@shared/layouts/da-layout/index.ts","./src/app/@shared/layouts/da-layout/public-api.ts","./src/app/@shared/models/theme.ts","./src/app/@shared/pipe/cancellation-minutes-status.pipe.ts","./src/app/@shared/pipe/format-date-for-view.pipe.ts","./src/app/@shared/pipe/mining-file-status.pipe.ts","./src/app/@shared/pipe/parseFromPipe.pipe.ts","./src/app/@shared/pipe/profile-status.pipe.ts","./src/app/@shared/shared.module.ts","./src/app/api.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/auth.interceptor.ts","./src/app/public/not-found/not-found.component.ts","./src/app/public/not-found/not-found.component.html","./src/assets/i18n/en-US.ts","./src/assets/i18n/en-US/abnormal.ts","./src/assets/i18n/en-US/auth-guard.ts","./src/assets/i18n/en-US/dashboard.ts","./src/assets/i18n/en-US/footer.ts","./src/assets/i18n/en-US/form.ts","./src/assets/i18n/en-US/header.ts","./src/assets/i18n/en-US/list.ts","./src/assets/i18n/en-US/login.ts","./src/assets/i18n/en-US/notice.ts","./src/assets/i18n/en-US/page.ts","./src/assets/i18n/en-US/personalize.ts","./src/assets/i18n/en-US/register.ts","./src/assets/i18n/en-US/side-setting.ts","./src/config/config.ts","./src/config/custom-theme.ts","./src/config/language-config.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { throwIfAlreadyLoaded } from './module-import-guard';\r\nimport { AuthService } from './services/auth.service';\r\nimport { CommonService } from './services/common.service';\r\nimport { MockDataModule } from './mock/mock-data.module';\r\nimport { ListData } from './data/listData';\r\nimport { ListDataService } from './mock/list-data.service';\r\nimport { PersonalizeService } from './services/personalize.service';\r\nimport { AuthGuardService } from './services/auth-guard-service.guard';\r\nimport { CustomThemeService } from './services/custom-theme.service';\r\nimport { NoticeData } from './data/noticeData';\r\nimport { NoticeDataService } from './mock/notice-data.service';\r\n\r\nconst DATA_SERVICES = [\r\n { provide: ListData, useClass: ListDataService },\r\n { provide: NoticeData, useClass: NoticeDataService },\r\n];\r\n\r\nexport const DEVUI_CORE_PROVIDERS = [\r\n ...MockDataModule.forRoot().providers!,\r\n ...DATA_SERVICES,\r\n AuthService,\r\n PersonalizeService,\r\n AuthGuardService,\r\n CustomThemeService,\r\n CommonService,\r\n];\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [CommonModule],\r\n})\r\nexport class CoreModule {\r\n constructor(@Optional() @SkipSelf() parentModule: CoreModule) {\r\n throwIfAlreadyLoaded(parentModule, 'CoreModule');\r\n }\r\n\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: CoreModule,\r\n providers: [...DEVUI_CORE_PROVIDERS],\r\n };\r\n }\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\n\r\nexport interface Item {\r\n id?: string;\r\n title?: string;\r\n priority?: string;\r\n iteration?: string;\r\n assignee?: string;\r\n status?: string;\r\n timeline?: string;\r\n $checked?: boolean;\r\n $expandConfig?: any;\r\n children?: any;\r\n chosen?: boolean;\r\n $isChildTableOpen?: boolean;\r\n}\r\n\r\nexport interface Area {\r\n area_rcd?: number;\r\n area_name?: string;\r\n country_rcd?: number;\r\n area_group?: number;\r\n area_note?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface Department {\r\n department_rcd?: number;\r\n department_code?:number;\r\n departmment_name_e?: string; \r\n departmment_name_l?: string;\r\n sort_order?:number;\r\n department_note_e?: string; \r\n department_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface Role {\r\n role_rcd?: number;\r\n role_code?:number;\r\n role_name_e?: string; \r\n role_name_l?: string;\r\n sort_order?:number;\r\n role_note_e?: string; \r\n role_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface Users {\r\n user_rcd: string;\r\n user_code:string;\r\n full_name: string;\r\n gender:string;\r\n date_of_birth:string;\r\n email:string;\r\n phone_number:string;\r\n address:string;\r\n user_name: string; \r\n pass_word:string;\r\n user_note_e?: string;\r\n user_note_l?: string;\r\n department_rcd?:string;\r\n active_flag?: number;\r\n}\r\n\r\n\r\nexport interface Fields {\r\n fields_rcd?: number;\r\n fields_name_e?: string; \r\n fields_name_l?: string;\r\n sort_order?:number;\r\n fields_note_e?: string; \r\n fields_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface Confidentiality {\r\n confidentiality_rcd?: number;\r\n confidentiality_name_e?: string; \r\n confidentiality_name_l?: string;\r\n sort_order?:number;\r\n confidentiality_note_e?: string; \r\n confidentiality_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface AgencyIssued {\r\n agency_issued_rcd?: number;\r\n agency_issued_name_e?: string; \r\n agency_issued_name_l?: string;\r\n sort_order?:number;\r\n agency_issued_note_e?: string; \r\n agency_issued_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface Archives {\r\n archives_rcd?: number;\r\n archives_name_e?: string; \r\n archives_name_l?: string;\r\n sort_order?:number;\r\n archives_note_e?: string; \r\n archives_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface DurationStorage {\r\n duration_storage_rcd?: number;\r\n duration_storage_name_e?: string; \r\n duration_storage_name_l?: string;\r\n sort_order?:number;\r\n duration_storage_note_e?: string; \r\n duration_storage_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface PhysicalCondition {\r\n physical_condition_rcd?: number;\r\n physical_condition_name_e?: string; \r\n physical_condition_name_l?: string;\r\n sort_order?:number;\r\n physical_condition_note_e?: string; \r\n physical_condition_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface MiningPurpose {\r\n mining_purpose_rcd?: number;\r\n mining_purpose_name_e?: string; \r\n mining_purpose_name_l?: string;\r\n sort_order?:number;\r\n mining_purpose_note_e?: string; \r\n mining_purpose_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface MiningBook {\r\n mining_book_rcd?: number;\r\n mining_book_name_e?: string; \r\n mining_book_name_l?: string;\r\n sort_order?:number;\r\n mining_book_note_e?: string; \r\n mining_book_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface DocumentType {\r\n document_type_rcd?: number;\r\n document_type_name_e?: string; \r\n document_type_name_l?: string; \r\n sort_order?:number;\r\n document_type_note_e?: string; \r\n document_type_note_l?: string;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface ArchiveFonts {\r\n archive_fonts_rcd?: number;\r\n archive_fonts_name_e?: string; \r\n archive_fonts_name_l?: string; \r\n sort_order?:number;\r\n archive_fonts_note_e?: string; \r\n archive_fonts_note_l?: string;\r\n active_flag?: number;\r\n }\r\n\r\nexport interface DocumentRef {\r\n document_rcd ?: string;\r\n document_number?: string;\r\n document_name_e?: string;\r\n document_name_l?: string;\r\n date?:string;\r\n excerpt?:string;\r\n author?:string;\r\n number_of_paper?:number;\r\n document_note_l?:string;\r\n document_note_e?:string;\r\n sort_order?:number;\r\n attached_file?:string;\r\n document_type_rcd?:string;\r\n physical_condition_rcd?:string;\r\n confidentiality_rcd?:string;\r\n profile_rcd?:string;\r\n active_flag?:number;\r\n created_by_user_id?:string;\r\n created_date_time?:string;\r\n lu_updated?:string;\r\n lu_user_id?:string;\r\n document_type_name_l?:string;\r\n physical_condition_name_l?:string;\r\n confidentiality_name_l?:string;\r\n profile_number?:string;\r\n}\r\n\r\nexport interface Profile {\r\n profile_rcd?:any;\r\n\t\tprofile_code?:any;\r\n\t profile_number?:any;\r\n profile_name_e?:any;\r\n profile_name_l?:any;\r\n\t\tfrom_date?:any;\r\n\t\tto_date?:any;\r\n\t\tyear?:any;\r\n\t\tnumber_of_paper?:any;\r\n\t\tprofile_note_l?:any;\r\n profile_note_e?:any;\r\n status?:any;\r\n\t\tsort_order?:any;\r\n is_digital_profile?:any;\r\n cancellation_reason?:any;\r\n date_pending?:any;\r\n date_edited?:any;\r\n date_pending_cancellation?:any;\r\n date_cancellation?:any;\r\n agency_issued_ref?:any;\r\n confidentiality_rcd?:any;\r\n profile_box_rcd?:any;\r\n fields_rcd?:any;\r\n archive_fonts_rcd?:any;\r\n phong_rcd?:any;\r\n duration_storage_rcd?:any;\r\n archives_rcd?:any;\r\n profile_type_rcd?:any;\r\n agency_issued_rcd?:any;\r\n \r\n active_flag?:any;\r\n created_by_user_id?:any;\r\n created_date_time?:any;\r\n lu_updated?:any;\r\n\t\tlu_user_id?:any;\r\n\r\n profile_type_name_l?:any;\r\n agency_issued_name_l?:any;\r\n archives_name_l?:any;\r\n phong_name_l?:any;\r\n gear?:any;\r\n}\r\n\r\nexport interface ProfileRef {\r\n profile_rcd?: number;\r\n profile_code?: string;\r\n profile_number?: number;\r\n profile_type_rcd?: string;\r\n profile_box_rcd?: string;\r\n phong_rcd?: string;\r\n archives_rcd?: string;\r\n duration_storage_rcd?: string;\r\n agency_issued_ref?: string;\r\n profile_name?: string;\r\n from_date?: Date;\r\n to_date?: Date;\r\n number_of_pager?: number;\r\n profile_note?: string;\r\n cancellation_reason?: string;\r\n is_digital_profile?: number;\r\n status?: number;\r\n sort_order?: number;\r\n active_flag?: number;\r\n}\r\nexport interface CancellationMinutesRef {\r\n cancellation_minutes_rcd?: number;\r\n staff_rcd?: string;\r\n cancellation_minutes_number?: number;\r\n decision_number?: number;\r\n number_of_cancellations?: number;\r\n content?: string;\r\n place?: string;\r\n cancellation_method?: string;\r\n time_destroy?: Date;\r\n cancellation_minutes_note?: string;\r\n attached_file?: string;\r\n status?: number;\r\n comment?: string;\r\n active_flag?: number;\r\n}\r\n// export interface Profile {\r\n\r\n// profile_code?: number;\r\n// profile_name_l?: string;\r\n// profile_type_rcd?: number;\r\n// profile_number?: number;\r\n// from_date?:Date;\r\n// to_date?:Date;\r\n// year?:number;\r\n// number_of_paper?: number;\r\n// active_flag?: number;\r\n\r\n// }\r\nexport interface HandoverMinutesRef {\r\n handover_minutes_rcd?: number;\r\n staff_rcd?: string;\r\n profile_rcd?: string;\r\n handover_minutes_name?: number;\r\n // handover_minutes_name_e?: number;\r\n place?: string;\r\n reason?: string;\r\n time_destroy?: Date;\r\n cancellation_minutes_note?: string;\r\n attached_file?: string;\r\n // status?: number;\r\n // comment?: string;\r\n sort_order?: number;\r\n active_flag?: number;\r\n // created_by_user_id?: string;\r\n // created_date_time?: Date;\r\n // lu_updated?: Date;\r\n // lu_user_id?: string;\r\n}\r\n\r\nexport interface MiningBookRef {\r\n mining_book_rcd?: number;\r\n mining_name?: string;\r\n mining_note?: string;\r\n sort_order?: number;\r\n active_flag?: number;\r\n}\r\n\r\nexport interface ListPager {\r\n pageSize?: number;\r\n pageIndex?: number\r\n}\r\n\r\n\r\nexport interface CardAction {\r\n icon?: string;\r\n num?: string;\r\n}\r\n\r\nexport interface Card {\r\n name?: string;\r\n id?: number;\r\n ame?: string;\r\n title?: string;\r\n imgSrc?: string;\r\n subTitle?: string;\r\n content?: string;\r\n agreeNum?: number;\r\n starsNum?: number;\r\n messageNum?: number;\r\n actions?: CardAction[];\r\n}\r\n\r\nexport interface ProfileRefStatistical {\r\n department_rcd?: string;\r\n department_name_l?: string;\r\n total_edited?: number;\r\n total?: number;\r\n total_digitized?: number;\r\n}\r\n\r\nexport abstract class ListData {\r\n abstract getListData(pager: ListPager): Observable;\r\n abstract getOriginSource(pager: ListPager): Observable;\r\n abstract getTreeSource(pager: ListPager): Observable;\r\n abstract getCardSource(pager: ListPager): Observable;\r\n}\r\n","import { Observable } from 'rxjs';\r\n\r\nexport interface Notification {\r\n type: string;\r\n title: string;\r\n time: string;\r\n icon: string;\r\n id: string;\r\n status: number;\r\n}\r\n\r\nexport interface Message {\r\n image: string;\r\n title: string;\r\n content: string;\r\n time: string;\r\n id: string;\r\n status: number;\r\n}\r\n\r\nexport interface Todo {\r\n tagName: string;\r\n tagType: string;\r\n title: string;\r\n memo: string;\r\n id: string;\r\n status: number;\r\n}\r\n\r\nexport abstract class NoticeData {\r\n abstract getNotifications(): Observable;\r\n abstract getMessages(): Observable;\r\n abstract getTodos(): Observable;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { of as observableOf, Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class EchartsService {\r\n private serviceWaterLine = {\r\n tooltip: {\r\n trigger: 'axis',\r\n confine: true,\r\n },\r\n legend: {\r\n data: ['服务水位'],\r\n type: 'scroll',\r\n show: false,\r\n orient: 'horizontal',\r\n top: '6%',\r\n right: '6%',\r\n icon: 'circle',\r\n itemWidth: 13,\r\n itemHeight: 6,\r\n itemGap: 13,\r\n textStyle: {\r\n fontSize: 14,\r\n color: '#E5E5E5',\r\n },\r\n },\r\n toolbox: {},\r\n xAxis: {\r\n type: 'category',\r\n boundaryGap: true,\r\n data: [\r\n '00:00',\r\n '00:30',\r\n '01:00',\r\n '01:30',\r\n '02:00',\r\n '02:30',\r\n '03:00',\r\n '03:30',\r\n '04:00',\r\n '04:30',\r\n '05:00',\r\n '05:30',\r\n '06:00',\r\n '06:30',\r\n '07:00',\r\n '07:30',\r\n '08:00',\r\n '08:30',\r\n '09:00',\r\n '09:30',\r\n '10:00',\r\n '10:30',\r\n '11:00',\r\n '11:30',\r\n '12:00',\r\n '12:30',\r\n '13:00',\r\n '13:30',\r\n '14:00',\r\n '14:30',\r\n '15:00',\r\n '15:30',\r\n '16:00',\r\n '16:30',\r\n '17:00',\r\n '17:00',\r\n '18:00',\r\n '18:30',\r\n '19:00',\r\n '19:30',\r\n '20:00',\r\n '20:30',\r\n '21:00',\r\n '21:30',\r\n '22:00',\r\n '22:30',\r\n '23:00',\r\n '23:30',\r\n '23:50',\r\n '23:55',\r\n '24:00',\r\n ],\r\n axisLine: {\r\n show: true,\r\n lineStyle: {\r\n color: 'rgba(0, 0, 0, 0.4)',\r\n width: 1,\r\n type: 'solid',\r\n },\r\n },\r\n axisTick: {\r\n show: false,\r\n },\r\n axisLabel: {\r\n color: 'rgba(103, 103, 103, 1)',\r\n fontSize: 14,\r\n interval: 10,\r\n rotate: 0,\r\n },\r\n show: true,\r\n },\r\n yAxis: {\r\n type: 'value',\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n color: 'rgba(0, 0, 0, 0.12)',\r\n type: 'dashed',\r\n },\r\n },\r\n axisTick: {\r\n show: false,\r\n },\r\n axisLabel: {\r\n color: 'rgba(103, 103, 103, 1)',\r\n },\r\n show: true,\r\n minInterval: 10,\r\n },\r\n series: [\r\n {\r\n name: '服务水位',\r\n data: [\r\n 21.69, 30.16, 11.64, 11.64, 31.22, 17.46, 14.81, 44.44, 28.57, 14.81, 12.7, 35.98, 23.28, 16.93, 19.58, 8.99, 11.64, 4.23, 5.29,\r\n 1.06, 3.7, 3.17, 3.17, 5.82, 16.4, 15.87, 18.52, 13.76, 19.05, 26.46, 30.16, 24.87, 23.81, 24.87, 16.93, 17.99, 13.76, 10.58,\r\n 20.63, 12.7, 13.17, 15.82, 16.4, 15.87, 8.52, 3.76, 19.05, 6.46, 30.16, 24.87, 13.81,\r\n ],\r\n type: 'line',\r\n smooth: false,\r\n markPoint: {\r\n data: [],\r\n },\r\n\r\n label: {\r\n show: false,\r\n position: 'top',\r\n color: 'rgba(255, 255, 255, 1)',\r\n },\r\n areaStyle: {\r\n color: {\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n type: 'linear',\r\n global: false,\r\n //区域颜色\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: 'rgba(29, 209, 161, 0.2)',\r\n },\r\n {\r\n offset: 1,\r\n color: 'rgba(29, 209, 161, 0)',\r\n },\r\n ],\r\n },\r\n },\r\n lineStyle: {\r\n color: {\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n type: 'linear',\r\n global: false,\r\n colorStops: [\r\n {\r\n offset: 1,\r\n color: 'rgba(29, 209, 161, 1)',\r\n },\r\n ],\r\n },\r\n opacity: 1,\r\n width: 3,\r\n },\r\n itemStyle: {\r\n opacity: 1,\r\n color: {\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n type: 'linear',\r\n global: false,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: 'rgba(157, 245, 5, 1)',\r\n },\r\n {\r\n offset: 1,\r\n color: 'rgba(23, 240, 248, 0.84)',\r\n },\r\n ],\r\n },\r\n },\r\n symbolSize: 0,\r\n symbol: 'circle',\r\n max: 44.44,\r\n },\r\n ],\r\n };\r\n\r\n private pie = {\r\n grid: {\r\n containLabel: true,\r\n bottom: '23',\r\n top: '60',\r\n left: '23',\r\n right: '38',\r\n },\r\n tooltip: {\r\n trigger: 'item',\r\n formatter: '{a}
{b}: {c} ({d}%)',\r\n },\r\n legend: {\r\n orient: 'vertical',\r\n left: 'auto',\r\n top: 'center',\r\n data: ['可容忍', '满意', '不可容忍', '极端异常', '良好'],\r\n },\r\n series: [\r\n {\r\n name: '访问数量',\r\n type: 'pie',\r\n radius: ['50%', '70%'],\r\n avoidLabelOverlap: false,\r\n emphasis: {\r\n label: {\r\n show: true,\r\n fontSize: '20',\r\n },\r\n },\r\n label: {\r\n show: false,\r\n position: 'center',\r\n },\r\n labelLine: {\r\n show: false,\r\n },\r\n data: [\r\n { value: 335, name: '可容忍' },\r\n { value: 310, name: '满意' },\r\n { value: 234, name: '不可容忍' },\r\n { value: 135, name: '极端异常' },\r\n { value: 1548, name: '良好' },\r\n ],\r\n },\r\n ],\r\n };\r\n\r\n private historgram = {\r\n tooltip: {\r\n trigger: 'axis',\r\n axisPointer: { type: 'cross', label: { backgroundColor: '#6a7985' } },\r\n },\r\n legend: {\r\n data: ['US', 'Story', 'Task', 'BUG', '类型总量'],\r\n top: 10,\r\n left: 15,\r\n },\r\n grid: {\r\n left: '3%',\r\n right: '4%',\r\n bottom: '1%',\r\n top: '80',\r\n containLabel: true,\r\n },\r\n xAxis: {\r\n type: 'category',\r\n boundaryGap: true,\r\n data: [\r\n '2020年02月',\r\n '2020年03月',\r\n '2020年04月',\r\n '2020年05月',\r\n '2020年06月',\r\n '2020年07月',\r\n '2020年08月',\r\n '2020年09月',\r\n '2020年10月',\r\n '2020年11月',\r\n '2020年12月',\r\n '2021年01月',\r\n '2021年02月',\r\n '2021年03月',\r\n ],\r\n axisLabel: { interval: 'auto', fontSize: 16 },\r\n },\r\n yAxis: { type: 'value', axisLabel: { fontSize: 16 } },\r\n series: [\r\n {\r\n name: 'US',\r\n type: 'bar',\r\n barMaxWidth: 40,\r\n label: { show: false, color: '#ffffff' },\r\n emphasis: { focus: 'series' },\r\n data: [0, 8, 3, 110, 183, 168, 94, 67, 52, 70, 67, 0, 0, 0],\r\n itemStyle: {\r\n color: '#1DD1A1',\r\n },\r\n },\r\n {\r\n name: 'Story',\r\n type: 'bar',\r\n barMaxWidth: 40,\r\n label: { show: false, color: '#ffffff' },\r\n emphasis: { focus: 'series' },\r\n data: [0, 0, 0, 0, 0, 0, 0, 14, 58, 55, 69, 77, 60, 59],\r\n itemStyle: {\r\n color: '#3F8FEC',\r\n },\r\n },\r\n {\r\n name: 'Task',\r\n type: 'bar',\r\n barMaxWidth: 40,\r\n label: { show: false, color: '#ffffff' },\r\n emphasis: { focus: 'series' },\r\n data: [0, 0, 0, 2, 7, 3, 12, 52, 6, 13, 24, 25, 12, 6],\r\n itemStyle: {\r\n color: '#FECA57',\r\n },\r\n },\r\n {\r\n name: 'BUG',\r\n type: 'bar',\r\n barMaxWidth: 40,\r\n label: { show: false, color: '#ffffff' },\r\n emphasis: { focus: 'series' },\r\n data: [7, 31, 41, 40, 44, 82, 64, 63, 33, 39, 36, 27, 9, 9],\r\n itemStyle: {\r\n color: '#855CF8',\r\n },\r\n },\r\n {\r\n name: '类型总量',\r\n type: 'bar',\r\n barMaxWidth: 40,\r\n label: { show: false, color: '#ffffff' },\r\n emphasis: { focus: 'series' },\r\n data: [7, 39, 44, 152, 234, 253, 170, 196, 149, 177, 196, 129, 81, 74],\r\n itemStyle: {\r\n color: '#F79044',\r\n },\r\n },\r\n ],\r\n };\r\n\r\n private lineChart = {\r\n tooltip: {\r\n trigger: 'axis',\r\n },\r\n legend: {\r\n data: ['流量峰值', '平均流量'],\r\n },\r\n\r\n calculable: true,\r\n\r\n xAxis: [\r\n {\r\n axisLabel: {\r\n rotate: 30,\r\n interval: 0,\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: '#CECECE',\r\n },\r\n },\r\n type: 'category',\r\n boundaryGap: true,\r\n data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],\r\n },\r\n ],\r\n yAxis: [\r\n {\r\n type: 'value',\r\n axisLine: {\r\n lineStyle: {\r\n color: '#CECECE',\r\n },\r\n },\r\n },\r\n ],\r\n series: [\r\n {\r\n name: '流量峰值',\r\n type: 'line',\r\n symbol: 'none',\r\n smooth: 0.2,\r\n color: ['#1DD1A1'],\r\n data: [20222, 10222, 152222, 22222, 30222, 44222, 40222],\r\n areaStyle: {\r\n color: {\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n type: 'linear',\r\n global: false,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: 'rgba(29, 209, 161, 0.2)',\r\n },\r\n {\r\n offset: 1,\r\n color: 'rgba(29, 209, 161, 0)',\r\n },\r\n ],\r\n },\r\n },\r\n },\r\n {\r\n name: '平均流量',\r\n type: 'line',\r\n symbol: 'none',\r\n smooth: 0.2,\r\n color: ['#3F8FEC'],\r\n data: [10001, 20001, 30010, 40100, 50010, 60100, 70010],\r\n areaStyle: {\r\n color: {\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n type: 'linear',\r\n global: false,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: 'rgba(63, 143, 236, 0.2)',\r\n },\r\n {\r\n offset: 1,\r\n color: 'rgba(63, 143, 236, 0)',\r\n },\r\n ],\r\n },\r\n },\r\n },\r\n ],\r\n };\r\n\r\n private monitor = {\r\n series: [\r\n {\r\n type: 'gauge',\r\n progress: {\r\n show: true,\r\n width: 10,\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n width: 10,\r\n },\r\n },\r\n axisTick: {\r\n show: false,\r\n },\r\n splitLine: {\r\n show: false,\r\n length: 15,\r\n lineStyle: {\r\n width: 2,\r\n color: '#999',\r\n },\r\n },\r\n axisLabel: {\r\n show: false,\r\n distance: 25,\r\n color: '#999',\r\n fontSize: 14,\r\n },\r\n anchor: {\r\n show: true,\r\n showAbove: true,\r\n size: 20,\r\n itemStyle: {\r\n borderWidth: 8,\r\n },\r\n },\r\n title: {\r\n show: false,\r\n },\r\n detail: {\r\n valueAnimation: true,\r\n formatter: '{value}%',\r\n fontSize: 30,\r\n offsetCenter: [0, '70%'],\r\n },\r\n data: [\r\n {\r\n value: 70,\r\n },\r\n ],\r\n },\r\n ],\r\n };\r\n\r\n private person = {\r\n tooltip: {\r\n trigger: 'axis',\r\n axisPointer: {\r\n type: 'cross',\r\n crossStyle: {\r\n color: '#999',\r\n },\r\n },\r\n },\r\n legend: {\r\n data: ['新增用户数', '流失用户数', '总体用户数'],\r\n },\r\n xAxis: [\r\n {\r\n type: 'category',\r\n data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],\r\n axisPointer: {\r\n type: 'shadow',\r\n },\r\n },\r\n ],\r\n yAxis: [\r\n {\r\n type: 'value',\r\n name: '人数',\r\n min: 0,\r\n max: 200,\r\n interval: 50,\r\n axisLabel: {\r\n formatter: '{value} 人',\r\n },\r\n },\r\n ],\r\n series: [\r\n {\r\n name: '新增用户数',\r\n type: 'bar',\r\n data: [50, 60, 70, 80, 90, 180, 135, 162, 60, 20, 100, 90],\r\n },\r\n {\r\n name: '流失用户数',\r\n type: 'bar',\r\n data: [10, 10, 20, 15, 30, 50, 60, 10, 30, 5, 10, 20],\r\n },\r\n {\r\n name: '总体用户数',\r\n type: 'line',\r\n data: [60, 70, 80, 90, 100, 190, 150, 180, 80, 80, 150, 120],\r\n },\r\n ],\r\n };\r\n\r\n private map = {\r\n tooltip: {\r\n trigger: 'item',\r\n showDelay: 0,\r\n transitionDuration: 0.2,\r\n formatter: function (params: any) {\r\n return `用户数
${params.name}: ${params.value}`;\r\n },\r\n },\r\n visualMap: {\r\n left: 'right',\r\n min: 0,\r\n max: 200,\r\n inRange: {\r\n color: ['#BDFDFF', '#9FE1FF', '#81C5FF', '#61AAFF', '#3F8FEC', '#0676D0', '#005DB4', '#004698', '#00307E'],\r\n },\r\n text: ['High', 'Low'], // 文本,默认为数值文本\r\n calculable: true,\r\n },\r\n series: [\r\n {\r\n map: 'china',\r\n type: 'map',\r\n emphasis: {\r\n label: {\r\n show: true,\r\n },\r\n },\r\n\r\n data: [],\r\n },\r\n ],\r\n };\r\n\r\n getServiceWaterLine(): Observable {\r\n return observableOf(this.serviceWaterLine);\r\n }\r\n\r\n getPie(): Observable {\r\n return observableOf(this.pie);\r\n }\r\n\r\n getHistorgram(): Observable {\r\n return observableOf(this.historgram);\r\n }\r\n\r\n getLineChart(): Observable {\r\n return observableOf(this.lineChart);\r\n }\r\n\r\n getMonitor(): Observable {\r\n return observableOf(this.monitor);\r\n }\r\n\r\n getPerson(): Observable {\r\n return observableOf(this.person);\r\n }\r\n\r\n getMap(): Observable {\r\n return observableOf(this.map);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of as observableOf } from 'rxjs';\r\nimport { delay } from 'rxjs/operators';\r\nimport { Item, ListData, Card, ListPager } from '../data/listData';\r\n\r\n@Injectable()\r\nexport class ListDataService extends ListData {\r\n private basicData: Item[] = [\r\n {\r\n id: '230000200706283786',\r\n title: 'Yriqtjdjd Omvqxe Xxlfgjtnj Hsyf Qecu',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Shirley Martin',\r\n status: 'Stuck',\r\n timeline: '1985-01-10',\r\n children: [\r\n {\r\n id: '230000197101025982',\r\n title: 'Volbp Wdobo Ukme Szbgjmeo Kobn Aawyirm Rmbobdyn',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Daniel Martinez',\r\n status: 'Done',\r\n timeline: '2008-08-02',\r\n },\r\n {\r\n id: '230000197101025982',\r\n title: 'Volbp Wdobo Ukme Szbgjmeo Kobn Aawyirm Rmbobdyn',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Daniel Martinez',\r\n status: 'Done',\r\n timeline: '2008-08-02',\r\n children: [\r\n {\r\n id: '22000019860224174X',\r\n title: 'Ozhtyax Wfpp Essvpkjrx Havonov Cdcmgmggnj Vqwcwd Ooolirn',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Margaret Clark',\r\n status: '',\r\n timeline: '2015-05-08',\r\n },\r\n {\r\n id: '140000197907226183',\r\n title: 'Govfunhwa Gkvcrv Uvbq Gqyrwntx Ofnnuwrnh',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Jason Rodriguez',\r\n status: 'Done',\r\n timeline: '1994-02-08',\r\n },\r\n {\r\n id: '440000201807134089',\r\n title: 'Rbh Wklmth Xkeg Iuzan Isufy',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Kenneth Robinson',\r\n status: 'Done',\r\n timeline: '2017-02-04',\r\n },\r\n ],\r\n },\r\n {\r\n id: '520000200110166246',\r\n title: 'Rrqcneg Iknm Tbo',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Paul Hernandez',\r\n status: 'Stuck',\r\n timeline: '2017-02-01',\r\n },\r\n ],\r\n },\r\n {\r\n id: '710000197203093702',\r\n title: 'Hwgx Vkdg Kfap Tke Miyxg Hyelo',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Michael Walker',\r\n status: 'Stuck',\r\n timeline: '2018-08-04',\r\n },\r\n {\r\n id: '230000197101025982',\r\n title: 'Volbp Wdobo Ukme Szbgjmeo Kobn Aawyirm Rmbobdyn',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Daniel Martinez',\r\n status: 'Done',\r\n timeline: '2008-08-02',\r\n },\r\n {\r\n id: '520000200110166246',\r\n title: 'Rrqcneg Iknm Tbo',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Paul Hernandez',\r\n status: 'Stuck',\r\n timeline: '2017-02-01',\r\n },\r\n {\r\n id: '22000019860224174X',\r\n title: 'Ozhtyax Wfpp Essvpkjrx Havonov Cdcmgmggnj Vqwcwd Ooolirn',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Margaret Clark',\r\n status: '',\r\n timeline: '2015-05-08',\r\n },\r\n {\r\n id: '140000197907226183',\r\n title: 'Govfunhwa Gkvcrv Uvbq Gqyrwntx Ofnnuwrnh',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Jason Rodriguez',\r\n status: 'Done',\r\n timeline: '1994-02-08',\r\n },\r\n {\r\n id: '440000201807134089',\r\n title: 'Rbh Wklmth Xkeg Iuzan Isufy',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Kenneth Robinson',\r\n status: 'Done',\r\n timeline: '2017-02-04',\r\n },\r\n {\r\n id: '430000197502028524',\r\n title: 'Zcbap Qqoyxrimw Hndekkk',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Jason Garcia',\r\n status: 'Done',\r\n timeline: '2009-09-09',\r\n },\r\n {\r\n id: '360000199102159374',\r\n title: 'Sarbgroo Rpru Krzhklgihv Vfgha Bunyqz',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Michelle Lee',\r\n status: 'Done',\r\n timeline: '2019-02-22',\r\n },\r\n {\r\n id: '530000200702210206',\r\n title: 'Tksno Nvsche Rmysrkwsy Qxjvulnsd Rzo',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Ruth Anderson',\r\n status: 'Done',\r\n timeline: '1980-01-05',\r\n },\r\n {\r\n id: '120000201207262146',\r\n title: 'Mcpnwxqws Dfqrmphi Ipl',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Susan Garcia',\r\n status: 'Done',\r\n timeline: '1972-01-14',\r\n },\r\n {\r\n id: '360000199409270026',\r\n title: 'Lwomkvcng Hwwj Hhjxlz',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Kevin Johnson',\r\n status: 'Done',\r\n timeline: '1991-06-03',\r\n },\r\n {\r\n id: '500000201603203501',\r\n title: 'Mjfflwan Oebhykk Ppjpy Itnxlw Jqtm Lcsloswa',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Jennifer Harris',\r\n status: 'Stuck',\r\n timeline: '2014-08-09',\r\n },\r\n {\r\n id: '130000197712017750',\r\n title: 'Sdudlc Hcrfkaz Kufynndl Oprvfsh Teipjsd',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Kimberly Harris',\r\n status: 'Stuck',\r\n timeline: '1990-12-12',\r\n },\r\n {\r\n id: '510000201304014163',\r\n title: 'Blhh Pdisxhqkl Ixnj Erbpeel Bjuvr Cdngo',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Angela Martinez',\r\n status: '',\r\n timeline: '2005-04-01',\r\n },\r\n {\r\n id: '820000199503017685',\r\n title: 'Bjzruarho Yqwrkksnkb Gsjr Otwbvihju',\r\n priority: 'Medium',\r\n iteration: 'iteration',\r\n assignee: 'Ronald Hernandez',\r\n status: 'Working on it',\r\n timeline: '2016-07-01',\r\n },\r\n {\r\n id: '820000198503197802',\r\n title: 'Zjc Jwtut Mftvcu Ctylolht Xcdi',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Edward Wilson',\r\n status: 'Stuck',\r\n timeline: '1989-03-29',\r\n },\r\n {\r\n id: '820000201707240870',\r\n title: 'Cbksh Iswxgkytcw Pmbzpv Hphtfnxw',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Betty Lewis',\r\n status: 'Done',\r\n timeline: '1987-09-21',\r\n },\r\n {\r\n id: '460000197810188840',\r\n title: 'Vmjjt Qpqjcb Ffwmwnxdn Tften Yidwthci',\r\n priority: 'Low',\r\n iteration: 'iteration',\r\n assignee: 'Angela Jones',\r\n status: 'Done',\r\n timeline: '2003-03-20',\r\n },\r\n {\r\n id: '130000198908073513',\r\n title: 'Avkacxzqab Bfxtwexs Buwwvxe',\r\n priority: 'High',\r\n iteration: 'iteration',\r\n assignee: 'Anthony Jones',\r\n status: 'Stuck',\r\n timeline: '2003-02-22',\r\n },\r\n ];\r\n\r\n private cardSource: Card[] = [\r\n {\r\n name: 'Angular',\r\n title: 'Angular',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'DevUI',\r\n title: 'DevUI',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计...',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'BootStrap',\r\n title: 'BootStrap',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'React',\r\n title: 'React',\r\n imgSrc: 'https://codingthesmartway.com/wp-content/uploads/2019/12/logo_react.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Vue',\r\n title: 'Vue',\r\n imgSrc: 'https://vuejs.org/images/logo.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Webpack',\r\n title: 'Webpack',\r\n imgSrc: 'https://webpack.js.org/icon-square-small.85ba630cf0c5f29ae3e3.svg',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'DevUI',\r\n title: 'DevUI',\r\n content:\r\n 'DevUI是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计...',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'BootStrap',\r\n title: 'BootStrap',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'React',\r\n title: 'React',\r\n imgSrc: 'https://codingthesmartway.com/wp-content/uploads/2019/12/logo_react.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Vue',\r\n title: 'Vue',\r\n imgSrc: 'https://vuejs.org/images/logo.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Webpack',\r\n title: 'Webpack',\r\n imgSrc: 'https://webpack.js.org/icon-square-small.85ba630cf0c5f29ae3e3.svg',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'DevUI',\r\n title: 'DevUI',\r\n content:\r\n 'DevUI是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计...',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'BootStrap',\r\n title: 'BootStrap',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'React',\r\n title: 'React',\r\n imgSrc: 'https://codingthesmartway.com/wp-content/uploads/2019/12/logo_react.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Vue',\r\n title: 'Vue',\r\n imgSrc: 'https://vuejs.org/images/logo.png',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n {\r\n name: 'Webpack',\r\n title: 'Webpack',\r\n imgSrc: 'https://webpack.js.org/icon-square-small.85ba630cf0c5f29ae3e3.svg',\r\n content:\r\n 'DevUI 是面向企业中后台产品的开源前端解决方案,其设计价值观基于\"至简\"、\"沉浸\"、\"灵活\"三种自然与人文相结合的理念,旨在为设计....',\r\n actions: [\r\n {\r\n icon: 'icon-star-o',\r\n num: '617',\r\n },\r\n {\r\n icon: 'icon-fork',\r\n num: '100',\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n private pagerList(data: Item[] | Card[], pager: ListPager) {\r\n return data.slice(pager.pageSize! * (pager.pageIndex! - 1), pager.pageSize! * pager.pageIndex!);\r\n }\r\n\r\n getListData(pager: ListPager): Observable {\r\n return observableOf({\r\n pageList: this.pagerList(this.basicData, pager),\r\n total: this.basicData.length,\r\n }).pipe(delay(1000));\r\n }\r\n\r\n getOriginSource(pager: ListPager): Observable {\r\n return observableOf({\r\n pageList: this.pagerList(this.basicData, pager),\r\n total: this.basicData.length,\r\n }).pipe(delay(1000));\r\n }\r\n\r\n getTreeSource(pager: ListPager): Observable {\r\n return observableOf({\r\n pageList: this.pagerList(this.basicData, pager),\r\n total: this.basicData.length,\r\n }).pipe(delay(1000));\r\n }\r\n\r\n getCardSource(pager: ListPager): Observable {\r\n return observableOf({\r\n pageList: this.pagerList(this.cardSource, pager),\r\n total: this.cardSource.length,\r\n }).pipe(delay(1000));\r\n }\r\n}\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ListDataService } from './list-data.service';\r\nimport { EchartsService } from './echarts.service';\r\nimport { NoticeDataService } from './notice-data.service';\r\n\r\nconst SERVICES = [ListDataService, EchartsService, NoticeDataService];\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [...SERVICES],\r\n})\r\nexport class MockDataModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: MockDataModule,\r\n providers: [...SERVICES],\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of as observableOf } from 'rxjs';\r\nimport { Notification, Message, Todo, NoticeData } from '../data/noticeData';\r\n\r\n@Injectable()\r\nexport class NoticeDataService extends NoticeData {\r\n private notifications: Notification[] = [\r\n {\r\n type: 'success',\r\n title: '你提交的XXX申请已经通过',\r\n time: '1天前',\r\n icon: 'notice',\r\n id: '1',\r\n status: 0,\r\n },\r\n {\r\n type: 'warning',\r\n title: '你内推的人已经在走流程',\r\n time: '2天前',\r\n icon: 'message-2',\r\n id: '2',\r\n status: 0,\r\n },\r\n {\r\n type: 'warning',\r\n title: '2021年7月1日早有会议',\r\n time: '3天前',\r\n icon: 'message-2',\r\n id: '3',\r\n status: 0,\r\n },\r\n {\r\n type: 'info',\r\n title: '你提交的XXX申请已经通过',\r\n time: '4天前',\r\n icon: 'infomation',\r\n id: '4',\r\n status: 0,\r\n },\r\n {\r\n type: 'info',\r\n title: '你提交的XXX申请已经通过',\r\n time: '5天前',\r\n icon: 'infomation',\r\n id: '5',\r\n status: 0,\r\n },\r\n {\r\n type: 'info',\r\n title: '你提交的XXX申请已经通过',\r\n time: '5天前',\r\n icon: 'infomation',\r\n id: '6',\r\n status: 0,\r\n },\r\n ];\r\n\r\n private messages: Message[] = [\r\n {\r\n image: 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg',\r\n title: '来自XXX发件人',\r\n content: '左侧头像为发信者的头像,收到的来自别人的未读信息',\r\n time: '2天前',\r\n id: '1',\r\n status: 0,\r\n },\r\n {\r\n image: 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg',\r\n title: '来自XXX',\r\n content: '收到的来自别人的未读信息',\r\n time: '2天前',\r\n id: '2',\r\n status: 0,\r\n },\r\n {\r\n image: 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg',\r\n title: '来自XXX',\r\n content: '收到的来自别人的未读信息',\r\n time: '2天前',\r\n id: '3',\r\n status: 0,\r\n },\r\n {\r\n image: 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg',\r\n title: '来自XXX',\r\n content: '收到的来自别人的未读信息',\r\n time: '2天前',\r\n id: '4',\r\n status: 0,\r\n },\r\n {\r\n image: 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg',\r\n title: '来自XXX',\r\n content: '收到的来自别人的未读信息',\r\n time: '2天前',\r\n id: '5',\r\n status: 0,\r\n },\r\n ];\r\n\r\n private todos: Todo[] = [\r\n {\r\n tagName: '进行中',\r\n tagType: 'olivine-w98',\r\n title: '参加可信考试',\r\n memo: '一年内要通过考试,持证上岗',\r\n id: '1',\r\n status: 0,\r\n },\r\n {\r\n tagName: '已逾期2天',\r\n tagType: 'orange-w98',\r\n title: 'Bug单处理',\r\n memo: '有个bug单需要处理,来自SL的指派',\r\n id: '2',\r\n status: 0,\r\n },\r\n {\r\n tagName: '待开始',\r\n tagType: 'blue-w98',\r\n title: '待办事项名称',\r\n memo: '右侧为事项相关说明',\r\n id: '3',\r\n status: 0,\r\n },\r\n {\r\n tagName: '逾期10天',\r\n tagType: 'red-w98',\r\n title: '待办事项名称',\r\n memo: '对于该事项的描述',\r\n id: '4',\r\n status: 0,\r\n },\r\n ];\r\n\r\n getNotifications(): Observable {\r\n return observableOf(this.notifications);\r\n }\r\n getMessages(): Observable {\r\n return observableOf(this.messages);\r\n }\r\n getTodos(): Observable {\r\n return observableOf(this.todos);\r\n }\r\n}\r\n","export function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(\r\n `${moduleName} has already been loaded. Import Core modules in the AppModule only.`\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-devui';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable()\r\nexport class AuthGuardService implements CanActivate {\r\n i18nValues: any;\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n private toastService: ToastService,\r\n private translate: TranslateService\r\n ) {}\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean | UrlTree {\r\n if (!this.authService.isUserLoggedIn()) {\r\n this.i18nValues = this.translate.instant('authNotice');\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'info',\r\n summary: this.i18nValues['summary'],\r\n content: this.i18nValues['content'],\r\n },\r\n ],\r\n life: 2000,\r\n });\r\n this.router.navigate(['login']);\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-devui';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthThiSinhServiceGuard implements CanActivate {\r\n i18nValues: any;\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n private toastService: ToastService,\r\n private translate: TranslateService\r\n ) {}\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean | UrlTree {\r\n if (!this.authService.isThiSinhLoggedIn()) {\r\n this.i18nValues = this.translate.instant('authNotice');\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'info',\r\n summary: this.i18nValues['summary'],\r\n content: this.i18nValues['content'],\r\n },\r\n ],\r\n life: 2000,\r\n });\r\n this.router.navigate(['user/login']);\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { throwError, of } from 'rxjs';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { User } from 'src/app/@shared/models/user';\r\nimport { Item, Users } from 'src/app/@core/data/listData';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { thisinh } from 'src/app/@shared/models/thisinh';\r\nconst USERS = [ \r\n {\r\n account: 'Admin',\r\n gender: 'male',\r\n userName: 'Admin',\r\n password: 'DevUI.admin',\r\n phoneNumber: '19999996666',\r\n email: 'admin@devui.com',\r\n userId: '100',\r\n },\r\n {\r\n account: 'User',\r\n gender: 'female',\r\n userName: 'User',\r\n password: 'DevUI.user',\r\n phoneNumber: '19900000000',\r\n email: 'user@devui.com',\r\n userId: '200',\r\n },\r\n {\r\n account: 'admin@devui.com',\r\n gender: 'male',\r\n userName: 'Admin',\r\n password: 'devuiadmin',\r\n phoneNumber: '19988888888',\r\n email: 'admin@devui.com',\r\n userId: '300',\r\n },\r\n];\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n\r\n constructor(private api: ApiService, private router: Router) {}\r\n\r\n login(account: string, password: string) {\r\n this.api.post(\"api/user/login\",{user_name : account , pass_word : password}).subscribe((res:any) => {\r\n let rs = JSON.parse(JSON.stringify(res));\r\n if (rs.data) {\r\n\r\n let { user_name, pass_word , full_name , user_rcd , email , date_of_birth, address, phone_number, user_code, gender, role_rcd, token, role_code} = rs.data;\r\n let userInfo: User = { user_name, pass_word , full_name , user_rcd , email , date_of_birth, address, phone_number, user_code, gender, role_rcd, token, role_code };\r\n this.setSession(userInfo);\r\n return userInfo;\r\n }\r\n return null;\r\n });\r\n // for (let i = 0; i < USERS.length; i++) {\r\n // if (account === USERS[i].account && password === USERS[i].password) {\r\n // let { userName, gender, phoneNumber, email } = USERS[i];\r\n // let userInfo: User = { userName, gender, phoneNumber, email };\r\n // return of(userInfo);\r\n // }\r\n // }\r\n return throwError('Please make sure you have input correct account and password');\r\n }\r\n\r\n // login(account: string, password: string) {\r\n // for (let i = 0; i < USERS.length; i++) {\r\n // if (account === USERS[i].account && password === USERS[i].password) {\r\n // let { userName, gender, phoneNumber, email } = USERS[i];\r\n // let userInfo: User = { userName, gender, phoneNumber, email };\r\n // return of(userInfo);\r\n // }\r\n // }\r\n // return throwError('Please make sure you have input correct account and password');\r\n // }\r\n\r\n logout() {\r\n const currentUrl = this.router.url.split('/');\r\n const isManagerUser = currentUrl.includes('manager-user');\r\n const isPages = currentUrl.includes('pages');\r\n if (isPages) {\r\n localStorage.removeItem('userinfo');\r\n this.router.navigate(['/login']); // Điều hướng đến trang login\r\n }\r\n if (isManagerUser) {\r\n localStorage.removeItem('thiSinhInfo');\r\n this.router.navigate(['user/login']); // Điều hướng đến trang login\r\n }\r\n }\r\n\r\n setSession(userInfo: Users) {\r\n localStorage.setItem('id_token', '123456');\r\n localStorage.setItem('userinfo', JSON.stringify(userInfo));\r\n localStorage.setItem('expires_at', '120');\r\n }\r\n\r\n setSessionThiSinh(thiSinh: thisinh) {\r\n localStorage.setItem('thiSinhInfo', JSON.stringify(thiSinh));\r\n }\r\n\r\n isThiSinhLoggedIn() { \r\n if (localStorage.getItem('thiSinhInfo')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n isUserLoggedIn() {\r\n if (localStorage.getItem('userinfo')) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n}\r\n","export const ColorHierarchyMap = {\r\n 'devui-base-bg': {\r\n 'default-value': '#ffffff'\r\n },\r\n 'devui-base-bg-dark': {\r\n 'default-value': '#333854'\r\n },\r\n 'devui-global-bg': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-global-bg-normal': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-brand': {\r\n 'default-value': '#5c7be0',\r\n 'extends': null,\r\n 'dependency': null,\r\n 'offset': null\r\n },\r\n 'devui-contrast': {\r\n 'default-value': '#c7000a',\r\n },\r\n 'devui-brand-foil': {\r\n 'extends': 'devui-brand',\r\n },\r\n 'devui-brand-hover': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-brand-active': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-brand-active-focus': {\r\n 'extends': 'devui-brand-active'\r\n },\r\n 'devui-text': {\r\n 'default-value': '#252b3a'\r\n },\r\n 'devui-text-weak': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-aide-text': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-aide-text-stress': {\r\n 'extends': 'devui-aide-text'\r\n },\r\n 'devui-placeholder': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-light-text': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-dark-text': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-link': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-link-active': {\r\n 'extends': 'devui-link'\r\n },\r\n 'devui-link-light': {\r\n 'extends': 'devui-link'\r\n },\r\n 'devui-link-light-active': {\r\n 'extends': 'devui-link-light'\r\n },\r\n 'devui-line': {\r\n 'default-value': '#adb0b8'\r\n },\r\n 'devui-dividing-line': {\r\n 'extends': 'devui-line'\r\n },\r\n 'devui-block': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-area': {\r\n 'extends': 'devui-block'\r\n },\r\n 'devui-danger': {\r\n 'default-value': '#f66f6a'\r\n },\r\n 'devui-warning': {\r\n 'default-value': '#fac20a'\r\n },\r\n 'devui-waiting': {\r\n 'default-value': '#9faad7'\r\n },\r\n 'devui-success': {\r\n 'default-value': '#50d4ab'\r\n },\r\n 'devui-info': {\r\n 'default-value': '#5e7ce0'\r\n },\r\n 'devui-initial': {\r\n 'default-value': '#e9edfa'\r\n },\r\n 'devui-unavailable': {\r\n 'default-value': '#f5f5f6'\r\n },\r\n 'devui-shadow': {\r\n 'default-value': 'rgba(0, 0, 0, 0.2)'\r\n },\r\n 'devui-light-shadow': {\r\n 'extends': 'devui-shadow'\r\n },\r\n 'devui-icon-text': {\r\n 'extends': 'devui-text'\r\n },\r\n 'devui-icon-bg': {\r\n 'extends': 'devui-block'\r\n },\r\n 'devui-icon-fill': {\r\n 'default-value': '#d3d5d9'\r\n },\r\n 'devui-icon-fill-hover': {\r\n 'extends': 'devui-brand',\r\n 'dependency': 'devui-icon-fill'\r\n },\r\n 'devui-icon-fill-active': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-icon-fill-active-hover': {\r\n 'extends': 'devui-icon-fill-active'\r\n },\r\n 'devui-form-control-line': {\r\n 'extends': 'devui-line'\r\n },\r\n 'devui-form-control-line-hover': {\r\n 'extends': 'devui-form-control-line'\r\n },\r\n 'devui-form-control-line-active': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-form-control-line-active-hover': {\r\n 'extends': 'devui-form-control-line-active'\r\n },\r\n 'devui-list-item-active-bg': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-list-item-active-text': {\r\n 'extends': 'devui-light-text'\r\n },\r\n 'devui-list-item-active-hover-bg': {\r\n 'extends': 'devui-list-item-active-bg'\r\n },\r\n 'devui-list-item-hover-text': {\r\n 'extends': 'devui-brand-active'\r\n },\r\n 'devui-list-item-hover-bg': {\r\n 'extends': 'devui-brand-active'\r\n },\r\n 'devui-list-item-selected-bg': {\r\n 'extends': 'devui-brand-active'\r\n },\r\n 'devui-list-item-strip-bg': {\r\n 'extends': 'devui-brand-active'\r\n },\r\n 'devui-disabled-bg': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-disabled-line': {\r\n 'extends': 'devui-base-bg',\r\n 'dependency': 'devui-brand'\r\n },\r\n 'devui-disabled-text': {\r\n 'extends': 'devui-light-text',\r\n 'dependency': 'devui-brand'\r\n },\r\n 'devui-primary-disabled': {\r\n 'extends': 'devui-primary'\r\n },\r\n 'devui-icon-fill-active-disabled': {\r\n 'extends': 'devui-icon-fill-active'\r\n },\r\n 'devui-label-bg': {\r\n 'extends': 'devui-base-bg',\r\n 'dependency': 'devui-brand'\r\n },\r\n 'devui-connected-overlay-bg': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-connected-overlay-line': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-fullscreen-overlay-bg': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-feedback-overlay-bg': {\r\n 'default-value': '#464d6e'\r\n },\r\n 'devui-feedback-overlay-text': {\r\n 'extends': 'devui-light-text'\r\n },\r\n 'devui-embed-search-bg': {\r\n 'extends': 'devui-base-bg',\r\n 'dependency': 'devui-brand'\r\n },\r\n 'devui-embed-search-bg-hover': {\r\n 'extends': 'devui-embed-search-bg'\r\n },\r\n 'devui-float-block-shadow': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-highlight-overlay': {\r\n 'extends': 'devui-base-bg'\r\n },\r\n 'devui-range-item-hover-bg': {\r\n 'extends': 'devui-base-bg',\r\n 'dependency': 'devui-brand'\r\n },\r\n 'devui-primary': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-primary-hover': {\r\n 'extends': 'devui-primary'\r\n },\r\n 'devui-primary-active': {\r\n 'extends': 'devui-primary'\r\n },\r\n 'devui-contrast-hover': {\r\n 'extends': 'devui-contrast'\r\n },\r\n 'devui-contrast-active': {\r\n 'extends': 'devui-contrast'\r\n },\r\n 'devui-danger-line': {\r\n 'extends': 'devui-danger'\r\n },\r\n 'devui-danger-bg': {\r\n 'extends': 'devui-danger'\r\n },\r\n 'devui-warning-line': {\r\n 'extends': 'devui-warning'\r\n },\r\n 'devui-warning-bg': {\r\n 'extends': 'devui-warning'\r\n },\r\n 'devui-info-line': {\r\n 'extends': 'devui-info'\r\n },\r\n 'devui-info-bg': {\r\n 'extends': 'devui-info'\r\n },\r\n 'devui-success-line': {\r\n 'extends': 'devui-success'\r\n },\r\n 'devui-success-bg': {\r\n 'extends': 'devui-success'\r\n },\r\n 'devui-primary-line': {\r\n 'extends': 'devui-primary'\r\n },\r\n 'devui-primary-bg': {\r\n 'extends': 'devui-primary'\r\n },\r\n 'devui-default-line': {\r\n 'extends': 'devui-brand'\r\n },\r\n 'devui-default-bg': {\r\n 'extends': 'devui-base-bg'\r\n }\r\n};\r\n","import { Injectable } from '@angular/core';\r\n@Injectable()\r\nexport class CommonService {\r\n constructor() {}\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n convertDateSave2DB(date: any) {\r\n if (typeof date === 'string') {\r\n return date\r\n }\r\n return [\r\n date.getFullYear(), // Year\r\n this.padTo2Digits(date.getMonth() + 1), // Month\r\n this.padTo2Digits(date.getDate()), // Day\r\n ].join('-');\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { devuiDarkTheme, devuiLightTheme } from 'ng-devui/theme';\r\n// @ts-ignore\r\nimport * as Color from 'color';\r\nimport { ColorHierarchyMap } from './color-hierarchy';\r\ntype HslModelKey = 'h' | 's' | 'l' | 'a' | 'sp' | 'lp' | 'ap';\r\ntype HsvModelKey = 'h' | 's' | 'v' | 'a' | 'sp' | 'vp' | 'ap';\r\ninterface IColorOffset {\r\n hsl?: {\r\n [p in HslModelKey]?: number;\r\n };\r\n hsv?: {\r\n [p in HsvModelKey]?: number;\r\n };\r\n}\r\ntype ISingleOffset = { [p in HslModelKey]?: number } | { [p in HsvModelKey]?: number };\r\ninterface IColorObject {\r\n colorName?: string;\r\n color?: Color;\r\n extends?: Color;\r\n offset?: IColorOffset;\r\n}\r\n\r\ninterface IColorHierarchy {\r\n [colorName: string]: {\r\n 'default-value'?: string;\r\n extends?: string;\r\n dependency?: string | Array;\r\n offset?: {\r\n hsl?: {\r\n [p in HslModelKey]?: number;\r\n };\r\n hsv?: {\r\n [p in HsvModelKey]?: number;\r\n };\r\n };\r\n };\r\n}\r\ninterface IThemeData {\r\n [colorName: string]: string;\r\n}\r\ninterface IColorDef {\r\n colorName?: string;\r\n color?: string;\r\n}\r\ntype IEffect = 'hsl' | 'hsv' | 'strong' | 'soft' | 'light' | 'contrast';\r\n// hsl | hsv | 浓郁 | 柔和 | 轻快 | 对比 |\r\n@Injectable()\r\nexport class CustomThemeService {\r\n colorHierarchy: any = ColorHierarchyMap;\r\n themeDataLight = devuiLightTheme.data;\r\n themeDataDark = devuiDarkTheme.data;\r\n\r\n public genThemeData(colorChanges: Array, isDark = false, effect?: IEffect): IThemeData {\r\n const themeData = isDark ? this.themeDataDark : this.themeDataLight;\r\n const pattern = this.genColorPattern(this.colorHierarchy, themeData);\r\n const updatedPattern = this.updateColor(colorChanges, pattern, effect);\r\n this.fillEmptyColor(updatedPattern, effect);\r\n return this.pattern2ThemeData(updatedPattern);\r\n }\r\n\r\n private updateColor(colorChanges: Array, colorHierarchy: IColorHierarchy, effect?: IEffect) {\r\n const changeKeys = colorChanges.map((change) => change.colorName);\r\n const changeStack = [...changeKeys];\r\n const colorKeys = Object.keys(colorHierarchy);\r\n const pattern = JSON.parse(JSON.stringify(colorHierarchy)) as IColorHierarchy;\r\n let count = 0;\r\n while (changeStack.length) {\r\n const handleKey = changeStack.splice(0, 1).pop()!;\r\n if (count < changeKeys.length) {\r\n pattern[handleKey]['default-value'] = colorChanges[count].color;\r\n } else {\r\n const extendsKey = pattern[handleKey].extends!;\r\n const extendsColor = Color(pattern[extendsKey]['default-value']);\r\n const colorOffset = pattern[handleKey].offset;\r\n const { mode, offset } = this.getColorEffectOffset(extendsColor, colorOffset, effect);\r\n pattern[handleKey]['default-value'] = this.getHexOrRgba(this.getColorValue(extendsColor, offset, mode));\r\n }\r\n\r\n colorKeys.forEach((colorName) => {\r\n if (handleKey === pattern[colorName].extends) {\r\n if (!(changeStack.indexOf(colorName) > -1) && !(changeKeys.indexOf(colorName) > -1)) {\r\n // 如果不是changeStackUI经做过标记,或者ChangeKeys直接指定了颜色,则标记为需要更新\r\n changeStack.push(colorName);\r\n }\r\n }\r\n });\r\n count++;\r\n }\r\n return pattern;\r\n }\r\n private fillEmptyColor(pattern: IColorHierarchy, effect: IEffect | undefined) {\r\n const colorKeys = Object.keys(pattern);\r\n const noColorArray = colorKeys\r\n .map((colorName) => ({\r\n colorName: colorName,\r\n pattern: pattern[colorName],\r\n }))\r\n .filter((color) => !color.pattern['default-value']);\r\n noColorArray.forEach((color) => {\r\n const handleKey = color.colorName;\r\n const extendsKey = pattern[handleKey].extends!;\r\n const extendsColor = Color(pattern[extendsKey]['default-value']);\r\n const colorOffset = pattern[handleKey].offset;\r\n const { mode, offset } = this.getColorEffectOffset(extendsColor, colorOffset, effect);\r\n pattern[handleKey]['default-value'] = this.getHexOrRgba(this.getColorValue(extendsColor, offset, mode));\r\n });\r\n }\r\n\r\n private pattern2ThemeData(pattern: IColorHierarchy): IThemeData {\r\n const themeData: any = {};\r\n const colorKeys = Object.keys(pattern);\r\n colorKeys.forEach((colorName) => {\r\n themeData[colorName] = pattern[colorName]['default-value'];\r\n });\r\n return themeData;\r\n }\r\n\r\n private genColorPattern(colorHierarchy: IColorHierarchy, themeData: IThemeData): IColorHierarchy {\r\n const pattern: IColorHierarchy = {};\r\n const offset = this.getThemeOffset(colorHierarchy, themeData);\r\n offset.forEach((obj) => {\r\n pattern[obj.colorName!] = {\r\n ...colorHierarchy[obj.colorName!],\r\n 'default-value': themeData[obj.colorName!],\r\n offset: obj.offset,\r\n };\r\n });\r\n return pattern;\r\n }\r\n private getThemeOffset(colorHierarchy: IColorHierarchy, themeData: IThemeData): Array {\r\n const colorKeys = Object.keys(colorHierarchy);\r\n const themeColorOffset = colorKeys\r\n .map(\r\n (key) =>\r\n ({\r\n colorName: key,\r\n color: Color(themeData[key]),\r\n extends: this.colorHierarchy[key].extends ? Color(themeData[this.colorHierarchy[key].extends]) : null,\r\n } as IColorObject)\r\n )\r\n .map((colorObj) => {\r\n if (colorObj.extends) {\r\n colorObj.offset = {\r\n hsl: this.getColorOffset(colorObj.color, colorObj.extends, 'hsl'),\r\n hsv: this.getColorOffset(colorObj.color, colorObj.extends, 'hsv'),\r\n };\r\n }\r\n return colorObj;\r\n });\r\n return themeColorOffset;\r\n }\r\n\r\n private getColorOffset(target: Color, source: Color, mode: 'hsl' | 'hsv'): ISingleOffset {\r\n const targetModel = target[mode]();\r\n const sourceModel = source[mode]();\r\n const key = mode.split('');\r\n const offset = {\r\n [key[0]]: targetModel.color[0] - sourceModel.color[0],\r\n [key[1]]: targetModel.color[1] - sourceModel.color[1],\r\n [key[2]]: targetModel.color[2] - sourceModel.color[2],\r\n a: targetModel.valpha - sourceModel.valpha,\r\n };\r\n const percent = {\r\n [key[1] + 'p']:\r\n offset[key[1]] > 0 ? (offset[key[1]] * 100) / (100 - sourceModel.color[1]) : (offset[key[1]] * 100) / sourceModel.color[1],\r\n [key[2] + 'p']:\r\n offset[key[2]] > 0 ? (offset[key[2]] * 100) / (100 - sourceModel.color[2]) : (offset[key[2]] * 100) / sourceModel.color[2],\r\n ap: offset.a > 0 ? (offset.a * 100) / (1 - sourceModel.valpha) : (offset.a * 100) / sourceModel.valpha,\r\n };\r\n return {\r\n ...offset,\r\n ...percent,\r\n };\r\n }\r\n private getColorEffectOffset(source: Color, colorOffset: IColorOffset | any, effect?: IEffect) {\r\n let result: any = {};\r\n switch (effect) {\r\n case 'hsl':\r\n result = {\r\n mode: 'hsl',\r\n offset: colorOffset.hsl,\r\n };\r\n break;\r\n case 'hsv':\r\n result = {\r\n mode: 'hsv',\r\n offset: colorOffset.hsv,\r\n };\r\n break;\r\n case 'strong':\r\n result = {\r\n mode: 'hsl',\r\n offset: {\r\n ...colorOffset.hsl,\r\n sp:\r\n colorOffset?.hsl?.sp! > 0\r\n ? this.minmax(colorOffset?.hsl?.sp! * 1.3, colorOffset?.hsl?.sp!, 100)\r\n : colorOffset?.hsl?.sp! * 0.75,\r\n },\r\n };\r\n break;\r\n case 'soft':\r\n result = {\r\n mode: 'hsv',\r\n offset: {\r\n ...colorOffset.hsv,\r\n sp:\r\n colorOffset?.hsv?.sp! > 0\r\n ? this.minmax(colorOffset?.hsv?.sp! * 1.25, colorOffset?.hsv?.sp!, 100)\r\n : colorOffset?.hsv?.sp! * 0.5,\r\n },\r\n };\r\n break;\r\n case 'light':\r\n result = {\r\n mode: 'hsl',\r\n offset: {\r\n ...colorOffset.hsl,\r\n lp: colorOffset?.hsl?.lp! > 0 ? this.minmax(colorOffset?.hsl?.lp!, colorOffset?.hsl?.lp!, 100) : colorOffset?.hsl?.lp! * 0.2,\r\n },\r\n };\r\n break;\r\n case 'contrast': // 需要计算后的颜色,未支持\r\n result = {\r\n mode: 'hsl',\r\n offset: {\r\n ...colorOffset.hsl,\r\n },\r\n };\r\n break;\r\n default:\r\n result = {\r\n mode: 'hsl',\r\n offset: colorOffset.hsl,\r\n };\r\n break;\r\n }\r\n return result;\r\n }\r\n\r\n private getColorValue(source: Color, offset: any, mode: 'hsl' | 'hsv') {\r\n const sourceModel = source[mode]();\r\n const key = mode.split('');\r\n const value = {\r\n [key[0]]: (sourceModel.color[0] + offset[key[0]]) % 360,\r\n [key[1]]:\r\n offset[key[1] + 'p'] > 0\r\n ? sourceModel.color[1] + (offset[key[1] + 'p'] * (100 - sourceModel.color[1])) / 100\r\n : sourceModel.color[1] + (sourceModel.color[1] * offset[key[1] + 'p']) / 100,\r\n [key[2]]:\r\n offset[key[2] + 'p'] > 0\r\n ? sourceModel.color[2] + (offset[key[2] + 'p'] * (100 - sourceModel.color[2])) / 100\r\n : sourceModel.color[2] + (sourceModel.color[2] * offset[key[2] + 'p']) / 100,\r\n a:\r\n offset.ap! > 0\r\n ? sourceModel.valpha + (offset.ap! * (1 - sourceModel.valpha)) / 100\r\n : sourceModel.valpha + (sourceModel.valpha * offset.ap!) / 100,\r\n };\r\n return Color([value[key[0]], value[key[1]], value[key[2]], value.a], mode);\r\n }\r\n\r\n private getHexOrRgba(color: Color) {\r\n if (color.alpha() < 1) {\r\n const rgb = color.rgb();\r\n const [r, g, b] = rgb.color;\r\n const a = rgb.valpha;\r\n return `rgba(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)}, ${a})`;\r\n } else {\r\n return color.hex();\r\n }\r\n }\r\n\r\n private minmax(v: number, min: number, max: number) {\r\n if (v < min) {\r\n return min;\r\n }\r\n if (v > max) {\r\n return max;\r\n }\r\n return v;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Theme } from 'ng-devui/theme';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { ThemeType } from 'src/app/@shared/models/theme';\r\nimport { LARGE_RADIUS, LARGE_SIZE, MEDIUM_RADIUS, MEDIUM_SIZE, NORMAL_RADIUS, NORMAL_SIZE } from 'src/config/custom-theme';\r\nimport { CustomThemeService } from './custom-theme.service';\r\n\r\nexport interface ThemeConfigItem {\r\n name: string;\r\n id: string;\r\n data: {\r\n 'devui-border-radius'?: string;\r\n 'devui-border-radius-card'?: string;\r\n 'devui-font-size'?: string;\r\n 'devui-font-size-card-title'?: string;\r\n 'devui-font-size-page-title'?: string;\r\n 'devui-font-size-modal-title'?: string;\r\n 'devui-font-size-price'?: string;\r\n 'devui-font-size-data-overview'?: string;\r\n 'devui-font-size-icon'?: string;\r\n 'devui-font-size-sm'?: string;\r\n 'devui-font-size-md'?: string;\r\n 'devui-font-size-lg'?: string;\r\n };\r\n}\r\n\r\nexport interface ThemeConfig {\r\n name: 'themes' | 'font' | 'radius';\r\n icon: string;\r\n items: ThemeConfigItem[];\r\n}\r\n\r\n@Injectable()\r\nexport class PersonalizeService {\r\n themes: ThemeConfigItem[] = [];\r\n\r\n private _themeChange = new ReplaySubject(1); // 主题切换\r\n\r\n configs: ThemeConfig[] = [\r\n {\r\n name: 'themes',\r\n icon: 'icon-color',\r\n items: [],\r\n },\r\n {\r\n name: 'font',\r\n icon: 'icon-font',\r\n items: [\r\n {\r\n name: 'normal',\r\n id: 'normal',\r\n data: NORMAL_SIZE,\r\n },\r\n {\r\n name: 'medium',\r\n id: 'medium',\r\n data: MEDIUM_SIZE,\r\n },\r\n {\r\n name: 'large',\r\n id: 'large',\r\n data: LARGE_SIZE,\r\n },\r\n ],\r\n },\r\n {\r\n name: 'radius',\r\n icon: 'icon-quick-stop',\r\n items: [\r\n {\r\n name: 'normal',\r\n id: 'normal',\r\n data: NORMAL_RADIUS,\r\n },\r\n {\r\n name: 'medium',\r\n id: 'medium',\r\n data: MEDIUM_RADIUS,\r\n },\r\n {\r\n name: 'large',\r\n id: 'large',\r\n data: LARGE_RADIUS,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n defaultCustom = {\r\n brand: '#343a40',\r\n isDark: false,\r\n };\r\n\r\n constructor(private customThemeService: CustomThemeService) {}\r\n initTheme() {\r\n if ((window as { [key: string]: any })['devuiThemes']) {\r\n //TODO 组件库开源版本这个色值错误\r\n (window as { [key: string]: any })['devuiThemes'].devuiDarkTheme.data['devui-placeholder'] = '#8A8A8A';\r\n this.themes = Object.values((window as { [key: string]: any })['devuiThemes']);\r\n const { brand, isDark } = localStorage.getItem('user-custom-theme-config')\r\n ? JSON.parse(localStorage.getItem('user-custom-theme-config')!)\r\n : this.defaultCustom;\r\n const themeData = this.getCustomThemeData(brand, isDark);\r\n this.setTheme((window as { [key: string]: any })['devuiThemes']['customTheme'], themeData, isDark);\r\n this.configs[0].items = this.themes;\r\n // 主题设置\r\n const themeId = localStorage.getItem('theme') || this.themes[0].id;\r\n // 字号设置\r\n const fontId = localStorage.getItem('font') || this.configs[1].items[0].id;\r\n const radiusId = localStorage.getItem('radius') || this.configs[2].items[0].id;\r\n\r\n this.changeTheme(themeId, fontId, radiusId);\r\n }\r\n }\r\n\r\n changeTheme(themeId: string, fId?: string, rId?: string) {\r\n let theme: Theme;\r\n const themes = (this.configs[0].items as any).filter((i: ThemeConfigItem) => {\r\n return i.id === themeId;\r\n });\r\n const { radiusId, fontId, fontData, radiusData } = this.getSizeAndRadiusData(fId, rId);\r\n const customData = Object.assign({}, fontData, radiusData);\r\n if (themes.length) {\r\n theme = themes[0];\r\n } else {\r\n // 重置默认\r\n theme = this.configs[0].items[0];\r\n }\r\n theme.data = Object.assign(theme.data, customData);\r\n (window as { [key: string]: any })['devuiThemeService'].applyTheme(theme);\r\n localStorage.setItem('theme', theme.id);\r\n localStorage.setItem('font', fontId);\r\n localStorage.setItem('radius', radiusId);\r\n }\r\n\r\n getCustomThemeData(color: string, isDark: boolean) {\r\n const themeData = this.customThemeService.genThemeData(\r\n [\r\n {\r\n colorName: 'devui-brand',\r\n color: color,\r\n },\r\n ],\r\n isDark,\r\n 'hsl'\r\n );\r\n return themeData;\r\n }\r\n\r\n setTheme(theme: any, themeData: any, isDark: boolean) {\r\n Object.assign(theme, {\r\n data: themeData,\r\n isDark,\r\n });\r\n }\r\n\r\n getSizeAndRadiusData(fId?: string, rId?: string) {\r\n const fontId = fId || localStorage.getItem('font') || this.configs[1].items[0].id;\r\n const radiusId = rId || localStorage.getItem('radius') || this.configs[2].items[0].id;\r\n const fonts = (this.configs[1].items as any).filter((font: any) => {\r\n return font.id === fontId;\r\n });\r\n const radiusList = (this.configs[2].items as any).filter((radius: any) => {\r\n return radius.id === radiusId;\r\n });\r\n return {\r\n fontId,\r\n radiusId,\r\n fontData: fonts[0].data,\r\n radiusData: radiusList[0].data,\r\n };\r\n }\r\n\r\n setCustomThemeData(themeData: any, color: string, isDark: boolean) {\r\n const len = this.configs[0].items.length;\r\n const theme = this.configs[0].items[len - 1];\r\n const { fontData, radiusData } = this.getSizeAndRadiusData();\r\n Object.assign(themeData, fontData, radiusData);\r\n this.setTheme(theme, color, isDark);\r\n theme.data = Object.assign(theme.data, themeData);\r\n (window as { [key: string]: any })['devuiThemeService'].applyTheme(theme);\r\n localStorage.setItem('user-custom-theme-config', JSON.stringify({ brand: color, isDark }));\r\n localStorage.setItem('theme', ThemeType.Custom);\r\n }\r\n\r\n setUiTheme() {\r\n const currentTheme = (window as { [key: string]: any })['devuiCurrentTheme'] || ThemeType.Default;\r\n this._themeChange.next(currentTheme);\r\n }\r\n\r\n getUiTheme() {\r\n const themeService = (window as { [key: string]: any })['devuiThemeService'];\r\n this.setUiTheme();\r\n if (!(themeService && themeService.eventBus)) {\r\n return;\r\n }\r\n const themeChangedFunc = () => {\r\n this.setUiTheme();\r\n };\r\n themeService.eventBus.add('themeChanged', themeChangedFunc);\r\n return this._themeChange.asObservable();\r\n }\r\n\r\n setRefTheme(themeId: string) {\r\n const devuiThemes = Object.values((window as { [key: string]: any })['devuiThemes']);\r\n const themes = devuiThemes.filter((i: Theme | unknown) => (i as Theme).id === themeId);\r\n if (themes.length) {\r\n (window as { [key: string]: any })['devuiThemeService'].applyTheme(themes[0]);\r\n }\r\n }\r\n}\r\n","import { Injectable, Renderer2, RendererFactory2 } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root' // Service này có sẵn ở toàn bộ ứng dụng\r\n})\r\nexport class ScriptLoaderService {\r\n private renderer: Renderer2;\r\n\r\n constructor(rendererFactory: RendererFactory2) {\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n }\r\n\r\n // Hàm thêm danh sách script\r\n loadScripts(scripts: string[]): void {\r\n scripts.forEach(scriptUrl => {\r\n if (!this.isScriptAlreadyLoaded(scriptUrl)) {\r\n const scriptElement = this.renderer.createElement('script');\r\n scriptElement.src = scriptUrl;\r\n scriptElement.type = 'text/javascript';\r\n scriptElement.async = true;\r\n this.renderer.appendChild(document.body, scriptElement);\r\n }\r\n });\r\n }\r\n\r\n loadScriptsMain(): void {\r\n setTimeout(() => {\r\n const preLoader:any = document.getElementById('pre-loader');\r\n preLoader.hidden = true;\r\n }, 3000)\r\n window.onload = () => {\r\n const scripts: any = [\r\n \"/assets/js/main.js\"\r\n ];\r\n scripts.forEach((scriptUrl: any) => {\r\n if (!this.isScriptAlreadyLoaded(scriptUrl)) {\r\n const scriptElement = this.renderer.createElement('script');\r\n scriptElement.src = scriptUrl;\r\n scriptElement.type = 'text/javascript';\r\n scriptElement.async = true;\r\n this.renderer.appendChild(document.body, scriptElement);\r\n }\r\n });\r\n }\r\n }\r\n\r\n // Kiểm tra nếu script đã được thêm trước đó\r\n private isScriptAlreadyLoaded(src: string): boolean {\r\n const scripts = Array.from(document.getElementsByTagName('script'));\r\n return scripts.some(script => script.src.includes(src));\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { thisinh } from '../../models/thisinh';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { ToastService } from 'ng-devui';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-confirm-email',\r\n templateUrl: './confirm-email.component.html'\r\n})\r\nexport class ConfirmEmailComponent implements OnInit {\r\n constructor(private route: ActivatedRoute, private api: ApiService, private auth: AuthService, private toastService: ToastService) {}\r\n isLoading: boolean = true;\r\n isSuccess: boolean = false;\r\n errorMessage: string = '';\r\n ngOnInit() {\r\n \r\n const email = this.route.snapshot.queryParams['email'];\r\n const token = this.route.snapshot.queryParams['token'];\r\n console.log(`Email: ${email}, Token: ${token}`);\r\n\r\n this.api.get(`api/manager/ThiSinh/confirm-email?email=${encodeURIComponent(email)}&token=${encodeURIComponent(token)}`)\r\n .subscribe(\r\n (resp: any) => {\r\n console.log('Phản hồi từ API:', resp);\r\n\r\n let message = resp?.message || 'Lỗi không xác định'; // Sửa lại cách lấy message\r\n\r\n if (message.includes('thành công')) {\r\n Swal.fire('Thành công!', message, 'success');\r\n this.isSuccess = true;\r\n } else {\r\n \r\n this.isSuccess = false;\r\n }\r\n this.isLoading = false;\r\n },\r\n (error) => {\r\n console.error('Lỗi khi xác thực email:', error);\r\n Swal.fire('Lỗi!', 'Đã có lỗi xảy ra, vui lòng thử lại.', 'error');\r\n this.isLoading = false;\r\n this.isSuccess = false;\r\n }\r\n );\r\n\r\n \r\n \r\n }\r\n}\r\n","
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Logo\"\r\n

Xác nhận Email

\r\n
\r\n\r\n
\r\n

Đang xác thực email của bạn...

\r\n \r\n
\r\n\r\n
\r\n \r\n

Xác thực thành công!

\r\n

Email của bạn đã được xác thực. Bạn có thể đăng nhập ngay bây giờ.

\r\n \r\n Đăng nhập\r\n \r\n
\r\n\r\n
\r\n \r\n

Xác thực thất bại!

\r\n

{{ errorMessage }}

\r\n \r\n Đăng ký lại\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'da-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss'],\r\n})\r\nexport class FooterComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n \r\n
{{ 'footer.presented' | translate }}
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { ToastService } from 'ng-devui';\r\nimport { Router} from '@angular/router';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.scss']\r\n})\r\nexport class ForgotPasswordComponent implements OnInit {\r\n\r\n constructor(private api: ApiService, private auth: AuthService, private toastService: ToastService, private router: Router) { }\r\n\r\n email: string = '';\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n rePass() {\r\n Swal.fire({\r\n title: 'Bạn có chắc muốn cấp lại mật khẩu?',\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yêu cầu cấp mật khẩu',\r\n cancelButtonText: 'Hủy',\r\n confirmButtonColor: '#fda31b',\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n this.api.post('api/manager/ThiSinh/repassword', {email: this.email}).subscribe((resp: any) => {\r\n if (resp.success) {\r\n Swal.fire('Cấp mật khẩu mới thành công!', resp.message, 'success').then((rs) => {\r\n this.router.navigate(['/user/login']);\r\n });\r\n }\r\n else {\r\n Swal.fire('Cấp mật khẩu thất bại!', resp.message, 'error');\r\n }\r\n })\r\n }\r\n\r\n })\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n

Cấp lại mật khẩu tài khoản

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n Email là bắt buộc.\r\n Email không hợp lệ.\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n","import { Component, OnInit, Input,TemplateRef, ViewChild, EventEmitter } from '@angular/core';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { FormLayout } from 'ng-devui/form';\r\nimport { DialogService } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { API_BASE_URL } from 'src/config/config'\r\n@Component({\r\n selector: 'app-form-upload',\r\n templateUrl: './form-upload.component.html',\r\n styleUrls: ['./form-upload.component.scss']\r\n})\r\nexport class FormUploadComponent implements OnInit {\r\n @Input() data: any;\r\n branch = 'develop';\r\n tagName = '';\r\n des = '';\r\n layoutDirection: FormLayout = FormLayout.Vertical;\r\n getOCR= false;\r\n\r\n additionalParameter2 = {\r\n };\r\n onAdd = new EventEmitter();\r\n onDelete = new EventEmitter();\r\n uploadOptions2: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/DocumentRef/Upload',\r\n additionalParameter: this.additionalParameter2,\r\n maximumSize: 200,\r\n checkSameName: true\r\n };\r\n fileOptions2: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx,.jpg,.pdf,.png',\r\n };\r\n uploadedFiles2: Array = [\r\n\r\n ];\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private api: ApiService, private dialogService: DialogService) {\r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n\r\n onSuccess3(result:any) {\r\n this.onAdd.emit(\"success\");\r\n }\r\n\r\n onError3(error:any) {\r\n }\r\n\r\n deleteUploadedFile3(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n ngOnInit(): void {\r\n const param = [this.data.document_rcd, this.data.year, this.data.profile_number, this.getOCR ? 1 : 0];\r\n this.uploadOptions2.uri = API_BASE_URL + 'api/manager/DocumentRef/Upload/' + param.join('_');\r\n // //console.log(this.data);\r\n }\r\n\r\n onClick(event: any): void {\r\n\r\n }\r\n\r\n changeGetOCR() {\r\n const param = [this.data.document_rcd, this.data.year, this.data.profile_number, this.getOCR ? 1 : 0];\r\n this.uploadOptions2.uri = API_BASE_URL + 'api/manager/DocumentRef/Upload/' + param.join('_');\r\n }\r\n \r\n delete(id:any) {\r\n const results = this.dialogService.open({\r\n id: 'delete-dialog',\r\n width: '346px',\r\n maxHeight: '600px',\r\n title: 'Xóa file tài liệu',\r\n showAnimate: false,\r\n content: 'Bạn có chắc chắn muốn xóa?',\r\n backdropCloseable: true,\r\n onClose: () => {},\r\n buttons: [\r\n {\r\n cssClass: 'primary',\r\n text: 'Xóa',\r\n disabled: false,\r\n handler: ($event: Event) => {\r\n this.api.get(\"api/manager/DocumentAttachment/Delete/\"+id).subscribe((res:any) => {\r\n let a = JSON.parse(JSON.stringify(res));\r\n \r\n if(a.data) {\r\n this.onDelete.emit(\"success\");\r\n this.data['document_attachment'] = this.data['document_attachment'].filter((x:any) => x.document_attachment_id != id);\r\n }\r\n else {\r\n this.onDelete.emit(\"error\");\r\n }\r\n });\r\n results.modalInstance.hide();\r\n },\r\n },\r\n {\r\n id: 'btn-cancel',\r\n cssClass: 'common',\r\n text: 'Không',\r\n handler: ($event: Event) => {\r\n results.modalInstance.hide();\r\n },\r\n },\r\n ],\r\n });\r\n \r\n }\r\n\r\n \r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Lưu nội dung file - OCR\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Danh sách file hiện có\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{data['document_attachment'][i].file_name}}\r\n \r\n \r\n \r\n \r\n {{ DELETE }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n {{ UPLOAD }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n 0\" [style.margin-bottom.px]=\"0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ uploadedFile.name }}\r\n \r\n {{ UPLOADED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
\r\n
\r\n \r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n ","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'da-header-logo',\r\n templateUrl: './header-logo.component.html',\r\n styleUrls: ['./header-logo.component.scss'],\r\n})\r\nexport class HeaderLogoComponent implements OnInit {\r\n @Input() shrink = false;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n \r\n \"CMS\"\r\n \r\n CMS\r\n
\r\n
\r\n\r\n V-SAT-SKH\r\n
\r\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Message, Notification, Todo } from 'src/app/@core/data/noticeData';\r\nimport { NoticeDataService } from 'src/app/@core/mock/notice-data.service';\r\n\r\n@Component({\r\n selector: 'da-header-notice',\r\n templateUrl: './header-notice.component.html',\r\n styleUrls: ['./header-notice.component.scss'],\r\n})\r\nexport class HeaderNoticeComponent implements OnInit {\r\n @Output() countEvent = new EventEmitter();\r\n\r\n private destroy$ = new Subject();\r\n\r\n tabActiveID: string | number = 'notice';\r\n\r\n tabTitles: any;\r\n\r\n i18nValues: any;\r\n\r\n notifications: Notification[] = [];\r\n messages: Message[] = [];\r\n todos: Todo[] = [];\r\n\r\n get noticeTitle() {\r\n let length = this.notifications.filter((n) => !n.status).length;\r\n return `${this.tabTitles.notice}(${length})`;\r\n }\r\n\r\n get messageTitle() {\r\n let length = this.messages.filter((m) => !m.status).length;\r\n return `${this.tabTitles.message}(${length})`;\r\n }\r\n\r\n get todoTitle() {\r\n let length = this.todos.filter((t) => !t.status).length;\r\n return `${this.tabTitles.todo}(${length})`;\r\n }\r\n\r\n constructor(private noticeService: NoticeDataService, private translate: TranslateService) {}\r\n\r\n ngOnInit() {\r\n this.translate\r\n .get('notice')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(() => {\r\n this.i18nValues = this.translate.instant('notice');\r\n this.tabTitles = {\r\n notice: this.i18nValues['notificationTabName'],\r\n message: this.i18nValues['messageTabName'],\r\n todo: this.i18nValues['todoTabName'],\r\n };\r\n });\r\n\r\n this.translate.onLangChange.pipe(takeUntil(this.destroy$)).subscribe(() => {\r\n this.i18nValues = this.translate.instant('notice');\r\n this.tabTitles = {\r\n notice: this.i18nValues['notificationTabName'],\r\n message: this.i18nValues['messageTabName'],\r\n todo: this.i18nValues['todoTabName'],\r\n };\r\n });\r\n this.noticeService.getNotifications().subscribe((notifications) => {\r\n this.notifications = notifications;\r\n });\r\n this.noticeService.getMessages().subscribe((messages) => {\r\n this.messages = messages;\r\n });\r\n this.noticeService.getTodos().subscribe((todos) => {\r\n this.todos = todos;\r\n });\r\n setTimeout(() => {\r\n this.countEvent.emit(this.notifications.length + this.messages.length + this.todos.length);\r\n });\r\n }\r\n\r\n handleNoticeClick(type: string, id: string) {\r\n if (type === 'notice') {\r\n let index = this.notifications.findIndex((n) => n.id === id);\r\n this.notifications[index].status = 1;\r\n this.countEvent.emit(\r\n this.notifications.filter((n) => !n.status).length +\r\n this.messages.filter((m) => !m.status).length +\r\n this.todos.filter((t) => !t.status).length\r\n );\r\n }\r\n if (type === 'message') {\r\n let index = this.messages.findIndex((m) => m.id === id);\r\n this.messages[index].status = 1;\r\n this.countEvent.emit(\r\n this.notifications.filter((n) => !n.status).length +\r\n this.messages.filter((m) => !m.status).length +\r\n this.todos.filter((t) => !t.status).length\r\n );\r\n }\r\n if (type === 'todo') {\r\n let index = this.todos.findIndex((t) => t.id === id);\r\n this.todos[index].status = 1;\r\n this.countEvent.emit(\r\n this.notifications.filter((n) => !n.status).length +\r\n this.messages.filter((m) => !m.status).length +\r\n this.todos.filter((t) => !t.status).length\r\n );\r\n }\r\n }\r\n\r\n handleClean(type: string) {\r\n if (type === 'notice') {\r\n this.notifications = [];\r\n this.countEvent.emit(this.messages.filter((m) => !m.status).length + this.todos.filter((t) => !t.status).length);\r\n }\r\n if (type === 'message') {\r\n this.messages = [];\r\n this.countEvent.emit(this.notifications.filter((n) => !n.status).length + this.todos.filter((t) => !t.status).length);\r\n }\r\n if (type === 'todo') {\r\n this.todos = [];\r\n this.countEvent.emit(this.notifications.filter((n) => !n.status).length + this.messages.filter((m) => !m.status).length);\r\n }\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ notification.title }}\r\n
\r\n
\r\n {{ notification.time }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'notice.clear' | translate }}\r\n \r\n \r\n {{ 'notice.more' | translate }}\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {{ message.title }}\r\n
\r\n
\r\n {{ message.content }}\r\n
\r\n
\r\n {{ message.time }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'notice.clear' | translate }}\r\n \r\n {{ 'notice.more' | translate }}\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {{ todo.title }}\r\n
\r\n
\r\n {{ todo.memo }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'notice.clear' | translate }}\r\n \r\n {{ 'notice.more' | translate }}\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n\r\n
\r\n \r\n {{ 'notice.done' | translate }}\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef, ViewChild, ViewChildren } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { DialogService } from 'ng-devui/modal';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { LANGUAGES } from 'src/config/language-config';\r\nimport { User } from '../../../models/user';\r\nimport { FormLayout, DValidateRules } from 'ng-devui';\r\nimport { I18nService } from 'ng-devui/i18n';\r\nimport { Users } from 'src/app/@core/data/listData';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { thisinh } from 'src/app/@shared/models/thisinh';\r\n\r\n@Component({\r\n selector: 'da-header-operation',\r\n templateUrl: './header-operation.component.html',\r\n styleUrls: ['./header-operation.component.scss'],\r\n})\r\nexport class HeaderOperationComponent implements OnInit {\r\n @ViewChild('changePass', { static: true }) changePass: TemplateRef;\r\n user: Users;\r\n thiSinh: thisinh;\r\n languages = LANGUAGES;\r\n language: string;\r\n haveLoggedIn = false;\r\n noticeCount: number;\r\n dialogChangePass:any;\r\n msgs: Array = [];\r\n formData = {\r\n newPass: '',\r\n oldPass: '',\r\n renewPass: '',\r\n };\r\n formRules: { [key: string]: DValidateRules } = {\r\n oldPasswordRules: {\r\n // validators: [{ required: true }, { minlength: 6 }, { maxlength: 15 }, { pattern: /^[a-zA-Z0-9\\d@$!%*?&.]+(\\s+[a-zA-Z0-9]+)*$/ }],\r\n validators: [{ required: true , message: \"Không để trống dòng này!\" }],\r\n message: 'Đã có lỗi khi nhập.',\r\n },\r\n passwordRules: {\r\n // validators: [{ required: true }, { minlength: 6 }, { maxlength: 15 }, { pattern: /^[a-zA-Z0-9\\d@$!%*?&.]+(\\s+[a-zA-Z0-9]+)*$/ }],\r\n validators: [{ required: true , message: \"Không để trống dòng này!\" }, { minlength: 6, message: \"Mật khẩu phải từ 6 kí tự trở lên!\" }, { maxlength: 15, message: \"Mật khẩu không quá 15 kí tự!\" },],\r\n message: 'Nhập dữ liệu không đúng định dạng.',\r\n },\r\n };\r\n showPassword = false;\r\n currentInput = 'newPass';\r\n horizontalLayout: FormLayout = FormLayout.Horizontal;\r\n newUser = {\r\n user_rcd: \"\",\r\n pass_word:\"\",\r\n new_password:\"\",\r\n type: 1\r\n };\r\n\r\n isManagerUser = false;\r\n isPages = false;\r\n \r\n\r\n constructor(private route: Router, private authService: AuthService, private translate: TranslateService, private i18n: I18nService, private dialogService: DialogService, private api: ApiService, private routeActivated: ActivatedRoute) {}\r\n\r\n ngOnInit(): void {\r\n const currentUrl = this.route.url.split('/');\r\n this.isManagerUser = currentUrl.includes('manager-user');\r\n this.isPages = currentUrl.includes('pages');\r\n if (this.isPages && localStorage.getItem('userinfo')) {\r\n this.user = JSON.parse(localStorage.getItem('userinfo')!);\r\n this.haveLoggedIn = true;\r\n }\r\n\r\n if (this.isManagerUser && localStorage.getItem('thiSinhInfo')) {\r\n this.thiSinh = JSON.parse(localStorage.getItem('thiSinhInfo')!);\r\n this.haveLoggedIn = true;\r\n } \r\n // else {\r\n // this.authService.login('Admin', 'Devui.admin').subscribe((res:any) => {\r\n // this.authService.setSession(res);\r\n // this.user = JSON.parse(localStorage.getItem('userinfo')!);\r\n // this.haveLoggedIn = true;\r\n // });\r\n // }\r\n this.language = this.translate.currentLang;\r\n }\r\n\r\n onSearch(event: any) {\r\n // //console.log(event);\r\n }\r\n\r\n onLanguageClick(language: string) {\r\n this.language = language;\r\n localStorage.setItem('lang', this.language);\r\n this.i18n.toggleLang(this.language);\r\n this.translate.use(this.language);\r\n }\r\n\r\n handleUserOps(operation: string) {\r\n switch (operation) {\r\n case 'logout': {\r\n this.haveLoggedIn = false;\r\n this.authService.logout();\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n handleNoticeCount(event: number) {\r\n this.noticeCount = event;\r\n }\r\n openModalChangePass() {\r\n this.dialogChangePass = this.dialogService.open({\r\n id: 'edit-dialog',\r\n width: '40%',\r\n title: 'Đổi mật khẩu',\r\n showAnimate: false,\r\n contentTemplate: this.changePass,\r\n backdropCloseable: true,\r\n onClose: () => {\r\n this.resetInputPass();\r\n },\r\n buttons: [],\r\n });\r\n }\r\n saveChangePass({ valid, directive, data, errors }: any) {\r\n if(valid) {\r\n if(this.formData.newPass == this.formData.oldPass) {\r\n this.showToast('error',\"Mật khẩu mới không trùng mật khẩu cũ!\");\r\n return;\r\n }\r\n if(this.formData.newPass != this.formData.renewPass) {\r\n this.showToast('error',\"Mật khẩu mới không trùng khớp!\");\r\n return;\r\n }\r\n this.newUser.user_rcd = this.user.user_rcd;\r\n this.newUser.pass_word = this.formData.oldPass;\r\n this.newUser.new_password = this.formData.newPass;\r\n this.api.post(\"api/manager/UserRef/ChangePass/\", this.newUser).subscribe((res:any) => {\r\n this.showToast(res.extraInfo == '200' ?'success':'error',res.data);\r\n if(res.extraInfo == '200') {\r\n this.dialogChangePass.modalInstance.hide();\r\n }\r\n this.resetInputPass();\r\n })\r\n }\r\n else{\r\n\r\n }\r\n }\r\n resetInputPass() {\r\n this.formData = {\r\n newPass: '',\r\n oldPass: '',\r\n renewPass: '',\r\n };\r\n this.showPassword = false;\r\n }\r\n showToast(type:any, message: any) {\r\n this.msgs = [{ severity: type, summary: 'Thông báo', content: message }];\r\n }\r\n}","
\r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n {{ user.user_name }}\r\n {{ thiSinh.email }}\r\n \r\n
\r\n \r\n
\r\n\r\n\r\n
  • \r\n {{ 'header.login' | translate }}\r\n
  • \r\n
  • \r\n {{ 'header.register' | translate }}\r\n
  • \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Mật khẩu cũ:\r\n \r\n \r\n \r\n \r\n \r\n Mật khẩu mới:\r\n \r\n \r\n \r\n \r\n \r\n Nhập lại mật khẩu:\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Lưu\r\n Hủy\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'da-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n})\r\nexport class HeaderComponent {\r\n logoSrc =\r\n 'https://res.hc-cdn.com/x-roma-components/1.0.10/assets/devui/logo.svg';\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n","import { AfterViewInit, Component, ElementRef, HostListener, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { NavigationEnd, Router, RouterEvent } from '@angular/router';\r\nimport { ConnectedPosition } from '@angular/cdk/overlay';\r\nimport { AppendToBodyDirection } from 'ng-devui/utils';\r\n\r\n@Component({\r\n selector: 'da-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss'],\r\n})\r\nexport class NavbarComponent implements OnInit, AfterViewInit {\r\n @Input() data: any[];\r\n\r\n _mode: 'left' | 'top' = 'top';\r\n @Input() set mode(mode) {\r\n this._mode = mode;\r\n this.refreshDataAndView();\r\n }\r\n\r\n get mode() {\r\n return this._mode;\r\n }\r\n\r\n @HostListener('window:resize')\r\n onResize() {\r\n this.refreshDataAndView();\r\n }\r\n\r\n dropdownDirections: {\r\n [key: string]: (AppendToBodyDirection | ConnectedPosition)[];\r\n } = {\r\n left: [\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n ],\r\n top: ['rightDown'],\r\n };\r\n\r\n subMenuDirections: ConnectedPosition[] = [\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n offsetY: -4,\r\n },\r\n ];\r\n\r\n elementsState: {\r\n width: number;\r\n height: number;\r\n offsetLeft: number;\r\n offsetTop: number;\r\n }[] = [];\r\n\r\n packData: any[] = [];\r\n packItemsActive = false;\r\n\r\n get showTitle(): boolean {\r\n return this.mode === 'top';\r\n }\r\n\r\n currentUrl: string;\r\n\r\n role_rcd: 1;\r\n user: any;\r\n\r\n constructor(private elementRef: ElementRef, private router: Router, private renderer: Renderer2) {\r\n this.currentUrl = this.router.url;\r\n }\r\n\r\n refreshDataAndView() {\r\n if (this.mode !== 'top') {\r\n return;\r\n }\r\n\r\n const parentWidth = this.elementRef.nativeElement.offsetWidth;\r\n\r\n const itemElements = this.elementRef.nativeElement.querySelectorAll('.da-nav-item');\r\n itemElements.forEach((element: any, i: number) => {\r\n if (!this.elementsState[i] && element.offsetLeft > 0) {\r\n this.elementsState[i] = {\r\n width: element.offsetWidth,\r\n height: element.offsetHeight,\r\n offsetLeft: element.offsetLeft,\r\n offsetTop: element.offsetTop,\r\n };\r\n }\r\n });\r\n\r\n this.packData = [];\r\n this.packItemsActive = false;\r\n itemElements.forEach((element: any, i: number) => {\r\n if (this.elementsState[i] && this.elementsState[i].width + this.elementsState[i].offsetLeft > parentWidth - 40) {\r\n this.packData.push(this.data[i]);\r\n\r\n if (this.currentUrl.indexOf(this.data[i].link) !== -1) {\r\n this.packItemsActive = true;\r\n }\r\n\r\n this.renderer.addClass(element, 'da-menu-hidden');\r\n } else {\r\n this.renderer.removeClass(element, 'da-menu-hidden');\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.currentUrl = event.urlAfterRedirects;\r\n this.packItemsActive = false;\r\n this.packData.forEach((item) => {\r\n if (this.currentUrl.indexOf(item.link) !== -1) {\r\n this.packItemsActive = true;\r\n }\r\n });\r\n }\r\n });\r\n if (localStorage.getItem('userinfo')) {\r\n this.user = JSON.parse(localStorage.getItem('userinfo')!);\r\n this.role_rcd = this.user.role_rcd;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.refreshDataAndView(); // TODO: 解决时间周期问题\r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n -1\"\r\n [trigger]=\"'hover'\"\r\n appendToBody\r\n [appendToBodyDirections]=\"dropdownDirections[mode]\"\r\n >\r\n -1\"\r\n [ngClass]=\"{\r\n 'da-active-title': currentUrl.indexOf(item.link) !== -1\r\n }\"\r\n >\r\n \r\n {{\r\n item.title\r\n }}\r\n \r\n
  • \r\n \r\n {{ child.title }}\r\n \r\n
  • \r\n \r\n
    \r\n \r\n 0\"\r\n class=\"da-nav-pack-item-wrapper\"\r\n dDropDown\r\n appendToBody\r\n [trigger]=\"'hover'\"\r\n >\r\n ···\r\n
      \r\n \r\n -1\"\r\n class=\"da-nav-title devui-dropdown-item\"\r\n [ngClass]=\"{\r\n 'da-active-link': currentUrl.indexOf(item.link) !== -1\r\n }\"\r\n >\r\n \r\n {{\r\n item.title\r\n }}\r\n \r\n \r\n -1\"\r\n [attr.class]=\"'devui-dropdown-menu devui-scrollbar da-nav-' + mode\"\r\n role=\"menu\"\r\n >\r\n
    • \r\n \r\n {{ child.title }}\r\n \r\n
    • \r\n
    \r\n \r\n \r\n
    \r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { thisinh } from '../../models/thisinh';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { ToastService } from 'ng-devui';\r\nimport { Router} from '@angular/router';\r\n// import { ScriptLoaderService } from '../../services/script-loader.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css']\r\n})\r\nexport class LoginPublicComponent implements OnInit{\r\n constructor( private api: ApiService, private auth: AuthService, private toastService: ToastService, private router: Router) {}\r\n username: string = '';\r\n password: string = '';\r\n\r\n ngOnInit() {\r\n // this.scriptLoader.loadScriptsMain();\r\n }\r\n\r\n login() {\r\n this.api.post('api/manager/ThiSinh/login', {user_name: this.username, pass_word: this.password}).subscribe((resp: any) => {\r\n let rs = JSON.parse(JSON.stringify(resp));\r\n if (rs.data) {\r\n let { id, email, token, role_code, role_rcd, } = rs.data;\r\n let thiSinh: thisinh = { id, email, token, role_code, role_rcd };\r\n this.auth.setSessionThiSinh(thiSinh);\r\n this.router.navigate(['/manager-user/registerexam']);\r\n \r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Đăng nhập không thành công',\r\n content: 'Tài khoản hoặc mật khẩu không chính xác!',\r\n },\r\n ],\r\n life: 3000,\r\n });\r\n }\r\n })\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"\"\r\n

    Đăng nhập tài khoản học sinh

    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n Bạn Quên mật khẩu?\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Bạn chưa có tài khoản? Đăng ký.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n","import { Component, HostListener, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService, TranslationChangeEvent } from '@ngx-translate/core';\r\nimport { DValidateRules } from 'ng-devui';\r\nimport { FormLayout } from 'ng-devui';\r\nimport { I18nService } from 'ng-devui/i18n';\r\nimport { Subject } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { PersonalizeService } from 'src/app/@core/services/personalize.service';\r\nimport { LANGUAGES } from 'src/config/language-config';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ThemeType } from '../../models/theme';\r\nimport { ApiService } from 'src/app/api.service';\r\n\r\nimport { User } from 'src/app/@shared/models/user';\r\n\r\n\r\n@Component({\r\n selector: 'da-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss'],\r\n})\r\nexport class LoginComponent implements OnInit {\r\n private destroy$ = new Subject();\r\n\r\n horizontalLayout: FormLayout = FormLayout.Horizontal;\r\n\r\n tabActiveId: string | number = 'tab1';\r\n showPassword = false;\r\n\r\n tabItems: any;\r\n language: string;\r\n i18nValues: any;\r\n toastMessage: any;\r\n languages = LANGUAGES;\r\n\r\n formData = {\r\n userAccount: '',\r\n userAccountPassword: '',\r\n userEmail: 'admin@devui.com',\r\n userEmailPassword: 'devuiadmin',\r\n };\r\n\r\n formRules: { [key: string]: DValidateRules } = {\r\n usernameRules: {\r\n validators: [\r\n { required: true },\r\n { minlength: 3 },\r\n { maxlength: 20 },\r\n {\r\n pattern: /^[a-zA-Z0-9]+(\\s+[a-zA-Z0-9]+)*$/,\r\n message: 'The user name cannot contain characters except uppercase and lowercase letters.',\r\n },\r\n ],\r\n },\r\n emailRules: {\r\n validators: [{ required: true }, { email: true }],\r\n },\r\n passwordRules: {\r\n validators: [{ required: true }, { minlength: 6 }, { maxlength: 15 }, { pattern: /^[a-zA-Z0-9\\d@$!%*?&.]+(\\s+[a-zA-Z0-9]+)*$/ }],\r\n message: 'Enter a password that contains 6 to 15 digits and letters.',\r\n },\r\n };\r\n\r\n @HostListener('window:keydown.enter')\r\n onEnter() {\r\n this.onClick(this.tabActiveId);\r\n }\r\n\r\n constructor(\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private authService: AuthService,\r\n private translate: TranslateService,\r\n private i18n: I18nService,\r\n private personalizeService: PersonalizeService,\r\n private api: ApiService\r\n ) {\r\n this.language = this.translate.currentLang;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.translate\r\n .get('loginPage')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res) => {\r\n this.i18nValues = this.translate.instant('loginPage');\r\n this.updateTabItems(res);\r\n });\r\n\r\n this.translate.onLangChange.pipe(takeUntil(this.destroy$)).subscribe((event: TranslationChangeEvent) => {\r\n this.i18nValues = this.translate.instant('loginPage');\r\n this.updateTabItems(this.i18nValues);\r\n });\r\n this.personalizeService.setRefTheme(ThemeType.Default);\r\n\r\n // oauth认证回调\r\n this.route.queryParams.pipe(map((param) => param.code)).subscribe((code) => {\r\n if (code && code.length > 0) {\r\n setTimeout(() => {\r\n this.toastMessage = [\r\n {\r\n severity: 'success',\r\n content: this.i18nValues['callbackMessage'],\r\n },\r\n ];\r\n });\r\n }\r\n });\r\n localStorage.setItem('lang', 'en-us');\r\n this.i18n.toggleLang('en-us');\r\n this.translate.use('en-us');\r\n }\r\n\r\n onClick(tabId: string | number) {\r\n switch (tabId) {\r\n case 'tab1':\r\n this.api.post(\"api/manager/userRef/login\",{user_name : this.formData.userAccount , pass_word : this.formData.userAccountPassword}).subscribe((res:any) => {\r\n let rs = JSON.parse(JSON.stringify(res));\r\n if (rs.data) {\r\n \r\n let { user_name, pass_word , full_name , user_rcd , email , date_of_birth, address, phone_number, user_code, gender, role_rcd, token, role_code } = rs.data;\r\n let userInfo: User = { user_name, pass_word , full_name , user_rcd , email , date_of_birth, address, phone_number, user_code, gender, role_rcd, token, role_code };\r\n this.authService.setSession(userInfo);\r\n this.router.navigate(['/pages/managers/menu']);\r\n }\r\n\r\n else {\r\n this.toastMessage = [\r\n {\r\n severity: 'error',\r\n summary: this.i18nValues['noticeMessage']['summary'],\r\n\r\n content: \"Tài khoản hoặc mật khẩu không chính xác!\",\r\n },\r\n ];\r\n }\r\n\r\n });\r\n break;\r\n case 'tab2':\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n onLanguageClick(language: string) {\r\n this.language = language;\r\n localStorage.setItem('lang', this.language);\r\n this.i18n.toggleLang(this.language);\r\n this.translate.use(this.language);\r\n }\r\n\r\n updateTabItems(values: any) {\r\n this.tabItems = [\r\n {\r\n id: 'tab1',\r\n title: values['loginWays']['account'],\r\n },\r\n {\r\n id: 'tab2',\r\n title: values['loginWays']['email'],\r\n },\r\n ];\r\n }\r\n\r\n onKeyUp(e: KeyboardEvent, tabId: string | number) {\r\n if (e.keyCode === 13) {\r\n this.onClick(tabId);\r\n }\r\n }\r\n\r\n handleAuth(type: string) {\r\n //console.log(type);\r\n //github oauth配置\r\n const config = {\r\n oauth_uri: 'https://github.com/login/oauth/authorize',\r\n redirect_uri: 'https://devui.design/admin/login',\r\n client_id: 'ef3ce924fcf915c50910',\r\n };\r\n if (!environment.production) {\r\n config.redirect_uri = 'http://localhost:8001/login';\r\n config.client_id = 'ecf5e43d804e8e003196';\r\n }\r\n window.location.href = `${config.oauth_uri}?client_id=${config.client_id}&redirect_uri=${config.redirect_uri}`;\r\n }\r\n}\r\n","\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n\r\n
    \r\n \r\n {{ 'loginPage.userName' | translate }}:\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'loginPage.password' | translate }}:\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n {{ 'loginPage.email' | translate }}:\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'loginPage.password' | translate }}:\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-category',\r\n templateUrl: './chi-tiet-category.component.html',\r\n styleUrls: ['./chi-tiet-category.component.scss']\r\n})\r\nexport class ChiTietCategoryComponent implements OnInit {\r\n\r\n status = [\r\n {\r\n name : 'Đang hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n basicsDataSource: any;\r\n phuongTien: any[] = [];\r\n listCoQuanCapPhep: any[] = [];\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getCategory();\r\n this.getGiayPhepKinhDoanh();\r\n this.getPhuongTien();\r\n this.loadCoQuanCapPheps();\r\n this.loadLoaiPhuongTiens();\r\n this.loadNhanHieus();\r\n \r\n }\r\n\r\n getCategory(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/Category/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource); \r\n // console.log(this.basicDataSource);\r\n // this.maNguoiDaiDien=this.basicDataSource.maNguoiDaiDien;\r\n // this.api.get(`api/manager/ChuPhuongTienRef/GetById/${this.basicDataSource.maNguoiDaiDien}`).subscribe((res: any) => {\r\n // this.basicsDataSource = res.data;\r\n // console.log(this.basicsDataSource);\r\n \r\n // });\r\n });\r\n // this.api.get(`api/manager/GiayPhepKinhDoanhVanTaiRef/GetById/${this.id}`).subscribe((res: any) => {\r\n // this.basicDataSources = res.data;\r\n // console.log(this.basicDataSources); \r\n // });\r\n // this.api.get(`api/manager/PhuongTienRef/GetId/${this.id}`).subscribe((res: any) => {\r\n // let a = JSON.parse(JSON.stringify(res));\r\n // this.phuongTien = a.data;\r\n // console.log(this.phuongTien);\r\n \r\n // });\r\n }\r\n }\r\n loadCoQuanCapPheps(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\ngetName(id: string): string {\r\n if (!this.listCoQuanCapPhep || this.listCoQuanCapPhep.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listCoQuanCapPhep.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n}\r\nlistLoaiPhuongTien: any[] = [];\r\nloadLoaiPhuongTiens(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/LoaiPhuongTienRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listLoaiPhuongTien = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n}\r\ngetloaiphuongtien(id: string): string {\r\nif (!this.listLoaiPhuongTien || this.listLoaiPhuongTien.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n} \r\nconst coQuan = this.listLoaiPhuongTien.find(item => item.id === id);\r\nreturn coQuan ? coQuan.name : '';\r\n}\r\nlistNhanHieu: any[] = [];\r\nloadNhanHieus(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/NhanHieuXeRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listNhanHieu = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n}\r\ngetNhanHieu(id: string): string {\r\nif (!this.listNhanHieu || this.listNhanHieu.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n} \r\nconst coQuan = this.listNhanHieu.find(item => item.id === id);\r\nreturn coQuan ? coQuan.name : '';\r\n}\r\n getGiayPhepKinhDoanh(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/GiayPhepKinhDoanhVanTaiRef/GetId/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data;\r\n console.log(this.basicDataSources);\r\n \r\n });\r\n }\r\n }\r\n getPhuongTien(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/PhuongTienRef/GetId/${this.id}`).subscribe((res: any) => {\r\n let a = JSON.parse(JSON.stringify(res));\r\n this.phuongTien = a.data;\r\n console.log(this.phuongTien);\r\n console.log(this.id);\r\n });\r\n }\r\n }\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN DANH MỤC
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n

    Số thứ tự:

    {{basicDataSource.sequence}}

    \r\n

    Tên danh mục:

    {{basicDataSource.category_name_l}}

    \r\n

    Tên tiếng Anh:

    {{basicDataSource.category_name_e}}

    \r\n

    Đường dẫn ảnh:

    {{basicDataSource.category_image_l}}

    \r\n\r\n

    Ghi chú tiếng việt:

    {{basicDataSource.category_note_l}}

    \r\n

    Tiêu đề:

    {{basicDataSource.meta_title_l}}

    \r\n

    Chi tiết:

    {{basicDataSource.meta_description_l}}

    \r\n \r\n
    \r\n\r\n \r\n
    \r\n

    Tên viết tắt:

    {{basicDataSource.meta_keywords_l}}

    \r\n

    Tên viết tắt tiếng anh:

    {{(basicDataSource.meta_keywords_e)}}

    \r\n

    Đường dẫn tiếng anh:

    {{basicDataSource.category_image_e}}

    \r\n

    Loại danh mục:

    {{basicDataSource.category_type}}

    \r\n

    Ghi chú tiếng anh:

    {{basicDataSource.category_note_e}}

    \r\n

    Tiêu đề tiếng anh:

    {{basicDataSource.meta_title_e}}

    \r\n

    Chi tiết tiếng anh:

    {{basicDataSource.meta_description_e}}

    \r\n
    \r\n
    \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-giay-phep-kinh-doanh',\r\n templateUrl: './chi-tiet-giay-phep-kinh-doanh.component.html',\r\n styleUrls: ['./chi-tiet-giay-phep-kinh-doanh.component.scss']\r\n})\r\nexport class ChiTietGiayPhepKinhDoanhComponent implements OnInit {\r\n \r\n status = [\r\n {\r\n name : 'Còn hiệu lực',\r\n id : 1\r\n },\r\n {\r\n name : 'Hết hiệu lực',\r\n id : 0\r\n },\r\n {\r\n name : 'Bị thu hồi',\r\n id : 2\r\n },\r\n ];\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n\r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n basicsDataSource: any;\r\n phuongTien: any[] = [];\r\n listCoQuanCapPhep: any[] = [];\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getGiayPhepKinhDoanh();\r\n this.loadCoQuanCapPheps();\r\n }\r\n\r\n getGiayPhepKinhDoanh(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/GiayPhepKinhDoanhVanTaiRef/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource);\r\n this.api.get(`api/manager/DonViVanTaiRef/GetById/${this.basicDataSource.maDonViVanTai}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data; \r\n console.log(this.basicDataSources);\r\n this.api.get(`api/manager/ChuPhuongTienRef/GetById/${this.basicDataSources.maNguoiDaiDien}`).subscribe((res: any) => {\r\n this.basicsDataSource = res.data;\r\n console.log(this.basicsDataSource); \r\n });\r\n });\r\n });\r\n }\r\n }\r\n loadCoQuanCapPheps(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\ngetName(id: string): string {\r\n if (!this.listCoQuanCapPhep || this.listCoQuanCapPhep.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listCoQuanCapPhep.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n}\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN GIẤY PHÉP KINH DOANH VẬN TẢI
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    THÔNG TIN GIẤY PHÉP KINH DOANH VẬN TẢI

    \r\n
    \r\n
    \r\n
    \r\n

    Số GPKDVT:

    {{basicDataSource.soGPKDVT}}

    \r\n

    Lần cấp thứ:

    {{basicDataSource.lanCap}}

    \r\n

    Ngày cấp:

    {{formatDateView(basicDataSource.ngayCap,true)}}

    \r\n

    Ngày hết hạn:

    Không thời hạn

    \r\n

    Tình trạng giấy phép:

    {{getNameStatus(basicDataSource.active_flag) }}

    \r\n

    Cơ quan cấp phép:

    {{getName(basicDataSource.coQuanCapPhep) }}

    \r\n

    Loại hình kinh doanh:

    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    THÔNG TIN NGƯỜI ĐIỀU HÀNH

    \r\n
    \r\n
    \r\n
    \r\n

    Họ và tên:

    {{basicsDataSource.full_name}}

    \r\n

    Ngày sinh:

    {{formatDateView(basicsDataSource.date_of_birth,true)}}

    \r\n

    Giới tính:

    {{getGenders(basicsDataSource.gender)}}

    \r\n \r\n \r\n

    Địa chỉ thường trú:

    {{basicsDataSource.address}}

    \r\n \r\n
    \r\n
    \r\n

    Số CMND/CCCD:

    {{basicsDataSource.user_code}}

    \r\n \r\n

    Thư điện tử:

    {{basicsDataSource.email}}

    \r\n

    Số điện thoại:

    {{basicsDataSource.phone_number}}

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    THÔNG TIN ĐƠN VỊ KINH DOANH VẬN TẢI

    \r\n
    \r\n
    \r\n
    \r\n

    Tên đơn vị:

    {{basicDataSources.tenDonViVanTai}}

    \r\n

    Địa chỉ:

    {{basicDataSources.diaChi}}

    \r\n

    Giấy chứng nhận đăng ký kinh doanh (hoặc đăng ký doanh nghiệp) số:

    {{basicDataSources.soGiayPhepKinhDoanh}}

    \r\n

    Cơ quan cấp CNĐKKD:

    {{basicDataSources.soDienThoai}}

    \r\n

    Số GPKDVT

    {{getNameStatus(basicDataSources.active_flag)}}

    \r\n
    \r\n
    \r\n

    Tên viết tắt:

    {{basicDataSources.tenVietTat}}

    \r\n

    Tên tiếng Anh:

    {{basicDataSources.tenTiengAnh}}

    \r\n

    Số GPKDVT:

    {{basicDataSources.soGiayPhepKinhDoanhVanTai}}

    \r\n

    Ngày cấp:

    {{basicDataSources.ngayCap}}

    \r\n

    Cơ quan cấp GPKDVT:

    {{getName(basicDataSources.coQuanCapGiayPhepKinhDoanh)}}

    \r\n
    \r\n
    \r\n
    \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-lich-thi',\r\n templateUrl: './chi-tiet-lich-thi.component.html',\r\n styleUrls: ['./chi-tiet-lich-thi.component.scss']\r\n})\r\nexport class ChiTietLichThiComponent implements OnInit {\r\n\r\n status = [\r\n {\r\n name : 'Đang hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n basicsDataSource: any;\r\n phuongTien: any[] = [];\r\n listCoQuanCapPhep: any[] = [];\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getLichThi();\r\n }\r\n\r\n getLichThi(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/LichThiRef/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data; \r\n // console.log(this.basicDataSource);\r\n // this.maNguoiDaiDien=this.basicDataSource.maNguoiDaiDien;\r\n this.api.get(`api/manager/ChuPhuongTienRef/GetById/${this.basicDataSource.maNguoiDaiDien}`).subscribe((res: any) => {\r\n this.basicsDataSource = res.data;\r\n console.log(this.basicsDataSource);\r\n \r\n });\r\n });\r\n // this.api.get(`api/manager/GiayPhepKinhDoanhVanTaiRef/GetById/${this.id}`).subscribe((res: any) => {\r\n // this.basicDataSources = res.data;\r\n // console.log(this.basicDataSources); \r\n // });\r\n // this.api.get(`api/manager/PhuongTienRef/GetId/${this.id}`).subscribe((res: any) => {\r\n // let a = JSON.parse(JSON.stringify(res));\r\n // this.phuongTien = a.data;\r\n // console.log(this.phuongTien);\r\n \r\n // });\r\n }\r\n }\r\n // loadCoQuanCapPheps(): Promise {\r\n // return new Promise((resolve, reject) => {\r\n // this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n // (res: any) => {\r\n // if (res.data) {\r\n // this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n // name: item.label,\r\n // id: item.value\r\n // }));\r\n // }\r\n // resolve(); // Hoàn thành việc nạp dữ liệu\r\n // },\r\n // (error) => {\r\n // console.error('Lỗi dữ liệu:', error);\r\n // reject(error); // Xử lý lỗi nếu có\r\n // }\r\n // );\r\n // });\r\n // }\r\n// getName(id: string): string {\r\n// if (!this.listCoQuanCapPhep || this.listCoQuanCapPhep.length === 0) {\r\n// return 'Chưa có dữ liệu';\r\n// } \r\n// const coQuan = this.listCoQuanCapPhep.find(item => item.id === id);\r\n// return coQuan ? coQuan.name : '';\r\n// }\r\n// listLoaiPhuongTien: any[] = [];\r\n// loadLoaiPhuongTiens(): Promise {\r\n// return new Promise((resolve, reject) => {\r\n// this.api.get('api/manager/LoaiPhuongTienRef/GetListDropdown').subscribe(\r\n// (res: any) => {\r\n// if (res.data) {\r\n// this.listLoaiPhuongTien = res.data.map((item: any) => ({\r\n// name: item.label,\r\n// id: item.value\r\n// }));\r\n// }\r\n// resolve(); // Hoàn thành việc nạp dữ liệu\r\n// },\r\n// (error) => {\r\n// console.error('Lỗi dữ liệu:', error);\r\n// reject(error); // Xử lý lỗi nếu có\r\n// }\r\n// );\r\n// });\r\n// }\r\n// getloaiphuongtien(id: string): string {\r\n// if (!this.listLoaiPhuongTien || this.listLoaiPhuongTien.length === 0) {\r\n// return 'Chưa có dữ liệu';\r\n// } \r\n// const coQuan = this.listLoaiPhuongTien.find(item => item.id === id);\r\n// return coQuan ? coQuan.name : '';\r\n// }\r\n// listNhanHieu: any[] = [];\r\n// loadNhanHieus(): Promise {\r\n// return new Promise((resolve, reject) => {\r\n// this.api.get('api/manager/NhanHieuXeRef/GetListDropdown').subscribe(\r\n// (res: any) => {\r\n// if (res.data) {\r\n// this.listNhanHieu = res.data.map((item: any) => ({\r\n// name: item.label,\r\n// id: item.value\r\n// }));\r\n// }\r\n// resolve(); // Hoàn thành việc nạp dữ liệu\r\n// },\r\n// (error) => {\r\n// console.error('Lỗi dữ liệu:', error);\r\n// reject(error); // Xử lý lỗi nếu có\r\n// }\r\n// );\r\n// });\r\n// }\r\n// getNhanHieu(id: string): string {\r\n// if (!this.listNhanHieu || this.listNhanHieu.length === 0) {\r\n// return 'Chưa có dữ liệu';\r\n// } \r\n// const coQuan = this.listNhanHieu.find(item => item.id === id);\r\n// return coQuan ? coQuan.name : '';\r\n// }\r\n// getGiayPhepKinhDoanh(): void {\r\n// if (this.id) {\r\n// this.api.get(`api/manager/GiayPhepKinhDoanhVanTaiRef/GetId/${this.id}`).subscribe((res: any) => {\r\n// this.basicDataSources = res.data;\r\n// console.log(this.basicDataSources);\r\n \r\n// });\r\n// }\r\n// }\r\n// getPhuongTien(): void {\r\n// if (this.id) {\r\n// this.api.get(`api/manager/PhuongTienRef/GetId/${this.id}`).subscribe((res: any) => {\r\n// let a = JSON.parse(JSON.stringify(res));\r\n// this.phuongTien = a.data;\r\n// console.log(this.phuongTien);\r\n// console.log(this.id);\r\n// });\r\n// }\r\n// }\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN LỊCH THI
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    THÔNG TIN LỊCH THI

    \r\n
    \r\n
    \r\n
    \r\n

    Lịch thi:

    {{basicDataSource.lichthi_name}}

    \r\n

    Ngày thi:

    {{basicDataSource.ngay_thi}}

    \r\n
    \r\n\r\n \r\n
    \r\n

    Ngày mở:

    {{formatDateView(basicDataSource.ngay_mo,true)}}

    \r\n

    Ngày đóng:

    {{formatDateView(basicDataSource.ngay_dong,true)}}

    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig, ToastService} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-menu',\r\n templateUrl: './chi-tiet-menu.component.html',\r\n styleUrls: ['./chi-tiet-menu.component.scss']\r\n})\r\nexport class ChiTietMenuComponent implements OnInit {\r\n\r\n arr_status = {\r\n '0' : 'Không hoạt động',\r\n '1' : 'Hoạt động',\r\n };\r\n\r\n status = [\r\n {\r\n name : 'Hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n arr_status_company = {\r\n '0' : 'Dữ liệu chưa xác thực',\r\n '1' : 'Dữ liệu đã được xác thực',\r\n };\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n \r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n phuongTien: any[] = [];\r\n\r\n constructor(private toastService: ToastService, private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getDonViVanTai();\r\n // this.getPhuongTien();\r\n // this.loadNhanHieus();\r\n // this.loadLoaiPhuongTiens();\r\n\r\n }\r\n // listLoaiPhuongTien: any[] = [];\r\n // loadLoaiPhuongTiens(): Promise {\r\n // return new Promise((resolve, reject) => {\r\n // this.api.get('api/manager/LoaiPhuongTienRef/GetListDropdown').subscribe(\r\n // (res: any) => {\r\n // if (res.data) {\r\n // this.listLoaiPhuongTien = res.data.map((item: any) => ({\r\n // name: item.label,\r\n // id: item.value\r\n // }));\r\n // }\r\n // resolve(); // Hoàn thành việc nạp dữ liệu\r\n // },\r\n // (error) => {\r\n // console.error('Lỗi dữ liệu:', error);\r\n // reject(error); // Xử lý lỗi nếu có\r\n // }\r\n // );\r\n // });\r\n // }\r\n // getloaiphuongtien(id: string): string {\r\n // if (!this.listLoaiPhuongTien || this.listLoaiPhuongTien.length === 0) {\r\n // return 'Chưa có dữ liệu';\r\n // } \r\n // const coQuan = this.listLoaiPhuongTien.find(item => item.id === id);\r\n // return coQuan ? coQuan.name : '';\r\n // }\r\n // listNhanHieu: any[] = [];\r\n // loadNhanHieus(): Promise {\r\n // return new Promise((resolve, reject) => {\r\n // this.api.get('api/manager/NhanHieuXeRef/GetListDropdown').subscribe(\r\n // (res: any) => {\r\n // if (res.data) {\r\n // this.listNhanHieu = res.data.map((item: any) => ({\r\n // name: item.label,\r\n // id: item.value\r\n // }));\r\n // }\r\n // resolve(); // Hoàn thành việc nạp dữ liệu\r\n // },\r\n // (error) => {\r\n // console.error('Lỗi dữ liệu:', error);\r\n // reject(error); // Xử lý lỗi nếu có\r\n // }\r\n // );\r\n // });\r\n // }\r\n // getNhanHieu(id: string): string {\r\n // if (!this.listNhanHieu || this.listNhanHieu.length === 0) {\r\n // return 'Chưa có dữ liệu';\r\n // } \r\n // const coQuan = this.listNhanHieu.find(item => item.id === id);\r\n // return coQuan ? coQuan.name : '';\r\n // }\r\n getDonViVanTai(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/Menu/GetId/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource); \r\n console.log(this.id); \r\n });\r\n }\r\n }\r\n // getPhuongTien(): void {\r\n // if (this.id) {\r\n // this.api.get(`api/manager/PhuongTienRef/GetMenu/${this.id}`).subscribe((res: any) => {\r\n // let a = JSON.parse(JSON.stringify(res));\r\n // this.phuongTien = a.data;\r\n // console.log(this.phuongTien);\r\n // console.log(this.id);\r\n \r\n // });\r\n // }\r\n // }\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN CHI TIẾT MENU
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN MENU

    \r\n
    \r\n
    \r\n
    \r\n

    Tên menu :

    {{basicDataSource.menu_name_l}}

    \r\n

    Ký hiệu:

    {{basicDataSource.menu_name_l_unsign}}

    \r\n

    Mục tiêu:

    {{basicDataSource.target}}

    \r\n

    Mã chính:

    {{basicDataSource.parent_rcd}}

    \r\n

    Đường dẫn:

    {{basicDataSource.alias_url}}

    \r\n
    \r\n
    \r\n

    Tên menu tiếng anh:

    {{basicDataSource.menu_name_e}}

    \r\n

    Ký hiệu tiếng anh:

    {{basicDataSource.menu_name_e_unsign}}

    \r\n

    Khu vực:

    {{basicDataSource.area}}

    \r\n

    Bộ điều khiển:

    {{basicDataSource.controller}}

    \r\n

    Hoạt động:

    {{basicDataSource.action}}

    \r\n
    \r\n
    \r\n
    \r\n\r\n ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-news',\r\n templateUrl: './chi-tiet-news.component.html',\r\n styleUrls: ['./chi-tiet-news.component.scss']\r\n})\r\nexport class ChiTietNewsComponent implements OnInit {\r\n \r\n status = [\r\n {\r\n name : 'Còn hiệu lực',\r\n id : 1\r\n },\r\n {\r\n name : 'Hết hiệu lực',\r\n id : 0\r\n },\r\n {\r\n name : 'Bị thu hồi',\r\n id : 2\r\n },\r\n ];\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n\r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n basicsDataSource: any;\r\n listDanhMuc: any[] = [];\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getNews();\r\n\r\n }\r\n\r\n getNews(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/News/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource);\r\n // this.api.get(`api/manager/Ref/GetById/${this.basicDataSource.maDonViVanTai}`).subscribe((res: any) => {\r\n // this.basicDataSources = res.data; \r\n // console.log(this.basicDataSources);\r\n // this.api.get(`api/manager/Ref/GetById/${this.basicDataSources.maNguoiDaiDien}`).subscribe((res: any) => {\r\n // this.basicsDataSource = res.data;\r\n // console.log(this.basicsDataSource); \r\n // });\r\n // });\r\n });\r\n }\r\n }\r\n // loadCoQuanCapPheps(): Promise {\r\n // return new Promise((resolve, reject) => {\r\n // this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n // (res: any) => {\r\n // if (res.data) {\r\n // this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n // name: item.label,\r\n // id: item.value\r\n // }));\r\n // }\r\n // resolve(); // Hoàn thành việc nạp dữ liệu\r\n // },\r\n // (error) => {\r\n // console.error('Lỗi dữ liệu:', error);\r\n // reject(error); // Xử lý lỗi nếu có\r\n // }\r\n // );\r\n // });\r\n // }\r\ngetName(id: string): string {\r\n if (!this.listDanhMuc || this.listDanhMuc.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const DanhMuc= this.listDanhMuc.find(item => item.id === id);\r\n return DanhMuc ? DanhMuc.name : '';\r\n}\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN BÀI VIẾT
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN LIÊN QUAN BÀI VIẾT

    \r\n
    \r\n
    \r\n
    \r\n

    Số thứ tự:

    {{basicDataSource.sequence}}

    \r\n

    Tên bài viết:

    {{basicDataSource.news_name}}

    \r\n

    Tên tìm kiếm:

    {{basicDataSource.news_name_unsign}}

    \r\n \r\n
    \r\n
    \r\n

    Số thứ tự hiển thị:

    {{basicDataSource.news_view_number}}

    \r\n

    Từ khóa:

    {{basicDataSource.meta_keywords}}

    \r\n

    Ngày viết bài:

    {{basicDataSource.news_accept_post_date}}

    \r\n

    Người viết bài:

    {{basicDataSource.news_accept_post_by_user_id}}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN BÀI VIẾT

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Tiêu đềNội dung bài viếtẢnh
    {{ basicDataSource.meta_title }}{{ basicDataSource.meta_description }}\r\n \"News\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    NỘI DUNG BÀI VIẾT

    \r\n
    \r\n
    \r\n
    \r\n

    {{basicDataSource.news_detail}}

    \r\n
    \r\n
    \r\n
    \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-phu-hieu',\r\n templateUrl: './chi-tiet-phu-hieu.component.html',\r\n styleUrls: ['./chi-tiet-phu-hieu.component.scss']\r\n})\r\nexport class ChiTietPhuHieuComponent implements OnInit {\r\n\r\n arr_status = {\r\n '0' : 'Không hoạt động',\r\n '1' : 'Hoạt động',\r\n };\r\n\r\n status = [\r\n {\r\n name : 'Hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n arr_status_company = {\r\n '0' : 'Dữ liệu chưa xác thực',\r\n '1' : 'Dữ liệu đã được xác thực',\r\n };\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n\r\n status_phuhieu = [\r\n {\r\n name : 'Bị thu hồi',\r\n id : 2\r\n },\r\n {\r\n name : 'Còn hiệu lực',\r\n id : 1\r\n },\r\n {\r\n name : 'Hết giá trị',\r\n id : -1\r\n },\r\n ];\r\n\r\n getstatusPhuHieu(status_phuhieu: number) {\r\n const tmp = this.status_phuhieu.findIndex((v:any) => v.id == status_phuhieu);\r\n if(tmp >= 0) {\r\n return this.status_phuhieu[tmp].name;\r\n }\r\n return '';\r\n }\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n // basicsDataSource: any;\r\n // phuongTien: any[] = [];\r\n listCoQuanCapPhep: any[] = [];\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; \r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n console.log(this.id);\r\n this.getPhuHieu();\r\n this.loadCoQuanCapPheps();\r\n }\r\n\r\n loadCoQuanCapPheps(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\ngetName(id: string): string {\r\n if (!this.listCoQuanCapPhep || this.listCoQuanCapPhep.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listCoQuanCapPhep.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n}\r\n getPhuHieu(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/PhuHieuRef/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource);\r\n\r\n this.api.get(`api/manager/DonViVanTaiRef/GetById/${this.basicDataSource.maDonViVanTai}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data;\r\n console.log(this.basicDataSources);\r\n \r\n });\r\n });\r\n }\r\n }\r\n\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN PHÙ HIỆU
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN PHÙ HIỆU

    \r\n
    \r\n
    \r\n
    \r\n

    Số phù hiệu:

    {{basicDataSource.soPhuHieu}}

    \r\n

    Phù hiệu:

    {{basicDataSource.phuHieu}}

    \r\n

    Màu phù hiệu:

    {{basicDataSource.mauPhuHieu}}

    \r\n

    Biển kiểm soát:

    {{basicDataSource.BienKiemSoat}}

    \r\n
    \r\n
    \r\n

    Ngày cấp:

    {{formatDateView(basicDataSource.ngayCap,true)}}

    \r\n

    Ngày hết hạn:

    {{formatDateView(basicDataSource.ngayHetHan,true)}}

    \r\n

    Trạng thái:

    {{getstatusPhuHieu(basicDataSource.active_flag)}}

    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    THÔNG TIN ĐƠN VỊ KINH DOANH VẬN TẢI

    \r\n
    \r\n
    \r\n
    \r\n

    Tên đơn vị:

    {{basicDataSources.tenDonViVanTai}}

    \r\n

    Địa chỉ:

    {{basicDataSources.diaChi}}

    \r\n

    Giấy chứng nhân đăng ký KD (hoặc đăng ký doanh nghiệp):

    {{basicDataSources.soGiayPhepKinhDoanh}}

    \r\n
    \r\n
    \r\n

    Tên viết tắt:

    {{basicDataSources.tenVietTat}}

    \r\n

    Mã số thuế:

    {{basicDataSources.maSoThue}}

    \r\n

    Ngày cấp giấy phép kinh doanh:

    \r\n
    \r\n
    \r\n
    \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-phuong-tien',\r\n templateUrl: './chi-tiet-phuong-tien.component.html',\r\n styleUrls: ['./chi-tiet-phuong-tien.component.scss']\r\n})\r\nexport class ChiTietPhuongTienComponent implements OnInit {\r\n\r\n arr_status = {\r\n '0' : 'Không hoạt động',\r\n '1' : 'Hoạt động',\r\n };\r\n\r\n status = [\r\n {\r\n name : 'Hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n arr_status_company = {\r\n '0' : 'Dữ liệu chưa xác thực',\r\n '1' : 'Dữ liệu đã được xác thực',\r\n };\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n\r\n status_phuhieu = [\r\n {\r\n name : 'Bị thu hồi',\r\n id : 2\r\n },\r\n {\r\n name : 'Còn hiệu lực',\r\n id : 1\r\n },\r\n {\r\n name : 'Hết hiệu lực',\r\n id : -1\r\n },\r\n ];\r\n\r\n getstatusPhuHieu(status_phuhieu: number) {\r\n const tmp = this.status_phuhieu.findIndex((v:any) => v.id == status_phuhieu);\r\n if(tmp >= 0) {\r\n return this.status_phuhieu[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any[] = [];\r\n basicsDataSource: any[] = [];\r\n listCoQuanCapPhep: any[] = [];\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getPhuongTien();\r\n this.loadCoQuanCapPheps();\r\n this.loadLoaiPhuongTiens();\r\n this.loadNhanHieus();\r\n }\r\n loadCoQuanCapPheps(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/CoQuanCapPhepRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listCoQuanCapPhep = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\n getName(id: string): string {\r\n if (!this.listCoQuanCapPhep || this.listCoQuanCapPhep.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listCoQuanCapPhep.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n }\r\n listLoaiPhuongTien: any[] = [];\r\n loadLoaiPhuongTiens(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/LoaiPhuongTienRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listLoaiPhuongTien = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\n getloaiphuongtien(id: string): string {\r\n if (!this.listLoaiPhuongTien || this.listLoaiPhuongTien.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listLoaiPhuongTien.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n }\r\n listNhanHieu: any[] = [];\r\n loadNhanHieus(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.api.get('api/manager/NhanHieuXeRef/GetListDropdown').subscribe(\r\n (res: any) => {\r\n if (res.data) {\r\n this.listNhanHieu = res.data.map((item: any) => ({\r\n name: item.label,\r\n id: item.value\r\n }));\r\n }\r\n resolve(); // Hoàn thành việc nạp dữ liệu\r\n },\r\n (error) => {\r\n console.error('Lỗi dữ liệu:', error);\r\n reject(error); // Xử lý lỗi nếu có\r\n }\r\n );\r\n });\r\n }\r\n getNhanHieu(id: string): string {\r\n if (!this.listNhanHieu || this.listNhanHieu.length === 0) {\r\n return 'Chưa có dữ liệu';\r\n } \r\n const coQuan = this.listNhanHieu.find(item => item.id === id);\r\n return coQuan ? coQuan.name : '';\r\n }\r\n getPhuongTien(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/PhuongTienRef/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource);\r\n });\r\n this.api.get(`api/manager/PhuHieuRef/GetPhuongTien/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data;\r\n console.log(this.basicDataSources);\r\n // console.log(this.basicDataSources.phuHieu_id);\r\n \r\n });\r\n this.api.get(`api/manager/ViPhamRef/GetPhuongTien/${this.id}`).subscribe((res: any) => {\r\n this.basicsDataSource = res.data;\r\n console.log(this.basicsDataSource);\r\n });\r\n }\r\n }\r\n getPhuHieu(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/PhuHieuRef/GetPhuongTien/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data;\r\n console.log(this.basicDataSources);\r\n // console.log(this.basicDataSources.phuHieu_id);\r\n \r\n });\r\n this.api.get(`api/manager/ViPhamRef/GetPhuongTien/${this.id}`).subscribe((res: any) => {\r\n this.basicsDataSource = res.data;\r\n console.log(this.basicsDataSource);\r\n });\r\n }\r\n }\r\n\r\n\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    THÔNG TIN PHƯƠNG TIỆN
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    THÔNG TIN XE {{basicDataSource.bienKiemSoat}}

    \r\n
    \r\n
    \r\n
    \r\n

    Biển kiểm soát:

    {{basicDataSource.bienKiemSoat}}

    \r\n

    Cơ quan quản lý:

    {{getName(basicDataSource.coQuanQuanLy)}}

    \r\n

    Tên chủ xe:

    {{basicDataSource.tenChuXe}}

    \r\n

    Nhãn hiệu:

    {{getNhanHieu(basicDataSource.nhanHieu)}}

    \r\n

    Loại hình xe:

    {{getloaiphuongtien(basicDataSource.loaiHinhXe)}}

    \r\n

    Sở hữu:

    {{basicDataSource.soHuu}}

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    THÔNG TIN PHÙ HIỆU BIỂN HIỆU

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    STTSố phù hiệuNgày cấpNgày hết hạnLoại phù hiệuThu Hồi phù hiệu
    {{ index + 1 }}{{ item.soPhuHieu }}{{ formatDateView(item.ngayCap, true) }}{{ formatDateView(item.ngayHetHan, true) }}{{ item.phuHieu }}{{ getstatusPhuHieu(item.active_flag) }}
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN VI PHẠM

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    STTNgày vi phạmBiển kiểm soátHành vi vi phạmMô tả thông tin vi phạm
    {{ index + 1 }}{{ formatDateView(item.ngayViPham, true) }}{{ item.bienKiemSoat }}{{ item.loaiViPham }}{{ item.moTaViPham }}
    \r\n
    \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig, ToastService} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-thi-sinh',\r\n templateUrl: './chi-tiet-thi-sinh.component.html',\r\n styleUrls: ['./chi-tiet-thi-sinh.component.scss']\r\n})\r\nexport class ChiTietThiSinhComponent implements OnInit {\r\n\r\n arr_status = {\r\n '0' : 'Không hoạt động',\r\n '1' : 'Hoạt động',\r\n };\r\n\r\n status = [\r\n {\r\n name : 'Hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n arr_status_company = {\r\n '0' : 'Dữ liệu chưa xác thực',\r\n '1' : 'Dữ liệu đã được xác thực',\r\n };\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n \r\n genders = [\r\n {\r\n name : 'Nam',\r\n id : \"1\"\r\n },\r\n {\r\n name : 'Nữ',\r\n id : \"0\"\r\n },\r\n ];\r\n \r\n getGenders(genders: number) {\r\n const tmp = this.genders.findIndex((v:any) => v.id == genders);\r\n if(tmp >= 0) {\r\n return this.genders[tmp].name;\r\n }\r\n return '';\r\n }\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n phuongTien: any[] = [];\r\n\r\n constructor(private toastService: ToastService, private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n console.log(this.id);\r\n this.getDonViVanTai();\r\n }\r\n getDonViVanTai(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/ThiSinh/GetById/${this.id}`).subscribe((res: any) => {\r\n console.log(this.id);\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource); \r\n });\r\n }\r\n }\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    THÔNG TIN THÍ SINH
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN THÍ SINH

    \r\n
    \r\n
    \r\n
    \r\n

    Họ và tên:

    {{basicDataSource.ho_ten}}

    \r\n

    Email:

    {{(basicDataSource.email)}}

    \r\n

    Số điện thoại:

    {{basicDataSource.so_dien_thoai}}

    \r\n

    Ngày sinh:

    {{basicDataSource.ngay_sinh}}

    \r\n

    Giới tính:

    {{getGenders(basicDataSource.gioi_tinh)}}

    \r\n

    Dân tộc:

    {{basicDataSource.dan_toc}}

    \r\n

    Tôn giáo:

    {{basicDataSource.ton_giao}}

    \r\n

    Nơi sinh:

    {{basicDataSource.noi_sinh}}

    \r\n

    Quốc tịch:

    {{basicDataSource.quoc_tich_nuoc_ngoai}}

    \r\n

    Họ và tên nhận:

    {{basicDataSource.nguoi_nhan_ho_ten}}

    \r\n

    Người nhận số điện thoại:

    {{basicDataSource.nguoi_nhan_so_dien_thoai}}

    \r\n

    Người nhận địa chỉ:

    {{basicDataSource.nguoi_nhan_dia_chi}}

    \r\n
    \r\n
    \r\n

    Số CMND/CCCD:

    {{basicDataSource.cccd_so}}

    \r\n

    Ngày cấp:

    {{formatDateView(basicDataSource.cccd_ngay_cap,true)}}

    \r\n

    Nơi cấp:

    {{basicDataSource.cccd_noi_cap}}

    \r\n

    Khu vực:

    {{basicDataSource.khu_vuc}}

    \r\n

    Năm tốt nghiệp:

    {{basicDataSource.nam_tot_nghiep}}

    \r\n

    Lớp 10 học kỳ I:

    {{basicDataSource.lop10_diem_hk1}}

    \r\n

    Lớp 10 học kỳ II:

    {{basicDataSource.lop10_diem_hk2}}

    \r\n

    Lớp 11 học kỳ I:

    {{basicDataSource.lop11_diem_hk1}}

    \r\n

    Lớp 11 học kỳ II:

    {{basicDataSource.lop11_diem_hk2}}

    \r\n

    Lớp 12 học kỳ I:

    {{basicDataSource.lop12_diem_hk1}}

    \r\n

    Lớp 12 học kỳ II:

    {{basicDataSource.lop12_diem_hk2}}

    \r\n

    Trạng thái:

    {{getNameStatus(basicDataSource.active_flag)}}

    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    ","import { ChangeDetectorRef, Component, OnInit, TemplateRef, ViewChild,Injector, Input } from '@angular/core';\r\nimport { DialogService, FormLayout, TableWidthConfig} from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\nimport { Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: 'app-chi-tiet-vi-pham',\r\n templateUrl: './chi-tiet-vi-pham.component.html',\r\n styleUrls: ['./chi-tiet-vi-pham.component.scss']\r\n})\r\nexport class ChiTietViPhamComponent implements OnInit {\r\n\r\n arr_status = {\r\n '0' : 'Không hoạt động',\r\n '1' : 'Hoạt động',\r\n };\r\n\r\n status = [\r\n {\r\n name : 'Hoạt động',\r\n id : 1\r\n },\r\n {\r\n name : 'Không hoạt động',\r\n id : 0\r\n },\r\n ];\r\n\r\n arr_status_company = {\r\n '0' : 'Dữ liệu chưa xác thực',\r\n '1' : 'Dữ liệu đã được xác thực',\r\n };\r\n\r\n status_company = [\r\n {\r\n name : 'Dữ liệu đã được xác thực',\r\n id : 1\r\n },\r\n {\r\n name : 'Dữ liệu chưa xác thực',\r\n id : 0\r\n },\r\n ];\r\n \r\n getNameStatusCompany(status_company: number) {\r\n const tmp = this.status_company.findIndex((v:any) => v.id == status_company);\r\n if(tmp >= 0) {\r\n return this.status_company[tmp].name;\r\n }\r\n return '';\r\n }\r\n\r\n getNameStatus(status: number) {\r\n const tmp = this.status.findIndex((v:any) => v.id == status);\r\n if(tmp >= 0) {\r\n return this.status[tmp].name;\r\n }\r\n return '';\r\n }\r\n basicDataSource: any;\r\n basicDataSources: any;\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService, \r\n private loadingService: LoadingService, private route: ActivatedRoute, private router: Router,private injector: Injector,private dataService: ApiService) {\r\n }\r\n\r\n @Input() id: string|null; // Sử dụng Input để nhận dữ liệu\r\n\r\n ngOnInit(): void {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.id = this.dataService.getData();\r\n this.getDonViVanTai();\r\n }\r\n\r\n getDonViVanTai(): void {\r\n if (this.id) {\r\n this.api.get(`api/manager/ViPhamRef/GetById/${this.id}`).subscribe((res: any) => {\r\n this.basicDataSource = res.data;\r\n console.log(this.basicDataSource.phuHieu_id);\r\n this.api.get(`api/manager/PhuHieuRef/GetById/${this.basicDataSource.phuHieu_id}`).subscribe((res: any) => {\r\n this.basicDataSources = res.data;\r\n console.log(this.basicDataSources);\r\n \r\n });\r\n });\r\n }\r\n }\r\n\r\n onToggle($event:Event) {\r\n console.log($event);\r\n }\r\n padTo2Digits(num:any) {\r\n return num.toString().padStart(2, '0');\r\n }\r\n \r\n formatDate(date:any) {\r\n if(date) \r\n return [\r\n date.getFullYear(),\r\n this.padTo2Digits(date.getMonth() + 1),\r\n this.padTo2Digits(date.getDate()),\r\n ].join('-');\r\n else return \"\";\r\n }\r\n\r\n\r\n formatDateView(date:any, yearFirst:boolean) {\r\n if (date) {\r\n\r\n let arr_date_time = date.split('T');\r\n let arr_date = arr_date_time[0].split('-');\r\n return arr_date[yearFirst ?2 : 0 ] + '/' + arr_date[1] + '/' + arr_date[yearFirst ? 0 :2];\r\n }\r\n return \"\";\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    THÔNG TIN VI PHẠM
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN VI PHẠM

    \r\n
    \r\n
    \r\n
    \r\n

    Ngày vi phạm:

    {{formatDateView(basicDataSource.ngayViPham,true)}}

    \r\n

    Biển kiểm soát:

    {{basicDataSource.bienKiemSoat}}

    \r\n

    Số phù hiệu:

    {{basicDataSource.soPhuHieu}}

    \r\n
    \r\n
    \r\n

    Hành vi vi phạm:

    {{basicDataSource.loaiViPham}}

    \r\n

    Mô tả thông tin vi phạm :

    {{basicDataSource.moTaViPham}}

    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n

    THÔNG TIN PHÙ HIỆU

    \r\n
    \r\n
    \r\n
    \r\n

    Số phù hiệu:

    {{basicDataSources.soPhuHieu}}

    \r\n

    Ngày cấp:

    {{formatDateView(basicDataSources.ngayCap,true)}}

    \r\n

    Ngày hết hạn:

    {{formatDateView(basicDataSources.ngayHetHan,true)}}

    \r\n
    \r\n
    \r\n

    Phù hiệu:

    {{basicDataSources.phuHieu}}

    \r\n

    Màu phù hiệu:

    {{basicDataSources.mauPhuHieu}}

    \r\n

    Biển kiểm soát:

    {{basicDataSources.BienKiemSoat}}

    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-bien-hieu',\r\n templateUrl: './import-bien-hieu.component.html',\r\n styleUrls: ['./import-bien-hieu.component.scss']\r\n})\r\nexport class ImportBienHieuComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/BienHieuRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-category',\r\n templateUrl: './import-category.component.html',\r\n styleUrls: ['./import-category.component.scss']\r\n})\r\nexport class ImportCategoryComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n \r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/CategoryRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n \r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n \r\n }\r\n \r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-chu-phuong-tien',\r\n templateUrl: './import-chu-phuong-tien.component.html',\r\n styleUrls: ['./import-chu-phuong-tien.component.scss']\r\n})\r\nexport class ImportChuPhuongTienComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n \r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/ChuPhuongTienRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n \r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n \r\n }\r\n \r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-co-quan',\r\n templateUrl: './import-co-quan.component.html',\r\n styleUrls: ['./import-co-quan.component.scss']\r\n})\r\nexport class ImportCoQuanComponent implements OnInit {\r\n\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/CoQuanCapPhepRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-don-vi-van-tai',\r\n templateUrl: './import-don-vi-van-tai.component.html',\r\n styleUrls: ['./import-don-vi-van-tai.component.scss']\r\n})\r\nexport class ImportDonViVanTaiComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/DonViVanTaiRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-giay-phep-kd-lai-xe',\r\n templateUrl: './import-giay-phep-kd-lai-xe.component.html',\r\n styleUrls: ['./import-giay-phep-kd-lai-xe.component.scss']\r\n})\r\nexport class ImportGiayPhepKdLaiXeComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/GiayPhepKinhDoanhVanTaiRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-menu',\r\n templateUrl: './import-menu.component.html',\r\n styleUrls: ['./import-menu.component.scss']\r\n})\r\nexport class ImportMenuComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/MenuRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-news',\r\n templateUrl: './import-news.component.html',\r\n styleUrls: ['./import-news.component.scss']\r\n})\r\nexport class ImportNewsComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/GiayPhepKinhDoanhVanTaiRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-nhan-hieu',\r\n templateUrl: './import-nhan-hieu.component.html',\r\n styleUrls: ['./import-nhan-hieu.component.scss']\r\n})\r\nexport class ImportNhanHieuComponent implements OnInit {\r\n\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/NhanHieuXeRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-phu-hieu',\r\n templateUrl: './import-phu-hieu.component.html',\r\n styleUrls: ['./import-phu-hieu.component.scss']\r\n})\r\nexport class ImportPhuHieuComponent implements OnInit {\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/PhuHieuRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-phuong-tien',\r\n templateUrl: './import-phuong-tien.component.html',\r\n styleUrls: ['./import-phuong-tien.component.scss']\r\n})\r\nexport class ImportPhuongTienComponent implements OnInit {\r\n\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/PhuongTienRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n \r\n}\r\n \r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nimport { API_BASE_URL, EXCEL_UPLOAD_LIMIT } from 'src/config/config'\r\nimport { ToastService } from 'ng-devui';\r\n\r\n@Component({\r\n selector: 'app-import-vi-pham',\r\n templateUrl: './import-vi-pham.component.html',\r\n styleUrls: ['./import-vi-pham.component.scss']\r\n})\r\nexport class ImportViPhamComponent implements OnInit {\r\n\r\n UPLOADED: string;\r\n FAILED: string;\r\n DELETE: string;\r\n PRELOAD: string;\r\n UPLOADING: string;\r\n UPLOAD: string;\r\n constructor(private dialogService: DialogService, private api: ApiService, private toastService: ToastService,) { \r\n this.UPLOAD = 'Tải lên';\r\n this.PRELOAD = 'Chưa tải';\r\n this.UPLOADING = 'Đang tải';\r\n this.UPLOADED = 'Thành công';\r\n this.FAILED = 'Thất bại';\r\n this.DELETE = 'Xóa';\r\n }\r\n onAdd = new EventEmitter();\r\n ngOnInit(): void {\r\n }\r\n fileOptions: IFileOptions = {\r\n multiple: true,\r\n accept: '.xls,.xlsx',\r\n };\r\n uploadedFiles: Array = [\r\n\r\n ];\r\n additionalParameter = {\r\n };\r\n uploadOptions: IUploadOptions = {\r\n uri: API_BASE_URL + 'api/manager/ViPhamRef/ImportByExcel',\r\n additionalParameter: this.additionalParameter,\r\n maximumSize: EXCEL_UPLOAD_LIMIT,\r\n checkSameName: true\r\n };\r\n \r\n onSuccess(result:any) {\r\n console.log(result)\r\n const response = JSON.parse(result[0].response);\r\n if (response.success) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'success',\r\n summary: 'Thành công',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'Cảnh báo',\r\n summary: 'Warning',\r\n content: response.message,\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n this.onAdd.emit(\"success\");\r\n }\r\n deleteUploadedFile(filePath: string) {\r\n // //console.log(`delete ${filePath}`);\r\n }\r\n onError(error:any) {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Lỗi',\r\n content: 'Đã có lỗi xảy ra. Vui lòng thao tác lại!',\r\n },\r\n ],\r\n life: 6000,\r\n });\r\n }\r\n\r\n setCustomUploadOptions(file:any, options:any) {\r\n let uploadOptions = options;\r\n // uploadOptions.uri = 'http://localhost:61029/api/manager/DocumentRef/Upload/'+ this.data.document_rcd;\r\n if (file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {\r\n uploadOptions.maximumSize = 0.1;\r\n }\r\n if (file.type === 'image/png') {\r\n uploadOptions.maximumSize = 0.5;\r\n }\r\n return uploadOptions;\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    Chọn file cần import
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n {{ UPLOAD }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n 0\">Danh sách trước file\r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ fileUploader.file.name }}\r\n \r\n {{ PRELOAD }}\r\n {{ UPLOADING }}\r\n {{ UPLOADED }}\r\n {{ FAILED }}\r\n \r\n \r\n {{ DELETE }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { ChangeDetectorRef,Input, Component, OnInit, TemplateRef, ViewChild,EventEmitter } from '@angular/core';\r\nimport { DialogService, FormLayout,EditableTip, TableWidthConfig, DataTableComponent } from 'ng-devui';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { Item, Users } from 'src/app/@core/data/listData';\r\nimport { ListDataService } from 'src/app/@core/mock/list-data.service';\r\nimport { FormConfig } from 'src/app/@shared/components/admin-form';\r\n\r\n@Component({\r\n selector: 'app-profile-permission',\r\n templateUrl: './profile-permission.component.html',\r\n styleUrls: ['./profile-permission.component.scss']\r\n})\r\nexport class ProfilePermissionComponent implements OnInit {\r\n\r\n constructor(private listDataService: ListDataService, private dialogService: DialogService, private cdr: ChangeDetectorRef,private api: ApiService ) {}\r\n options = ['normal', 'borderless', 'bordered'];\r\n\r\n sizeOptions = ['sm', 'md', 'lg'];\r\n\r\n layoutOptions = ['auto', 'fixed'];\r\n searchForm: {\r\n borderType: '' | 'borderless' | 'bordered';\r\n size: 'sm' | 'md' | 'lg';\r\n layout: 'auto' | 'fixed';\r\n } = {\r\n borderType: 'bordered',\r\n size: 'md',\r\n layout: 'auto',\r\n };\r\n lstDepartment : any;\r\n onSave = new EventEmitter();\r\n @Input() data: any;\r\n @ViewChild(DataTableComponent, { static: true })\r\n datatable: DataTableComponent;\r\n deleteList: Item[] = [];\r\n editableTip = EditableTip.btn;\r\n\r\n dataTableOptions = {\r\n columns: [\r\n {\r\n field: 'full_name',\r\n header: 'Tên người dùng',\r\n },\r\n {\r\n field: 'gender',\r\n header: 'Giới tính',\r\n },\r\n {\r\n field: 'date_of_birth',\r\n header: 'Ngày sinh',\r\n },\r\n {\r\n field: 'phone_number',\r\n header: 'Số điện thoại',\r\n },\r\n {\r\n field: 'user_name',\r\n header: 'Tên đăng nhập',\r\n },\r\n {\r\n field: 'role_name_l',\r\n header: 'Quyền',\r\n }\r\n ]\r\n };\r\n\r\n tableWidthConfig: TableWidthConfig[] = [\r\n {\r\n field: 'checkbox',\r\n width: '50px',\r\n },\r\n {\r\n field: 'full_name',\r\n width: '150px',\r\n },\r\n {\r\n field: 'gender',\r\n width: '50px',\r\n },\r\n {\r\n field: 'date_of_birth',\r\n width: '100px',\r\n },\r\n {\r\n field: 'phone_number',\r\n width: '100px',\r\n },\r\n {\r\n field: 'user_name',\r\n width: '100px',\r\n },\r\n {\r\n field: 'role_name_l',\r\n width: '100px',\r\n },\r\n ];\r\n\r\n basicDataSource: Users[] = [];\r\n isCheckAll : false;\r\n\r\n formConfig: FormConfig = {\r\n layout: FormLayout.Horizontal,\r\n items: [\r\n \r\n ],\r\n labelSize: '',\r\n };\r\n\r\n pager = {\r\n total: 0,\r\n pageIndex: 1,\r\n pageSize: 1000,\r\n };\r\n\r\n _search = {\r\n lang: 'l',\r\n user_rcd: \"\",\r\n user_code: \"\",\r\n full_name: \"\",\r\n gender:\"\",\r\n date_of_birth:\"\",\r\n email:\"\",\r\n phone_number:\"\",\r\n address:\"\",\r\n user_name:\"\",\r\n pass_word:\"\", \r\n user_note_e: \"\",\r\n user_note_l: \"\",\r\n department_rcd:\"\",\r\n role_rcd : 1,\r\n };\r\n\r\n busy: Subscription;\r\n callAPIFirstTime = true;\r\n users_checked:any = {};\r\n users_checked_for_reset:any = {};\r\n\r\n ngOnInit(): void {\r\n this.api.get(\"api/manager/profileRef/GetById/\"+this.data.profile_rcd).subscribe((resp:any) => {\r\n this.data.permision = resp.data.permision;\r\n this.api.post(\"api/manager/RoleRef/Search\",{page : 1 , pageSize: 50 , role_name_l : \"\"}).subscribe((res:any) => {\r\n let a = JSON.parse(JSON.stringify(res));\r\n let rs = a.data.map((x:any) => {\r\n return { id : parseInt(x.role_rcd) , name : x.role_name_l};\r\n });\r\n this.getList();\r\n });\r\n })\r\n }\r\n search() {\r\n this.getList();\r\n }\r\n\r\n onCheckAllChange() {\r\n this.deleteList = this.datatable.getCheckedRows();\r\n }\r\n\r\n onRowCheckChange(checked: boolean, rowIndex: number, nestedIndex: string, rowItem: any) {\r\n rowItem.$checked = checked;\r\n rowItem.$halfChecked = false;\r\n this.datatable.setRowCheckStatus({\r\n rowIndex: rowIndex,\r\n nestedIndex: nestedIndex,\r\n rowItem: rowItem,\r\n checked: checked,\r\n });\r\n this.deleteList = this.datatable.getCheckedRows();\r\n }\r\n\r\n getList() {\r\n const searchBody = {\r\n page: this.pager.pageIndex,\r\n pageSize: this.pager.pageSize,\r\n ...this._search\r\n }\r\n\r\n this.api.post(\"api/manager/UserRef/Search\", searchBody).subscribe((res:any) => {\r\n let a = JSON.parse(JSON.stringify(res));\r\n this.basicDataSource = a.data.filter((x: any) => x.role_rcd != 2);\r\n if(this.callAPIFirstTime) {\r\n let arr_tmp = this.data.permision.split(',');\r\n this.basicDataSource.forEach((v:any) => {\r\n if(this.data.permision == \"1\") {\r\n this.users_checked[v.user_rcd] = true;\r\n }\r\n else {\r\n if(this.data.permision == \"-1\") {\r\n this.users_checked[v.user_rcd] = false;\r\n }\r\n else {\r\n if(arr_tmp.includes(v.user_rcd)) {\r\n this.users_checked[v.user_rcd] = true;\r\n }\r\n else this.users_checked[v.user_rcd] = false;\r\n }\r\n }\r\n })\r\n this.users_checked_for_reset = JSON.parse(JSON.stringify(this.users_checked));\r\n this.callAPIFirstTime = false;\r\n }\r\n this.pager.total = a.totalItems;\r\n });\r\n }\r\n\r\n onPageChange(e: number) {\r\n this.pager.pageIndex = e;\r\n this.getList();\r\n }\r\n\r\n onSizeChange(e: number) {\r\n this.pager.pageSize = e;\r\n this.getList();\r\n }\r\n\r\n reset() {\r\n this.searchForm = {\r\n borderType: 'bordered',\r\n size: 'md',\r\n layout: 'auto',\r\n };\r\n this.pager.pageIndex = 1;\r\n this.users_checked = JSON.parse(JSON.stringify(this.users_checked_for_reset));\r\n this.getList();\r\n }\r\n isCheck(user_rcd:any) {\r\n return this.users_checked[user_rcd];\r\n }\r\n\r\n checkAll(e:any) {\r\n for (let key in this.users_checked) {\r\n this.users_checked[key] = e;\r\n }\r\n }\r\n\r\n changeCheckBox(e:any, user_rcd:any) {\r\n this.users_checked[user_rcd] = e;\r\n if(!e){\r\n this.isCheckAll = e\r\n } \r\n }\r\n\r\n save() {\r\n let permision = \"1\";\r\n let countTrue = 0;\r\n let countFalse = 0;\r\n let count = 0;\r\n let arr_rcd = [];\r\n for (let key in this.users_checked) {\r\n if(this.users_checked[key]) {\r\n countTrue++;\r\n arr_rcd.push(key);\r\n }\r\n else countFalse ++;\r\n count++;\r\n }\r\n if(countFalse == count) {\r\n permision = \"-1\";\r\n }\r\n if(countTrue == count) permision = \"1\";\r\n if(countTrue < count && countFalse < count) {\r\n permision = arr_rcd.join(',');\r\n }\r\n this.api.post(\"api/manager/profileRef/UpdatePermission\", {profile_rcd : this.data.profile_rcd, permision : permision}).subscribe((res:any) => {\r\n if(res.data) {\r\n this.onSave.emit(\"success\");\r\n }\r\n else this.onSave.emit(\"error\");\r\n })\r\n }\r\n \r\n\r\n onClick(event: any): void {\r\n\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Reset\r\n\r\n Chọn tất cả\r\n\r\n \r\n \r\n
    \r\n
    \r\n Lưu\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {{ colOption.header }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ rowItem?.full_name }}\r\n {{ rowItem?.gender }}\r\n {{ rowItem?.date_of_birth }}\r\n {{ rowItem?.phone_number }}\r\n \r\n {{ rowItem?.role_name_l }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { PersonalizeService, ThemeConfig } from 'src/app/@core/services/personalize.service';\r\nimport { ThemeType } from '../../models/theme';\r\n\r\n@Component({\r\n selector: 'da-personalize',\r\n templateUrl: './personalize.component.html',\r\n styleUrls: ['./personalize.component.scss'],\r\n})\r\nexport class PersonalizeComponent implements OnInit {\r\n customColor = '';\r\n customDark = false;\r\n\r\n themeType = ThemeType;\r\n\r\n currentTheme: any;\r\n\r\n configs: ThemeConfig[] = [];\r\n\r\n themeColors = [\r\n {\r\n name: 'Light',\r\n isDark: false,\r\n icon: 'icon-code-editor-light',\r\n colors: ['#343a40', '#24316c', '#673AB7', '#4f7dff', '#4caf78', '#5faa15', '#ff6a0d', '#f36b7f'],\r\n },\r\n {\r\n name: 'Dark',\r\n isDark: true,\r\n icon: 'icon-code-editor-dark',\r\n colors: ['#343a40', '#24316c', '#673AB7', '#4f7dff', '#4caf78', '#5faa15', '#ff6a0d', '#f36b7f'],\r\n },\r\n ];\r\n currentValue = {\r\n themes: localStorage.getItem('theme'),\r\n font: localStorage.getItem('font'),\r\n radius: localStorage.getItem('radius'),\r\n };\r\n\r\n destroy$ = new Subject();\r\n\r\n constructor(private personalizeService: PersonalizeService) {\r\n this.customColor = this.personalizeService.defaultCustom.brand;\r\n this.customDark = this.personalizeService.defaultCustom.isDark;\r\n }\r\n\r\n ngOnInit() {\r\n this.configs = this.personalizeService.configs;\r\n this.getCustomColor();\r\n this.personalizeService\r\n .getUiTheme()!\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((theme) => {\r\n this.currentTheme = theme;\r\n });\r\n }\r\n\r\n onChange(type: string, value: any) {\r\n switch (type) {\r\n case 'themes':\r\n this.personalizeService.changeTheme(value, localStorage.getItem('font')!, localStorage.getItem('radius')!);\r\n return;\r\n case 'font':\r\n this.personalizeService.changeTheme(localStorage.getItem('theme')!, value, localStorage.getItem('radius')!);\r\n return;\r\n case 'radius':\r\n this.personalizeService.changeTheme(localStorage.getItem('theme')!, localStorage.getItem('font')!, value);\r\n return;\r\n }\r\n }\r\n\r\n getCustomColor() {\r\n const customThemeConfig = localStorage.getItem('user-custom-theme-config');\r\n\r\n if (customThemeConfig) {\r\n const { brand, isDark } = JSON.parse(customThemeConfig);\r\n if (brand) {\r\n this.customColor = brand;\r\n this.customDark = isDark;\r\n }\r\n }\r\n }\r\n\r\n selectColor(color: string, theme: any) {\r\n if (!(window as { [key: string]: any })['devuiThemeService']) {\r\n return;\r\n }\r\n this.customColor = color;\r\n this.customDark = theme.isDark;\r\n const themeData = this.personalizeService.getCustomThemeData(color, theme.isDark);\r\n this.personalizeService.setCustomThemeData(themeData, color, theme.isDark);\r\n this.currentValue.themes = ThemeType.Custom;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    {{ 'personalize.title' | translate }}
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n {{\r\n \"personalize.\" + item.name | translate\r\n }}\r\n
    \r\n \r\n \r\n {{ \"personalize.\" + value.id | translate }}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {{ theme?.name }}\r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-public-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.css']\r\n})\r\nexport class FooterPublicComponent {\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n","import { Component,OnInit } from '@angular/core';\r\nimport { ApiService } from 'src/app/api.service';\r\n\r\n@Component({\r\n selector: 'app-public-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css']\r\n})\r\nexport class HeaderPublicComponent implements OnInit{\r\n menuData: any[] = [];\r\n _search = {\r\n keyword: '',\r\n select: -1\r\n };\r\n\r\n constructor(private api: ApiService) {}\r\n lstMenu: any;\r\n ngOnInit() {\r\n // this.api.post('api/manager/Menu/Search', { page : 1, pageSize: 10,lang: 1,menu_rcd:'',menu_name:'' }).subscribe((resp: any) => {\r\n // this.lstMenu = resp.data;\r\n // console.log(this.lstMenu);\r\n // })\r\n this.getList();\r\n }\r\n basicDataSource: any = [];\r\n getList() {\r\n this.api.post('api/manager/Menu/Search', { page: 1, pageSize: 100, search: '' }).subscribe((res: any) => {\r\n if (res?.data && Array.isArray(res.data)) {\r\n console.log('Dữ liệu API:', res.data);\r\n this.menuData = this.buildMenuTree(res.data);\r\n console.log('Menu Tree:', this.menuData);\r\n } else {\r\n console.error('Dữ liệu trả về không hợp lệ:', res);\r\n }\r\n });\r\n }\r\n\r\n buildMenuTree(menuList: any[]): any[] {\r\n let menuMap = new Map();\r\n let menuTree: any[] = [];\r\n\r\n menuList.forEach(menu => {\r\n menu.children = []; // Khởi tạo children cho từng mục menu\r\n menuMap.set(menu.menu_rcd, menu);\r\n });\r\n\r\n menuList.forEach(menu => {\r\n if (menu.level === 1) {\r\n menuTree.push(menu);\r\n } else {\r\n let parent = menuMap.get(menu.parent_rcd);\r\n if (parent) {\r\n parent.children = parent.children || [];\r\n parent.children.push(menu);\r\n } else {\r\n console.warn(`Không tìm thấy parent_rcd: ${menu.parent_rcd} cho menu_rcd: ${menu.menu_rcd}`);\r\n }\r\n }\r\n });\r\n\r\n return menuTree;\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Follow Us: \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ApiService } from 'src/app/api.service';\r\nimport { thisinh } from '../../models/thisinh';\r\nimport { AuthService } from 'src/app/@core/services/auth.service';\r\nimport { ToastService } from 'ng-devui';\r\nimport Swal from 'sweetalert2';\r\nimport { Router} from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-register-user',\r\n templateUrl: './register-user.component.html',\r\n styleUrls: ['./register-user.component.scss']\r\n})\r\nexport class RegisterUserComponent implements OnInit {\r\n\r\n constructor( private api: ApiService, private auth: AuthService, private toastService: ToastService, private router: Router) {}\r\n\r\n cccd: string = '';\r\n password: string = '';\r\n email: string = '';\r\n fullname: string = '';\r\n phone: string = '';\r\n rePassword: string = '';\r\n provinces_rcd: string = '';\r\n high_school_rcd: string = '';\r\n provinces: any[] = [];\r\n selectedProvince: any = '';\r\n HighSchools: any[] = [];\r\n selectedHighSchool: any = '';\r\n dropdownConfig = {\r\n displayKey: 'label',\r\n search: true,\r\n height: '200px',\r\n placeholder: 'Chọn một mục',\r\n limitTo: 500,\r\n moreText: 'Thêm',\r\n noResultsFound: 'Không tìm thấy kết quả',\r\n searchPlaceholder: 'Tìm kiếm...',\r\n searchOnKey: 'label'\r\n };\r\n ngOnInit(): void {\r\n \r\n this.getProvinces();\r\n }\r\n getProvinces() {\r\n this.api.get('api/manager/ProvincesRef/GetListDropdown').subscribe((resp: any) => {\r\n this.provinces = resp.data.map((ele: any) => ({\r\n label: ele.label,\r\n value: ele.value\r\n }));\r\n });\r\n }\r\n \r\n loadInfo(provinces_rcd: string) {\r\n if (!provinces_rcd) {\r\n this.HighSchools = [];\r\n return;\r\n }\r\n this.api.get(`api/manager/HighSchoolRef/GetListDropdown?provinces_rcd=${provinces_rcd}`).subscribe((resp: any) => {\r\n this.HighSchools = resp.data.map((ele: any) => ({\r\n label: ele.label,\r\n value: ele.value\r\n }));\r\n });\r\n }\r\n // Khi người dùng chọn một tỉnh khác\r\n onProvinceChange(selected: any) {\r\n this.selectedProvince = selected.value; // Chỉ lấy giá trị thay vì cả object\r\n console.log('Selected Province Value:', this.selectedProvince); // Kiểm tra giá trị truyền vào\r\n this.HighSchools = []; // Xóa dữ liệu cũ trước khi load mới\r\n this.loadInfo(selected.value.value);\r\n }\r\n \r\n \r\n\r\n register() {\r\n Swal.fire({\r\n title: 'Bạn có chắc muốn đăng ký?',\r\n text: '',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Đăng ký',\r\n cancelButtonText: 'Hủy',\r\n confirmButtonColor: '#fda31b',\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n this.api.post('api/manager/ThiSinh/register', {cccd: this.cccd, password: this.password, phone: this.phone, email: this.email, fullname: this.fullname,\r\n provinces_rcd: this.selectedProvince?.value, // Thêm thông tin tỉnh\r\n high_school_rcd: this.selectedHighSchool?.value // Thêm thông tin trường THPT\r\n }).subscribe((resp: any) => {\r\n let rs = JSON.parse(JSON.stringify(resp));\r\n if (rs.data) {\r\n Swal.fire({\r\n title: 'Thành công!',\r\n // html: 'Đăng ký thành công! Vui lòng kiểm tra email để xác nhận. Bạn có thể thi thử tại đây.',\r\n html: 'Đăng ký thành công! Vui lòng kiểm tra email để xác nhận. Bạn có thể thi thử VSAT.',\r\n icon: 'success'\r\n });\r\n this.api.post('api/manager/ThiSinh/login', {user_name: this.email, pass_word: this.password}).subscribe((resp: any) => {\r\n let rs = JSON.parse(JSON.stringify(resp));\r\n if (rs.data) {\r\n let { id, email, token, role_code, role_rcd, } = rs.data;\r\n let thiSinh: thisinh = { id, email, token, role_code, role_rcd };\r\n this.auth.setSessionThiSinh(thiSinh);\r\n this.router.navigate(['/manager-user/registerexam']);\r\n \r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Đăng nhập không thành công',\r\n content: 'Tài khoản hoặc mật khẩu không chính xác!',\r\n },\r\n ],\r\n life: 3000,\r\n });\r\n }\r\n })\r\n }\r\n else {\r\n this.toastService.open({\r\n value: [\r\n {\r\n severity: 'error',\r\n summary: 'Đăng ký không thành công, ' + rs.message,\r\n content: rs.messageCode,\r\n },\r\n ],\r\n life: 3000,\r\n });\r\n }\r\n })\r\n }\r\n });\r\n }\r\n\r\n}\r\n","
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"\"\r\n

    Đăng ký tài khoản

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n Vui lòng chọn tỉnh/thành phố.\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n Vui lòng chọn trường THPT.\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n CCCD là bắt buộc.\r\n CCCD phải là 12 chữ số.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n Số điện thoại là bắt buộc.\r\n Số điện thoại không hợp lệ.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n Họ và tên là bắt buộc.\r\n Họ và tên phải ít nhất 3 ký tự.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n Email là bắt buộc.\r\n Email không hợp lệ.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n Mật khẩu là bắt buộc.\r\n Mật khẩu phải ít nhất 6 ký tự.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n Vui lòng nhập lại mật khẩu.\r\n Mật khẩu không khớp.\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Bạn đã có tài khoản? Đăng nhập

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService, TranslationChangeEvent } from '@ngx-translate/core';\r\nimport { DialogService, DValidateRules, FormLayout, Message } from 'ng-devui';\r\nimport { I18nService } from 'ng-devui/i18n';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { PersonalizeService } from 'src/app/@core/services/personalize.service';\r\nimport { LANGUAGES } from 'src/config/language-config';\r\nimport { ThemeType } from '../../models/theme';\r\n\r\n@Component({\r\n selector: 'da-register',\r\n templateUrl: './register.component.html',\r\n styleUrls: ['./register.component.scss'],\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n private destroy$ = new Subject();\r\n\r\n showPassword = false;\r\n showConfirmPassword = false;\r\n\r\n language: string;\r\n i18nValues: any;\r\n toastMessage: Message[];\r\n languages = LANGUAGES;\r\n\r\n formData = {\r\n email: '',\r\n password: '',\r\n confirmPassword: '',\r\n };\r\n\r\n formRules: { [key: string]: DValidateRules } = {\r\n emailRules: {\r\n validators: [{ required: true }, { email: true }],\r\n },\r\n passwordRules: {\r\n validators: [{ required: true }, { minlength: 6 }, { maxlength: 15 }, { pattern: /^[a-zA-Z0-9\\d@$!%*?&.]+(\\s+[a-zA-Z0-9]+)*$/ }],\r\n message: 'Enter a password that contains 6 to 15 digits and letters.',\r\n },\r\n confirmPasswordRules: [\r\n { required: true },\r\n {\r\n sameToPassWord: this.sameToPassWord.bind(this),\r\n message: { 'en-us': 'Ensure that the two passwords are the same.', 'zh-cn': '请确保密码一致' },\r\n },\r\n { minlength: 6 },\r\n { maxlength: 15 },\r\n { pattern: /^[a-zA-Z0-9\\d@$!%*?&.]+(\\s+[a-zA-Z0-9]+)*$/, message: 'The password must contain 6 to 15 digits and letters.' },\r\n ],\r\n };\r\n\r\n verticalLayout: FormLayout = FormLayout.Vertical;\r\n\r\n constructor(\r\n private route: Router,\r\n private translate: TranslateService,\r\n private i18n: I18nService,\r\n private dialogService: DialogService,\r\n private personalizeService: PersonalizeService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.translate\r\n .get('registerPage')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res) => {\r\n this.i18nValues = this.translate.instant('registerPage');\r\n });\r\n\r\n this.translate.onLangChange.pipe(takeUntil(this.destroy$)).subscribe((event: TranslationChangeEvent) => {\r\n this.i18nValues = this.translate.instant('registerPage');\r\n });\r\n this.language = this.translate.currentLang;\r\n this.personalizeService.setRefTheme(ThemeType.Default);\r\n }\r\n\r\n register(result: any) {\r\n if (result.valid) {\r\n const results = this.dialogService.open({\r\n id: 'register-result',\r\n width: '350px',\r\n maxHeight: '600px',\r\n title: this.i18nValues.resultMessage.title,\r\n content: this.i18nValues.resultMessage.content,\r\n backdropCloseable: false,\r\n dialogtype: 'success',\r\n buttons: [\r\n {\r\n cssClass: 'primary',\r\n text: 'Ok',\r\n handler: ($event: Event) => {\r\n this.goToLogin(results);\r\n },\r\n },\r\n ],\r\n });\r\n setTimeout(() => {\r\n this.goToLogin(results);\r\n }, 3000);\r\n }\r\n }\r\n\r\n goToLogin(dialogResult: any) {\r\n dialogResult.modalInstance.hide();\r\n this.route.navigate(['/login']);\r\n }\r\n\r\n onLanguageClick(language: string) {\r\n this.language = language;\r\n localStorage.setItem('lang', this.language);\r\n this.i18n.toggleLang(this.language);\r\n this.translate.use(this.language);\r\n }\r\n\r\n sameToPassWord(value: string) {\r\n return value === this.formData.password;\r\n }\r\n}\r\n","\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \"DevUI-Logo\"\r\n \r\n DevUI\r\n
    \r\n {{ 'registerPage.coperation' | translate }}\r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'registerPage.email' | translate }}:\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'registerPage.password' | translate }}:\r\n \r\n \r\n \r\n \r\n \r\n {{ 'registerPage.confirmPassword' | translate }}:\r\n \r\n \r\n \r\n \r\n \r\n {{ 'registerPage.other' | translate }}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n \r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'da-side-menu',\r\n templateUrl: './side-draw.component.html',\r\n styleUrls: ['./side-draw.component.scss']\r\n})\r\nexport class SideMenuComponent implements OnInit {\r\n\r\n @Input() data: any;\r\n user: any;\r\n\r\n constructor(private router: Router) { }\r\n ngOnInit(): void {\r\n const currentUrl = this.router.url;\r\n if (localStorage.getItem('userinfo')) {\r\n this.user = JSON.parse(localStorage.getItem('userinfo')!);\r\n this.data = this.data.filter((v:any) => {\r\n v.open = false;\r\n // if (v.children) {\r\n v.children.filter((child: any) => {\r\n if (child.link == currentUrl) {\r\n v.open = true; //mở menu cha chứa link hiện tại\r\n }\r\n })\r\n // }\r\n // else v.open = true;\r\n return v.roles.indexOf(this.user.role_code) > -1\r\n })\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n \r\n {{ item.title }}\r\n\r\n","import { Component, Input, OnDestroy } from '@angular/core';\r\nimport { Clipboard } from '@angular/cdk/clipboard';\r\nimport { DaLayoutService } from '../../layouts/da-layout/da-layout.service';\r\nimport { DaLayoutConfig, LEFT_RIGHT_LAYOUT_CONFIG, SIDEBAR_LAYOUT_CONFIG, TOP_NAV_LAYOUT_CONFIG } from '../../layouts/da-layout';\r\nimport { DaScreenMediaQueryService } from '../../layouts/da-grid';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { TranslateService, TranslationChangeEvent } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'da-side-settings',\r\n templateUrl: './side-settings.component.html',\r\n styleUrls: ['./side-settings.component.scss'],\r\n})\r\nexport class SideSettingsComponent implements OnDestroy {\r\n @Input() close: any;\r\n\r\n private destroy$ = new Subject();\r\n\r\n layoutConfig: DaLayoutConfig;\r\n layout: string | null;\r\n helpContent: string;\r\n msgs: Array = [];\r\n\r\n i18nValues: any;\r\n\r\n sidebarNotice: any = {};\r\n\r\n private change: number;\r\n private compare: { [key: string]: number };\r\n\r\n constructor(\r\n private clipboard: Clipboard,\r\n private layoutService: DaLayoutService,\r\n private mediaQueryService: DaScreenMediaQueryService,\r\n private translate: TranslateService\r\n ) {\r\n this.mediaQueryService\r\n .getPoint()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(({ currentPoint, change, compare }) => {\r\n this.change = change;\r\n this.compare = compare;\r\n });\r\n }\r\n\r\n refreshReactiveLayout() {\r\n /* ml:sidebar shrink breakpoint */\r\n if (this.change <= 0 && this.compare['ml'] <= 0) {\r\n this.sidebarShrink(true);\r\n } else if (this.change >= 0 && this.compare['ml'] > 0) {\r\n this.sidebarShrink(false);\r\n }\r\n\r\n /* mm:sidebar hidden breakpoint */\r\n if (this.change <= 0 && this.compare['mm'] <= 0) {\r\n this.sidebarFold(true);\r\n } else if (this.change >= 0 && this.compare['mm'] > 0) {\r\n this.sidebarFold(false);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.initLayoutConfig();\r\n\r\n if (localStorage.getItem('da-layout-id')) {\r\n this.layout = localStorage.getItem('da-layout-id');\r\n } else {\r\n this.layout = 'left-right';\r\n }\r\n\r\n this.translate\r\n .get('side-setting')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res) => {\r\n this.i18nValues = this.translate.instant('side-setting');\r\n this.updateI18nItems(res);\r\n });\r\n\r\n this.translate.onLangChange.pipe(takeUntil(this.destroy$)).subscribe((event: TranslationChangeEvent) => {\r\n this.i18nValues = this.translate.instant('side-setting');\r\n this.updateI18nItems(this.i18nValues);\r\n });\r\n }\r\n\r\n handleLayoutClicked(layout: string) {\r\n this.layout = layout;\r\n localStorage.setItem('da-layout-id', layout);\r\n if (layout === 'topNav') {\r\n this.layoutConfig = TOP_NAV_LAYOUT_CONFIG;\r\n } else if (layout === 'sidebar') {\r\n this.layoutConfig = SIDEBAR_LAYOUT_CONFIG;\r\n } else if (layout === 'left-right') {\r\n this.layoutConfig = LEFT_RIGHT_LAYOUT_CONFIG;\r\n }\r\n\r\n this.refreshReactiveLayout();\r\n this.layoutService.updateLayoutConfig(this.layoutConfig);\r\n window.dispatchEvent(new Event('resize'));\r\n }\r\n\r\n initLayoutConfig() {\r\n this.layoutService.getLayoutConfig().subscribe((layout) => {\r\n this.layoutConfig = layout;\r\n });\r\n }\r\n\r\n onCopyClicked() {\r\n let isSucceeded = false;\r\n const isSupported = !!document.queryCommandSupported && !!document.queryCommandSupported('copy') && !!window;\r\n if (isSupported) {\r\n isSucceeded = this.clipboard.copy(JSON.stringify(this.layoutConfig, null, 2));\r\n if (isSucceeded) {\r\n this.msgs = [\r\n {\r\n severity: 'success',\r\n summary: this.i18nValues['copy-summary'],\r\n content: this.i18nValues['copy-content'],\r\n },\r\n ];\r\n }\r\n }\r\n }\r\n\r\n updateLayout() {\r\n this.layoutService.updateLayoutConfig(this.layoutConfig);\r\n window.dispatchEvent(new Event('resize'));\r\n }\r\n\r\n sidebarShrink(isShrink: boolean) {\r\n if (this.layoutConfig.sidebar.firSidebar) {\r\n this.layoutConfig.sidebar.firSidebar.width = isShrink ? 54 : 240;\r\n }\r\n this.layoutConfig.sidebar.shrink = isShrink;\r\n }\r\n\r\n sidebarFold(isFold: boolean) {\r\n if (this.layoutConfig.sidebar.firSidebar) {\r\n this.layoutConfig.sidebar.firSidebar.hidden = isFold;\r\n }\r\n }\r\n\r\n updateI18nItems(values: any) {\r\n this.helpContent = values['helpContent'];\r\n this.sidebarNotice['canConfig'] = values['sidebar-notice']['can-config'];\r\n this.sidebarNotice['cannotConfig'] = values['sidebar-notice']['cannot-config'];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{ 'side-setting.layout' | translate }}\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ 'side-setting.fix-header' | translate }}\r\n \r\n
    \r\n
    \r\n {{ 'side-setting.fix-sidebar' | translate }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    {{ 'side-setting.content-area' | translate }}

    \r\n
    \r\n
    \r\n
    \r\n {{ 'side-setting.hide-footer' | translate }}\r\n \r\n
    \r\n
    \r\n {{ 'side-setting.hide-top' | translate }}\r\n \r\n
    \r\n
    \r\n {{ 'side-setting.hide-menu' | translate }}\r\n \r\n
    \r\n
    \r\n {{ 'side-setting.hide-menu-head' | translate }}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ 'side-setting.notice' | translate }}\r\n \r\n {{ 'side-setting.copy-config' | translate }}\r\n \r\n \r\n
    \r\n
    \r\n","import { Component, ChangeDetectionStrategy, HostBinding, Input, Renderer2, ElementRef, OnInit, OnChanges } from '@angular/core';\r\nimport { setGridClass } from './layout-utils';\r\nimport { DaAlignSelf, DaMergedProperty } from './layout.types';\r\n\r\n@Component({\r\n selector: 'da-col-item',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: `\r\n \r\n `,\r\n})\r\nexport class ColComponent implements OnInit, OnChanges {\r\n\r\n @HostBinding('class.da-col') daCol = true;\r\n\r\n @Input() daSpan: number;\r\n @Input() daMs: number | DaMergedProperty;\r\n @Input() daMm: number | DaMergedProperty;\r\n @Input() daMl: number | DaMergedProperty;\r\n @Input() daXs: number | DaMergedProperty;\r\n @Input() daSm: number | DaMergedProperty;\r\n @Input() daMd: number | DaMergedProperty;\r\n @Input() daLg: number | DaMergedProperty;\r\n @Input() daXl: number | DaMergedProperty;\r\n\r\n @Input() daOrder: number;\r\n @Input() daOrderMs: number;\r\n @Input() daOrderMn: number;\r\n @Input() daOrderMl: number;\r\n @Input() daOrderXs: number;\r\n @Input() daOrderSm: number;\r\n @Input() daOrderMd: number;\r\n @Input() daOrderLg: number;\r\n @Input() daOrderXl: number;\r\n\r\n @Input() daOffset: number;\r\n @Input() daOffsetMs: number;\r\n @Input() daOffsetMn: number;\r\n @Input() daOffsetMl: number;\r\n @Input() daOffsetXs: number;\r\n @Input() daOffsetSm: number;\r\n @Input() daOffsetMd: number;\r\n @Input() daOffsetLg: number;\r\n @Input() daOffsetXl: number;\r\n\r\n @Input() daAlignSelf: DaAlignSelf;\r\n @Input() daAlignSelfMs: DaAlignSelf;\r\n @Input() daAlignSelfMm: DaAlignSelf;\r\n @Input() daAlignSelfMl: DaAlignSelf;\r\n @Input() daAlignSelfXs: DaAlignSelf;\r\n @Input() daAlignSelfSm: DaAlignSelf;\r\n @Input() daAlignSelfMd: DaAlignSelf;\r\n @Input() daAlignSelfLg: DaAlignSelf;\r\n @Input() daAlignSelfXl: DaAlignSelf;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngOnChanges(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n}\r\n","import { Directive, OnInit, OnDestroy, ElementRef, Renderer2, Input } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { setScreenPointFlex } from './layout-utils';\r\nimport { DaScreenMediaQueryService } from './screen-media-query.service';\r\n\r\n@Directive({\r\n selector: `[daFlex], [daFlexMs], [daFlexMm], [daFlexMl], [daFlexXs], [daFlexSm], [daFlexMd], [daFlexLg], [daFlexXl]`,\r\n})\r\n\r\nexport class DaFlexDirective implements OnInit, OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @Input() daFlex: number | string;\r\n @Input() daFlexMs: number | string;\r\n @Input() daFlexMn: number | string;\r\n @Input() daFlexMl: number | string;\r\n @Input() daFlexXs: number | string;\r\n @Input() daFlexSm: number | string;\r\n @Input() daFlexMd: number | string;\r\n @Input() daFlexLg: number | string;\r\n @Input() daFlexXl: number | string;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private screenQueryService: DaScreenMediaQueryService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.screenQueryService.getPoint()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(( {currentPoint }) => {\r\n setScreenPointFlex(currentPoint, this, this.elementRef, this.renderer);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","export * from './public-api';\r\n","import { Component, ChangeDetectionStrategy, HostBinding, Input, AfterViewInit } from '@angular/core';\r\nimport { ElementRef, Renderer2, OnInit, OnChanges, ViewEncapsulation, OnDestroy } from '@angular/core';\r\nimport { DaAlign, DaJustify, DaAlignSelf, DaMergedProperty } from './layout.types';\r\nimport { setGridClass, setScreenPointFlex, setScreenPointElementsSpaceAndGutter } from './layout-utils';\r\nimport { Subject } from 'rxjs';\r\nimport { DaScreenMediaQueryService } from './screen-media-query.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'da-layout-col',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: `\r\n \r\n `,\r\n styles: [\r\n `\r\n da-layout-col.da-layout-col {\r\n margin: 0;\r\n padding: 0;\r\n }\r\n `\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n preserveWhitespaces: false\r\n})\r\nexport class LayoutColComponent implements OnInit, AfterViewInit, OnChanges, OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-col') daLayoutCol = true;\r\n @HostBinding('class.dl-d-flex') flex = true;\r\n @HostBinding('class.dl-flex-column') flexColumn = true;\r\n\r\n @Input() daSpace: number | number[] = 0;\r\n @Input() daSpaceMs: number | number[];\r\n @Input() daSpaceMn: number | number[];\r\n @Input() daSpaceMl: number | number[];\r\n @Input() daSpaceXs: number | number[];\r\n @Input() daSpaceSm: number | number[];\r\n @Input() daSpaceMd: number | number[];\r\n @Input() daSpaceLg: number | number[];\r\n @Input() daSpaceXl: number | number[];\r\n\r\n @Input() daGutter: number | number[] = 0;\r\n @Input() daGutterMs: number | number[];\r\n @Input() daGutterMn: number | number[];\r\n @Input() daGutterMl: number | number[];\r\n @Input() daGutterXs: number | number[];\r\n @Input() daGutterSm: number | number[];\r\n @Input() daGutterMd: number | number[];\r\n @Input() daGutterLg: number | number[];\r\n @Input() daGutterXl: number | number[];\r\n\r\n @Input() daSpan: number;\r\n @Input() daMs: number | DaMergedProperty;\r\n @Input() daMm: number | DaMergedProperty;\r\n @Input() daMl: number | DaMergedProperty;\r\n @Input() daXs: number | DaMergedProperty;\r\n @Input() daSm: number | DaMergedProperty;\r\n @Input() daMd: number | DaMergedProperty;\r\n @Input() daLg: number | DaMergedProperty;\r\n @Input() daXl: number | DaMergedProperty;\r\n\r\n @Input() daOffset: number;\r\n @Input() daOffsetMs: number;\r\n @Input() daOffsetMn: number;\r\n @Input() daOffsetMl: number;\r\n @Input() daOffsetXs: number;\r\n @Input() daOffsetSm: number;\r\n @Input() daOffsetMd: number;\r\n @Input() daOffsetLg: number;\r\n @Input() daOffsetXl: number;\r\n\r\n @Input() daAlign: DaAlign;\r\n @Input() daAlignMs: DaAlign;\r\n @Input() daAlignMn: DaAlign;\r\n @Input() daAlignMl: DaAlign;\r\n @Input() daAlignXs: DaAlign;\r\n @Input() daAlignSm: DaAlign;\r\n @Input() daAlignMd: DaAlign;\r\n @Input() daAlignLg: DaAlign;\r\n @Input() daAlignXl: DaAlign;\r\n\r\n @Input() daJustify: DaJustify;\r\n @Input() daJustifyMs: DaJustify;\r\n @Input() daJustifyMn: DaJustify;\r\n @Input() daJustifyMl: DaJustify;\r\n @Input() daJustifyXs: DaJustify;\r\n @Input() daJustifySm: DaJustify;\r\n @Input() daJustifyMd: DaJustify;\r\n @Input() daJustifyLg: DaJustify;\r\n @Input() daJustifyXl: DaJustify;\r\n\r\n @Input() daAlignSelf: DaAlignSelf;\r\n @Input() daAlignSelfMs: DaAlignSelf;\r\n @Input() daAlignSelfMm: DaAlignSelf;\r\n @Input() daAlignSelfMl: DaAlignSelf;\r\n @Input() daAlignSelfXs: DaAlignSelf;\r\n @Input() daAlignSelfSm: DaAlignSelf;\r\n @Input() daAlignSelfMd: DaAlignSelf;\r\n @Input() daAlignSelfLg: DaAlignSelf;\r\n @Input() daAlignSelfXl: DaAlignSelf;\r\n\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private screenQueryService: DaScreenMediaQueryService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngOnChanges(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.screenQueryService.getPoint()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(({ currentPoint }) => {\r\n setScreenPointElementsSpaceAndGutter(this.getAllItems(), currentPoint, 'col', this, this.renderer);\r\n });\r\n }\r\n\r\n getAllItems(): HTMLElement[] {\r\n return (Array.from(this.elementRef.nativeElement.children) as []).filter((ele: HTMLElement) => {\r\n return ele.matches('da-row-item, da-layout-row');\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","import { Component, ChangeDetectionStrategy, HostBinding, ElementRef } from '@angular/core';\r\nimport { Renderer2, Input, AfterViewInit, ViewEncapsulation, OnInit, OnChanges, OnDestroy } from '@angular/core';\r\nimport { setGridClass, setScreenPointElementsSpaceAndGutter } from './layout-utils';\r\nimport { DaScreenMediaQueryService } from './screen-media-query.service';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { DaAlign, DaAlignSelf, DaJustify } from './layout.types';\r\n@Component({\r\n selector: 'da-layout-row',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: `\r\n \r\n `,\r\n styles: [\r\n `\r\n da-layout-row.da-layout-row {\r\n margin: 0;\r\n padding: 0;\r\n }\r\n `\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n preserveWhitespaces: false\r\n})\r\n\r\nexport class LayoutRowComponent implements OnInit, AfterViewInit, OnChanges, OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-row') daLayoutRow = true;\r\n @HostBinding('class.dl-row') dlRow = true;\r\n @HostBinding('class.dl-flex-row') dlFlexRow = true;\r\n\r\n /* 暂时使用方式为如12则为设置左右间距,为[12, 12]则为左右,上下间距 */\r\n @Input() daSpace: number | number[] = 0;\r\n @Input() daSpaceMs: number | number[];\r\n @Input() daSpaceMn: number | number[];\r\n @Input() daSpaceMl: number | number[];\r\n @Input() daSpaceXs: number | number[];\r\n @Input() daSpaceSm: number | number[];\r\n @Input() daSpaceMd: number | number[];\r\n @Input() daSpaceLg: number | number[];\r\n @Input() daSpaceXl: number | number[];\r\n\r\n @Input() daGutter: number | number[] = 0;\r\n @Input() daGutterMs: number | number[];\r\n @Input() daGutterMn: number | number[];\r\n @Input() daGutterMl: number | number[];\r\n @Input() daGutterXs: number | number[];\r\n @Input() daGutterSm: number | number[];\r\n @Input() daGutterMd: number | number[];\r\n @Input() daGutterLg: number | number[];\r\n @Input() daGutterXl: number | number[];\r\n\r\n @Input() daOffset: number;\r\n @Input() daOffsetMs: number;\r\n @Input() daOffsetMn: number;\r\n @Input() daOffsetMl: number;\r\n @Input() daOffsetXs: number;\r\n @Input() daOffsetSm: number;\r\n @Input() daOffsetMd: number;\r\n @Input() daOffsetLg: number;\r\n @Input() daOffsetXl: number;\r\n\r\n @Input() daAlign: DaAlign;\r\n @Input() daAlignMs: DaAlign;\r\n @Input() daAlignMn: DaAlign;\r\n @Input() daAlignMl: DaAlign;\r\n @Input() daAlignXs: DaAlign;\r\n @Input() daAlignSm: DaAlign;\r\n @Input() daAlignMd: DaAlign;\r\n @Input() daAlignLg: DaAlign;\r\n @Input() daAlignXl: DaAlign;\r\n\r\n @Input() daJustify: DaJustify;\r\n @Input() daJustifyMs: DaJustify;\r\n @Input() daJustifyMn: DaJustify;\r\n @Input() daJustifyMl: DaJustify;\r\n @Input() daJustifyXs: DaJustify;\r\n @Input() daJustifySm: DaJustify;\r\n @Input() daJustifyMd: DaJustify;\r\n @Input() daJustifyLg: DaJustify;\r\n @Input() daJustifyXl: DaJustify;\r\n\r\n @Input() daAlignSelf: DaAlignSelf;\r\n @Input() daAlignSelfMs: DaAlignSelf;\r\n @Input() daAlignSelfMm: DaAlignSelf;\r\n @Input() daAlignSelfMl: DaAlignSelf;\r\n @Input() daAlignSelfXs: DaAlignSelf;\r\n @Input() daAlignSelfSm: DaAlignSelf;\r\n @Input() daAlignSelfMd: DaAlignSelf;\r\n @Input() daAlignSelfLg: DaAlignSelf;\r\n @Input() daAlignSelfXl: DaAlignSelf;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private screenQueryService: DaScreenMediaQueryService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngOnChanges(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.screenQueryService.getPoint()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(({ currentPoint }) => {\r\n setScreenPointElementsSpaceAndGutter(this.getAllItems(), currentPoint, 'row', this, this.renderer);\r\n });\r\n }\r\n\r\n getAllItems(): HTMLElement[] {\r\n return (Array.from(this.elementRef.nativeElement.children) as []).filter((ele: HTMLElement) => {\r\n return ele.matches('da-col-item, da-layout-col');\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","import { ElementRef, Renderer2 } from '@angular/core';\r\nimport { DaBreakpoint, DaBreakpoints, DaMergedProperty } from './layout.types';\r\n\r\nexport function parseFlex(flex: any): string {\r\n if (typeof flex === 'number') {\r\n return `${flex} ${flex} auto`;\r\n } else if (typeof flex === 'string') {\r\n if (/^\\d+(\\.\\d+)?(px|em|rem|%)$/.test(flex)) {\r\n return `0 0 ${flex}`;\r\n }\r\n }\r\n return flex;\r\n}\r\n\r\nexport function setGridClass(context: any, elementRef: ElementRef, renderer: Renderer2): void {\r\n const breakpoints = ['Ms', 'Mm', 'Ml', 'Xs', 'Sm', 'Md', 'Lg', 'Xl'];\r\n const classPrefixMap: any = {\r\n daOffset: 'dl-offset-',\r\n daAlign: 'dl-align-items-',\r\n daJustify: 'dl-justify-content-',\r\n daAlignSelf: 'dl-align-self-',\r\n daOrder: 'dl-order-',\r\n };\r\n const tempClassMap: any = {};\r\n if (context.daSpan !== undefined) {\r\n const className = context.daSpan === 0 ? `dl-d-none` : `dl-col-${context.daSpan}`;\r\n tempClassMap[className] = true;\r\n }\r\n breakpoints.forEach((point) => {\r\n const sizeName = 'da' + point;\r\n point = point.toLowerCase();\r\n if (context[sizeName] !== undefined) {\r\n if (typeof context[sizeName] === 'number') {\r\n const className = context[sizeName] === 0 ? `dl-d-${point}-none` : `dl-col-${point}-${context[sizeName]}`;\r\n tempClassMap[className] = true;\r\n } else {\r\n const mergedProperty: any = context[sizeName] as DaMergedProperty;\r\n if (mergedProperty.hasOwnProperty('span')) {\r\n const className = mergedProperty['span'] === 0 ? `dl-d-${point}-none` : `dl-col-${point}-${mergedProperty['span']}`;\r\n tempClassMap[className] = true;\r\n }\r\n for (const prefix in classPrefixMap) {\r\n if (mergedProperty.hasOwnProperty(prefix.slice(2).toLowerCase())) {\r\n const className = classPrefixMap[prefix] + mergedProperty[prefix.slice(2).toLowerCase()];\r\n tempClassMap[className] = true;\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n for (const prefix in classPrefixMap) {\r\n if (context[prefix] !== undefined) {\r\n const className = classPrefixMap[prefix] + context[prefix];\r\n tempClassMap[className] = true;\r\n }\r\n breakpoints.forEach((point) => {\r\n const name = prefix + point;\r\n point = point.toLowerCase();\r\n if (context[name] !== undefined) {\r\n const className = classPrefixMap[prefix] + `${point}-${context[name]}`;\r\n tempClassMap[className] = true;\r\n }\r\n });\r\n }\r\n\r\n if (context.classMap) {\r\n for (const className in context.classMap) {\r\n if (context.classMap.hasOwnProperty(className)) {\r\n renderer.removeClass(elementRef.nativeElement, className);\r\n }\r\n }\r\n }\r\n\r\n context.classMap = { ...tempClassMap };\r\n for (const className in context.classMap) {\r\n if (context.classMap.hasOwnProperty(className) && context.classMap[className]) {\r\n renderer.addClass(elementRef.nativeElement, className);\r\n }\r\n }\r\n}\r\n\r\nexport function setScreenPointFlex(point: DaBreakpoint, context: any, elementRef: ElementRef, renderer: Renderer2): void {\r\n let flexName;\r\n let flex;\r\n\r\n for (const tempPoint of DaBreakpoints) {\r\n flexName = 'daFlex' + firstLetterToUpperCase(tempPoint);\r\n flex = context[flexName] !== undefined ? context[flexName] : flex;\r\n if (tempPoint === point) {\r\n flex = flex === undefined ? context['daFlex'] : flex;\r\n break;\r\n }\r\n }\r\n\r\n renderer.setStyle(elementRef.nativeElement, 'flex', parseFlex(flex));\r\n}\r\n\r\nexport function setScreenPointElementsSpaceAndGutter(\r\n items: HTMLElement[],\r\n point: DaBreakpoint,\r\n dir: string,\r\n context: any,\r\n renderer: Renderer2\r\n): void {\r\n let spaceName, space, gutterName, gutter;\r\n\r\n for (const tempPoint of DaBreakpoints) {\r\n spaceName = 'daSpace' + firstLetterToUpperCase(tempPoint);\r\n gutterName = 'daGutter' + firstLetterToUpperCase(tempPoint);\r\n space = context[spaceName] !== undefined ? context[spaceName] : space;\r\n gutter = context[gutterName] !== undefined ? context[gutterName] : gutter;\r\n if (tempPoint === point) {\r\n space = space === undefined ? context['daSpace'] : space;\r\n gutter = gutter === undefined ? context['daGutter'] : gutter;\r\n break;\r\n }\r\n }\r\n\r\n const spaces = Array.isArray(space) ? [...space] : [space];\r\n const gutters = Array.isArray(gutter) ? [...gutter] : [gutter];\r\n\r\n for (let i = spaces.length - 1; i < items.length - 1; i++) {\r\n if (Array.isArray(space)) {\r\n spaces.push(0);\r\n } else {\r\n spaces.push(space);\r\n }\r\n }\r\n\r\n for (let i = 0; i < items.length; i++) {\r\n renderer.setStyle(items[i], 'padding-left', gutters[0] / 2 + 'px');\r\n renderer.setStyle(items[i], 'padding-right', gutters[0] / 2 + 'px');\r\n if (gutters[1]) {\r\n renderer.setStyle(items[i], 'padding-top', gutters[1] / 2 + 'px');\r\n renderer.setStyle(items[i], 'padding-bottom', gutters[1] / 2 + 'px');\r\n }\r\n }\r\n\r\n for (let i = 0; i < items.length - 1; i++) {\r\n if (dir === 'row') {\r\n renderer.setStyle(items[i], 'margin-right', spaces[i] + 'px');\r\n } else if (dir === 'col') {\r\n renderer.setStyle(items[i], 'margin-bottom', spaces[i] + 'px');\r\n }\r\n }\r\n}\r\n\r\nexport function setScreenPointStyle(point: DaBreakpoint, context: any, elementRef: ElementRef, renderer: Renderer2): void {\r\n let styleName;\r\n let style = context['daStyle'];\r\n\r\n for (const tempPoint of DaBreakpoints) {\r\n styleName = 'daStyle' + firstLetterToUpperCase(tempPoint);\r\n style = context[styleName] !== undefined ? { ...style, ...context[styleName] } : style;\r\n if (tempPoint === point) {\r\n break;\r\n }\r\n }\r\n\r\n for (const key of Object.keys(context.$currentDaStyle || {})) {\r\n // use Object.keys to fix tslint error.\r\n renderer.removeStyle(elementRef.nativeElement, key);\r\n }\r\n\r\n for (const key of Object.keys(style || {})) {\r\n renderer.setStyle(elementRef.nativeElement, key, style[key]);\r\n }\r\n context.$currentDaStyle = style;\r\n}\r\n\r\nfunction firstLetterToUpperCase(str: string): string {\r\n const tempArr = str.split('');\r\n tempArr[0] = tempArr[0].toUpperCase();\r\n\r\n return tempArr.join('');\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LayoutRowComponent } from './layout-row.component';\r\nimport { LayoutColComponent } from './layout-col.component';\r\nimport { RowComponent } from './row.component';\r\nimport { ColComponent } from './col.component';\r\nimport { DaStyleDirective } from './style.directive';\r\nimport { DaFlexDirective } from './flex.directive';\r\n\r\n@NgModule({\r\n declarations: [\r\n LayoutRowComponent,\r\n LayoutColComponent,\r\n RowComponent,\r\n ColComponent,\r\n DaStyleDirective,\r\n DaFlexDirective\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n LayoutRowComponent,\r\n LayoutColComponent,\r\n RowComponent,\r\n ColComponent,\r\n DaStyleDirective,\r\n DaFlexDirective\r\n ]\r\n})\r\nexport class DaGridModule { }\r\n","export type DaJustify = 'start' | 'end' | 'center' | 'around' | 'between';\r\nexport type DaAlign = 'start' | 'center' | 'end' | 'baseline' | 'stretch';\r\nexport type DaAlignSelf = 'start' | 'center' | 'end' | 'baseline' | 'stretch';\r\nexport type DaBreakpoint = 'ss' | 'ms' | 'mm' | 'ml' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\nexport const DaBreakpoints: DaBreakpoint[] = ['ss', 'ms', 'mm', 'ml', 'xs', 'sm', 'md', 'lg', 'xl'];\r\nexport const DaBreakpointsMap = {\r\n ss: 0,\r\n ms: 360,\r\n mm: 768,\r\n ml: 1024,\r\n xs: 1280,\r\n sm: 1440,\r\n md: 1600,\r\n lg: 1760,\r\n xl: 1920,\r\n};\r\nexport type DaMergedProperty = {\r\n daSpan?: number;\r\n daOffset?: number;\r\n daAlign?: DaAlign;\r\n daJustify?: DaJustify;\r\n daAlignSelf?: DaAlignSelf;\r\n daOrder?: number;\r\n};\r\n","export * from './layout.module';\r\nexport * from './layout-row.component';\r\nexport * from './layout-col.component';\r\nexport * from './row.component';\r\nexport * from './col.component';\r\nexport * from './layout.types';\r\nexport * from './screen-media-query.service';\r\nexport * from './style.directive';\r\nexport * from './flex.directive';\r\n","import { Component, ChangeDetectionStrategy, HostBinding, Input, OnChanges, OnInit, ElementRef, Renderer2, OnDestroy } from '@angular/core';\r\nimport { setGridClass } from './layout-utils';\r\nimport { DaAlignSelf } from './layout.types';\r\n\r\n@Component({\r\n selector: 'da-row-item',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: `\r\n \r\n `,\r\n})\r\nexport class RowComponent implements OnInit, OnChanges {\r\n @HostBinding('class.da-row') daRow = true;\r\n\r\n @Input() daOrder: number;\r\n @Input() daOrderMs: number;\r\n @Input() daOrderMn: number;\r\n @Input() daOrderMl: number;\r\n @Input() daOrderXs: number;\r\n @Input() daOrderSm: number;\r\n @Input() daOrderMd: number;\r\n @Input() daOrderLg: number;\r\n @Input() daOrderXl: number;\r\n\r\n @Input() daOffset: number;\r\n @Input() daOffsetMs: number;\r\n @Input() daOffsetMn: number;\r\n @Input() daOffsetMl: number;\r\n @Input() daOffsetXs: number;\r\n @Input() daOffsetSm: number;\r\n @Input() daOffsetMd: number;\r\n @Input() daOffsetLg: number;\r\n @Input() daOffsetXl: number;\r\n\r\n @Input() daAlignSelf: DaAlignSelf;\r\n @Input() daAlignSelfMs: DaAlignSelf;\r\n @Input() daAlignSelfMm: DaAlignSelf;\r\n @Input() daAlignSelfMl: DaAlignSelf;\r\n @Input() daAlignSelfXs: DaAlignSelf;\r\n @Input() daAlignSelfSm: DaAlignSelf;\r\n @Input() daAlignSelfMd: DaAlignSelf;\r\n @Input() daAlignSelfLg: DaAlignSelf;\r\n @Input() daAlignSelfXl: DaAlignSelf;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n\r\n ngOnChanges(): void {\r\n setGridClass(this, this.elementRef, this.renderer);\r\n }\r\n}\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { DaBreakpoint, DaBreakpoints, DaBreakpointsMap } from './layout.types';\r\nimport { fromEvent, ReplaySubject, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DaScreenMediaQueryService implements OnDestroy {\r\n private currentPoint: DaBreakpoint;\r\n private pointChangeSub: ReplaySubject<{ currentPoint: DaBreakpoint; change: number; compare: { [key: string]: number } }> =\r\n new ReplaySubject(1);\r\n private destroy$ = new Subject();\r\n\r\n // 可以传入一个基准point,返回数据结构{ currentPoint, 变大or变小or没变,比基准point大or小or一样 }\r\n public getPoint(): ReplaySubject<{ currentPoint: DaBreakpoint; change: number; compare: { [key: string]: number } }> {\r\n if (!this.currentPoint) {\r\n this.currentPoint = this.getCurrentPoint()!;\r\n this.pointChangeSub.next({\r\n currentPoint: this.currentPoint,\r\n change: 0,\r\n compare: this.comparePoints(this.currentPoint),\r\n });\r\n\r\n fromEvent(window, 'resize')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(() => {\r\n const tempPoint = this.getCurrentPoint()!;\r\n if (this.currentPoint !== tempPoint) {\r\n const change = this.comparePoints(tempPoint, this.currentPoint) as number;\r\n this.currentPoint = tempPoint;\r\n\r\n this.pointChangeSub.next({\r\n currentPoint: this.currentPoint,\r\n change: change,\r\n compare: this.comparePoints(tempPoint),\r\n });\r\n }\r\n });\r\n }\r\n\r\n return this.pointChangeSub;\r\n }\r\n\r\n // 无p2,则全量对比\r\n private comparePoints(p1: DaBreakpoint, p2?: DaBreakpoint) {\r\n let index1: any, index2: any;\r\n for (let i = 0; i < DaBreakpoints.length; i++) {\r\n if (p1 === DaBreakpoints[i]) {\r\n index1 = i;\r\n }\r\n if (p2 === DaBreakpoints[i]) {\r\n index2 = i;\r\n }\r\n }\r\n\r\n if (!p2) {\r\n let res: any = {};\r\n DaBreakpoints.forEach((point, index) => {\r\n res[point] = index1 - index;\r\n });\r\n\r\n return res;\r\n }\r\n\r\n return index1 - index2;\r\n }\r\n\r\n private getCurrentPoint(): DaBreakpoint | undefined {\r\n const currentScreenWidth = window.innerWidth;\r\n for (let i = 0; i < DaBreakpoints.length; i++) {\r\n if (DaBreakpointsMap[DaBreakpoints[i]] >= currentScreenWidth || i === DaBreakpoints.length - 1) {\r\n return DaBreakpoints[i] as DaBreakpoint;\r\n }\r\n }\r\n return;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","import { Directive, OnInit, OnDestroy, ElementRef, Renderer2, Input } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { setScreenPointStyle } from './layout-utils';\r\nimport { DaScreenMediaQueryService } from './screen-media-query.service';\r\n\r\n@Directive({\r\n selector: `[daStyle], [daStyleMs], [daStyleMm], [daStyleMl], [daStyleXs], [daStyleSm], [daStyleMd], [daStyleLg], [daStyleXl]`,\r\n})\r\n\r\nexport class DaStyleDirective implements OnInit, OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @Input() daStyle: Object;\r\n @Input() daStyleMs: Object;\r\n @Input() daStyleMm: Object;\r\n @Input() daStyleMl: Object;\r\n @Input() daStyleXs: Object;\r\n @Input() daStyleSm: Object;\r\n @Input() daStyleMd: Object;\r\n @Input() daStyleLg: Object;\r\n @Input() daStyleXl: Object;\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private renderer: Renderer2,\r\n private screenQueryService: DaScreenMediaQueryService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.screenQueryService.getPoint()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(({ currentPoint }) => {\r\n setScreenPointStyle(currentPoint, this, this.elementRef, this.renderer);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","import { Component, HostBinding, Input, OnDestroy, ViewEncapsulation } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { DaLayoutService } from './da-layout.service';\r\nimport { DaLayoutConfig } from './da-layout.type';\r\n\r\n@Component({\r\n selector: 'da-layout-header',\r\n template: '',\r\n})\r\nexport class DaLayoutHeaderComponent implements OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-header') default = true;\r\n @HostBinding('style.height')\r\n get height() {\r\n return this?.config?.height + 'px';\r\n }\r\n\r\n @HostBinding('style.z-index')\r\n get zIndex() {\r\n return this?.config?.zIndex;\r\n }\r\n\r\n @HostBinding('style.display')\r\n get display() {\r\n return this?.config?.hidden ? 'none' : null;\r\n }\r\n\r\n @Input() config: DaLayoutConfig['header'];\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config!.header!.firHeader;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'da-layout-sec-header',\r\n template: '',\r\n})\r\nexport class DaLayoutSecHeaderComponent implements OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-sec-header') default = true;\r\n @HostBinding('style.height')\r\n get height() {\r\n return this?.config?.height + 'px';\r\n }\r\n\r\n @HostBinding('style.z-index')\r\n get zIndex() {\r\n return this?.config?.zIndex;\r\n }\r\n\r\n @HostBinding('style.display')\r\n get display() {\r\n return this?.config?.hidden ? 'none' : null;\r\n }\r\n\r\n @Input() config: DaLayoutConfig['header'];\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config!.header!.secHeader;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'da-layout-sidebar',\r\n template: '',\r\n})\r\nexport class DaLayoutSidebarComponent implements OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-sidebar') default = true;\r\n @HostBinding('style.width')\r\n get width() {\r\n return this?.config?.width + 'px';\r\n }\r\n\r\n @HostBinding('style.z-index')\r\n get zIndex() {\r\n return this?.config?.zIndex;\r\n }\r\n\r\n @HostBinding('style.display')\r\n get display() {\r\n return this?.config?.hidden ? 'none' : null;\r\n }\r\n\r\n @Input() config: DaLayoutConfig['sidebar']['firSidebar'];\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config.sidebar.firSidebar;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'da-layout-sec-sidebar',\r\n template: '',\r\n})\r\nexport class DaLayoutSecSidebarComponent implements OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-sec-sidebar') default = true;\r\n @HostBinding('style.width')\r\n get width() {\r\n return this?.config?.width + 'px';\r\n }\r\n\r\n @HostBinding('style.z-index')\r\n get zIndex() {\r\n return this?.config?.zIndex;\r\n }\r\n\r\n @HostBinding('style.display')\r\n get display() {\r\n return this?.config?.hidden ? 'none' : null;\r\n }\r\n\r\n @Input() config: DaLayoutConfig['sidebar']['secSidebar'];\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config.sidebar.secSidebar;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'da-layout-footer',\r\n template: '',\r\n})\r\nexport class DaLayoutFooterComponent implements OnDestroy {\r\n private destroy$ = new Subject();\r\n\r\n @HostBinding('class.da-layout-footer') default = true;\r\n @HostBinding('style.width')\r\n get height() {\r\n return this?.config?.height + 'px';\r\n }\r\n\r\n @HostBinding('style.display')\r\n get display() {\r\n return this?.config?.hidden ? 'none' : null;\r\n }\r\n\r\n @Input() config: DaLayoutConfig['footer'];\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config.footer;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'da-layout',\r\n templateUrl: './da-layout.component.html',\r\n styleUrls: ['./da-layout.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class DaLayoutComponent implements OnDestroy {\r\n @HostBinding('class.da-layout') default = true;\r\n private destroy$ = new Subject();\r\n\r\n @Input() config: DaLayoutConfig;\r\n\r\n getSidebarWidth(): string {\r\n let width = 0;\r\n\r\n if (this.config.sidebar.hidden) {\r\n return width + 'px';\r\n }\r\n\r\n if (!this.config!.sidebar!.firSidebar!.hidden) {\r\n width += this.config!.sidebar!.firSidebar!.width!;\r\n }\r\n\r\n if (!this.config!.sidebar!.secSidebar!.hidden) {\r\n width += this.config!.sidebar!.secSidebar!.width!;\r\n }\r\n\r\n return width + 'px';\r\n }\r\n\r\n getHeaderHeight(): string {\r\n let height = 0;\r\n\r\n if (this.config!.header!.hidden) {\r\n return height + 'px';\r\n }\r\n\r\n if (!this.config!.header!.firHeader!.hidden) {\r\n height += this.config!.header!.firHeader!.height!;\r\n }\r\n\r\n if (!this.config!.header!.secHeader!.hidden) {\r\n height += this.config!.header!.secHeader!.height!;\r\n }\r\n\r\n return height + 'px';\r\n }\r\n\r\n constructor(private layoutService: DaLayoutService) {\r\n this.layoutService\r\n .getLayoutConfig()\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((config: DaLayoutConfig) => {\r\n this.config = config;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n","import { DaLayoutConfig } from './da-layout.type';\r\n\r\nexport const WATERFALL_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'waterfall',\r\n header: {\r\n hidden: true,\r\n },\r\n sidebar: {\r\n fixed: true,\r\n firSidebar: {\r\n width: 60,\r\n },\r\n secSidebar: {\r\n width: 232,\r\n },\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n\r\nexport const WIDE_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'wide',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n height: 40,\r\n },\r\n secHeader: {\r\n height: 40,\r\n },\r\n },\r\n sidebar: {\r\n hidden: true,\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n\r\nexport const COMMON_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'common',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n hidden: true,\r\n },\r\n secHeader: {\r\n height: 40,\r\n },\r\n },\r\n sidebar: {\r\n fixed: true,\r\n firSidebar: {\r\n width: 60,\r\n },\r\n secSidebar: {\r\n hidden: true,\r\n },\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n\r\nexport const TOP_NAV_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'topNav',\r\n mode: 'headerTop',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n height: 60,\r\n },\r\n secHeader: {\r\n hidden: true,\r\n },\r\n },\r\n sidebar: {\r\n hidden: true,\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n\r\nexport const SIDEBAR_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'sidebar',\r\n mode: 'headerTop',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n height: 60,\r\n },\r\n secHeader: {\r\n hidden: true,\r\n },\r\n },\r\n sidebar: {\r\n fixed: true,\r\n firSidebar: {\r\n width: 240,\r\n },\r\n secSidebar: {\r\n hidden: true,\r\n },\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n\r\nexport const LEFT_RIGHT_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'leftRight',\r\n mode: 'sidebarTop',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n height: 60,\r\n },\r\n secHeader: {\r\n hidden: true,\r\n },\r\n },\r\n sidebar: {\r\n fixed: true,\r\n firSidebar: {\r\n width: 240,\r\n },\r\n secSidebar: {\r\n hidden: true,\r\n },\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n};\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n DaLayoutComponent,\r\n DaLayoutFooterComponent,\r\n DaLayoutHeaderComponent,\r\n DaLayoutSecHeaderComponent,\r\n DaLayoutSecSidebarComponent,\r\n DaLayoutSidebarComponent,\r\n} from './da-layout.component';\r\nimport { LayoutModule } from 'ng-devui/layout';\r\n\r\n@NgModule({\r\n declarations: [\r\n DaLayoutComponent,\r\n DaLayoutSidebarComponent,\r\n DaLayoutSecSidebarComponent,\r\n DaLayoutHeaderComponent,\r\n DaLayoutSecHeaderComponent,\r\n DaLayoutFooterComponent,\r\n ],\r\n imports: [CommonModule, LayoutModule],\r\n exports: [\r\n DaLayoutComponent,\r\n DaLayoutSidebarComponent,\r\n DaLayoutSecSidebarComponent,\r\n DaLayoutHeaderComponent,\r\n DaLayoutSecHeaderComponent,\r\n DaLayoutFooterComponent,\r\n ],\r\n})\r\nexport class DaLayoutModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { DaLayoutConfig } from './da-layout.type';\r\nimport { DEFAULT_LAYOUT_CONFIG } from './default-layout.config';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DaLayoutService {\r\n private _config: DaLayoutConfig = DEFAULT_LAYOUT_CONFIG;\r\n private layoutSubject = new ReplaySubject(1);\r\n\r\n constructor() {\r\n const layoutConfig = localStorage.getItem('da-layout');\r\n if (layoutConfig) {\r\n this._config = JSON.parse(layoutConfig);\r\n }\r\n this.layoutSubject.next(this._config);\r\n }\r\n\r\n getLayoutConfig() {\r\n return this.layoutSubject.asObservable();\r\n }\r\n\r\n updateLayoutConfig(config: DaLayoutConfig) {\r\n localStorage.setItem('da-layout', JSON.stringify(config));\r\n this.layoutSubject.next(config);\r\n }\r\n}\r\n","import { DaLayoutConfig } from \"./da-layout.type\";\r\n\r\nexport const DEFAULT_LAYOUT_CONFIG: DaLayoutConfig = {\r\n id: 'leftRight',\r\n mode: 'sidebarTop',\r\n header: {\r\n fixed: true,\r\n firHeader: {\r\n height: 60,\r\n },\r\n secHeader: {\r\n hidden: true,\r\n },\r\n hidden: false,\r\n },\r\n sidebar: {\r\n fixed: true,\r\n firSidebar: {\r\n width: 240,\r\n },\r\n secSidebar: {\r\n hidden: true,\r\n },\r\n hidden: false,\r\n },\r\n footer: {\r\n hidden: false,\r\n },\r\n hideLogo: false,\r\n};\r\n","export * from './public-api';\r\n","export * from './da-layout.module';\r\nexport * from './da-layout.component';\r\nexport * from './da-layout.service';\r\nexport * from './da-layout.type';\r\nexport * from './da-layout.config';\r\n","export enum ThemeType {\r\n Default = 'infinity-theme',\r\n Pink = 'sweet-theme',\r\n Orange = 'pink-light-theme',\r\n Purple = 'provence-theme',\r\n Deep = 'deep-theme',\r\n Dark = 'devui-dark-theme',\r\n Custom = 'customize-theme',\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n@Pipe ({\r\n name : 'cancellationMinutesStatus'\r\n})\r\nexport class CancellationMinutesStatusPipe implements PipeTransform {\r\n transform(val: number): string {\r\n switch (val) {\r\n case 0:\r\n return 'Đang chờ duyệt';\r\n case 1:\r\n return 'Đã duyệt';\r\n default:\r\n return 'Từ chối';\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'formatDateForView'\r\n})\r\nexport class FormatDateForViewPipe implements PipeTransform {\r\n\r\n transform(value: string): string {\r\n if (!value) return '';\r\n\r\n const date = new Date(value);\r\n if (isNaN(date.getTime())) return '';\r\n\r\n const day = String(date.getDate()).padStart(2, '0');\r\n const month = String(date.getMonth() + 1).padStart(2, '0');\r\n const year = date.getFullYear();\r\n\r\n return `${day}/${month}/${year}`;\r\n }\r\n\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n@Pipe ({\r\n name : 'miningFileStatus'\r\n})\r\nexport class MiningFileStatusPipe implements PipeTransform {\r\n transform(val: number): string {\r\n switch (val) {\r\n case 0:\r\n return 'Đang chờ duyệt';\r\n case 1:\r\n return 'Đã duyệt';\r\n case 2:\r\n return 'Từ chối';\r\n default:\r\n return 'Yêu cầu mượn';\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({name: 'parseSelect' })\r\nexport class ParseSelectPipe implements PipeTransform {\r\n transform(data : any, identifyKey: any, options: any): any {\r\n if (Array.isArray(data)) {\r\n return data.map(item => options.find((op: any) => op[identifyKey] === item) || {identifyKey: item});\r\n } else {\r\n return options.find((op: any) => op[identifyKey] === data) || {identifyKey: data };\r\n }\r\n }}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n@Pipe ({\r\n name : 'profileStatus'\r\n})\r\nexport class ProfileStatusPipe implements PipeTransform {\r\n transform(val: number): string {\r\n switch (val) {\r\n case -1:\r\n return 'Đã hủy';\r\n case 0:\r\n return 'Chờ chỉnh lý';\r\n case 1:\r\n return 'Đã chỉnh lý';\r\n case 2:\r\n return 'Chờ chỉnh lý';\r\n case 3:\r\n return 'Đã số hóa';\r\n default:\r\n return 'Chờ hủy';\r\n }\r\n }\r\n}\r\n","import { CancellationMinutesStatusPipe } from './pipe/cancellation-minutes-status.pipe';\r\nimport {ParseSelectPipe} from './pipe/parseFromPipe.pipe';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { RouterModule, RouterOutlet } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ClipboardModule } from '@angular/cdk/clipboard';\r\nimport {\r\n LayoutModule,\r\n AccordionModule,\r\n SearchModule,\r\n AvatarModule,\r\n BadgeModule,\r\n DropDownModule,\r\n FormModule,\r\n TabsModule,\r\n TextInputModule,\r\n ToggleModule,\r\n CheckBoxModule,\r\n ButtonModule,\r\n DrawerModule,\r\n DCommonModule,\r\n AlertModule,\r\n ToastModule,\r\n TooltipModule,\r\n RadioModule,\r\n CardModule,\r\n DataTableModule,\r\n BreadcrumbModule,\r\n TagsModule,\r\n SelectModule,\r\n LoadingModule,\r\n ModalModule,\r\n} from 'ng-devui';\r\nimport { I18nModule } from 'ng-devui/i18n';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { SideSettingsComponent } from './components/side-settings/side-settings.component';\r\nimport { PersonalizeComponent } from './components/personalize/personalize.component';\r\nimport { HeaderOperationComponent } from './components/header/header-operation/header-operation.component';\r\nimport { NavbarComponent } from './components/header/navbar/navbar.component';\r\nimport { HeaderLogoComponent } from './components/header/header-logo/header-logo.component';\r\nimport { DaGridModule } from './layouts/da-grid';\r\nimport { SideMenuComponent } from './components/side-menu/side-menu.component';\r\nimport { RegisterComponent } from './components/register/register.component';\r\nimport { HeaderNoticeComponent } from './components/header/header-operation/header-notice/header-notice.component';\r\n\r\nimport { MiningFileStatusPipe } from './pipe/mining-file-status.pipe';\r\nimport { ProfileStatusPipe } from './pipe/profile-status.pipe';\r\nimport { FormUploadComponent } from './components/form-upload/form-upload.component';\r\nimport { HeaderPublicComponent } from './components/public/header/header.component';\r\nimport { FooterPublicComponent } from './components/public/footer/footer.component';\r\n\r\nimport {\r\n AutoCompletePopupComponent,\r\n DatepickerComponent,\r\n DragPreviewComponent,\r\n DrawerComponent,\r\n InputNumberComponent,\r\n LoadingBackdropComponent,\r\n LoadingComponent,\r\n ModalComponent,\r\n ModalContainerComponent,\r\n PopoverComponent,\r\n ReadTipComponent,\r\n SelectComponent,\r\n StepsGuideComponent,\r\n ToastComponent,\r\n TooltipComponent,\r\n TreeSelectComponent,\r\n} from \"ng-devui\";\r\nimport { DevUIModule } from \"ng-devui\";\r\nimport { ProfilePermissionComponent } from './components/modals/profile-permission/profile-permission.component';\r\nimport { ImportGiayPhepKdLaiXeComponent } from './components/modals/import-giay-phep-kd-lai-xe/import-giay-phep-kd-lai-xe.component';\r\nimport { ImportDonViVanTaiComponent } from './components/modals/import-don-vi-van-tai/import-don-vi-van-tai.component';\r\nimport { ImportPhuongTienComponent } from './components/modals/import-phuong-tien/import-phuong-tien.component';\r\nimport { ImportPhuHieuComponent } from './components/modals/import-phu-hieu/import-phu-hieu.component';\r\nimport { ImportChuPhuongTienComponent } from './components/modals/import-chu-phuong-tien/import-chu-phuong-tien.component';\r\nimport { ImportViPhamComponent } from './components/modals/import-vi-pham/import-vi-pham.component';\r\nimport { ChiTietLichThiComponent } from './components/modals/chi-tiet-lich-thi/chi-tiet-lich-thi.component';\r\nimport { ChiTietThiSinhComponent } from './components/modals/chi-tiet-thi-sinh/chi-tiet-thi-sinh.component';\r\nimport { ChiTietGiayPhepKinhDoanhComponent } from './components/modals/chi-tiet-giay-phep-kinh-doanh/chi-tiet-giay-phep-kinh-doanh.component';\r\nimport { ChiTietPhuHieuComponent } from './components/modals/chi-tiet-phu-hieu/chi-tiet-phu-hieu.component';\r\nimport { ChiTietPhuongTienComponent } from './components/modals/chi-tiet-phuong-tien/chi-tiet-phuong-tien.component';\r\nimport { ChiTietViPhamComponent } from './components/modals/chi-tiet-vi-pham/chi-tiet-vi-pham.component';\r\nimport { ImportCoQuanComponent } from './components/modals/import-co-quan/import-co-quan.component';\r\nimport { ImportNhanHieuComponent } from './components/modals/import-nhan-hieu/import-nhan-hieu.component';\r\nimport { ImportBienHieuComponent } from './components/modals/import-bien-hieu/import-bien-hieu.component';\r\nimport { FormatDateForViewPipe } from './pipe/format-date-for-view.pipe'\r\nimport { ChiTietMenuComponent } from './components/modals/chi-tiet-menu/chi-tiet-menu.component';\r\nimport { ChiTietCategoryComponent } from './components/modals/chi-tiet-category/chi-tiet-category.component';\r\nimport { ChiTietNewsComponent } from './components/modals/chi-tiet-news/chi-tiet-news.component';\r\nimport { ImportMenuComponent } from './components/modals/import-menu/import-menu.component';\r\nimport { ImportNewsComponent } from './components/modals/import-news/import-news.component';\r\nimport { ImportCategoryComponent } from './components/modals/import-category/import-category.component';\r\nimport { RegisterUserComponent } from './components/register-user/register-user.component';\r\nimport { ConfirmEmailComponent } from './components/confirm-email/confirm-email.component';\r\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\r\n// import { CKEditorModule } from '@ckeditor/ckeditor5-angular';\r\nimport { SelectDropDownModule } from 'ngx-select-dropdown';\r\n\r\n\r\nconst DEVUI_MODULES = [\r\n LayoutModule,\r\n AccordionModule,\r\n SearchModule,\r\n AvatarModule,\r\n BadgeModule,\r\n DropDownModule,\r\n FormModule,\r\n TabsModule,\r\n TextInputModule,\r\n ToggleModule,\r\n CheckBoxModule,\r\n ButtonModule,\r\n DrawerModule,\r\n CardModule,\r\n DataTableModule,\r\n BreadcrumbModule,\r\n TagsModule,\r\n SelectModule,\r\n RadioModule,\r\n LoadingModule,\r\n ModalModule,\r\n];\r\nconst COMPONENTS = [HeaderComponent, FooterComponent, NavbarComponent, PersonalizeComponent, HeaderPublicComponent, FooterPublicComponent];\r\nconst PIPES = [MiningFileStatusPipe, ProfileStatusPipe, CancellationMinutesStatusPipe, ParseSelectPipe, FormatDateForViewPipe]\r\n@NgModule({\r\n declarations: [\r\n LoginComponent,\r\n SideSettingsComponent,\r\n HeaderOperationComponent,\r\n HeaderLogoComponent,\r\n SideMenuComponent,\r\n HeaderNoticeComponent,\r\n RegisterComponent,\r\n ...COMPONENTS,\r\n ...PIPES,\r\n FormUploadComponent,\r\n ProfilePermissionComponent,\r\n ImportGiayPhepKdLaiXeComponent,\r\n ImportDonViVanTaiComponent,\r\n ImportPhuongTienComponent,\r\n ImportPhuHieuComponent,\r\n ImportChuPhuongTienComponent,\r\n ImportViPhamComponent,\r\n ImportCoQuanComponent,\r\n ImportNhanHieuComponent,\r\n ImportBienHieuComponent,\r\n ChiTietLichThiComponent,\r\n ChiTietThiSinhComponent,\r\n ChiTietGiayPhepKinhDoanhComponent,\r\n ChiTietPhuHieuComponent,\r\n ChiTietPhuongTienComponent,\r\n ChiTietViPhamComponent,\r\n ChiTietMenuComponent,\r\n ChiTietCategoryComponent,\r\n ChiTietNewsComponent,\r\n ImportMenuComponent,\r\n ImportNewsComponent,\r\n ImportCategoryComponent,\r\n RegisterUserComponent,\r\n ConfirmEmailComponent,\r\n ForgotPasswordComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RouterModule,\r\n TranslateModule,\r\n DCommonModule,\r\n AlertModule,\r\n ClipboardModule,\r\n ToastModule,\r\n TooltipModule,\r\n I18nModule,\r\n DaGridModule,\r\n DevUIModule,\r\n TranslateModule.forRoot(),\r\n SelectDropDownModule,\r\n // CKEditorModule,\r\n ],\r\n exports: [\r\n CommonModule,\r\n FormsModule,\r\n TranslateModule,\r\n HeaderLogoComponent,\r\n HeaderOperationComponent,\r\n I18nModule,\r\n DaGridModule,\r\n SideMenuComponent,\r\n ...DEVUI_MODULES,\r\n ...COMPONENTS,\r\n ...PIPES\r\n ],\r\n bootstrap: [FormUploadComponent]\r\n})\r\nexport class SharedModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: SharedModule,\r\n providers: [],\r\n };\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { API_BASE_URL } from '../config/config'\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n get(url:any) {\r\n return this.http.get(API_BASE_URL + url);\r\n }\r\n\r\n post(url:any, data:any, download: any = false) {\r\n if(download) {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json', // Định dạng dữ liệu gửi đi\r\n 'Accept': 'application/octet-stream', // Định dạng dữ liệu được chấp nhận từ phản hồi\r\n });\r\n return this.http.post(API_BASE_URL + url, data, {\r\n headers: headers,\r\n responseType: 'arraybuffer' // Thay đổi responseType thành 'arraybuffer'\r\n });\r\n }\r\n\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n // 'Authorization': localStorage.getItem('userinfo') ? 'Bearer ' + JSON.parse(localStorage.getItem('userinfo')!).token : '',\r\n });\r\n return this.http.post(API_BASE_URL + url, data, {\r\n headers: headers,\r\n });\r\n }\r\n \r\n private id: string;\r\n setData(ma: string): void {\r\n this.id = ma;\r\n }\r\n\r\n getData(): string {\r\n return this.id;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { AuthGuardService } from './@core/services/auth-guard-service.guard';\r\nimport { LoginComponent } from './@shared/components/login/login.component';\r\nimport { RegisterComponent } from './@shared/components/register/register.component';\r\nimport { LoginPublicComponent } from './@shared/components/login-user/login.component';\r\nimport { NotFoundComponent } from '../app/public/not-found/not-found.component'\r\nimport { RegisterUserComponent } from './@shared/components/register-user/register-user.component';\r\nimport { AuthThiSinhServiceGuard } from './@core/services/auth-thisinh-service.guard';\r\nimport { ConfirmEmailComponent } from './@shared/components/confirm-email/confirm-email.component';\r\nimport { ForgotPasswordComponent } from './@shared/components/forgot-password/forgot-password.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'pages',\r\n loadChildren: () =>\r\n import('./pages/pages.module').then((m) => m.PagesModule),\r\n canActivate: [AuthGuardService],\r\n },\r\n {\r\n path: 'manager-user',\r\n loadChildren: () =>\r\n import('./manager-user/manager-user.module').then((m) => m.ManagerUserModule),\r\n canActivate: [AuthThiSinhServiceGuard],\r\n },\r\n {\r\n path: 'dang-ky-thi', redirectTo: 'manager-user/registerexam', pathMatch: 'full'\r\n },\r\n {\r\n path: 'login',\r\n component: LoginComponent,\r\n },\r\n {\r\n path: 'forgot-password',\r\n component: ForgotPasswordComponent,\r\n },\r\n {\r\n path: 'user/login',\r\n component: LoginPublicComponent,\r\n },\r\n {\r\n path: 'user/register',\r\n component: RegisterUserComponent,\r\n },\r\n {\r\n path: 'register',\r\n component: RegisterComponent,\r\n },\r\n {\r\n path: 'confirm-email',\r\n component: ConfirmEmailComponent,\r\n },\r\n {\r\n path: '',\r\n loadChildren: () =>\r\n import('./public/public.module').then((m) => m.PublicModule),\r\n },\r\n {\r\n path: '**',\r\n component: NotFoundComponent,\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DEFAULT_LANG, I18N_LANGUAGES } from '../config/language-config';\r\n@Component({\r\n selector: 'da-app',\r\n template: ``,\r\n})\r\nexport class AppComponent {\r\n currentLang = DEFAULT_LANG;\r\n\r\n constructor(private translate: TranslateService) {\r\n this.translate.addLangs(I18N_LANGUAGES);\r\n translate.setDefaultLang(DEFAULT_LANG);\r\n translate.use(this.currentLang);\r\n localStorage.setItem('lang', DEFAULT_LANG);\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { CoreModule } from './@core/core.module';\r\nimport { SharedModule } from './@shared/shared.module';\r\nimport { Observable, of } from 'rxjs';\r\nimport { I18N } from '../config/language-config';\r\nimport { AuthInterceptor } from './auth.interceptor';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LoginPublicComponent } from './@shared/components/login-user/login.component';\r\n\r\nclass I18NLoader implements TranslateLoader {\r\n getTranslation(lang: 'en-us'): Observable {\r\n return of(I18N[lang]);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [AppComponent, LoginPublicComponent],\r\n imports: [\r\n FormsModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n AppRoutingModule,\r\n CoreModule.forRoot(),\r\n SharedModule.forRoot(),\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useClass: I18NLoader,\r\n },\r\n })\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpEvent, HttpInterceptor, HttpHandler, HttpRequest, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, finalize } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { LoadingService } from 'ng-devui/loading';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n constructor(private router: Router, private loadingService: LoadingService) {}\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const loading = this.loadingService.open();\r\n const currentUrl = this.router.url.split('/');\r\n const isManagerUser = currentUrl.includes('manager-user');\r\n const isPages = currentUrl.includes('pages');\r\n const userinfo = localStorage.getItem('userinfo');\r\n const thiSinh = localStorage.getItem('thiSinhInfo');\r\n let clonedRequest = req;\r\n // If the token exists, add it to the headers\r\n if (isPages) {\r\n if (userinfo) {\r\n var token = JSON.parse(userinfo!).token;\r\n clonedRequest = req.clone({\r\n headers: req.headers.set('Authorization', `Bearer ${token}`).set('Accept-Language', 'local')\r\n });\r\n }\r\n }\r\n\r\n if (isManagerUser) {\r\n if (thiSinh) {\r\n var token = JSON.parse(thiSinh!).token;\r\n clonedRequest = req.clone({\r\n headers: req.headers.set('Authorization', `Bearer ${token}`).set('Accept-Language', 'local')\r\n });\r\n }\r\n }\r\n\r\n return next.handle(clonedRequest).pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n loading.loadingInstance.close();\r\n if (error.status === 401) {\r\n this.logout();\r\n }\r\n return throwError(error);\r\n }),\r\n finalize(() => {\r\n // Đóng loading khi nhận được phản hồi hoặc khi có lỗi\r\n loading.loadingInstance.close();\r\n })\r\n );\r\n }\r\n\r\n logout() {\r\n const currentUrl = this.router.url.split('/');\r\n const isManagerUser = currentUrl.includes('manager-user');\r\n const isPages = currentUrl.includes('pages');\r\n if (isPages) {\r\n localStorage.removeItem('userinfo');\r\n this.router.navigate(['/login']); // Điều hướng đến trang login\r\n }\r\n if (isManagerUser) {\r\n localStorage.removeItem('thiSinhInfo');\r\n this.router.navigate(['/user/login']); // Điều hướng đến trang login\r\n }\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { ScriptLoaderService } from '../../@core/services/script-loader.service';\r\n\r\n@Component({\r\n selector: 'app-not-found',\r\n templateUrl: './not-found.component.html',\r\n styleUrls: ['./not-found.component.css']\r\n})\r\nexport class NotFoundComponent implements OnInit{\r\n constructor(private scriptLoader: ScriptLoaderService) {}\r\n ngOnInit() {\r\n this.scriptLoader.loadScriptsMain();\r\n }\r\n}\r\n","
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n

    Opos... Page Not Found!

    \r\n

    The page you looking for not found may be it not exist or removed.

    \r\n Go Back Home \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n","import pages from './en-US/page';\r\nimport form from './en-US/form';\r\nimport abnormal from './en-US/abnormal';\r\nimport personalize from './en-US/personalize';\r\nimport list from './en-US/list';\r\nimport dashboard from './en-US/dashboard';\r\nimport login from './en-US/login';\r\nimport register from './en-US/register';\r\nimport sideSetting from './en-US/side-setting';\r\nimport header from './en-US/header';\r\nimport footer from './en-US/footer';\r\nimport authGuard from './en-US/auth-guard';\r\nimport notice from './en-US/notice';\r\n\r\nexport default {\r\n ...pages,\r\n ...form,\r\n ...list,\r\n ...abnormal,\r\n ...personalize,\r\n ...dashboard,\r\n ...login,\r\n ...register,\r\n ...sideSetting,\r\n ...header,\r\n ...footer,\r\n ...authGuard,\r\n ...notice,\r\n};\r\n","export default {\r\n 'abnormal': {\r\n '403': {\r\n 'description': 'Sorry, you don\\'t have access to this page.'\r\n },\r\n '404': {\r\n 'description': 'Sorry, the page you visited does not exist.'\r\n },\r\n '500':{\r\n 'description': 'Sorry, the server is reporting an error.'\r\n },\r\n 'backHome': 'Back Home'\r\n }\r\n}","export default {\r\n authNotice: {\r\n summary: 'Info',\r\n content: 'Please login first!',\r\n },\r\n};\r\n","export default {\r\n dashboard: {\r\n breadcrumb: {\r\n home: 'Home',\r\n dashboardPage: 'Dashboard',\r\n workSpace: 'Work Space',\r\n },\r\n analysis: {\r\n visitingData: 'Data Flow In A Week',\r\n serviceWaterLine: 'Service Level Variation',\r\n userVisiting: 'User Visiting',\r\n requirementType: 'Requirement Type Tendency',\r\n taskComplete: 'Task Completed Situation',\r\n },\r\n monitor: {\r\n taskComplete: 'Task Completion Monitor',\r\n occupancy: 'Occupancy Rate',\r\n userDistribute: 'User Distribution',\r\n tendency: 'Tendency',\r\n taskExec: 'Task Execution',\r\n },\r\n workSpace: {\r\n name: 'Work Space',\r\n descriptionPrefix: 'Hello',\r\n descriptionSuffix: 'welcome to your work space',\r\n title: 'Front-End Expert',\r\n role: 'DevUI-Committer',\r\n },\r\n },\r\n};\r\n","export default {\r\n footer: {\r\n presented: 'DevUI Design Presented',\r\n },\r\n};\r\n","export default {\r\n 'form': {\r\n 'breadcrumb': {\r\n 'home': 'Home',\r\n 'formPage': 'Form',\r\n 'basicForm': 'Basic Form',\r\n 'formLayout': 'Form Layout',\r\n 'advancedForm': 'Advanced Form',\r\n 'dynamicForm': 'Dynamic Form'\r\n },\r\n 'basicForm':{\r\n 'title': 'Basic Form',\r\n 'description': 'The form page is used to collect or verify user information. Basic forms can be used to collect, verify, and submit data.'\r\n },\r\n 'formLayout':{\r\n 'title': 'Form Layout',\r\n 'description': 'The form layout page displays various forms, including horizontal, vertical, pop-up, and multi-column layouts.',\r\n 'horizontalForm': 'Horizontal Form',\r\n 'verticalForm': 'Vertical Form',\r\n 'modalForm': 'Pop-up Form',\r\n 'multiForm': 'Multi-column Form'\r\n },\r\n 'advancedForm': {\r\n 'title': 'Advanced Form',\r\n 'description': 'Advanced forms are used to edit related information in the list.'\r\n },\r\n 'dynamicForm': {\r\n 'title': 'Dynamic Form',\r\n 'description': 'Dynamic forms can be created based on the metadata (JSON) of the business object model. The creation is quick, structured, and easy to maintain. For details about the differences between forms and normal forms, see the actual code.'\r\n }\r\n }\r\n}\r\n","export default {\r\n header: {\r\n userCenter: 'User Center',\r\n userSettings: 'User Settings',\r\n logout: 'Logout',\r\n login: 'Login',\r\n register: 'Register',\r\n },\r\n};\r\n","export default {\r\n list: {\r\n breadcrumb: {\r\n home: 'Trang chủ',\r\n formPage: 'List',\r\n basicList: 'Basic List',\r\n cardList: 'Card List',\r\n editableList: 'Editable List',\r\n advanceList: 'Advance List',\r\n treeList: 'Tree List',\r\n },\r\n basicList: {\r\n title: 'Basic List',\r\n description: 'Allows users to adjust the list size and spacing.'\r\n },\r\n cardList: {\r\n title: 'Card List',\r\n description: 'Information can be displayed in card format and the search function is supported.'\r\n },\r\n editableList: {\r\n title: 'Editable List',\r\n description: 'Supports table extension and table editing.'\r\n },\r\n advanceList: {\r\n title: 'Advance List',\r\n description: 'Allows users to select multiple items in the list and delete them in batches. Allows users to adjust the column width by dragging and dragging. Supports virtual scrolling, lazy loading, and filtering.'\r\n },\r\n treeList: {\r\n title: 'Tree List',\r\n description: 'Tree table rendering is supported.'\r\n }\r\n },\r\n};\r\n","export default {\r\n loginPage: {\r\n coperation: 'DevUI Design Presented',\r\n loginWays: {\r\n account: 'Account Login',\r\n email: 'Email Login',\r\n },\r\n autoLogin: 'Remember me',\r\n forgetPassword: 'Forgot Password?',\r\n submit: 'Submit',\r\n userName: 'Username',\r\n password: 'Password',\r\n email: 'Email',\r\n noticeMessage: {\r\n summary: 'Login Failed',\r\n accountContent:\r\n 'Please input correct username and password, username: Admin, password: DevUI.admin',\r\n emailContent:\r\n 'Please input correct username and password, username: admin@devui.com, password: devuiadmin',\r\n },\r\n other: 'Sign in with',\r\n register: 'Sign up',\r\n callbackMessage: 'Github authorization callback succeeded',\r\n },\r\n};\r\n","export default {\r\n notice: {\r\n clear: 'Empty All',\r\n notificationTabName: 'Notifications',\r\n messageTabName: 'Messages',\r\n todoTabName: 'Todos',\r\n done: 'You have viewed all messages',\r\n more: 'More Info',\r\n },\r\n};\r\n","export default {\r\n page: {\r\n dashboard: {\r\n title: 'Dashboard',\r\n analysis: 'Analysis',\r\n monitor: 'Monitor',\r\n workspace: 'Work Space',\r\n },\r\n form: {\r\n title: 'Form',\r\n basicForm: 'Basic Form',\r\n formLayout: 'Form Layout',\r\n advancedForm: 'Advanced Form',\r\n dynamicForm: 'Dynamic Form'\r\n },\r\n list: {\r\n title: 'List',\r\n basicList: 'Basic List',\r\n cardList: 'Card List',\r\n editableList: 'Editable List',\r\n advanceList: 'Advance List',\r\n treeList: 'Tree List',\r\n },\r\n abnormal: {\r\n title: 'Abnormal',\r\n },\r\n user: {\r\n title: 'User',\r\n center: 'User Center',\r\n settings: 'User Settings',\r\n },\r\n },\r\n};\r\n","export default {\r\n personalize: {\r\n title: 'Personalize',\r\n subTitle: 'Make it more like yours',\r\n themes: 'Themes',\r\n font: 'Font Size',\r\n radius: 'Radius',\r\n normal: 'normal',\r\n medium: 'medium',\r\n large: 'large',\r\n 'deep-theme': 'deep-theme',\r\n 'devui-dark-theme': 'devui-dark-theme',\r\n 'infinity-theme': 'infinity-theme',\r\n 'provence-theme': 'provence-theme',\r\n 'sweet-theme': 'sweet-theme',\r\n 'customize-theme': 'customize-theme',\r\n },\r\n};\r\n","export default {\r\n registerPage: {\r\n coperation: 'DevUI Design Presented',\r\n title: 'Register',\r\n submit: 'Register',\r\n email: 'Email',\r\n password: 'Password',\r\n confirmPassword: 'Confirm Password',\r\n other: 'Already have an account?',\r\n resultMessage:{\r\n title: 'Registration success',\r\n content: 'Your account is successfully registered, and will return to the login page to log in.'\r\n },\r\n },\r\n};\r\n","export default {\r\n 'side-setting': {\r\n layout: 'Change Layout',\r\n 'fix-header': 'Fix Header',\r\n 'fix-sidebar': 'Fix Sidebar',\r\n 'content-area': 'Content Area Display',\r\n 'hide-footer': 'Hide Footer',\r\n 'hide-top': 'Hide Top',\r\n 'hide-menu': 'Hide Menu',\r\n 'hide-menu-head': 'Hide Menu Head',\r\n notice:\r\n 'The configuration bar only provides preview of dynamic layout switching in this site. You can manually copy and modify related configuration files and clear the localStorage cache.',\r\n 'copy-config': 'Copy Config',\r\n 'copy-summary': 'Copy Successfully',\r\n 'copy-content':\r\n 'Please modify config file in src/app/@shared/layouts/da-layout/default-layout.config.ts',\r\n 'sidebar-notice': {\r\n 'can-config': 'Choose weather to fix sidebar',\r\n 'cannot-config': 'This config can only be used when there is a sidebar',\r\n },\r\n helpContent:\r\n 'We only show you the switch of different layouts here, see more info in our document.',\r\n },\r\n};\r\n","import { FileUploader, IFileOptions, IUploadOptions } from 'ng-devui/upload';\r\nexport const API_BASE_URL = \"https://apivsat.utehy.edu.vn/\";\r\nexport const BASE_URL = \"https://vsat.utehy.edu.vn/\";\r\n//export const API_BASE_URL = \"http://localhost:61029/\";\r\n// export const API_BASE_URL = \"http://localhost:5000/\"\r\nexport const DEFAULT_PASSWORD = \"camvaoday\"\r\nexport const EXCEL_UPLOAD_LIMIT = 20480;\r\nexport const ROLES = {\r\n ADMIN: 'ADMIN',\r\n USER: 'USER',\r\n}\r\nexport const UPLOAD_FOLDER = \"Uploads/\";\r\n\r\nexport const COOKIEID = \"0021F516862073C2E8B3614A0B0F7EB5\";\r\n\r\nexport const danTocs = [\r\n \"Ba Na\",\r\n \"Bố Y\",\r\n \"Brâu\",\r\n \"Bru - Vân Kiều\",\r\n \"Chăm\",\r\n \"Chơ Ro\",\r\n \"Chứt\",\r\n \"Co\",\r\n \"Cống\",\r\n \"Cơ Ho\",\r\n \"Cơ Tu\",\r\n \"Dao\",\r\n \"Ê Đê\",\r\n \"Giáy\",\r\n \"Gia Rai\",\r\n \"Gié - Triêng\",\r\n \"H'Mông\",\r\n \"Hà Nhì\",\r\n \"Hoa\",\r\n \"Hrê\",\r\n \"Kháng\",\r\n \"Khơ Mú\",\r\n \"Kinh\",\r\n \"La Chí\",\r\n \"La Ha\",\r\n \"La Hủ\",\r\n \"Lào\",\r\n \"Lô Lô\",\r\n \"Lự\",\r\n \"Mạ\",\r\n \"Mảng\",\r\n \"M'Nông\",\r\n \"Mường\",\r\n \"Ngái\",\r\n \"Nùng\",\r\n \"Ô Đu\",\r\n \"Pà Thẻn\",\r\n \"Phù Lá\",\r\n \"Pu Péo\",\r\n \"Ra Glai\",\r\n \"Rơ Măm\",\r\n \"Sán Chay\",\r\n \"Sán Dìu\",\r\n \"Si La\",\r\n \"Tày\",\r\n \"Thái\",\r\n \"Thổ\",\r\n \"Xinh Mun\",\r\n \"X'tiêng\"\r\n];","export const NORMAL_SIZE = {\r\n 'devui-font-size': '12px',\r\n 'devui-font-size-card-title': '14px',\r\n 'devui-font-size-page-title': '16px',\r\n 'devui-font-size-modal-title': '18px',\r\n 'devui-font-size-price': '20px',\r\n 'devui-font-size-data-overview': '24px',\r\n 'devui-font-size-icon': '16px',\r\n 'devui-font-size-sm': '12px',\r\n 'devui-font-size-md': '12px',\r\n 'devui-font-size-lg': '14px',\r\n};\r\n\r\n\r\nexport const MEDIUM_SIZE = {\r\n 'devui-font-size': '14px',\r\n 'devui-font-size-card-title': '16px',\r\n 'devui-font-size-page-title': '18px',\r\n 'devui-font-size-modal-title': '20px',\r\n 'devui-font-size-price': '22px',\r\n 'devui-font-size-data-overview': '26px',\r\n 'devui-font-size-icon': '18px',\r\n 'devui-font-size-sm': '14px',\r\n 'devui-font-size-md': '14px',\r\n 'devui-font-size-lg': '16px',\r\n}\r\n\r\nexport const LARGE_SIZE = {\r\n 'devui-font-size': '16px',\r\n 'devui-font-size-card-title': '18px',\r\n 'devui-font-size-page-title': '20px',\r\n 'devui-font-size-modal-title': '22px',\r\n 'devui-font-size-price': '24px',\r\n 'devui-font-size-data-overview': '28px',\r\n 'devui-font-size-icon': '20px',\r\n 'devui-font-size-sm': '16px',\r\n 'devui-font-size-md': '16px',\r\n 'devui-font-size-lg': '18px',\r\n};\r\n\r\nexport const NORMAL_RADIUS = {\r\n 'devui-border-radius': \"4px\",\r\n 'devui-border-radius-card': \"4px\"\r\n}\r\n\r\nexport const MEDIUM_RADIUS = {\r\n 'devui-border-radius': \"6px\",\r\n 'devui-border-radius-card': \"6px\"\r\n}\r\n\r\nexport const LARGE_RADIUS = {\r\n 'devui-border-radius': \"8px\",\r\n 'devui-border-radius-card': \"8px\"\r\n}\r\n\r\n","import zhCN from '../assets/i18n/zh-CN';\r\nimport enUS from '../assets/i18n/en-US';\r\n\r\nexport const LANGUAGES = [\r\n // {\r\n // code: 'zh-cn',\r\n // lang: '简体中文',\r\n // prefix: 'CN',\r\n // },\r\n {\r\n code: 'en-us',\r\n lang: 'English',\r\n prefix: 'US',\r\n },\r\n];\r\n\r\nexport const I18N_LANGUAGES = ['en-us'];\r\nexport const DEFAULT_LANG = 'en-us';\r\n\r\nexport const I18N = {\r\n 'en-us': enUS,\r\n // 'zh-cn': zhCN,\r\n};\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { ThemeServiceInit, devuiDarkTheme, Theme } from 'ng-devui/theme';\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\nimport {\r\n infinityTheme,\r\n sweetTheme,\r\n provenceTheme,\r\n deepTheme,\r\n} from 'ng-devui/theme-collection';\r\n\r\nconst customTheme = new Theme({\r\n id: `customize-theme`,\r\n name: 'custom',\r\n cnName: '自定义',\r\n data: {},\r\n isDark: false,\r\n});\r\n\r\nThemeServiceInit({\r\n infinityTheme,\r\n sweetTheme,\r\n provenceTheme,\r\n deepTheme,\r\n devuiDarkTheme,\r\n customTheme\r\n});\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch((err) => console.error(err));\r\n"],"names":["Renderer2","RendererFactory2","ScriptLoaderService","constructor","rendererFactory","renderer","createRenderer","loadScripts","scripts","forEach","scriptUrl","isScriptAlreadyLoaded","scriptElement","createElement","src","type","async","appendChild","document","body","loadScriptsMain","setTimeout","preLoader","getElementById","hidden","window","onload","Array","from","getElementsByTagName","some","script","includes","i0","factory","providedIn"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}