{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/Models/input.model/RequestBase.ts","./src/app/Models/input.model/RequestLogin.ts","./src/app/Models/input.model/RequestPhong.ts","./src/app/Models/output.model/ResponseBase.ts","./src/app/Models/output.model/ResponseLogin.ts","./src/app/Utils/services/accesshistory.service.ts","./src/app/Utils/services/black-list.service.ts","./src/app/Utils/services/building.service.ts","./src/app/Utils/services/campus.service.ts","./src/app/Utils/services/device.service.ts","./src/app/Utils/services/export.service.ts","./src/app/Utils/services/grantcard.service.ts","./src/app/Utils/services/invoince.service.ts","./src/app/Utils/services/listpeopledorm.service.ts","./src/app/Utils/services/register-dorm.service.ts","./src/app/Utils/services/room-category.service.ts","./src/app/Utils/services/room.service.ts","./src/app/Utils/services/search-log.service.ts","./src/app/Utils/services/statistical.service.ts","./src/app/Utils/services/student-sort.service.ts","./src/app/Utils/services/system.service.ts","./src/app/app-routing.module.ts","./src/app/app.common.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/components/access-history/access-history-detail/access-history-detail.component.ts","./src/app/components/access-history/access-history-detail/access-history-detail.component.html","./src/app/components/access-history/access-history.component.ts","./src/app/components/access-history/access-history.component.html","./src/app/components/base/base.component.ts","./src/app/components/base/base.component.html","./src/app/components/black-list/black-list.component.ts","./src/app/components/black-list/black-list.component.html","./src/app/components/building/building.component.ts","./src/app/components/building/building.component.html","./src/app/components/campus/campus.component.ts","./src/app/components/campus/campus.component.html","./src/app/components/collection-receipt/collection-receipt.component.ts","./src/app/components/collection-receipt/collection-receipt.component.html","./src/app/components/collection-receipt/print-receipt/print-receipt.component.ts","./src/app/components/collection-receipt/print-receipt/print-receipt.component.html","./src/app/components/collection-receipt/receipt-destroy/receipt-destroy-detail/receipt-destroy-detail.component.ts","./src/app/components/collection-receipt/receipt-destroy/receipt-destroy-detail/receipt-destroy-detail.component.html","./src/app/components/collection-receipt/receipt-destroy/receipt-destroy.component.ts","./src/app/components/collection-receipt/receipt-destroy/receipt-destroy.component.html","./src/app/components/collection-receipt/receipt-detail/receipt-detail.component.ts","./src/app/components/collection-receipt/receipt-detail/receipt-detail.component.html","./src/app/components/dang-ky-qua-trinh/dang-ky-qua-trinh.component.ts","./src/app/components/dang-ky-qua-trinh/dang-ky-qua-trinh.component.html","./src/app/components/de-xuat-sinh-vien/chart-de-xuat/chart-de-xuat.component.ts","./src/app/components/de-xuat-sinh-vien/chart-de-xuat/chart-de-xuat.component.html","./src/app/components/de-xuat-sinh-vien/de-xuat-sinh-vien.component.ts","./src/app/components/de-xuat-sinh-vien/de-xuat-sinh-vien.component.html","./src/app/components/developer-sql/developer-sql.component.ts","./src/app/components/developer-sql/developer-sql.component.html","./src/app/components/device/device.component.ts","./src/app/components/device/device.component.html","./src/app/components/diem-phong/diem-phong.component.ts","./src/app/components/diem-phong/diem-phong.component.html","./src/app/components/diem-sinh-vien/diem-sinh-vien.component.ts","./src/app/components/diem-sinh-vien/diem-sinh-vien.component.html","./src/app/components/doi-tuong-chinh-sach/doi-tuong-chinh-sach.component.ts","./src/app/components/doi-tuong-chinh-sach/doi-tuong-chinh-sach.component.html","./src/app/components/don-gia-dien-nuoc/don-gia-dien-nuoc.component.ts","./src/app/components/don-gia-dien-nuoc/don-gia-dien-nuoc.component.html","./src/app/components/grantcard/grantcard.component.ts","./src/app/components/grantcard/grantcard.component.html","./src/app/components/hinh-thuc/hinh-thuc.component.ts","./src/app/components/hinh-thuc/hinh-thuc.component.html","./src/app/components/invoice-add/invoice-add.component.ts","./src/app/components/invoice-add/invoice-add.component.html","./src/app/components/invoince/invoince.component.ts","./src/app/components/invoince/invoince.component.html","./src/app/components/invoince/khoan-thu-add/khoan-thu-add.component.ts","./src/app/components/invoince/khoan-thu-add/khoan-thu-add.component.html","./src/app/components/invoince/receipt-payment/receipt-payment.component.ts","./src/app/components/invoince/receipt-payment/receipt-payment.component.html","./src/app/components/invoince/receipts/receipts.component.ts","./src/app/components/invoince/receipts/receipts.component.html","./src/app/components/khen-thuong-ky-luat/khen-thuong-ky-luat.component.ts","./src/app/components/khen-thuong-ky-luat/khen-thuong-ky-luat.component.html","./src/app/components/lich-su-email/lich-su-email.component.ts","./src/app/components/lich-su-email/lich-su-email.component.html","./src/app/components/lich-su-sua-chua/lich-su-sua-chua.component.ts","./src/app/components/lich-su-sua-chua/lich-su-sua-chua.component.html","./src/app/components/list-people-des/list-people-des.component.ts","./src/app/components/list-people-des/list-people-des.component.html","./src/app/components/listpeopledorm/contract/contract.component.ts","./src/app/components/listpeopledorm/contract/contract.component.html","./src/app/components/listpeopledorm/listpeopledorm.component.ts","./src/app/components/listpeopledorm/listpeopledorm.component.html","./src/app/components/listpeopledorm/receipt-room/receipt-room.component.ts","./src/app/components/listpeopledorm/receipt-room/receipt-room.component.html","./src/app/components/loai-de-xuat/loai-de-xuat.component.ts","./src/app/components/loai-de-xuat/loai-de-xuat.component.html","./src/app/components/number-electric/number-electric.component.ts","./src/app/components/number-electric/number-electric.component.html","./src/app/components/number-water/number-water.component.ts","./src/app/components/number-water/number-water.component.html","./src/app/components/plan-room/filter-sv-manual/filter-sv-manual.component.ts","./src/app/components/plan-room/filter-sv-manual/filter-sv-manual.component.html","./src/app/components/plan-room/filter-sv/filter-sv.component.ts","./src/app/components/plan-room/filter-sv/filter-sv.component.html","./src/app/components/plan-room/plan-room.component.ts","./src/app/components/plan-room/plan-room.component.html","./src/app/components/plan-room/print-so-phong/print-so-phong.component.ts","./src/app/components/plan-room/print-so-phong/print-so-phong.component.html","./src/app/components/quan-tri-email/quan-tri-email.component.ts","./src/app/components/quan-tri-email/quan-tri-email.component.html","./src/app/components/quy-dinh-khoan-thu/quy-dinh-khoan-thu.component.ts","./src/app/components/quy-dinh-khoan-thu/quy-dinh-khoan-thu.component.html","./src/app/components/register-dorm/register-dorm.component.ts","./src/app/components/register-dorm/register-dorm.component.html","./src/app/components/regulation-object/regulation-object.component.ts","./src/app/components/regulation-object/regulation-object.component.html","./src/app/components/room-category/room-category.component.ts","./src/app/components/room-category/room-category.component.html","./src/app/components/room-charge/add-payment-regulations/add-payment-regulations.component.ts","./src/app/components/room-charge/add-payment-regulations/add-payment-regulations.component.html","./src/app/components/room-charge/room-charge.component.ts","./src/app/components/room-charge/room-charge.component.html","./src/app/components/room/room.component.ts","./src/app/components/room/room.component.html","./src/app/components/room/roomdetail/roomdetail.component.ts","./src/app/components/room/roomdetail/roomdetail.component.html","./src/app/components/roomtypes/roomtypes.component.ts","./src/app/components/roomtypes/roomtypes.component.html","./src/app/components/search-log/search-log.component.ts","./src/app/components/search-log/search-log.component.html","./src/app/components/statistical-money/statistical-money.component.ts","./src/app/components/statistical-money/statistical-money.component.html","./src/app/components/statistical/statistical.component.ts","./src/app/components/statistical/statistical.component.html","./src/app/components/students-sort/students-sort-detail/students-sort-detail.component.ts","./src/app/components/students-sort/students-sort-detail/students-sort-detail.component.html","./src/app/components/students-sort/students-sort.component.ts","./src/app/components/students-sort/students-sort.component.html","./src/app/components/template-email/template-email.component.ts","./src/app/components/template-email/template-email.component.html","./src/app/components/tham-so-he-thong/tham-so-he-thong.component.ts","./src/app/components/tham-so-he-thong/tham-so-he-thong.component.html","./src/app/components/tien-ich/tien-ich.component.ts","./src/app/components/tien-ich/tien-ich.component.html","./src/app/components/users-toa-nha/users-toa-nha.component.ts","./src/app/components/users-toa-nha/users-toa-nha.component.html","./src/app/components/version-detail/version-detail.component.ts","./src/app/components/version-detail/version-detail.component.html","./src/app/components/vi-pham/vi-pham.component.ts","./src/app/components/vi-pham/vi-pham.component.html","./src/app/pages/change-pass/change-pass.component.ts","./src/app/pages/change-pass/change-pass.component.html","./src/app/pages/chat-bot/chat-bot.component.ts","./src/app/pages/chat-bot/chat-bot.component.html","./src/app/pages/dang-nhap/dang-nhap.component.ts","./src/app/pages/dang-nhap/dang-nhap.component.html","./src/app/pages/login/login.component.ts","./src/app/pages/login/login.component.html","./src/app/pages/main/footer/footer.component.ts","./src/app/pages/main/footer/footer.component.html","./src/app/pages/main/header/header.component.ts","./src/app/pages/main/header/header.component.html","./src/app/pages/main/header/messages-dropdown-menu/messages-dropdown-menu.component.ts","./src/app/pages/main/header/messages-dropdown-menu/messages-dropdown-menu.component.html","./src/app/pages/main/header/notifications-dropdown-menu/notifications-dropdown-menu.component.ts","./src/app/pages/main/header/notifications-dropdown-menu/notifications-dropdown-menu.component.html","./src/app/pages/main/header/user-dropdown-menu/user-dropdown-menu.component.ts","./src/app/pages/main/header/user-dropdown-menu/user-dropdown-menu.component.html","./src/app/pages/main/main.component.ts","./src/app/pages/main/main.component.html","./src/app/pages/main/menu-sidebar/menu-sidebar.component.ts","./src/app/pages/main/menu-sidebar/menu-sidebar.component.html","./src/app/pages/portal/de-xuat/de-xuat.component.ts","./src/app/pages/portal/de-xuat/de-xuat.component.html","./src/app/pages/portal/portal-cap-nhat-thong-tin/portal-cap-nhat-thong-tin.component.ts","./src/app/pages/portal/portal-cap-nhat-thong-tin/portal-cap-nhat-thong-tin.component.html","./src/app/pages/portal/portal-change-pass/portal-change-pass.component.ts","./src/app/pages/portal/portal-change-pass/portal-change-pass.component.html","./src/app/pages/portal/portal-dang-ky-total-page/portal-dang-ky-total-page.component.ts","./src/app/pages/portal/portal-dang-ky-total-page/portal-dang-ky-total-page.component.html","./src/app/pages/portal/portal-dang-ky/portal-dang-ky.component.ts","./src/app/pages/portal/portal-dang-ky/portal-dang-ky.component.html","./src/app/pages/portal/portal-footer/portal-footer.component.ts","./src/app/pages/portal/portal-footer/portal-footer.component.html","./src/app/pages/portal/portal-header/portal-header.component.ts","./src/app/pages/portal/portal-header/portal-header.component.html","./src/app/pages/portal/portal-header/portal-user-dropdown/portal-user-dropdown.component.ts","./src/app/pages/portal/portal-header/portal-user-dropdown/portal-user-dropdown.component.html","./src/app/pages/portal/portal-ket-qua/portal-ket-qua.component.ts","./src/app/pages/portal/portal-ket-qua/portal-ket-qua.component.html","./src/app/pages/portal/portal-menu-sidebar/portal-menu-sidebar.component.ts","./src/app/pages/portal/portal-menu-sidebar/portal-menu-sidebar.component.html","./src/app/pages/portal/portal.component.ts","./src/app/pages/portal/portal.component.html","./src/app/pages/portal/thong-tin-sinh-vien/thong-tin-sinh-vien.component.ts","./src/app/pages/portal/thong-tin-sinh-vien/thong-tin-sinh-vien.component.html","./src/app/pages/register/register.component.ts","./src/app/pages/register/register.component.html","./src/app/pages/xac-nhan-sau-dai-hoc/xac-nhan-sau-dai-hoc.component.ts","./src/app/pages/xac-nhan-sau-dai-hoc/xac-nhan-sau-dai-hoc.component.html","./src/app/pages/xac-nhan/xac-nhan.component.ts","./src/app/pages/xac-nhan/xac-nhan.component.html","./src/app/utils/guards/auth.guard.ts","./src/app/utils/guards/non-auth.guard.ts","./src/app/utils/services/Account.service.ts","./src/app/utils/services/RoomCategoryRegister.service.ts","./src/app/utils/services/acc.service.ts","./src/app/utils/services/app.service.ts","./src/app/utils/services/collection-receipt.service.ts","./src/app/utils/services/dang-ky-qua-trinh-service.service.ts","./src/app/utils/services/dash-board.service.ts","./src/app/utils/services/de-xuat-sinh-vien.service.ts","./src/app/utils/services/diem-phong.service.ts","./src/app/utils/services/diem-sinh-vien.service.ts","./src/app/utils/services/doi-tuong-chinh-sach.service.ts","./src/app/utils/services/don-gia-dien-nuoc.service.ts","./src/app/utils/services/extensions.service.ts","./src/app/utils/services/hinhthuc.service.ts","./src/app/utils/services/khenthuongkyluat.service.ts","./src/app/utils/services/lichsusuachua.service.ts","./src/app/utils/services/listall.service.ts","./src/app/utils/services/loaidexuat.service.ts","./src/app/utils/services/number-electric.service.ts","./src/app/utils/services/number-water.service.ts","./src/app/utils/services/quan-tri-email.service.ts","./src/app/utils/services/quy-dinh-khoan-thu.service.ts","./src/app/utils/services/regulation-object.service.ts","./src/app/utils/services/regulation-payment.service.ts","./src/app/utils/services/so-phong.service.ts","./src/app/utils/services/statistical-money.service.ts","./src/app/utils/services/template-email.service.ts","./src/app/utils/services/tham-so-he-thong.service.ts","./src/app/utils/services/user-toa-nha.service.ts","./src/app/utils/services/vi-pham.service.ts","./src/app/utils/services/web-socket.service.ts","./src/app/views/blank/blank.component.ts","./src/app/views/blank/blank.component.html","./src/app/views/dashboard/canvasjs.min.js","./src/app/views/dashboard/dashboard.component.ts","./src/app/views/dashboard/dashboard.component.html","./src/app/views/profile/profile.component.ts","./src/app/views/profile/profile.component.html","./src/assets/canvasjs.angular.component.ts","./src/assets/canvasjs.min.js","./src/configuration.ts","./src/main.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":"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,QAAQ,EAAE,WAAW;gBACrB,WAAW,EAAE,wBAAwB;gBACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;aACtC;;;;;;;;;;;;;AEND;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;;AAEA;AACA;AACA;AACA,oCAAoC,uBAAuB;AAC3D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,gBAAgB,cAAc;AAC9B;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,2BAA2B,OAAO;AAClC;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,UAAU,cAAc,aAAa,WAAW,YAAY,gBAAgB,mBAAmB,sBAAsB,uBAAuB,uBAAuB;AAClM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,qBAAqB,cAAc;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8RAA8R,WAAW,kBAAkB,UAAU,8BAA8B,cAAc,qBAAqB,eAAe;AACrZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,8FAA8F,sBAAsB;AACzH;;AAEA;AACA,6BAA6B,sBAAsB;AACnD;;AAEA;AACA,6BAA6B,sBAAsB;AACnD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,eAAe;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,YAAY;AACnB;AACA,GAAG;AACH,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA,iBAAiB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,KAAK,IAAI;AAC7F;AACA;AACA;AACA;AACA,yIAAyI,EAAE;AAC3I;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,mBAAmB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,cAAc;AAC/C;AACA;AACA;AACA;AACA;AACA,kDAAkD,OAAO;AACzD,kBAAkB,cAAc;AAChC,WAAW;AACX;AACA;AACA;AACA,SAAS;AACT;AACA,kBAAkB,cAAc;AAChC;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,6BAA6B,cAAc;AAC3C;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,+BAA+B;AAC/B,OAAO;AACP;AACA,+BAA+B;AAC/B,OAAO;AACP;AACA,+BAA+B;AAC/B,OAAO;AACP;AACA,+BAA+B;AAC/B,OAAO;AACP;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA,OAAO,kDAAkD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,cAAc,cAAc;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,cAAc;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,oCAAoC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAA6B,kEAAkE,KAA0C,GAAG,iCAAO,EAAE,mCAAE;AACzJ;AACA,GAAG;AAAA,oGAAC,GAAG,SAAoB;AAC3B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,2HAA2H,YAAY,UAAU;AACjJ;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,WAAW;AACX,OAAO;AACP;AACA;;AAEA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0KAA0K,wLAAwL;AAClW,oKAAoK,wLAAwL;AAC5V;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oCAAoC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,sCAAsC;AACzD;AACA;AACA,SAAS;AACT,mBAAmB,oCAAoC;AACvD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,oEAAoE;AAC9G,YAAY,kDAAkD;AAC9D,YAAY,0DAA0D;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,2BAA2B,qCAAqC;AAChE;AACA,uBAAuB,sCAAsC;AAC7D;AACA;AACA,uBAAuB,qCAAqC;AAC5D;AACA,uBAAuB,sCAAsC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,2BAA2B,wBAAwB,uBAAuB,mBAAmB,iBAAiB,WAAW,UAAU,iBAAiB,WAAW,gBAAgB,2CAA2C,yBAAyB,iBAAiB,kBAAkB,sDAAsD;AAC1W;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,8BAA8B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,sBAAsB;AACvE;AACA;AACA;AACA;AACA;AACA,+BAA+B,+BAA+B;AAC9D;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,2BAA2B,+BAA+B;AAC1D;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,2BAA2B,gCAAgC;AAC3D;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,qBAAqB,uBAAuB;AAC5C,qBAAqB,2BAA2B;AAChD;AACA;AACA,mBAAmB,wBAAwB;AAC3C;AACA,mBAAmB,4BAA4B;AAC/C;AACA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA,mBAAmB,wBAAwB;AAC3C;AACA;AACA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,mCAAmC;AACtD;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA;AACA;AACA,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,oCAAoC;AACrD,uDAAuD,wBAAwB;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,gCAAgC;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,uBAAuB,iCAAiC;AACxD,sDAAsD,wBAAwB;AAC9E;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,uBAAuB,oBAAoB;AAC3C;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,6BAA6B,sBAAsB;AACnD;AACA,6DAA6D,oCAAoC;AACjG;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,qBAAqB,wBAAwB;AAC7C;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS,YAAY,oCAAoC;AACzD;AACA,oBAAoB,wBAAwB;AAC5C;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA,kDAAkD,OAAO;AACzD;AACA;AACA;AACA;AACA;AACA,qBAAqB,oCAAoC;AACzD;AACA,gBAAgB,wBAAwB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF,gCAAgC;AACjH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mHAAmH,gCAAgC;AACnJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yGAAyG,gCAAgC;AACzI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,gCAAgC;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,cAAc;AACzC;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF,gCAAgC;AACjH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sKAAsK,gCAAgC;AACtM;AACA;AACA,2BAA2B,yBAAyB;AACpD;AACA;AACA;AACA;AACA,qCAAqC,cAAc;AACnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kGAAkG,gCAAgC;AAClI;AACA;AACA,yBAAyB,yBAAyB;AAClD;AACA;AACA,0CAA0C;AAC1C,0BAA0B;AAC1B;AACA;AACA;AACA,yBAAyB,0FAA0F;AACnH;AACA;AACA,WAAW;AACX,SAAS;AACT,qBAAqB,oCAAoC;AACzD,uDAAuD,wBAAwB;AAC/E;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA,wBAAwB,kBAAkB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA,qBAAqB;AACrB;AACA,2BAA2B,mDAAmD;AAC9E;AACA,sBAAsB,cAAc;AACpC;AACA;AACA;AACA;AACA,eAAe;AACf,yBAAyB,yEAAyE;AAClG;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA,gEAAgE,QAAQ;AACxE;AACA;AACA;AACA;AACA;AACA,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,8BAA8B;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA,yBAAyB,uBAAuB;AAChD;AACA;AACA,WAAW;AACX;AACA,qBAAqB,wBAAwB;AAC7C;AACA;AACA,WAAW;AACX;AACA,qBAAqB,uBAAuB;AAC5C;AACA;AACA,WAAW;AACX;AACA;AACA,cAAc,wBAAwB;AACtC;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA,2BAA2B,yBAAyB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,uBAAuB;AACrC;AACA,qBAAqB,wBAAwB;AAC7C;AACA,qBAAqB,uBAAuB;AAC5C;AACA,qBAAqB,wBAAwB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,qBAAqB,uBAAuB;AAC5C;AACA,qBAAqB;AACrB,+BAA+B;AAC/B;AACA,qBAAqB,uBAAuB;AAC5C;AACA,qBAAqB,wBAAwB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA,+HAA+H,uBAAuB;AACtJ,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,qBAAqB,+CAA+C;AACpE;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,8BAA8B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,8BAA8B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,gCAAgC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,gCAAgC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,gCAAgC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,cAAc;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA,kEAAkE,cAAc;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA,kEAAkE,cAAc;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,kBAAkB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,cAAc;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,cAAc;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,cAAc;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,gCAAgC;AAC/D;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,cAAc;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,cAAc;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,gCAAgC;AAC/D;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,cAAc;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,gCAAgC;AACpF;AACA,6DAA6D,cAAc;AAC3E,yHAAyH,gCAAgC;AACzJ;AACA,mDAAmD,cAAc;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,cAAc;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA,kEAAkE,cAAc;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,gCAAgC;AACvF;AACA;AACA;AACA;AACA,kEAAkE,cAAc;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA,uDAAuD,cAAc;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD,yBAAyB,gCAAgC;AACzD;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,cAAc;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,QAAQ;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,kBAAkB;AACvC;AACA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,cAAc;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gCAAgC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8FAA8F,cAAc;AAC5G;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,cAAc;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA,qBAAqB,cAAc;AACnC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iCAAiC,cAAc;AAC/C;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,4BAA4B;AAC7E;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,cAAc;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,cAAc;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,uBAAuB,cAAc;AACrC,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA;AACA,mCAAmC,uBAAuB;AAC1D;AACA;AACA,aAAa;AACb,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA,0DAA0D,cAAc;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,yBAAyB,wBAAwB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,cAAc;AACpD;AACA;AACA;AACA;AACA;AACA,0BAA0B,cAAc;AACxC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,cAAc;AACpD;AACA;AACA;AACA;AACA;AACA,qEAAqE,cAAc;AACnF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB,cAAc;AAC3C;AACA,2CAA2C,wBAAwB;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oJAAoJ,QAAQ;AAC5J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,QAAQ;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,4BAA4B,OAAO;AACnC;AACA,sCAAsC,QAAQ;AAC9C;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,wDAAwD;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA,+BAA+B,QAAQ;AACvC;AACA;AACA,WAAW;AACX,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA,gDAAgD,WAAW;AAC3D,oCAAoC;AACpC,+QAA+Q;AAC/Q;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,iCAAiC,cAAc;AAC/C;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,iCAAiC,cAAc;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA,8BAA8B,kBAAkB;AAChD;AACA;;AAEA;AACA,mCAAmC,cAAc;AACjD;AACA;;AAEA;AACA,oBAAoB,qCAAqC;AACzD;AACA;;AAEA;AACA,oBAAoB,gDAAgD;AACpE;AACA;;AAEA;AACA,0BAA0B,cAAc;AACxC;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;;AAEA;AACA,uBAAuB,cAAc;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAyB,wBAAwB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gOAAgO,cAAc;AAC9O;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,OAAO;AACtD;AACA,yBAAyB,cAAc;AACvC;AACA,yBAAyB,cAAc;AACvC;AACA,yBAAyB,cAAc;AACvC,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC,yBAAyB,cAAc;AACvC;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,iDAAiD,YAAY,aAAa,yBAAyB,yBAAyB;AAC5H;AACA;AACA;AACA;AACA;AACA,oFAAoF,0BAA0B;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,OAAO;AAClC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,0BAA0B,KAAK;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,YAAY;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,4BAA4B;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,2BAA2B,yBAAyB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C,wCAAwC,oBAAoB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,EAAE;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,8DAA8D;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,YAAY,EAAE;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,SAAS;AACT,wCAAwC;AACxC;AACA;AACA,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE,OAAO;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,0BAA0B;AACtG;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,+GAA+G,gCAAgC;AAC/I;AACA;AACA,oBAAoB,mCAAmC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA,eAAe;AACf,aAAa;AACb,4CAA4C,QAAQ;AACpD;AACA,gBAAgB,mCAAmC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA,6JAA6J,OAAO;AACpK,+BAA+B,mCAAmC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA,yDAAyD,cAAc;AACvE,eAAe;AACf;AACA,2CAA2C,yBAAyB;AACpE;AACA;AACA;AACA,+BAA+B,yBAAyB;AACxD;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iLAAiL,yBAAyB;AAC1M;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY,yBAAyB;AACpD;AACA,WAAW;AACX,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA,+BAA+B,yBAAyB;AACxD;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY,yBAAyB;AACpD;AACA,WAAW;AACX,uBAAuB,yBAAyB;AAChD;AACA,iBAAiB,4BAA4B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yBAAyB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kCAAkC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kCAAkC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC,iBAAiB,cAAc;AAC/B;AACA;AACA,mDAAmD,2DAA2D;AAC9G,iHAAiH,cAAc;AAC/H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,OAAO;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA,oCAAoC,cAAc;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,cAAc,wCAAwC;AACzF;AACA;AACA;AACA,mCAAmC,cAAc,wCAAwC;AACzF;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,qBAAqB,cAAc;AACnC;AACA,qBAAqB,cAAc;AACnC,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,OAAO;AAC3B;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA,uBAAuB,cAAc,+BAA+B;AACpE;AACA;AACA,uBAAuB,cAAc,+BAA+B;AACpE;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA,mCAAmC,cAAc;AACjD;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,uBAAuB,cAAc;AACrC;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,cAAc;AACzC;AACA,2BAA2B,cAAc;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,cAAc;AACzC;AACA;AACA,2BAA2B,cAAc;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,cAAc;AAC5B;AACA,qBAAqB,cAAc;AACnC;AACA,qBAAqB,cAAc;AACnC;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,mBAAmB,cAAc;AACjC;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA,YAAY,cAAc;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA,mBAAmB,cAAc;AACjC;AACA;AACA,qBAAqB,4BAA4B;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ofAAof,cAAc;AAClgB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,wEAAwE;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6MAA6M,QAAQ;AACrN;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,uBAAuB,yBAAyB;AAChD;AACA,WAAW;AACX;AACA;AACA,8IAA8I,QAAQ;AACtJ;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,gBAAgB,yBAAyB;AACzC;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,OAAO;AACP,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,OAAO;AACP;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C,SAAS;AACT;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,yBAAyB;AAChF;AACA;AACA,sCAAsC,yBAAyB;AAC/D;AACA;AACA;AACA;AACA;AACA,wBAAwB,4BAA4B;AACpD;AACA;AACA;AACA,mBAAmB,kCAAkC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA,aAAa;AACb,uBAAuB,cAAc;AACrC,yBAAyB,cAAc;AACvC,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C,uBAAuB,cAAc;AACrC,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yBAAyB;AAC9C;AACA;AACA,yBAAyB,yBAAyB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,sCAAsC;AACvF;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,sCAAsC;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,eAAe;AACf,WAAW;AACX,gCAAgC,QAAQ;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,eAAe;AACf;AACA,OAAO;AACP;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,eAAe;AACf,WAAW;AACX,gCAAgC,QAAQ;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,wCAAwC;AAC/D;AACA,OAAO;AACP,mDAAmD,wCAAwC;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,uBAAuB,2DAA2D;AAClF;AACA;AACA;AACA,mBAAmB,2DAA2D;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,4CAA4C;AACjE;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,2BAA2B,4BAA4B;AACvD;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,4CAA4C;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,0BAA0B;AACjD;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,qBAAqB,WAAW;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,OAAO;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,2BAA2B,OAAO;AAClC;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,yBAAyB,OAAO;AAChC;AACA;AACA,yBAAyB,WAAW;AACpC;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B,WAAW;AACX;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA,uBAAuB,WAAW;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX,yBAAyB;AACzB,0CAA0C;AAC1C;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,0GAA0G,cAAc;AACxH;AACA;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA,+GAA+G,cAAc;AAC7H;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA,+GAA+G,cAAc;AAC7H;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA,oGAAoG,cAAc;AAClH;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,0BAA0B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,aAAa;AACb;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,aAAa;AACb;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,iCAAiC;AAC/F;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB,mCAAmC;AAC7E;AACA;AACA;AACA;AACA,uBAAuB;AACvB,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,WAAW;AACX,qBAAqB,mCAAmC;AACxD;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,iCAAiC;AAC7F;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,mBAAmB,mBAAmB,mCAAmC;AACzE;AACA;AACA;AACA;AACA,mBAAmB;AACnB,eAAe;AACf;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,WAAW;AACX,qBAAqB,mCAAmC;AACxD;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,mGAAmG,cAAc;AACjH;AACA;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA,oGAAoG,cAAc;AAClH;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA,wGAAwG,cAAc;AACtH;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA,gGAAgG,cAAc;AAC9G;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,0BAA0B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,WAAW;AACX;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,iCAAiC;AAC/F;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,qBAAqB,mBAAmB,mCAAmC;AAC3E;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,iCAAiC;AAC7F;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA,mBAAmB,mBAAmB,mCAAmC;AACzE;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,aAAa,gBAAgB;AACnE,gCAAgC;AAChC,sCAAsC;AACtC,2BAA2B;AAC3B,0DAA0D;AAC1D,kCAAkC;AAClC,2CAA2C,YAAY;AACvD,8BAA8B;AAC9B,6BAA6B;AAC7B,0DAA0D;AAC1D,+BAA+B;AAC/B,qCAAqC;AACrC,mDAAmD,kCAAkC;AACrF,+BAA+B;AAC/B,kCAAkC;AAClC,iCAAiC;AACjC,oCAAoC;AACpC,uCAAuC;AACvC,wCAAwC;AACxC,oCAAoC;AACpC,gCAAgC;AAChC,gDAAgD,sGAAsG;AACtJ,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,6BAA6B;AAC1D;AACA;AACA,iBAAiB,mBAAmB,2CAA2C;AAC/E;AACA;AACA;AACA,yBAAyB,8BAA8B;AACvD;AACA;AACA,iBAAiB;AACjB;AACA;AACA,oBAAoB,4CAA4C;AAChE;AACA;AACA,WAAW;AACX;AACA;AACA,yBAAyB,6BAA6B;AACtD;AACA;AACA,iBAAiB,mBAAmB,2CAA2C;AAC/E;AACA;AACA,yBAAyB,8BAA8B;AACvD;AACA;AACA,iBAAiB,mBAAmB,4CAA4C;AAChF;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,qBAAqB,cAAc;AACnC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,0BAA0B;AAC3D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,ibAAib;AACjb;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,cAAc;AACpC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA,yCAAyC,cAAc;AACvD,sIAAsI,EAAE,8JAA8J,EAAE;AACxS,4bAA4b,WAAW;AACvc,yFAAyF,OAAO,YAAY,KAAK,cAAc,OAAO,EAAE,yKAAyK,WAAW,+NAA+N,OAAO,YAAY,KAAK,cAAc,OAAO,EAAE,QAAQ,OAAO,EAAE;AAC3lB,8QAA8Q,WAAW,+NAA+N,OAAO,YAAY,KAAK,cAAc,OAAO,KAAK,QAAQ,KAAK;AACvjB,0KAA0K,WAAW,+NAA+N,OAAO,YAAY,KAAK,yBAAyB,OAAO,KAAK,iBAAiB,MAAM,OAAO,KAAK,eAAe,MAAM,OAAO,KAAK,kBAAkB,OAAO,KAAK;AACnjB,sJAAsJ,WAAW,+NAA+N,OAAO,YAAY,KAAK,4BAA4B,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,qBAAqB,KAAK;AACnwB;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,4dAA4d,OAAO,4BAA4B,MAAM,MAAM,EAAE,oBAAoB,OAAO,EAAE;AAC1iB,qMAAqM,OAAO,4BAA4B,MAAM,MAAM,EAAE,oBAAoB,OAAO,EAAE,QAAQ,OAAO,EAAE;AACpS,uBAAuB,OAAO,2BAA2B,KAAK,cAAc,MAAM,gBAAgB,MAAM,cAAc,MAAM,mBAAmB,EAAE,wVAAwV,OAAO,4BAA4B,MAAM,MAAM,EAAE,qBAAqB,OAAO,KAAK,SAAS,KAAK;AACzkB,gRAAgR,OAAO,4BAA4B,MAAM,MAAM,EAAE,8BAA8B,OAAO,KAAK,iBAAiB,MAAM,OAAO,KAAK,gBAAgB,MAAM,MAAM,OAAO,KAAK,kBAAkB,OAAO,KAAK;AACpd,kJAAkJ,OAAO,4BAA4B,MAAM,MAAM,EAAE,iCAAiC,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,eAAe,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,KAAK,qBAAqB,KAAK;AACnjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,mBAAmB,uCAAuC;AAC1D;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,mBAAmB,cAAc;AACjC;AACA,qBAAqB,uCAAuC;AAC5D;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,kBAAkB,4BAA4B;AAC9C;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,cAAc,cAAc;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,yCAAyC,wBAAwB;AACjE;;AAEA;AACA;AACA;AACA,kHAAkH,qBAAqB,gBAAgB,gBAAgB,YAAY,aAAa;AAChM;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,4BAA4B,OAAO;AACnC,qBAAqB,OAAO;AAC5B,8BAA8B,OAAO;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,gCAAgC,gBAAgB;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,6BAA6B,OAAO;AACpC;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,qBAAqB,cAAc;AACnC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ;AACjC,mBAAmB,QAAQ;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,UAAU;AACV,UAAU;AACV;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,kBAAkB,kBAAkB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,uFAAuF;AACvJ,KAAK;AACL,sBAAsB,wBAAwB;AAC9C,kFAAkF;AAClF;AACA;AACA;AACA;AACA,8EAA8E,iBAAiB,kBAAkB;AACjH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK,QAAQ,8BAA8B;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,YAAY;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2KAA2K,UAAU,WAAW;AAChM;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,gNAAgN;AAChN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0GAA0G,aAAa,OAAO,UAAU,SAAS,YAAY,gBAAgB;AAC7K;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,qB;;;;;;;;;;;;;;;;;;;;;;;;;;;ACr0WkD;AAEN;AAGD;;;;;;;;;;IC8F/B,6EACG;IAAA,uDAAc;IAAA,4DAChB;;;IAFuC,wEAAY;IACjD,0DAAc;IAAd,0FAAc;;;IAiEf,qEACE;IAAA,qEAAI;IAAA,uDAAW;IAAA,4DAAK;IACpB,qEAAI;IAAA,uDAAa;IAAA,4DAAK;IACtB,qEAAI;IAAA,uDAAc;IAAA,4DAAK;IACv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","file":"main-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","export class RequestBase {\n RequestID: number;\n UserName: string;\n}\n","import { RequestBase } from './RequestBase';\n\nexport class RequestLogin extends RequestBase {\n UserName: string;\n Password: string;\n UserCategory: number;\n}\n","\nexport class RequestPhong {\n Con_trong: number;\n Dang_o: number;\n Ghi_chu: string;\n Gia_tien: string;\n ID_Co_So: number;\n ID_Phong: number;\n ID_Toa_Nha: number;\n ID_loai_phong: number;\n Khoa_phong: boolean;\n Loai_phong: boolean;\n Ma_phong: string;\n Suc_chua: number;\n Tang: string;\n Ten_co_so: string;\n Ten_loai_phong: string;\n Ten_phong: string;\n Ten_toa_nha: string;\n Thu_tu: number;\n dsID?: string;\n}\n\n\n","export class ResponseBase {\n Status: number;\n Message: string;\n}\nexport interface LooseObject {\n [key: string]: any;\n}\n","import { ResponseBase } from './ResponseBase';\n\nexport class ResponseLogin extends ResponseBase {\n Token: string;\n Roles:any;\n Info: UserInfo;\n}\nexport class UserInfo {\n UserName: string;\n UserID: number;\n Email: string;\n FullName: string;\n DiaChi: string;\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccessHistoryService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n Access_History(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'AccessHistory/Access_History', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => { return z; }));\n }\n Access_History_Detail(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'AccessHistory/Access_History_Detail?ID_sv=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => { return z; }));\n }\n Access_History_Room(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'AccessHistory/Access_History_Room?ID_room=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => { return z; }));\n }\n Insert(req: any, token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'AccessHistory/Access_History_Insert', req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Update(req: any, token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'AccessHistory/Access_History_Update', req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BlackListService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'BlackList/ListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'BlackList/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Delete(ID_danh_sach_den: number, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'BlackList/Delete?ID_danh_sach_den=' + ID_danh_sach_den, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BuildingService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Building/BuildingListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Building/BuildingAdd', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Building/BuildingDelete?ID_ToaNha=' + ID,\n 0,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Building/BuildingEdit', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n \n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CampusService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Campus/Campus_List', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Campus/Campus_Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Campus/Campus_Delete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Campus/Campus_Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckExist(code: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Campus/Campus_CheckExist?code=' + code,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckDelete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Campus/Campus_CheckDelete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DeviceService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Device/Device_List', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Device/Device_Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n InsertDeviceRoom(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Room/InsertDeviceRoom', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Device/Device_Delete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Device/Device_Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckExist(code: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Device/Device_CheckExist?code=' + code,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckDelete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Device/Device_CheckDelete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport * as FileSaver from 'file-saver';\nimport * as XLSX from 'xlsx';\nimport {Buffer} from 'buffer';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ExportService {\n\n constructor() { }\n fileType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\n fileExtension = '.xlsx';\n\n public exportExcel(jsonData: any[], fileName: string): void {\n const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(jsonData);\n const wb: XLSX.WorkBook = { Sheets: { 'data': ws }, SheetNames: ['data'] };\n const excelBuffer: any = XLSX.write(wb, { bookType: 'xlsx', type: 'array' });\n this.saveExcelFile(excelBuffer, fileName);\n }\n public exportExcelByte(input: any, fileName: string): void {\n let buff = new Buffer(input, 'base64');\n let text = buff.toString('ascii');\n const data: Blob = new Blob([buff], { type: this.fileType });\n FileSaver.saveAs(data, fileName + this.fileExtension);\n }\n public GetBase64(input: any, fileName: string): any {\n let buff = new Buffer(input, 'base64');\n return buff.toString('base64');\n }\n private saveExcelFile(buffer: any, fileName: string): void {\n const data: Blob = new Blob([buffer], { type: this.fileType });\n FileSaver.saveAs(data, fileName + this.fileExtension);\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class GrantCardService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'GrantCard/GrantCardGetList', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'GrantCard/GrantCard_Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n } \n Excel(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'GrantCard/GrantCardExcel', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class InvoinceService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n CountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Excel(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/Excel', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Invoince/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getList(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/Pagination', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n updateStatus(req: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Invoince/UpdateStatus?ID_bien_lai='+req.ID_bien_lai+'&Huy_phieu='+req.Huy_phieu, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getdetail(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Invoince/GetData?ID_bien_lai=' + req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(rq: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/LapPhieuChi' , rq, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ImportExcel(rq: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/ImportExcel' , rq, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n InsertKhoanThu(rq: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Invoince/LapPhieuThu' , rq, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getChiTietSinhVien(code: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Invoince/ChiTietSinhVien?Code=' + code,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n \n getSinhVien(code: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Invoince/SinhVien?Code=' + code,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getThongTinKhoanThu(ID_sv: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Invoince/KhoanThu?ID_sv=' + ID_sv,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getThongTinKhoanChi(ID_sv: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Invoince/KhoanChi?ID_sv=' + ID_sv,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ListpeopledormService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DormList/ListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDangKyQuaTrinhLast(ID_dang_ky,token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DormList/ListLastQuaTrinh?ID_dang_ky='+ID_dang_ky, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListDes(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DormList/DormDesLoadList', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n } // lấy dánh sách ra khỏi KTX\n\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Building/BuildingAdd', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n UpdateLeadRoom(ID_dky_new, ID_phong, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'DormList/LeadRoomUpdate?ID_dky_new=' +\n ID_dky_new +\n '&&ID_phong=' +\n ID_phong,\n 0,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DormList/DormListUpdate', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n UpdateSV(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DormList/SinhVienUpdate', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n UpdateRaKhoiKTX(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'DormList/DormListRaKhoiKTX',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UpdateQuayLaiKTX(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'DormList/DormListQuayLaiKTX',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UpdateRoom(res: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'StudentSort/ChangeRoom', res, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListReceipt(dt, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'DormList/DormListDetail?ID_Dang_Ky=' + dt,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n ChoRaKTX(data: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'StudentSort/GetOut?Ngay_cho_ra=' +\n data.Ngay_cho_ra +\n '&Ly_do=' +\n data.Ly_do +\n '&Ra_truoc_han=' +\n data.Ra_truoc_han +\n '&Danh_sach_den=' +\n data.Danh_sach_den,\n data.lstID_dang_ky,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n ExportDanhSachO(data: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'DormList/ExportExcelListDorm',\n data,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDormList(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DormList/List', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DormList/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DormList/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDanhSachRa(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DormList/DanhSachRa', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDanhSachRaCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DormList/DanhSachRa_Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDanhSachRaCountFilter(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'DormList/DanhSachRa_CountFilter',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n GiaHanNgayRa(req, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'DormList/GiaHanNgayRa?ID='+req.ID+'&Ngay_ket_thuc='+req.Ngay_ket_thuc+'&So_thang_o='+req.So_thang_o,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiGiaHanNgayRa(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'DormList/GiaHanNgayRaMulti?Ngay_ket_thuc='+req.Ngay_ket_thuc,req.listSinhVien,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Sendmail(data: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'StudentSort/SendMail',\n data,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RegisterDormService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/RegisterListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n cancelRegister(ID, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/HuyDangKy?UserID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListAll(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/ListAll', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListSVQuaHanDongTien(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/Register_LoadSVNhapHoc', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n SinhVienCheckValue(ID_sv:any,token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/SinhVienCheckValu/?ID_sv='+ID_sv, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getSVbyMa(Ma_sv: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/RegisterLoadSVByMa?Ma_sv=' +\n Ma_sv,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/RegisterAdd', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n InsertStudent(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Register/RegisterAddByStudent',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Import_Excel(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Register/ImportListRegister',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Delete(ID: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Register/RegisterDelete?ID_dang_ky=' + ID,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/RegisterUpdate', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Update_Student(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Register/RegisterUpdateStudent',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UpdateStatus(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Register/RegisterUpdateStatus',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UpdateStatus_ListID(data: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/RegisterUpdateStatus_ListID?lstIdDangKy=' +\n data.lstIdDangKy,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UnApproveRegister(req: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Register/UnApproveRegister',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n UnApproveRegister_ListID(data: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/UnApproveRegister_ListID?lstIdDangKy=' +\n data.lstIdDangKy +\n '&Ly_do=' +\n data.Ly_do,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n RejectStatus_ListID(data: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/RegisterReject_ListID?lstIdDangKy=' +\n data.lstIdDangKy +\n '&Ly_do=' +\n data.Ly_do,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n RejectStatus(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/RegisterReject', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n List_He(token): Observable {\n return this.http\n .get(this.appConfig.UniSystemAPI + 'He/Danh_sach_he', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n List_Khoa(token): Observable {\n return this.http\n .get(this.appConfig.UniSystemAPI + 'Khoa/Danh_sach_khoa', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListStudentByCode(code, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Register/StudentListByCode?Ma=' + code,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListRegisterByID(id, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'Register/RegisterListByID?ID=' + id,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getListMonneyRoom(id, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/RegisterListMoneyRoom?ID_sv=' +\n id,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getFile(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Register/StudentReadFile', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ExcelDangKy(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'Register/ExPortDanhSachO', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RoomcategoryService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private router: Router,\r\n private http: HttpClient\r\n ) {}\r\n\r\n getList(getnul: any, token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'RoomCateGory/ListAll', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n CheckExist(req: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'RoomCateGory/CheckExist?ma_loai_phong=' +\r\n req,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Update(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'RoomCateGory/Update', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Insert(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'RoomCateGory/Add', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Delete(ID_loai_phong: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI + 'RoomCateGory/Delete?ID=' + ID_loai_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n LoadExtensionsByIDLoaiPhong(ID_loai_phong: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'RoomCateGory/LoadExtensionsByIDLoaiPhong?ID=' +\r\n ID_loai_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n LoadExtensionsNotExistByIDLoaiPhong(\r\n ID_loai_phong: any,\r\n token\r\n ): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'RoomCateGory/LoadExtensionsNotExistByIDLoaiPhong?ID=' +\r\n ID_loai_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n InsertExtensionsLoaiPhong(\r\n ID_loai_phong: any,\r\n ID_tien_ich: any,\r\n Don_gia: any,\r\n token\r\n ): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'RoomCateGory/InsertExtensionsLoaiPhong?ID_loai_phong=' +\r\n ID_loai_phong +\r\n '&ID_tien_ich=' +\r\n ID_tien_ich +\r\n '&Don_gia=' +\r\n Don_gia,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n DeleteExtensionsLoaiPhong(\r\n ID_loai_phong: any,\r\n ID_tien_ich: any,\r\n token\r\n ): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'RoomCateGory/DeleteExtensionsLoaiPhong?ID_loai_phong=' +\r\n ID_loai_phong +\r\n '&ID_tien_ich=' +\r\n ID_tien_ich,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RoomService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private router: Router,\r\n private http: HttpClient\r\n ) {}\r\n\r\n GetAll(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Room/GetAll', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n getListFloor(id_building: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'Room/GetListFloor?id_building=' +\r\n id_building,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n GetAllSVByIdPhong(ID_phong, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'Room/DormListListAll?ID_phong_o=' +\r\n ID_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n GetRoom(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Room/GetRoomNoLock', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Insert(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/Add', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Update(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/Update', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Lock(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/Lock', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Delete(req: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI + 'Room/Delete?ID_Phong=' + req.ID_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n CheckExist(req: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI + 'Room/CheckExist?Ma_phong=' + req.Ma_phong,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n CheckDelete(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/CheckDelete', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n PhongThietBiGetAll(req: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI + 'Room/PhongThietBiGet?ID_Phong=' + req,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n PhongThietBiInsert(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/PhongThietBiAdd', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n PhongThietBiUpdate(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Room/PhongThietBiUpdate', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n PhongThietBiDelete(req: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'Room/PhongThietBiDelete?ID_phong_thiet_bi=' +\r\n req.ID_phong_thiet_bi,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Excel(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Room/ExcelDeviceRoom', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n GetAllNonLock(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Room/GetRoomNonLock', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n ThongKePhongTrong(ID_toa_nha, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n 'Room/ThongKePhongTrong?ID_toa_nha=' +\r\n ID_toa_nha,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SearchLogService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n GetAll(Chuc_nang,Thao_tac,FromDate,ToDate,token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'LogEvent/ListAll?Chuc_Nang='+Chuc_nang +\"&Thao_tac=\"+\n Thao_tac+\"&FromDate=\"+FromDate\n +\"&ToDate=\"+ToDate\n , {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root'\n})\nexport class StatisticalService {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration, private router: Router, private http: HttpClient) { }\n\n GetAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'Statistical/ThongKeKhoanNop_List', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Excel(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Statistical/Excel', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => { return z; }));\n }\n}\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentSortService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private http: HttpClient\r\n ) {}\r\n ListAll(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'StudentSort/ListAll', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Sort(token, req): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'StudentSort/SortCustom', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n SortManual(token, req): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'StudentSort/SortManual', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n List_He(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'He/Danh_sach_he', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n List_Khoa(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'Khoa/Danh_sach_khoa', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n List_ChuyenNganh(token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniSystemAPI + 'ChuyenNganh/Danh_sach_chuyen_nganh',\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n getCount(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'StudentSort/Count', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n getCountFilter(req, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'StudentSort/CountFilter', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n getStudentManual(req, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'StudentSortManual/ListAll', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SystemService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private router: Router,\r\n private http: HttpClient\r\n ) {}\r\n\r\n Get_danh_sach_dan_toc(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'DanToc/Danh_sach_dan_toc', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n ExecuteQuerryString(data: any, token): Observable {\r\n return this.http\r\n .post(\r\n this.appConfig.UniDormAPI + '/SQLExecute/ExecuteQuerryString',\r\n data,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n ExecuteQuerryStringExport(data: any, token): Observable {\r\n return this.http\r\n .post(\r\n this.appConfig.UniDormAPI + '/SQLExecute/ExecuteQuerryStringExport',\r\n data,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Get_danh_sach_quoc_tich(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'QuocTich/Danh_sach_quoc_tich', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n Get_doituong_chinhsach(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'DoiTuong/Danh_sach_doi_tuong', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n Get_khuvuc_tuyensinh(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'KhuVuc/Danh_sach_khu_vuc', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Get_tinh(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'Tinh/Danh_sach_tinh', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n Get_lop(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniSystemAPI + 'Lop/Danh_sach_lop_dang_hoc', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { UsersToaNhaComponent } from './components/users-toa-nha/users-toa-nha.component';\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { MainComponent } from './pages/main/main.component';\r\nimport { BlankComponent } from './views/blank/blank.component';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { RegisterComponent } from './pages/register/register.component';\r\nimport { DashboardComponent } from './views/dashboard/dashboard.component';\r\nimport { AuthGuard } from './utils/guards/auth.guard';\r\nimport { NonAuthGuard } from './utils/guards/non-auth.guard';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { CampusComponent } from './components/campus/campus.component';\r\n\r\nimport { BuildingComponent } from './components/building/building.component';\r\nimport { RoomtypesComponent } from './components/roomtypes/roomtypes.component';\r\nimport { RoomComponent } from './components/room/room.component';\r\nimport { DeviceComponent } from './components/device/device.component';\r\nimport { RoomService } from './Utils/services/room.service';\r\nimport { RoomdetailComponent } from './components/room/roomdetail/roomdetail.component';\r\nimport { GrantcardComponent } from './components/grantcard/grantcard.component';\r\nimport { ListpeopledormComponent } from './components/listpeopledorm/listpeopledorm.component';\r\nimport { StudentsSortComponent } from './components/students-sort/students-sort.component';\r\nimport { NumberElectricComponent } from './components/number-electric/number-electric.component';\r\nimport { AccessHistoryComponent } from './components/access-history/access-history.component';\r\nimport { AccessHistoryDetailComponent } from './components/access-history/access-history-detail/access-history-detail.component';\r\nimport { RegisterDormComponent } from './components/register-dorm/register-dorm.component';\r\nimport { RoomChargeComponent } from './components/room-charge/room-charge.component';\r\nimport { NumberWaterComponent } from './components/number-water/number-water.component';\r\nimport { CollectionReceiptComponent } from './components/collection-receipt/collection-receipt.component';\r\nimport { ReceiptDetailComponent } from './components/collection-receipt/receipt-detail/receipt-detail.component';\r\nimport { StatisticalComponent } from './components/statistical/statistical.component';\r\nimport { ReceiptDestroyComponent } from './components/collection-receipt/receipt-destroy/receipt-destroy.component';\r\nimport { ReceiptDestroyDetailComponent } from './components/collection-receipt/receipt-destroy/receipt-destroy-detail/receipt-destroy-detail.component';\r\nimport { ListPeopleDesComponent } from './components/list-people-des/list-people-des.component';\r\nimport { RoomCategoryComponent } from './components/room-category/room-category.component';\r\nimport { DangNhapComponent } from './pages/dang-nhap/dang-nhap.component';\r\nimport { XacNhanComponent } from './pages/xac-nhan/xac-nhan.component';\r\nimport { PortalComponent } from './pages/portal/portal.component';\r\nimport { PortalDangKyComponent } from './pages/portal/portal-dang-ky/portal-dang-ky.component';\r\nimport { AddPaymentRegulationsComponent } from './components/room-charge/add-payment-regulations/add-payment-regulations.component';\r\nimport { StudentsSortDetailComponent } from './components/students-sort/students-sort-detail/students-sort-detail.component';\r\nimport { ChangePassComponent } from './pages/change-pass/change-pass.component';\r\nimport { PlanRoomComponent } from './components/plan-room/plan-room.component';\r\nimport { RegulationObjectComponent } from './components/regulation-object/regulation-object.component';\r\nimport { BlackListComponent } from './components/black-list/black-list.component';\r\nimport { InvoinceComponent } from './components/invoince/invoince.component';\r\nimport { StatisticalMoneyService } from './utils/services/statistical-money.service';\r\nimport { StatisticalMoneyComponent } from './components/statistical-money/statistical-money.component';\r\nimport { InvoiceAddComponent } from './components/invoice-add/invoice-add.component';\r\nimport { PortalChangePassComponent } from './pages/portal/portal-change-pass/portal-change-pass.component';\r\nimport { SearchLogComponent } from './components/search-log/search-log.component';\r\nimport { VersionDetailComponent } from './components/version-detail/version-detail.component';\r\nimport { QuyDinhKhoanThuComponent } from './components/quy-dinh-khoan-thu/quy-dinh-khoan-thu.component';\r\nimport { DeXuatSinhVienComponent } from './components/de-xuat-sinh-vien/de-xuat-sinh-vien.component';\r\nimport { DiemSinhVienComponent } from './components/diem-sinh-vien/diem-sinh-vien.component';\r\nimport { DiemPhongComponent } from './components/diem-phong/diem-phong.component';\r\nimport { DeXuatComponent } from './pages/portal/de-xuat/de-xuat.component';\r\nimport { LichSuSuaChuaComponent } from './components/lich-su-sua-chua/lich-su-sua-chua.component';\r\nimport { ViPhamComponent } from './components/vi-pham/vi-pham.component';\r\nimport { DeveloperSQLComponent } from './components/developer-sql/developer-sql.component';\r\nimport { HinhThucComponent } from './components/hinh-thuc/hinh-thuc.component';\r\nimport { KhenThuongKyLuatComponent } from './components/khen-thuong-ky-luat/khen-thuong-ky-luat.component';\r\nimport { DangKyQuaTrinhComponent } from './components/dang-ky-qua-trinh/dang-ky-qua-trinh.component';\r\nimport { XacNhanSauDaiHocComponent } from './pages/xac-nhan-sau-dai-hoc/xac-nhan-sau-dai-hoc.component';\r\nimport { DonGiaDienNuocComponent } from './components/don-gia-dien-nuoc/don-gia-dien-nuoc.component';\r\nimport { QuanTriEmailComponent } from './components/quan-tri-email/quan-tri-email.component';\r\nimport { TienIchComponent } from './components/tien-ich/tien-ich.component';\r\nimport { KhoanThuAddComponent } from './components/invoince/khoan-thu-add/khoan-thu-add.component';\r\nimport { PortalDangKyTotalPageComponent } from './pages/portal/portal-dang-ky-total-page/portal-dang-ky-total-page.component';\r\nimport { PortalCapNhatThongTinComponent } from './pages/portal/portal-cap-nhat-thong-tin/portal-cap-nhat-thong-tin.component';\r\nimport { LichSuEmailComponent } from './components/lich-su-email/lich-su-email.component';\r\nimport { ThamSoHeThongComponent } from './components/tham-so-he-thong/tham-so-he-thong.component';\r\nimport { LoaiDeXuatComponent } from './components/loai-de-xuat/loai-de-xuat.component';\r\nimport { ThongTinSinhVienComponent } from './pages/portal/thong-tin-sinh-vien/thong-tin-sinh-vien.component';\r\nimport { TemplateEmailComponent } from './components/template-email/template-email.component';\r\nimport { DoiTuongChinhSachComponent } from './components/doi-tuong-chinh-sach/doi-tuong-chinh-sach.component';\r\nconst routes: Routes = [\r\n {\r\n path: 'admin',\r\n component: MainComponent,\r\n canActivate: [AuthGuard],\r\n canActivateChild: [AuthGuard],\r\n children: [\r\n {\r\n path: 'QuyDinhKhoanThu',\r\n component: QuyDinhKhoanThuComponent,\r\n },\r\n {\r\n path: 'tham-so-he-thong',\r\n component: ThamSoHeThongComponent,\r\n },\r\n {\r\n path: 'doi-tuong-chinh-sach',\r\n component: DoiTuongChinhSachComponent,\r\n },\r\n {\r\n path: 'KhoanThu-add',\r\n component: KhoanThuAddComponent,\r\n },\r\n {\r\n path: 'Users-Toa-Nha',\r\n component: UsersToaNhaComponent,\r\n },\r\n {\r\n path: 'black-list',\r\n component: BlackListComponent,\r\n },\r\n {\r\n path: 'statistical-money',\r\n component: StatisticalMoneyComponent,\r\n },\r\n {\r\n path: 'add-payment-regulation',\r\n component: AddPaymentRegulationsComponent,\r\n },\r\n {\r\n path: 'campus',\r\n component: CampusComponent,\r\n },\r\n {\r\n path: 'room-category',\r\n component: RoomCategoryComponent,\r\n },\r\n {\r\n path: 'room-charge',\r\n component: RoomChargeComponent,\r\n },\r\n {\r\n path: 'electricnumber',\r\n component: NumberElectricComponent,\r\n },\r\n {\r\n path: 'waternumber',\r\n component: NumberWaterComponent,\r\n },\r\n {\r\n path: 'device',\r\n component: DeviceComponent,\r\n },\r\n {\r\n path: 'building',\r\n component: BuildingComponent,\r\n },\r\n {\r\n path: 'roomtypes',\r\n component: RoomtypesComponent,\r\n },\r\n {\r\n path: 'room',\r\n component: RoomComponent,\r\n },\r\n {\r\n path: 'roomdetail',\r\n component: RoomdetailComponent,\r\n },\r\n {\r\n path: 'grantcard',\r\n component: GrantcardComponent,\r\n },\r\n {\r\n path: 'listpeopledorm',\r\n component: ListpeopledormComponent,\r\n },\r\n {\r\n path: 'students-sort',\r\n component: StudentsSortComponent,\r\n },\r\n {\r\n path: 'sort-detail',\r\n component: StudentsSortDetailComponent,\r\n },\r\n {\r\n path: 'register-dorm',\r\n component: RegisterDormComponent,\r\n },\r\n {\r\n path: 'access-history',\r\n component: AccessHistoryComponent,\r\n },\r\n {\r\n path: 'access-history-detail',\r\n component: AccessHistoryDetailComponent,\r\n },\r\n {\r\n path: 'app-collection-receipt',\r\n component: CollectionReceiptComponent,\r\n },\r\n {\r\n path: 'receipt-detail',\r\n component: ReceiptDetailComponent,\r\n },\r\n {\r\n path: 'statistical',\r\n component: StatisticalComponent,\r\n },\r\n {\r\n path: 'receipt-destroy',\r\n component: ReceiptDestroyComponent,\r\n },\r\n {\r\n path: 'receipt-destroy-detail',\r\n component: ReceiptDestroyDetailComponent,\r\n },\r\n {\r\n path: 'listpeopledes',\r\n component: ListPeopleDesComponent,\r\n },\r\n {\r\n path: 'change-pass',\r\n component: ChangePassComponent,\r\n },\r\n {\r\n path: 'plan-room',\r\n component: PlanRoomComponent,\r\n },\r\n {\r\n path: '',\r\n component: DashboardComponent,\r\n },\r\n {\r\n path: 'regulation-object',\r\n component: RegulationObjectComponent,\r\n },\r\n {\r\n path: 'invoince',\r\n component: InvoinceComponent,\r\n },\r\n {\r\n path: 'invoince-add',\r\n component: InvoiceAddComponent,\r\n },\r\n {\r\n path: 'search-log',\r\n component: SearchLogComponent,\r\n },\r\n {\r\n path: 'version-detail',\r\n component: VersionDetailComponent,\r\n },\r\n {\r\n path: 'de-xuat-sinh-vien',\r\n component: DeXuatSinhVienComponent,\r\n },\r\n {\r\n path: 'loai-de-xuat',\r\n component: LoaiDeXuatComponent,\r\n },\r\n {\r\n path: 'diem-sinh-vien',\r\n component: DiemSinhVienComponent,\r\n },\r\n {\r\n path: 'diem-phong',\r\n component: DiemPhongComponent,\r\n },\r\n {\r\n path: 'vi-pham',\r\n component: ViPhamComponent,\r\n },\r\n {\r\n path: 'lich-su-sua-chua',\r\n component: LichSuSuaChuaComponent,\r\n },\r\n {\r\n path: 'developer-sql-technical-only',\r\n component: DeveloperSQLComponent,\r\n },\r\n {\r\n path: 'hinhthuc',\r\n component: HinhThucComponent,\r\n },\r\n {\r\n path: 'khenthuongkyluat',\r\n component: KhenThuongKyLuatComponent,\r\n },\r\n {\r\n path: 'bien-dong-quy-dinh-thu',\r\n component: DangKyQuaTrinhComponent,\r\n },\r\n {\r\n path: 'don-gia-dien-nuoc',\r\n component: DonGiaDienNuocComponent,\r\n },\r\n {\r\n path: 'quan-tri-email',\r\n component: QuanTriEmailComponent,\r\n },\r\n {\r\n path: 'lich-su-email',\r\n component: LichSuEmailComponent,\r\n },\r\n {\r\n path: 'template-email',\r\n component: TemplateEmailComponent,\r\n },\r\n {\r\n path: 'tien-ich',\r\n component: TienIchComponent,\r\n },\r\n ],\r\n },\r\n {\r\n path: '',\r\n component: PortalComponent,\r\n canActivate: [AuthGuard],\r\n canActivateChild: [AuthGuard],\r\n children: [\r\n {\r\n path: 'thong-tin-sv',\r\n component: ThongTinSinhVienComponent,\r\n },\r\n\r\n {\r\n path: 'dang-ky',\r\n component: PortalDangKyTotalPageComponent,\r\n },\r\n\r\n {\r\n path: 'portal-change-pass',\r\n component: PortalChangePassComponent,\r\n },\r\n {\r\n path: 'de-xuat',\r\n component: DeXuatComponent,\r\n },\r\n {\r\n path: 'cap-nhat-thong-tin',\r\n component: PortalCapNhatThongTinComponent,\r\n },\r\n ],\r\n },\r\n\r\n {\r\n path: 'login',\r\n component: LoginComponent,\r\n canActivate: [NonAuthGuard],\r\n },\r\n {\r\n path: 'dang-nhap',\r\n component: DangNhapComponent,\r\n canActivate: [NonAuthGuard],\r\n },\r\n\r\n {\r\n path: 'xac-nhan',\r\n component: XacNhanComponent,\r\n canActivate: [NonAuthGuard],\r\n },\r\n {\r\n path: 'xac-nhan-sau-dai-hoc',\r\n component: XacNhanSauDaiHocComponent,\r\n canActivate: [NonAuthGuard],\r\n },\r\n {\r\n path: 'register',\r\n component: RegisterComponent,\r\n canActivate: [NonAuthGuard],\r\n },\r\n { path: '**', redirectTo: '' },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes), BrowserModule, HttpClientModule],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { CookieService } from 'ngx-cookie-service';\nimport { Router } from '@angular/router';\n\nexport class common {\n public LoginResult: ResponseLogin;\n public PortalResult: any;\n public cookieService: CookieService;\n public CheckLogin() {\n this.LoginResult = new ResponseLogin();\n this.LoginResult = this.getUserinfo();\n if (this.LoginResult == null) {\n this.router.navigate(['/login']);\n }\n }\n public CheckLoginPortal() {\n this.LoginResult = new ResponseLogin();\n this.LoginResult = this.getPortalInfo();\n if (this.LoginResult == null) {\n this.router.navigate(['/dang-nhap']);\n }\n }\n constructor(private router: Router) {}\n public getUserinfo() {\n this.LoginResult = JSON.parse(localStorage.getItem('UserInfo'));\n return this.LoginResult;\n }\n public getPortalInfo() {\n this.LoginResult = JSON.parse(localStorage.getItem('PortalInfo'));\n return this.LoginResult;\n }\n login() {\n this.router.navigate(['/']);\n }\n logout() {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n})\nexport class AppComponent {\n \n title = 'UniDormitory';\n}\n","\n

Vui lòng chờ

\n \n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { MainComponent } from './pages/main/main.component';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { HeaderComponent } from './pages/main/header/header.component';\r\nimport { FooterComponent } from './pages/main/footer/footer.component';\r\nimport { MenuSidebarComponent } from './pages/main/menu-sidebar/menu-sidebar.component';\r\nimport { BlankComponent } from './views/blank/blank.component';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { ProfileComponent } from './views/profile/profile.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { RegisterComponent } from './pages/register/register.component';\r\nimport { DashboardComponent } from './views/dashboard/dashboard.component';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { MessagesDropdownMenuComponent } from './pages/main/header/messages-dropdown-menu/messages-dropdown-menu.component';\r\nimport { NotificationsDropdownMenuComponent } from './pages/main/header/notifications-dropdown-menu/notifications-dropdown-menu.component';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { DatePipe } from '@angular/common';\r\nimport {\r\n registerLocaleData,\r\n LocationStrategy,\r\n HashLocationStrategy,\r\n} from '@angular/common';\r\nimport localeEn from '@angular/common/locales/en';\r\nimport { UserDropdownMenuComponent } from './pages/main/header/user-dropdown-menu/user-dropdown-menu.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { CampusComponent } from './components/campus/campus.component';\r\nimport { BuildingComponent } from './components/building/building.component';\r\nimport { RoomtypesComponent } from './components/roomtypes/roomtypes.component';\r\nimport { RoomComponent } from './components/room/room.component';\r\nimport { DeviceComponent } from './components/device/device.component';\r\nimport { RoomdetailComponent } from './components/room/roomdetail/roomdetail.component';\r\nimport { GrantcardComponent } from './components/grantcard/grantcard.component';\r\nimport { ListpeopledormComponent } from './components/listpeopledorm/listpeopledorm.component';\r\nimport { StudentsSortComponent } from './components/students-sort/students-sort.component';\r\nimport { NumberElectricComponent } from './components/number-electric/number-electric.component';\r\nimport { AccessHistoryComponent } from './components/access-history/access-history.component';\r\nimport { AccessHistoryDetailComponent } from './components/access-history/access-history-detail/access-history-detail.component';\r\nimport { RegisterDormComponent } from './components/register-dorm/register-dorm.component';\r\nimport { RoomChargeComponent } from './components/room-charge/room-charge.component';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { NumberWaterComponent } from './components/number-water/number-water.component';\r\nimport { CollectionReceiptComponent } from './components/collection-receipt/collection-receipt.component';\r\nimport { ReceiptDetailComponent } from './components/collection-receipt/receipt-detail/receipt-detail.component';\r\nimport { PrintReceiptComponent } from './components/collection-receipt/print-receipt/print-receipt.component';\r\nimport { StatisticalComponent } from './components/statistical/statistical.component';\r\nimport { ReceiptDestroyComponent } from './components/collection-receipt/receipt-destroy/receipt-destroy.component';\r\nimport { ReceiptDestroyDetailComponent } from './components/collection-receipt/receipt-destroy/receipt-destroy-detail/receipt-destroy-detail.component';\r\nimport { ListPeopleDesComponent } from './components/list-people-des/list-people-des.component';\r\nimport { RoomCategoryComponent } from './components/room-category/room-category.component';\r\nimport { DangNhapComponent } from './pages/dang-nhap/dang-nhap.component';\r\nimport { XacNhanComponent } from './pages/xac-nhan/xac-nhan.component';\r\nimport { PortalComponent } from './pages/portal/portal.component';\r\nimport { PortalFooterComponent } from './pages/portal/portal-footer/portal-footer.component';\r\nimport { PortalHeaderComponent } from './pages/portal/portal-header/portal-header.component';\r\nimport { PortalMenuSidebarComponent } from './pages/portal/portal-menu-sidebar/portal-menu-sidebar.component';\r\nimport { PortalUserDropdownComponent } from './pages/portal/portal-header/portal-user-dropdown/portal-user-dropdown.component';\r\nimport { PortalDangKyComponent } from './pages/portal/portal-dang-ky/portal-dang-ky.component';\r\nimport { AddPaymentRegulationsComponent } from './components/room-charge/add-payment-regulations/add-payment-regulations.component';\r\nimport { CKEditorModule } from '@ckeditor/ckeditor5-angular';\r\nimport { StudentsSortDetailComponent } from './components/students-sort/students-sort-detail/students-sort-detail.component';\r\nimport { ChangePassComponent } from './pages/change-pass/change-pass.component';\r\nimport { ReceiptRoomComponent } from './components/listpeopledorm/receipt-room/receipt-room.component';\r\nimport { RegulationObjectComponent } from './components/regulation-object/regulation-object.component';\r\nimport { PlanRoomComponent } from './components/plan-room/plan-room.component';\r\nimport { BlackListComponent } from './components/black-list/black-list.component';\r\nimport { InvoinceComponent } from './components/invoince/invoince.component';\r\nimport { StatisticalMoneyComponent } from './components/statistical-money/statistical-money.component';\r\nimport { ContractComponent } from './components/listpeopledorm/contract/contract.component';\r\nimport { InvoiceAddComponent } from './components/invoice-add/invoice-add.component';\r\nimport { ReceiptsComponent } from './components/invoince/receipts/receipts.component';\r\nimport { ReceiptPaymentComponent } from './components/invoince/receipt-payment/receipt-payment.component';\r\nimport { PortalChangePassComponent } from './pages/portal/portal-change-pass/portal-change-pass.component';\r\nimport { SearchLogComponent } from './components/search-log/search-log.component';\r\nimport { VersionDetailComponent } from './components/version-detail/version-detail.component';\r\nimport { BaseComponent } from './components/base/base.component';\r\nimport { QuyDinhKhoanThuComponent } from './components/quy-dinh-khoan-thu/quy-dinh-khoan-thu.component';\r\nimport { DeXuatSinhVienComponent } from './components/de-xuat-sinh-vien/de-xuat-sinh-vien.component';\r\nimport { DiemSinhVienComponent } from './components/diem-sinh-vien/diem-sinh-vien.component';\r\nimport { DiemPhongComponent } from './components/diem-phong/diem-phong.component';\r\nimport { DeXuatComponent } from './pages/portal/de-xuat/de-xuat.component';\r\nimport { LichSuSuaChuaComponent } from './components/lich-su-sua-chua/lich-su-sua-chua.component';\r\nimport { DeveloperSQLComponent } from './components/developer-sql/developer-sql.component';\r\nimport { FilterSVComponent } from './components/plan-room/filter-sv/filter-sv.component';\r\nimport { ViPhamComponent } from './components/vi-pham/vi-pham.component';\r\nimport { HinhThucComponent } from './components/hinh-thuc/hinh-thuc.component';\r\nimport { KhenThuongKyLuatComponent } from './components/khen-thuong-ky-luat/khen-thuong-ky-luat.component';\r\nimport { UsersToaNhaComponent } from './components/users-toa-nha/users-toa-nha.component';\r\nimport { DangKyQuaTrinhComponent } from './components/dang-ky-qua-trinh/dang-ky-qua-trinh.component';\r\nimport { XacNhanSauDaiHocComponent } from './pages/xac-nhan-sau-dai-hoc/xac-nhan-sau-dai-hoc.component';\r\nimport { DonGiaDienNuocComponent } from './components/don-gia-dien-nuoc/don-gia-dien-nuoc.component';\r\nimport { QuanTriEmailComponent } from './components/quan-tri-email/quan-tri-email.component';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { KhoanThuAddComponent } from './components/invoince/khoan-thu-add/khoan-thu-add.component';\r\nimport { PortalDangKyTotalPageComponent } from './pages/portal/portal-dang-ky-total-page/portal-dang-ky-total-page.component';\r\nimport { PortalKetQuaComponent } from './pages/portal/portal-ket-qua/portal-ket-qua.component';\r\nimport { ChatBotComponent } from './pages/chat-bot/chat-bot.component';\r\nimport { Ng2SearchPipeModule } from 'ng2-search-filter';\r\nimport { PortalCapNhatThongTinComponent } from './pages/portal/portal-cap-nhat-thong-tin/portal-cap-nhat-thong-tin.component';\r\nimport { LichSuEmailComponent } from './components/lich-su-email/lich-su-email.component';\r\nimport { ThamSoHeThongComponent } from './components/tham-so-he-thong/tham-so-he-thong.component';\r\nimport { NgxPaginationModule } from 'ngx-pagination';\r\nimport { PrintSoPhongComponent } from './components/plan-room/print-so-phong/print-so-phong.component';\r\nimport { LoaiDeXuatComponent } from './components/loai-de-xuat/loai-de-xuat.component';\r\nimport { ThongTinSinhVienComponent } from './pages/portal/thong-tin-sinh-vien/thong-tin-sinh-vien.component';\r\nimport { TemplateEmailComponent } from './components/template-email/template-email.component';\r\nimport { ChartDeXuatComponent } from './components/de-xuat-sinh-vien/chart-de-xuat/chart-de-xuat.component';\r\nregisterLocaleData(localeEn, 'en-EN');\r\nimport * as CanvasJSAngularChart from '../assets/canvasjs.angular.component';\r\nimport { DoiTuongChinhSachComponent } from './components/doi-tuong-chinh-sach/doi-tuong-chinh-sach.component';\r\nimport { TienIchComponent } from './components/tien-ich/tien-ich.component';\r\nimport { FilterSvManualComponent } from './components/plan-room/filter-sv-manual/filter-sv-manual.component';\r\nvar CanvasJSChart = CanvasJSAngularChart.CanvasJSChart;\r\n@NgModule({\r\n declarations: [\r\n RegulationObjectComponent,\r\n AddPaymentRegulationsComponent,\r\n StatisticalComponent,\r\n PrintReceiptComponent,\r\n ReceiptDetailComponent,\r\n CollectionReceiptComponent,\r\n RoomChargeComponent,\r\n NumberElectricComponent,\r\n NumberWaterComponent,\r\n AppComponent,\r\n MainComponent,\r\n LoginComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n MenuSidebarComponent,\r\n BlankComponent,\r\n ProfileComponent,\r\n RegisterComponent,\r\n DashboardComponent,\r\n MessagesDropdownMenuComponent,\r\n NotificationsDropdownMenuComponent,\r\n UserDropdownMenuComponent,\r\n CampusComponent,\r\n BuildingComponent,\r\n RoomtypesComponent,\r\n RoomComponent,\r\n DeviceComponent,\r\n RoomdetailComponent,\r\n GrantcardComponent,\r\n ListpeopledormComponent,\r\n StudentsSortComponent,\r\n AccessHistoryComponent,\r\n AccessHistoryDetailComponent,\r\n RegisterDormComponent,\r\n ReceiptDestroyComponent,\r\n ReceiptDestroyDetailComponent,\r\n ListPeopleDesComponent,\r\n RoomCategoryComponent,\r\n DangNhapComponent,\r\n XacNhanComponent,\r\n PortalComponent,\r\n PortalFooterComponent,\r\n PortalHeaderComponent,\r\n PortalMenuSidebarComponent,\r\n PortalUserDropdownComponent,\r\n PortalDangKyComponent,\r\n StudentsSortDetailComponent,\r\n ChangePassComponent,\r\n ReceiptRoomComponent,\r\n PlanRoomComponent,\r\n BlackListComponent,\r\n InvoinceComponent,\r\n StatisticalMoneyComponent,\r\n ContractComponent,\r\n InvoiceAddComponent,\r\n ReceiptsComponent,\r\n ReceiptPaymentComponent,\r\n PortalChangePassComponent,\r\n SearchLogComponent,\r\n VersionDetailComponent,\r\n BaseComponent,\r\n QuyDinhKhoanThuComponent,\r\n DeXuatSinhVienComponent,\r\n DiemSinhVienComponent,\r\n DiemPhongComponent,\r\n DeXuatComponent,\r\n LichSuSuaChuaComponent,\r\n DeveloperSQLComponent,\r\n FilterSVComponent,\r\n ViPhamComponent,\r\n HinhThucComponent,\r\n KhenThuongKyLuatComponent,\r\n UsersToaNhaComponent,\r\n DangKyQuaTrinhComponent,\r\n XacNhanSauDaiHocComponent,\r\n DonGiaDienNuocComponent,\r\n QuanTriEmailComponent,\r\n KhoanThuAddComponent,\r\n PortalDangKyTotalPageComponent,\r\n PortalKetQuaComponent,\r\n ChatBotComponent,\r\n PortalCapNhatThongTinComponent,\r\n LichSuEmailComponent,\r\n ThamSoHeThongComponent,\r\n PrintSoPhongComponent,\r\n LoaiDeXuatComponent,\r\n ThongTinSinhVienComponent,\r\n TemplateEmailComponent,\r\n ChartDeXuatComponent,\r\n CanvasJSChart,\r\n DoiTuongChinhSachComponent,\r\n TienIchComponent,\r\n FilterSvManualComponent,\r\n ],\r\n imports: [\r\n NgxPaginationModule,\r\n CKEditorModule,\r\n HttpClientModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n DataTablesModule,\r\n ReactiveFormsModule,\r\n BrowserAnimationsModule,\r\n NgxSpinnerModule,\r\n CKEditorModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n ToastrModule.forRoot({\r\n timeOut: 5000,\r\n positionClass: 'toast-top-center',\r\n preventDuplicates: true,\r\n }),\r\n NgbModule,\r\n HttpClientModule,\r\n FormsModule,\r\n NgSelectModule,\r\n Ng2SearchPipeModule,\r\n ],\r\n providers: [\r\n CookieService,\r\n { provide: LocationStrategy, useClass: HashLocationStrategy },\r\n DatePipe,\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\n@Component({\n selector: 'app-access-history-detail',\n templateUrl: './access-history-detail.component.html',\n styleUrls: ['./access-history-detail.component.scss']\n})\nexport class AccessHistoryDetailComponent implements OnInit {\n dtOptions: DataTables.Settings;\n Token: string;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n Masv:any;\n IDphong: any;\n ID_sv:any;\n Ma_thiet_bi_ft: any;\n Ten_thiet_bi_dt: any;\n Trang_thai_ft:any=\"\";\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n constructor(\n private modalService: NgbModal,\n private AccessHistoryService: AccessHistoryService,\n private fb: FormBuilder,\n public router: Router,\n public route: ActivatedRoute,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n this.route.queryParams\n .subscribe(params => {\n this.ID_sv = params.ID_sv;\n this.Masv=params.Ma_sv;\n });\n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_thiet_bi_dt = data[3];\n let Ten_thiet_bi_dt = data[4];\n let Trang_thai_dt=data[5];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let fillter = true;\n if (this.Ma_thiet_bi_ft != undefined) {\n var a = this.removeAccents(Ma_thiet_bi_dt)\n var b = this.removeAccents(this.Ma_thiet_bi_ft)\n bool1 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Ten_thiet_bi_dt != undefined) {\n var a = this.removeAccents(Ten_thiet_bi_dt)\n var b = this.removeAccents(this.Ten_thiet_bi_dt)\n bool2 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Trang_thai_ft != \"\") {\n bool3 = Trang_thai_dt==this.Trang_thai_ft;\n } else {\n bool3 = true;\n }\n fillter = bool1 && bool2 && bool3\n return fillter;\n });\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n \n {\n title: 'Tên phòng',\n },\n {\n title: 'Ngày vào phòng',\n }, \n {\n title: 'Ngày rời phòng',\n },\n \n ],\n };\n this.spinner.show();\n this.AccessHistoryService.Access_History_Detail(this.ID_sv,a.Token).subscribe(z => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.Title = '';\n this.TitleClass = '';\n this.spinner.hide();\n })\n\n }\n removeAccents(str) {\n var AccentsMap = [\n \"aàảãáạăằẳẵắặâầẩẫấậ\",\n \"AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ\",\n \"dđ\", \"DĐ\",\n \"eèẻẽéẹêềểễếệ\",\n \"EÈẺẼÉẸÊỀỂỄẾỆ\",\n \"iìỉĩíị\",\n \"IÌỈĨÍỊ\",\n \"oòỏõóọôồổỗốộơờởỡớợ\",\n \"OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ\",\n \"uùủũúụưừửữứự\",\n \"UÙỦŨÚỤƯỪỬỮỨỰ\",\n \"yỳỷỹýỵ\",\n \"YỲỶỸÝỴ\"\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n \n filterById() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n });\n }\n // create\n \n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n \n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Lịch sử vào ra KTX
  4. \n
  5. Mã sinh viên : {{Masv}}
  6. \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Ten_phong }}{{ p.Ngay_bat_dau |date:'dd/MM/yyyy'}}{{ p.Ngay_ket_thuc |date:'dd/MM/yyyy'}}
\n
\n
\n
\n
\n
\n
\n
\n
\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\n@Component({\n selector: 'app-access-history',\n templateUrl: './access-history.component.html',\n styleUrls: ['./access-history.component.scss']\n})\nexport class AccessHistoryComponent implements OnInit {\n dtOptions: DataTables.Settings;\n dtOptions2: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n Ma_sv_ft: any;\n Ten_sv_ft: any;\n Ten_phong_ft: any;\n dataTable: any = [];\n dataStudent: any = [];\n dataCampus: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n Ma_ToaNha: any;\n Ten_ToaNha: any;\n address: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n datatableElement2: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Action = new FormGroup({\n Ma_ToaNha: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n ]),\n Ten_ToaNha: new FormControl(null, [\n Validators.required,\n Validators.maxLength(255),\n ]),\n ID_CoSo: new FormControl(null),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n Fillter = new FormGroup({\n Ma_sv_ft: new FormControl(null),\n Ten_sv_ft: new FormControl(null),\n Ten_phong_ft: new FormControl(null),\n })\n constructor(\n private modalService: NgbModal,\n private AccessHistoryService: AccessHistoryService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n \n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID sinh viên',\n visible: false,\n },\n {\n title: 'Mã sinh viên',\n },\n {\n title: 'Tên sinh viên',\n },\n {\n title: 'Ngày sinh',\n },\n // {\n // title: 'Tên phòng',\n // },\n {\n title: 'Thao tác',\n width: \"18%\",\n className: \"dt-center\"\n },\n ],\n };\n this.dtOptions2 = {\n pagingType: 'full_numbers',\n pageLength: 10,\n dom: 'Bfrtip',\n buttons: [\n {\n extend: 'excelHtml5', text: '  Xuất excel ',\n titleAttr: 'Xuất excel ',\n className: \"btn-sm\",\n exportOptions: {\n columns: [0, 1, 2],\n orthogonal: 'export',\n className: \"btn btn-success\",\n format: {\n body: function (data, row, column, node) {\n return data;\n }\n }\n },\n },\n ],\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'Tên phòng',\n },\n {\n title: 'Ngày vào phòng',\n },\n {\n title: 'Ngày rời phòng',\n },\n ],\n };\n this.getList(a.Token);\n }\n\n fillTable(){\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_sv_dt = data[1];\n let Ten_sv_dt = data[2];\n let Ten_phong_dt = data[4];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let fillter = true;\n if (this.Ma_sv_ft != undefined) {\n let a = this.removeAccents(Ma_sv_dt)\n let b = this.removeAccents(this.Ma_sv_ft)\n bool1 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Ten_sv_ft != undefined) {\n let a = this.removeAccents(Ten_sv_dt)\n let b = this.removeAccents(this.Ten_sv_ft)\n bool2 = a.toLowerCase().includes(b.toLowerCase())\n }\n\n fillter = bool1 && bool2\n return fillter;\n });\n }\n\n getList(token) {\n // this.spinner.show();\n this.AccessHistoryService.Access_History(token).subscribe((z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.Title = '';\n this.TitleClass = '';\n // this.spinner.hide();\n });\n }\n filterById() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fillTable();\n }\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n this.dtTrigger.unsubscribe();\n if(this.dt2Trigger){\n this.dt2Trigger.unsubscribe();\n }\n $.fn['dataTable'].ext.search.pop();\n }\n removeAccents(str) {\n var AccentsMap = [\n \"aàảãáạăằẳẵắặâầẩẫấậ\",\n \"AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ\",\n \"dđ\", \"DĐ\",\n \"eèẻẽéẹêềểễếệ\",\n \"EÈẺẼÉẸÊỀỂỄẾỆ\",\n \"iìỉĩíị\",\n \"IÌỈĨÍỊ\",\n \"oòỏõóọôồổỗốộơờởỡớợ\",\n \"OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ\",\n \"uùủũúụưừửữứự\",\n \"UÙỦŨÚỤƯỪỬỮỨỰ\",\n \"yỳỷỹýỵ\",\n \"YỲỶỸÝỴ\"\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n open(content, sizm, Loai, Data) {\n // this.datatableElement.dtInstance.then(\n // (dtInstance:any=$('#sinhviendt').DataTable() ) => {\n // dtInstance.destroy();\n // }\n // );\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'View') {\n // this.dataStudent = [];\n // var table = $('#sinhviendt').DataTable();\n // table.destroy();\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.reopen(Data,a)\n }\n }\n reopen(Data,a){\n this.AccessHistoryService.Access_History_Detail(Data, a.Token).subscribe(z => {\n this.dataStudent = z.Data;\n // this.dt2Trigger.next();\n })\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Lịch xử vào ra KTX
  4. \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_sv }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh |date:'dd/MM/yyyy' }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

Chi tiết lịch sử ra vào

\n ×\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Ten_phong }}{{ p.Ngay_bat_dau |date:'dd/MM/yyyy'}}{{ p.Ngay_ket_thuc |date:'dd/MM/yyyy'}}
\n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n","import { extend } from 'jquery';\r\nimport { Component, OnInit, Inject } from '@angular/core';\r\nimport { ListpeopledormService } from 'src/app/Utils/services/listpeopledorm.service';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { CampusService } from 'src/app/Utils/services/campus.service';\r\nimport { BuildingService } from 'src/app/Utils/services/building.service';\r\nimport { RoomService } from 'src/app/Utils/services/room.service';\r\nimport { GrantCardService } from 'src/app/Utils/services/grantcard.service';\r\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\r\nimport { SystemService } from 'src/app/Utils/services/system.service';\r\nimport { QuyDinhKhoanThuService } from 'src/app/utils/services/quy-dinh-khoan-thu.service';\r\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ExportService } from 'src/app/Utils/services/export.service';\r\nimport { StudentSortService } from 'src/app/Utils/services/student-sort.service';\r\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\r\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { StatisticalMoneyService } from 'src/app/utils/services/statistical-money.service';\r\nimport { LichSuSuaChuaService } from 'src/app/utils/services/lichsusuachua.service';\r\nimport { DeviceService } from 'src/app/Utils/services/device.service';\r\nimport { DeXuatSinhVienService } from 'src/app/utils/services/de-xuat-sinh-vien.service';\r\nimport { DiemSinhVienService } from 'src/app/utils/services/diem-sinh-vien.service';\r\nimport { ViPhamService } from 'src/app/utils/services/vi-pham.service';\r\nimport { HinhThucService } from 'src/app/utils/services/hinhthuc.service';\r\nimport { KhenThuongKyLuatService } from 'src/app/utils/services/khenthuongkyluat.service';\r\nimport { DiemPhongService } from 'src/app/utils/services/diem-phong.service';\r\nimport { UserToaNhaService } from 'src/app/utils/services/user-toa-nha.service';\r\nimport { DangKyQuaTrinhServiceService } from 'src/app/utils/services/dang-ky-qua-trinh-service.service';\r\nimport { DonGiaDienNuocService } from 'src/app/utils/services/don-gia-dien-nuoc.service';\r\nimport { QuanTriEmailService } from 'src/app/utils/services/quan-tri-email.service';\r\nimport { InvoinceService } from 'src/app/Utils/services/invoince.service';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { NumberElectricService } from 'src/app/utils/services/number-electric.service';\r\nimport { ListallService } from 'src/app/utils/services/listall.service';\r\nimport { NumberWaterComponent } from '../number-water/number-water.component';\r\nimport { NumberWaterService } from 'src/app/utils/services/number-water.service';\r\nimport { WebSocketService } from 'src/app/utils/services/web-socket.service';\r\nimport { ThamSoHeThongService } from 'src/app/utils/services/tham-so-he-thong.service';\r\nimport { SoPhongService } from 'src/app/utils/services/so-phong.service';\r\nimport { TemplateEmailService } from 'src/app/utils/services/template-email.service';\r\nimport { DoiTuongChinhSachComponent } from '../doi-tuong-chinh-sach/doi-tuong-chinh-sach.component';\r\nimport { DoiTuongChinhSachService } from 'src/app/utils/services/doi-tuong-chinh-sach.service';\r\n\r\n@Component({\r\n selector: 'app-base',\r\n templateUrl: './base.component.html',\r\n styleUrls: ['./base.component.scss'],\r\n})\r\nexport class BaseComponent implements OnInit {\r\n constructor(\r\n @Inject(AppConfig)\r\n public readonly appConfig: AppConfiguration,\r\n public StatisticalMoneyService: StatisticalMoneyService,\r\n public RoomCategoryRegisterService: RoomCategoryRegisterService,\r\n public ListAccessHistory: AccessHistoryService,\r\n public ListpeopledormService: ListpeopledormService,\r\n public router: Router,\r\n public spinner: NgxSpinnerService,\r\n public CampusService: CampusService,\r\n public BuildingService: BuildingService,\r\n public RoomService: RoomService,\r\n public RegisterDormService: RegisterDormService,\r\n public GrantCardService: GrantCardService,\r\n public SystemService: SystemService,\r\n public RoomcategoryService: RoomcategoryService,\r\n public modalService: NgbModal,\r\n public toastr: ToastrService,\r\n public ListAllService: ListallService,\r\n public exportService: ExportService,\r\n public RoomCateGoryService: RoomcategoryService,\r\n public Service: StudentSortService,\r\n private datePipe: DatePipe,\r\n public QuyDinhKhoanThuService: QuyDinhKhoanThuService,\r\n public LichSuSuaChuaService: LichSuSuaChuaService,\r\n public DeviceService: DeviceService,\r\n public DeXuatSinhVienService: DeXuatSinhVienService,\r\n public DiemSinhVienService: DiemSinhVienService,\r\n public ViPhamService: ViPhamService,\r\n public HinhThucService: HinhThucService,\r\n public KhenThuongKyLuatService: KhenThuongKyLuatService,\r\n public DiemPhongService: DiemPhongService,\r\n public UserToaNhaService: UserToaNhaService,\r\n public DangKyQuaTrinhServiceService: DangKyQuaTrinhServiceService,\r\n public DonGiaDienNuocService: DonGiaDienNuocService,\r\n public route: ActivatedRoute,\r\n public QuanTriEmailService: QuanTriEmailService,\r\n public InvoinceService: InvoinceService,\r\n public NumberElectricService: NumberElectricService,\r\n public NumberWaterService: NumberWaterService,\r\n public WebSocketService: WebSocketService,\r\n public ThamSoHeThongService: ThamSoHeThongService,\r\n public DoiTuongChinhSachService: DoiTuongChinhSachService,\r\n public SoPhongService: SoPhongService,\r\n private fb: FormBuilder,\r\n private fromBuilder: FormBuilder,\r\n public TemplateEmailService: TemplateEmailService\r\n ) {}\r\n public arrNumberPage: any = [];\r\n arrNumberPage_chil: any = [];\r\n numberPage: any;\r\n page: any = 1;\r\n pages: any = 10000;\r\n public pageSizes1: any = 10000;\r\n public pageSize: any = 10;\r\n public pageSizes: any = [10, 20, 50, 100, 200, 500, 1000, 'Tất cả'];\r\n public dataTable: any = [];\r\n public dataChecked: any = [];\r\n public dataCampus: any = [];\r\n public dataBuilding: any = [];\r\n public dataRoom: any = [];\r\n public dataQuyetDinh: any = [];\r\n public dataTypeRoom: any = [];\r\n dataBuildingChange: any;\r\n public com: common;\r\n public Token: any;\r\n public ID_toa_nha: any = '';\r\n public ID_co_so: any = '';\r\n public ID_phong: any = '';\r\n public ID_loai_phong: any = '';\r\n public getNull = false;\r\n public totalItem: number;\r\n totalItemFilter: any;\r\n isDisplay: boolean = true;\r\n submitted = false;\r\n closeResult: string;\r\n dataPopup: any = {};\r\n searchString: any = '';\r\n\r\n ngOnInit(): void {}\r\n public getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n buttonFilter() {\r\n this.isDisplay = !this.isDisplay;\r\n }\r\n changeCampus(id) {\r\n this.spinner.show();\r\n this.getListBuilding(id);\r\n }\r\n changeRoom(id_toanha) {\r\n this.getListRoom(id_toanha);\r\n }\r\n //get data campus\r\n getListCampus() {\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCampus = z.Data;\r\n });\r\n }\r\n //get data building\r\n getListBuilding(id) {\r\n this.ID_toa_nha = '';\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n this.dataBuilding = z.Data.filter((x) => {\r\n this.spinner.hide();\r\n return x.ID_CoSo == id;\r\n });\r\n if (this.dataBuilding.length > 0) {\r\n this.getListRoom(this.dataBuilding[0].ID_ToaNha);\r\n } else {\r\n this.ID_toa_nha = '';\r\n }\r\n });\r\n }\r\n //get data room\r\n getListRoom(id) {\r\n this.ID_phong = '';\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n this.dataRoom = z.Data.filter((x) => {\r\n return x.ID_Toa_Nha == id;\r\n });\r\n });\r\n }\r\n //get data type room\r\n getListHinhThuc() {\r\n this.HinhThucService.GetAll(this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.dataQuyetDinh = z.Data;\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n });\r\n }\r\n getListTypeRoom() {\r\n this.RoomcategoryService.getList(this.getNull, this.Token).subscribe(\r\n (z) => {\r\n this.dataTypeRoom = z.Data;\r\n }\r\n );\r\n }\r\n changeCampusRep(id) {\r\n this.dataBuildingChange = this.dataBuildingChange.filter((x) => {\r\n return x.ID_CoSo == id;\r\n });\r\n }\r\n checkAllCheckBox(ev) {\r\n this.dataTable.forEach((x) => (x.checked = ev.target.checked));\r\n }\r\n isAllCheckBoxChecked() {\r\n if (this.dataTable != undefined)\r\n return this.dataTable.every((p) => p.checked);\r\n }\r\n test() {\r\n this.dataChecked = this.dataTable.filter((x) => x.checked == true);\r\n }\r\n createNumberPage(totalItem, pageSize) {\r\n let numberPage = 0;\r\n let arrNumberPage = [];\r\n if (totalItem % pageSize == 0) {\r\n numberPage = Math.floor(totalItem / pageSize);\r\n } else {\r\n numberPage = Math.floor(totalItem / pageSize) + 1;\r\n }\r\n for (var i = 1; i <= numberPage; i++) {\r\n arrNumberPage.push(i);\r\n }\r\n let arrNumberPage_chil = [];\r\n if (arrNumberPage.length > 4) {\r\n for (var i = 1; i <= 4; i++) {\r\n arrNumberPage_chil.push(i);\r\n }\r\n } else {\r\n arrNumberPage_chil = arrNumberPage;\r\n }\r\n return {\r\n numberPage: numberPage,\r\n arrNumberPage_chil: arrNumberPage_chil,\r\n };\r\n }\r\n handlePageChange(event) {\r\n if (event == 'pre') {\r\n this.page = this.page - 1;\r\n } else if (event == 'next') {\r\n this.page = this.page + 1;\r\n } else {\r\n this.page = event;\r\n this.arrNumberPage_chil = [];\r\n for (var i = event - 3; i <= event + 3; i++) {\r\n if (i > 0 && i <= this.numberPage) {\r\n this.arrNumberPage_chil.push(i);\r\n }\r\n }\r\n }\r\n }\r\n xoa_dau(str) {\r\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\r\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\r\n str = str.replace(/ì|í|ị|ỉ|ĩ|ị/g, 'i');\r\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\r\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\r\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\r\n str = str.replace(/đ/g, 'd');\r\n str = str.replace(/À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, 'A');\r\n str = str.replace(/È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ/g, 'E');\r\n str = str.replace(/Ì|Í|Ị|Ỉ|Ĩ/g, 'I');\r\n str = str.replace(/Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ/g, 'O');\r\n str = str.replace(/Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ/g, 'U');\r\n str = str.replace(/Ỳ|Ý|Ỵ|Ỷ|Ỹ/g, 'Y');\r\n str = str.replace(/Đ/g, 'D');\r\n str = str.replace(/\\u0300|\\u0301|\\u0303|\\u0309|\\u0323/g, ''); // huyền, sắc, hỏi, ngã, nặng\r\n str = str.replace(/\\u02C6|\\u0306|\\u031B/g, ''); // mũ â (ê), mũ ă, mũ ơ (ư)\r\n return str;\r\n }\r\n\r\n getToken() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n }\r\n}\r\n","

base works!

\n","import { Component, OnInit, ViewChild, Input,Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { BlackListService } from 'src/app/Utils/services/black-list.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\nimport { DatePipe } from '@angular/common';\nimport { AbstractControl } from '@angular/forms';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-black-list',\n templateUrl: './black-list.component.html',\n styleUrls: ['./black-list.component.scss'],\n})\nexport class BlackListComponent implements OnInit {\n ID: number;\n closeResult: string;\n dtOptions: DataTables.Settings;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n submitted = false;\n Request: any;\n Action = new FormGroup({\n code: new FormControl(null, [removeSpaces]),\n Ho_ten: new FormControl(null),\n Ngay_sinh: new FormControl(null),\n Que_quan: new FormControl(null),\n Ghi_chu: new FormControl(null, [Validators.maxLength(500)]),\n });\n Filter = new FormGroup({\n Ma_sv_filter: new FormControl(null),\n Ho_ten_filter: new FormControl(null),\n });\n\n constructor(\n @Inject(AppConfig) \n private readonly appConfig: AppConfiguration,\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private BlackListService: BlackListService,\n private RegisterDormService: RegisterDormService,\n public datepipe: DatePipe,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n public com: common;\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'Mã sinh viên',\n },\n {\n title: 'Họ tên',\n },\n {\n title: 'Ngày sinh',\n },\n {\n title: 'Quê quán',\n },\n {\n title: 'Ghi chú',\n },\n {\n title: 'Thao tác',\n className: 'dt-center',\n width: '12%',\n },\n ],\n order: [[0, 'desc']],\n };\n\n this.getList(a.Token);\n }\n ngAfterViewInit() { }\n getList(token) {\n // this.spinner.show();\n this.BlackListService.getList(token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.dataTable = [];\n this.dtTrigger.next();\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n //get list table all\n filterById(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_sv_data = data[0];\n let Ho_ten_data = data[1];\n let bool1 = true;\n let bool2 = true;\n if (\n this.Filter.value.Ma_sv_filter != undefined ||\n this.Filter.value.Ma_sv_filter != null\n ) {\n var a = Ma_sv_data;\n var b = this.Filter.value.Ma_sv_filter;\n bool1 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (\n this.Filter.value.Ho_ten_filter != undefined ||\n this.Filter.value.Ho_ten_filter != null\n ) {\n var a = Ho_ten_data;\n var b = this.Filter.value.Ho_ten_filter;\n bool2 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (bool1 && bool2) {\n return true;\n }\n return false;\n });\n }\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.ID = Data.ID_danh_sach_den;\n }\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n search() {\n if (this.Action.controls.code.value == null) {\n return false;\n }\n this.RegisterDormService.getSVbyMa(\n this.Action.controls.code.value,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 5) {\n this.toastr.error('Mã sinh viên không đúng. Xin vui lòng nhập lại!');\n } else if (z.Status == 1) {\n this.ID = z.Data[0].ID_sv;\n if (z.Data[0].Ngay_sinh != null) {\n var date = new Date(z.Data[0].Ngay_sinh);\n var latest_date = this.datepipe.transform(date, 'dd/MM/yyyy');\n }\n this.Action.patchValue({\n Ma_sv: z.Data[0].Ma_sv ? z.Data[0].Ma_sv : '',\n Ho_ten: z.Data[0].Ho_ten ? z.Data[0].Ho_ten : '',\n Ngay_sinh: z.Data[0].Ngay_sinh ? latest_date : '',\n Que_quan: z.Data[0].Que_quan ? z.Data[0].Que_quan : '',\n });\n }\n });\n }\n onSubmit() {\n if (this.Action.controls.Ho_ten.value == null) {\n this.toastr.warning('Bạn chưa nhập sinh viên!');\n return false;\n }\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.Create();\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.BlackListService.Delete(this.ID, this.Token).subscribe(\n (z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList(this.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n Create() {\n let input = {\n ID_sv: this.ID,\n Ghi_chu: this.Action.controls.Ghi_chu.value,\n };\n this.BlackListService.Insert(input, this.Token).subscribe(\n (z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList(this.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_DSHanChe;\n window.open(urlHelp,'_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Danh sách hạn chế
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh|date:'dd/MM/yyyy' }}{{ p.Que_quan }}{{ p.Ghi_chu }}\n \n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

Thêm danh sách

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n\n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { BuildingService } from 'src/app/Utils/services/building.service';\nimport { AbstractControl } from '@angular/forms';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-building',\n templateUrl: './building.component.html',\n styleUrls: ['./building.component.scss'],\n})\nexport class BuildingComponent implements OnInit {\n dtOptions: DataTables.Settings;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n dataTable: any = [];\n dataCampus: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n Ma_ToaNha: any;\n Ten_ToaNha: any;\n address: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Action = new FormGroup({\n Ma_ToaNha: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n Ten_ToaNha: new FormControl(null, [\n Validators.required,\n Validators.maxLength(255),\n removeSpaces,\n ]),\n ID_CoSo: new FormControl(null, [Validators.required]),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n\n constructor(\n @Inject(AppConfig)\n private readonly appConfig: AppConfiguration,\n private modalService: NgbModal,\n private BuildingService: BuildingService,\n private CampusService: CampusService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) {}\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Mã tòa nhà',\n },\n {\n title: 'Tên tòa nhà',\n },\n {\n title: 'Cơ sở đào tạo',\n },\n {\n title: 'Thao tác',\n className: 'dt-center',\n width: '12%',\n },\n ],\n order: [[0, 'desc']],\n };\n this.getList(a.Token);\n }\n\n getList(token) {\n this.spinner.show();\n this.BuildingService.getList(token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.getListCampus(this.Token);\n this.spinner.hide();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.dataTable = [];\n this.dtTrigger.next();\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n //get list table all\n\n getListCampus(token) {\n // this.spinner.show();\n this.CampusService.getList(token).subscribe((z) => {\n this.dataCampus = z.Data;\n });\n }\n //get list table all\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa tòa nhà';\n this.check = Data.Ma_ToaNha;\n this.checkAction = true;\n this.ID_ToaNha = Data.ID_ToaNha;\n this.Action.setValue({\n Ma_ToaNha: Data.Ma_ToaNha,\n Ten_ToaNha: Data.Ten_ToaNha,\n ID_CoSo: Data.ID_CoSo,\n });\n } else if (Loai == 'Add') {\n this.titleModal = 'Thêm mới tòa nhà';\n this.checkAction = false;\n this.Action.reset();\n } else if (Loai == 'Delete') {\n this.ID_ToaNha = Data.ID_ToaNha;\n }\n }\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n create() {\n let InputDatas = {\n ID_ToaNha: this.ID_ToaNha,\n Ma_ToaNha: this.Action.value.Ma_ToaNha,\n Ten_ToaNha: this.Action.value.Ten_ToaNha,\n ID_CoSo: this.Action.value.ID_CoSo,\n };\n if (this.checkAction == true) {\n if (this.check == this.Action.value.Ma_ToaNha) {\n this.BuildingService.Update(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else if (z.Status == 5) {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(this.Token);\n });\n } else {\n if (\n this.dataTable.some((x) => {\n return x.Ma_ToaNha == this.Action.value.Ma_ToaNha;\n }) == false\n ) {\n this.BuildingService.Update(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 9) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(this.Token);\n }\n });\n } else {\n this.toastr.warning('Mã đã tồn tại');\n }\n }\n } else {\n if (\n this.dataTable.some((x) => {\n return x.Ma_ToaNha == this.Action.value.Ma_ToaNha;\n }) == false\n ) {\n this.BuildingService.Insert(InputDatas, this.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.error('Thêm mới thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Thêm mới thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(this.Token);\n } else {\n this.toastr.success(z.Message);\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n } else {\n this.toastr.warning('Đã tồn tại mã !');\n }\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n let ID = this.ID_ToaNha;\n this.BuildingService.Delete(ID, this.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList(this.Token);\n });\n }\n help() {\n const urlHelp =\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QLNha;\n window.open(urlHelp, '_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Tòa nhà
  4. \n
\n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_ToaNha }}{{ p.Ma_ToaNha }}{{ p.Ten_ToaNha }}{{ p.Ten_CoSo }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Mã tòa nhà không được bỏ trống!\n
\n
\n Mã tòa nhà tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Tên tòa nhà không được bỏ trống!\n
\n
\n Tên tòa nhà tối đa 255 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Cơ sở không được bỏ trống!\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input,Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-campus',\n templateUrl: './campus.component.html',\n styleUrls: ['./campus.component.scss'],\n})\nexport class CampusComponent implements OnInit {\n dtOptions: DataTables.Settings;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n code: any;\n name: any;\n address: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải cơ sở...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Insert = new FormGroup({\n ID: new FormControl(null),\n code: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n name: new FormControl(null, [\n Validators.required,\n Validators.maxLength(255),\n removeSpaces,\n ]),\n address: new FormControl(null, [Validators.maxLength(255), removeSpaces]),\n });\n\n constructor(\n @Inject(AppConfig) \n private readonly appConfig: AppConfiguration,\n private modalService: NgbModal,\n private CampusService: CampusService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) {}\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Mã cơ sở',\n },\n {\n title: 'Tên cơ sở',\n },\n {\n title: 'Địa chỉ',\n },\n {\n title: 'Thao tác',\n width: '75px',\n },\n ],\n order: [[0, 'desc']],\n };\n\n this.getList(a.Token);\n }\n\n getList(token) {\n this.spinner.show();\n this.CampusService.getList(token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.Title = '';\n this.TitleClass = '';\n this.spinner.hide();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.dataTable = [];\n this.dtTrigger.next();\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n //get\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa cơ sở';\n this.checkInsert = true;\n this.Insert.get('ID').setValue(Data.ID);\n this.Insert.get('code').setValue(Data.code);\n this.Insert.get('name').setValue(Data.name);\n this.Insert.get('address').setValue(Data.address);\n this.check = Data.code;\n this.ID = Data.ID;\n this.code = Data.code;\n this.name = Data.name;\n this.address = Data.address;\n } else if (Loai == 'Add') {\n this.titleModal = 'Thêm mới cơ sở';\n this.checkInsert = false;\n this.Insert.reset();\n } else if (Loai == 'Delete') {\n this.ID = Data.ID;\n }\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n }\n // create\n create() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID: this.ID,\n code: this.code,\n name: this.name,\n address: this.address,\n };\n let code = $('#code').val();\n\n if (this.checkInsert == true) {\n if (this.check == $('#code').val()) {\n this.CampusService.Update(InputDatas, a.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else {\n this.CampusService.CheckExist(code, a.Token).subscribe(\n (z) => {\n if (z.Status == 9) {\n this.CampusService.Update(InputDatas, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Cập nhật thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã cơ sở!');\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n } else {\n this.CampusService.CheckExist(code, a.Token).subscribe(\n (z) => {\n if (z.Status == 9) {\n this.CampusService.Insert(InputDatas, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Thêm mới thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Thêm mới thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã cơ sở!');\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let ID = this.ID;\n this.CampusService.CheckDelete(ID, a.Token).subscribe(\n (z) => {\n if (z.Status == 9) {\n this.CampusService.Delete(ID, a.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n } else if (z.Status == 8) {\n this.toastr.warning(\n 'Không thể xóa do đã tồn tại tòa nhà trong cơ sở!'\n );\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_QLCoSo;\n window.open(urlHelp,'_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Cơ sở
  4. \n
\n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID }}{{ p.code }}{{ p.name }}{{ p.address }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Mã cơ sở không được bỏ trống!\n
\n
\n Mã cơ sở tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Tên cơ sở không được bỏ trống!\n
\n
\n Tên cơ sở tối đa 255 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Địa chỉ tối đa 255 ký tự!\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\nimport { CollectionReceiptService } from 'src/app/utils/services/collection-receipt.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\n@Component({\n selector: 'app-collection-receipt',\n templateUrl: './collection-receipt.component.html',\n styleUrls: ['./collection-receipt.component.scss'],\n})\nexport class CollectionReceiptComponent implements OnInit {\n dtOptions: DataTables.Settings;\n Token: string;\n Res: any;\n req: any;\n check: any;\n LyDo: string = '';\n ID_ToaNha: any;\n dataTable: any = [];\n dataRooms: any = [];\n dataDetailReceipt: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_phieu: any;\n Noi_dung: any;\n address: any;\n titleModal: string;\n default: any;\n Id_bien_lai: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Action = new FormGroup({\n So_phieu: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n ]),\n Noi_dung: new FormControl(null, [\n Validators.required,\n Validators.maxLength(255),\n ]),\n ID_phong: new FormControl(null),\n Ten_sv: new FormControl(null),\n Ma_sv: new FormControl(null),\n Ngay_thu: new FormControl(null),\n Nguoi_thu: new FormControl(null),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n\n FillSoPhieu: any;\n FillNoiDung: any;\n FillDoiTuong: any = '';\n FillTrangThaiO: any = '';\n FillHoTen: any;\n FillPhong: any;\n FillNgayThu: any;\n FillThoiGianVisa: any;\n\n constructor(\n private modalService: NgbModal,\n private ReceiptService: CollectionReceiptService,\n private RoomService: RoomService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Số phiếu',\n },\n {\n title: 'Nội dung',\n },\n {\n title: 'Tên sinh viên',\n },\n {\n title: 'Phòng',\n },\n\n {\n title: 'Ngày thu',\n },\n {\n title: 'Người thu',\n },\n {\n title: 'Thao tác',\n className: 'dt-center',\n },\n ],\n \"order\": [[0, \"desc\"]]\n };\n this.getList(a.Token);\n }\n getList(token) {\n this.spinner.show();\n this.ReceiptService.getList(token).subscribe((z) => {\n if (z.Status == 1) {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.getListRoom(this.Token);\n }\n else {\n this.toastr.error(z.Message);\n }\n this.spinner.hide();\n });\n }\n //get list table all\n\n getListDetailReceipt(ID,ID_phong) {\n // this.spinner.show();\n this.ReceiptService.GetAllDetailreceipt(ID,ID_phong, this.Token).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n });\n }\n\n getListRoom(token) {\n // this.spinner.show();\n this.RoomService.GetAll(token).subscribe((z) => {\n this.dataRooms = z.Data;\n });\n }\n //get list table all\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa biên lai';\n this.check = Data.So_phieu;\n this.checkAction = true;\n this.Action.setValue({\n So_phieu: Data.So_phieu,\n Noi_dung: Data.Noi_dung,\n ID_phong: Data.ID_phong,\n Ten_sv: Data.Ten_sv,\n Ma_sv: Data.Ma_sv,\n Ngay_thu: Data.Ngay_thu.substring(0, 10),\n Nguoi_thu: Data.Nguoi_thu,\n });\n this.getListDetailReceipt(Data.ID_bien_lai,Data.ID_phong);\n } else {\n this.Id_bien_lai = Data.ID_bien_lai;\n }\n }\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n create() {\n let InputDatas = {\n ID_ToaNha: this.ID_ToaNha,\n So_phieu: this.Action.value.So_phieu,\n Noi_dung: this.Action.value.Noi_dung,\n ID_phong: this.Action.value.ID_phong,\n };\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n if (this.LyDo != '') {\n const dt = {\n ID_bien_lai: this.Id_bien_lai,\n Ly_Do: this.LyDo\n }\n this.ReceiptService.Delete(dt, this.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList(this.Token);\n });\n }\n else {\n this.toastr.warning('Nhập lý do hủy biên lai')\n }\n }\n\n filterTable(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let bool1 = true,\n bool2 = true,\n bool3 = true,\n bool4 = true,\n bool5 = true;\n if (this.FillSoPhieu != undefined) {\n bool1 = data[1].toLowerCase().includes(this.FillSoPhieu.toLowerCase());\n }\n if (this.FillNoiDung != undefined) {\n bool2 = data[2].toLowerCase().includes(this.FillNoiDung.toLowerCase());\n }\n if (this.FillHoTen != undefined) {\n bool3 = data[3].toLowerCase().includes(this.FillHoTen.toLowerCase());\n }\n if (this.FillPhong != undefined) {\n bool4 = data[4].toLowerCase().includes(this.FillPhong.toLowerCase());\n }\n if (this.FillNgayThu != undefined) {\n const date1 = this.FillNgayThu.split('-')\n .reverse()\n .join('-');\n // const date2 = data[5].substring(3, 10);\n bool5 = data[5].toLowerCase().includes(date1.toLowerCase());\n }\n if (bool1 && bool2 && bool3 && bool4 && bool5) {\n return true;\n }\n return false;\n });\n }\n}\n","
\n \n
\n\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{ p.ID_bien_lai }}\n {{ p.So_phieu }}\n {{ p.Noi_dung }}\n {{ p.Ten_sv }}\n {{ p.Ten_phong }}\n {{ p.Ngay_thu | date: 'dd-MM-yyyy' }}\n {{ p.Nguoi_thu }}\n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n
\n\n \n

{{ titleModal }}

\n ×\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n Số biên lai không được bỏ trống!\n
\n
\n Số biên lai tối đa 20 ký tự!\n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n Nội dung biên lai không được bỏ trống!\n
\n
\n Nội dung biên lai tối đa 255 ký tự!\n
\n
\n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Noi_dung }}{{ p.Ten_Khoan_thu }}{{ p.So_tien }}{{ p.Phan_tram_mien_giam }}{{ p.So_tien_mien_giam }}{{ p.Thanh_tien }}\n \n \n \n \n \n \n
\n
\n \n \n
\n
\n \n Đóng\n \n \n Lưu\n \n
\n
\n
\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn muốn hủy biên lai này\n

\n \n
\n \n Hủy bỏ\n \n \n Đồng ý\n \n
\n
\n
\n
\n","import { Component, OnInit, Input, SimpleChanges, TemplateRef } from '@angular/core';\n\n@Component({\n selector: 'app-print-receipt',\n templateUrl: './print-receipt.component.html',\n styleUrls: ['./print-receipt.component.scss'],\n})\nexport class PrintReceiptComponent implements OnInit {\n @Input() dt_print = {\n So_bl: '',\n Ho_ten: '',\n Ngay_thu: '',\n So_phong: '',\n Ma_sv: '',\n Pament: [],\n };\n @Input() typeReceipt:any;\n // tmlPrintEW:TemplateRef;\n studyClass: any;\n date: any = new Date();\n arr_number: any = [\n 'không',\n 'một',\n 'hai',\n 'ba',\n 'bốn',\n 'năm',\n 'sáu',\n 'bảy',\n 'tám',\n 'chín',\n ];\n money_words: any;\n dt_payment: any = [];\n dt_money: any = 0;\n constructor() {}\n\n ngOnInit() {\n \n }\n DocTienBangChu(so) {\n if (so == 0) return this.arr_number[0];\n let chuoi = '',\n hauto = '';\n do {\n let ty = so % 1000000000;\n so = Math.floor(so / 1000000000);\n if (so > 0) {\n chuoi = this.dochangtrieu(ty, true) + hauto + chuoi;\n } else {\n chuoi = this.dochangtrieu(ty, false) + hauto + chuoi;\n }\n hauto = ' tỷ';\n } while (so > 0);\n return chuoi.charAt(1).toUpperCase() + chuoi.slice(2);\n } //đọc tiền\n\n dochangchuc(so, daydu) {\n let chuoi = '';\n let chuc = Math.floor(so / 10);\n let donvi = so % 10;\n if (chuc > 1) {\n chuoi = ' ' + this.arr_number[chuc] + ' mươi';\n if (donvi == 1) {\n chuoi += ' mốt';\n }\n } else if (chuc == 1) {\n chuoi = ' mười';\n if (donvi == 1) {\n chuoi += ' một';\n }\n } else if (daydu && donvi > 0) {\n chuoi = ' lẻ';\n }\n\n if (donvi == 5 && chuc >= 1) {\n chuoi += ' lăm';\n } else if (donvi > 1 || (donvi == 1 && chuc == 0)) {\n chuoi += ' ' + this.arr_number[donvi];\n }\n return chuoi;\n }\n\n docblock(so, daydu) {\n let chuoi = '';\n let tram = Math.floor(so / 100);\n so = so % 100;\n if (daydu || tram > 0) {\n chuoi = ' ' + this.arr_number[tram] + ' trăm';\n chuoi += this.dochangchuc(so, true);\n } else {\n chuoi = this.dochangchuc(so, false);\n }\n return chuoi;\n }\n\n dochangtrieu(so, daydu) {\n let chuoi = '';\n let trieu = Math.floor(so / 1000000);\n so = so % 1000000;\n if (trieu > 0) {\n chuoi = this.docblock(trieu, daydu) + ' triệu';\n daydu = true;\n }\n let nghin = Math.floor(so / 1000);\n so = so % 1000;\n if (nghin > 0) {\n chuoi += this.docblock(nghin, daydu) + ' nghìn';\n daydu = true;\n }\n if (so > 0) {\n chuoi += this.docblock(so, daydu);\n }\n return chuoi;\n }\n ngOnChanges(changes: SimpleChanges) {\n this.dt_payment = [];\n if (this.dt_print.Pament) {\n for (let i in this.dt_print.Pament) {\n this.dt_payment.push(this.dt_print.Pament[i]);\n this.dt_money += this.dt_print.Pament[i].Thanh_tien;\n }\n this.money_words = this.DocTienBangChu(this.dt_money);\n this.studyClass = this.dt_print.Pament[0].Ten_lop;\n }\n }\n}\n","\n\n \n \n\n

\n                   \n    BỘ GIÁO DỤC VÀ ĐÀO TẠO     \n                      \n                      \n                                   \n                                    \n Số biên lai : {{ dt_print.So_bl }}\n

\n

\n    TRƯỜNG ĐH KINH DOANH & CÔNG NGHỆ HÀ NỘI \n                      \n                                     \n                                           \n      \n (Liên1)    \n   \n

\n

 

\n

\n CHỈ SỐ TIÊU THỤ ĐIỆN-NƯỚC SINH HOẠT PHÒNG {{ dt_print.So_phong }}\n

\n

\n \n

\n \n \n \n \n \n
\n Trưởng phòng : {{ dt_print.Ho_ten }}\n \n \n Mã SV : {{ dt_print.Ma_sv }}\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTNội dungChỉ số cũChỉ số mớiChỉ số sử dụng thángĐơn giáThành tiền
{{count + 1 }}{{p.Noi_dung }}{{p.Chi_so_cu }}{{p.Chi_so_moi }}{{p.Chi_so_moi - p.Chi_so_cu }}{{p.Don_gia | number}}{{p.Thanh_tien | number}}
Tổng tiền \n

{{dt_money | number }}

\n
\n
\n \n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n
\n
\n Từ sơn , Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm {{date | date: 'yyyy'}}\n
\n
\n
\n
\n \n           Người nộp\n tiền                              \n                                 Người\n thu tiền\n \n
\n
\n \n           (Ký, họ tên) \n                                                                     (Ký,\n họ tên)    \n \n \n
\n \n

 

\n

 

\n
\n
\n
\n
\n
\n
\n \n

\n         \n

\n \n

\n                   \n    BỘ GIÁO DỤC VÀ ĐÀO TẠO     \n                      \n                      \n                                   \n                                    \n Số biên lai : {{ dt_print.So_bl }}\n

\n

\n    TRƯỜNG ĐH KINH DOANH & CÔNG NGHỆ HÀ NỘI \n                      \n                                     \n                                           \n      \n (Liên2)    \n   \n

\n

 

\n

\n CHỈ SỐ TIÊU THỤ ĐIỆN-NƯỚC SINH HOẠT PHÒNG {{ dt_print.So_phong }}\n

\n

\n \n

\n \n \n \n \n \n
\n Trưởng phòng : {{ dt_print.Ho_ten }}\n \n \n Mã SV : {{ dt_print.Ma_sv }}\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTNội dungChỉ số cũChỉ số mớiChỉ số sử dụng thángĐơn giáThành tiền
{{count + 1 }}{{p.Noi_dung }}{{p.Chi_so_cu }}{{p.Chi_so_moi }}{{p.Chi_so_moi - p.Chi_so_cu }}{{p.Don_gia | number}}{{p.Thanh_tien | number}}
Tổng tiền \n

{{dt_money | number }}

\n
\n
\n \n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n
\n
\n Từ sơn , Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm {{date | date: 'yyyy'}}\n
\n
\n
\n
\n \n           Người nộp\n tiền                              \n                                 Người\n thu tiền\n \n
\n
\n \n           (Ký, họ tên) \n                                                                     (Ký,\n họ tên)    \n \n \n
\n \n

 

\n

 

\n
\n
\n\n\n\n

\n                   \n    BỘ GIÁO DỤC VÀ ĐÀO TẠO     \n                      \n                      \n                                   \n                                    \n Số biên lai : {{ dt_print.So_bl }}\n

\n

\n    TRƯỜNG ĐH KINH DOANH & CÔNG NGHỆ HÀ NỘI \n                      \n                                     \n                                           \n      \n (Liên1)    \n   \n

\n

 

\n

\n BIÊN LAI THU TIỀN PHÒNG {{ dt_print.So_phong }}\n

\n

\n ({{ date | date: 'dd/MM/yyyy' }})\n

\n \n \n \n \n \n \n \n \n \n
\n Họ tên : {{ dt_print.Ho_ten }}\n \n \n Mã SV : {{ dt_print.Ma_sv }}\n \n
\n Lớp : {{ studyClass }}\n \n \n \n Số phòng : {{ dt_print.So_phong }}\n \n
\n \n \n \n \n
\n Số tiền nộp : \n {{\n dt_money | number\n }} đ\n
\n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n Khoản nộp :\n \n \n {{ p.Ten_khoan_thu }} {{ p.Thang }}/{{ p.Nam }} :\n {{ p.Thanh_tien | number }} đ,\n \n \n {{ p.Ten_khoan_thu }} học kì {{ p.Hoc_ky }} năm {{ p.Nam_hoc }} :\n {{ p.Thanh_tien | number }} đ ,\n \n \n
\n

\n           Người nộp\n tiền                              \n                           Người\n thu tiền\n

\n

\n           (Ký, họ tên) \n                                                               (Ký,\n họ tên)    \n \n

\n

 

\n

 

\n
\n
\n
\n
\n
\n

\n         \n

\n

\n                   \n    BỘ GIÁO DỤC VÀ ĐÀO TẠO     \n                      \n                      \n                                   \n                                    \n Số biên lai : {{ dt_print.So_bl }}\n

\n

\n    TRƯỜNG ĐH KINH DOANH & CÔNG NGHỆ HÀ NỘI \n                      \n                                     \n                                           \n      \n (Liên2)    \n   \n

\n

 

\n

\n BIÊN LAI THU TIỀN PHÒNG {{ dt_print.So_phong }}\n

\n

\n ({{ date | date: 'dd/MM/yyyy' }})\n

\n \n \n \n \n \n \n \n \n \n
\n Họ tên : {{ dt_print.Ho_ten }}\n \n \n Mã SV : {{ dt_print.Ma_sv }}\n \n
\n Lớp : {{ studyClass }}\n \n \n \n Số phòng : {{ dt_print.So_phong }}\n \n
\n \n \n \n \n
\n Số tiền nộp : \n {{\n dt_money | number\n }}đ\n
\n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n Khoản nộp :\n \n \n {{ p.Ten_khoan_thu }} {{ p.Thang }}/{{ p.Nam }} :\n {{ p.Thanh_tien | number}} đ,\n \n \n {{ p.Ten_khoan_thu }} học kì {{ p.Hoc_ky }} năm {{ p.Nam_hoc }} :\n {{ p.Thanh_tien | number }} đ,\n \n \n
\n

\n           Người nộp\n tiền                              \n                           Người\n thu tiền\n

\n

\n           (Ký, họ tên) \n                                                               (Ký,\n họ tên)    \n \n

\n

 

\n

 

\n
\n\n","import {\n Component,\n OnInit,\n ViewChild,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n AbstractControl,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { CollectionReceiptService } from 'src/app/utils/services/collection-receipt.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-receipt-destroy-detail',\n templateUrl: './receipt-destroy-detail.component.html',\n styleUrls: ['./receipt-destroy-detail.component.scss'],\n})\nexport class ReceiptDestroyDetailComponent implements OnInit {\n @Input() dt_print = {};\n dt_payment: any = [];\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n dataTable: any = [];\n dataRooms: any = [];\n dataDetailReceipt: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_phieu: any;\n Noi_dung: any;\n address: any;\n titleModal: string;\n default: any;\n ID_bien_lai: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n Ten_phong: any;\n Request: any;\n @ViewChild('Confirm') Confirm: TemplateRef;\n Action = new FormGroup({\n So_phieu: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n ]),\n Noi_dung: new FormControl(null, [Validators.required]),\n ID_phong: new FormControl(null, [Validators.required]),\n Ten_sv: new FormControl(null, [Validators.required]),\n Ma_sv: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n Ngay_thu: new FormControl(null, [Validators.required]),\n Nguoi_thu: new FormControl(null, [Validators.required, removeSpaces]),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n\n constructor(\n public route: ActivatedRoute,\n private modalService: NgbModal,\n private ReceiptService: CollectionReceiptService,\n private RoomService: RoomService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n\n this.route.queryParams.subscribe((params) => {\n this.ID_bien_lai = params.ID_bien_lai;\n });\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 25,\n ordering: false,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n order: [[0, 'desc']],\n };\n\n this.getList();\n }\n\n getList() {\n this.spinner.show();\n this.ReceiptService.getListDestroy(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.dataTable = z.Data.filter((x) => {\n return x.ID_bien_lai == this.ID_bien_lai;\n });\n if (this.dataTable.length > 0) {\n this.Action.setValue({\n So_phieu: this.dataTable[0].So_phieu,\n Noi_dung: this.dataTable[0].Noi_dung,\n ID_phong: this.dataTable[0].ID_phong,\n Ten_sv: this.dataTable[0].Ten_sv,\n Ma_sv: this.dataTable[0].Ma_sv,\n Ngay_thu: this.dataTable[0].Ngay_thu != undefined ? this.dataTable[0].Ngay_thu.substring(0, 10) : '',\n Nguoi_thu: this.dataTable[0].Nguoi_thu,\n });\n this.getListDetailReceipt(this.ID_bien_lai, this.dataTable[0].ID_phong);\n }\n } else {\n this.toastr.error(z.Message);\n }\n this.spinner.hide();\n });\n }\n\n getListDetailReceipt(ID, ID_phong) {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.ReceiptService.GetAllDetailreceipt(ID, ID_phong, this.Token).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n this.getListRoom();\n this.dtTrigger.next();\n });\n }\n\n getListRoom() {\n // this.spinner.show();\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRooms = z.Data;\n });\n }\n //get list table all\n\n ModalConfim(content, sizm) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n } //modal\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.ModalConfim(this.Confirm, 'xs');\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n\n checkAll(ev) {\n this.dataDetailReceipt.forEach((x) => (x.state = ev.target.checked));\n }\n\n isAllChecked() {\n return this.dataDetailReceipt.every((_) => _.state);\n }\n\n onChangePhong($event) {\n this.Ten_phong =\n $event.target.options[$event.target.options.selectedIndex].text;\n }\n\n Print() {\n let ten_phong = this.dataRooms.filter((x) => {\n if (x.ID_Phong == this.Action.value.ID_phong) {\n return x;\n }\n });\n this.dt_print = {\n So_bl: this.Action.value.So_phieu,\n Ngay_thu: this.Action.value.Ngay_thu,\n Ho_ten: this.Action.value.Ten_sv,\n So_phong: ten_phong[0].Ten_phong,\n Ma_sv: this.Action.value.Ma_sv,\n Pament: this.dataDetailReceipt,\n };\n setTimeout(() => {\n let printContents = document.getElementById('print-section').innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n\n mywindow.print();\n // mywindow.close();\n }, 200);\n this.modalService.dismissAll('DeleteModal');\n }\n\n Add() {\n this.dt_payment = [];\n let ds_khoan_nop = '';\n this.dataDetailReceipt.forEach((x) => {\n if (x.state == true) {\n this.dt_payment.push(x);\n ds_khoan_nop += x.ID_quy_dinh_khoan_nop + ',';\n }\n });\n this.dt_print = {\n So_bl: this.Action.value.So_phieu,\n Ngay_thu: this.Action.value.Ngay_thu,\n Ho_ten: this.Action.value.Ten_sv,\n So_phong: this.Ten_phong,\n Ma_sv: this.Action.value.Ma_sv,\n Pament: this.dt_payment,\n };\n\n if (ds_khoan_nop == '') {\n this.toastr.warning('Chưa chọn khoản nộp !');\n } else {\n let obj_receipt = {\n So_phieu: this.Action.value.So_phieu,\n ID_sv: this.dataDetailReceipt[0].ID_sv,\n ID_phong: this.Action.value.ID_phong,\n Noi_dung: this.Action.value.Noi_dung,\n Nguoi_thu: this.Action.value.Nguoi_thu,\n Ngay_thu: this.Action.value.Ngay_thu,\n };\n this.ReceiptService.Insert(\n obj_receipt,\n ds_khoan_nop,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 9) {\n this.toastr.warning(z.Message);\n }\n if (z.Status == 5) {\n this.toastr.error(z.Message);\n }\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n let printContents = document.getElementById('print-section')\n .innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n setTimeout(() => {\n mywindow.print();\n // mywindow.close();\n }, 400);\n\n this.modalService.dismissAll('DeleteModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.FillSutudent();\n }\n });\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n FillSutudent() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n if (!this.ID_bien_lai) {\n this.spinner.show();\n this.ReceiptService.GetAllCodeDetailreceipt(\n this.Action.value.Ma_sv,\n this.Token\n ).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n this.getListRoom();\n if (this.dataDetailReceipt.length > 0) {\n this.Action.patchValue({\n Ten_sv: this.dataDetailReceipt[0].Ho_ten,\n ID_phong: this.dataDetailReceipt[0].ID_phong,\n });\n }\n this.dtTrigger.next();\n this.spinner.hide();\n });\n }\n }\n\n ngAfterViewInit() {\n this.dtTrigger.next();\n }\n\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. \n Biên lai hủy\n
  4. \n
  5. Biên lai chi tiết
  6. \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n Mã sinh viên không được bỏ trống!\n
\n
\n
\n
\n
\n \n \n
\n
\n Tên sinh viên không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Số biên lai không được bỏ trống!\n
\n
\n Số biên lai tối đa 20 ký tự!\n
\n
\n
\n \n
\n \n \n
\n
\n Phòng không được bỏ trống!\n
\n
\n
\n \n
\n \n \n
\n
\n Ngày thu không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Người thu không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Nội dung biên lai không được bỏ trống!\n
\n
\n Nội dung biên lai tối đa 255 ký tự!\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Nội dungTên khoản thuHọc kìNăm họcThángNămNgày quy địnhSố tiềnPhần trăm miễn giảmSố tiền miễn giảmThành tiền
\n \n {{ p.Noi_dung }}{{ p.Ten_Khoan_thu }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Thang }}{{ p.Nam }}{{ p.Ngay_quy_dinh | date: 'dd/MM/yyyy' }}{{ p.So_tien | currency: 'VND' }}{{ p.Phan_tram_mien_giam }}{{ p.So_tien_mien_giam }}\n {{ p.Thanh_tien | currency: 'VND' }}\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n
\n

\n Bạn có chắc chắn tạo biên lai\n

\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n \n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\nimport { timeout } from 'rxjs/operators';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { CollectionReceiptService } from 'src/app/utils/services/collection-receipt.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\n\n@Component({\n selector: 'app-receipt-destroy',\n templateUrl: './receipt-destroy.component.html',\n styleUrls: ['./receipt-destroy.component.scss']\n})\nexport class ReceiptDestroyComponent implements OnInit {\n dtOptions: DataTables.Settings;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n dataTable: any = [];\n dataRooms: any = [];\n dataDetailReceipt: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_phieu: any;\n Noi_dung: any;\n address: any;\n titleModal: string;\n default: any;\n Id_bien_lai: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Action = new FormGroup({\n So_phieu: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n ]),\n Noi_dung: new FormControl(null, [\n Validators.required,\n Validators.maxLength(255),\n ]),\n ID_phong: new FormControl(null),\n Ten_sv: new FormControl(null),\n Ma_sv: new FormControl(null),\n Ngay_thu: new FormControl(null),\n Nguoi_thu: new FormControl(null),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n\n FillSoPhieu: any;\n FillNoiDung: any;\n FillDoiTuong: any = '';\n FillTrangThaiO: any = '';\n FillHoTen: any;\n FillPhong: any;\n FillNgayThu: any;\n FillThoiGianVisa: any;\n\n constructor(\n private modalService: NgbModal,\n private ReceiptService: CollectionReceiptService,\n private RoomService: RoomService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) {}\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Số phiếu',\n },\n {\n title: 'Nội dung',\n },\n {\n title: 'Lý do',\n },\n {\n title: 'Tên sinh viên',\n },\n {\n title: 'Phòng',\n },\n\n {\n title: 'Ngày thu',\n },\n {\n title: 'Người thu',\n },\n {\n title: 'Thao tác',\n className: 'dt-center',\n },\n ],\n \"order\": [[ 0, \"desc\" ]]\n };\n this.getList(a.Token);\n }\n getList(token) {\n this.spinner.show();\n this.ReceiptService.getListDestroy(token).subscribe((z) => {\n if (z.Status == 1) {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.getListRoom(this.Token);\n }\n else{\n this.toastr.error(z.Message);\n }\n this.spinner.hide();\n });\n }\n //get list table all\n\n getListDetailReceipt(ID,ID_phong) {\n // this.spinner.show();\n this.ReceiptService.GetAllDetailreceipt(ID,ID_phong, this.Token).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n });\n }\n\n getListRoom(token) {\n // this.spinner.show();\n this.RoomService.GetAll(token).subscribe((z) => {\n this.dataRooms = z.Data;\n });\n }\n //get list table all\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa biên lai';\n this.check = Data.So_phieu;\n this.checkAction = true;\n this.Action.setValue({\n So_phieu: Data.So_phieu,\n Noi_dung: Data.Noi_dung,\n ID_phong: Data.ID_phong,\n Ten_sv: Data.Ten_sv,\n Ma_sv: Data.Ma_sv,\n Ngay_thu: Data.Ngay_thu.substring(0, 10),\n Nguoi_thu: Data.Nguoi_thu,\n });\n this.getListDetailReceipt(Data.ID_bien_lai,Data.ID_phong);\n } else {\n this.Id_bien_lai = Data.ID_bien_lai;\n }\n }\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n create() {\n let InputDatas = {\n ID_ToaNha: this.ID_ToaNha,\n So_phieu: this.Action.value.So_phieu,\n Noi_dung: this.Action.value.Noi_dung,\n ID_phong: this.Action.value.ID_phong,\n };\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n\n filterTable(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let bool1 = true,\n bool2 = true,\n bool3 = true,\n bool4 = true,\n bool5 = true,\n bool6 = true,\n bool7 = true;\n if (this.FillSoPhieu != undefined) {\n bool1 = data[1].toLowerCase().includes(this.FillSoPhieu.toLowerCase());\n }\n if (this.FillNoiDung != undefined) {\n bool2 = data[2].toLowerCase().includes(this.FillNoiDung.toLowerCase());\n }\n if (this.FillHoTen != undefined) {\n bool3 = data[3].toLowerCase().includes(this.FillHoTen.toLowerCase());\n }\n if (this.FillPhong != undefined) {\n bool4 = data[4].toLowerCase().includes(this.FillPhong.toLowerCase());\n }\n if (this.FillNgayThu != undefined) {\n const date1 = this.FillNgayThu.split('-')\n .reverse()\n .join('-');\n // const date2 = data[5].substring(3, 10);\n bool5 = data[5].toLowerCase().includes(date1.toLowerCase());\n }\n if (bool1 && bool2 && bool3 && bool4 && bool5 ) {\n return true;\n }\n return false;\n });\n }\n}\n","
\n \n
\n\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{ p.ID_bien_lai }}\n {{ p.So_phieu }}\n {{ p.Noi_dung }}\n {{ p.Ly_Do }}\n {{ p.Ten_sv }}\n {{ p.Ten_phong }}\n {{ p.Ngay_thu | date: 'dd-MM-yyyy' }}\n {{ p.Nguoi_thu }}\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n
\n\n \n

{{ titleModal }}

\n ×\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n Số biên lai không được bỏ trống!\n
\n
\n Số biên lai tối đa 20 ký tự!\n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n \n \n
\n
\n \n \n \n
\n Nội dung biên lai không được bỏ trống!\n
\n
\n Nội dung biên lai tối đa 255 ký tự!\n
\n
\n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Noi_dung }}{{ p.Ten_Khoan_thu }}{{ p.So_tien }}{{ p.Phan_tram_mien_giam }}{{ p.So_tien_mien_giam }}{{ p.Thanh_tien }}\n \n \n \n
\n
\n \n \n
\n
\n \n Đóng\n \n \n Lưu\n \n
\n
\n
\n","import { Component, OnInit, ViewChild, Input, TemplateRef } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n AbstractControl,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { timeout } from 'rxjs/operators';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { CollectionReceiptService } from 'src/app/utils/services/collection-receipt.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'receipt-detail',\n templateUrl: './receipt-detail.component.html',\n styleUrls: ['./receipt-detail.component.scss'],\n})\nexport class ReceiptDetailComponent implements OnInit {\n @Input() dt_print = {};\n dt_payment: any = [];\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n dataTable: any = [];\n dataRooms: any = [];\n dataDetailReceipt: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_phieu: any;\n Noi_dung: any;\n address: any;\n titleModal: string;\n default: any;\n ID_bien_lai: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n Ten_phong: any;\n Request: any;\n User: any;\n typeReceipt: any;\n tempdatatable:any;\n @ViewChild('Confirm') Confirm: TemplateRef;\n Action = new FormGroup({\n So_phieu: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n ]),\n Noi_dung: new FormControl(null, [\n Validators.required,\n ]),\n ID_phong: new FormControl(null, [\n Validators.required,\n ]),\n Ten_sv: new FormControl(null, [\n Validators.required,\n ]),\n Ma_sv: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces\n ]),\n Ngay_thu: new FormControl(null, [\n Validators.required,\n ]),\n Nguoi_thu: new FormControl(null, [\n Validators.required,\n removeSpaces\n ]),\n Loai_Khoan_Nop: new FormControl(null, [\n Validators.required,\n ]),\n // address: new FormControl(null, [Validators.maxLength(255)]),\n });\n\n constructor(\n public route: ActivatedRoute,\n private modalService: NgbModal,\n private ReceiptService: CollectionReceiptService,\n private RoomService: RoomService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n \n\n this.route.queryParams.subscribe((params) => {\n this.ID_bien_lai = params.ID_bien_lai;\n });\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.User = a.Info;\n this.Token = a.Token;\n\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 25,\n ordering: false,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n \"order\": [[0, \"desc\"]]\n };\n\n this.getList();\n }\n\n getList() {\n this.spinner.show();\n this.ReceiptService.getList(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.dataTable = z.Data.filter((x) => {\n return x.ID_bien_lai == this.ID_bien_lai;\n });\n if (this.dataTable.length > 0) {\n this.Action.patchValue({\n So_phieu: this.dataTable[0].So_phieu,\n Noi_dung: this.dataTable[0].Noi_dung,\n ID_phong: this.dataTable[0].ID_phong,\n Ten_sv: this.dataTable[0].Ten_sv,\n Ma_sv: this.dataTable[0].Ma_sv,\n Ngay_thu: this.dataTable[0].Ngay_thu != undefined ? this.dataTable[0].Ngay_thu.substring(0, 10) : '',\n Nguoi_thu: this.dataTable[0].Nguoi_thu,\n });\n this.getListDetailReceipt(this.ID_bien_lai, this.dataTable[0].ID_phong);\n }\n } else {\n this.toastr.error(z.Message);\n }\n this.spinner.hide();\n });\n }\n\n filterTable() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let bool1 = true\n if (this.Action.value.Loai_Khoan_Nop != \"\") {\n bool1 = (this.Action.value.Loai_Khoan_Nop) == (parseInt(data[11]) <= 11 ? 10 : 16);\n }\n if (bool1) {\n return true;\n }\n return false;\n });\n }\n\n getListDetailReceipt(ID, ID_phong) {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.ReceiptService.GetAllDetailreceipt(ID, ID_phong, this.Token).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n const khoanthu = this.dataDetailReceipt[0].ID_khoan_thu <= 11 ? 10 : 16;\n this.Action.patchValue({\n Loai_Khoan_Nop: khoanthu\n });\n this.getListRoom();\n this.dtTrigger.next();\n });\n }\n\n getListRoom() {\n // this.spinner.show();\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRooms = z.Data;\n });\n }\n //get list table all\n\n ModalConfim(content, sizm) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n } //modal\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.ModalConfim(this.Confirm, 'xs')\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n }\n // create\n\n checkAll(ev) {\n this.dataDetailReceipt.forEach((x) => (x.state = ev.target.checked));\n }\n\n isAllChecked() {\n return this.dataDetailReceipt.every((_) => _.state);\n }\n\n onChangePhong($event) {\n this.Ten_phong =\n $event.target.options[$event.target.options.selectedIndex].text;\n }\n\n Print() {\n this.typeReceipt = this.Action.value.Loai_Khoan_Nop\n let ten_phong = this.dataRooms.filter((x) => {\n if (x.ID_Phong == this.Action.value.ID_phong) {\n return x;\n }\n });\n this.dt_print = {\n So_bl: this.Action.value.So_phieu,\n Ngay_thu: this.Action.value.Ngay_thu,\n Ho_ten: this.Action.value.Ten_sv,\n So_phong: ten_phong[0].Ten_phong,\n Ma_sv: this.Action.value.Ma_sv,\n Pament: this.dataDetailReceipt,\n };\n setTimeout(() => {\n let printContents = document.getElementById('print-section').innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n\n mywindow.print();\n // mywindow.close();\n }, 200);\n this.modalService.dismissAll('DeleteModal');\n }\n\n Add() {\n let ds_khoan_nop = '';\n this.dataDetailReceipt.forEach((x) => {\n if (x.state == true) {\n this.dt_payment.push(x);\n ds_khoan_nop += x.ID_quy_dinh_khoan_nop + ',';\n }\n });\n\n const tempcheck = (this.dataDetailReceipt.filter((t) => t.state == true).every((x) => {\n return (parseInt(this.Action.value.Loai_Khoan_Nop) === (x.ID_khoan_thu <= 11 ? 10 : 16));\n }\n ));\n this.dt_print = {\n So_bl: this.Action.value.So_phieu,\n Ngay_thu: this.Action.value.Ngay_thu,\n Ho_ten: this.Action.value.Ten_sv,\n So_phong: this.Ten_phong,\n Ma_sv: this.Action.value.Ma_sv,\n Pament: this.dt_payment,\n };\n\n if (ds_khoan_nop == '') {\n this.toastr.warning('Chưa chọn khoản nộp !');\n } else {\n let obj_receipt = {\n So_phieu: this.Action.value.So_phieu,\n ID_sv: this.dataDetailReceipt[0].ID_sv,\n ID_phong: this.Action.value.ID_phong,\n Noi_dung: this.Action.value.Noi_dung,\n Nguoi_thu: this.Action.value.Nguoi_thu,\n Ngay_thu: this.Action.value.Ngay_thu,\n };\n if (tempcheck) {\n this.typeReceipt = this.Action.value.Loai_Khoan_Nop\n\n this.ReceiptService.Insert(\n obj_receipt,\n ds_khoan_nop,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 9) {\n this.toastr.warning(z.Message);\n }\n if (z.Status == 5) {\n this.toastr.error(z.Message);\n }\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n let printContents = document.getElementById('print-section')\n .innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n setTimeout(() => {\n mywindow.print();\n // mywindow.close();\n }, 400);\n this.modalService.dismissAll('DeleteModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.FillSutudent();\n }\n });\n }\n else {\n this.toastr.error(\"Bạn không thể chọn cả loại khoản nộp khác nhau\");\n }\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n } // key close modal\n\n FillSutudent() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n if (!this.ID_bien_lai) {\n this.spinner.show();\n this.ReceiptService.GetAllCodeDetailreceipt(\n this.Action.value.Ma_sv,\n this.Token\n ).subscribe((z) => {\n this.dataDetailReceipt = z.Data;\n this.getListRoom();\n if (this.dataDetailReceipt.length > 0) {\n let loaikhoanthu = this.dataDetailReceipt[0].ID_khoan_thu <= 11 ? 10 : 16;\n this.Action.patchValue({\n Ten_sv: this.dataDetailReceipt[0].Ho_ten,\n ID_phong: this.dataDetailReceipt[0].ID_phong,\n Nguoi_thu: this.User.FullName,\n Loai_Khoan_Nop: ''\n });\n }\n this.dtTrigger.next();\n this.spinner.hide();\n });\n }\n } // tìm kiếm theo mã sinh viên\n\n runScript(e) {\n if (e.keyCode == 13) {\n this.FillSutudent();\n }\n} // nhạp key enter tim kiem\n\n ngAfterViewInit() {\n this.dtTrigger.next();\n }\n\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. \n Biên lai thu\n
  4. \n
  5. Biên lai chi tiết
  6. \n
\n
\n
\n
\n \n Lưu\n \n
\n
\n \n In\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n \n
\n \n
\n Mã sinh viên không được bỏ trống!\n
\n
\n
\n
\n
\n \n \n \n
\n Tên sinh viên không được bỏ trống!\n
\n
\n
\n
\n \n \n \n
\n Số biên lai không được bỏ trống!\n
\n
\n Số biên lai tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n {{ item.Ten_phong }}\n \n \n
\n Phòng không được bỏ trống!\n
\n
\n \n
\n \n \n \n
\n Chọn khoản nộp !\n
\n
\n \n
\n \n \n \n
\n Ngày thu không được bỏ trống!\n
\n
\n \n
\n \n \n \n
\n Người thu không được bỏ trống!\n
\n
\n \n
\n \n \n \n
\n Nội dung biên lai không được bỏ trống!\n
\n
\n Nội dung biên lai tối đa 255 ký tự!\n
\n
\n \n \n \n \n \n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n Nội dung\n Tên khoản thu\n Học kì\n Năm học\n Tháng\n Năm\n Ngày quy định\n Số tiền\n Phần trăm miễn giảm\n Số tiền miễn giảm\n Khoản thu\n Thành tiền\n \n \n \n \n \n \n \n {{ p.Noi_dung }}\n {{ p.Ten_khoan_thu }}\n {{ p.Hoc_ky }}\n {{ p.Nam_hoc }}\n {{ p.Thang }}\n {{ p.Nam }}\n {{ p.Ngay_quy_dinh | date: 'dd/MM/yyyy' }}\n {{ p.So_tien | currency: 'VND' }}\n {{ p.Phan_tram_mien_giam }}\n {{ p.So_tien_mien_giam }}\n {{p.ID_khoan_thu }} \n \n {{ p.Thanh_tien | currency: 'VND' }}\n \n \n \n \n
\n
\n
\n
\n
\n\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn tạo biên lai\n

\n
\n
\n \n Hủy bỏ\n \n \n Đồng ý\n \n
\n
\n \n Hủy bỏ\n \n \n Đồng ý\n \n
\n
\n
\n
\n\n\n
\n \n
\n\n\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-dang-ky-qua-trinh',\n templateUrl: './dang-ky-qua-trinh.component.html',\n styleUrls: ['./dang-ky-qua-trinh.component.scss'],\n})\nexport class DangKyQuaTrinhComponent extends BaseComponent implements OnInit {\n Ma_sv: any = '';\n Ho_ten: any = '';\n Ngay_sinh: any;\n Ten_phong: any;\n Hoc_ky: any;\n Nam_hoc: any;\n ID_toa_nha: any;\n So_lan_bien_dong: any;\n Token: string;\n dataKhoanNopKTX: any = [];\n tableData: any = [];\n dataDetail: any = [];\n public com: common;\n ngOnInit() {\n \n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.TongHop(true);\n this.getListBuilding();\n }\n TongHop(Recount) {\n let req = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Ma_sv: this.Ma_sv,\n Ho_ten: this.Ho_ten,\n Ngay_sinh: this.Ngay_sinh,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n ID_toa_nha: this.ID_toa_nha,\n Ten_phong: this.Ten_phong,\n So_lan_bien_dong: this.So_lan_bien_dong,\n };\n this.spinner.show();\n this.DangKyQuaTrinhServiceService.TongHop(req, this.Token).subscribe(\n (z) => {\n this.spinner.hide();\n this.dataTable = z.Data;\n if (Recount) {\n this.DangKyQuaTrinhServiceService.TongHop_Count(\n req,\n this.Token\n ).subscribe((z) => {\n this.spinner.hide();\n this.totalItem = z.TotalNumber;\n this.totalItemFilter = z.FilterNumber;\n this.numberPage = this.createNumberPage(\n z.FilterNumber,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.FilterNumber,\n this.pageSize\n ).arrNumberPage_chil;\n });\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 401) {\n this.dataTable = [];\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 1000000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.TongHop(false);\n }\n refesh() {}\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n this.TongHop(false);\n }\n getListBuilding() {\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n });\n }\n open(content, sizm, type, data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.DangKyQuaTrinhServiceService.Detail(\n data.ID_dang_ky,\n this.Token\n ).subscribe((z) => {\n this.dataDetail = z.Data;\n });\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_BienDongKT;\n window.open(urlHelp,'_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Biến động khoản thu
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTMã sinh viênHọ tênNgày sinhHọc kỳNăm họcLầnTòa nhà - PhòngTiền phòngTiền cượcTổng tiềnSố lần biến độngThao tác
{{ p.RowNum }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Lan }}{{ p.Ten_toa_nha }} - {{ p.Ten_phong }}{{ p.Tien_phong | number }}{{ p.Tien_cuoc | number }}{{ p.Tong_tien | number }}{{ p.So_lan_bien_dong }}\n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

Quá trình đăng ký

\n ×\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Tòa nhà - PhòngTừ ngàyĐến ngàyNội dungTiền cượcTiền phòngTổng tiền
{{ p.Ten_toa_nha }}-{{ p.Ten_phong }}{{ p.Tu_ngay | date: 'dd/MM/yyyy'}}{{ p.Den_ngay | date: 'dd/MM/yyyy'}}{{ p.Noi_dung }}{{ p.Tien_cuoc | number}}{{ p.Tien_phong | number}}{{ p.Tong_tien | number}}
Không có kết quả
\n
\n
\n
","import { Component, OnInit ,VERSION} from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { DeXuatSinhVienService } from 'src/app/utils/services/de-xuat-sinh-vien.service';\n@Component({\n selector: 'app-chart-de-xuat',\n templateUrl: './chart-de-xuat.component.html',\n styleUrls: ['./chart-de-xuat.component.scss']\n})\n\nexport class ChartDeXuatComponent {\n\tdata: any;\n Token: any;\n dataChart: any = [];\n chart: any;\n TongDeXuat: any = 0;\n DaXuLy: any = 0;\n TonDong: any = 0;\n dataDeXuat:any\n public com: common;\n constructor(\n private DeXuat:DeXuatSinhVienService ,\n public router: Router,\n ) {}\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.getList();\n }\n getList()\n {\n\tthis.DeXuat.DeXuat_ThongKe(this.Token).subscribe((z)=>{\n\t\tvar tondong=0;\n\t\tvar xuly=0;\n\t\tthis.dataDeXuat=z.Data\n\t\tfor(let i=0;i\n
\n
\n
\n

{{TongDeXuat}}

\n

Tổng số đề xuất

\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{DaXuLy}}

\n

Đề xuất đã xử lý

\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{TonDong}}

\n

Đề xuất tồn đọng

\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
","import { Component, OnInit, ViewChild, Input, DebugElement } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { DataTableDirective } from 'angular-datatables';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { ToastrService } from 'ngx-toastr';\nimport { common } from 'src/app/app.common';\nimport { ExportService } from 'src/app/Utils/services/export.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport {FormControl,FormGroup,FormBuilder,Validators,\n} from '@angular/forms';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { AbstractControl } from '@angular/forms';\nimport {LoaiDeXuatService} from 'src/app/utils/services/loaidexuat.service';\nimport {DeXuatSinhVienService} from 'src/app/utils/services/de-xuat-sinh-vien.service';\nimport {BuildingService} from 'src/app/utils/services/building.service';\nimport {KhenThuongKyLuatService} from 'src/app/utils/services/khenthuongkyluat.service';\nimport {ViPhamService} from 'src/app/utils/services/vi-pham.service';\n@Component({\n selector: 'app-de-xuat-sinh-vien',\n templateUrl: './de-xuat-sinh-vien.component.html',\n styleUrls: ['./de-xuat-sinh-vien.component.scss']\n})\nexport class DeXuatSinhVienComponent implements OnInit {\n\n submitted = false;\n NameTitle: string;\n titleModal: string;\n closeResult: string;\n Message: any;\n Token: any;\n Code: any;\n IsValid: any = false;\n public com: common;\n check: any\n ID: any\n Data: any\n Ngay_xu_ly: any\n DataCanBo: any = []\n Date=new Date()\n dtTrigger = new Subject();\n dtOptions: DataTables.Settings;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective\n IDRecord:any\n checkInsert: boolean\n MonthOption: any = [];\n dataLoaiDeXuat:any\n dataTable:any\n dataPhong:any\n dataToaNha:any\n constructor(\n private fb: FormBuilder,\n public router: Router,\n public Service: SystemService,\n public spinner: NgxSpinnerService,\n public toastr: ToastrService,\n public exportService: ExportService,\n public route: ActivatedRoute,\n private modalService: NgbModal,\n private LoaiDeXuatService:LoaiDeXuatService,\n private DeXuatSinhVienService:DeXuatSinhVienService,\n private ViPhamService:ViPhamService,\n ) { }\n Insert = new FormGroup({\n Noi_dung_phan_hoi: new FormControl(null, [Validators.required,Validators.maxLength(500),removeSpaces,])\n });\n searchForm = new FormGroup({\n ID_phong: new FormControl(''),\n ID_loai_de_xuat: new FormControl(0),\n Ma_sv: new FormControl(''),\n Ho_ten: new FormControl(''),\n Thang: new FormControl(0)\n })\n \n ngOnInit(): void {\n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.MonthOption = [\n { value: 1, name: '1' },\n { value: 2, name: '2' },\n { value: 3, name: '3' },\n { value: 4, name: '4' },\n { value: 5, name: '5' },\n { value: 6, name: '6' },\n { value: 7, name: '7' },\n { value: 8, name: '8' },\n { value: 9, name: '9' },\n { value: 10, name: '10' },\n { value: 11, name: '11' },\n { value: 12, name: '12' },\n ];\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'Mã SV',\n },\n {\n title: 'Họ tên',\n },\n {\n title: 'Số điện thoại',\n },\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Nhà-Phòng',\n },\n {\n title: 'Nội dung đề xuất',\n },\n {\n title: 'Ngày đề xuất',\n },\n {\n title: 'ID_loai_de_xuat',\n visible: false,\n },\n {\n title: 'Tên loại đề xuất',\n },\n {\n title: 'Nội dung phản hồi',\n },\n {\n title: 'Thao tác',\n width: '75px',\n className:'dt-center'\n },\n ],\n }\n this.getList();\n this.filterById();\n }\n getList(){\n this.spinner.show();\n this.DeXuatSinhVienService.getList(this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.getLoaiDeXuaT()\n this.getToaNha()\n this.dtTrigger.next();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n open(content, sizm, Loai, Data) {\n this.IDRecord = Data.ID_de_xuat\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.checkInsert= false\n this.titleModal = 'Phản hồi ý kiến';\n this.Insert.get('Noi_dung_phan_hoi').setValue(Data.Noi_dung_phan_hoi);\n } else if (Loai == 'Add') {\n this.Insert.reset();\n this.checkInsert= true\n this.titleModal = 'Thêm mới loại đề xuất';\n }\n }\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n PhanHoi() {\n let req = {\n ID_de_xuat:this.IDRecord,\n Noi_dung_phan_hoi:this.Insert.value.Noi_dung_phan_hoi\n }\n this.DeXuatSinhVienService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.getList();\n this.toastr.success(z.Message)\n } else {\n this.toastr.error(\"Phản hồi thất bại!\")\n }\n this.modalService.dismissAll('PhanHoi');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n filterById(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n \n let Ma_sv = data[0];\n let Ho_ten = data[1];\n let ID_phong = data[3]\n let Thang = data[6].split(\"/\");\n let ID_loai_de_xuat = data[7];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let bool4 = true;\n let bool5 = true;\n if (this.searchForm.value.Ma_sv != 0) {\n bool1 = Ma_sv == this.searchForm.value.Ma_sv;\n }\n\n if (this.searchForm.value.Ho_ten != 0) {\n bool2 = this.xoa_dau(Ho_ten.toLowerCase()).includes(this.xoa_dau(this.searchForm.value.Ho_ten.toLowerCase()));\n }\n if (this.searchForm.value.ID_phong != null) {\n bool3 = ID_phong == this.searchForm.value.ID_phong;\n }\n \n if(this.searchForm.value.Thang!=0)\n {\n bool4=Thang[1]==this.searchForm.value.Thang\n }\n if(this.searchForm.value.ID_loai_de_xuat!=0)\n {\n bool5=ID_loai_de_xuat==this.searchForm.value.ID_loai_de_xuat\n }\n if (bool1 && bool2&& bool3 && bool4 && bool5 ) {\n return true;\n }\n return false;\n });\n $('#SelectALL').prop('checked', false);\n\n }\n xoa_dau(str) {\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\n str = str.replace(/ì|í|ị|ỉ|ĩ|ị/g, 'i');\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\n str = str.replace(/đ/g, 'd');\n str = str.replace(/À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, 'A');\n str = str.replace(/È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ/g, 'E');\n str = str.replace(/Ì|Í|Ị|Ỉ|Ĩ/g, 'I');\n str = str.replace(/Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ/g, 'O');\n str = str.replace(/Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ/g, 'U');\n str = str.replace(/Ỳ|Ý|Ỵ|Ỷ|Ỹ/g, 'Y');\n str = str.replace(/Đ/g, 'D');\n str = str.replace(/\\u0300|\\u0301|\\u0303|\\u0309|\\u0323/g, ''); // huyền, sắc, hỏi, ngã, nặng\n str = str.replace(/\\u02C6|\\u0306|\\u031B/g, ''); // mũ â (ê), mũ ă, mũ ơ (ư)\n return str;\n }\n // XuatExcel(){\n\n // this.spinner.show();\n // let dataFilter = {\n // So_ban_ghi: this.pageSize,\n // Trang: this.page,\n // Ma_sv: this.Ma_sv.trim(),\n // Ho_ten: this.Ho_ten.trim(),\n // ID_gioi_tinh: this.ID_gioi_tinh,\n // Ngay_sinh: this.Ngay_sinh,\n // Trang_thai_filter: this.Trang_thai,\n // ToaNha_Phong: this.ToaNha_Phong,\n // Ten_cb_xu_ly: this.Ten_cb_xu_ly,\n // Ngay_de_xuat_ft:this.Ngay_de_xuat\n // };\n // this.DeXuatSinhVienService.Excel(dataFilter, this.Token).subscribe((z) => {\n // if(z.Status==1){\n // this.exportService.exportExcelByte(z.FileData, 'De_xuat');\n // this.toastr.success(\"File đã được tải xuống\", \"Tác vụ thành công\")\n // this.spinner.hide();\n // }else{\n // this.toastr.error(z.Message)\n // this.spinner.hide();\n // }\n // },\n // (err) => {\n // this.spinner.hide();\n // if (err.status == 0) {\n // localStorage.removeItem('UserInfo');\n // this.router.navigate(['/login']);\n // }\n // if (err.status == 401) {\n // this.toastr.warning(\n // 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n // );\n // }\n // }\n // );\n // }\n getLoaiDeXuaT()\n {\n this.LoaiDeXuatService.getList(this.Token).subscribe((z)=>{\n this.dataLoaiDeXuat=z.Data\n })\n }\n getToaNha(){\n this.ViPhamService.getList(this.Token).subscribe((z)=>{\n this.dataToaNha=z.Data\n })\n }\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Quản lý đề xuất
  4. \n
\n
\n
\n \n \n \n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n \n Chọn tháng\n {{ i.name }}\n \n
\n
\n \n \n Chọn loại đề xuất\n {{ i.Ten_loai_de_xuat }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.So_dien_thoai }}{{ p.ID_ToaNha}}{{ p.Ten_phong }}--{{p.Ten_toa_nha}}{{ p.Noi_dung }}{{ p.Ngay_de_xuat | date: 'dd/MM/yyyy'}}{{p.ID_loai_de_xuat}}{{p.Ten_loai_de_xuat}}{{ p.Noi_dung_phan_hoi }}\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n \n \n
\n \n \n
\n
\n
\n
\n
\n\n
\n \n
\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { common } from 'src/app/app.common';\r\nimport { ExportService } from 'src/app/Utils/services/export.service';\r\nimport { SystemService } from 'src/app/Utils/services/system.service';\r\n\r\n@Component({\r\n selector: 'app-developer-sql',\r\n templateUrl: './developer-sql.component.html',\r\n styleUrls: ['./developer-sql.component.scss']\r\n})\r\nexport class DeveloperSQLComponent implements OnInit {\r\n\r\n Fillter: FormGroup;\r\n constructor(\r\n public Service: SystemService,\r\n public router: Router,\r\n public spinner: NgxSpinnerService,\r\n public toastr: ToastrService,\r\n public exportService: ExportService,\r\n public route: ActivatedRoute,\r\n ) { }\r\n Message: any;\r\n Token: any;\r\n Code: any;\r\n IsValid: any = false;\r\n public com: common;\r\n ngOnInit(): void {\r\n this.Message = \"\";\r\n this.Fillter = new FormGroup({\r\n Password: new FormControl(null),\r\n QuerryString: new FormControl(null)\r\n });\r\n this.route.queryParams\r\n .subscribe(params => {\r\n this.Code = params.Code;\r\n this.CheckCode(this.Code)\r\n });\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n }\r\n Execute() {\r\n this.spinner.show();\r\n this.Message = \"Processing...\"\r\n let req = {\r\n Password: this.Fillter.value.Password,\r\n QuerryString: this.Fillter.value.QuerryString\r\n };\r\n this.Service.ExecuteQuerryString(req, this.Token).subscribe(\r\n (z) => {\r\n this.spinner.hide();\r\n if (z.Status == 1) {\r\n this.Message = JSON.stringify(z.Content)\r\n } else {\r\n this.Message = z.Message\r\n this.toastr.warning(z.Message, 'Querry with error');\r\n this.spinner.hide();\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n ExportExcel() {\r\n var r = confirm(\"File của bạn sẽ được tải xuống trong giây lát!\");\r\n if (r) {\r\n this.spinner.show();\r\n this.Message = \"Processing...\"\r\n let req = {\r\n Password: this.Fillter.value.Password,\r\n QuerryString: this.Fillter.value.QuerryString\r\n };\r\n this.Service.ExecuteQuerryStringExport(req, this.Token)\r\n .subscribe(z => {\r\n if (z.Status == 1) {\r\n this.exportService.exportExcelByte(z.FileData, 'SQLResult');\r\n this.toastr.success(\"File đã được tải xuống\", \"Tác vụ thành công\")\r\n this.Message = \"File đã được tải xuống\";\r\n this.spinner.hide();\r\n }\r\n else {\r\n this.toastr.error(z.Message, \"Tác vụ thất bại\")\r\n this.Message = z.Message;\r\n this.spinner.hide();\r\n }\r\n });\r\n };\r\n }\r\n CheckCode(c) {\r\n var Code = 'a3ab939ec58f69bb7e85d59b340452476d8c34a5';\r\n if (Code == c) {\r\n this.IsValid = true;\r\n } else {\r\n this.router.navigate(['/admin']);\r\n }\r\n }\r\n}\r\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Execute SQLScript (Dành riêng cho kỹ thuật)
  4. \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
","import { Component, OnInit, ViewChild, Input,Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DeviceService } from 'src/app/Utils/services/device.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { ExportService } from 'src/app/Utils/services/export.service';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-device',\n templateUrl: './device.component.html',\n styleUrls: ['./device.component.scss'],\n})\nexport class DeviceComponent implements OnInit {\n dtOptions: DataTables.Settings;\n dtOptions2: any;\n Token: string;\n datadetail: any;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n code: any;\n name: any;\n unit: any;\n price: any;\n note: any;\n code_filter: any;\n name_filter: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách thiết bị...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Insert = new FormGroup({\n ID: new FormControl(null),\n code: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n name: new FormControl(null, [\n Validators.required,\n Validators.maxLength(70),\n removeSpaces,\n ]),\n unit: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n price: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n Validators.min(0),\n ]),\n note: new FormControl(null, [Validators.maxLength(500), removeSpaces]),\n });\n Fillter = new FormGroup({\n code_filter: new FormControl(null, [removeSpaces]),\n name_filter: new FormControl(null, [removeSpaces]),\n });\n constructor(\n @Inject(AppConfig) \n private readonly appConfig: AppConfiguration,\n private modalService: NgbModal,\n private DeviceService: DeviceService,\n private RoomService: RoomService,\n public router: Router,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n public exportService: ExportService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Mã thiết bị',\n },\n {\n title: 'Tên thiết bị',\n },\n {\n title: 'Đơn vị',\n },\n {\n title: 'Đơn giá',\n },\n {\n title: 'Ghi chú',\n },\n {\n title: 'Thao tác',\n width: '18%',\n className: 'dt-center',\n },\n ],\n order: [[0, 'desc']],\n };\n this.dtOptions2 = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n width: '5%',\n className: 'dt-center',\n },\n {\n title: 'Mã phòng',\n },\n {\n title: 'Tên phòng',\n },\n {\n title: 'Tầng',\n },\n {\n title: 'Toà nhà',\n },\n {\n title: 'Cơ sở',\n },\n {\n title: 'Loại phòng',\n },\n {\n title: 'Sức chứa',\n },\n {\n title: 'Ghi chú',\n },\n ],\n };\n\n this.getList(a.Token);\n this.RoomService.GetAll(a.Token).subscribe((z) => {\n for (var i = 0; i < z.Data.length; i++) {\n if (z.Data[i].Loai_phong == false) {\n z.Data[i].Loai_phong_text = 'Nam';\n } else {\n z.Data[i].Loai_phong_text = 'Nữ';\n }\n }\n this.datadetail = z.Data;\n });\n }\n ngAfterViewInit() { }\n filterById(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let code_data = data[1];\n let name_data = data[2];\n let bool1 = true;\n let bool2 = true;\n if (this.code_filter != undefined) {\n var a = code_data;\n var b = this.code_filter;\n bool1 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (this.name_filter != undefined) {\n var a = name_data;\n var b = this.name_filter;\n bool2 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (bool1 && bool2) {\n return true;\n }\n return false;\n });\n }\n getList(token) {\n this.spinner.show();\n this.DeviceService.getList(token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.Title = '';\n this.TitleClass = '';\n this.spinner.hide();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.dataTable = [];\n this.dtTrigger.next();\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa thiết bị';\n this.checkInsert = true;\n this.check = Data.code;\n this.ID = Data.ID;\n this.code = Data.code;\n this.name = Data.name;\n this.unit = Data.unit;\n this.price = Data.price;\n this.note = Data.note;\n } else if (Loai == 'Add') {\n this.titleModal = 'Thêm mới thiết bị';\n this.checkInsert = false;\n this.Insert.reset();\n } else if (Loai == 'Delete') {\n this.ID = Data.ID;\n } else if (Loai == 'View') {\n this.ID = Data.ID;\n $('#soluongphat').val('');\n\n // this.getdeviceroom()\n }\n }\n getdeviceroom() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n }\n // create\n create() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID: this.ID,\n code: this.code,\n name: this.name,\n unit: this.unit,\n price: this.price,\n note: this.note,\n };\n let code = $('#code').val();\n if (this.checkInsert == true) {\n if (this.check == $('#code').val()) {\n this.DeviceService.Update(InputDatas, a.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else {\n this.DeviceService.CheckExist(code, a.Token).subscribe((z) => {\n if (z.Status == 9) {\n this.DeviceService.Update(InputDatas, a.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Cập nhật thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã thiết bị!');\n }\n });\n }\n } else {\n this.DeviceService.CheckExist(code, a.Token).subscribe((z) => {\n if (z.Status == 9) {\n this.DeviceService.Insert(InputDatas, a.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.error('Thêm mới thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Thêm mới thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã thiết bị!');\n }\n });\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let ID = this.ID;\n this.DeviceService.CheckDelete(ID, a.Token).subscribe((z) => {\n if (z.Status == 9) {\n this.DeviceService.Delete(ID, a.Token).subscribe(\n (z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else if (z.Status == 8) {\n this.toastr.warning('Không thể xóa do thiết bị đã tồn tại trong phòng');\n }\n });\n }\n\n removeAccents(str) {\n var AccentsMap = [\n 'aàảãáạăằẳẵắặâầẩẫấậ',\n 'AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ',\n 'dđ',\n 'DĐ',\n 'eèẻẽéẹêềểễếệ',\n 'EÈẺẼÉẸÊỀỂỄẾỆ',\n 'iìỉĩíị',\n 'IÌỈĨÍỊ',\n 'oòỏõóọôồổỗốộơờởỡớợ',\n 'OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ',\n 'uùủũúụưừửữứự',\n 'UÙỦŨÚỤƯỪỬỮỨỰ',\n 'yỳỷỹýỵ',\n 'YỲỶỸÝỴ',\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n CheckAll() {\n if ($('#SelectALL').prop('checked')) {\n // $('input[name =\"SelectData\"]').prop(\"checked\",true)\n for (let index = 0; index < this.datadetail.length; index++) {\n this.datadetail[index].Selected = true;\n }\n } else {\n // $('input[name =\"SelectData\"]').prop(\"checked\",false)\n for (let index = 0; index < this.datadetail.length; index++) {\n this.datadetail[index].Selected = false;\n }\n }\n }\n SelectRow(ID) {\n for (let index = 0; index < this.datadetail.length; index++) {\n if (this.datadetail[index].ID_Phong == ID) {\n if ($('#' + ID).prop('checked')) {\n {\n this.datadetail[index].Selected = true;\n }\n } else {\n this.datadetail[index].Selected = false;\n }\n break;\n }\n }\n }\n OnSubmit2() {\n if ($('#soluongphat').val() == '') {\n this.toastr.warning('Bạn chưa nhập số thiết bị mỗi phòng');\n } else {\n var lst = jQuery.grep(this.datadetail, function (pa: any, i) {\n return pa.Selected;\n });\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID_tb: this.ID,\n soluongtb: $('#soluongphat').val(),\n Data: lst,\n };\n this.DeviceService.InsertDeviceRoom(InputDatas, a.Token).subscribe(\n (z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n }\n );\n }\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n this.RoomService.Excel(a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Thietbitheophong');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n });\n }\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl + \"?\" + this.appConfig.document_QuanLyThietBi;\n window.open(urlHelp, '_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Thiết bị
  4. \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID }}{{ p.code }}{{ p.name }}{{ p.unit }}{{ p.price |number }}{{ p.note }}\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Mã thiết bị không được bỏ trống!\n
\n
\n Mã thiết bị tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Tên thiết bị không được bỏ trống!\n
\n
\n Tên thiết bị tối đa 70 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Đơn vị không được bỏ trống!\n
\n
\n Đơn vị tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Đơn giá không được bỏ trống!\n
\n
\n Đơn giá tối đa 20 ký tự!\n
\n
\n Đơn giá không được nhỏ hơn 0!\n
\n
\n
\n
\n \n \n
\n
\n Ghi chú tối đa 500 ký tự!\n
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n\n
\n
\n
\n
\n\n
\n

Phân phối thiết bị

\n ×\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n {{ p.Ma_phong }}{{ p.Ten_phong }}{{ p.Tang }}{{ p.Ten_toa_nha }}{{ p.Ten_co_so }}{{ p.Loai_phong_text}}{{ p.Suc_chua }}{{ p.Ghi_chu }}
\n
\n
\n \n
\n
\n
\n
\n \n \n\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-diem-phong',\n templateUrl: './diem-phong.component.html',\n styleUrls: ['./diem-phong.component.scss'],\n})\nexport class DiemPhongComponent extends BaseComponent implements OnInit {\n Nam_hoc_arr = [];\n dataTable = [];\n dataToaNha = [];\n dataPhong = [];\n dataPhongOld = [];\n dataChiTiet = [];\n Hoc_ky: any = 1;\n Nam_hoc: any;\n Tu_diem = '';\n Den_diem = '';\n Ten_phong = '';\n Ten_toa_nha = '';\n Data: any;\n DataDetail: any;\n Insert = new FormGroup({\n Toa_nha: new FormControl(null),\n ID_phong: new FormControl(null, [Validators.required]),\n Hoc_ky: new FormControl(1, [Validators.required]),\n Nam_hoc: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1),\n [Validators.required]\n ),\n Diem_tru: new FormControl(0, [Validators.required]),\n Noi_dung: new FormControl(null),\n });\n ngOnInit(): void {\n \n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.Nam_hoc =\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\n this.getToken();\n this.getCount();\n this.getList();\n }\n getCount() {\n this.spinner.show();\n this.DiemPhongService.getCount(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n getList() {\n if (\n (this.Tu_diem != '' && this.Den_diem === '') ||\n (this.Tu_diem === '' && this.Den_diem != '')\n ) {\n this.toastr.warning('Bạn phải nhập từ điểm, đến điểm');\n return false;\n }\n if (this.Tu_diem > this.Den_diem) {\n this.toastr.warning('Từ điểm phải nhỏ hơn đến điểm');\n return false;\n }\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Ten_phong: this.Ten_phong,\n Ten_toa_nha: this.Ten_toa_nha,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem,\n };\n this.DiemPhongService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DiemPhongService.getCountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n }\n );\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.Tu_diem = '';\n this.Den_diem = '';\n this.getList();\n }\n changPage(event) {\n if (\n (this.Tu_diem != '' && this.Den_diem == '') ||\n (this.Tu_diem == '' && this.Den_diem != '')\n ) {\n this.toastr.warning('Bạn phải nhập từ điểm, đến điểm');\n return false;\n }\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Ten_phong: this.Ten_phong,\n Ten_toa_nha: this.Ten_toa_nha,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem,\n };\n this.DiemPhongService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n modalDetail(content, sizm, type, data) {\n this.Data = data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (type == 'Detail') {\n this.getDetail();\n }\n }\n getDetail() {\n this.spinner.show();\n this.DiemPhongService.Detail(\n this.Data.ID_phong,\n this.Data.Hoc_ky,\n this.Data.Nam_hoc,\n this.Token\n ).subscribe((z) => {\n this.dataChiTiet = z.Data;\n this.spinner.hide();\n });\n }\n open(content, sizm, type, data) {\n this.DataDetail = data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataToaNha = z.Data;\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataPhong = z.Data;\n this.dataPhongOld = z.Data;\n this.Insert.controls.ID_phong.setValue(this.dataPhong[0].ID_Phong);\n });\n });\n // this.Insert.setValue({\n // Noi_dung: ''\n // });\n this.Insert.controls.Noi_dung.setValue('');\n }\n lock() {\n let ID_phong = this.Data.ID_phong;\n this.spinner.show();\n this.DiemPhongService.updateStatus(ID_phong, 1, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n this.modalService.dismissAll('AddModal');\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n unlock() {\n let ID_phong = this.Data.ID_phong;\n this.spinner.show();\n this.DiemPhongService.updateStatus(ID_phong, 0, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n this.modalService.dismissAll('AddModal');\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n delete() {\n this.spinner.show();\n this.DiemPhongService.Delete(\n this.DataDetail.ID_diem_phong,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 1) {\n this.getDetail();\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n let req = {\n ID_phong: this.Insert.value.ID_phong,\n Hoc_ky: this.Insert.value.Hoc_ky,\n Nam_hoc: this.Insert.value.Nam_hoc,\n Diem_tru: this.Insert.value.Diem_tru,\n Noi_dung: this.Insert.value.Noi_dung,\n Trang_thai: 0,\n };\n this.spinner.show();\n this.DiemPhongService.Insert(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n ToaNhaChange() {\n this.dataPhong = this.dataPhongOld.filter(\n (x) => x.ID_Toa_Nha == this.Insert.value.Toa_nha\n );\n this.Insert.controls.ID_phong.setValue(this.dataPhong[0].ID_Phong);\n }\n ConfirmUnlock() {\n this.spinner.show();\n this.DiemPhongService.updateStatusByHocKy(\n this.Hoc_ky,\n this.Nam_hoc,\n 0,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 1) {\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n Confirm() {\n this.spinner.show();\n this.DiemPhongService.updateStatusByHocKy(\n this.Hoc_ky,\n this.Nam_hoc,\n 1,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 1) {\n this.getCount();\n this.getList();\n this.toastr.success(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n XuatExcel() {\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: 1000000,\n Trang: this.page,\n Ten_phong: this.Ten_phong,\n Ten_toa_nha: this.Ten_toa_nha,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem,\n };\n this.DiemPhongService.Excel(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Diem_phong');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message);\n this.spinner.hide();\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_DiemPhong;\n window.open(urlHelp,'_blank');\n }\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Điểm phòng
  4. \n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Toà nhà - PhòngHọc kỳNăm họcĐiểm quy địnhĐiểm trừĐiểmTrạng tháiThao tác
{{ p.Ten_toa_nha }}-{{ p.Ten_phong }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Diem_quy_dinh }}{{ p.Diem_tru }}{{ p.Diem }}\n Chưa Khoá điểm\n \n Đã khoá điểm\n \n \n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n

\n Bạn có muốn mở điểm\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n Bạn có muốn khoá điểm\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n Bạn có muốn xoá điểm của phòng\n

\n
\n \n \n
\n
\n
\n
\n\n
\n

Chi tiết điểm phòng

\n ×\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Điểm trừNội dungNgày tạoThao tác
{{ p.Diem_tru }}{{ p.Noi_dung }}{{ p.Ngay_tao | date: 'dd/MM/yyyy' }}\n \n
Không có kết quả
\n
\n
\n
\n\n
\n

Thêm điểm trừ

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n Phòng không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Học kỳ không được bỏ trống!\n
\n
\n
\n
\n \n \n\n
\n
\n Năm học không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Điểm trừ không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n

\n Bạn có muốn khoá điểm học kỳ {{ Hoc_ky }} năm học {{ Nam_hoc }}\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n Bạn có muốn mở điểm học kỳ {{ Hoc_ky }} năm học {{ Nam_hoc }}\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { BaseComponent } from '../base/base.component';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\n\n\n@Component({\n selector: 'app-diem-sinh-vien',\n templateUrl: './diem-sinh-vien.component.html',\n styleUrls: ['./diem-sinh-vien.component.scss']\n})\nexport class DiemSinhVienComponent extends BaseComponent implements OnInit {\n Ma_ho_ten: string = ''\n Ngay_sinh: any = ''\n Toa_nha_phong: any = ''\n Tu_diem: any = ''\n Den_diem: any = ''\n Hoc_ky: any = 1\n Nam_hoc: any\n Nam_hoc_arr = []\n dataViPham: any = []\n Data:any\n ngOnInit(): void {\n \n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.Nam_hoc = new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n this.getToken()\n this.getCount()\n this.getList()\n }\n getCount() {\n this.spinner.show()\n this.DiemSinhVienService.getCount(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n this.spinner.hide()\n });\n }\n getList() {\n if(this.Tu_diem != '' && this.Den_diem === ''||this.Tu_diem === '' && this.Den_diem != '' ){\n this.toastr.warning(\"Bạn phải nhập từ điểm, đến điểm\")\n return false \n }\n if((this.Tu_diem >= this.Den_diem) &&this.Tu_diem != '' && this.Den_diem != '' ){\n this.toastr.warning(\"Từ điểm phải nhỏ hơn đến điểm\")\n return false \n }\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Ma_ho_ten: this.Ma_ho_ten.trim(),\n Ngay_sinh: this.Ngay_sinh,\n Toa_nha_phong: this.Toa_nha_phong.trim(),\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem\n };\n this.DiemSinhVienService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DiemSinhVienService.getCountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(z.Tong_so_ban_ghi_filter, this.pageSize).numberPage\n this.arrNumberPage_chil = this.createNumberPage(z.Tong_so_ban_ghi_filter, this.pageSize).arrNumberPage_chil\n this.spinner.hide();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n this.spinner.hide();\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList()\n }\n refesh() {\n\n this.Ma_ho_ten = ''\n this.Ngay_sinh = ''\n this.Toa_nha_phong = ''\n this.Tu_diem = ''\n this.Den_diem = ''\n this.getList()\n }\n changPage(event) {\n if((this.Tu_diem != '' && this.Den_diem == '')||(this.Tu_diem == '' && this.Den_diem != '')){\n this.toastr.warning(\"Bạn phải nhập từ điểm, đến điểm\")\n return false\n }\n this.handlePageChange(event)\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Ma_ho_ten: this.Ma_ho_ten.trim(),\n Ngay_sinh: this.Ngay_sinh,\n Toa_nha_phong: this.Toa_nha_phong,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem\n };\n this.DiemSinhVienService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.spinner.hide();\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n modalDetail(content, sizm, type, data) {\n this.Data = data\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n let req = {\n ID_sv: data.ID_sv,\n Hoc_ky: data.Hoc_ky,\n Nam_hoc: data.Nam_hoc\n }\n this.DiemSinhVienService.getViPham(req, this.Token).subscribe((z) => {\n this.dataViPham = z.Data\n });\n }\n Confirm() {\n let req = {\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc\n }\n this.spinner.show()\n this.DiemSinhVienService.ChotDiem(req, this.Token).subscribe((z) => {\n if(z.Status == 1){\n this.getCount()\n this.getList()\n this.toastr.success(\"Chốt điểm thành công\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }else{\n this.toastr.error(\"Chốt điểm thất bại\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n ConfirmUnlock(){\n let req = {\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc\n }\n this.spinner.show()\n this.DiemSinhVienService.MoDiem(req, this.Token).subscribe((z) => {\n if(z.Status == 1){\n this.getCount()\n this.getList()\n this.toastr.success(\"Mở điểm thành công\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }else{\n this.toastr.error(\"Mở điểm thất bại\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n lock(){\n let req = {\n ID_sv: this.Data.ID_sv,\n Hoc_ky: this.Data.Hoc_ky,\n Nam_hoc: this.Data.Nam_hoc\n }\n this.spinner.show()\n this.DiemSinhVienService.KhoaDiemSV(req, this.Token).subscribe((z) => {\n if(z.Status == 1){\n this.getCount()\n this.getList()\n this.toastr.success(\"Khoá điểm thành công\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }else{\n this.toastr.error(\"Khoá điểm thất bại\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n unlock(){\n let req = {\n ID_sv: this.Data.ID_sv,\n Hoc_ky: this.Data.Hoc_ky,\n Nam_hoc: this.Data.Nam_hoc\n }\n this.spinner.show()\n this.DiemSinhVienService.MoDiemSV(req, this.Token).subscribe((z) => {\n if(z.Status == 1){\n this.getCount()\n this.getList()\n this.toastr.success(\"Mở điểm thành công\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }else{\n this.toastr.error(\"Mở điểm thất bại\")\n this.modalService.dismissAll('AddModal');\n this.spinner.hide()\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n XuatExcel(){\n if(this.Tu_diem != '' && this.Den_diem === ''||this.Tu_diem === '' && this.Den_diem != '' ){\n this.toastr.warning(\"Bạn phải nhập từ điểm, đến điểm\")\n return false \n }\n if(this.Tu_diem >= this.Den_diem &&this.Tu_diem != '' && this.Den_diem != '' ){\n this.toastr.warning(\"Từ điểm phải nhỏ hơn đến điểm\")\n return false \n }\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: 10000000,\n Trang: 1,\n Ma_ho_ten: this.Ma_ho_ten.trim(),\n Ngay_sinh: this.Ngay_sinh,\n Toa_nha_phong: this.Toa_nha_phong.trim(),\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Tu_diem: this.Tu_diem,\n Den_diem: this.Den_diem\n };\n this.DiemSinhVienService.Excel(dataFilter, this.Token).subscribe((z) => {\n if(z.Status==1){\n this.exportService.exportExcelByte(z.FileData, 'Diem_sinh_vien');\n this.toastr.success(\"File đã được tải xuống\", \"Tác vụ thành công\")\n this.spinner.hide();\n }else{\n this.toastr.error(z.Message)\n this.spinner.hide();\n }\n },\n (err) => {\n console.log(err);\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_DiemSV;\n window.open(urlHelp,'_blank');\n }\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Điểm sinh viên
  4. \n
\n
\n
\n \n\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Mã SVHọ tênNgày sinhNhà-PhòngHọc kỳNăm họcĐiểm quy địnhĐiểm trừĐiểmTrạng tháiChi tiết
{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh_date | date:'dd/MM/yyyy' }}{{ p.Ten_toa_nha }}-{{ p.Ten_phong }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Diem_quy_dinh }}{{ p.Diem_tru }}{{ p.Diem }}Chưa Khoá điểmĐã khoá điểm\n \n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem|number }} kết quả, đã lọc được\n {{ totalItemFilter|number}} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

Chi tiết vi phạm

\n ×\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Mã sinh viên Tên sinh viênNội dungĐiểm trừ
{{ p.Ma_sv}}{{ p.Ten_sv }}{{ p.Noi_dung }}{{ p.Diem_tru }}
Không có kết quả
\n
\n
\n\n
\n\n
\n
\n\n

\n Bạn có muốn chốt điểm học kỳ {{Hoc_ky}} năm học {{Nam_hoc}}\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n\n

\n Bạn có muốn mở điểm học kỳ {{Hoc_ky}} năm học {{Nam_hoc}}\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n\n

\n Bạn có muốn mở điểm của sinh viên\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n\n

\n Bạn có muốn khoá điểm của sinh viên\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-doi-tuong-chinh-sach',\n templateUrl: './doi-tuong-chinh-sach.component.html',\n styleUrls: ['./doi-tuong-chinh-sach.component.scss']\n})\nexport class DoiTuongChinhSachComponent extends BaseComponent implements OnInit {\n ID:any\n ID_doi_tuong\n DSDoiTuong:any\n ngOnInit(): void {\n \n this.getToken();\n this.getAll();\n }\n getDoiTuongChinhSach(){\n this.SystemService.Get_doituong_chinhsach(this.Token).subscribe((z) => {\n this.DSDoiTuong = z;\n });\n }\n getAll() {\n this.spinner.show();\n this.DoiTuongChinhSachService.getAll(this.Token).subscribe(\n (z) => {\n this.getDoiTuongChinhSach()\n this.spinner.hide();\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z;\n }\n }\n );\n }\n\n \n open(content, sizm, Loai, Data) {\n this.ID = Data.id;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n }\n Delete(){\n this.DoiTuongChinhSachService.delete(this.ID,this.Token).subscribe((res)=>{\n if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getAll();\n }else {\n this.toastr.warning(res.Message);\n }\n })\n }\n \n onSubmit() {\n if(this.ID_doi_tuong != null){\n this.DoiTuongChinhSachService.add(this.ID_doi_tuong, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getAll();\n } else if (res.Status == 4) {\n this.toastr.error('Thêm mới thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }else{\n this.toastr.warning(\"Bạn chưa chọn đối tượng chính sách\")\n }\n \n }\n\n}\n","
\n \n
\n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Mã đối tượng chính sách Tên đối tượng chính sách Thao tác
{{ data.Ma_dt }}{{ data.Ten_dt }}\n \n
Không có kết quả
\n \n
\n
\n
\n
\n \n
\n \n \n \n

Thêm đối tượng chính sách

\n ×\n \n
\n
\n
\n \n \n \n {{p.Ten_dt}}\n \n \n
\n
\n
\n
\n
\n \n \n Đóng\n \n
\n
\n
\n \n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
\n ","import { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-don-gia-dien-nuoc',\n templateUrl: './don-gia-dien-nuoc.component.html',\n styleUrls: ['./don-gia-dien-nuoc.component.scss'],\n})\nexport class DonGiaDienNuocComponent extends BaseComponent implements OnInit {\n Loai_khoan_thu_filter: any = 1;\n Tinh_theo_sinh_vien_filter: any = false;\n Nam_filter: any = new Date().getFullYear();\n titleModal: any = '';\n yearArr: any = [];\n checkInsert = true;\n ID: number;\n Insert = new FormGroup({\n Loai_khoan_thu: new FormControl(1),\n Tinh_theo_sinh_vien: new FormControl(false),\n Tu_so: new FormControl(0, [Validators.required, Validators.min(1)]),\n Den_so: new FormControl(0, [Validators.required, Validators.min(0)]),\n Don_gia: new FormControl(0, [Validators.required, Validators.min(0)]),\n Nam: new FormControl(new Date().getFullYear()),\n });\n ngOnInit(): void {\n let year = new Date().getFullYear() + 2;\n for (let i = 0; i < 5; i++) {\n this.yearArr.push(year);\n year -= 1;\n }\n this.getToken();\n this.getList();\n this.getCount();\n }\n getCount() {\n this.DonGiaDienNuocService.Count(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Loai_khoan_thu: this.Loai_khoan_thu_filter,\n Tinh_theo_sinh_vien: this.Tinh_theo_sinh_vien_filter,\n Nam: this.Nam_filter,\n };\n this.DonGiaDienNuocService.getList(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.DonGiaDienNuocService.CountFilter(\n dataFilter,\n this.Token\n ).subscribe((z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n });\n }\n }\n );\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.Loai_khoan_thu_filter = '';\n this.Tinh_theo_sinh_vien_filter = false;\n this.Nam_filter = '';\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Loai_khoan_thu: this.Loai_khoan_thu_filter,\n Tinh_theo_sinh_vien: this.Tinh_theo_sinh_vien_filter,\n Nam: this.Nam_filter,\n };\n this.DonGiaDienNuocService.getList(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n }\n );\n }\n open(content, sizm, Loai, Data) {\n this.ID = Data.ID_don_gia;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Add') {\n this.titleModal = 'Thêm mới đơn giá';\n this.checkInsert = true;\n this.Insert.get('Loai_khoan_thu').setValue(this.Loai_khoan_thu_filter);\n this.Insert.get('Tinh_theo_sinh_vien').setValue(\n this.Tinh_theo_sinh_vien_filter\n );\n this.Insert.get('Tu_so').setValue(0);\n this.Insert.get('Den_so').setValue(0);\n this.Insert.get('Don_gia').setValue(0);\n this.Insert.get('Nam').setValue(this.Nam_filter);\n } else {\n this.titleModal = 'Sửa đơn giá';\n this.checkInsert = false;\n this.Insert.get('Loai_khoan_thu').setValue(Data.Loai_khoan_thu);\n this.Insert.get('Tinh_theo_sinh_vien').setValue(Data.Tinh_theo_sinh_vien);\n this.Insert.get('Tu_so').setValue(Data.Tu_so);\n this.Insert.get('Den_so').setValue(Data.Den_so);\n this.Insert.get('Don_gia').setValue(Data.Don_gia);\n this.Insert.get('Nam').setValue(Data.Nam);\n }\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n if (this.Insert.value.Tu_so >= this.Insert.value.Den_so) {\n this.toastr.warning('Từ số phải nhỏ hơn đến số!');\n return false;\n }\n let req = {\n ID_don_gia: this.ID,\n Loai_khoan_thu: this.Insert.value.Loai_khoan_thu,\n Tinh_theo_sinh_vien: this.Insert.value.Tinh_theo_sinh_vien,\n Tu_so: this.Insert.value.Tu_so,\n Den_so: this.Insert.value.Den_so,\n Don_gia: this.Insert.value.Don_gia,\n Nam: this.Insert.value.Nam,\n };\n if (this.checkInsert) {\n this.DonGiaDienNuocService.Insert(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getList();\n this.getCount();\n } else if (res.Status == 4) {\n this.toastr.error('Thêm mới thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else {\n this.DonGiaDienNuocService.Update(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getList();\n } else if (res.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n }\n Delete() {\n this.DonGiaDienNuocService.Delete(this.ID, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n } else if (res.Status == 4) {\n this.toastr.error('Xoá thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n this.modalService.dismissAll('');\n this.getCount();\n this.getList();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Đơn giá điện nước
  4. \n
\n
\n
\n \n \n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n  \n Tính theo số sinh viên\n\n\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
Loại khoản thuTừ sốĐến sốĐơn giáTính theo số sinh viênThao tác
{{ p.Loai_khoan_thu == 1 ?'Tiền điện':'Tiền nước' }}{{ p.Tu_so |number }}{{ p.Den_so |number }}{{p.Don_gia | number}}\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n   Tính theo số sinh\n viên\n\n
\n
\n \n \n
\n
\n Từ số không được nhỏ hơn 1!\n
\n
\n Từ số không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Đến số không được nhỏ hơn 0!\n
\n
\n Đến số không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Đơn giá không được nhỏ hơn 0!\n
\n
\n Đơn giá không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Năm không được bỏ trống!\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { GrantCardService } from 'src/app/Utils/services/grantcard.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { ExportService } from 'src/app/Utils/services/export.service';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-grantcard',\n templateUrl: './grantcard.component.html',\n styleUrls: ['./grantcard.component.scss']\n})\nexport class GrantcardComponent implements OnInit {\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_the: any;\n Ngay_cap_the: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Insert = new FormGroup({\n ID: new FormControl(null),\n So_the: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces\n ]),\n Ngay_cap_the: new FormControl(null, [\n Validators.required,\n removeSpaces\n ])\n });\n\n constructor(\n private modalService: NgbModal,\n private GrantCardService: GrantCardService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n public exportService: ExportService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n \n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n dom: 'Bfrtip',\n buttons: [\n {\n extend: 'excelHtml5', text: '  Xuất excel ',\n titleAttr: 'Xuất excel ',\n className: \"btn-sm\",\n exportOptions: {\n columns: [2,3,4,5,6,7],\n orthogonal: 'export',\n className: \"btn btn-success\",\n format: {\n body: function (data, row, column, node) {\n return data;\n }\n }\n },\n },\n ],\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID đăng ký',\n visible: false,\n }, \n {\n title: 'ID sinh viên',\n visible: false,\n },\n {\n title: 'Mã sinh viên',\n }, \n {\n title: 'Họ tên',\n }, \n {\n title: 'Ngày sinh',\n }, \n {\n title: 'Trạng thái thẻ',\n },\n {\n title: 'Số thẻ',\n },\n {\n title: 'Ngày cấp thẻ',\n }, \n {\n title: 'Thao tác',\n width: \"18%\",\n className: \"dt-center\"\n },\n ],\n \"order\": [[ 0, \"desc\" ]]\n };\n this.getList(a.Token);\n }\n getList(token) {\n this.spinner.show();\n this.GrantCardService.getList(token).subscribe((z) => {\n for(let i=0;i {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa thông tin thẻ';\n this.checkInsert = true;\n this.Insert.get('So_the').setValue(Data.So_the);\n if(Data.Ngay_cap_the !=null){\n this.Insert.get('Ngay_cap_the').setValue(Data.Ngay_cap_the.substring(0,10));\n this.Ngay_cap_the = Data.Ngay_cap_the.substring(0,10);\n }else{\n var today = new Date();\n var dd = String(today.getDate()).padStart(2, '0');\n var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!\n var yyyy = today.getFullYear(); \n let date = yyyy +'-'+mm+'-'+dd;\n this.Insert.get('Ngay_cap_the').setValue(date);\n this.Ngay_cap_the = date;\n } \n this.check = Data.code;\n this.ID = Data.ID_dang_ky;\n this.So_the = Data.So_the;\n \n } else if (Loai == 'Delete') {\n this.ID = Data.ID_dang_ky;\n this.Ngay_cap_the = Data.Ngay_cap_the.substring(0,10);\n this.So_the = Data.So_the;\n }\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n }\n // create\n create() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID_dang_ky: this.ID,\n So_the: this.So_the,\n Ngay_cap_the: this.Ngay_cap_the,\n Trang_thai_the:1\n };\n this.GrantCardService.Update(InputDatas, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Cập nhật thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }\n });\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID_dang_ky: this.ID,\n So_the: '',\n Ngay_cap_the: '',\n Trang_thai_the:0\n };\n this.GrantCardService.Update(InputDatas, a.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(\"Thu hồi thẻ thất bại\");\n } else if (z.Status == 1) {\n this.toastr.success(\"Thu hồi thẻ thành công\");\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n });\n }\n excel(){\n var r = confirm(\"File của bạn sẽ được tải xuống trong giây lát!\");\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show(); \n this.GrantCardService.Excel(a.Token)\n .subscribe(z => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Capphatthuhoithe');\n this.toastr.success(\"File đã được tải xuống\", \"Tác vụ thành công\")\n this.spinner.hide();\n }\n else {\n this.toastr.error(z.Message, \"Tác vụ thất bại\")\n this.spinner.hide();\n }\n });\n };\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Cấp phát thu hồi thẻ KTX
  4. \n
\n
\n \n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_dang_ky }}{{ p.ID_sv }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh |date:'dd/MM/yyyy'}}{{ p.Trang_thai_the }}{{ p.So_the }}{{ p.Ngay_cap_the |date:'dd/MM/yyyy' }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Số thẻ không được bỏ trống!\n
\n
\n Số thẻ tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Ngày cấp thẻ không được bỏ trống!\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn muốn thu hồi thẻ này\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Subject } from 'rxjs';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n NgModel,\n} from '@angular/forms';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { BaseComponent } from 'src/app/components/base/base.component';\n@Component({\n selector: 'app-hinh-thuc',\n templateUrl: './hinh-thuc.component.html',\n styleUrls: ['./hinh-thuc.component.scss'],\n})\nexport class HinhThucComponent extends BaseComponent implements OnInit {\n titleModal: any = '';\n isInsert: any;\n FillPhong: any = '';\n DataToaNha: any;\n show_search: any = true;\n List_phong_ban: any;\n Ma_kho_checkexist: any;\n ID_hinh_thuc: any;\n FillToaNha: any;\n ID_sua_chua: any;\n DataRoom: any = [];\n DataThietBi: any = [];\n DataView: any = [];\n DataFilter: any = [];\n dataRoomView: any;\n FilterForm = new FormGroup({\n Hinh_thuc_ft: new FormControl(null),\n Loai_hinh_thuc_ft: new FormControl(null),\n });\n InsertForm = new FormGroup({\n Hinh_thuc: new FormControl(null, [Validators.required, removeSpaces]),\n Loai_hinh_thuc: new FormControl(null, [Validators.required, removeSpaces]),\n Ghi_chu: new FormControl(null),\n });\n UpdateForm = new FormGroup({\n ID_hinh_thuc: new FormControl(null),\n Hinh_thuc: new FormControl(null, [Validators.required]),\n Loai_hinh_thuc: new FormControl(null, [Validators.required]),\n Ghi_chu: new FormControl(null),\n });\n dtTrigger = new Subject();\n public com: common;\n ngOnInit(): void {\n this.getToken();\n this.GetAll();\n \n }\n hidesearch() {\n if (this.show_search == true) {\n return (this.show_search = false);\n }\n if (this.show_search == false) {\n return (this.show_search = true);\n }\n }\n GetAll() {\n this.page = 1;\n this.spinner.show();\n this.HinhThucService.GetAll(this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DataFilter = z.Data;\n this.DataView = this.dataTable.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n this.numberPage = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).arrNumberPage_chil;\n this.totalItem = z.Data.length;\n this.totalItemFilter = z.Data.length;\n this.spinner.hide();\n },(err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n getListBuilding() {\n this.FillToaNha = '';\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n });\n }\n\n ChangeToaNha() {\n let id_toa_nha = this.FilterForm.value.Ten_nha_ft;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n ChangeToaNhaInsert() {\n let id_toa_nha = this.FilterForm.value.Ten_toa_nha;\n this.dataRoomView = this.dataRoom.filter((x) => x.ID_Toa_Nha == id_toa_nha);\n }\n\n getListRoom() {\n this.FillPhong = '';\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoom = z.Data;\n this.dataRoomView = z.Data;\n //this.Filter();\n });\n } // list phòng\n GetCount(req) {\n this.HinhThucService.Count(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.totalItem = z.Message;\n }\n });\n }\n getListThietBi() {\n this.DeviceService.getList(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.DataThietBi = z.Data;\n } else {\n this.toastr.error(z.Message);\n }\n });\n }\n openModal(content, sizm, category, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (category == 'Insert') {\n this.titleModal = 'Thêm hình thức kỷ luật khen thưởng';\n this.isInsert = true;\n this.InsertForm.setValue({\n Hinh_thuc:'',\n Loai_hinh_thuc: '',\n Ghi_chu:'',\n });\n }\n if (category == 'Update') {\n this.titleModal = 'Sửa hình thức kỷ luật khen thưởng';\n this.UpdateForm.setValue({\n ID_hinh_thuc: Data.ID_hinh_thuc,\n Hinh_thuc: Data.Hinh_thuc,\n Loai_hinh_thuc: Data.Loai_hinh_thuc,\n Ghi_chu: Data.Ghi_chu,\n });\n }\n if (category == 'Delete') {\n this.ID_hinh_thuc = Data.ID_hinh_thuc;\n }\n }\n changPage(event) {\n this.handlePageChange(event);\n //this.spinner.show();\n this.DataView = this.DataFilter.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n // this.arrNumberPage_chil = this.createNumberPage(\n // this.DataFilter.length,\n // this.pageSize\n // ).arrNumberPage_chil;\n }\n\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n //this.GetCount();\n this.GetAll();\n }\n get checkvalue() {\n return this.InsertForm.controls;\n }\n Delete() {\n let req = {\n ID_hinh_thuc: this.ID_hinh_thuc,\n };\n this.modalService.dismissAll();\n this.HinhThucService.Delete(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n },(err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n Insert() {\n this.submitted = true;\n if (this.InsertForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n let req = {\n ID_hinh_thuc: this.InsertForm.value.ID_hinh_thuc,\n Hinh_thuc: this.InsertForm.value.Hinh_thuc,\n Loai_hinh_thuc: this.InsertForm.value.Loai_hinh_thuc,\n Ghi_chu: this.InsertForm.value.Ghi_chu,\n };\n if (this.isInsert == true) {\n this.HinhThucService.Insert(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n },(err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n this.modalService.dismissAll();\n }\n }\n update() {\n this.submitted = true;\n if (this.UpdateForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n let req = {\n ID_hinh_thuc: this.UpdateForm.value.ID_hinh_thuc,\n Hinh_thuc: this.UpdateForm.value.Hinh_thuc,\n Loai_hinh_thuc: this.UpdateForm.value.Loai_hinh_thuc,\n Ghi_chu: this.UpdateForm.value.Ghi_chu,\n };\n this.HinhThucService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n },(err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n\n this.modalService.dismissAll();\n }\n Filter() {\n this.DataFilter = this.dataTable;\n\n if (\n this.FilterForm.value.Hinh_thuc_ft != '' &&\n this.FilterForm.value.Hinh_thuc_ft != undefined\n ) {\n this.DataFilter = this.DataFilter.filter(\n (x) => x.Hinh_thuc == this.FilterForm.value.Hinh_thuc_ft\n );\n }\n if (\n this.FilterForm.value.Loai_hinh_thuc_ft != '' &&\n this.FilterForm.value.Loai_hinh_thuc_ft != undefined\n ) {\n this.DataFilter = this.DataFilter.filter(\n (x) => x.Loai_hinh_thuc == this.FilterForm.value.Loai_hinh_thuc_ft\n );\n }\n this.page = 1;\n for (var i = 0; i < this.DataFilter.length; i++) {\n this.DataFilter[i].STT = i + 1;\n }\n this.totalItemFilter = this.DataFilter.length;\n this.DataView = this.DataFilter.filter(\n (x) =>\n x.STT > (this.page - 1) * this.pageSize &&\n x.STT <= this.page * this.pageSize\n );\n this.numberPage = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).arrNumberPage_chil;\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Hình thức khen thưởng kỷ luật
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTHình thứcLoại hình thứcGhi chúThao tác
{{ p.STT }}{{ p.Hinh_thuc }}Khen thưởngKỷ luật{{ p.Ghi_chu }}\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n Hình thức không quá 500 ký tự\n
\n
\n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n Loại hinh thức không quá 500 ký tự\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n Hình thức không quá 500 ký tự\n
\n
\n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn muốn xoá hình thức này\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { InvoinceService } from 'src/app/Utils/services/invoince.service';\nimport { formatDate } from '@angular/common';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-invoice-add',\n templateUrl: './invoice-add.component.html',\n styleUrls: ['./invoice-add.component.scss'],\n})\nexport class InvoiceAddComponent implements OnInit {\n HoanTraData: any = [];\n SinhVienData: any = [];\n TongHopData: any = [];\n Nam_hoc_arr: any = [];\n inputData: any = [];\n KhoanThuData: any = [];\n dataSinhVien: any = [];\n submitted = false;\n public com: common;\n Token: string;\n default: any;\n date_now = formatDate(new Date(), 'yyyy-MM-dd', 'en');\n\n Insert = new FormGroup({\n Hoc_ky: new FormControl(1),\n Nam_hoc: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n ),\n Gian_thu: new FormControl(1),\n Lan_thu: new FormControl(1),\n Ngay_chi: new FormControl(this.date_now, [Validators.required]),\n So_phieu: new FormControl(null),\n Loai_tien: new FormControl('VND'),\n code: new FormControl('', [Validators.required]),\n\n Ho_ten: new FormControl(null),\n Lop: new FormControl(null),\n Noi_dung: new FormControl('Hoàn trả tiền phòng'),\n });\n constructor(\n private modalService: NgbModal,\n public router: Router,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n public InvoinceService: InvoinceService\n ) {}\n\n ngOnInit(): void {\n if (new Date().getMonth() > 8) {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n );\n } else {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear()\n );\n }\n\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n }\n OnSearch($event) {\n this.InvoinceService.getSinhVien($event.term, this.Token).subscribe((z) => {\n this.dataSinhVien = z.Data;\n });\n }\n search() {\n this.InvoinceService.getChiTietSinhVien(\n this.Insert.value.code,\n this.Token\n ).subscribe((z) => {\n this.Insert.patchValue({ Ho_ten: z.SinhVienData.Ho_ten });\n this.Insert.patchValue({ Lop: z.SinhVienData.Ten_lop });\n this.Insert.patchValue({ So_phieu: z.SinhVienData.So_phieu });\n this.SinhVienData = z.SinhVienData;\n this.HoanTraData = z.HoanTraData;\n this.TongHopData = z.TongHopData;\n });\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n CheckAll() {\n if ($('#SelectALL').prop('checked')) {\n for (let index = 0; index < this.HoanTraData.length; index++) {\n this.HoanTraData[index].Selected = true;\n }\n } else {\n for (let index = 0; index < this.HoanTraData.length; index++) {\n this.HoanTraData[index].Selected = false;\n }\n }\n }\n selectHoanTraData(data, i) {\n for (let index = 0; index < this.HoanTraData.length; index++) {\n if (index == i) {\n if ($('#ID_' + i).prop('checked')) {\n {\n this.HoanTraData[index].Selected = true;\n }\n } else {\n this.HoanTraData[index].Selected = false;\n }\n break;\n }\n }\n }\n changeSinhVien() {\n this.InvoinceService.getThongTinKhoanChi(\n this.Insert.value.code,\n this.Token\n ).subscribe((z) => {\n this.SinhVienData = z.SinhVienData;\n this.HoanTraData = z.KhoanChiData;\n this.TongHopData = z.TongHopData;\n this.Insert.patchValue({ So_phieu: z.So_phieu });\n });\n }\n OnSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n var lst = jQuery.grep(this.HoanTraData, function (pa: any, i) {\n return pa.Selected;\n });\n\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn khoản chi!');\n } else {\n var So_tien = 0;\n lst.forEach((value) => {\n So_tien += value.So_tien_tra;\n });\n let input = {\n lstKhoanHoanTra: lst,\n BienLaiData: {\n Hoc_ky: this.Insert.value.Hoc_ky,\n Nam_hoc: this.Insert.value.Nam_hoc,\n Lan_thu: this.Insert.value.Lan_thu,\n ID_sv: this.Insert.value.code,\n Thu_chi: false,\n ID_lop: 0,\n So_phieu: this.Insert.value.So_phieu,\n Ngay_thu: this.Insert.value.Ngay_chi,\n Noi_dung: this.Insert.value.Noi_dung,\n Ngoai_te: this.Insert.value.Loai_tien,\n So_tien: So_tien,\n Ghi_chu: '',\n },\n };\n this.InvoinceService.Insert(input, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success('Thêm thành công');\n this.search();\n } else {\n this.toastr.error('Thêm thất bại');\n }\n });\n }\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. \n  Biên lai hóa đơn\n
  4. \n
  5. Lập biên lai chi
  6. \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n Tìm kiếm sinh viên\n {{value.Ho_ten}}\n \n \n
\n
\n
\n Sinh viên không được bỏ trống!\n
\n
\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n Ngày chi không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Học kỳNăm họcĐợtThángKhoản thuSố tiền
\n \n {{ element.Hoc_ky }}{{ element.Nam_hoc }}{{ element.Dot }}{{ element.Thang }}{{ element.Ten_thu_chi }}{{ element.So_tien_tra |number }}
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Khoản nộpSố tiền phải nộpSố tiền đã nộpSố tiền Hoàn trảSố tiền thiếu/thừa
{{ i.Ten_thu_chi }}{{ i.So_tien_phai_nop|number }}{{ i.So_tien_da_nop |number}}{{ i.So_tien_hoan_tra |number}}{{ i.So_tien_thieu_thua |number}}
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { formatDate } from '@angular/common';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n FormControlName,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { InvoinceService } from 'src/app/Utils/services/invoince.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { ExportService } from 'src/app/Utils/services/export.service';\nimport { AbstractControl } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\nimport * as XLSX from 'xlsx'\n@Component({\n selector: 'app-invoince',\n templateUrl: './invoince.component.html',\n styleUrls: ['./invoince.component.scss'],\n})\nexport class InvoinceComponent extends BaseComponent implements OnInit {\n ID_bien_lai: any;\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n dataImport: any = [];\n Nam_hoc_arr: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n So_the: any;\n dt_print: any = '123';\n dt_print2: any = '123';\n Ngay_cap_the: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n dt_detail: any;\n NameTitle: string;\n Title: string = 'Đang tải danh sách...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n Hoc_ky: any = '';\n Nam_hoc: any = '';\n Thu_chi: any = '';\n Huy_phieu: any = '';\n Tu_ngay: any = '';\n Den_ngay: any = '';\n Ma_ten_sv: any = '';\n public com: common;\n FormFilter = new FormGroup({\n Tu_ngay: new FormControl(\n formatDate(\n new Date().setMonth(new Date().getMonth() - 1),\n 'yyyy-MM-dd',\n 'en'\n )\n ),\n Den_ngay: new FormControl(formatDate(new Date(), 'yyyy-MM-dd', 'en')),\n });\n Filter = new FormGroup({\n Ma_sv_ft: new FormControl(null),\n Hoc_ky_ft: new FormControl(''),\n Nam_hoc_ft: new FormControl(''),\n Loai_phieu_ft: new FormControl(''),\n Huy_phieu_ft: new FormControl(false),\n });\n ngOnInit() {\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n this.Nam_hoc =\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\n }\n this.getToken();\n this.getCount();\n this.getList();\n }\n getCount() {\n this.InvoinceService.Count(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Thu_chi: this.Thu_chi,\n Huy_phieu: this.Huy_phieu,\n Tu_ngay: this.Tu_ngay,\n Den_ngay: this.Den_ngay,\n Ma_ten_sv: this.Ma_ten_sv,\n };\n this.InvoinceService.getList(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.InvoinceService.CountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n }\n );\n }\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.Hoc_ky = '';\n this.Nam_hoc = '';\n this.Thu_chi = '';\n this.Huy_phieu = '';\n this.Tu_ngay = '';\n this.Den_ngay = '';\n this.Ma_ten_sv = '';\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Thu_chi: this.Thu_chi,\n Huy_phieu: this.Huy_phieu,\n Tu_ngay: this.Tu_ngay,\n Den_ngay: this.Den_ngay,\n Ma_ten_sv: this.Ma_ten_sv,\n };\n this.InvoinceService.getList(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n });\n }\n Find() {\n let Tungay = this.FormFilter.value.Tu_ngay;\n let Denngay = this.FormFilter.value.Den_ngay;\n let array = [{ Tu_ngay: Tungay, Den_ngay: Denngay }];\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList();\n }\n open(content, sizm, Loai, Data) {\n this.ID_bien_lai = Data.ID_bien_lai;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Print(Data) {\n this.dt_print = Data;\n this.InvoinceService.getdetail(\n this.dt_print.ID_bien_lai,\n this.Token\n ).subscribe((z) => {\n this.dt_detail = z.Data;\n });\n setTimeout(() => {\n let printContents = document.getElementById('print-section').innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n\n mywindow.print();\n // mywindow.close();\n }, 200);\n this.modalService.dismissAll('DeleteModal');\n }\n Print2(Data) {\n this.dt_print = Data;\n this.InvoinceService.getdetail(\n this.dt_print.ID_bien_lai,\n this.Token\n ).subscribe((z) => {\n this.dt_detail = z.Data;\n });\n\n setTimeout(() => {\n let printContents = document.getElementById('print-section2').innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n\n mywindow.print();\n // mywindow.close();\n }, 200);\n this.modalService.dismissAll('DeleteModal');\n }\n filterById() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n });\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_sv_dt = data[2];\n let Hoc_ky_dt = data[6];\n let Nam_hoc_dt = data[7];\n let Loai_phieu_dt = data[12];\n let Huy_phieu_data = data[13];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let bool4 = true;\n let bool5 = true;\n let fillter = true;\n if (this.Filter.value.Ma_sv_ft != undefined) {\n var a = this.removeAccents(Ma_sv_dt);\n var b = this.removeAccents(this.Filter.value.Ma_sv_ft);\n bool1 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (\n this.Filter.value.Hoc_ky_ft != '' &&\n this.Filter.value.Hoc_ky_ft != undefined\n ) {\n var a = Hoc_ky_dt;\n var b = this.Filter.value.Hoc_ky_ft;\n bool2 = a == b;\n }\n if (\n this.Filter.value.Nam_hoc_ft != undefined ||\n this.Filter.value.Nam_hoc_ft != ''\n ) {\n var a = this.removeAccents(Nam_hoc_dt);\n var b = this.removeAccents(this.Filter.value.Nam_hoc_ft);\n bool3 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (\n this.Filter.value.Loai_phieu_ft != '' &&\n this.Filter.value.Loai_phieu_ft != undefined\n ) {\n var a = this.removeAccents(Loai_phieu_dt);\n var b = this.removeAccents(this.Filter.value.Loai_phieu_ft);\n bool4 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (this.Filter.value.Huy_phieu_ft != false) {\n var b = this.Filter.value.Huy_phieu_ft.toString();\n\n var a = Huy_phieu_data;\n\n bool5 = a == b;\n }\n\n fillter = bool1 && bool2 && bool3 && bool4 && bool5;\n\n return fillter;\n });\n }\n print() {\n this.spinner.show();\n let req = {\n Hoc_ky: this.Hoc_ky,\n Nam_hoc: this.Nam_hoc,\n Thu_chi: this.Thu_chi,\n Huy_phieu: this.Huy_phieu,\n Tu_ngay: this.Tu_ngay,\n Den_ngay: this.Den_ngay,\n Ma_ten_sv: this.Ma_ten_sv,\n };\n this.InvoinceService.Excel(req, this.Token).subscribe((z) => {\n this.exportService.exportExcelByte(z.FileData, 'Bien_lai_hoa_don');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n });\n }\n removeAccents(str) {\n var AccentsMap = [\n 'aàảãáạăằẳẵắặâầẩẫấậ',\n 'AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ',\n 'dđ',\n 'DĐ',\n 'eèẻẽéẹêềểễếệ',\n 'EÈẺẼÉẸÊỀỂỄẾỆ',\n 'iìỉĩíị',\n 'IÌỈĨÍỊ',\n 'oòỏõóọôồổỗốộơờởỡớợ',\n 'OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ',\n 'uùủũúụưừửữứự',\n 'UÙỦŨÚỤƯỪỬỮỨỰ',\n 'yỳỷỹýỵ',\n 'YỲỶỸÝỴ',\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n updateStatus() {\n let req = {\n ID_bien_lai: this.ID_bien_lai,\n Huy_phieu: 1,\n };\n this.InvoinceService.updateStatus(req, this.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList();\n });\n }\n help() {\n const urlHelp =\n this.appConfig.HelpUrl + '?' + this.appConfig.document_BienLai;\n window.open(urlHelp, '_blank');\n }\n fileUpload(event:any){\n const selectedFile = event.target.files[0]\n const fileReader = new FileReader();\n fileReader.readAsBinaryString(selectedFile)\n fileReader.onload = (event)=>{\n let binaryData = event.target.result\n let workbook = XLSX.read(binaryData,{type:'binary'})\n workbook.SheetNames.forEach(sheet => {\n const data = XLSX.utils.sheet_to_json(workbook.Sheets[sheet])\n this.dataImport = data\n })\n }\n }\n ImportKhoanThuChiExcel(){\n this.spinner.show()\n this.InvoinceService.ImportExcel(this.dataImport,this.Token).subscribe(x=>{\n this.spinner.hide()\n if(x.Status == 2){\n this.toastr.success(x.Message)\n }else{\n this.toastr.warning(x.Message)\n }\n })\n\n }\n}\n","
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n Tất cả\n 1\n 2\n 3\n \n
\n
\n \n \n {{ value.name }}\n \n
\n
\n \n \n Tất cả\n Phiếu chi\n Phiếu thu\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n Tất cả\n Phiếu thường\n Phiếu huỷ\n \n
\n
\n
\n
\n
\n
\n \n \n
\n\n
\n \n
\n
\n \n
\n\n
\n
\n \n Bạn có muốn huỷ biên lai\n

\n
\n \n Đồng ý\n \n \n Hủy bỏ\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n Import khoản nộp ký túc xá\n
\n \n Tải File mẫu Excel tại đây\n
\n\n
\n
\n \n
\n
\n
\n
\n \n Lưu\n \n
\n
\n \n Hủy\n \n
\n
\n
\n
\n
\n\n","import { formatDate } from '@angular/common';\nimport { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../../base/base.component';\n\n@Component({\n selector: 'app-khoan-thu-add',\n templateUrl: './khoan-thu-add.component.html',\n styleUrls: ['./khoan-thu-add.component.scss'],\n})\nexport class KhoanThuAddComponent extends BaseComponent implements OnInit {\n dataSinhVien = [];\n Nam_hoc_arr = [];\n KhoanThuData: any = [];\n SinhVienData: any = [];\n TongHopData: any = [];\n date_now = formatDate(new Date(), 'yyyy-MM-dd', 'en');\n Insert = new FormGroup({\n Hoc_ky: new FormControl(1),\n Nam_hoc: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n ),\n Gian_thu: new FormControl(1),\n Lan_thu: new FormControl(1),\n Ngay_chi: new FormControl(this.date_now, [Validators.required]),\n So_phieu: new FormControl(null),\n Loai_tien: new FormControl('VND'),\n code: new FormControl('', [Validators.required]),\n Noi_dung: new FormControl('Thu tiền nội trú KTX'),\n });\n ngOnInit(): void {\n if (new Date().getMonth() > 8) {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n );\n } else {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear()\n );\n }\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.getToken();\n }\n OnSearch($event) {\n this.InvoinceService.getSinhVien($event.term, this.Token).subscribe((z) => {\n this.dataSinhVien = z.Data;\n });\n }\n OnSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n var lst = jQuery.grep(this.KhoanThuData, function (pa: any, i) {\n return pa.Selected;\n });\n\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn khoản thu!');\n } else {\n var So_tien = 0;\n lst.forEach((value) => {\n So_tien += value.So_tien_thu;\n });\n\n let input = {\n lstKhoanHoanTra: lst,\n BienLaiData: {\n Hoc_ky: this.Insert.value.Hoc_ky,\n Nam_hoc: this.Insert.value.Nam_hoc,\n Lan_thu: this.Insert.value.Lan_thu,\n ID_sv: this.Insert.value.code,\n Thu_chi: true,\n ID_lop: 0,\n So_phieu: this.Insert.value.So_phieu,\n Ngay_thu: this.Insert.value.Ngay_chi,\n Noi_dung: this.Insert.value.Noi_dung,\n Ngoai_te: this.Insert.value.Loai_tien,\n So_tien: So_tien,\n Ghi_chu: '',\n },\n };\n this.spinner.show();\n this.InvoinceService.InsertKhoanThu(input, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success('Thêm thành công');\n this.KhoanThuData = [];\n this.TongHopData = [];\n this.dataSinhVien = [];\n this.Insert.value.code = '';\n } else {\n this.toastr.error('Thêm thất bại');\n }\n this.spinner.hide();\n });\n }\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n changeSinhVien() {\n this.InvoinceService.getThongTinKhoanThu(\n this.Insert.value.code,\n this.Token\n ).subscribe((z) => {\n this.SinhVienData = z.SinhVienData;\n this.KhoanThuData = z.KhoanThuData;\n this.TongHopData = z.TongHopData;\n this.Insert.patchValue({ So_phieu: z.So_phieu });\n });\n }\n CheckAll() {\n if ($('#SelectALL').prop('checked')) {\n for (let index = 0; index < this.KhoanThuData.length; index++) {\n this.KhoanThuData[index].Selected = true;\n }\n } else {\n for (let index = 0; index < this.KhoanThuData.length; index++) {\n this.KhoanThuData[index].Selected = false;\n }\n }\n }\n selectHoanTraData(data, i) {\n for (let index = 0; index < this.KhoanThuData.length; index++) {\n if (index == i) {\n if ($('#ID_' + i).prop('checked')) {\n {\n this.KhoanThuData[index].Selected = true;\n }\n } else {\n this.KhoanThuData[index].Selected = false;\n }\n break;\n }\n }\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. \n  Biên lai hóa đơn\n
  4. \n
  5. Lập biên lai thu
  6. \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n Tìm kiếm sinh viên\n {{value.Ho_ten}}\n \n \n
\n
\n
\n Sinh viên không được bỏ trống!\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n Ngày chi không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Học kỳNăm họcĐợtThángKhoản thuSố tiền
\n \n {{ element.Hoc_ky }}{{ element.Nam_hoc }}{{ element.Dot }}{{ element.Thang }}{{ element.Ten_thu_chi }}{{ element.So_tien_thu |number }}
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Khoản nộpSố tiền phải nộpSố tiền đã nộpSố tiền Hoàn trảSố tiền thiếu/thừa
{{ i.Ten_thu_chi }}{{ i.So_tien_phai_nop|number }}{{ i.So_tien_da_nop |number}}{{ i.So_tien_hoan_tra |number}}{{ i.So_tien_thieu_thua |number}}
\n
\n
\n
","import { Component, OnInit, SimpleChanges, Input } from '@angular/core';\nimport { InvoinceService } from 'src/app/Utils/services/invoince.service';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-receipt-payment',\n templateUrl: './receipt-payment.component.html',\n styleUrls: ['./receipt-payment.component.scss']\n})\nexport class ReceiptPaymentComponent implements OnInit {\n @Input() public dt_print: any;\n @Input() public dt_detail: any;\n @Input() typeReceipt: any;\n // tmlPrintEW:TemplateRef;\n studyClass: any;\n date: any = new Date();\n arr_number: any = [\n 'không',\n 'một',\n 'hai',\n 'ba',\n 'bốn',\n 'năm',\n 'sáu',\n 'bảy',\n 'tám',\n 'chín',\n ];\n money_words: any;\n dt_payment: any = [];\n dt_money: any = 0;\n Token: any;\n public com: common;\n dataTable: any;\n constructor(private InvoinceService: InvoinceService,\n public router: Router,\n ) { }\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n\n\n }\n\n ngOnChanges(changes: SimpleChanges) {\n\n }\n\n // getList(id_dang_ky) {\n\n // this.ListAllService.getListReceipt(id_dang_ky,this.Token).subscribe((z) => {\n // this.dataTable = z.Data;\n // if (this.dataTable) {\n // this.dataTable.forEach(element => {\n // this.dt_money +=element.So_tien_thuc_nop\n\n // });\n // this.money_words = this.DocTienBangChu(this.dt_money);\n // }\n\n // });\n // }\n\n DocTienBangChu(so) {\n if (so == 0) return this.arr_number[0];\n let chuoi = '',\n hauto = '';\n do {\n let ty = so % 1000000000;\n so = Math.floor(so / 1000000000);\n if (so > 0) {\n chuoi = this.dochangtrieu(ty, true) + hauto + chuoi;\n } else {\n chuoi = this.dochangtrieu(ty, false) + hauto + chuoi;\n }\n hauto = ' tỷ';\n } while (so > 0);\n return chuoi.charAt(1).toUpperCase() + chuoi.slice(2);\n } //đọc tiền\n\n dochangchuc(so, daydu) {\n let chuoi = '';\n let chuc = Math.floor(so / 10);\n let donvi = so % 10;\n if (chuc > 1) {\n chuoi = ' ' + this.arr_number[chuc] + ' mươi';\n if (donvi == 1) {\n chuoi += ' mốt';\n }\n } else if (chuc == 1) {\n chuoi = ' mười';\n if (donvi == 1) {\n chuoi += ' một';\n }\n } else if (daydu && donvi > 0) {\n chuoi = ' lẻ';\n }\n\n if (donvi == 5 && chuc >= 1) {\n chuoi += ' lăm';\n } else if (donvi > 1 || (donvi == 1 && chuc == 0)) {\n chuoi += ' ' + this.arr_number[donvi];\n }\n return chuoi;\n }\n\n docblock(so, daydu) {\n let chuoi = '';\n let tram = Math.floor(so / 100);\n so = so % 100;\n if (daydu || tram > 0) {\n chuoi = ' ' + this.arr_number[tram] + ' trăm';\n chuoi += this.dochangchuc(so, true);\n } else {\n chuoi = this.dochangchuc(so, false);\n }\n return chuoi;\n }\n\n dochangtrieu(so, daydu) {\n let chuoi = '';\n let trieu = Math.floor(so / 1000000);\n so = so % 1000000;\n if (trieu > 0) {\n chuoi = this.docblock(trieu, daydu) + ' triệu';\n daydu = true;\n }\n let nghin = Math.floor(so / 1000);\n so = so % 1000;\n if (nghin > 0) {\n chuoi += this.docblock(nghin, daydu) + ' nghìn';\n daydu = true;\n }\n if (so > 0) {\n chuoi += this.docblock(so, daydu);\n }\n return chuoi;\n }\n\n\n}\n","\n
\n\n \n \n \n \n \n \n \n
\n

Đơn vị: Trường Đại học Sư phạm Hà Nội

\n

Mã QHNS: 1055502

\n
\n

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

\n

Độc lập - Tự do - Hạnh phúc

\n
\n

 

\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

 

\n
\n

BIÊN LAI CHI TIỀN

\n

Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm\n {{date | date: 'yyyy'}}

\n
\n

 

\n
\n

 

\n
\n

 

\n
\n

Quyển số: {{dt_print.So_phieu_header }}

\n

Số: {{dt_print.So_phieu}}

\n
\n

Họ và tên người nhận tiền: {{dt_print.Ho_ten}}

\n

Mã sinh viên: {{dt_print.Ma_sv}}

\n

Phòng ở: {{dt_print.Ten_phong}}

\n

Tôi có nhận của Ban Quản lý Ký túc xá – Trường Đại học Sư phạm Hà Nội số tiền với nội dung như sau:

\n \n \n \n \n \n \n \n \n \n \n \n
STTTên khoản thuSố tiền
{{i+1}}{{p.Ten_thu_chi}}{{p.So_tien_thuc_nop|number}}
\n

 

\n

Số tiền nhận: {{dt_print.So_tien|number}} ( {{dt_print.Ngoai_te}})

\n

(Viết bằng chữ): {{dt_print.So_tien_chu}}\n

\n

 

\n \n \n \n \n \n \n \n \n
\n

BAN QUẢN LÝ KTX
(Ký, họ tên)

\n
\n

KẾ TOÁN
(Ký, họ tên)

\n
\n

NGƯỜI NHẬN TIỀN
(Ký, họ tên)

\n
\n

 

\n
","import { Component, OnInit, SimpleChanges, Input } from '@angular/core';\nimport { InvoinceService } from 'src/app/Utils/services/invoince.service';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-receipts',\n templateUrl: './receipts.component.html',\n styleUrls: ['./receipts.component.scss']\n})\nexport class ReceiptsComponent implements OnInit {\n @Input() public dt_print: any;\n @Input() public dt_detail: any;\n @Input() typeReceipt: any;\n // tmlPrintEW:TemplateRef;\n studyClass: any;\n date: any = new Date();\n arr_number: any = [\n 'không',\n 'một',\n 'hai',\n 'ba',\n 'bốn',\n 'năm',\n 'sáu',\n 'bảy',\n 'tám',\n 'chín',\n ];\n money_words: any;\n dt_payment: any = [];\n dt_money: any = 0;\n Token: any;\n public com: common;\n dataTable: any;\n constructor(private InvoinceService: InvoinceService,\n public router: Router,\n ) { }\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n \n\n }\n\n // getList(id_dang_ky) {\n\n // this.ListAllService.getListReceipt(id_dang_ky,this.Token).subscribe((z) => {\n // this.dataTable = z.Data;\n // if (this.dataTable) {\n // this.dataTable.forEach(element => {\n // this.dt_money +=element.So_tien_thuc_nop\n\n // });\n // this.money_words = this.DocTienBangChu(this.dt_money);\n // }\n\n // });\n // }\n\n DocTienBangChu(so) {\n if (so == 0) return this.arr_number[0];\n let chuoi = '',\n hauto = '';\n do {\n let ty = so % 1000000000;\n so = Math.floor(so / 1000000000);\n if (so > 0) {\n chuoi = this.dochangtrieu(ty, true) + hauto + chuoi;\n } else {\n chuoi = this.dochangtrieu(ty, false) + hauto + chuoi;\n }\n hauto = ' tỷ';\n } while (so > 0);\n return chuoi.charAt(1).toUpperCase() + chuoi.slice(2);\n } //đọc tiền\n\n dochangchuc(so, daydu) {\n let chuoi = '';\n let chuc = Math.floor(so / 10);\n let donvi = so % 10;\n if (chuc > 1) {\n chuoi = ' ' + this.arr_number[chuc] + ' mươi';\n if (donvi == 1) {\n chuoi += ' mốt';\n }\n } else if (chuc == 1) {\n chuoi = ' mười';\n if (donvi == 1) {\n chuoi += ' một';\n }\n } else if (daydu && donvi > 0) {\n chuoi = ' lẻ';\n }\n\n if (donvi == 5 && chuc >= 1) {\n chuoi += ' lăm';\n } else if (donvi > 1 || (donvi == 1 && chuc == 0)) {\n chuoi += ' ' + this.arr_number[donvi];\n }\n return chuoi;\n }\n\n docblock(so, daydu) {\n let chuoi = '';\n let tram = Math.floor(so / 100);\n so = so % 100;\n if (daydu || tram > 0) {\n chuoi = ' ' + this.arr_number[tram] + ' trăm';\n chuoi += this.dochangchuc(so, true);\n } else {\n chuoi = this.dochangchuc(so, false);\n }\n return chuoi;\n }\n\n dochangtrieu(so, daydu) {\n let chuoi = '';\n let trieu = Math.floor(so / 1000000);\n so = so % 1000000;\n if (trieu > 0) {\n chuoi = this.docblock(trieu, daydu) + ' triệu';\n daydu = true;\n }\n let nghin = Math.floor(so / 1000);\n so = so % 1000;\n if (nghin > 0) {\n chuoi += this.docblock(nghin, daydu) + ' nghìn';\n daydu = true;\n }\n if (so > 0) {\n chuoi += this.docblock(so, daydu);\n }\n return chuoi;\n }\n\n\n}\n","\n
\n\n \n \n \n \n \n \n \n
\n

Đơn vị: Trường Đại học Sư phạm Hà Nội

\n

Mã QHNS: 1055502

\n
\n

Mẫu số: C45-BB

\n

(Ban hành kèm theo Thông tư số 107/2017/TT-BTC\n ngày 10/10/2017 của Bộ Tài chính)

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

 

\n
\n

BIÊN LAI XÁC NHẬN ĐÃ THU TIỀN

\n

Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm\n {{date | date: 'yyyy'}}

\n
\n

 

\n
\n

 

\n
\n

 

\n
\n

Quyển số: {{dt_print.So_phieu_header }}

\n

Số: {{dt_print.So_phieu}}

\n
\n

Họ và tên người nộp: {{dt_print.Ho_ten}}

\n

Mã sinh viên: {{dt_print.Ma_sv}}

\n

Phòng ở: {{dt_print.Ten_toa_nha}}-{{dt_print.Ten_phong}}

\n

Nội dung thu:

\n \n \n \n \n \n \n \n \n \n \n \n
STTTên khoản thuSố tiền
{{i+1}}{{p.Ten_thu_chi}}{{p.So_tien_thuc_nop|number}}
\n

Số tiền thu: {{dt_print.So_tien|number}} ( {{dt_print.Ngoai_te}})

\n

(viết bằng chữ): {{dt_print.So_tien_chu}}\n

\n

 

\n \n \n \n \n \n \n \n
\n

NGƯỜI NỘP TIỀN
(Ký, họ tên)

\n
\n

NGƯỜI XÁC NHẬN
(Ký, họ tên)

\n
\n

 

\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Subject } from 'rxjs';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n NgModel,\n} from '@angular/forms';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { BaseComponent } from 'src/app/components/base/base.component';\nimport { LOADIPHLPAPI } from 'dns';\n@Component({\n selector: 'app-khen-thuong-ky-luat',\n templateUrl: './khen-thuong-ky-luat.component.html',\n styleUrls: ['./khen-thuong-ky-luat.component.scss'],\n})\nexport class KhenThuongKyLuatComponent extends BaseComponent implements OnInit {\n titleModal: any = '';\n isInsert: any;\n req: any;\n DataToaNha: any;\n show_search: any = true;\n Nam_hoc_arr: any = [];\n Hoc_ky_arr: any = [];\n List_phong_ban: any;\n Ma_kho_checkexist: any;\n Ma_sv: any;\n ID: any;\n public arrNumberPage2_child: any;\n numberPage2: any;\n FillToaNha: any;\n FillPhong: any = '';\n FillQuyetDinh: any = '';\n totalRecord2: any = 0;\n pageSize2: any = 10;\n dataSV2: any = [];\n dataHinhThuc: any = [];\n dataHinhThuc1: any = [];\n page_sv: any = 1;\n beforeFilter: any = [];\n Ngay_sinh: any;\n dataQuyetDinhView: any;\n dataSV: any = [];\n Display: any = false;\n DataKhenThuong: any = [];\n DataRoom: any = [];\n DataThietBi: any = [];\n DataHinhThuc: any = [];\n DataView: any = [];\n DataFilter: any = [];\n dataRoomView: any;\n dataHinhThucView: any;\n dataQuyetDinh: any;\n dataSVO: any;\n Date = new Date();\n FilterForm = new FormGroup({\n ID_phong_ft: new FormControl(''),\n Ten_nha_ft: new FormControl(null),\n So_quyet_dinh_ft: new FormControl(null),\n Hoc_ky_ft: new FormControl(\"\"),\n Nam_hoc_ft: new FormControl(\n this.Date.getFullYear() + '-' + (this.Date.getFullYear() + 1)\n ),\n Ma_sv_ft: new FormControl(null,removeSpaces),\n Ten_sv_ft: new FormControl(null),\n Loai_quyet_dinh_ft: new FormControl(null),\n Ten_thiet_bi_ft: new FormControl(null, [removeSpaces]),\n Tu_ngay_ft: new FormControl(null),\n Den_ngay_ft: new FormControl(null),\n });\n\n InsertForm = new FormGroup({\n ID_sv: new FormControl(null),\n So_quyet_dinh: new FormControl(null, [Validators.required, removeSpaces]),\n Ngay_quyet_dinh: new FormControl(null),\n ID_hinh_thuc: new FormControl(null, [Validators.required]),\n Loai_quyet_dinh: new FormControl(null, [Validators.required]),\n Cap_ky_luat_khen_thuong: new FormControl(null, [Validators.required]),\n Noi_dung: new FormControl(null),\n ID_phong: new FormControl(null),\n Ten_phong: new FormControl(null),\n Ten_toa_nha: new FormControl(null),\n Hoc_ky: new FormControl(1, [Validators.required]),\n Nam_hoc: new FormControl(\n this.Date.getFullYear() + '-' + (this.Date.getFullYear() + 1),\n [Validators.required]\n ),\n });\n UpdateForm = new FormGroup({\n ID: new FormControl(null),\n ID_sv: new FormControl(null),\n Ho_ten: new FormControl(null,removeSpaces),\n Ma_sv: new FormControl(null,removeSpaces),\n So_quyet_dinh: new FormControl(null, [Validators.required]),\n Ngay_quyet_dinh: new FormControl(),\n ID_hinh_thuc: new FormControl(null, [Validators.required]),\n Loai_quyet_dinh: new FormControl(null, [Validators.required]),\n Cap_ky_luat_khen_thuong: new FormControl(null, [Validators.required]),\n Noi_dung: new FormControl(null),\n ID_phong: new FormControl(null),\n Ten_phong: new FormControl(null),\n Ten_toa_nha: new FormControl(null),\n Hoc_ky: new FormControl(null),\n Nam_hoc: new FormControl(null),\n });\n dtTrigger = new Subject();\n public com: common;\n ngOnInit(): void {\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let Hoc_ky_string= this.FilterForm.value.Hoc_ky;\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n this.Hoc_ky_arr.push(object)\n yearNow--;\n }\n this.getToken();\n this.GetAll();\n this.getListRoom();\n this.getListBuilding();\n this.getHoSoSV();\n this.getListHinhThuc();\n this.getListQuyetDinh();\n this.Filter();\n }\n hidesearch() {\n if (this.show_search == true) {\n return (this.show_search = false);\n }\n if (this.show_search == false) {\n return (this.show_search = true);\n }\n }\n GetAll() {\n this.page = 1;\n this.spinner.show();\n this.KhenThuongKyLuatService.GetAll(this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DataFilter = z.Data;\n this.DataView = this.dataTable.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n this.numberPage = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).arrNumberPage_chil;\n this.totalItem = z.Data.length;\n this.totalItemFilter = z.Data.length;\n this.spinner.hide();\n });\n }\n getListBuilding() {\n this.FillToaNha = '';\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n });\n }\n ChangeToaNha() {\n let id_toa_nha = this.FilterForm.value.Ten_nha_ft;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n ChangeSV(){\n let id_sv=this.FilterForm.value.Ten_sv;\n if(id_sv!=''){\n this.dataSVO=this.dataSV.filter((x) =>x.ID_sv==id_sv);\n }else{\n this.dataSVO=this.dataSV;\n }\n }\n changeQuyetDinh(){\n let loai_quyet_dinh=this.InsertForm.value.Loai_quyet_dinh;\n if(loai_quyet_dinh!=''){\n this.dataHinhThucView=this.dataHinhThuc.filter((x) =>x.Loai_hinh_thuc==loai_quyet_dinh);\n }else{\n this.dataHinhThucView=this.dataHinhThuc;\n }\n \n }\n ChangeToaNhaInsert() {\n let id_toa_nha = this.InsertForm.value.Ten_toa_nha;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n ChangeToaNhaUpdate() {\n let id_toa_nha = this.UpdateForm.value.Ten_toa_nha;\n if (id_toa_nha != '') { this.dataRoomView = this.dataRoom.filter((x) => x.ID_Toa_Nha == id_toa_nha);\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n getListRoom() {\n this.FillPhong = '';\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoom = z.Data;\n this.dataRoomView = z.Data;\n //this.Filter();\n });\n } // list phòng\n getListQuyetDinh() {\n this.FillQuyetDinh = '';\n this.HinhThucService.GetAll(this.Token).subscribe((z) => {\n this.dataHinhThuc = z.Data;\n this.dataHinhThucView = z.Data;\n //this.Filter();\n });\n } \n GetCount(req) {\n this.KhenThuongKyLuatService.Count(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.totalItem = z.Message;\n }\n });\n }\n getListThietBi() {\n this.DeviceService.getList(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.DataThietBi = z.Data;\n } else {\n this.toastr.error(z.Message);\n }\n });\n }\n getListHinhThuc() {\n this.HinhThucService.GetAll(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.dataHinhThucView = z.Data;\n } else {\n this.toastr.error(z.Message);\n }\n });\n }\n openModal(content, sizm, category, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (category == 'Insert') {\n this.titleModal = 'Thêm quyết định khen thưởng kỷ luật';\n this.isInsert = true;\n this.getHoSoSV()\n this.DataKhenThuong = []\n this.InsertForm.setValue({\n ID_sv: '',\n So_quyet_dinh: '',\n Ngay_quyet_dinh: '',\n ID_hinh_thuc: '',\n Loai_quyet_dinh: '',\n Cap_ky_luat_khen_thuong: '',\n ID_phong: '',\n Ten_phong: '',\n Noi_dung: '',\n Ten_toa_nha: '',\n Hoc_ky: '',\n Nam_hoc: this.Date.getFullYear() + '-' + (this.Date.getFullYear() + 1),\n });\n }\n if (category == 'Update') {\n\n this.titleModal = 'Sửa quyết định khen thưởng kỷ luật';\n this.UpdateForm.setValue({\n ID: Data.ID,\n ID_sv: Data.ID_sv,\n Ma_sv: Data.Ma_sv,\n Ho_ten: Data.Ho_ten,\n So_quyet_dinh: Data.So_quyet_dinh,\n Ngay_quyet_dinh: Data.Ngay_quyet_dinh.substr(0, 10),\n ID_hinh_thuc: Data.ID_hinh_thuc,\n Loai_quyet_dinh: Data.Loai_quyet_dinh,\n Cap_ky_luat_khen_thuong: Data.Cap_ky_luat_khen_thuong,\n ID_phong: Data.ID_phong,\n Ten_phong: Data.Ten_phong,\n Noi_dung: Data.Noi_dung,\n Ten_toa_nha: Data.Ten_toa_nha,\n Hoc_ky: Data.Hoc_ky,\n Nam_hoc: Data.Nam_hoc.trim(),\n });\n }\n if (category == 'Delete') {\n this.ID = Data.ID;\n }\n\n }\n changPage(event) {\n this.handlePageChange(event);\n //this.spinner.show();\n this.DataView = this.DataFilter.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n // this.arrNumberPage_chil = this.createNumberPage(\n // this.DataFilter.length,\n // this.pageSize\n // ).arrNumberPage_chil;\n }\n\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n //this.GetCount();\n this.GetAll();\n }\n get checkvalue() {\n return this.InsertForm.controls;\n }\n Delete() {\n let req = {\n ID: this.ID,\n };\n this.modalService.dismissAll();\n this.KhenThuongKyLuatService.Delete(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n \n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n Insert() {\n this.submitted = true;\n if (this.InsertForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n if (this.isInsert == true) {\n let listsv = [];\n let listsv1 = this.DataKhenThuong.filter((x) => x.checked == true);\n if (listsv1.length == 0) {\n this.toastr.warning(\"Vui lòng chọn sinh viên\")\n return false\n }\n for (var i = 0; i < listsv1.length; i++) {\n let req = {\n ID_sv: listsv1[i].ID_sv,\n So_quyet_dinh: this.InsertForm.value.So_quyet_dinh,\n Ngay_quyet_dinh: this.InsertForm.value.Ngay_quyet_dinh,\n ID_hinh_thuc: this.InsertForm.value.ID_hinh_thuc,\n Loai_quyet_dinh: this.InsertForm.value.Loai_quyet_dinh,\n Cap_ky_luat_khen_thuong: this.InsertForm.value\n .Cap_ky_luat_khen_thuong,\n ID_phong: this.InsertForm.value.ID_phong,\n Noi_dung: this.InsertForm.value.Noi_dung,\n Ten_toa_nha: this.InsertForm.value.Ten_toa_nha,\n Hoc_ky: this.InsertForm.value.Hoc_ky,\n Nam_hoc: this.InsertForm.value.Nam_hoc,\n };\n\n listsv.push(req);\n }\n this.KhenThuongKyLuatService.Insert(listsv, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(this.req);\n } else {\n this.toastr.error(z.Message);\n }\n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n this.modalService.dismissAll();\n }\n }\n update() {\n if (this.UpdateForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n let req = {\n ID: this.UpdateForm.value.ID,\n ID_sv: this.UpdateForm.value.ID_sv,\n Ma_sv: this.UpdateForm.value.Ma_sv,\n Ten_sv: this.UpdateForm.value.Ten_sv,\n So_quyet_dinh: this.UpdateForm.value.So_quyet_dinh,\n Ngay_quyet_dinh: this.UpdateForm.value.Ngay_quyet_dinh,\n ID_hinh_thuc: this.UpdateForm.value.ID_hinh_thuc,\n Loai_quyet_dinh: this.UpdateForm.value.Loai_quyet_dinh,\n Cap_ky_luat_khen_thuong: this.UpdateForm.value.Cap_ky_luat_khen_thuong,\n ID_phong: this.UpdateForm.value.ID_phong,\n Ten_phong: this.UpdateForm.value.Ten_phong,\n Noi_dung: this.UpdateForm.value.Noi_dung,\n Ten_toa_nha: this.UpdateForm.value.Ten_toa_nha,\n Hoc_ky: this.UpdateForm.value.Hoc_ky,\n Nam_hoc: this.UpdateForm.value.Nam_hoc.trim(),\n };\n this.KhenThuongKyLuatService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n \n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n\n this.modalService.dismissAll();\n }\n\n Filter() {\n this.DataFilter = this.dataTable;\n if (this.FilterForm.value.ID_phong_ft != '' && this.FilterForm.value.ID_phong_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.ID_phong == this.FilterForm.value.ID_phong_ft);\n }\n if (this.FilterForm.value.Ten_nha_ft != '' && this.FilterForm.value.Ten_nha_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.ID_toa_nha == this.FilterForm.value.Ten_nha_ft);\n }\n if (this.FilterForm.value.Ma_sv_ft != '' && this.FilterForm.value.Ma_sv_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => (x.Ma_sv.trim()).toLowerCase() == (this.FilterForm.value.Ma_sv_ft.trim()).toLowerCase());\n }\n if (this.FilterForm.value.Ten_sv_ft != '' && this.FilterForm.value.Ten_sv_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => (x.Ho_ten.trim()).toLowerCase()== (this.FilterForm.value.Ten_sv_ft.trim()).toLowerCase());\n }\n if (this.FilterForm.value.Hoc_ky_ft != '' && this.FilterForm.value.Hoc_ky_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.Hoc_ky == this.FilterForm.value.Hoc_ky_ft);\n }\n if (this.FilterForm.value.Nam_hoc_ft != '' && this.FilterForm.value.Nam_hoc_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.Nam_hoc.trim() == this.FilterForm.value.Nam_hoc_ft);\n }\n if (this.FilterForm.value.Tu_ngay_ft != '' && this.FilterForm.value.Tu_ngay_ft != undefined) {\n if (this.FilterForm.value.Den_ngay_ft != '' && this.FilterForm.value.Den_ngay_ft != undefined) {\n if (this.FilterForm.value.Den_ngay_ft < this.FilterForm.value.Tu_ngay_ft) {\n this.toastr.warning('Từ ngày không lớn hơn đến ngày!');\n } else { \n let a= new Date(this.FilterForm.value.Tu_ngay_ft) \n let b= new Date(this.FilterForm.value.Den_ngay_ft) \n this.DataFilter = this.DataFilter.filter((x) => \n new Date(x.Ngay_quyet_dinh == null ? \"\" :x.Ngay_quyet_dinh.substr(0, 10)) >= a && \n new Date(x.Ngay_quyet_dinh == null ? \"\" :x.Ngay_quyet_dinh.substr(0, 10)) <= b \n );\n \n }\n }\n }\n this.page = 1;\n for (var i = 0; i < this.DataFilter.length; i++) {\n this.DataFilter[i].STT = i + 1;\n }\n this.totalItemFilter = this.DataFilter.length;\n this.DataView = this.DataFilter.filter(\n (x) =>\n x.STT > (this.page - 1) * this.pageSize &&\n x.STT <= this.page * this.pageSize\n );\n this.numberPage = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).arrNumberPage_chil;\n }\n filterModal() {\n this.dataSV = this.beforeFilter;\n if (this.Ma_sv != '') {\n let a = this.dataSV;\n let b = this.dataSV;\n if (a != []) {\n a = this.dataSV.filter((i) => i.Ma_sv.includes(this.Ma_sv.trim()));\n }\n if (b != []) {\n b = this.dataSV.filter((i) =>\n this.xoa_dau(i.Ho_ten.toLowerCase()).includes(\n this.xoa_dau(this.Ma_sv.trim().toLowerCase())\n )\n );\n }\n this.dataSV = [];\n if (a.length != 0) {\n a.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n if (b.length != 0) {\n b.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n }\n if (\n this.Ngay_sinh != undefined &&\n this.Ngay_sinh != null &&\n this.Ngay_sinh != ''\n ) { this.dataSV = this.dataSV.filter( (x) => x.Ngay_sinh.toString().substring(0, 10) == this.Ngay_sinh);\n }\n for (var j = 0; j < this.dataSV.length; j++) {\n this.dataSV[j].STT = j + 1;\n }\n this.totalRecord2 = this.dataSV.length;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.changepage2(1);\n }\n getHoSoSV() {\n this.spinner.show();\n this.ListpeopledormService.getList(this.Token).subscribe((z) => {\n this.dataSV = z.Data;\n this.totalRecord2 = z.Data.length;\n this.beforeFilter = z.Data;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.dataSV2 = z.Data.filter((x) => 0 < x.STT && x.STT <= this.pageSize2);\n this.spinner.hide();\n });\n }\n isAllCheckBoxChecked1() {\n if (this.dataSV != undefined) return this.dataSV.every((p) => p.checked);\n }\n checkAllCheckBox1(ev) {\n this.dataSV.forEach((x) => (x.checked = ev.target.checked));\n }\n isAllCheckBoxChecked2() {\n if (this.DataKhenThuong != undefined)\n return this.DataKhenThuong.every((p) => p.checked);\n }\n checkAllCheckBox2(ev) {\n this.DataKhenThuong.forEach((x) => (x.checked = ev.target.checked));\n }\n changepage2(event: any) {\n this.spinner.show();\n if (event == 'pre') {\n this.page_sv = this.page_sv - 1;\n } else if (event == 'next') {\n this.page_sv = this.page_sv + 1;\n } else {\n this.page_sv = event;\n this.arrNumberPage2_child = [];\n for (var i = event - 3; i <= event + 3; i++) {\n if (i > 0 && i <= this.numberPage2) {\n this.arrNumberPage2_child.push(i);\n }\n }\n }\n this.dataSV = this.dataSV.filter(\n (x) =>\n this.pageSize2 * (this.page_sv - 1) < x.STT &&\n x.STT <= this.pageSize2 * this.page_sv\n );\n\n this.spinner.hide();\n }\n SpliceCheckRow() {\n for (let i = 0; i < this.DataKhenThuong.length; i++) {\n if (this.DataKhenThuong[i].checked == true) {\n\n const check = this.dataSV.some(\n (el) => el.ID_sv === this.DataKhenThuong[i].ID_sv\n );\n if (!check) {\n this.dataSV.push(this.DataKhenThuong[i]);\n }\n this.DataKhenThuong.splice(i, 1);\n i--;\n }\n }\n } // Xóa row check\n SpliceCheckRow1(DataKhenThuong) {\n\n if (this.DataKhenThuong.checked == true) {\n\n const check = this.dataSV.some(\n (el) => el.ID_sv === this.DataKhenThuong.ID_sv\n );\n if (!check) {\n this.dataSV.push(this.DataKhenThuong);\n }\n this.DataKhenThuong.splice();\n DataKhenThuong--;\n }\n } // Xóa row check\n PushCheckRow() {\n for (let i = 0; i < this.dataSV.length; i++) {\n if (this.dataSV[i].checked == true) {\n const check = this.DataKhenThuong.some((el) => {\n return el.ID_sv == this.dataSV[i].ID_sv;\n });\n if (!check) {\n this.DataKhenThuong.push(this.dataSV[i]);\n }\n this.dataSV.splice(i, 1);\n i--;\n }\n }\n } // thêm row check\n PushCheckRow1(dataSV) {\n if (this.dataSV.checked == true) {\n const check = this.DataKhenThuong.some((el) => {\n return el.ID_sv == this.dataSV.ID_sv;\n });\n if (!check) {\n this.DataKhenThuong.push(this.dataSV);\n }\n this.dataSV.splice();\n dataSV--;\n\n }\n } // thêm row check\n next() {\n if (this.DataKhenThuong.length == 0) {\n this.toastr.warning('Chọn sinh viên !');\n return false;\n }\n this.Display = true;\n }\n\n prev() {\n this.Display = false;\n }\n resetform() {\n this.DataKhenThuong = [];\n this.Display = false;\n }\n checkbox(event) {\n this.DataKhenThuong.push(event);\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n this.KhenThuongKyLuatService.Excel(a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Khen thưởng kỷ luật');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n });\n }\n }\n listHinhThuc() {\n this.HinhThucService.GetAll(this.Token).subscribe((z) => {\n this.dataHinhThuc = z.Data;\n });\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_KTKL;\n window.open(urlHelp,'_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Quản lý khen thưởng kỷ luật
  4. \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n \n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTMã sinh viênHọ tênNgày sinhSố QĐNgày QĐHọc kỳNăm họcCấp KT/KLHình thứcLoại QĐNội dungThao tác
{{ p.STT }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}{{ p.So_quyet_dinh }}{{ p.Ngay_quyet_dinh | date: 'dd/MM/yyyy' }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}Cấp KTXCấp trườngĐoàn, hộiKhác{{ p.Hinh_thuc }}Khen thưởngKỷ luật{{ p.Noi_dung }}\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n \n \n Thông tin Khen thưởng kỷ luật\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n Học kỳ không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Năm học không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Số quyết định không được bỏ trống!\n
\n
\n Số quyết định không quá 500 ký tự\n
\n
\n
\n
\n \n \n
\n
\n Loại quyết định không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Cấp khen thưởng kỷ luật không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ tênNgày sinh
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}
\n Không có kết quả\n
\n
\n
\n
\n
\n

\n Tổng số bản ghi: {{ totalRecord2 }}\n

\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ tênNgày sinh
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n \n \n \n
\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n Loại quyết định không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n Hình thức không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn muốn xoá quyết định này\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-lich-su-email',\n templateUrl: './lich-su-email.component.html',\n styleUrls: ['./lich-su-email.component.scss'],\n})\nexport class LichSuEmailComponent extends BaseComponent implements OnInit {\n record: any;\n Email_gui = '';\n Email_nhan = '';\n Nam: number;\n Ma_sv = '';\n detail = '';\n ngOnInit(): void {\n this.Nam = new Date().getFullYear();\n this.getToken();\n this.getList();\n this.getCount();\n }\n getCount() {\n this.QuanTriEmailService.LichSuCount(this.Token).subscribe((z) => {\n this.totalItem = z.So_ban_ghi;\n });\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Email_gui: this.Email_gui == '' ? null : this.Email_gui,\n Email_sv: this.Email_nhan == '' ? null : this.Email_nhan,\n Nam: this.Nam,\n Ma_sv: this.Ma_sv == '' ? null : this.Ma_sv,\n };\n this.QuanTriEmailService.getLichSuEmail(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.DataEmail;\n this.QuanTriEmailService.LichSuCountFilter(\n dataFilter,\n this.Token\n ).subscribe((z) => {\n this.totalItemFilter = z.So_ban_ghi;\n this.numberPage = this.createNumberPage(\n z.So_ban_ghi,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.So_ban_ghi,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n });\n }\n }\n );\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Email_gui: this.Email_gui == '' ? null : this.Email_gui,\n Email_sv: this.Email_nhan == '' ? null : this.Email_nhan,\n Nam: this.Nam,\n Ma_sv: this.Ma_sv == '' ? null : this.Ma_sv,\n };\n this.QuanTriEmailService.getLichSuEmail(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.DataEmail;\n this.spinner.hide();\n }\n }\n );\n }\n open(content, sizm, Loai, Data) {\n this.record = Data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.detail = Data.Noi_dung_email;\n }\n reSend() {\n this.QuanTriEmailService.Resend(this.record, this.Token).subscribe(\n (res) => {\n if (res.Status == 1) {\n this.toastr.success('Gửi thành công');\n } else {\n this.toastr.warning(res.Message);\n }\n this.modalService.dismissAll('');\n }\n );\n }\n}\n","
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n\n
\n
\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn muốn gửi lại email\n

\n
\n \n \n Hủy bỏ\n \n
\n
\n
\n
\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Subject } from 'rxjs';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n NgModel,\n} from '@angular/forms';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { BaseComponent } from 'src/app/components/base/base.component';\nimport { groupBy } from 'rxjs/operators';\n@Component({\n selector: 'app-lich-su-sua-chua',\n templateUrl: './lich-su-sua-chua.component.html',\n styleUrls: ['./lich-su-sua-chua.component.scss'],\n})\nexport class LichSuSuaChuaComponent extends BaseComponent implements OnInit {\n titleModal: any = '';\n isInsert: any;\n FillPhong: any = '';\n DataToaNha: any;\n show_search: any = true;\n List_phong_ban: any;\n Ma_kho_checkexist: any;\n ID_kho: any;\n FillToaNha: any;\n ID_sua_chua: any;\n DataRoom: any = [];\n DataThietBi: any = [];\n DataView: any = [];\n DataFilter: any = [];\n dataRoomView: any;\n FilterForm = new FormGroup({\n ID_phong_ft: new FormControl(null),\n Ten_nha_ft: new FormControl(null),\n Ten_thiet_bi_ft: new FormControl(null, [removeSpaces]),\n Tu_ngay_ft: new FormControl(null),\n Den_ngay_ft: new FormControl(null),\n });\n InsertForm = new FormGroup({\n ID_phong: new FormControl(null),\n Ten_toa_nha: new FormControl(null),\n ID_thiet_bi: new FormControl(null, [Validators.required]),\n Noi_dung: new FormControl(null, [Validators.required, removeSpaces]),\n So_luong: new FormControl(null),\n Nguoi_thuc_hien: new FormControl(null),\n Ngay_hoan_thanh: new FormControl(null),\n Create_date: new FormControl(null),\n });\n UpdateForm = new FormGroup({\n ID_sua_chua: new FormControl(null),\n ID_thiet_bi: new FormControl(null),\n Ten_thiet_bi: new FormControl(null),\n ID_phong: new FormControl(null),\n Ten_phong: new FormControl(null),\n Ten_toa_nha: new FormControl(null),\n Ghi_chu: new FormControl(null),\n So_luong: new FormControl(null),\n Noi_dung: new FormControl(null),\n Nguoi_thuc_hien: new FormControl(null),\n Ngay_hoan_thanh: new FormControl(null),\n Modify_user: new FormControl(null),\n });\n dtTrigger = new Subject();\n public com: common;\n ngOnInit(): void {\n this.getToken();\n this.getListRoom();\n this.getListBuilding();\n //this.getListThietBi();\n this.GetAll();\n }\n hidesearch() {\n if (this.show_search == true) {\n return (this.show_search = false);\n }\n if (this.show_search == false) {\n return (this.show_search = true);\n }\n }\n getListTB() {\n this.RoomService.PhongThietBiGetAll(this.InsertForm.value.ID_phong, this.Token).subscribe((z) => {\n this.DataThietBi = z.Data;\n })\n }\n \n changeTB() {\n let a = this.InsertForm.value.ID_thiet_bi\n let b = this.DataThietBi.filter(x => x.ID_thiet_bi == a)\n this.InsertForm.get('So_luong').setValue(b[0].So_luong);\n }\n GetAll() {\n this.page = 1;\n this.spinner.show();\n\n this.LichSuSuaChuaService.GetAll(this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DataFilter = z.Data;\n this.DataView = this.dataTable.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n this.numberPage = this.createNumberPage(\n z.Data.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Data.length,\n this.pageSize\n ).arrNumberPage_chil;\n this.totalItem = z.Data.length;\n this.totalItemFilter = z.Data.length;\n this.spinner.hide();\n });\n }\n getListBuilding() {\n this.FillToaNha = '';\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n });\n }\n ChangeToaNha() {\n let id_toa_nha = this.FilterForm.value.Ten_nha_ft;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n ChangeToaNhaInsert() {\n let id_toa_nha = this.InsertForm.value.Ten_toa_nha;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n getListRoom() {\n this.FillPhong = '';\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoom = z.Data;\n this.dataRoomView = z.Data;\n //this.Filter();\n });\n } // list phòng\n GetCount(req) {\n this.LichSuSuaChuaService.Count(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.totalItem = z.Message;\n }\n });\n }\n getListThietBi() {\n this.DeviceService.getList(this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.DataThietBi = z.Data;\n } else {\n this.toastr.error(z.Message);\n }\n });\n }\n openModal(content, sizm, category, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (category == 'Insert') {\n this.DataThietBi=[]\n this.titleModal = 'Thêm thông tin sửa chữa';\n this.isInsert = true;\n this.InsertForm.setValue({\n ID_thiet_bi: '',\n ID_phong: '',\n Ten_toa_nha: '',\n Noi_dung: '',\n So_luong: '',\n Nguoi_thuc_hien: '',\n Ngay_hoan_thanh: '',\n Create_date: '',\n });\n }\n if (category == 'Update') {\n this.titleModal = 'Sửa thông tin';\n let Room = this.dataRoom.filter((x) => {\n return x.ID_Phong == Data.ID_phong;\n });\n this.DataThietBi=[]\n this.UpdateForm.setValue({\n ID_sua_chua: Data.ID_sua_chua,\n ID_thiet_bi: Data.ID_thiet_bi,\n Ten_thiet_bi: Data.Ten_thiet_bi,\n ID_phong: Data.ID_phong,\n Ten_phong: Data.Ten_phong,\n Ten_toa_nha: Data.Ten_toa_nha,\n So_luong: Data.So_luong,\n Ghi_chu: \"\",\n Noi_dung: Data.Noi_dung,\n Nguoi_thuc_hien: Data.Nguoi_thuc_hien,\n Ngay_hoan_thanh: Data.Ngay_hoan_thanh==null?\"\":Data.Ngay_hoan_thanh.substr(0, 10),\n Modify_user: Data.Modify_user,\n });\n }\n if (category == 'Delete') {\n this.ID_sua_chua = Data.ID_sua_chua;\n }\n }\n changPage(event) {\n this.handlePageChange(event);\n //this.spinner.show();\n this.DataView = this.DataFilter.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n // this.arrNumberPage_chil = this.createNumberPage(\n // this.DataFilter.length,\n // this.pageSize\n // ).arrNumberPage_chil;\n }\n\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n this.GetAll();\n }\n get checkvalue() {\n return this.InsertForm.controls;\n }\n Delete() {\n let req = {\n ID_sua_chua: this.ID_sua_chua,\n };\n this.modalService.dismissAll();\n this.LichSuSuaChuaService.Delete(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n }, \n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n Insert() {\n this.submitted = true;\n if (this.InsertForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n let req = {\n ID_phong: this.InsertForm.value.ID_phong,\n Ten_toa_nha: this.InsertForm.value.Ten_toa_nha,\n ID_thiet_bi: this.InsertForm.value.ID_thiet_bi,\n Noi_dung: this.InsertForm.value.Noi_dung,\n So_luong: this.InsertForm.value.So_luong,\n Nguoi_thuc_hien: this.InsertForm.value.Nguoi_thuc_hien,\n Ngay_hoan_thanh: this.InsertForm.value.Ngay_hoan_thanh,\n };\n if (this.isInsert == true) {\n this.LichSuSuaChuaService.Insert(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n \n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n this.modalService.dismissAll();\n }\n }\n\n update() {\n let req = {\n ID_sua_chua: this.UpdateForm.value.ID_sua_chua,\n ID_thiet_bi: this.UpdateForm.value.ID_thiet_bi,\n So_luong: this.UpdateForm.value.So_luong,\n Noi_dung: this.UpdateForm.value.Noi_dung,\n ID_phong: this.UpdateForm.value.ID_phong,\n Ten_phong: this.UpdateForm.value.Ten_phong,\n Ten_toa_nha: this.UpdateForm.value.Ten_toa_nha,\n Nguoi_thuc_hien: this.UpdateForm.value.Nguoi_thuc_hien,\n Ngay_hoan_thanh: this.UpdateForm.value.Ngay_hoan_thanh,\n Modify_user: this.UpdateForm.value.Modify_user,\n };\n this.LichSuSuaChuaService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n \n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n this.modalService.dismissAll();\n }\n\n Filter() {\n this.DataFilter = this.dataTable;\n if (this.FilterForm.value.Ten_nha_ft != '' && this.FilterForm.value.Ten_nha_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.ID_toa_nha == this.FilterForm.value.Ten_nha_ft);\n }\n if (this.FilterForm.value.ID_phong_ft != '' && this.FilterForm.value.ID_phong_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.ID_phong == this.FilterForm.value.ID_phong_ft);\n }\n if (this.FilterForm.value.Ten_thiet_bi_ft != '' && this.FilterForm.value.Ten_thiet_bi_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => x.Ten_thiet_bi == this.FilterForm.value.Ten_thiet_bi_ft);\n }\n\n if (this.FilterForm.value.Tu_ngay_ft != '' && this.FilterForm.value.Tu_ngay_ft != undefined) {\n if (this.FilterForm.value.Den_ngay_ft != '' && this.FilterForm.value.Den_ngay_ft != undefined) {\n if (this.FilterForm.value.Tu_ngay_ft > this.FilterForm.value.Den_ngay_ft) {\n this.toastr.warning('Từ ngày không lớn hơn đến ngày!');\n } else {\n this.DataFilter = this.DataFilter.filter((x) => x.Ngay_hoan_thanh == null ? \"\" : x.Ngay_hoan_thanh.substr(0, 10) >= this.FilterForm.value.Tu_ngay_ft && x.Ngay_hoan_thanh == null ? \"\" : x.Ngay_hoan_thanh.substr(0, 10) <= this.FilterForm.value.Den_ngay_ft);\n }\n }\n }\n\n this.page = 1;\n for (var i = 0; i < this.DataFilter.length; i++) {\n this.DataFilter[i].STT = i + 1;\n }\n this.totalItemFilter = this.DataFilter.length;\n this.DataView = this.DataFilter.filter(\n (x) =>\n x.STT > (this.page - 1) * this.pageSize &&\n x.STT <= this.page * this.pageSize\n );\n this.numberPage = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.DataFilter.length,\n this.pageSize\n ).arrNumberPage_chil;\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n this.LichSuSuaChuaService.Excel(a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(\n z.FileData,\n 'Lịch sử sửa chữa thiết bị'\n );\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n \n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_LichSuSuaChua;\n window.open(urlHelp,'_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Lịch sử sửa chữa
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTNhà - phòngMã thiết bịTên thiết bịSố lượngNội dungNgày hoàn thànhNgười thực hiệnNgày cập nhậtTài khoản cập nhậtThao tác
{{ p.STT }}{{ p.Ten_toa_nha }}-{{ p.Ten_phong }}{{ p.Ma_thiet_bi }}{{ p.Ten_thiet_bi }}{{ p.So_luong }}{{ p.Noi_dung }}{{ p.Ngay_hoan_thanh | date: 'dd/MM/yyyy' }}{{ p.Nguoi_thuc_hien }}{{ p.Modify_date | date: 'dd/MM/yyyy' }}{{ p.Modify_user }}\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n Nội dung không được bỏ trống!\n
\n
\n Nội dung không quá 500 ký tự\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn muốn xoá lịch sử sửa chữa này!\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n AbstractControl,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { timeout } from 'rxjs/operators';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { ListpeopledormService } from 'src/app/Utils//services/listpeopledorm.service';\nimport { BuildingService } from 'src/app/Utils/services/building.service';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { data } from 'jquery';\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\nimport { BaseComponent } from '../base/base.component';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-list-people-des',\n templateUrl: './list-people-des.component.html',\n styleUrls: ['./list-people-des.component.scss'],\n})\nexport class ListPeopleDesComponent extends BaseComponent implements OnInit {\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n ID_sv: any;\n ID_dangky: any;\n dataTable: any = [];\n dataCampus: any = [];\n dataBuilding: any = [];\n dataRoom: any = [];\n closeResult: string;\n ClassData: any;\n ID_room: any;\n ID: any;\n dt: any;\n So_Ho_Chieu: any;\n Ngay_Het_Han_Visa: any;\n address: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Phong_Model: any;\n Action = new FormGroup({\n So_Ho_Chieu: new FormControl(null),\n Ngay_Het_Han_Visa: new FormControl(null),\n Ngay_bat_dau: new FormControl(null, [Validators.required]),\n Ngay_ket_thuc: new FormControl(null, [Validators.required]),\n Ma_sv: new FormControl(null, []),\n Ho_ten: new FormControl(null, []),\n Ngay_sinh: new FormControl(null, []),\n Gioi_Tinh: new FormControl(2, []),\n ID_quoc_tich: new FormControl(0, []),\n Dan_toc: new FormControl(0, []),\n CMND: new FormControl(null, []),\n Ngay_cap_CMND: new FormControl(null, []),\n Noi_cap_CMND: new FormControl(0, []),\n Ton_giao: new FormControl(null, []),\n Dia_chi_tt: new FormControl(null, []),\n Dienthoai_canhan: new FormControl(null, []),\n Email: new FormControl(null, []),\n Ho_ten_cha: new FormControl(null, []),\n Namsinh_cha: new FormControl(null, []),\n Hoat_dong_XH_CT_cha: new FormControl(null, []),\n Ho_ten_me: new FormControl(null, []),\n Namsinh_me: new FormControl(null, []),\n Hoat_dong_XH_CT_me: new FormControl(null, []),\n NoiO_hiennay: new FormControl(null, []),\n So_dien_thoai_bo: new FormControl(null, []),\n So_dien_thoai_me: new FormControl(null, []),\n });\n\n ActionChangeRoom = new FormGroup({\n ID_Campus: new FormControl(null),\n ID_Building: new FormControl(null),\n ID_Floor: new FormControl(null),\n ID_Room: new FormControl(null, []),\n });\n id_phong_ktx: any;\n FillMaSV: any;\n FillHoTen: any;\n FillLoaiDongTien: any = '';\n FillTrangThaiO: any = '';\n FillQuocTich: any;\n FillPhong: any = '';\n FillThoiGianRa: any;\n FillThoiGianVao: any;\n FillThoiGianVisa: any;\n Ngay_ra_KTX: any;\n Ngay_vao_KTX: any;\n dataQuocTich: any;\n dataDanToc: any;\n FillLoaiPhong: any = '';\n FillLy_do: any;\n FillPhongNamNu: any = '';\n dataTypeRoom: any;\n getNull = false;\n FillCoSo: any = '';\n FillToaNha: any = '';\n FillTang: any;\n dtReceipt: any;\n dataPrintf: any;\n dt_print: any = '123';\n dataRoomLock: any;\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n options = {};\n\n ngOnInit() {\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n\n $('.dataTables_filter').addClass('cus_ser');\n this.getList();\n this.getCount();\n this.getListTypeRoom();\n }\n getCount() {\n this.ListpeopledormService.getDanhSachRaCount(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_Toa_Nha: this.FillToaNha,\n ID_Co_So: this.FillCoSo,\n ID_Tang: this.FillTang,\n ID_phong: this.FillPhong,\n ID_loai_phong: this.FillLoaiPhong,\n Gioi_Tinh: this.FillPhongNamNu,\n Ma_sv: this.FillMaSV,\n Ho_ten: this.FillHoTen,\n Trang_thai_thanh_toan: this.FillLoaiDongTien,\n Thoi_gian_vao: this.FillThoiGianVao,\n Thoi_gian_ra: this.FillThoiGianRa,\n Ly_do: this.FillLy_do,\n };\n this.ListpeopledormService.getDanhSachRa(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.ListpeopledormService.getDanhSachRaCountFilter(\n dataFilter,\n this.Token\n ).subscribe((z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n });\n }\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.FillToaNha = '';\n this.FillCoSo = '';\n this.FillTang = '';\n this.FillPhong = '';\n this.FillLoaiPhong = '';\n this.FillPhongNamNu = '';\n this.FillMaSV = '';\n this.FillHoTen = '';\n this.FillLoaiDongTien = ''\n this.FillThoiGianVao = ''\n this.FillThoiGianRa = ''\n this.FillLy_do = ''\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_Toa_Nha: this.FillToaNha,\n ID_Co_So: this.FillCoSo,\n ID_Tang: this.FillTang,\n ID_phong: this.FillPhong,\n ID_loai_phong: this.FillLoaiPhong,\n Gioi_Tinh: this.FillPhongNamNu,\n Ma_sv: this.FillMaSV,\n Ho_ten: this.FillHoTen,\n Trang_thai_thanh_toan: this.FillLoaiDongTien,\n Thoi_gian_vao: this.FillThoiGianVao,\n Thoi_gian_ra: this.FillThoiGianRa,\n Ly_do: this.FillLy_do,\n };\n this.ListpeopledormService.getDanhSachRa(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n });\n }\n getListTypeRoom() {\n this.RoomcategoryService.getList(this.getNull, this.Token).subscribe(\n (z) => {\n this.dataTypeRoom = z.Data;\n this.getListCampus();\n }\n );\n } // lấy danh sách loại phòng\n\n filterTable(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let bool1 = true,\n bool2 = true,\n bool3 = true,\n bool4 = true,\n bool5 = true,\n bool6 = true,\n bool7 = true,\n bool8 = true,\n bool9 = true,\n bool10 = true,\n bool11 = true,\n bool12 = true,\n bool13 = true,\n bool14 = true;\n if (this.FillMaSV != undefined) {\n bool1 = data[1].toLowerCase().includes(this.FillMaSV.toLowerCase());\n }\n if (this.FillHoTen != undefined) {\n bool2 = data[2].toLowerCase().includes(this.FillHoTen.toLowerCase());\n }\n if (this.FillLoaiDongTien != '') {\n if (this.FillLoaiDongTien == '0') {\n bool3 = data[13] == this.FillLoaiDongTien;\n }\n if (this.FillLoaiDongTien == '1') {\n bool3 = data[13] > '0';\n }\n }\n // if (this.FillQuocTich != undefined) {\n // bool4 = data[4].toLowerCase().includes(this.FillQuocTich.toLowerCase());\n // }\n\n if (this.FillThoiGianRa != undefined) {\n const date1 = this.FillThoiGianRa.split('-')\n .reverse()\n .join('/')\n .substring(0, 10);\n const date2 = data[9].substring(0, 10);\n bool5 = date2.toLowerCase().includes(date1.toLowerCase());\n }\n // if (this.FillThoiGianVisa != undefined) {\n // const date1 = this.FillThoiGianVisa.split('-')\n // .reverse()\n // .join('/')\n // .substring(1, 10);\n // const date2 = data[5].substring(1, 10);\n // bool6 = date2.toLowerCase().includes(date1.toLowerCase());\n // }\n if (this.FillPhong != undefined) {\n let temp = data[7].split('-');\n bool7 = temp[1].toLowerCase().includes(this.FillPhong.toLowerCase());\n }\n if (this.FillCoSo != undefined) {\n bool9 = data[15].toLowerCase().includes(this.FillCoSo.toLowerCase());\n }\n if (this.FillToaNha != undefined) {\n bool8 = data[14].toLowerCase().includes(this.FillToaNha.toLowerCase());\n }\n if (this.FillTang != undefined) {\n bool10 = data[16].toLowerCase().includes(this.FillTang.toLowerCase());\n }\n if (this.FillLoaiPhong != '') {\n bool11 = data[17] == this.FillLoaiPhong;\n }\n if (this.FillPhongNamNu != '') {\n bool14 = this.removeAccents(data[18])\n .toLowerCase()\n .includes(this.removeAccents(this.FillPhongNamNu));\n }\n if (this.FillLy_do != undefined) {\n bool12 = data[22].toLowerCase().includes(this.FillLy_do);\n }\n if (this.FillThoiGianVao != undefined) {\n const date1 = this.FillThoiGianVao.split('-')\n .reverse()\n .join('/')\n .substring(0, 10);\n const date2 = data[8].substring(0, 10);\n bool13 = date2.toLowerCase().includes(date1.toLowerCase());\n }\n if (\n bool1 &&\n bool2 &&\n bool3 &&\n bool4 &&\n bool5 &&\n bool6 &&\n bool7 &&\n bool8 &&\n bool9 &&\n bool10 &&\n bool11 &&\n bool12 &&\n bool13 &&\n bool14\n ) {\n return true;\n }\n return false;\n });\n } // filter data table\n\n removeAccents(str) {\n var AccentsMap = [\n 'aàảãáạăằẳẵắặâầẩẫấậ',\n 'AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ',\n 'dđ',\n 'DĐ',\n 'eèẻẽéẹêềểễếệ',\n 'EÈẺẼÉẸÊỀỂỄẾỆ',\n 'iìỉĩíị',\n 'IÌỈĨÍỊ',\n 'oòỏõóọôồổỗốộơờởỡớợ',\n 'OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ',\n 'uùủũúụưừửữứự',\n 'UÙỦŨÚỤƯỪỬỮỨỰ',\n 'yỳỷỹýỵ',\n 'YỲỶỸÝỴ',\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n\n Aprove() {\n this.dt.Trang_thai_o = 2;\n this.ListpeopledormService.UpdateRaKhoiKTX(this.dt, this.Token).subscribe((z) => {\n this.modalService.dismissAll('Approve');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList();\n this.fill();\n });\n } // cho sinh viên ra khỏi ktx\n\n // getListTypeRoom() {\n // // this.spinner.show();\n // this.RoomtypesService.getList(this.Token).subscribe((z) => {\n // this.dataCampus = z.Data;\n // });\n // } // list all loai phong\n getListCampus() {\n // this.spinner.show();\n this.CampusService.getList(this.Token).subscribe((z) => {\n this.dataCampus = z.Data;\n });\n } // list all Cơ sở\n\n getListBuilding(id) {\n // this.FillToaNha = ''\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data.filter((x) => {\n return x.ID_CoSo == id;\n });\n if (this.dataBuilding.length > 0) {\n this.getListRoom(this.dataBuilding[0].ID_ToaNha);\n } else {\n this.FillPhong = '';\n this.filterTable();\n }\n });\n } // list tòa nhà\n\n getListRoom(id) {\n this.FillPhong = '';\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoom = z.Data.filter((x) => {\n return x.ID_Toa_Nha == id;\n });\n this.filterTable();\n });\n } // list phòng\n\n getListRoomNonLock(id) {\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoomLock = z.Data.filter((x) => {\n return x.ID_Toa_Nha == id && x.Khoa_phong == 0;\n });\n });\n } // list non lock\n changeCampus(id) {\n this.getListBuilding(id);\n this.getList();\n }\n changeRoom(id_toanha) {\n this.getListRoom(id_toanha);\n this.getList();\n }\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n this.onReset();\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n this.onReset();\n }\n );\n this.dt = Data;\n\n if (Loai == 'Edit') {\n const date = new Date().toLocaleString();\n this.titleModal = 'Thông tin sinh viên';\n this.check = Data.So_Ho_Chieu;\n this.checkAction = true;\n if (!Data.Ngay_Het_Han_Visa) {\n Data.Ngay_Het_Han_Visa = date.substring(0, 10);\n }\n if (!Data.Ngay_bat_dau) {\n Data.Ngay_bat_dau = date.substring(0, 10);\n }\n if (!Data.Ngay_ket_thuc) {\n Data.Ngay_ket_thuc = date.substring(0, 10);\n }\n this.Action.setValue({\n So_Ho_Chieu: Data.So_Ho_Chieu,\n Ngay_Het_Han_Visa:\n Data.Ngay_Het_Han_Visa != null\n ? Data.Ngay_Het_Han_Visa.substring(0, 10)\n : null,\n Ngay_bat_dau:\n Data.Ngay_bat_dau != null ? Data.Ngay_bat_dau.substring(0, 10) : null,\n Ngay_ket_thuc:\n Data.Ngay_ket_thuc != null\n ? Data.Ngay_ket_thuc.substring(0, 10)\n : null,\n Ma_sv: Data.Ma_sv,\n Ho_ten: Data.Ho_ten,\n Ngay_sinh:\n Data.Ngay_sinh != null ? Data.Ngay_sinh.substring(0, 10) : null,\n Gioi_Tinh: Data.Gioi_Tinh,\n ID_quoc_tich: Data.Quoc_tich,\n Dan_toc: Data.Dan_toc,\n CMND: Data.CMND,\n Ngay_cap_CMND:\n Data.Ngay_cap_CMND != null\n ? Data.Ngay_cap_CMND.substring(0, 10)\n : null,\n Noi_cap_CMND: Data.ID_noi_cap_CMND,\n Ton_giao: Data.Ton_giao,\n Dia_chi_tt: Data.Dia_chi_tt,\n Dienthoai_canhan: Data.Dienthoai_canhan,\n Email: Data.Email,\n Ho_ten_cha: Data.Ho_ten_cha,\n Namsinh_cha:\n Data.Namsinh_cha != null ? Data.Namsinh_cha.substring(0, 10) : null,\n Hoat_dong_XH_CT_cha: Data.Hoat_dong_XH_CT_cha,\n Ho_ten_me: Data.Ho_ten_me,\n Namsinh_me:\n Data.Namsinh_me != null ? Data.Namsinh_me.substring(0, 10) : null,\n Hoat_dong_XH_CT_me: Data.Hoat_dong_XH_CT_me,\n NoiO_hiennay: Data.NoiO_hiennay,\n So_dien_thoai_bo: Data.So_dien_thoai_bo,\n So_dien_thoai_me: Data.So_dien_thoai_me,\n });\n } else if (Loai == 'Add') {\n this.titleModal = 'Thêm mới thông tin sinh viên';\n this.checkAction = false;\n this.Action.reset();\n } else if (Loai == 'changeRoom') {\n (this.ID_dangky = Data.ID_dang_ky), (this.ID_sv = Data.ID_sv);\n this.getListCampus();\n this.getListBuilding(Data.ID_Co_So);\n this.ActionChangeRoom.setValue({\n ID_Campus: Data.ID_Co_So,\n ID_Building: Data.ID_Toa_Nha,\n ID_Room: Data.ID_phong,\n ID_Floor: '',\n });\n this.Ngay_ra_KTX = Data.Ngay_ket_thuc;\n this.Ngay_vao_KTX = Data.Ngay_bat_dau;\n this.id_phong_ktx = Data.ID_phong;\n } else if (Loai == 'RoomLead') {\n this.ID_room = Data.ID_phong;\n this.ID_dangky = Data.ID_dang_ky;\n this.Ngay_ra_KTX = Data.Ngay_ket_thuc;\n }\n } //Modal all\n\n openprintf(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n this.onReset();\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n this.onReset();\n }\n );\n this.dt = Data;\n } //Modal confirm doi phong\n\n //check value\n get checkvalue() {\n return this.Action.controls;\n }\n\n saveRoomHistory() {\n this.dt.ID_phong = this.ActionChangeRoom.value.ID_Room;\n if (this.id_phong_ktx != this.dt.ID_phong) {\n this.ListAccessHistory.Insert(this.dt, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success('Cập nhật thành công');\n } else {\n this.toastr.error(z.Message);\n }\n this.ActionChangeRoom.reset();\n });\n }\n this.modalService.dismissAll('ChangeClassModal');\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getList();\n this.fill();\n } // cập nhật thông tin vào ra phòng ktx\n\n onSubmit() {\n this.submitted = true;\n if (this.Action.invalid) {\n return false;\n }\n this.actionUpdate();\n }\n onReset() {\n this.submitted = false;\n this.Action.reset();\n this.dataBuilding = [];\n this.dataRoom = [];\n this.dataCampus = [];\n this.ActionChangeRoom.reset();\n }\n // actionUpdate\n actionUpdate() {\n this.dt.So_Ho_Chieu = this.Action.value.So_Ho_Chieu;\n this.dt.Ngay_Het_Han_Visa = this.Action.value.Ngay_Het_Han_Visa;\n this.dt.Ngay_bat_dau = this.Action.value.Ngay_bat_dau;\n this.dt.Ngay_ket_thuc = this.Action.value.Ngay_ket_thuc;\n if (Date.parse(this.dt.Ngay_bat_dau) > Date.parse(this.dt.Ngay_ket_thuc)) {\n this.toastr.warning('Ngày ra KTX không thể nhỏ hơn ngày vào KTX');\n } else {\n this.ListpeopledormService.Update(this.dt, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 9) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalService.dismissAll('ThemModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList();\n this.fill();\n }\n this.Action.reset();\n });\n }\n } // cập nhật số hộ chiếu quốc tịch đối với sinh viên nước ngoài\n\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n\n checkHanraKTX(datetime) {\n let dateParts = datetime.split('-');\n let day = parseInt(dateParts[2]);\n let month = parseInt(dateParts[1]) - 1;\n let year = parseInt(dateParts[0]);\n let someday = new Date(year, month, day);\n var today = new Date();\n today.setHours(0, 0, 0, 0);\n if (today > someday) {\n return true;\n }\n return false;\n }\n\n AproveChange() {\n if (this.Ngay_ra_KTX != null) {\n if (this.checkHanraKTX(this.Ngay_ra_KTX) == false) {\n this.ListpeopledormService.UpdateLeadRoom(\n this.ID_dangky,\n this.ID_room,\n this.Token\n ).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList();\n this.fill();\n });\n } else {\n this.toastr.error('Sinh viên này đã hết hạn ở KTX kiểm tra lại !');\n }\n } else {\n this.toastr.warning('Ngày ra ký túc xá đang trống xin kiểm tra lại !');\n }\n } // kiểm tra hạn ra ktx\n\n Print() {\n this.dt_print = this.dt;\n setTimeout(() => {\n let printContents = document.getElementById('print-section').innerHTML;\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\n mywindow.document.write(`\n \n ${printContents}\n `);\n mywindow.document.close();\n mywindow.focus();\n\n mywindow.print();\n // mywindow.close();\n }, 200);\n this.modalService.dismissAll('DeleteModal');\n } // in bien lai\n help() {\n const urlHelp = this.appConfig.HelpUrl+\"?\"+this.appConfig.document_DanhSachRa;\n window.open(urlHelp,'_blank');\n }\n\n}\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
\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 \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 {{ item.Ten_phong }}\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\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
{{ titleModal }}
\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
\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ày vào không được bỏ trống!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Ngày vào không được bỏ trống!\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
\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\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 \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
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Đóng\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 có chắc chắn cho sinh viên quay lại kí túc xá\r\n

\r\n
\r\n \r\n Hủy bỏ\r\n \r\n \r\n Đồng ý\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 có chắc chắn cho sinh viên thành trưởng phòng\r\n

\r\n
\r\n \r\n Đồng ý\r\n \r\n \r\n Hủy bỏ\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 có chắc chắn tạo biên lai\r\n

\r\n
\r\n
\r\n \r\n Đồng ý\r\n \r\n \r\n Hủy bỏ\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, SimpleChanges, Input, Inject } from '@angular/core';\nimport { ListpeopledormService } from 'src/app/Utils/services/listpeopledorm.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\n@Component({\n selector: 'app-contract',\n templateUrl: './contract.component.html',\n styleUrls: ['./contract.component.scss'],\n})\nexport class ContractComponent implements OnInit {\n @Input() public dt_print2: any;\n @Input() public dl_sv: any;\n @Input() public dl_room: any;\n @Input() typeReceipt: any;\n // tmlPrintEW:TemplateRef;\n studyClass: any;\n date: any = new Date();\n dt_print: any;\n Nguoi_dai_dien: string = '';\n So_dien_thoai: string = '';\n arr_number: any = [\n 'không',\n 'một',\n 'hai',\n 'ba',\n 'bốn',\n 'năm',\n 'sáu',\n 'bảy',\n 'tám',\n 'chín',\n ];\n money_words: any;\n dt_payment: any = [];\n dt_money: any = 0;\n Token: any;\n public com: common;\n dataTable: any;\n constructor(\n private ListAllService: ListpeopledormService,\n private RegisterDormService: RegisterDormService,\n public router: Router,\n @Inject(AppConfig) private readonly appConfig: AppConfiguration\n ) {}\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.Nguoi_dai_dien = this.appConfig.NguoiDaiDien_KTX;\n this.So_dien_thoai = this.appConfig.SoDienThoai_KTX;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.dt_print2.ID_dang_ky != undefined) {\n this.getList(this.dt_print2.ID_dang_ky);\n }\n this.dt_print = this.dt_print2;\n }\n\n getList(id_dang_ky) {\n this.ListAllService.getListReceipt(id_dang_ky, this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n if (this.dataTable) {\n this.dataTable.forEach((element) => {\n this.dt_money += element.So_tien_thuc_nop;\n });\n this.money_words = this.DocTienBangChu(this.dt_money);\n }\n }\n );\n }\n\n DocTienBangChu(so) {\n if (so == 0) return this.arr_number[0];\n let chuoi = '',\n hauto = '';\n do {\n let ty = so % 1000000000;\n so = Math.floor(so / 1000000000);\n if (so > 0) {\n chuoi = this.dochangtrieu(ty, true) + hauto + chuoi;\n } else {\n chuoi = this.dochangtrieu(ty, false) + hauto + chuoi;\n }\n hauto = ' tỷ';\n } while (so > 0);\n return chuoi.charAt(1).toUpperCase() + chuoi.slice(2);\n } //đọc tiền\n\n dochangchuc(so, daydu) {\n let chuoi = '';\n let chuc = Math.floor(so / 10);\n let donvi = so % 10;\n if (chuc > 1) {\n chuoi = ' ' + this.arr_number[chuc] + ' mươi';\n if (donvi == 1) {\n chuoi += ' mốt';\n }\n } else if (chuc == 1) {\n chuoi = ' mười';\n if (donvi == 1) {\n chuoi += ' một';\n }\n } else if (daydu && donvi > 0) {\n chuoi = ' lẻ';\n }\n\n if (donvi == 5 && chuc >= 1) {\n chuoi += ' lăm';\n } else if (donvi > 1 || (donvi == 1 && chuc == 0)) {\n chuoi += ' ' + this.arr_number[donvi];\n }\n return chuoi;\n }\n\n docblock(so, daydu) {\n let chuoi = '';\n let tram = Math.floor(so / 100);\n so = so % 100;\n if (daydu || tram > 0) {\n chuoi = ' ' + this.arr_number[tram] + ' trăm';\n chuoi += this.dochangchuc(so, true);\n } else {\n chuoi = this.dochangchuc(so, false);\n }\n return chuoi;\n }\n\n dochangtrieu(so, daydu) {\n let chuoi = '';\n let trieu = Math.floor(so / 1000000);\n so = so % 1000000;\n if (trieu > 0) {\n chuoi = this.docblock(trieu, daydu) + ' triệu';\n daydu = true;\n }\n let nghin = Math.floor(so / 1000);\n so = so % 1000;\n if (nghin > 0) {\n chuoi += this.docblock(nghin, daydu) + ' nghìn';\n daydu = true;\n }\n if (so > 0) {\n chuoi += this.docblock(so, daydu);\n }\n return chuoi;\n }\n}\n","\n

\n CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
 \n

\n

\n Số: ...................  /2020/HĐNT-KTX\n

\n

\n HỢP ĐỒNG Ở NỘI TRÚ \n

\n
    \n
  • \n Căn cứ Quy chế Công tác HSSV Nội trú - Ban\n hành kèm theo Thông tư số 27/2011/TT-BGDĐT ngày\n 27 tháng 06 năm 2011 của Bộ Giáo dục và Đào\n tạo;\n
  • \n
  • \n Căn cứ Chức năng, nhiệm vụ của Ban quản lý Ký túc\n xá;\n
  • \n
\n

\n          Hôm nay ngày {{ date | date: 'dd' }} tháng\n {{ date | date: 'MM' }} năm {{ date | date: 'yyyy' }} tại Ký túc\n xá – Trường Đại học Sư phạm Hà Nội.\n

\n

\n Chúng tôi gồm có: \n

\n

Bên A: BÊN CHO THUÊ 

\n

\n Ban quản lý KTX - Trường Đại học Sư phạm Hà Nội (Sau\n đây gọi tắt là Ký túc xá)\n

\n

\n - Người đại diện: Ông {{ Nguoi_dai_dien }}     \n                      \n          Chức vụ: Trưởng Ban quản\n lý Ký túc xá.\n

\n

\n - Địa chỉ: Tầng 1, nhà A12, Ký túc xá -\n Trường ĐHSP Hà Nội, số 136 Xuân Thủy,  P.Dịch Vọng Hậu,\n Q.Cầu Giấy, TP. Hà Nội.\n

\n

- Điện thoại: {{ So_dien_thoai }} 

\n

Bên B: BÊN THUÊ 

\n

\n - Họ và tên HSSV: {{ dt_print.Ho_ten }}      \n    Nam (Nữ): {{ dt_print.Gioi_Tinh == 1 ? 'Nữ' : 'Nam' }} \n    Ngày sinh: {{ dt_print.Ngay_sinh | date: 'dd' }} /{{\n dt_print.Ngay_sinh | date: 'MM'\n }}/{{ dt_print.Ngay_sinh | date: 'yyyy' }}\n

\n

\n - Trường: Đại học Sư phạm Hà Nội          \n Khoa:{{ dl_sv.Ten_khoa_nhap_hoc }}    \n   Khóa: {{ dt_print.Khoa_hoc_nhap_hoc }}    \n   Lớp: {{ dl_sv.Lop }}\n

\n

\n - Số CMND/CCCD:{{\n dt_print.CMND == null\n ? '                          '\n : dt_print.CMND\n }}\n           Cấp ngày:{{\n dt_print.Ngay_cap_CMND == null\n ? '      '\n : (dt_print.Ngay_cap_CMND | date: 'dd')\n }}\n /{{\n dt_print.Ngay_cap_CMND == null\n ? '      '\n : (dt_print.Ngay_cap_CMND | date: 'MM')\n }}/{{\n dt_print.Ngay_cap_CMND == null\n ? '      '\n : (dt_print.Ngay_cap_CMND | date: 'yyyy')\n }}         tại:{{\n dt_print2.ID_noi_cap_CMND == ''\n ? '              '\n : dt_print2.ID_noi_cap_CMND\n }}              Số thẻ HSSV :\n …{{ dt_print.So_the }}................…….\n

\n

\n - Điện thoại:{{\n dl_sv.Dienthoai_canhan == null\n ? '                 '\n : dl_sv.Dienthoai_canhan\n }}\n           Email:{{ dl_sv.Email }}\n

\n

\n - Khi cần báo tin cho cha, mẹ (hoặc người thân):   {{\n dt_print.Ho_ten_cha == '' ? dt_print.Ho_ten_me : dt_print.Ho_ten_cha\n }}\n

\n

\n - Địa chỉ:   {{\n dt_print.Dia_chi_tt == ''\n ? '                                          '\n : dt_print.Dia_chi_tt\n }}\n             Số điện thoại liên hệ:\n {{\n dt_print.Ho_ten_cha == '' ? dl_sv.So_dien_thoai_me : dl_sv.So_dien_thoai_me\n }}\n

\n

\n Hai bên thống nhất ký kết Hợp đồng ở nội\n trú dùng cho mục đích để ở và sinh hoạt của\n HSSV với những nội dung sau: \n

\n

\n Điều 1. Đặc điểm chính của nhà ở HSSV\n

\n

\n Địa điểm thuê: Khu nhà ở HSSV Ký\n túc xá - Trường ĐHSP Hà Nội, số 136 Xuân Thủy,\n   P.Dịch Vọng Hậu, Q.Cầu Giấy, TP. Hà Nội.\n

\n
\n \n \n \n \n

Nhà

\n \n \n

 {{ dt_print.ToaNha_Phong }}

\n \n \n

Tầng

\n \n \n

 {{ dt_print.ID_Tang }}

\n \n \n

Phòng

\n \n \n

 {{ dt_print.Ten_phong }}

\n \n \n

Mã thẻ ra vào

\n \n \n

 {{ dl_room[0].Ma_the }}

\n \n
\n \n
\n
\n

 

\n

\n Điều 2. Giá trị hợp đồng, phương thức thanh toán, thời hạn hợp đồng \n

\n

2.1. Giá trị hợp đồng

\n

\n Giá trị hợp đồng = Đơn giá cho thuê x Thời\n gian thuê.\n

\n

\n (Giá cho thuê theo quy định của Nhà trường; Thời gian cho\n thuê theo Kế hoạch đào tạo của Nhà trường).\n

\n

2.2. Phương thức thanh toán

\n

\n a) Bên B thanh toán tiền thuê chỗ ở 01 lần bằng\n tiền mặt ngay khi ký Hợp đồng.\n

\n

\n b) Các chi phí sử dụng điện, nước, ... Bên B\n có trách nhiệm thanh toán bằng tiền mặt cho Bên A\n theo thực tế sử dụng trong thời gian 05 ngày kể từ ngày\n Bên A thông báo cho Bên B. \n

\n

\n c) Giá thuê chỗ ở HSSV sẽ được điều chỉnh khi\n Nhà trường có thay đổi đơn giá cho thuê. Bên\n A có trách nhiệm thông báo giá mới cho\n Bên B biết trước khi áp dụng 01 tháng. \n

\n

\n 2.3. Thời hạn Hợp đồng\n

\n

\n Thời hạn hợp đồng kể từ ngày {{\n dt_print.Ngay_bat_dau | date: 'dd'\n }}\n tháng {{ dt_print.Ngay_bat_dau | date: 'MM' }} năm\n {{ dt_print.Ngay_bat_dau | date: 'yyyy' }} đến ngày {{\n dt_print.Ngay_ket_thuc | date: 'dd'\n }}\n tháng {{ dt_print.Ngay_ket_thuc | date: 'MM' }} năm\n {{ dt_print.Ngay_ket_thuc | date: 'yyyy' }}\n

\n

\n Điều 3. Biện pháp đảm bảo thực hiện Hợp đồng\n

\n

\n Bên B đặt một khoản tiền cược tài sản được quy định là:{{\n dl_room[0].Tien_cuoc\n }} VNĐ để đảm bảo việc thực hiện Hợp đồng đối\n với HSSV được xét thuê chỗ ở. Bên A sẽ\n hoàn trả số tiền này sau khi Bên B chấm dứt hợp đồng\n mà không làm hư hỏng tài sản và đã\n thanh toán các khoản nợ (nếu có) cho\n Bên A. Đồng thời, Bên B đã mang toàn bộ\n hành lý, tư trang cá nhân ra\n khỏi Ký túc xá.\n

\n

\n Điều 4. Quyền và nghĩa vụ của Bên A\n

\n

\n 1. Quyền của Bên A\n

\n

\n a) Yêu cầu Bên B sử dụng chỗ ở đúng mục đích\n và đúng Nội quy, Quy định của Ký\n túc xá và Trường ĐHSP Hà Nội;\n

\n

\n b) Xử lý hoặc phối hợp với các đơn vị liên quan trong\n việc xử lý vi phạm quy định về quản lý sử dụng phòng ở;\n

\n

\n c) Yêu cầu Bên B thực hiện đúng nội dung ghi\n trong Điều 2 của Hợp đồng này;\n

\n

\n d) Yêu cầu Bên B có trách nhiệm thanh toán\n tiền để sửa chữa phần hư hỏng, bồi thường thiệt hại do lỗi của Bên B\n gây ra;\n

\n

\n g) Di chuyển, bố trí, sắp xếp chỗ ở của Bên B để phục vụ\n công tác quản lý vận hành KTX;\n

\n

\n h) Được quyền chấm dứt hợp đồng và thu hồi chỗ ở khi có một\n trong các trường hợp quy định tại Điều 7 của hợp đồng này;\n

\n

\n i) Các quyền khác (theo thỏa thuận).                 \n                      \n                     \n

\n

\n 2. Nghĩa vụ của Bên A\n

\n

\n a) Giao chỗ ở cho Bên B đúng thời gian quy định tại Điều 2 của\n hợp đồng này;\n

\n

\n b) Phổ biến Nội quy, Quy định của Ký túc\n xá và Trường ĐHSP Hà Nội cho Bên B và\n các tổ chức, cá nhân liên quan biết;\n

\n

\n c) Thực hiện quản lý vận hành, bảo trì nhà ở cho\n thuê theo quy định;\n

\n

\n d) Thông báo cho Bên B những thay đổi về giá\n thuê ít nhất là 01 tháng trước khi điều\n chỉnh đơn giá cho thuê mới;\n

\n

\n g) Phối hợp với các tổ chức, các nhân có liên\n quan đôn đốc HSSV chấp hành Nội quy, Quy\n định của Ký túc xá và Trường ĐHSP\n Hà Nội;\n

\n

\n h) Các nghĩa vụ khác (theo thỏa thuận).\n

\n

\n Điều 6. Quyền và nghĩa vụ của Bên B\n

\n

1. Quyền của Bên B

\n

\n a) Nhận chỗ ở theo đúng thỏa thuận nêu tại Khoản 1 Điều 1 của hợp\n đồng này;\n

\n

\n b) Yêu cầu Bên A sửa chữa kịp thời những hư hỏng của phòng\n ở và trang thiết bị trong phòng để đảm bảo việc sử dụng\n bình thường và an toàn;\n

\n

c) Được gia hạn ở nội trú nếu vẫn thuộc đối tượng, đủ điều kiện;

\n

\n d) Chấm dứt Hợp đồng khi không còn nhu cầu\n thuê chỗ ở;\n

\n

g) Các quyền khác (theo thỏa thuận).

\n

\n 2. Nghĩa vụ của Bên B\n

\n

\n a) Sử dụng chỗ ở đúng mục đích, giữ\n gìn phòng ở và có trách nhiệm sửa\n chữa những hư hỏng và bồi thường thiệt hại do lỗi của mình\n gây ra. Không được tự ý dịch chuyển vị trí hoặc\n thay đổi trang thiết bị đã lắp đặt sẵn trong phòng;\n

\n

\n b) Thực hiện đúng nội dung trong Điều 2 của Hợp đồng\n này;\n

\n

\n c) Chấp hành đầy đủ những Nội quy, Quy\n định của Ký túc xá và Trường ĐHSP\n Hà Nội;\n

\n

\n d) Không được chuyển nhượng Hợp đồng ở nội trú hoặc cho\n người khác thuê lại chỗ ở HSSV dưới bất kỳ hình\n thức nào;\n

\n

\n g) Không được tự ý sửa chữa, cải tạo nhà ở. Chấp\n hành đầy đủ những quy định về quản lý sử dụng nhà ở\n và các quyết định của cơ quan có thẩm quyền về quản\n lý nhà ở;\n

\n

\n h) Giao lại chỗ ở cho Bên A trong các trường hợp chấm\n dứt Hợp đồng hoặc trong trường hợp chỗ ở nội trú thuộc diện bị thu\n hồi;\n

\n

i) Các nghĩa vụ khác (theo thỏa thuận).

\n

\n Điều 7. Chấm dứt hợp đồng\n

\n

Hợp đồng này chấm dứt trong các trường hợp sau:

\n

1. Hết thời hạn hiệu lực của Hợp đồng ở nội trú;

\n

\n 2. Khi hai bên cùng nhất trí chấp dứt Hợp đồng ở\n nội trú;\n

\n

\n 3. Khi Bên B không còn thuộc đối tượng được thuê\n chỗ ở hoặc khi Bên B mất năng lực hành vi dân sự; \n

\n

\n 4. Khi Bên B vi phạm Nội quy, Quy\n định của Ký túc xá và Trường ĐHSP\n Hà Nội;\n

\n

\n 5. Khi Bên B không thanh toán phí nội\n trú, các khoản tiền điện, nước sinh\n hoạt, ... quá 15 ngày mà không có\n lý do chính đáng;\n

\n

\n 6. Khi Bên B tự ý sửa chữa, đục phá kết cấu, cải tạo\n hoặc cơi nới phòng ở;\n

\n

\n 7. Khi Bên B tự ý chuyển quyền thuê cho người\n khác hoặc cho người khác cùng sử dụng phòng ở;\n

\n

\n 8. Khi Bên B vi phạm các Điều cấm theo quy định của\n Pháp luật;\n

\n

\n 9. Khi nhà ở cho thuê bị hư hỏng nặng có nguy cơ sập đổ\n hoặc nằm trong khu vực đã có quyết định thu hồi đất, giải\n phóng mặt bằng hoặc có quyết định phá dỡ của cơ quan\n nhà nước có thẩm quyền;\n

\n

\n 10. Khi một trong các bên đơn phương chấm dứt hợp đồng theo thỏa\n thuận (nếu có) hoặc theo quy định của\n Pháp luật;\n

\n

\n 11. Trường hợp Bên B chấm dứt Hợp đồng thuê trước thời\n hạn thì phải có đơn đề nghị gửi Ban Quản\n lý Ký túc xá trước 02 tháng;\n

\n

\n 12. Khi có nhiệm vụ phát sinh, Bên A được quyền\n yêu cầu chấm dứt Hợp đồng với Bên B (báo trước tối thiểu 01 tháng).\n

\n

\n Điều 8. Cam kết thực hiện và giải quyết tranh chấp\n

\n

\n a). Các bên cam kết thực hiện đầy đủ các nội dung\n đã ghi trong Hợp đồng này.\n

\n

\n b). Mọi tranh chấp liên quan hoặc phát sinh từ Hợp đồng\n này sẽ được bàn bạc giải quyết trên tinh thần thương\n lượng, hoà giải giữa hai bên. Trường hợp không hoà\n giải được thì đưa ra Toà án để giải quyết.\n

\n

\n Điều 9. Điều khoản thi hành\n

\n

\n Hợp đồng này có hiệu lực kể từ ngày ký. Hợp đồng\n này gồm 02 trang, được lập thành 02 bản,\n có giá trị pháp lý như nhau, mỗi\n bên giữ 01 bản để thực hiện.  \n

\n

\n Hợp đồng này được coi là tự thanh lý khi hết thời\n hạn Hợp đồng và không được gia hạn.  \n

\n

 

\n\n \n \n \n \n \n \n
\n

BÊN A

\n

 

\n

 

\n

 

\n
\n

BÊN B

\n

 

\n

 

\n

 

\n
\n

 

\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject, from } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n AbstractControl,\r\n} from '@angular/forms';\r\nimport { BaseComponent } from '../base/base.component';\r\nimport { AnyMxRecord } from 'dns';\r\n\r\nexport function removeSpaces(control: AbstractControl) {\r\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\r\n control.setValue('');\r\n }\r\n return null;\r\n}\r\n@Component({\r\n selector: 'app-listpeopledorm',\r\n templateUrl: './listpeopledorm.component.html',\r\n styleUrls: ['./listpeopledorm.component.scss'],\r\n})\r\nexport class ListpeopledormComponent extends BaseComponent implements OnInit {\r\n dtOptions: any;\r\n Token: string;\r\n Res: any;\r\n req: any;\r\n check: any;\r\n ID_ToaNha: any;\r\n ID_sv: any;\r\n ID_dangky: any;\r\n dataTable: any = [];\r\n dataCampus: any = [];\r\n dataBuildingChangeAfter: any = [];\r\n dataBuilding: any = [];\r\n dataDangKyQuaTrinh: any = [];\r\n dataRoom: any = [];\r\n closeResult: string;\r\n ClassData: any;\r\n ID_room: any;\r\n ID: any;\r\n dt: any;\r\n Sap_het_han: any;\r\n So_Ho_Chieu: any;\r\n Ngay_Het_Han_Visa: any;\r\n address: any;\r\n titleModal: string;\r\n default: any;\r\n Ngay_gia_han: any;\r\n So_thang_o: any;\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n checkAction: boolean;\r\n NameTitle: string;\r\n Title: string = 'Đang tải ...';\r\n TitleClass: string = 'spinner-border text-muted';\r\n Request: any;\r\n Phong_Model: any;\r\n Ly_do: any = ' ';\r\n Check_ra: boolean;\r\n Ngay_ra_ktx: any;\r\n Title_mail: any;\r\n Content_mail: any;\r\n Mail_send: any;\r\n Mail_send_pass: any;\r\n Action = new FormGroup({\r\n So_Ho_Chieu: new FormControl(null),\r\n Ngay_Het_Han_Visa: new FormControl(null),\r\n Ngay_bat_dau: new FormControl(null, [Validators.required]),\r\n Ngay_ket_thuc: new FormControl(null, [Validators.required]),\r\n Ma_sv: new FormControl(null, []),\r\n Ho_ten: new FormControl(null, []),\r\n Ngay_sinh: new FormControl(null, []),\r\n Gioi_Tinh: new FormControl(2, []),\r\n ID_quoc_tich: new FormControl(0, []),\r\n Dan_toc: new FormControl(0, []),\r\n CMND: new FormControl(null, []),\r\n Ngay_cap_CMND: new FormControl(null, []),\r\n Noi_cap_CMND: new FormControl(0, []),\r\n Ton_giao: new FormControl(null, []),\r\n Dia_chi_tt: new FormControl(null, []),\r\n Dienthoai_canhan: new FormControl(null, []),\r\n Email: new FormControl(null, []),\r\n Ho_ten_cha: new FormControl(null, []),\r\n Namsinh_cha: new FormControl(null, []),\r\n Hoat_dong_XH_CT_cha: new FormControl(null, []),\r\n Ho_ten_me: new FormControl(null, []),\r\n Namsinh_me: new FormControl(null, []),\r\n Hoat_dong_XH_CT_me: new FormControl(null, []),\r\n NoiO_hiennay: new FormControl(null, []),\r\n So_dien_thoai_bo: new FormControl(null, []),\r\n So_dien_thoai_me: new FormControl(null, []),\r\n });\r\n Ngay_ra_phong_cu: any;\r\n ActionChangeRoom = new FormGroup({\r\n ID_Campus: new FormControl(null),\r\n ID_Building: new FormControl(null),\r\n ID_Floor: new FormControl(null),\r\n ID_Room: new FormControl(null, []),\r\n Ma_sv_dp: new FormControl(null),\r\n Ho_ten_dp: new FormControl(null),\r\n });\r\n id_phong_ktx: any;\r\n FillMaSV: any;\r\n FillHoTen: any;\r\n FillLoaiDongTien: any = '';\r\n FillTrangThaiO: any = '';\r\n FillQuocTich: any;\r\n FillPhong: any = '';\r\n FillThoiGianVao: any;\r\n FillThoiGianVisa: any;\r\n Ngay_ra_KTX: any;\r\n Ngay_vao_KTX: any;\r\n dataQuocTich: any;\r\n dataDanToc: any;\r\n FillLoaiPhong: any = '';\r\n FillPhongNamNu: any = '';\r\n dataTypeRoom: any;\r\n getNull = false;\r\n FillCoSo: any = '';\r\n FillToaNha: any = '';\r\n FillTang: any;\r\n dtReceipt: any;\r\n dataPrintf: any;\r\n dt_print: any = '123';\r\n dt_print2: any = '1234';\r\n dl_sv: any = '321';\r\n dl_room: any = [{ Ma_the: 0, Tien_cuoc: 0 }];\r\n dataBuildingChange: any;\r\n dataCampusChange: any;\r\n dataRoomChange: any;\r\n NameStudent: string;\r\n FillThoiGianRa: any;\r\n Loai_phong: any;\r\n Ghi_chu_black: string;\r\n Check_blacklist: boolean = false;\r\n dtRoomChange: any;\r\n totalItemFilter: any;\r\n public com: common;\r\n options = {};\r\n ID_loai_phong_cu: any;\r\n ngOnInit() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.getList();\r\n this.getCount();\r\n this.getListTypeRoom();\r\n this.getListCampusChange();\r\n this.getListCampus();\r\n }\r\n getCount() {\r\n this.ListpeopledormService.getCount(this.Token).subscribe((z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n });\r\n }\r\n getList() {\r\n this.spinner.show();\r\n this.page = 1;\r\n this.arrNumberPage = [];\r\n this.arrNumberPage_chil = [];\r\n let dataFilter = {\r\n ID_toa_nha: this.FillToaNha ? this.FillToaNha : '',\r\n ID_co_so: this.FillCoSo ? this.FillCoSo : '',\r\n Ten_phong: this.FillPhong ? this.FillPhong : '',\r\n ID_loai_phong: this.FillLoaiPhong ? this.FillLoaiPhong : '',\r\n Tang: this.FillTang ? this.FillTang : '',\r\n Ngay_bat_dau: this.FillThoiGianVao ? this.FillThoiGianVao : '',\r\n Ngay_ket_thuc: this.FillThoiGianRa ? this.FillThoiGianRa : '',\r\n Ma_sv: this.FillMaSV ? this.FillMaSV.trim() : '',\r\n Ho_ten: this.FillHoTen ? this.FillHoTen.trim() : '',\r\n ID_gioi_tinh: this.FillPhongNamNu,\r\n Sap_het_han: this.Sap_het_han,\r\n };\r\n var a = this.com.getUserinfo();\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n dataFilter: dataFilter,\r\n UserID: a.Info.UserID,\r\n };\r\n this.ListpeopledormService.getDormList(param, this.Token).subscribe((z) => {\r\n if (z.Status == 10) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n this.router.navigate(['/admin']);\r\n this.spinner.hide();\r\n } else {\r\n this.dataTable = z.Data;\r\n this.ListpeopledormService.getCountFilter(param, this.Token).subscribe(\r\n (z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n }\r\n );\r\n }\r\n });\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n refesh() {\r\n this.FillToaNha = '';\r\n this.FillCoSo = '';\r\n this.FillPhong = '';\r\n this.FillLoaiPhong = '';\r\n this.FillTang = '';\r\n this.FillThoiGianVao = '';\r\n this.FillThoiGianRa = '';\r\n this.FillMaSV = '';\r\n this.FillHoTen = '';\r\n this.getList();\r\n }\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n let dataFilter = {\r\n ID_toa_nha: this.FillToaNha ? this.FillToaNha : '',\r\n ID_co_so: this.FillCoSo ? this.FillCoSo : '',\r\n Ten_phong: this.FillPhong ? this.FillPhong : '',\r\n ID_loai_phong: this.FillLoaiPhong ? this.FillLoaiPhong : '',\r\n Tang: this.FillTang ? this.FillTang : '',\r\n Ngay_bat_dau: this.FillThoiGianVao ? this.FillThoiGianVao : '',\r\n Ngay_ket_thuc: this.FillThoiGianRa ? this.FillThoiGianRa : '',\r\n Ma_sv: this.FillMaSV ? this.FillMaSV.trim() : '',\r\n Ho_ten: this.FillHoTen ? this.FillHoTen.trim() : '',\r\n ID_gioi_tinh: this.FillPhongNamNu,\r\n Sap_het_han: this.Sap_het_han,\r\n };\r\n var a = this.com.getUserinfo();\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n dataFilter: dataFilter,\r\n UserID: a.Info.UserID,\r\n };\r\n this.ListpeopledormService.getDormList(param, this.Token).subscribe((z) => {\r\n if (z.Status == 10) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n } else {\r\n this.dataTable = z.Data;\r\n this.spinner.hide();\r\n }\r\n });\r\n }\r\n getListTypeRoom() {\r\n this.RoomcategoryService.getList(this.getNull, this.Token).subscribe(\r\n (z) => {\r\n this.dataTypeRoom = z.Data;\r\n }\r\n );\r\n } // lấy danh sách loại phòng\r\n Aprove() {\r\n this.dt.Ly_do = this.Ly_do;\r\n this.ListpeopledormService.UpdateRaKhoiKTX(this.dt, this.Token).subscribe(\r\n (z) => {\r\n this.modalService.dismissAll('Approve');\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.getList();\r\n }\r\n );\r\n }\r\n getListCampus() {\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCampus = z.Data;\r\n });\r\n }\r\n GiaHan() {\r\n if (\r\n this.Ngay_gia_han == null ||\r\n this.Ngay_gia_han == undefined ||\r\n this.Ngay_gia_han == ''\r\n ) {\r\n this.toastr.warning('Bạn chưa chọn ngày gia hạn');\r\n return false;\r\n }\r\n if (this.So_thang_o <= 0) {\r\n this.toastr.warning('Số tháng ở phải lớn hơn 0!');\r\n return false;\r\n }\r\n if (this.Ngay_gia_han <= this.dataDangKyQuaTrinh.Den_ngay) {\r\n this.toastr.warning('Ngày gia hạn phải lớn hơn ngày kết thúc!');\r\n return false;\r\n }\r\n this.spinner.show();\r\n let req = {\r\n ID: this.dt.ID_dang_ky,\r\n Ngay_ket_thuc: this.Ngay_gia_han,\r\n So_thang_o: this.So_thang_o,\r\n };\r\n this.ListpeopledormService.GiaHanNgayRa(req, this.Token).subscribe((z) => {\r\n this.modalService.dismissAll('Approve');\r\n this.spinner.hide();\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.getList();\r\n });\r\n }\r\n MultiGiaHan() {\r\n let dtsv = this.dataTable.filter((x) => x.checked == true);\r\n this.spinner.show();\r\n if (dtsv.length < 1) {\r\n this.toastr.warning('Bạn chưa chọn sinh viên');\r\n return false;\r\n }\r\n if (\r\n this.Ngay_gia_han == null ||\r\n this.Ngay_gia_han == undefined ||\r\n this.Ngay_gia_han == ''\r\n ) {\r\n this.toastr.warning('Bạn chưa chọn ngày gia hạn');\r\n return false;\r\n }\r\n let req = {\r\n listSinhVien: dtsv,\r\n Ngay_ket_thuc: this.Ngay_gia_han,\r\n };\r\n this.ListpeopledormService.MultiGiaHanNgayRa(req, this.Token).subscribe(\r\n (z) => {\r\n this.modalService.dismissAll('Approve');\r\n this.spinner.hide();\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.getList();\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n }\r\n );\r\n }\r\n changeGiaHan() {\r\n if (this.Ngay_gia_han <= this.dataDangKyQuaTrinh.Den_ngay) {\r\n this.toastr.warning('Ngày gia hạn phải lớn hơn ngày kết thúc!');\r\n return false;\r\n }\r\n let Ngay_ket_thuc = new Date(this.Ngay_gia_han);\r\n let Ngay_bat_dau = new Date(this.dataDangKyQuaTrinh.Tu_ngay);\r\n let SoThangO;\r\n\r\n if (Ngay_ket_thuc.getFullYear() > Ngay_bat_dau.getFullYear()) {\r\n SoThangO =\r\n (Ngay_ket_thuc.getFullYear() - Ngay_bat_dau.getFullYear()) * 12 -\r\n Ngay_bat_dau.getMonth() +\r\n Ngay_ket_thuc.getMonth();\r\n } else {\r\n SoThangO = Ngay_ket_thuc.getMonth() - Ngay_bat_dau.getMonth();\r\n }\r\n if (Ngay_bat_dau != Ngay_ket_thuc) {\r\n SoThangO -= 1;\r\n if (30 - Ngay_bat_dau.getDate() > 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n if (30 - Ngay_ket_thuc.getDate() < 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n }\r\n this.So_thang_o = SoThangO;\r\n }\r\n getListBuilding() {\r\n this.FillToaNha = '';\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n this.dataBuilding = z.Data.filter((x) => {\r\n return x.ID_CoSo == this.FillCoSo;\r\n });\r\n if (this.dataBuilding.length > 0) {\r\n this.getListRoom();\r\n } else {\r\n this.FillPhong = '';\r\n }\r\n });\r\n }\r\n getListRoom() {\r\n this.FillPhong = '';\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n this.dataRoom = z.Data.filter((x) => {\r\n return x.ID_Toa_Nha == this.FillToaNha;\r\n });\r\n });\r\n }\r\n changeCampus() {\r\n this.getListBuilding();\r\n }\r\n changeRoom() {\r\n this.getListRoom();\r\n }\r\n getListCampusChange() {\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCampusChange = z.Data;\r\n this.getListBuildingChange();\r\n });\r\n } // list all Cơ sở đổi phòng\r\n getListBuildingChange() {\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n this.dataBuildingChange = z.Data;\r\n this.dataBuildingChangeAfter = z.Data;\r\n\r\n this.getListRoomChange();\r\n });\r\n } // list tòa nhà đổi phòng\r\n getListRoomChange() {\r\n this.RoomService.GetAllNonLock(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n\r\n this.dtRoomChange = z.Data;\r\n this.dataRoomChange = z.Data;\r\n });\r\n } // list phòng đổi phòng\r\n changeCampusRep() {\r\n this.dataBuildingChange = this.dataBuildingChangeAfter.filter(\r\n (x) => x.ID_CoSo == this.ActionChangeRoom.value.ID_Campus\r\n );\r\n this.ActionChangeRoom.get('ID_Room').setValue('');\r\n }\r\n changeRoomRep() {\r\n this.dataRoomChange = this.dtRoomChange.filter((x) => {\r\n return (\r\n x.ID_Toa_Nha == this.ActionChangeRoom.value.ID_Building &&\r\n x.Loai_phong == this.dt.Phong_nam_nu &&\r\n x.Con_trong > 0\r\n );\r\n });\r\n }\r\n open(content, sizm, Loai, Data) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.onReset();\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n this.onReset();\r\n }\r\n );\r\n this.Ngay_gia_han = '';\r\n this.dt = Data;\r\n this.So_thang_o = 0;\r\n let today = new Date();\r\n let day, month;\r\n var yyyy = today.getFullYear();\r\n if (today.getDate() < 10) {\r\n day = '0' + today.getDate();\r\n } else {\r\n day = today.getDate();\r\n }\r\n if (today.getMonth() + 1 < 10) {\r\n month = '0' + (today.getMonth() + 1);\r\n } else {\r\n month = today.getMonth() + 1;\r\n }\r\n var getday = yyyy + '-' + month + '-' + day;\r\n this.Ngay_ra_ktx = getday;\r\n this.Check_ra = false;\r\n this.Check_blacklist = false;\r\n this.Ly_do = ' ';\r\n this.Title_mail = ' ';\r\n this.Content_mail = ' ';\r\n this.Mail_send = ' ';\r\n this.Mail_send_pass = ' ';\r\n if (Loai == 'Edit') {\r\n const date = new Date().toLocaleString();\r\n this.titleModal = 'Thông tin sinh viên';\r\n this.check = Data.So_Ho_Chieu;\r\n this.checkAction = true;\r\n if (!Data.Ngay_Het_Han_Visa) {\r\n Data.Ngay_Het_Han_Visa = date.substring(0, 10);\r\n }\r\n if (!Data.Ngay_bat_dau) {\r\n Data.Ngay_bat_dau = date.substring(0, 10);\r\n }\r\n if (!Data.Ngay_ket_thuc) {\r\n Data.Ngay_ket_thuc = date.substring(0, 10);\r\n }\r\n this.Action.setValue({\r\n So_Ho_Chieu: Data.So_Ho_Chieu,\r\n Ngay_Het_Han_Visa:\r\n Data.Ngay_Het_Han_Visa != null\r\n ? Data.Ngay_Het_Han_Visa.substring(0, 10)\r\n : null,\r\n Ngay_bat_dau:\r\n Data.Ngay_bat_dau != null ? Data.Ngay_bat_dau.substring(0, 10) : null,\r\n Ngay_ket_thuc:\r\n Data.Ngay_ket_thuc != null\r\n ? Data.Ngay_ket_thuc.substring(0, 10)\r\n : null,\r\n Ma_sv: Data.Ma_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Ngay_sinh:\r\n Data.Ngay_sinh != null ? Data.Ngay_sinh.substring(0, 10) : null,\r\n Gioi_Tinh: Data.Gioi_Tinh,\r\n ID_quoc_tich: Data.Quoc_tich,\r\n Dan_toc: Data.Dan_toc,\r\n CMND: Data.CMND,\r\n Ngay_cap_CMND:\r\n Data.Ngay_cap_CMND != null\r\n ? Data.Ngay_cap_CMND.substring(0, 10)\r\n : null,\r\n Noi_cap_CMND: Data.ID_noi_cap_CMND,\r\n Ton_giao: Data.Ton_giao,\r\n Dia_chi_tt: Data.Dia_chi_tt,\r\n Dienthoai_canhan: Data.Dienthoai_canhan,\r\n Email: Data.Email,\r\n Ho_ten_cha: Data.Ho_ten_cha,\r\n Namsinh_cha:\r\n Data.Namsinh_cha != null ? Data.Namsinh_cha.substring(0, 10) : null,\r\n Hoat_dong_XH_CT_cha: Data.Hoat_dong_XH_CT_cha,\r\n Ho_ten_me: Data.Ho_ten_me,\r\n Namsinh_me:\r\n Data.Namsinh_me != null ? Data.Namsinh_me.substring(0, 10) : null,\r\n Hoat_dong_XH_CT_me: Data.Hoat_dong_XH_CT_me,\r\n NoiO_hiennay: Data.NoiO_hiennay,\r\n So_dien_thoai_bo: Data.So_dien_thoai_bo,\r\n So_dien_thoai_me: Data.So_dien_thoai_me,\r\n });\r\n } else if (Loai == 'Add') {\r\n this.titleModal = 'Thêm mới thông tin sinh viên';\r\n this.checkAction = false;\r\n this.Action.reset();\r\n } else if (Loai == 'changeRoom') {\r\n this.dataRoomChange = [];\r\n this.ListpeopledormService.getDangKyQuaTrinhLast(\r\n Data.ID_dang_ky,\r\n this.Token\r\n ).subscribe((z) => {\r\n this.dataDangKyQuaTrinh = z;\r\n });\r\n (this.ID_dangky = Data.ID_dang_ky), (this.ID_sv = Data.ID_sv);\r\n this.Loai_phong = Data.ID_loai_phong;\r\n this.ID_loai_phong_cu = Data.ID_loai_phong;\r\n this.NameStudent = Data.Ho_ten;\r\n this.ID_phong = Data.ID_phong;\r\n\r\n this.ActionChangeRoom.setValue({\r\n ID_Campus: '',\r\n ID_Building: '',\r\n ID_Room: '',\r\n ID_Floor: '',\r\n Ma_sv_dp: Data.Ma_sv,\r\n Ho_ten_dp: Data.Ho_ten,\r\n });\r\n this.Ngay_ra_KTX = Data.Ngay_ket_thuc;\r\n this.Ngay_vao_KTX = Data.Ngay_bat_dau;\r\n this.id_phong_ktx = Data.ID_phong;\r\n } else if (Loai == 'RoomLead') {\r\n this.ID_room = Data.ID_phong;\r\n this.ID_dangky = Data.ID_dang_ky;\r\n this.Ngay_ra_KTX = Data.Ngay_ket_thuc;\r\n } else if (Loai == 'RaHan') {\r\n this.ListpeopledormService.getDangKyQuaTrinhLast(\r\n Data.ID_dang_ky,\r\n this.Token\r\n ).subscribe((z) => {\r\n this.dataDangKyQuaTrinh = z;\r\n });\r\n }\r\n }\r\n\r\n openprintf(content, sizm, Loai, Data) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.onReset();\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n this.onReset();\r\n }\r\n );\r\n this.dt = Data;\r\n }\r\n //check value\r\n get checkvalue() {\r\n return this.Action.controls;\r\n }\r\n\r\n onChangeRoom() {\r\n this.dt.ID_phong = this.ActionChangeRoom.value.ID_Room;\r\n this.dt.ID_Co_So = this.ActionChangeRoom.value.ID_Campus;\r\n this.dt.ID_Toa_Nha = this.ActionChangeRoom.value.ID_Building;\r\n this.dt.ID_Tang = this.ActionChangeRoom.value.ID_Floor;\r\n let dtRoo = this.dataRoomChange.filter((x) => {\r\n return x.ID_Phong == this.ActionChangeRoom.value.ID_Room;\r\n });\r\n if (dtRoo.length > 0) {\r\n if (this.Ngay_ra_phong_cu == null || this.Ngay_ra_phong_cu == '') {\r\n this.toastr.warning('Bạn chưa chọn ngày đổi !');\r\n } else {\r\n //let dtsv = this.dataTable.filter((x) => x.checked == true);\r\n let req = {\r\n Students: [this.dt],\r\n IDPhong: this.ActionChangeRoom.value.ID_Room,\r\n IDPhongDi: this.ID_phong,\r\n Ngay_bat_dau: this.Ngay_ra_phong_cu,\r\n };\r\n this.ListpeopledormService.UpdateRoom(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('ChangeClassModal');\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.getList();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n this.modalService.dismissAll('ChangeClassModal');\r\n }\r\n );\r\n }\r\n } else {\r\n this.toastr.warning('Chọn phòng !');\r\n }\r\n } // đổi phòng ktx\r\n\r\n saveRoomHistory() {\r\n this.dt.ID_phong = this.ActionChangeRoom.value.ID_Room;\r\n if (this.id_phong_ktx != this.dt.ID_phong) {\r\n this.ListAccessHistory.Insert(this.dt, this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success('Cập nhật thành công');\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.ActionChangeRoom.reset();\r\n });\r\n }\r\n this.modalService.dismissAll('ChangeClassModal');\r\n\r\n this.getList();\r\n } // cập nhật thông tin vào ra phòng ktx\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.Action.invalid) {\r\n return false;\r\n }\r\n this.actionUpdate();\r\n }\r\n onReset() {\r\n this.submitted = false;\r\n this.Action.reset();\r\n this.dataBuilding = [];\r\n this.dataRoom = [];\r\n this.dataCampus = [];\r\n this.ActionChangeRoom.reset();\r\n }\r\n // actionUpdate\r\n actionUpdate() {\r\n // this.dt.So_Ho_Chieu = this.Action.value.So_Ho_Chieu;\r\n // this.dt.Ngay_Het_Han_Visa = this.Action.value.Ngay_Het_Han_Visa;\r\n // this.dt.Ngay_bat_dau = this.Action.value.Ngay_bat_dau;\r\n // this.dt.Ngay_ket_thuc = this.Action.value.Ngay_ket_thuc;\r\n this.dt.So_Ho_Chieu = this.Action.value.So_Ho_Chieu;\r\n this.dt.Ngay_Het_Han_Visa = this.Action.value.Ngay_Het_Han_Visa;\r\n this.dt.Dienthoai_canhan = this.Action.value.Dienthoai_canhan;\r\n this.dt.Email = this.Action.value.Email;\r\n this.dt.Dia_chi_tt = this.Action.value.Dia_chi_tt;\r\n if (Date.parse(this.dt.Ngay_bat_dau) > Date.parse(this.dt.Ngay_ket_thuc)) {\r\n this.toastr.warning('Ngày ra KTX không thể nhỏ hơn ngày vào KTX');\r\n } else {\r\n this.ListpeopledormService.UpdateSV(this.dt, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error('Cập nhật thất bại!');\r\n } else if (z.Status == 9) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('ThemModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList();\r\n }\r\n this.Action.reset();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n } // cập nhật số hộ chiếu quốc tịch đối với sinh viên nước ngoài\r\n setStyle(x: any) {\r\n let floorElements = document.getElementById(x);\r\n floorElements.setAttribute('style', 'border: 10px');\r\n }\r\n\r\n checkHanraKTX(datetime) {\r\n let dateParts = datetime.split('-');\r\n let day = parseInt(dateParts[2]);\r\n let month = parseInt(dateParts[1]) - 1;\r\n let year = parseInt(dateParts[0]);\r\n let someday = new Date(year, month, day);\r\n var today = new Date();\r\n today.setHours(0, 0, 0, 0);\r\n if (today > someday) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n AproveChange() {\r\n if (this.Ngay_ra_KTX != null) {\r\n if (this.checkHanraKTX(this.Ngay_ra_KTX) == false) {\r\n this.ListpeopledormService.UpdateLeadRoom(\r\n this.ID_dangky,\r\n this.ID_room,\r\n this.Token\r\n ).subscribe((z) => {\r\n this.modalService.dismissAll('AddModal');\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n\r\n this.getList();\r\n });\r\n } else {\r\n this.toastr.error('Sinh viên này đã hết hạn ở KTX kiểm tra lại !');\r\n }\r\n } else {\r\n this.toastr.warning('Ngày ra ký túc xá đang trống xin kiểm tra lại !');\r\n }\r\n } // kiểm tra hạn ra ktx\r\n\r\n Print() {\r\n this.dt_print = this.dt;\r\n setTimeout(() => {\r\n let printContents = document.getElementById('print-section').innerHTML;\r\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\r\n mywindow.document.write(`\r\n \r\n ${printContents}\r\n `);\r\n mywindow.document.close();\r\n mywindow.focus();\r\n\r\n mywindow.print();\r\n // mywindow.close();\r\n }, 200);\r\n this.modalService.dismissAll('DeleteModal');\r\n }\r\n ChoRa() {\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('ChoRaktx');\r\n this.toastr.warning('Bạn vui lòng tích chọn sinh viên để cho ra !');\r\n } else {\r\n var length = dt.length;\r\n var dtstring = dt.map((x) => x.ID_dang_ky);\r\n let data = {\r\n lstID_dang_ky: dtstring,\r\n Ly_do: this.Ly_do,\r\n Ngay_cho_ra: this.Ngay_ra_ktx,\r\n Ra_truoc_han: this.Check_ra,\r\n Danh_sach_den: this.Check_blacklist,\r\n };\r\n this.spinner.show();\r\n this.ListpeopledormService.ChoRaKTX(data, this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.spinner.hide();\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.spinner.hide();\r\n\r\n this.toastr.error(z.Message);\r\n }\r\n this.modalService.dismissAll('ChoRaktx');\r\n this.getList();\r\n });\r\n }\r\n } // Cho ra đúng thời hạn\r\n SendMail() {\r\n this.spinner.show();\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('Guimail');\r\n this.toastr.warning(\r\n 'Bạn vui lòng tích chọn sinh viên để gửi thông báo !'\r\n );\r\n this.spinner.hide();\r\n } else {\r\n var length = dt.length;\r\n var dtstring = dt.map((x) => x.Email);\r\n let data = {\r\n lstEmail: dtstring,\r\n Title_mail: this.Title_mail,\r\n Content_mail: this.Content_mail,\r\n Mail_send: this.Mail_send,\r\n Mail_send_pass: this.Mail_send_pass,\r\n };\r\n this.ListpeopledormService.Sendmail(data, this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n }\r\n ExportExcelList() {\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('ExportExcel');\r\n this.toastr.warning('Bạn vui lòng tích chọn sinh viên để xuất Excel !');\r\n } else {\r\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\r\n if (r) {\r\n this.spinner.show();\r\n var dtstring = this.GetStringID(dt);\r\n let data = {\r\n listString: dtstring,\r\n };\r\n this.ListpeopledormService.ExportDanhSachO(data, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.exportService.exportExcelByte(z.FileData, 'DanhSachO');\r\n this.toastr.success(\r\n 'File đã được tải xuống',\r\n 'Tác vụ thành công'\r\n );\r\n this.spinner.hide();\r\n this.modalService.dismissAll('ExportExcel');\r\n } else {\r\n this.toastr.error(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n }\r\n );\r\n }\r\n }\r\n } // Xuất excel\r\n GetStringID(m) {\r\n var rs = '';\r\n for (var k = 0; k < m.length; k++) {\r\n if (k == 0) {\r\n rs += m[k].ID_dang_ky;\r\n } else {\r\n rs += ',' + m[k].ID_dang_ky;\r\n }\r\n }\r\n return rs;\r\n } // get string id dang ky\r\n GetData_Print2(Data) {\r\n this.SystemService.Get_tinh(this.Token).subscribe((z) => {\r\n let a = Data.ID_noi_cap_CMND;\r\n Data.ID_noi_cap_CMND = '';\r\n for (let j = 0; j < z.length; j++) {\r\n if (z[j].ID_tinh == parseInt(a)) {\r\n Data.ID_noi_cap_CMND = z[j].Ten_tinh;\r\n }\r\n }\r\n Data.ToaNha_Phong = Data.ToaNha_Phong.slice(\r\n 0,\r\n Data.ToaNha_Phong.indexOf('-')\r\n );\r\n });\r\n let a = [];\r\n\r\n this.RegisterDormService.getSVbyMa(Data.Ma_sv, this.Token).subscribe(\r\n (z) => {\r\n this.dl_sv = z.Data[0];\r\n this.GrantCardService.getList(this.Token).subscribe((z) => {\r\n a = z.Data;\r\n let Ma_the_ktx = a.filter((a) => a.ID_sv == Data.ID_sv)[0].So_the;\r\n let tiencuoc = this.dataTypeRoom.filter(\r\n (a) => a.ID == Data.ID_loai_phong\r\n )[0].Tien_cuoc;\r\n this.dl_room = [];\r\n this.dl_room.push({ Ma_the: Ma_the_ktx, Tien_cuoc: tiencuoc });\r\n });\r\n }\r\n );\r\n this.Print2(Data);\r\n }\r\n Print2(Data) {\r\n this.dt_print2 = Data;\r\n setTimeout(() => {\r\n let printContents = document.getElementById('print-section2').innerHTML;\r\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\r\n mywindow.document.write(`\r\n \r\n ${printContents}\r\n `);\r\n mywindow.document.close();\r\n mywindow.focus();\r\n\r\n mywindow.print();\r\n // mywindow.close();\r\n }, 200);\r\n this.modalService.dismissAll('DeleteModal');\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_DanhSachO;\r\n window.open(urlHelp, '_blank');\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
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Tất cả\r\n Nam\r\n Nữ\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n Tất cả\r\n {{ p.Ten_loai_phong }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Chọn cơ sở\r\n {{\r\n i.name\r\n }}\r\n \r\n
\r\n
\r\n \r\n \r\n Chọn tòa nhà\r\n {{\r\n i.Ten_ToaNha\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
\r\n\r\n \r\n
{{ titleModal }}
\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
\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ày vào không được bỏ trống!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Ngày vào không được bỏ trống!\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
\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\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 \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 \r\n \r\n
\r\n
\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
Gia hạn thời gian ở
\r\n ×\r\n \r\n
\r\n
\r\n
\r\n Thời gian ở: {{ dataDangKyQuaTrinh.Tu_ngay | date: 'dd/MM/yyyy' }} -\r\n {{ dataDangKyQuaTrinh.Den_ngay | date: 'dd/MM/yyyy' }}\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\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
Ra hạn thời gian ở
\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 \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
Đổi phòng {{ NameStudent }}
\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 \r\n \r\n \r\n\r\n {{ item.Ten_ToaNha }}\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 Lưu\r\n \r\n \r\n Đóng\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 có chắc chắn cho sinh viên này ra khỏi kí túc xá\r\n

\r\n \r\n
\r\n \r\n Hủy bỏ\r\n \r\n \r\n Đồng ý\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 có chắc chắn cho sinh viên thành trưởng phòng\r\n

\r\n
\r\n \r\n Đồng ý\r\n \r\n \r\n Hủy bỏ\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 có chắc chắn tạo biên lai\r\n

\r\n
\r\n
\r\n \r\n Đồng ý\r\n \r\n \r\n Hủy bỏ\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

Cho ra khỏi ký túc xá

\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
\r\n
\r\n
\r\n
\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Gửi mail thông báo cho sinh viên

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n

Bạn có muốn xuất excel danh sách ở này

\r\n
\r\n\r\n
\r\n
\r\n \r\n Lưu\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, SimpleChanges, Input } from '@angular/core';\nimport { ListpeopledormService } from 'src/app/Utils/services/listpeopledorm.service';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-receipt-room',\n templateUrl: './receipt-room.component.html',\n styleUrls: ['./receipt-room.component.scss']\n})\nexport class ReceiptRoomComponent implements OnInit {\n @Input() public dt_print: any;\n @Input() typeReceipt: any;\n // tmlPrintEW:TemplateRef;\n studyClass: any;\n date: any = new Date();\n arr_number: any = [\n 'không',\n 'một',\n 'hai',\n 'ba',\n 'bốn',\n 'năm',\n 'sáu',\n 'bảy',\n 'tám',\n 'chín',\n ];\n money_words: any;\n dt_payment: any = [];\n dt_money: any = 0;\n Token: any;\n public com: common;\n dataTable: any;\n constructor( private ListAllService: ListpeopledormService,\n public router: Router,\n ) { }\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n\n\n }\n \n ngOnChanges(changes: SimpleChanges) {\n if(this.dt_print.ID_dang_ky != undefined)\n {\n this.getList(this.dt_print.ID_dang_ky)\n }\n\n }\n\n getList(id_dang_ky) {\n // this.dataTable =[ {\n // Noi_dung:'Nop tien phong',\n // So_tien_thuc_nop:100000\n // },\n // {\n // Noi_dung:'Nop tien Cuoc',\n // So_tien_thuc_nop:1000523\n // },\n // ];\n this.ListAllService.getListReceipt(id_dang_ky,this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n if (this.dataTable) {\n this.dataTable.forEach(element => {\n this.dt_money +=element.So_tien_thuc_nop\n \n });\n this.money_words = this.DocTienBangChu(this.dt_money);\n }\n\n });\n }\n\n DocTienBangChu(so) {\n if (so == 0) return this.arr_number[0];\n let chuoi = '',\n hauto = '';\n do {\n let ty = so % 1000000000;\n so = Math.floor(so / 1000000000);\n if (so > 0) {\n chuoi = this.dochangtrieu(ty, true) + hauto + chuoi;\n } else {\n chuoi = this.dochangtrieu(ty, false) + hauto + chuoi;\n }\n hauto = ' tỷ';\n } while (so > 0);\n return chuoi.charAt(1).toUpperCase() + chuoi.slice(2);\n } //đọc tiền\n\n dochangchuc(so, daydu) {\n let chuoi = '';\n let chuc = Math.floor(so / 10);\n let donvi = so % 10;\n if (chuc > 1) {\n chuoi = ' ' + this.arr_number[chuc] + ' mươi';\n if (donvi == 1) {\n chuoi += ' mốt';\n }\n } else if (chuc == 1) {\n chuoi = ' mười';\n if (donvi == 1) {\n chuoi += ' một';\n }\n } else if (daydu && donvi > 0) {\n chuoi = ' lẻ';\n }\n\n if (donvi == 5 && chuc >= 1) {\n chuoi += ' lăm';\n } else if (donvi > 1 || (donvi == 1 && chuc == 0)) {\n chuoi += ' ' + this.arr_number[donvi];\n }\n return chuoi;\n }\n\n docblock(so, daydu) {\n let chuoi = '';\n let tram = Math.floor(so / 100);\n so = so % 100;\n if (daydu || tram > 0) {\n chuoi = ' ' + this.arr_number[tram] + ' trăm';\n chuoi += this.dochangchuc(so, true);\n } else {\n chuoi = this.dochangchuc(so, false);\n }\n return chuoi;\n }\n\n dochangtrieu(so, daydu) {\n let chuoi = '';\n let trieu = Math.floor(so / 1000000);\n so = so % 1000000;\n if (trieu > 0) {\n chuoi = this.docblock(trieu, daydu) + ' triệu';\n daydu = true;\n }\n let nghin = Math.floor(so / 1000);\n so = so % 1000;\n if (nghin > 0) {\n chuoi += this.docblock(nghin, daydu) + ' nghìn';\n daydu = true;\n }\n if (so > 0) {\n chuoi += this.docblock(so, daydu);\n }\n return chuoi;\n }\n\n\n}\n","\n\n
\n \n \n \n \n \n \n \n
\n

Đơn vị: Trường Đại học Sư phạm Hà Nội

\n

Mã QHNS: 1055502

\n
\n

 

\n

Mẫu số: C45-BB

\n

(Ban hành kèm theo Thông tư số 107/2017/TT-BTC

\n

ngày 10/10/2017 của Bộ Tài chính)

\n
\n

 

\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

 

\n
\n

BIÊN LAI THU TIỀN

\n

Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm {{date | date: 'yyyy'}}

\n
\n

 

\n
\n

 

\n
\n

 

\n
 
\n \n \n \n \n \n \n \n \n
\n Họ tên : {{ dt_print.Ho_ten }} \n \n \n Mã sinh viên : {{ dt_print.Ma_sv }} \n \n
\n \n Số phòng : {{ dt_print.Ten_phong}} \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTTên khoản nộpSố tiền
{{count + 1 }}{{ p.Ten_thu_chi}}

{{p.So_tien_thuc_nop | number}} đ

Tổng tiền \n

{{dt_money | number}} đ

\n
\n
\n \n \n \n \n \n
\n Số tiền nộp : \n {{\n dt_money | number\n }} đ\n
\n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n \n \n \n \n \n \n \n
\n

NGƯỜI NỘP TIỀN
(Ký, họ tên)

\n
\n

NGƯỜI THU TIỀN
(Ký, họ tên)

\n
\n
\n
\n
\n
\n\n

\n         \n

\n \n \n \n \n \n \n \n \n
\n

Đơn vị: Trường Đại học Sư phạm Hà Nội

\n

Mã QHNS: 1055502

\n
\n

 

\n

Mẫu số: C45-BB

\n

(Ban hành kèm theo Thông tư số 107/2017/TT-BTC

\n

ngày 10/10/2017 của Bộ Tài chính)

\n
\n

 

\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

 

\n
\n

BIÊN LAI THU TIỀN

\n

Ngày {{ date | date: 'dd' }} tháng {{date | date: 'MM'}} năm {{date | date: 'yyyy'}}

\n
\n

 

\n
\n

 

\n
\n

 

\n
 
\n \n \n \n \n \n \n \n \n
\n Họ tên : {{ dt_print.Ho_ten }} \n \n \n Mã sinh viên : {{ dt_print.Ma_sv }} \n \n
\n \n Số phòng : {{ dt_print.Ten_phong}} \n \n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
STTTên khoản nộpSố tiền
{{count + 1 }}{{ p.Ten_thu_chi}}

{{p.So_tien_thuc_nop | number}} đ

Tổng tiền \n

{{dt_money | number}} đ

\n
\n
\n\n \n \n \n \n
\n Số tiền nộp : \n {{\n dt_money | number\n }} đ\n
\n \n \n \n \n
\n Viết bằng chữ :\n {{\n money_words\n }}\n
\n
\n \n \n \n \n \n \n \n
\n

NGƯỜI NỘP TIỀN
(Ký, họ tên)

\n
\n

NGƯỜI THU TIỀN
(Ký, họ tên)

\n
\n\n
\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { AbstractControl } from '@angular/forms';\nimport { LoaiDeXuatService} from 'src/app/utils/services/loaidexuat.service';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-loai-de-xuat',\n templateUrl: './loai-de-xuat.component.html',\n styleUrls: ['./loai-de-xuat.component.scss']\n})\nexport class LoaiDeXuatComponent implements OnInit {\n\n constructor(\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n public LoaiDeXuat:LoaiDeXuatService\n ) { }\n dtOptions: DataTables.Settings;\n Token: string;\n dataTable: any = []\n closeResult: string;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective\n checkInsert: boolean\n submitted = false\n dtTrigger = new Subject();\n public com: common;\n titleModal:any\n IDRecord:any\n Insert = new FormGroup({\n Ten_loai_de_xuat: new FormControl(null, [Validators.required,Validators.maxLength(200),removeSpaces,]),\n Trang_thai: new FormControl(null, [Validators.required,]),\n Thu_tu: new FormControl(null, [Validators.required,]),\n });\n ngOnInit(): void {\n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'Tên loại đề xuất',\n },\n {\n title: 'Trạng thái',\n },\n {\n title: 'Thứ tự',\n },\n {\n title: 'Thao tác',\n width: '75px',\n className:'dt-center'\n },\n ],\n }\n this.getList()\n }\n getList(){\n this.spinner.show();\n this.LoaiDeXuat.getList(this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n open(content, sizm, Loai, Data) {\n this.IDRecord = Data.ID_loai_de_xuat\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.checkInsert= false\n this.titleModal = 'Sửa loại đề xuất';\n this.Insert.get('Ten_loai_de_xuat').setValue(Data.Ten_loai_de_xuat);\n this.Insert.get('Trang_thai').setValue(Data.Trang_thai);\n this.Insert.get('Thu_tu').setValue(Data.Thu_tu);\n } else if (Loai == 'Add') {\n this.Insert.reset();\n this.checkInsert= true\n this.titleModal = 'Thêm mới loại đề xuất';\n }\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n ngOnDestroy(): void {\n this.dtTrigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n let req = {\n ID_loai_de_xuat: this.IDRecord,\n Ten_loai_de_xuat: this.Insert.value.Ten_loai_de_xuat,\n Trang_thai: this.Insert.value.Trang_thai,\n Thu_tu: this.Insert.value.Thu_tu,\n }\n if(this.checkInsert){\n this.LoaiDeXuat.Insert(req,this.Token).subscribe((res)=>{\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n } else if (res.Status == 4) {\n this.toastr.error('Thêm mới thất bại!');\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList();\n },\n (err) => {\n \n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n })\n }else{\n this.LoaiDeXuat.Update(req,this.Token).subscribe((res)=>{\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n } else if (res.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList();\n },\n (err) => {\n \n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n })\n }\n }\n Delete(){\n this.LoaiDeXuat.Delete(this.IDRecord,this.Token).subscribe((res)=>{\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n } else if (res.Status == 4) {\n this.toastr.error('Xoá thất bại!');\n }\n this.modalService.dismissAll('');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList();\n },\n (err) => {\n \n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n })\n }\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Loại đề xuất
  4. \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.Ten_loai_de_xuat }}MởĐóng{{ p.Thu_tu }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Tên loại đề xuất không được bỏ trống!\n
\n
\n Tên loại đề xuất tối đa 200 ký tự!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Thứ tự không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { ListallService } from 'src/app/utils/services/listall.service';\nimport { NumberElectricService } from 'src/app/utils/services/number-electric.service';\nimport { RegulationPaymentService } from 'src/app/utils/services/regulation-payment.service';\nimport { timeout } from 'rxjs/operators';\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\nimport { AbstractControl } from '@angular/forms';\nimport { QuyDinhKhoanThuService } from 'src/app/utils/services/quy-dinh-khoan-thu.service';\nimport { BaseComponent } from '../base/base.component';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-number-electric',\n templateUrl: './number-electric.component.html',\n styleUrls: ['./number-electric.component.scss'],\n})\nexport class NumberElectricComponent extends BaseComponent implements OnInit {\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n titleConfirm: any;\n contentConfirm: any;\n checkSoQD: any;\n dataTable: any = [];\n dataManager: any = [];\n dataListStudent: any = [];\n dataTableOld: any = [];\n dataCampus: any = [];\n dataBuilding: any = [];\n dataRoom: any = [];\n DetailData: any = [];\n datadetail: any = [];\n datadetail2: any = [];\n datadetail3: any = [];\n closeResult: string;\n ClassData: any;\n ID_co_so: any;\n ID_toa_nha: any;\n ID_phong: any;\n ID: any;\n checkStatus: any;\n status: any;\n month: any;\n year: any;\n Trang_thai_thanh_toan: any;\n ID_room: any;\n dateConfirm: any;\n numberOld: any;\n numberNew: any;\n price: any;\n note: any;\n radio: any;\n titleModal: string;\n MonthOption: any;\n yearArr: any = [];\n default: any;\n TieuThuDauKy = false;\n dtOptions2: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: any;\n checkConfirm: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải mức học phí tín chỉ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n record: any;\n requestKhoanThu: any;\n dataKhoanThu: any = [];\n modalRef: any;\n Insert = new FormGroup({\n ID: new FormControl(null),\n status: new FormControl(null),\n month: new FormControl(null),\n year: new FormControl(null),\n ID_room: new FormControl(null),\n dateConfirm: new FormControl(null, [Validators.required]),\n numberOld: new FormControl(null, [Validators.required, Validators.min(0)]),\n numberNew: new FormControl(null, [Validators.required, Validators.min(0)]),\n price: new FormControl(null),\n note: new FormControl(null, [Validators.maxLength(500), removeSpaces]),\n So_du_dau_ky: new FormControl(0, [Validators.min(0)]),\n });\n filter = new FormGroup({\n selectCampus: new FormControl(null),\n selectBuilding: new FormControl(null),\n selectRoom: new FormControl(null),\n month: new FormControl(null),\n year: new FormControl(null),\n roomFilter: new FormControl(null),\n floorFilter: new FormControl(null),\n status: new FormControl(''),\n Thanh_toan: new FormControl(''),\n });\n Check = new FormGroup({\n radio: new FormControl(null),\n });\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n var d = new Date();\n var n = d.getFullYear();\n this.filter.patchValue({ year: d.getFullYear() });\n this.filter.patchValue({ month: d.getMonth() });\n this.Request = {\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n };\n this.MonthOption = [\n { value: 1, name: '1' },\n { value: 2, name: '2' },\n { value: 3, name: '3' },\n { value: 4, name: '4' },\n { value: 5, name: '5' },\n { value: 6, name: '6' },\n { value: 7, name: '7' },\n { value: 8, name: '8' },\n { value: 9, name: '9' },\n { value: 10, name: '10' },\n { value: 11, name: '11' },\n { value: 12, name: '12' },\n ];\n var d = new Date();\n var n = d.getFullYear();\n\n for (var i = 0; i < 10; i++) {\n let object = {\n value: n,\n name: n,\n };\n this.yearArr.push(object);\n n--;\n }\n this.getToken();\n this.getListCampus();\n\n this.getList();\n this.getCount();\n\n }\n refesh() {\n this.filter.get('selectBuilding').setValue(null);\n this.filter.get('selectRoom').setValue(null);\n this.filter.get('status').setValue('');\n this.getList();\n this.getCount();\n }\n getCount() {\n this.NumberElectricService.Count(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status: this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberElectricService.GetPagination(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.NumberElectricService.CountFilter(\n dataFilter,\n this.Token\n ).subscribe((z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n });\n }\n }\n );\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status: this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberElectricService.GetPagination(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n }\n );\n }\n\n getData() {\n this.Request = {\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n };\n this.NumberElectricService.getListFill(this.Request, this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n if (this.dataTable.length != 0) {\n this.dataTable.forEach((value, index) => {\n this.dataTable[index]['differenceNumber'] =\n value.numberNew - value.numberOld + value.So_du_dau_ky;\n this.dataRoom.forEach((valueRoom, index) => {\n if (value.ID_room == valueRoom.ID_Phong) {\n this.dataRoom[index] = Object.assign(valueRoom, value);\n if (valueRoom.status == 2) {\n valueRoom.checkStatus = true;\n } else {\n valueRoom.checkStatus = false;\n }\n }\n });\n });\n }\n }\n );\n }\n\n getListRoom() {\n this.ListAllService.getListRoom(\n this.filter.value.selectBuilding,\n this.Token\n ).subscribe((z) => {\n this.dataRoom = z.Data;\n });\n }\n //List tòa nhà\n getListBuilding(ID_Campus) {\n this.ListAllService.getListBuilding(ID_Campus, this.Token).subscribe(\n (z) => {\n this.dataBuilding = z.Data;\n this.default = this.dataBuilding[0].ID_ToaNha;\n }\n );\n }\n //List Cơ sở\n getListCampus() {\n this.ListAllService.getListCampus(this.Token).subscribe((z) => {\n this.dataCampus = z.Data;\n this.default = this.dataCampus[0].ID;\n this.filter.patchValue({ selectCampus: this.default });\n this.getListBuilding(this.filter.controls.selectCampus.value);\n });\n }\n changeCampus() {\n this.getListBuilding(this.filter.controls.selectCampus.value);\n } // Fill data combobox toa nha\n\n changeBuilding() {\n this.getListRoom();\n } // Fill data combobox phong\n\n //get\n openModal(content, sizm, Loai, Data) {\n this.record = Data;\n if (Loai == 'KhoanThu') {\n this.requestKhoanThu = {\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n };\n // this.NumberElectricService.getKHoanThu(this.requestKhoanThu, this.Token).subscribe((z) => {\n // this.dataKhoanThu = z.Data\n // });\n this.NumberElectricService.getThongKeKHoanThu(\n this.requestKhoanThu,\n this.Token\n ).subscribe((z) => {\n this.dataKhoanThu = z.Data;\n });\n } else if (Loai == 'Sua') {\n this.titleModal = 'Quản lý số điện';\n if (Data.status == 1 || Data.status == 2) {\n this.toastr.warning(\n 'Không thể sửa số liệu vì đã khoá hoặc đã phân bổ!'\n );\n return false;\n }\n if (Data.ID != 0) {\n this.checkInsert = 0;\n var dateConfirm = Data.dateConfirm.split('T');\n var newDate = dateConfirm[0];\n this.Insert.get('numberOld').setValue(Data.numberOld);\n this.Insert.get('numberNew').setValue(Data.numberNew);\n this.Insert.get('price').setValue(Data.price);\n this.Insert.get('dateConfirm').setValue(newDate);\n this.Insert.get('note').setValue(Data.note);\n this.Insert.get('ID_room').setValue(Data.ID_room);\n this.Insert.get('So_du_dau_ky').setValue(Data.So_du_dau_ky);\n\n this.ID_room = Data.ID_room;\n this.ID_phong = Data.ID_room;\n } else {\n this.Insert.reset();\n var today = new Date();\n var dd = String(today.getDate()).padStart(2, '0');\n var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!\n var yyyy = today.getFullYear();\n let date = yyyy + '-' + mm + '-' + dd;\n this.Insert.get('dateConfirm').setValue(date);\n this.Insert.get('numberOld').setValue(Data.numberOld);\n this.Insert.get('ID_room').setValue(Data.ID_room);\n this.checkInsert = 1;\n }\n } else if (Loai == 'Chot') {\n if (Data.status == 1) {\n this.toastr.warning('Phòng đã được chốt số điện!');\n return false;\n } else if (Data.status == 2) {\n this.toastr.warning('Phòng đã được phân bổ!');\n return false;\n } else if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n } else if (Loai == 'Mo') {\n if (Data.status == 0) {\n this.toastr.warning('Phòng chưa chốt số điện!');\n return false;\n } else if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n } else if (Loai == 'PhanBo') {\n if (Data.status == 0) {\n this.toastr.warning('Phòng chưa chốt số điện!');\n return false;\n } else if (Data.status == 2) {\n this.toastr.warning('Phòng đã được phân bổ!');\n return false;\n }\n if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n }\n this.submitted = false;\n this.modalRef = this.modalService.open(content, {\n ariaLabelledBy: 'modal-basic-title',\n size: sizm,\n });\n this.modalRef.result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n\n onSubmit() {\n if (\n parseInt(this.Insert.controls.numberOld.value) >\n parseInt(this.Insert.controls.numberNew.value)\n ) {\n this.toastr.warning('Chỉ số mới không được nhỏ hơn chỉ số cũ!');\n return false;\n }\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onSubmit2() {\n this.checkInsert;\n if (this.Check.controls.radio.value == null && this.checkInsert == 3) {\n this.toastr.warning('Bạn chưa chọn loại phân phối!');\n return false;\n }\n this.submitted = true;\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n }\n // create\n create() {\n let InputDatas = {\n status: 0,\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n ID_room: this.Insert.controls.ID_room.value,\n dateConfirm: this.Insert.controls.dateConfirm.value,\n numberOld: this.Insert.controls.numberOld.value,\n numberNew: this.Insert.controls.numberNew.value,\n price: this.Insert.controls.price.value,\n note: this.Insert.controls.note.value,\n So_du_dau_ky: this.Insert.controls.So_du_dau_ky.value,\n };\n\n if (this.checkInsert == 1) {\n this.NumberElectricService.Insert(InputDatas, this.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật không thành công!');\n }\n this.modalService.dismissAll('AddModal');\n }\n );\n } else if (this.checkInsert == 0) {\n this.NumberElectricService.Update(InputDatas, this.Token).subscribe(\n (z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật không thành công!');\n }\n this.modalService.dismissAll('AddModal');\n }\n );\n }\n }\n //modal\n\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n filterById(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let room_data = data[3];\n let status_data = data[4];\n let Phai_nop = data[12];\n let Da_nop = data[13];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n\n if (this.filter.controls.roomFilter.value != undefined) {\n var a = room_data;\n var b = this.filter.controls.roomFilter.value;\n bool1 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (\n this.filter.value.status != undefined &&\n this.filter.value.status != '' &&\n this.filter.value.status != null\n ) {\n bool2 = status_data == this.filter.value.status;\n }\n if (\n this.filter.value.Thanh_toan != undefined &&\n this.filter.value.Thanh_toan != '' &&\n this.filter.value.Thanh_toan != null\n ) {\n if (this.filter.value.Thanh_toan == 0) {\n bool3 = Phai_nop != Da_nop && Phai_nop != 0;\n } else if (this.filter.value.Thanh_toan == 1) {\n bool3 = Phai_nop == Da_nop && Phai_nop != 0;\n }\n }\n if (bool1 && bool2 && bool3) {\n return true;\n }\n return false;\n });\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n OnSubmit2() {\n var lst = this.dataTable.filter((x) => x.checked == true);\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberElectricService.MultiChot(lst, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n this.getData();\n }\n });\n }\n }\n OnSubmit3() {\n if (this.Check.value.radio == null) {\n this.toastr.warning('Bạn chưa chọn loại phân bổ!');\n return false;\n }\n var lst = this.dataTable.filter((x) => x.checked == true);\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberElectricService.MultiPhanBo(\n lst,\n this.Check.value.radio,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n }\n });\n }\n }\n OnSubmit4() {\n var lst = this.dataTable.filter((x) => x.checked == true);\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberElectricService.MultiMoChot(lst, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n }\n });\n }\n }\n chonall() {\n var table = $('#dataTable').DataTable().rows({ filter: 'applied' }).data();\n var length = table.rows({ filter: 'applied' }).nodes().length;\n var lstID = [];\n for (var i = 0; i < length; i++) {\n var ID = parseInt(table[i][1]);\n lstID.push(ID);\n }\n for (let index = 0; index < this.dataRoom.length; index++) {\n if (lstID.includes(this.dataRoom[index].ID_Phong)) {\n this.dataRoom[index].Selected = $('#SelectALL').prop('checked');\n }\n }\n }\n SelectRow(ID) {\n for (let index = 0; index < this.dataRoom.length; index++) {\n if (this.dataRoom[index].ID_Phong == ID) {\n if ($('#checkbox' + ID).prop('checked')) {\n {\n this.dataRoom[index].Selected = true;\n }\n } else {\n this.dataRoom[index].Selected = false;\n }\n break;\n }\n }\n if (this.dataRoom.every((p) => p.Selected)) {\n $('#SelectALL').prop('checked', true);\n } else {\n $('#SelectALL').prop('checked', false);\n }\n }\n MoSubmit() {\n let req = {\n ID_number_water: this.record.ID_number_water,\n status: 0,\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n dateConfirm: this.record.dateConfirm,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n price: this.record.price,\n note: this.record.note,\n So_du_dau_ky: this.record.So_du_dau_ky,\n };\n if (this.record.status == 2) {\n this.NumberElectricService.MoChot(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n } else if (this.record.status == 1) {\n this.NumberElectricService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n }\n ChotSubmit() {\n let req = {\n ID_number_water: this.record.ID_number_water,\n status: 1,\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n dateConfirm: this.record.dateConfirm,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n price: this.record.price,\n note: this.record.note,\n So_du_dau_ky: this.record.So_du_dau_ky,\n };\n this.NumberElectricService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n PhanBoSubmit() {\n let req = {\n month: this.filter.value.month,\n year: this.filter.value.year,\n ID_room: this.record.ID_room,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n type: this.Check.value.radio,\n So_du_dau_ky: this.record.So_du_dau_ky,\n ID: this.record.ID,\n };\n this.NumberElectricService.PhanBo(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.warning(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n Delete() {\n let req = {\n Hoc_ky: this.record.Hoc_ky,\n Nam_hoc: this.record.Nam_hoc,\n Dot: this.record.Dot,\n ID_sv: this.record.ID_sv,\n ID_thu_chi: this.record.ID_thu_chi,\n ID_mon: this.record.ID_mon,\n So_du_dau_ky: this.record.So_du_dau_ky,\n Thang: this.record.Thang,\n };\n this.QuyDinhKhoanThuService.Delete(req, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalRef.close();\n this.NumberElectricService.getKHoanThu(\n this.requestKhoanThu,\n this.Token\n ).subscribe((z) => {\n this.dataKhoanThu = z.Data;\n });\n } else {\n this.toastr.error(z.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n if (this.filter.value.month > 0) {\n let req = {\n So_ban_ghi: 1000000,\n Trang:1,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status: this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberElectricService.ExcelSoDien(req, a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'DanhSachSoDien');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n };\n });\n } else {\n this.toastr.warning('Bạn chưa chọn năm');\n this.spinner.hide();\n }\n }\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n Trang chủ\n
  2. \n
  3. Quản lý số điện
  4. \n
\n
\n
\n \n \n \n \n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.Ten_ToaNha }}\n \n
\n\n
\n \n \n {{ i.Ten_phong }}\n \n
\n
\n \n \n Tất cả\n Chưa nhập số liệu\n Chưa chốt\n Đã chốt\n Đã phân bổ\n \n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
\n Tên phòngTrạng tháiNgày chốtTiêu thụ đầu kỳChỉ số cũChỉ số mớiSố lượng tiêu thụGhi chúSố sinh viênThành tiềnSố tiền đã nộpThiếu/thừaThao tác
{{ p.Ten_phong }}Chưa chốtĐã chốtĐã phân bổChưa nhập số liệu{{ p.dateConfirm == '0001-01-01T00:00:00'?'': p.dateConfirm | date: 'dd/MM/yyyy' }}{{ p.So_du_dau_ky }}{{ p.numberOld }}{{ p.numberNew }}{{ p.differenceNumber }}{{ p.note }}{{ p.So_sinh_vien? p.So_sinh_vien:0 }}{{ !p.So_tien?0: p.So_tien| number}}{{ !p.So_tien_da_nop?0: p.So_tien_da_nop| number}}{{ !p.Thieu_thua?0: p.Thieu_thua| number}}\n\n \n \n \n \n \n\n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

Chi tiết khoản thu

\n

\n ×\n

\n
\n
\n
\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Mã sinh viênHọ và tênNgày sinhSố tiền phải nộpSố tiền đã nộpSố tiền hoàn trảSố tiền thiếu/thừa
{{ p.Ma_sv }}{{ p.Ho_ten }}{{p.Ngay_sinh|date:'dd/MM/yyyy'}}{{ p.So_tien_phai_nop|number }}{{ p.So_tien_da_nop|number }}{{ p.So_tien_tra_lai|number }}{{ p.Thua_thieu|number }}
Không có kết quả
\n
\n
\n\n
\n\n
\n

{{ titleModal }}

\n

\n ×\n

\n
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n Tiêu thụ đầu kỳ không được nhỏ hơn 0!\n
\n
\n
\n
\n \n \n
\n
\n Chỉ số cũ không được bỏ trống\n
\n
\n Chỉ số cũ không được nhỏ hơn 0!\n
\n
\n
\n
\n \n \n\n
\n
\n Chỉ số mới không được bỏ trống không được bỏ trống!\n
\n
\n Chỉ số mới không được nhỏ hơn 0!\n
\n
\n
\n \n
\n \n \n
\n
\n Bạn chưa chọn ngày chốt\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n\n
\n

\n Bạn có chắc chắn muốn chốt số điện\n

\n
\n
\n\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n

\n Bạn có chắc chắn muốn mở khoá chốt\n

\n
\n
\n \n \n
\n
\n\n
\n

\n Bạn có chắc chắn muốn chốt số điện\n

\n
\n
\n\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n\n
\n

\n Bạn có chắc chắn muốn mở khoá chốt\n

\n
\n
\n \n \n
\n
\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n Hủy bỏ\n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { ListallService } from 'src/app/utils/services/listall.service';\nimport { NumberWaterService } from 'src/app/utils/services/number-water.service';\nimport { RegulationPaymentService } from 'src/app/utils/services/regulation-payment.service';\nimport { AccessHistoryService } from 'src/app/Utils/services/accesshistory.service';\nimport * as XLSX from 'xlsx';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { flatten } from '@angular/compiler';\nimport { QuyDinhKhoanThuService } from 'src/app/utils/services/quy-dinh-khoan-thu.service';\nimport { BaseComponent } from '../base/base.component';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-number-water',\n templateUrl: './number-water.component.html',\n styleUrls: ['./number-water.component.scss'],\n})\nexport class NumberWaterComponent extends BaseComponent implements OnInit {\n dtOptions: any;\n Token: string;\n fileName = 'So_dien.xlsx';\n Res: any;\n req: any;\n check: any;\n titleConfirm: any;\n contentConfirm: any;\n checkSoQD: any;\n dataTable: any = [];\n dataManager: any = [];\n dataListStudent: any = [];\n dataTableOld: any = [];\n dataCampus: any = [];\n dataBuilding: any = [];\n dataRoom: any = [];\n DetailData: any = [];\n closeResult: string;\n ClassData: any;\n ID_co_so: any;\n ID_toa_nha: any;\n ID_phong: any;\n ID: any;\n checkStatus: any;\n status: any;\n month: any;\n year: any;\n ID_room: any;\n dateConfirm: any;\n numberOld: any;\n numberNew: any;\n price: any;\n note: any;\n radio: any;\n record: any;\n titleModal: string;\n default: any;\n MonthOption: any = [];\n yearArr: any = [];\n datadetail: any = [];\n datadetail2: any = [];\n datadetail3: any = [];\n dtOptions2: any;\n dataKhoanThu = [];\n TieuThuDauKy = false;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: any;\n checkConfirm: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải mức học phí tín chỉ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n modalRef: any;\n requestKhoanThu: any;\n\n Insert = new FormGroup({\n ID: new FormControl(null),\n status: new FormControl(null),\n month: new FormControl(null),\n year: new FormControl(null),\n ID_room: new FormControl(null),\n dateConfirm: new FormControl(null, [Validators.required]),\n numberOld: new FormControl(null, [Validators.required, Validators.min(0)]),\n numberNew: new FormControl(null, [Validators.required, Validators.min(0)]),\n price: new FormControl(null),\n note: new FormControl(null, [Validators.maxLength(500), removeSpaces]),\n So_du_dau_ky: new FormControl(0, [Validators.min(0)]),\n });\n filter = new FormGroup({\n selectCampus: new FormControl(null),\n selectBuilding: new FormControl(null),\n selectRoom: new FormControl(null),\n month: new FormControl(null),\n year: new FormControl(null),\n roomFilter: new FormControl(null),\n floorFilter: new FormControl(null),\n status: new FormControl(''),\n Thanh_toan: new FormControl(''),\n });\n Check = new FormGroup({\n radio: new FormControl(null),\n });\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n var d = new Date();\n var n = d.getFullYear();\n this.filter.patchValue({ year: d.getFullYear() });\n this.filter.patchValue({ month: d.getMonth() });\n this.Request = {\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n };\n this.MonthOption = [\n { value: 1, name: '1' },\n { value: 2, name: '2' },\n { value: 3, name: '3' },\n { value: 4, name: '4' },\n { value: 5, name: '5' },\n { value: 6, name: '6' },\n { value: 7, name: '7' },\n { value: 8, name: '8' },\n { value: 9, name: '9' },\n { value: 10, name: '10' },\n { value: 11, name: '11' },\n { value: 12, name: '12' },\n ];\n var d = new Date();\n var n = d.getFullYear();\n\n for (var i = 0; i < 10; i++) {\n let object = {\n value: n,\n name: n,\n };\n this.yearArr.push(object);\n n--;\n }\n this.getToken();\n this.getListCampus();\n this.getList();\n this.getCount();\n\n }\n refesh() {\n this.filter.get('selectBuilding').setValue(null);\n this.filter.get('selectRoom').setValue(null);\n this.filter.get('status').setValue('');\n this.getList();\n this.getCount();\n }\n getCount() {\n this.NumberWaterService.Count(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status: this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberWaterService.GetPagination(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.NumberWaterService.CountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n }\n );\n }\n }\n );\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status: this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberWaterService.GetPagination(dataFilter, this.Token).subscribe(\n (z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n }\n );\n }\n\n changeTieuThu() {\n this.TieuThuDauKy = !this.TieuThuDauKy;\n }\n getData() {\n this.Request = {\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n };\n this.NumberWaterService.getListFill(this.Request, this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n if (this.dataTable.length != 0) {\n this.dataTable.forEach((value, index) => {\n this.dataTable[index]['differenceNumber'] =\n value.numberNew - value.numberOld + value.So_du_dau_ky;\n this.dataRoom.forEach((valueRoom, index) => {\n if (value.ID_room == valueRoom.ID_Phong) {\n this.dataRoom[index] = Object.assign(valueRoom, value);\n if (valueRoom.status == 2) {\n valueRoom.checkStatus = true;\n } else {\n valueRoom.checkStatus = false;\n }\n }\n });\n });\n }\n }\n );\n }\n getListRoom() {\n this.ListAllService.getListRoom(\n this.filter.value.selectBuilding,\n this.Token\n ).subscribe((z) => {\n this.dataRoom = z.Data;\n });\n }\n //List tòa nhà\n getListBuilding(ID_Campus) {\n this.ListAllService.getListBuilding(ID_Campus, this.Token).subscribe(\n (z) => {\n this.dataBuilding = z.Data;\n this.default = this.dataBuilding[0].ID_ToaNha;\n }\n );\n }\n //List Cơ sở\n getListCampus() {\n this.ListAllService.getListCampus(this.Token).subscribe((z) => {\n this.dataCampus = z.Data;\n this.default = this.dataCampus[0].ID;\n this.filter.patchValue({ selectCampus: this.default });\n this.getListBuilding(this.filter.controls.selectCampus.value);\n this.dtTrigger.next();\n });\n }\n changeCampus() {\n this.getListBuilding(this.filter.controls.selectCampus.value);\n } // Fill data combobox toa nha\n\n changeBuilding() {\n this.getListRoom();\n } // Fill data combobox phong\n\n //get\n openModal(content, sizm, Loai, Data) {\n this.record = Data;\n if (Loai == 'KhoanThu') {\n this.requestKhoanThu = {\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n };\n // this.NumberWaterService.getKHoanThu(this.requestKhoanThu, this.Token).subscribe((z) => {\n // this.dataKhoanThu = z.Data\n // });\n this.NumberWaterService.getThongKeKHoanThu(\n this.requestKhoanThu,\n this.Token\n ).subscribe((z) => {\n this.dataKhoanThu = z.Data;\n });\n } else if (Loai == 'Sua') {\n this.titleModal = 'Quản lý số nước';\n if (Data.status == 1 || Data.status == 2) {\n this.toastr.warning(\n 'Không thể sửa số liệu vì đã khoá hoặc đã phân bổ!'\n );\n return false;\n }\n if (Data.ID_number_water != 0) {\n this.checkInsert = 0;\n var dateConfirm = Data.dateConfirm.split('T');\n var newDate = dateConfirm[0];\n this.Insert.get('numberOld').setValue(Data.numberOld);\n this.Insert.get('numberNew').setValue(Data.numberNew);\n this.Insert.get('price').setValue(Data.price);\n this.Insert.get('dateConfirm').setValue(newDate);\n this.Insert.get('note').setValue(Data.note);\n this.Insert.get('ID_room').setValue(Data.ID_room);\n this.Insert.get('So_du_dau_ky').setValue(Data.So_du_dau_ky);\n\n this.ID_room = Data.ID_room;\n this.ID_phong = Data.ID_room;\n } else {\n this.Insert.reset();\n var today = new Date();\n var dd = String(today.getDate()).padStart(2, '0');\n var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!\n var yyyy = today.getFullYear();\n let date = yyyy + '-' + mm + '-' + dd;\n this.Insert.get('dateConfirm').setValue(date);\n this.Insert.get('numberOld').setValue(Data.numberOld);\n this.Insert.get('ID_room').setValue(Data.ID_room);\n this.checkInsert = 1;\n }\n } else if (Loai == 'Chot') {\n if (Data.status == 1) {\n this.toastr.warning('Phòng đã được chốt số nước!');\n return false;\n } else if (Data.status == 2) {\n this.toastr.warning('Phòng đã được phân bổ!');\n return false;\n } else if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n } else if (Loai == 'Mo') {\n if (Data.status == 0) {\n this.toastr.warning('Phòng chưa chốt số nước!');\n return false;\n } else if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n } else if (Loai == 'PhanBo') {\n if (Data.status == 0) {\n this.toastr.warning('Phòng chưa chốt số nước!');\n return false;\n } else if (Data.status == 2) {\n this.toastr.warning('Phòng đã được phân bổ!');\n return false;\n }\n if (Data.status == null) {\n this.toastr.warning('Phòng chưa được nhập số liệu');\n return false;\n }\n }\n this.submitted = false;\n this.modalRef = this.modalService.open(content, {\n ariaLabelledBy: 'modal-basic-title',\n size: sizm,\n });\n this.modalRef.result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n\n onSubmit() {\n if (\n this.Insert.controls.numberOld.value >\n this.Insert.controls.numberNew.value\n ) {\n this.toastr.warning('Chỉ số mới không được nhỏ hơn chỉ số cũ!');\n return false;\n }\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onSubmit2() {\n if (this.Check.controls.radio.value == null && this.checkInsert == 3) {\n this.toastr.warning('Bạn chưa chọn loại phân phối!');\n return false;\n }\n this.submitted = true;\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n }\n // create\n create() {\n let InputDatas = {\n status: 0,\n month: this.filter.controls.month.value,\n year: this.filter.controls.year.value,\n ID_room: this.Insert.controls.ID_room.value,\n dateConfirm: this.Insert.controls.dateConfirm.value,\n numberOld: this.Insert.controls.numberOld.value,\n numberNew: this.Insert.controls.numberNew.value,\n price: this.Insert.controls.price.value,\n note: this.Insert.controls.note.value,\n So_du_dau_ky: this.Insert.controls.So_du_dau_ky.value,\n };\n\n if (this.checkInsert == 1) {\n this.NumberWaterService.Insert(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật không thành công!');\n }\n this.modalService.dismissAll('AddModal');\n });\n } else if (this.checkInsert == 0) {\n this.NumberWaterService.Update(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật không thành công!');\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n }\n\n //modal\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n\n OnSubmit2() {\n var lst = this.dataTable.filter((x) => x.checked == true);\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberWaterService.MultiChot(lst, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n }\n });\n this.modalService.dismissAll('AddModal');\n }\n }\n OnSubmit3() {\n if (this.Check.value.radio == null) {\n this.toastr.warning('Bạn chưa chọn loại phân bổ!');\n return false;\n }\n var lst = this.dataTable.filter((x) => x.checked == true);\n\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberWaterService.MultiPhanBo(\n lst,\n this.Check.value.radio,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n }\n });\n }\n }\n OnSubmit4() {\n var lst = this.dataTable.filter((x) => x.checked == true);\n if (lst.length < 1) {\n this.toastr.warning('Bạn chưa chọn phòng!');\n } else {\n this.NumberWaterService.MultiMoChot(lst, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n }\n });\n }\n }\n chonall() {\n var table = $('#dataTable').DataTable().rows({ filter: 'applied' }).data();\n var length = table.rows({ filter: 'applied' }).nodes().length;\n var lstID = [];\n for (var i = 0; i < length; i++) {\n var ID = parseInt(table[i][1]);\n lstID.push(ID);\n }\n for (let index = 0; index < this.dataRoom.length; index++) {\n if (lstID.includes(this.dataRoom[index].ID_Phong)) {\n this.dataRoom[index].Selected = $('#SelectALL').prop('checked');\n }\n }\n }\n SelectRow(ID) {\n for (let index = 0; index < this.dataRoom.length; index++) {\n if (this.dataRoom[index].ID_number_water == ID) {\n if ($('#checkbox' + ID).prop('checked')) {\n {\n this.dataRoom[index].Selected = true;\n }\n } else {\n this.dataRoom[index].Selected = false;\n }\n break;\n }\n }\n if (this.dataRoom.every((p) => p.Selected)) {\n $('#SelectALL').prop('checked', true);\n } else {\n $('#SelectALL').prop('checked', false);\n }\n }\n MoSubmit() {\n let req = {\n ID_number_water: this.record.ID_number_water,\n status: 0,\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n dateConfirm: this.record.dateConfirm,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n price: this.record.price,\n note: this.record.note,\n So_du_dau_ky: this.record.So_du_dau_ky,\n };\n if (this.record.status == 2) {\n this.NumberWaterService.MoChot(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n\n this.getList();\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n } else if (this.record.status == 1) {\n this.NumberWaterService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n }\n ChotSubmit() {\n let req = {\n ID_number_water: this.record.ID_number_water,\n status: 1,\n month: this.record.month,\n year: this.record.year,\n ID_room: this.record.ID_room,\n dateConfirm: this.record.dateConfirm,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n price: this.record.price,\n note: this.record.note,\n So_du_dau_ky: this.record.So_du_dau_ky,\n };\n this.NumberWaterService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n PhanBoSubmit() {\n let req = {\n month: this.filter.value.month,\n year: this.filter.value.year,\n ID_room: this.record.ID_room,\n numberOld: this.record.numberOld,\n numberNew: this.record.numberNew,\n type: this.Check.value.radio,\n So_du_dau_ky: this.record.So_du_dau_ky,\n ID_number_water: this.record.ID_number_water,\n };\n this.NumberWaterService.PhanBo(req, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error(z.Message);\n } else if (z.Status == 1) {\n this.getList();\n\n this.toastr.success(z.Message);\n } else {\n this.toastr.warning(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n });\n }\n Delete() {\n let req = {\n Hoc_ky: this.record.Hoc_ky,\n Nam_hoc: this.record.Nam_hoc,\n Dot: this.record.Dot,\n ID_sv: this.record.ID_sv,\n ID_thu_chi: this.record.ID_thu_chi,\n ID_mon: this.record.ID_mon,\n So_du_dau_ky: this.record.So_du_dau_ky,\n Thang: this.record.Thang,\n };\n this.QuyDinhKhoanThuService.Delete(req, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalRef.close();\n this.NumberWaterService.getKHoanThu(\n this.requestKhoanThu,\n this.Token\n ).subscribe((z) => {\n this.dataKhoanThu = z.Data;\n });\n } else {\n this.toastr.error(z.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n if (this.filter.value.month > 0) {\n let req = {\n So_ban_ghi:100000,\n Trang: 1,\n ID_room:\n this.filter.value.selectRoom == ''\n ? null\n : this.filter.value.selectRoom,\n ID_building:\n this.filter.value.selectBuilding == ''\n ? null\n : this.filter.value.selectBuilding,\n\n month: this.filter.value.month == '' ? null : this.filter.value.month,\n year: this.filter.value.year == '' ? null : this.filter.value.year,\n status:\n this.filter.value.status == '' ? null : this.filter.value.status,\n Trang_thai_thanh_toan:\n this.filter.value.Thanh_toan == ''\n ? null\n : this.filter.value.Thanh_toan,\n };\n this.NumberWaterService.ExcelSoNuoc(req, a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'DanhSachSoNuoc');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n };\n });\n } \n }\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n Trang chủ\n
  2. \n
  3. Quản lý số nước
  4. \n
\n
\n
\n \n \n \n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.name }}\n \n
\n
\n \n \n {{ i.Ten_ToaNha }}\n \n
\n\n
\n \n \n {{ i.Ten_phong }}\n \n
\n
\n \n \n Tất cả\n Chưa nhập số liệu\n Chưa chốt\n Đã chốt\n Đã phân bổ\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
\n Tên phòngTrạng tháiNgày chốtTiêu thụ đầu kỳChỉ số cũChỉ số mớiSố lượng tiêu thụGhi chúSố sinh viênThành tiềnSố tiền đã nộpThiếu/thừaThao tác
{{ p.Ten_phong }}Chưa chốtĐã chốtĐã phân bổChưa nhập số liệu{{ p.dateConfirm == '0001-01-01T00:00:00'?'': p.dateConfirm | date: 'dd/MM/yyyy' }}{{ p.So_du_dau_ky }}{{ p.numberOld }}{{ p.numberNew }}{{ p.differenceNumber }}{{ p.note }}{{ p.So_sinh_vien? p.So_sinh_vien:0 }}{{ !p.So_tien?0: p.So_tien| number}}{{ !p.So_tien_da_nop?0: p.So_tien_da_nop| number}}{{ !p.Thieu_thua?0: p.Thieu_thua| number}}\n\n \n \n \n \n \n\n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

Chi tiết khoản thu

\n

\n ×\n

\n
\n
\n
\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Mã sinh viênHọ và tênNgày sinhSố tiền phải nộpSố tiền đã nộpSố tiền hoàn trảSố tiền thiếu/thừa
{{ p.Ma_sv }}{{ p.Ho_ten }}{{p.Ngay_sinh|date:'dd/MM/yyyy'}}{{ p.So_tien_phai_nop|number }}{{ p.So_tien_da_nop|number }}{{ p.So_tien_tra_lai|number }}{{ p.Thua_thieu|number }}
Không có kết quả
\n
\n
\n\n\n
\n\n
\n

{{ titleModal }}

\n

\n ×\n

\n
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n Tiêu thụ đầu kỳ không được nhỏ hơn 0!\n
\n
\n
\n
\n \n \n
\n
\n Chỉ số cũ không được bỏ trống\n
\n
\n Chỉ số cũ không được nhỏ hơn 0!\n
\n
\n
\n
\n \n \n\n
\n
\n Chỉ số mới không được bỏ trống!\n
\n
\n Chỉ số mới không được nhỏ hơn 0!\n
\n
\n
\n\n
\n \n \n
\n
\n Bạn chưa chọn ngày chốt\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n\n
\n
\n
\n
\n\n
\n

\n Bạn có chắc chắn muốn chốt số nước\n

\n
\n
\n\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n

\n Bạn có chắc chắn muốn mở khoá chốt\n

\n
\n
\n \n \n
\n
\n\n
\n

\n Bạn có chắc chắn muốn chốt số nước\n

\n
\n
\n\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n
\n
\n\n\n
\n

\n Bạn có chắc chắn muốn mở khoá chốt\n

\n
\n
\n \n \n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import {\r\n AfterViewInit,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { forkJoin, Subject } from 'rxjs';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { BaseComponent } from '../../base/base.component';\r\nimport { RequestPhong } from 'src/app/Models/input.model/RequestPhong';\r\nimport { PlanRoomComponent } from '../../plan-room/plan-room.component';\r\n@Component({\r\n selector: 'app-filter-sv-manual',\r\n templateUrl: './filter-sv-manual.component.html',\r\n styleUrls: ['./filter-sv-manual.component.scss'],\r\n})\r\nexport class FilterSvManualComponent extends BaseComponent implements OnInit {\r\n @Output() LoadParent: EventEmitter = new EventEmitter();\r\n @Output() EnableManualTab: EventEmitter = new EventEmitter();\r\n @Input() dtPhong = new RequestPhong();\r\n @Input() isManual: boolean;\r\n @ViewChild('SortRoomModal') SortRoomModal: TemplateRef;\r\n datadetail: any;\r\n closeResult: string;\r\n Token: string;\r\n DSCoSo: any;\r\n DSToaNha: any;\r\n DSToaNha2: any;\r\n DSPhong: any;\r\n DSPhong2: any;\r\n isShowContent: any = false;\r\n DSHe: any;\r\n DSKhoa: any;\r\n DSChuyenNganh: any = [];\r\n DSKhuVuc: any;\r\n DSDoiTuong: any;\r\n DSLoaiPhong: any;\r\n DSLop: any;\r\n DSLopFilter: any;\r\n submitted = false;\r\n dataTable: any = [];\r\n dataTable2: any = [];\r\n dataMain: any = [];\r\n SelectData: any = [];\r\n code_filter: any;\r\n name_filter: any;\r\n NguyenVong_filter: any;\r\n NgaySinh_filter: any;\r\n Nhap_hoc_filter: any;\r\n Loai_phong_filter: any;\r\n Thanh_toan_filter: any;\r\n Doi_tuong_chinh_sach_filter: any;\r\n He_filter: any;\r\n Khoa_filter: any;\r\n Khoa_hoc_filter: any;\r\n Chuyen_nganh_filter: any;\r\n Khu_vuc_filter: any;\r\n khoa_filter: any;\r\n lop_filter: any;\r\n StudentData: any = [];\r\n doituong_filter: any;\r\n SelectNum: any;\r\n Fillter: FormGroup;\r\n totalItem: any;\r\n totalItemFilter: any;\r\n ActionSave = new FormGroup({\r\n Ngay_vao: new FormControl(null, [Validators.required]),\r\n Ngay_ra: new FormControl(null, [Validators.required]),\r\n ThangO: new FormControl(null),\r\n });\r\n Insert = new FormGroup({\r\n ID_Phong: new FormControl(null, [Validators.required]),\r\n ID_co_so: new FormControl(null, [Validators.required]),\r\n ID_toa_nha: new FormControl(null, [Validators.required]),\r\n });\r\n ThangQuyDinh: any;\r\n ThangThucTe: any;\r\n public com: common;\r\n visible: any;\r\n ngOnInit(): void {\r\n console.log(this.dtPhong);\r\n this.spinner.show();\r\n // $('#datatable').DataTable().clear();\r\n // $('#datatable').DataTable().destroy();\r\n // $.fn['dataTable'].ext.search = [];\r\n this.Fillter = new FormGroup({\r\n code_filter: new FormControl(null),\r\n name_filter: new FormControl(null),\r\n khoa_filter: new FormControl(null),\r\n lop_filter: new FormControl(0),\r\n Gioi_tinh_filter: new FormControl(this.dtPhong.Loai_phong ? 1 : 0),\r\n doituong_filter: new FormControl(null),\r\n NguyenVong_filter: new FormControl(null),\r\n NgaySinh_filter: new FormControl(null),\r\n Loai_phong_filter: new FormControl(''),\r\n Thanh_toan_filter: new FormControl(''),\r\n Doi_tuong_chinh_sach_filter: new FormControl(''),\r\n He_filter: new FormControl(0),\r\n Khoa_filter: new FormControl(0),\r\n Khoa_hoc_filter: new FormControl(null),\r\n Chuyen_nganh_filter: new FormControl(0),\r\n Khu_vuc_filter: new FormControl(''),\r\n Nhap_hoc_filter: new FormControl(''),\r\n Ma_sv_filter: new FormControl(''),\r\n Ho_ten_filter: new FormControl(''),\r\n });\r\n\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.getList();\r\n this.Service.getCount(this.Token).subscribe((z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n });\r\n this.CampusService.getList(a.Token).subscribe((z) => {\r\n this.DSCoSo = z.Data;\r\n this.BuildingService.getList(a.Token).subscribe((z) => {\r\n this.DSToaNha = z.Data;\r\n this.DSToaNha2 = z.Data;\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Loai_phong == false) {\r\n z.Data[i].Loai_phong_text = 'Nam';\r\n } else {\r\n z.Data[i].Loai_phong_text = 'Nữ';\r\n }\r\n }\r\n this.DSPhong = z.Data;\r\n this.DSPhong2 = z.Data;\r\n });\r\n });\r\n });\r\n\r\n forkJoin({\r\n KhuVuc: this.SystemService.Get_khuvuc_tuyensinh(this.Token),\r\n ChuyenNganh: this.Service.List_ChuyenNganh(this.Token),\r\n He: this.Service.List_He(this.Token),\r\n Khoa: this.Service.List_Khoa(this.Token),\r\n Lop: this.SystemService.Get_lop(this.Token),\r\n }).subscribe(\r\n ({ KhuVuc, ChuyenNganh, He, Khoa, Lop }) => {\r\n this.DSKhuVuc = KhuVuc;\r\n this.DSChuyenNganh = ChuyenNganh;\r\n this.DSHe = He;\r\n this.DSKhoa = Khoa;\r\n this.DSLop = Lop;\r\n this.DSLopFilter = Lop;\r\n },\r\n (error) => {\r\n this.toastr.error(error.message);\r\n }\r\n );\r\n }\r\n cosochange() {\r\n let ID_coso = $('#ID_co_so').val();\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n }\r\n ToaNhaChange() {\r\n let ID_toanha = $('#ID_toa_nha').val();\r\n this.DSPhong2 = jQuery.grep(this.DSPhong, function (pa: any, i) {\r\n return pa.ID_Toa_Nha == ID_toanha;\r\n });\r\n }\r\n getList() {\r\n this.page = 1;\r\n let req = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Nhap_hoc: '',\r\n Thanh_toan: this.Fillter.value.Thanh_toan_filter,\r\n Gioi_tinh: this.dtPhong.Loai_phong == true ? 'Nữ' : 'Nam',\r\n Ten_loai_phong: this.dtPhong.Ten_loai_phong,\r\n Nguyen_vong:\r\n this.Fillter.value.NguyenVong_filter == null\r\n ? ''\r\n : this.Fillter.value.NguyenVong_filter,\r\n Doi_tuong_chinh_sach: this.Fillter.value.Doi_tuong_chinh_sach_filter,\r\n Ngay_sinh:\r\n this.Fillter.value.NgaySinh_filter == null\r\n ? ''\r\n : this.Fillter.value.NgaySinh_filter,\r\n Ten_he: this.Fillter.value.He_filter,\r\n Khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc:\r\n this.Fillter.value.Khoa_hoc_filter == null\r\n ? ''\r\n : this.Fillter.value.Khoa_hoc_filter,\r\n Chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n Doi_tuong_khu_vuc: this.Fillter.value.Khu_vuc_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n Ho_ten: this.Fillter.value.Ho_ten_filter,\r\n };\r\n var dt = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Data: {\r\n ID_he: this.Fillter.value.He_filter,\r\n ID_khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc: this.Fillter.value.Khoa_hoc_filter\r\n ? this.Fillter.value.Khoa_hoc_filter\r\n : 0,\r\n ID_chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n ID_lop: this.Fillter.value.lop_filter,\r\n ID_gioi_tinh: this.Fillter.value.Gioi_tinh_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n },\r\n };\r\n this.spinner.show();\r\n this.Service.getStudentManual(dt, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.ListData;\r\n this.totalItemFilter = z.Total;\r\n this.numberPage = this.createNumberPage(\r\n z.Total,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Total,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n this.isShowContent = true;\r\n } else {\r\n this.spinner.hide();\r\n this.isShowContent = false;\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n\r\n filterLop() {\r\n var data = {\r\n ID_he: Number(this.Fillter.value.He_filter),\r\n ID_khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc: this.Fillter.value.Khoa_hoc_filter\r\n ? this.Fillter.value.Khoa_hoc_filter\r\n : 0,\r\n ID_chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n ID_lop: this.Fillter.value.lop_filter,\r\n ID_gioi_tinh: this.Fillter.value.Gioi_tinh_filter,\r\n };\r\n\r\n const result = this.DSLop.filter((obj) => {\r\n return (\r\n (obj.ID_he == data.ID_he || data.ID_he == 0) &&\r\n (obj.ID_khoa == data.ID_khoa || data.ID_khoa == 0) &&\r\n (obj.ID_chuyen_nganh == data.ID_chuyen_nganh ||\r\n data.ID_chuyen_nganh == 0) &&\r\n (obj.Khoa_hoc == data.Khoa_hoc || data.Khoa_hoc == 0)\r\n );\r\n });\r\n console.log(result);\r\n this.DSLopFilter = result;\r\n this.getList();\r\n }\r\n\r\n formatDate(date) {\r\n const d = new Date(date);\r\n let month = '' + (d.getMonth() + 1);\r\n let day = '' + d.getDate();\r\n const year = d.getFullYear();\r\n if (month.length < 2) month = '0' + month;\r\n if (day.length < 2) day = '0' + day;\r\n return [year, month, day].join('-');\r\n }\r\n open(content, size, Loai, Data) {\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: size })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n let Ngay_ket_thuc = '05-31-' + (new Date().getFullYear() + 1);\r\n if (\r\n this.formatDate(new Date()) <\r\n this.formatDate(new Date('05-31-' + new Date().getFullYear()))\r\n ) {\r\n Ngay_ket_thuc = '05-31-' + new Date().getFullYear();\r\n }\r\n this.ActionSave.patchValue({\r\n Ngay_vao: this.formatDate(new Date()),\r\n Ngay_ra: this.formatDate(new Date(Ngay_ket_thuc)),\r\n });\r\n this.GetMonth();\r\n // this.ID_co_so=this.DSCoSo[0].ID;\r\n // this.ID_toa_nha=this.DSToaNha[0].ID_ToaNha;\r\n let ID_coso = this.DSCoSo[0].ID;\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n this.Insert.patchValue({\r\n ID_co_so: this.DSCoSo[0].ID,\r\n ID_toa_nha: idtn,\r\n });\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n onSubmit() {\r\n if (this.ActionSave.invalid) {\r\n this.toastr.warning('Vui lòng chọn ngày nhận phòng và ngày kết thúc !');\r\n return false;\r\n }\r\n if (this.dataTable2.length <= this.dtPhong.Suc_chua) {\r\n let InputDatas = {\r\n Thu_tu_doi_tuong: 2,\r\n Thu_tu_phong: 2,\r\n Ngay_bat_dau: this.ActionSave.value.Ngay_vao,\r\n Ngay_ket_thuc: this.ActionSave.value.Ngay_ra,\r\n Students: this.dataTable2,\r\n Rooms: [this.dtPhong],\r\n };\r\n this.spinner.show();\r\n this.Service.SortManual(this.Token, InputDatas).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message, 'Xếp phòng thành công');\r\n } else {\r\n this.toastr.warning(z.Message, 'Thao tác thất bại');\r\n }\r\n this.LoadParent.emit(); //emit event\r\n this.modalService.dismissAll('Cross click');\r\n });\r\n } else {\r\n this.toastr.warning('Sức chứa không đủ, vui lòng kiểm tra lại');\r\n }\r\n }\r\n navigate() {\r\n if (this.dataTable2.length > 0) {\r\n if (this.dataTable2.length > this.dtPhong.Con_trong) {\r\n this.toastr.warning(\r\n 'Phòng này chỉ còn ' + this.dtPhong.Con_trong + ' chỗ trống',\r\n 'Không đủ chỗ trống'\r\n );\r\n return;\r\n }\r\n this.open(this.SortRoomModal, 'xs', '', '');\r\n } else {\r\n this.toastr.warning('Vui lòng chọn sinh viên cần xếp phòng');\r\n }\r\n }\r\n\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n var dt = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Data: {\r\n ID_he: 0,\r\n ID_khoa: 0,\r\n Khoa_hoc: 0,\r\n ID_chuyen_nganh: 0,\r\n ID_lop: 0,\r\n ID_gioi_tinh: -1,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n },\r\n };\r\n this.spinner.show();\r\n this.Service.getStudentManual(dt, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.ListData;\r\n this.totalItemFilter = z.Total;\r\n this.numberPage = this.createNumberPage(\r\n z.Total,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Total,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n\r\n checkAllCheckBox2(ev) {\r\n if (this.dataTable2.length) {\r\n this.dataTable2.forEach((x) => (x.checked = ev.target.checked));\r\n }\r\n }\r\n isAllCheckBoxChecked2() {\r\n if (this.dataTable2.length) {\r\n if (this.dataTable2 != undefined)\r\n return this.dataTable2.every((p) => p.checked);\r\n }\r\n }\r\n\r\n PushCheckRow() {\r\n for (let i = 0; i < this.dataTable.length; i++) {\r\n if (this.dataTable[i].checked == true) {\r\n const check = this.dataTable2.some(\r\n (el) => el.ID_sv === this.dataTable[i].ID_sv\r\n );\r\n if (!check) {\r\n this.dataTable2.push(this.dataTable[i]);\r\n }\r\n this.dataTable.splice(i, 1);\r\n i--;\r\n }\r\n }\r\n } // thêm row check\r\n\r\n SpliceCheckRow() {\r\n for (let i = 0; i < this.dataTable2.length; i++) {\r\n if (this.dataTable2[i].checked == false) {\r\n const check = this.dataTable.some(\r\n (el) => el.ID_sv === this.dataTable2[i].ID_sv\r\n );\r\n if (!check) {\r\n this.dataTable.push(this.dataTable2[i]);\r\n }\r\n this.dataTable2.splice(i, 1);\r\n i--;\r\n }\r\n }\r\n } // Xóa row check\r\n\r\n GetMonth() {\r\n let SoThangO = 0;\r\n let Ngay_ket_thuc = new Date(this.ActionSave.value.Ngay_ra);\r\n let Ngay_bat_dau = new Date(this.ActionSave.value.Ngay_vao);\r\n\r\n if (Ngay_ket_thuc.getFullYear() > Ngay_bat_dau.getFullYear()) {\r\n SoThangO = 12 - Ngay_bat_dau.getMonth() + Ngay_ket_thuc.getMonth();\r\n } else {\r\n SoThangO = Ngay_ket_thuc.getMonth() - Ngay_bat_dau.getMonth();\r\n }\r\n if (Ngay_bat_dau != Ngay_ket_thuc) {\r\n SoThangO -= 1;\r\n if (30 - Ngay_bat_dau.getDate() > 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n if (30 - Ngay_ket_thuc.getDate() < 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n }\r\n this.ActionSave.patchValue({\r\n ThangO: SoThangO,\r\n });\r\n } //Lấy ra số tháng ở từ ngày đến ngày\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Xếp phòng\r\n \r\n \r\n Tìm kiế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 \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ p.Chuyen_nganh }}\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
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Tìm kiếm sinh viên ( Đã chọn:\r\n {{ dataTable2.length + '/' + dtPhong.Con_trong }})\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 \r\n \r\n \r\n \r\n
\r\n \r\n Mã sinh viênHọ và tênGiới tínhHệKhoaKhoá-Lớp
\r\n \r\n {{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Gioi_tinh }}{{ p.Ten_he }}{{ p.Ten_khoa }}K{{ p.Khoa_hoc + '-' + p.Ten_lop }}
Không có kết quả
\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 \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 Mã sinh viênHọ và tênGiới tínhHệKhoaKhoá-Lớp
\r\n \r\n {{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Gioi_tinh }}{{ p.Ten_he }}{{ p.Ten_khoa }}K{{ p.Khoa_hoc + '-' + p.Ten_lop }}
Không có kết quả
\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

Xếp phòng

\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
\r\n
\r\n
\r\n
\r\n \r\n Lưu\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { forkJoin, Subject } from 'rxjs';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { BaseComponent } from '../../base/base.component';\r\nimport { RequestPhong } from 'src/app/Models/input.model/RequestPhong';\r\nimport { PlanRoomComponent } from '../../plan-room/plan-room.component';\r\n@Component({\r\n selector: 'app-filter-sv',\r\n templateUrl: './filter-sv.component.html',\r\n styleUrls: ['./filter-sv.component.scss'],\r\n})\r\nexport class FilterSVComponent extends BaseComponent implements OnInit {\r\n @Output() LoadParent: EventEmitter = new EventEmitter();\r\n @Input() dtPhong = new RequestPhong();\r\n @Input() isManual: boolean;\r\n @ViewChild('SortRoomModal') SortRoomModal: TemplateRef;\r\n datadetail: any;\r\n closeResult: string;\r\n Token: string;\r\n DSCoSo: any;\r\n DSToaNha: any;\r\n DSToaNha2: any;\r\n DSPhong: any;\r\n DSPhong2: any;\r\n DSHe: any;\r\n DSKhoa: any;\r\n DSChuyenNganh: any;\r\n DSKhuVuc: any;\r\n DSDoiTuong: any;\r\n DSLoaiPhong: any;\r\n submitted = false;\r\n dataTable: any = [];\r\n dataTable2: any = [];\r\n dataMain: any = [];\r\n SelectData: any = [];\r\n code_filter: any;\r\n name_filter: any;\r\n NguyenVong_filter: any;\r\n NgaySinh_filter: any;\r\n Nhap_hoc_filter: any;\r\n Loai_phong_filter: any;\r\n Thanh_toan_filter: any;\r\n Doi_tuong_chinh_sach_filter: any;\r\n He_filter: any;\r\n Khoa_filter: any;\r\n Khoa_hoc_filter: any;\r\n Chuyen_nganh_filter: any;\r\n Khu_vuc_filter: any;\r\n khoa_filter: any;\r\n lop_filter: any;\r\n StudentData: any = [];\r\n doituong_filter: any;\r\n SelectNum: any;\r\n Fillter: FormGroup;\r\n totalItem: any;\r\n totalItemFilter: any;\r\n ActionSave = new FormGroup({\r\n Ngay_vao: new FormControl(null, [Validators.required]),\r\n Ngay_ra: new FormControl(null, [Validators.required]),\r\n ThangO: new FormControl(null),\r\n });\r\n Insert = new FormGroup({\r\n ID_Phong: new FormControl(null, [Validators.required]),\r\n ID_co_so: new FormControl(null, [Validators.required]),\r\n ID_toa_nha: new FormControl(null, [Validators.required]),\r\n });\r\n ThangQuyDinh: any;\r\n ThangThucTe: any;\r\n public com: common;\r\n visible: any;\r\n ngOnInit(): void {\r\n this.spinner.show();\r\n // $('#datatable').DataTable().clear();\r\n // $('#datatable').DataTable().destroy();\r\n // $.fn['dataTable'].ext.search = [];\r\n this.Fillter = new FormGroup({\r\n code_filter: new FormControl(null),\r\n name_filter: new FormControl(null),\r\n khoa_filter: new FormControl(null),\r\n lop_filter: new FormControl(null),\r\n doituong_filter: new FormControl(null),\r\n NguyenVong_filter: new FormControl(null),\r\n NgaySinh_filter: new FormControl(null),\r\n Loai_phong_filter: new FormControl(''),\r\n Thanh_toan_filter: new FormControl(''),\r\n Doi_tuong_chinh_sach_filter: new FormControl(''),\r\n He_filter: new FormControl(''),\r\n Khoa_filter: new FormControl(''),\r\n Khoa_hoc_filter: new FormControl(null),\r\n Chuyen_nganh_filter: new FormControl(''),\r\n Khu_vuc_filter: new FormControl(''),\r\n Nhap_hoc_filter: new FormControl(''),\r\n Ma_sv_filter: new FormControl(''),\r\n Ho_ten_filter: new FormControl(''),\r\n });\r\n\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.getList();\r\n this.Service.getCount(this.Token).subscribe((z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n });\r\n this.CampusService.getList(a.Token).subscribe((z) => {\r\n this.DSCoSo = z.Data;\r\n this.BuildingService.getList(a.Token).subscribe((z) => {\r\n this.DSToaNha = z.Data;\r\n this.DSToaNha2 = z.Data;\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Loai_phong == false) {\r\n z.Data[i].Loai_phong_text = 'Nam';\r\n } else {\r\n z.Data[i].Loai_phong_text = 'Nữ';\r\n }\r\n }\r\n this.DSPhong = z.Data;\r\n this.DSPhong2 = z.Data;\r\n });\r\n });\r\n });\r\n\r\n forkJoin({\r\n KhuVuc: this.SystemService.Get_khuvuc_tuyensinh(this.Token),\r\n ChuyenNganh: this.Service.List_ChuyenNganh(this.Token),\r\n He: this.Service.List_He(this.Token),\r\n Khoa: this.Service.List_Khoa(this.Token),\r\n DoiTuong: this.SystemService.Get_doituong_chinhsach(this.Token),\r\n Phong: this.RoomCateGoryService.getList(true, a.Token),\r\n }).subscribe(\r\n ({ KhuVuc, ChuyenNganh, He, Khoa, DoiTuong, Phong }) => {\r\n this.DSKhuVuc = KhuVuc;\r\n this.DSChuyenNganh = ChuyenNganh;\r\n this.DSHe = He;\r\n this.DSKhoa = Khoa;\r\n this.DSLoaiPhong = Phong;\r\n this.DSDoiTuong = DoiTuong;\r\n },\r\n (error) => {\r\n this.toastr.error(error.message);\r\n }\r\n );\r\n }\r\n cosochange() {\r\n let ID_coso = $('#ID_co_so').val();\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n }\r\n ToaNhaChange() {\r\n let ID_toanha = $('#ID_toa_nha').val();\r\n this.DSPhong2 = jQuery.grep(this.DSPhong, function (pa: any, i) {\r\n return pa.ID_Toa_Nha == ID_toanha;\r\n });\r\n }\r\n getList() {\r\n this.page = 1;\r\n let req = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Nhap_hoc: '',\r\n Thanh_toan: this.Fillter.value.Thanh_toan_filter,\r\n Gioi_tinh: this.dtPhong.Loai_phong == true ? 'Nữ' : 'Nam',\r\n Ten_loai_phong: this.dtPhong.Ten_loai_phong,\r\n Nguyen_vong:\r\n this.Fillter.value.NguyenVong_filter == null\r\n ? ''\r\n : this.Fillter.value.NguyenVong_filter,\r\n Doi_tuong_chinh_sach: this.Fillter.value.Doi_tuong_chinh_sach_filter,\r\n Ngay_sinh:\r\n this.Fillter.value.NgaySinh_filter == null\r\n ? ''\r\n : this.Fillter.value.NgaySinh_filter,\r\n Ten_he: this.Fillter.value.He_filter,\r\n Khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc:\r\n this.Fillter.value.Khoa_hoc_filter == null\r\n ? ''\r\n : this.Fillter.value.Khoa_hoc_filter,\r\n Chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n Doi_tuong_khu_vuc: this.Fillter.value.Khu_vuc_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n Ho_ten: this.Fillter.value.Ho_ten_filter,\r\n };\r\n this.spinner.show();\r\n this.Service.ListAll(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.Data;\r\n this.Service.getCountFilter(req, this.Token).subscribe((z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n });\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n formatDate(date) {\r\n const d = new Date(date);\r\n let month = '' + (d.getMonth() + 1);\r\n let day = '' + d.getDate();\r\n const year = d.getFullYear();\r\n if (month.length < 2) month = '0' + month;\r\n if (day.length < 2) day = '0' + day;\r\n return [year, month, day].join('-');\r\n }\r\n open(content, size, Loai, Data) {\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: size })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n let Ngay_ket_thuc = '05-31-' + (new Date().getFullYear() + 1);\r\n if (\r\n this.formatDate(new Date()) <\r\n this.formatDate(new Date('05-31-' + new Date().getFullYear()))\r\n ) {\r\n Ngay_ket_thuc = '05-31-' + new Date().getFullYear();\r\n }\r\n this.ActionSave.patchValue({\r\n Ngay_vao: this.formatDate(new Date()),\r\n Ngay_ra: this.formatDate(new Date(Ngay_ket_thuc)),\r\n });\r\n this.GetMonth();\r\n // this.ID_co_so=this.DSCoSo[0].ID;\r\n // this.ID_toa_nha=this.DSToaNha[0].ID_ToaNha;\r\n let ID_coso = this.DSCoSo[0].ID;\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n this.Insert.patchValue({\r\n ID_co_so: this.DSCoSo[0].ID,\r\n ID_toa_nha: idtn,\r\n });\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n onSubmit() {\r\n if (this.ActionSave.invalid) {\r\n this.toastr.warning('Vui lòng chọn ngày nhận phòng và ngày kết thúc !');\r\n return false;\r\n }\r\n if (this.dataTable2.length <= this.dtPhong.Suc_chua) {\r\n let InputDatas = {\r\n Thu_tu_doi_tuong: 2,\r\n Thu_tu_phong: 2,\r\n Ngay_bat_dau: this.ActionSave.value.Ngay_vao,\r\n Ngay_ket_thuc: this.ActionSave.value.Ngay_ra,\r\n Students: this.dataTable2,\r\n Rooms: [this.dtPhong],\r\n };\r\n this.spinner.show();\r\n this.Service.Sort(this.Token, InputDatas).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message, 'Xếp phòng thành công');\r\n } else {\r\n this.toastr.warning(z.Message, 'Thao tác thất bại');\r\n }\r\n this.LoadParent.emit(); //emit event\r\n this.modalService.dismissAll('Cross click');\r\n });\r\n } else {\r\n this.toastr.warning('Sức chứa không đủ, vui lòng kiểm tra lại');\r\n }\r\n }\r\n navigate() {\r\n if (this.dataTable2.length > 0) {\r\n this.open(this.SortRoomModal, 'xs', '', '');\r\n } else {\r\n this.toastr.warning('Vui lòng chọn sinh viên cần xếp phòng');\r\n }\r\n }\r\n\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n let req = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Nhap_hoc: '',\r\n Thanh_toan: this.Fillter.value.Thanh_toan_filter,\r\n Gioi_tinh: this.dtPhong.Loai_phong == true ? 'Nữ' : 'Nam',\r\n Ten_loai_phong: this.dtPhong.Ten_loai_phong,\r\n Nguyen_vong:\r\n this.Fillter.value.NguyenVong_filter == null\r\n ? ''\r\n : this.Fillter.value.NguyenVong_filter,\r\n Doi_tuong_chinh_sach: this.Fillter.value.Doi_tuong_chinh_sach_filter,\r\n Ngay_sinh:\r\n this.Fillter.value.NgaySinh_filter == null\r\n ? ''\r\n : this.Fillter.value.NgaySinh_filter,\r\n Ten_he: this.Fillter.value.He_filter,\r\n Khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc:\r\n this.Fillter.value.Khoa_hoc_filter == null\r\n ? ''\r\n : this.Fillter.value.Khoa_hoc_filter,\r\n Chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n Doi_tuong_khu_vuc: this.Fillter.value.Khu_vuc_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n Ho_ten: this.Fillter.value.Ho_ten_filter,\r\n };\r\n this.spinner.show();\r\n this.Service.ListAll(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.Data;\r\n this.Service.getCountFilter(req, this.Token).subscribe((z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.spinner.hide();\r\n });\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n\r\n checkAllCheckBox2(ev) {\r\n if (this.dataTable2.length) {\r\n this.dataTable2.forEach((x) => (x.checked = ev.target.checked));\r\n }\r\n }\r\n isAllCheckBoxChecked2() {\r\n if (this.dataTable2.length) {\r\n if (this.dataTable2 != undefined)\r\n return this.dataTable2.every((p) => p.checked);\r\n }\r\n }\r\n\r\n PushCheckRow() {\r\n for (let i = 0; i < this.dataTable.length; i++) {\r\n if (this.dataTable[i].checked == true) {\r\n const check = this.dataTable2.some(\r\n (el) => el.ID_sv === this.dataTable[i].ID_sv\r\n );\r\n if (!check) {\r\n this.dataTable2.push(this.dataTable[i]);\r\n }\r\n this.dataTable.splice(i, 1);\r\n i--;\r\n }\r\n }\r\n } // thêm row check\r\n\r\n SpliceCheckRow() {\r\n for (let i = 0; i < this.dataTable2.length; i++) {\r\n if (this.dataTable2[i].checked == false) {\r\n const check = this.dataTable.some(\r\n (el) => el.ID_sv === this.dataTable2[i].ID_sv\r\n );\r\n if (!check) {\r\n this.dataTable.push(this.dataTable2[i]);\r\n }\r\n this.dataTable2.splice(i, 1);\r\n i--;\r\n }\r\n }\r\n } // Xóa row check\r\n\r\n GetMonth() {\r\n let SoThangO = 0;\r\n let Ngay_ket_thuc = new Date(this.ActionSave.value.Ngay_ra);\r\n let Ngay_bat_dau = new Date(this.ActionSave.value.Ngay_vao);\r\n\r\n if (Ngay_ket_thuc.getFullYear() > Ngay_bat_dau.getFullYear()) {\r\n SoThangO = 12 - Ngay_bat_dau.getMonth() + Ngay_ket_thuc.getMonth();\r\n } else {\r\n SoThangO = Ngay_ket_thuc.getMonth() - Ngay_bat_dau.getMonth();\r\n }\r\n if (Ngay_bat_dau != Ngay_ket_thuc) {\r\n SoThangO -= 1;\r\n if (30 - Ngay_bat_dau.getDate() > 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n if (30 - Ngay_ket_thuc.getDate() < 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n }\r\n this.ActionSave.patchValue({\r\n ThangO: SoThangO,\r\n });\r\n } //Lấy ra số tháng ở từ ngày đến ngày\r\n}\r\n","
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n \n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ và tênNgày sinhGiới tínhKhu vựcĐối tượng chính sách
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}{{ p.Gioi_tinh }}{{ p.Ten_kv_ts }}{{ p.Ten_dt_chinh_sach }}
Không có kết quả
\n
\n
\n
\n
\n
\n
\n
\n\n\n
\n

Xếp phòng

\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { forkJoin, Subject } from 'rxjs';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { catchError, timeout } from 'rxjs/operators';\r\nimport { BaseComponent } from '../base/base.component';\r\nimport { of } from 'rxjs';\r\nimport { RequestStudent } from 'src/app/Models/input.model/RequestStudent';\r\n@Component({\r\n selector: 'app-plan-room',\r\n templateUrl: './plan-room.component.html',\r\n styleUrls: ['./plan-room.component.scss'],\r\n // encapsulation: ViewEncapsulation.None,\r\n // styles: ['.styleboxroomSuccess{background-color: #28a745;color:#fffff;width: 75px;height:75px;border:1px solid black;text-align:center;color:#fff}.styleboxroomWarning{background-color: #ffc107;width: 75px;height:75px;border:1px solid black;text-align:center}.styleboxroomErorr{background-color: #dc3545;width: 75px;height:75px;border:1px solid black;text-align:center;color:#fff}.title{text-align:center}']\r\n})\r\nexport class PlanRoomComponent extends BaseComponent implements OnInit {\r\n listFloor: any;\r\n dataSoPhong: any;\r\n DSCoSo: any;\r\n DSToaNha: any;\r\n DSToaNha2: any;\r\n DSLoaiPhong: any;\r\n Token: string;\r\n Res: any;\r\n req: any;\r\n check: any;\r\n dataTable: any = [];\r\n dataCampusChangeAfter: any = [];\r\n dataBuildingChangeAfter: any = [];\r\n closeResult: string;\r\n ClassData: any;\r\n ID_phong: any;\r\n ID_co_so: any;\r\n ID_toa_nha: any;\r\n Ma_phong: any;\r\n Ten_phong: any;\r\n TenPhong: any;\r\n Loai_phong: any;\r\n ID_loai_phong: any;\r\n Khoa_phong: any;\r\n Tang: any;\r\n Suc_chua: any;\r\n Ngay_gia_han: any;\r\n dataDangKyQuaTrinh: any = [];\r\n Ghi_chu: any;\r\n ID_toa_nha_ft: any = '';\r\n Ten_phong_ft: any;\r\n gioi_tinh_ft: any = '';\r\n loai_phong_ft: any = '';\r\n ID_co_so_ft: any = '';\r\n Tang_ft: any = '';\r\n titleModal: string;\r\n default: any;\r\n viewtable: any;\r\n DataSelect: any;\r\n filter: any = false;\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n checkInsert: boolean;\r\n submitted = false;\r\n NameTitle: string;\r\n Title: string = 'Đang tải danh sách phòng...';\r\n TitleClass: string = 'spinner-border text-muted';\r\n Request: any;\r\n ds_toanha: any;\r\n tentoanha: string = '';\r\n arr_all: any = [];\r\n dtOptions: any;\r\n dataallsv: any;\r\n dataroom: any;\r\n So_thang_o: any;\r\n Check_ra: boolean;\r\n Check_blacklist: boolean = false;\r\n Ly_do: string;\r\n Ngay_ra_ktx: any;\r\n Ngay_ra_phong_cu: any;\r\n modalRef: any;\r\n searchString: any;\r\n Student: RequestStudent;\r\n Fillter = new FormGroup({\r\n Tang_ft: new FormControl(null),\r\n ID_toa_nha_ft: new FormControl(''),\r\n Tang: new FormControl(''),\r\n Ten_phong_ft: new FormControl(null),\r\n loai_phong_ft: new FormControl(null),\r\n gioi_tinh_ft: new FormControl(null),\r\n ID_co_so_ft: new FormControl(''),\r\n });\r\n isShowManualTab = false;\r\n FillterSV = new FormGroup({\r\n code_filter: new FormControl(null),\r\n name_filter: new FormControl(null),\r\n khoa_filter: new FormControl(null),\r\n lop_filter: new FormControl(null),\r\n doituong_filter: new FormControl(null),\r\n NguyenVong_filter: new FormControl(null),\r\n NgaySinh_filter: new FormControl(null),\r\n Loai_phong_filter: new FormControl(''),\r\n Thanh_toan_filter: new FormControl(''),\r\n Gioi_tinh_filter: new FormControl(1),\r\n Doi_tuong_chinh_sach_filter: new FormControl(''),\r\n He_filter: new FormControl(''),\r\n Khoa_filter: new FormControl(''),\r\n Khoa_hoc_filter: new FormControl(null),\r\n Chuyen_nganh_filter: new FormControl(''),\r\n Khu_vuc_filter: new FormControl(''),\r\n Nhap_hoc_filter: new FormControl(''),\r\n Ma_sv_filter: new FormControl(''),\r\n Ho_ten_filter: new FormControl(''),\r\n });\r\n ActionChangeRoom = new FormGroup({\r\n ID_Campus: new FormControl(null),\r\n ID_Building: new FormControl(null),\r\n ID_Floor: new FormControl(null),\r\n ID_Room: new FormControl(null, []),\r\n Ma_sv_dp: new FormControl(null),\r\n Ho_ten_dp: new FormControl(null),\r\n });\r\n Action = new FormGroup({\r\n So_Ho_Chieu: new FormControl(null),\r\n Ngay_Het_Han_Visa: new FormControl(null),\r\n Ngay_bat_dau: new FormControl(null, [Validators.required]),\r\n Ngay_ket_thuc: new FormControl(null, [Validators.required]),\r\n Ma_sv: new FormControl(null, []),\r\n Ho_ten: new FormControl(null, []),\r\n Ngay_sinh: new FormControl(null, []),\r\n Gioi_Tinh: new FormControl(2, []),\r\n ID_quoc_tich: new FormControl(0, []),\r\n Dan_toc: new FormControl(0, []),\r\n CMND: new FormControl(null, []),\r\n Ngay_cap_CMND: new FormControl(null, []),\r\n Noi_cap_CMND: new FormControl(0, []),\r\n Ton_giao: new FormControl(null, []),\r\n Dia_chi_tt: new FormControl(null, []),\r\n Dienthoai_canhan: new FormControl(null, []),\r\n Email: new FormControl(null, []),\r\n Ho_ten_cha: new FormControl(null, []),\r\n Namsinh_cha: new FormControl(null, []),\r\n Hoat_dong_XH_CT_cha: new FormControl(null, []),\r\n Ho_ten_me: new FormControl(null, []),\r\n Namsinh_me: new FormControl(null, []),\r\n Hoat_dong_XH_CT_me: new FormControl(null, []),\r\n NoiO_hiennay: new FormControl(null, []),\r\n So_dien_thoai_bo: new FormControl(null, []),\r\n So_dien_thoai_me: new FormControl(null, []),\r\n });\r\n DSKhuVuc: any;\r\n public com: common;\r\n DSChuyenNganh: any;\r\n DSHe: any;\r\n DSKhoa: any;\r\n DSDoiTuong: any;\r\n dtPhong: any;\r\n dataCampusChange: any;\r\n dtRoomChange: any;\r\n dataRoomChange: any;\r\n ID_loai_phong_cu: number;\r\n CheckDay: any;\r\n Check_con_trong: number;\r\n dataThongke;\r\n tenPhongPrint: any;\r\n\r\n ngOnInit() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.LoadCoSo();\r\n this.CheckDay = new Date();\r\n this.loadFloor(0);\r\n }\r\n\r\n loadFloor(id_building: any) {\r\n this.RoomService.getListFloor(id_building, this.Token).subscribe(\r\n (res: any) => {\r\n this.listFloor = res.Data;\r\n }\r\n );\r\n }\r\n\r\n changeBuilding() {\r\n this.loadFloor(\r\n (this.Fillter.value.ID_toa_nha_ft =\r\n this.Fillter.value.ID_toa_nha_ft > 0\r\n ? this.Fillter.value.ID_toa_nha_ft\r\n : 0)\r\n );\r\n }\r\n showManualTab() {\r\n this.isShowManualTab = true;\r\n }\r\n cosochange() {\r\n let ID_coso2 = this.Fillter.controls.ID_co_so_ft.value;\r\n if (ID_coso2 != '') {\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso2;\r\n });\r\n } else {\r\n this.DSToaNha2 = this.DSToaNha;\r\n }\r\n }\r\n getList(token) {\r\n this.spinner.show();\r\n this.RoomService.GetAll(token).subscribe(\r\n (z) => {\r\n // var tongsucchua = 0;\r\n // var dasudung = 0;\r\n // var controng = 0;\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n this.dataTable = z.Data;\r\n this.spinner.hide();\r\n this.Find();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n ThongKePhongTrong() {\r\n let req = this.Fillter.controls.ID_toa_nha_ft.value;\r\n if (this.Fillter.controls.ID_toa_nha_ft.value == '') {\r\n req = '0';\r\n }\r\n this.RoomService.ThongKePhongTrong(req, this.Token).subscribe(\r\n (z) => {\r\n this.dataThongke = z;\r\n },\r\n (err) => {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n }\r\n );\r\n }\r\n Find() {\r\n if (\r\n this.Fillter.value.Tang > 0 &&\r\n !(this.Fillter.controls.ID_toa_nha_ft.value > 0)\r\n ) {\r\n this.toastr.warning('Bạn chưa chọn Tòa nhà');\r\n return false;\r\n }\r\n let dstang = [];\r\n this.ThongKePhongTrong();\r\n this.tentoanha = '';\r\n this.arr_all = [];\r\n let idtn = this.Fillter.controls.ID_toa_nha_ft.value;\r\n if (idtn != '') {\r\n var arr_toanha = [];\r\n let dl_toanha = this.dataTable.filter((a) => a.ID_Toa_Nha == idtn);\r\n this.tentoanha = '';\r\n if (this.Fillter.value.Tang > 0) {\r\n dstang.push(this.Fillter.value.Tang);\r\n } else {\r\n dstang = dl_toanha\r\n .map((item) => item.Tang)\r\n .filter((value, index, self) => self.indexOf(value) === index)\r\n .sort((a, b) => parseFloat(b) - parseFloat(a));\r\n }\r\n for (var i = 0; i < dstang.length; i++) {\r\n var arr_tang = [];\r\n let dl_tang = dl_toanha.filter((a) => a.Tang == dstang[i]);\r\n dl_tang.sort((n1, n2) => {\r\n if (n1.Thu_tu > n2.Thu_tu) {\r\n return 1;\r\n }\r\n if (n1.Thu_tu < n2.Thu_tu) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n arr_tang = dl_tang;\r\n arr_toanha.push(arr_tang);\r\n arr_tang = [];\r\n }\r\n this.arr_all.push(arr_toanha);\r\n } else {\r\n var fil = [];\r\n let A = this.dataTable\r\n .map((item) => item.ID_Toa_Nha)\r\n .filter((value, index, self) => self.indexOf(value) === index)\r\n .sort((a, b) => parseFloat(b) - parseFloat(a));\r\n let B = this.DSToaNha2.map((item) => item.ID_ToaNha)\r\n .filter((value, index, self) => self.indexOf(value) === index)\r\n .sort((a, b) => parseFloat(b) - parseFloat(a));\r\n for (let i = 0; i < B.length; i++) {\r\n for (let j = 0; j < A.length; j++) {\r\n if (B[i] == A[j]) {\r\n fil.push(B[i]);\r\n }\r\n }\r\n }\r\n this.ds_toanha = fil;\r\n for (var k = 0; k < this.ds_toanha.length; k++) {\r\n var arr_toanha = [];\r\n let dl_toanha = this.dataTable.filter(\r\n (a) => a.ID_Toa_Nha == this.ds_toanha[k]\r\n );\r\n if (this.Fillter.value.Tang > 0) {\r\n dstang.push(this.Fillter.value.Tang);\r\n } else {\r\n dstang = dl_toanha\r\n .map((item) => item.Tang)\r\n .filter((value, index, self) => self.indexOf(value) === index)\r\n .sort((a, b) => parseFloat(b) - parseFloat(a));\r\n }\r\n for (var i = 0; i < dstang.length; i++) {\r\n var arr_tang = [];\r\n let dl_tang = dl_toanha.filter((a) => a.Tang == dstang[i]);\r\n\r\n dl_tang.sort((n1, n2) => {\r\n if (n1.Thu_tu > n2.Thu_tu) {\r\n return 1;\r\n }\r\n if (n1.Thu_tu < n2.Thu_tu) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n arr_toanha.push(dl_tang);\r\n dl_tang = [];\r\n }\r\n this.arr_all.push(arr_toanha);\r\n }\r\n }\r\n }\r\n\r\n ViewRoom(Data) {\r\n alert('ID_phong:' + Data.ID_Phong);\r\n }\r\n\r\n GiaHan() {\r\n if (\r\n this.Ngay_gia_han == null ||\r\n this.Ngay_gia_han == undefined ||\r\n this.Ngay_gia_han == ''\r\n ) {\r\n this.toastr.warning('Bạn chưa chọn ngày gia hạn');\r\n return false;\r\n }\r\n if (this.Ngay_gia_han <= this.dataDangKyQuaTrinh.Den_ngay) {\r\n this.toastr.warning('Ngày gia hạn phải lớn hơn ngày kết thúc!');\r\n return false;\r\n }\r\n if (this.So_thang_o <= 0) {\r\n this.toastr.warning('Số tháng ở phải lớn hơn 0!');\r\n return false;\r\n }\r\n let req = {\r\n ID: this.dtPhong.ID_dang_ky,\r\n Ngay_ket_thuc: this.Ngay_gia_han,\r\n So_thang_o: this.So_thang_o,\r\n };\r\n this.ListpeopledormService.GiaHanNgayRa(req, this.Token).subscribe((z) => {\r\n this.modalRef.close();\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.RoomService.GetAllSVByIdPhong(\r\n this.dtPhong.ID_Phong,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.dataroom = z.Data;\r\n }\r\n });\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n });\r\n }\r\n MultiGiaHan() {\r\n let dtsv = this.dataroom.filter((x) => x.Chon == true);\r\n if (dtsv.length < 1) {\r\n this.toastr.warning('Bạn chưa chọn sinh viên');\r\n return false;\r\n }\r\n if (\r\n this.Ngay_gia_han == null ||\r\n this.Ngay_gia_han == undefined ||\r\n this.Ngay_gia_han == ''\r\n ) {\r\n this.toastr.warning('Bạn chưa chọn ngày gia hạn');\r\n return false;\r\n }\r\n let req = {\r\n listSinhVien: dtsv,\r\n Ngay_ket_thuc: this.Ngay_gia_han,\r\n };\r\n this.ListpeopledormService.MultiGiaHanNgayRa(req, this.Token).subscribe(\r\n (z) => {\r\n this.modalRef.close();\r\n\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.RoomService.GetAllSVByIdPhong(\r\n this.dtPhong.ID_Phong,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.dataroom = z.Data;\r\n }\r\n });\r\n }\r\n );\r\n }\r\n changeGiaHan() {\r\n if (this.Ngay_gia_han <= this.dataDangKyQuaTrinh.Den_ngay) {\r\n this.toastr.warning('Ngày gia hạn phải lớn hơn ngày kết thúc!');\r\n return false;\r\n }\r\n let Ngay_ket_thuc = new Date(this.Ngay_gia_han);\r\n let Ngay_bat_dau = new Date(this.dtPhong.Ngay_bat_dau);\r\n let SoThangO;\r\n\r\n if (Ngay_ket_thuc.getFullYear() > Ngay_bat_dau.getFullYear()) {\r\n SoThangO =\r\n (Ngay_ket_thuc.getFullYear() - Ngay_bat_dau.getFullYear()) * 12 -\r\n Ngay_bat_dau.getMonth() +\r\n Ngay_ket_thuc.getMonth();\r\n } else {\r\n SoThangO = Ngay_ket_thuc.getMonth() - Ngay_bat_dau.getMonth();\r\n }\r\n if (Ngay_bat_dau != Ngay_ket_thuc) {\r\n SoThangO -= 1;\r\n if (30 - Ngay_bat_dau.getDate() > 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n if (30 - Ngay_ket_thuc.getDate() < 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n }\r\n this.So_thang_o = SoThangO;\r\n }\r\n open(content, Data, type, action) {\r\n this.So_thang_o = 0;\r\n this.Ngay_gia_han = '';\r\n this.dtPhong = Data;\r\n this.ID_loai_phong_cu = Data.ID_loai_phong;\r\n this.submitted = false;\r\n this.modalRef = this.modalService.open(content, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: type,\r\n windowClass: 'modal-window',\r\n });\r\n this.modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n this.Khoa_phong = Data.Khoa_phong;\r\n this.Check_con_trong = Data.Con_trong;\r\n if (action == 'view') {\r\n this.tenPhongPrint = Data.Ten_toa_nha + ' - ' + Data.Ten_phong;\r\n this.TenPhong = Data.Ten_toa_nha + '-' + Data.Ten_phong;\r\n this.ID_phong = Data.ID_Phong;\r\n this.RoomService.GetAllSVByIdPhong(Data.ID_Phong, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataroom = z.Data;\r\n // for(var i =0 ; i {\r\n this.dataDangKyQuaTrinh = z;\r\n });\r\n }\r\n }\r\n openPrintSoPhong(content, type) {\r\n this.SoPhongService.GetAll(this.Token).subscribe((z) => {\r\n this.dataSoPhong = z;\r\n });\r\n\r\n this.modalRef = this.modalService.open(content, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: type,\r\n });\r\n this.modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n }\r\n\r\n openModalHSSV(content, Data, type, action) {\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: type })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n\r\n if (action == 'edit') {\r\n this.Action.setValue({\r\n So_Ho_Chieu: Data.So_Ho_Chieu,\r\n Ngay_Het_Han_Visa:\r\n Data.Ngay_Het_Han_Visa != null\r\n ? Data.Ngay_Het_Han_Visa.substring(0, 10)\r\n : null,\r\n Ngay_bat_dau:\r\n Data.Ngay_bat_dau != null ? Data.Ngay_bat_dau.substring(0, 10) : null,\r\n Ngay_ket_thuc:\r\n Data.Ngay_ket_thuc != null\r\n ? Data.Ngay_ket_thuc.substring(0, 10)\r\n : null,\r\n Ma_sv: Data.Ma_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Ngay_sinh:\r\n Data.Ngay_sinh != null ? Data.Ngay_sinh.substring(0, 10) : null,\r\n Gioi_Tinh: Data.Gioi_Tinh,\r\n ID_quoc_tich: Data.Quoc_tich,\r\n Dan_toc: Data.Dan_toc,\r\n CMND: Data.CMND,\r\n Ngay_cap_CMND:\r\n Data.Ngay_cap_CMND != null\r\n ? Data.Ngay_cap_CMND.substring(0, 10)\r\n : null,\r\n Noi_cap_CMND: Data.ID_noi_cap_CMND,\r\n Ton_giao: Data.Ton_giao,\r\n Dia_chi_tt: Data.Dia_chi_tt,\r\n Dienthoai_canhan: Data.Dienthoai_canhan,\r\n Email: Data.Email,\r\n Ho_ten_cha: Data.Ho_ten_cha,\r\n Namsinh_cha:\r\n Data.Namsinh_cha != null ? Data.Namsinh_cha.substring(0, 10) : null,\r\n Hoat_dong_XH_CT_cha: Data.Hoat_dong_XH_CT_cha,\r\n Ho_ten_me: Data.Ho_ten_me,\r\n Namsinh_me:\r\n Data.Namsinh_me != null ? Data.Namsinh_me.substring(0, 10) : null,\r\n Hoat_dong_XH_CT_me: Data.Hoat_dong_XH_CT_me,\r\n NoiO_hiennay: Data.NoiO_hiennay,\r\n So_dien_thoai_bo: Data.So_dien_thoai_bo,\r\n So_dien_thoai_me: Data.So_dien_thoai_me,\r\n });\r\n this.Student = Data;\r\n }\r\n if (action == 'changeRoom') {\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCampusChange = z.Data;\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n this.dataBuildingChangeAfter = z.Data;\r\n this.RoomService.GetAllNonLock(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n this.dtRoomChange = z.Data;\r\n });\r\n });\r\n });\r\n }\r\n }\r\n openApprover(content, type) {\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: type })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n }\r\n\r\n LoadCoSo() {\r\n this.CampusService.getList(this.Token).subscribe(\r\n (z) => {\r\n this.DSCoSo = z.Data;\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n this.DSToaNha = z.Data;\r\n this.DSToaNha2 = z.Data;\r\n this.getList(this.Token);\r\n });\r\n this.RoomcategoryService.getList(1, this.Token).subscribe((z) => {\r\n this.DSLoaiPhong = z.Data;\r\n });\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n\r\n checkAllCheckBox(ev) {\r\n if (this.dataroom.length > 0) {\r\n this.dataroom.forEach((x) => {\r\n x.Chon = ev.target.checked;\r\n });\r\n }\r\n }\r\n\r\n isAllCheckBoxChecked() {\r\n if (this.dataroom != undefined)\r\n return this.dataroom.every((p) => {\r\n return p.checked;\r\n });\r\n }\r\n\r\n onApprove() {\r\n this.submitted = true;\r\n if (this.Action.invalid) {\r\n return false;\r\n }\r\n this.actionUpdate();\r\n }\r\n\r\n actionUpdate() {\r\n this.Student.So_Ho_Chieu = this.Action.value.So_Ho_Chieu;\r\n this.Student.Ngay_Het_Han_Visa = this.Action.value.Ngay_Het_Han_Visa;\r\n this.Student.Dienthoai_canhan = this.Action.value.Dienthoai_canhan;\r\n this.Student.Email = this.Action.value.Email;\r\n this.Student.Dia_chi_tt = this.Action.value.Dia_chi_tt;\r\n this.ListpeopledormService.UpdateSV(this.Student, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('ThemModal');\r\n } else {\r\n this.toastr.warning(z.Message);\r\n }\r\n this.Action.reset();\r\n },\r\n (err) => {\r\n this.toastr.warning(err.Message);\r\n }\r\n );\r\n } // cập nhật thông tin sinh viên\r\n\r\n onChangeRoom() {\r\n let dt = this.dataroom.filter((x) => x.Chon == true);\r\n if (dt.length == 0) {\r\n this.toastr.warning('Bạn vui lòng tích chọn sinh viên để đổi phòng !');\r\n } else {\r\n let dtRoo = this.dataRoomChange.filter((x) => {\r\n return x.ID_Phong == this.ActionChangeRoom.value.ID_Room;\r\n });\r\n if (dtRoo.length > 0) {\r\n if (this.Ngay_ra_phong_cu == null || this.Ngay_ra_phong_cu == '') {\r\n this.toastr.warning('Bạn chưa chọn ngày đổi !');\r\n } else {\r\n if (\r\n this.dataDangKyQuaTrinh.Tu_ngay > this.Ngay_ra_phong_cu ||\r\n this.dataDangKyQuaTrinh.Den_ngay < this.Ngay_ra_phong_cu\r\n ) {\r\n this.toastr.warning('Ngày đổi phòng phải trong thời gian ở!');\r\n return false;\r\n }\r\n this.spinner.show();\r\n let req = {\r\n Students: dt,\r\n IDPhong: this.ActionChangeRoom.value.ID_Room,\r\n IDPhongDi: this.ID_phong,\r\n Ngay_bat_dau: this.Ngay_ra_phong_cu,\r\n };\r\n this.ListpeopledormService.UpdateRoom(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('ChangeClassModal');\r\n this.LoadCoSo();\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n } else {\r\n this.toastr.warning('Chọn phòng !');\r\n }\r\n }\r\n } // đổi phòng ktx\r\n\r\n ChoRa() {\r\n var dt = this.dataroom.filter((x) => x.Chon == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('ChoRaktx');\r\n this.toastr.warning('Bạn vui lòng tích chọn sinh viên để cho ra !');\r\n } else {\r\n var dtstring = dt.map((x) => x.ID_dang_ky);\r\n if (this.Check_blacklist) {\r\n this.Check_ra = true;\r\n }\r\n\r\n let data = {\r\n lstID_dang_ky: dtstring,\r\n Ly_do: this.Ly_do,\r\n Ngay_cho_ra: this.Ngay_ra_ktx,\r\n Ra_truoc_han: this.Check_ra,\r\n Danh_sach_den: this.Check_blacklist,\r\n ID_phong: this.ID_phong,\r\n };\r\n this.ListpeopledormService.ChoRaKTX(data, this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('ChoRaktx');\r\n this.LoadCoSo();\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n });\r\n }\r\n } // Cho ra đúng thời hạn\r\n\r\n GetStringID(m) {\r\n var rs = '';\r\n for (var k = 0; k < m.length; k++) {\r\n if (k == 0) {\r\n rs += m[k].ID_dang_ky;\r\n } else {\r\n rs += ',' + m[k].ID_dang_ky;\r\n }\r\n }\r\n return rs;\r\n } // get string id dang ky\r\n\r\n getListCampusChange() {\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCampusChange = z.Data;\r\n this.getListBuildingChange();\r\n });\r\n } // list all Cơ sở đổi phòng\r\n getListBuildingChange() {\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n // for (var i = 0; i < z.Data.length; i++) {\r\n // if (z.Data[i].Bao_phong) {\r\n // z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n // }\r\n // }\r\n this.dataBuildingChange = z.Data;\r\n this.getListRoomChange();\r\n });\r\n } // list tòa nhà đổi phòng\r\n getListRoomChange() {\r\n this.RoomService.GetAllNonLock(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Bao_phong) {\r\n z.Data[i].Ten_phong = z.Data[i].Ten_phong + '_PB';\r\n }\r\n }\r\n this.dtRoomChange = z.Data;\r\n this.dataRoomChange = z.Data;\r\n });\r\n } // list phòng đổi phòng\r\n changeCampusRep(id) {\r\n this.dataBuildingChange = this.dataBuildingChangeAfter.filter((x) => {\r\n return x.ID_CoSo == id;\r\n });\r\n }\r\n changeRoomRep(id_toanha) {\r\n this.dataRoomChange = this.dtRoomChange.filter((x) => {\r\n return (\r\n x.ID_Toa_Nha.toString() == id_toanha &&\r\n x.Loai_phong == this.dtPhong.Loai_phong &&\r\n x.Con_trong > 0\r\n );\r\n });\r\n console.table(this.dataRoomChange);\r\n }\r\n\r\n substrDays(date, days) {\r\n var result = new Date(date);\r\n result.setDate(result.getDate() - days);\r\n return result;\r\n }\r\n\r\n CheckExpDate(date): object {\r\n let d = this.substrDays(date, 15);\r\n let datenow = new Date();\r\n if (d <= datenow) {\r\n return { 'background-color': 'lightgoldenrodyellow' };\r\n }\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_SoDoPhong;\r\n window.open(urlHelp, '_blank');\r\n }\r\n PrintSoPhong() {\r\n this.SoPhongService.GetAll(this.Token).subscribe((z) => {\r\n this.dataSoPhong = z;\r\n });\r\n setTimeout(() => {\r\n let printContents = document.getElementById('print-so-phong').innerHTML;\r\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\r\n mywindow.document.write(`\r\n \r\n ${printContents}\r\n `);\r\n mywindow.document.close();\r\n mywindow.focus();\r\n\r\n mywindow.print();\r\n // mywindow.close();\r\n }, 200);\r\n this.modalService.dismissAll('DeleteModal');\r\n }\r\n\r\n PrintSoPhongDetail() {\r\n this.SoPhongService.GetAll(this.Token).subscribe((z) => {\r\n this.dataSoPhong = z.filter((x) => x.Ten_phong == this.tenPhongPrint);\r\n });\r\n setTimeout(() => {\r\n let printContents = document.getElementById('print-so-phong').innerHTML;\r\n const mywindow = window.open('', 'PRINT', 'width=1023,height=1000');\r\n mywindow.document.write(`\r\n \r\n ${printContents}\r\n `);\r\n mywindow.document.close();\r\n mywindow.focus();\r\n\r\n mywindow.print();\r\n // mywindow.close();\r\n }, 200);\r\n this.modalService.dismissAll('DeleteModal');\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 \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
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n

{{ tentoanha }}

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

\r\n Toà nhà: {{ toanha[0][0].Ten_toa_nha }}\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 0 && phong.Con_trong > 0\r\n \"\r\n >\r\n {{ phong.Ten_phong }}
\r\n {{ phong.Dang_o }}/{{ phong.Suc_chua }}\r\n
\r\n \r\n \r\n \r\n {{ phong.Ten_phong }} \r\n
\r\n {{ phong.Dang_o }}/{{ phong.Suc_chua }}\r\n
\r\n \r\n \r\n {{ phong.Ten_phong }}
\r\n {{ phong.Dang_o }}/{{ phong.Suc_chua }}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n

{{ TenPhong }}

\r\n ×\r\n \r\n
\r\n
\r\n \r\n \r\n Danh sách sinh viên trong phòng\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n In sổ phòng\r\n \r\n
\r\n
\r\n \r\n Đổi phòng\r\n \r\n \r\n Gia hạn\r\n \r\n \r\n Ra KTX\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 \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 Mã sinh viênHọ tênChức vụQuốc tịchHệKhoaKhóa-LớpSố tiền phải đóngSố tiền đã đóngThao tác
\r\n \r\n {{ p.Ma_sv }}{{ p.Ho_ten }}\r\n
\r\n Trưởng phòng\r\n
\r\n
\r\n Thành viên\r\n
\r\n
{{ p.Quoc_Tich }}{{ p.Ten_he }}{{ p.Ten_khoa }}{{ p.Khoa_Lop }}\r\n {{ p.So_tien_phai_dong | number }}\r\n \r\n {{ p.So_tien_da_nop | number }}\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 Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Cho ra khỏi ký túc xá

\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
\r\n
\r\n
\r\n
\r\n \r\n Lưu\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
Ra hạn thời gian ở
\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 Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
Ra hạn thời gian ở
\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 \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
Thông tin chi tiết sinh viê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
\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 \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 \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
\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
\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 Lưu\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
Đổi phòng
\r\n ×\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{ item.name }}\r\n \r\n
\r\n
\r\n \r\n \r\n {{ item.Ten_ToaNha }}\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 Đóng\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

In sổ phòng

\r\n ×\r\n \r\n
\r\n \r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-print-so-phong',\n templateUrl: './print-so-phong.component.html',\n styleUrls: ['./print-so-phong.component.scss'],\n})\nexport class PrintSoPhongComponent implements OnInit {\n @Input() public data: any;\n constructor() {}\n\n ngOnInit(): void {\n console.log(this.data);\n }\n}\n","
\n

{{ element?.Ten_phong }}

\n \n \n \n \n
{{ child?.Ho_ten }}
\n

{{ child?.Ngay_sinh }}

\n

{{ child?.Thong_tin }}

\n

{{ child?.Que_quan }}

\n
\n \n \n\n","import { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-quan-tri-email',\n templateUrl: './quan-tri-email.component.html',\n styleUrls: ['./quan-tri-email.component.scss'],\n})\nexport class QuanTriEmailComponent extends BaseComponent implements OnInit {\n titleModal: any = '';\n ID: number;\n Email: any = '';\n Trang_thai: any = '';\n Mac_dinh: any = '';\n checkInsert: any;\n record: any;\n Insert = new FormGroup({\n Email: new FormControl(null, [Validators.required, Validators.email]),\n Password: new FormControl(null, [Validators.required]),\n PasswordConfirm: new FormControl(null, [Validators.required]),\n Mac_dinh: new FormControl(false),\n Trang_thai: new FormControl(false),\n });\n ngOnInit(): void {\n this.getToken();\n this.getList();\n this.getCount();\n }\n getCount() {\n this.QuanTriEmailService.Count(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n });\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Email: this.Email,\n Trang_thai: this.Trang_thai == '' ? null : this.Trang_thai,\n Mac_dinh: this.Mac_dinh == '' ? null : this.Mac_dinh,\n };\n this.QuanTriEmailService.getList(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n this.QuanTriEmailService.CountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n }\n );\n }\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 10000000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n refesh() {\n this.Email = '';\n this.Trang_thai = false;\n this.Mac_dinh = '';\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n Email: this.Email,\n Trang_thai: this.Trang_thai,\n Mac_dinh: this.Mac_dinh,\n };\n this.QuanTriEmailService.getList(dataFilter, this.Token).subscribe((z) => {\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n } else {\n this.dataTable = z.Data;\n this.spinner.hide();\n }\n });\n }\n open(content, sizm, Loai, Data) {\n this.ID = Data.ID_quan_tri_email;\n this.record = Data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Add') {\n this.titleModal = 'Thêm mới địa chỉ Email';\n this.checkInsert = true;\n this.Insert.get('Email').setValue(null);\n this.Insert.get('Password').setValue(null);\n this.Insert.get('PasswordConfirm').setValue(null);\n this.Insert.get('Mac_dinh').setValue(false);\n } else {\n this.titleModal = 'Sửa địa chỉ Email';\n this.checkInsert = false;\n this.Insert.get('Email').setValue(Data.Email);\n this.Insert.get('Password').setValue(Data.Password);\n this.Insert.get('PasswordConfirm').setValue(Data.Password);\n this.Insert.get('Mac_dinh').setValue(Data.Mac_dinh);\n this.Insert.get('Trang_thai').setValue(Data.Trang_thai);\n }\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n if (this.Insert.value.Password != this.Insert.value.PasswordConfirm) {\n this.toastr.warning('Mật khẩu xác nhận không trùng khớp!');\n return false;\n }\n let req = {\n ID_quan_tri_email: this.ID,\n Email: this.Insert.value.Email,\n Password: this.Insert.value.Password,\n Mac_dinh: this.Insert.value.Mac_dinh,\n Trang_thai: this.Insert.value.Trang_thai,\n };\n if (this.checkInsert) {\n req.Trang_thai = false\n this.QuanTriEmailService.Insert(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getList();\n this.getCount();\n } else if (res.Status == 4) {\n this.toastr.error('Thêm mới thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else {\n if (\n this.record.Da_gui > 0 &&\n this.record.Email != this.Insert.value.Email\n ) {\n this.toastr.warning('Không thể sửa tên Email!');\n return false;\n }\n this.QuanTriEmailService.Update(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getList();\n } else if (res.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n }\n Delete() {\n this.QuanTriEmailService.Delete(this.ID, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n } else if (res.Status == 4) {\n this.toastr.error('Xoá thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n this.modalService.dismissAll('');\n this.getCount();\n this.getList();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n MacDinh() {\n this.QuanTriEmailService.MacDinh(this.ID, true, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getList();\n } else if (res.Status == 4) {\n this.toastr.error('Cập nhật thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Quản trị Email
  4. \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
EmailĐã gửiTrạng tháiMặc địnhThao tác
{{ p.Email }}{{ p.Da_gui | number }}\n

Bị lỗi

\n
\n

Đang hoạt động

\n
\n \n \n \n \n \n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Không phải định dạng Email!\n
\n
\n Email không được bỏ trống!\n
\n
\n
\n
\n  \n Mặc định\n
\n
\n
\n
\n \n \n
\n
\n Mật khẩu không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Mật khẩu không được bỏ trống!\n
\n
\n
\n
\n
\n
\n  \n Mặc định\n
\n
\n  \n Trạng thái\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n Bạn có chắc chắn muốn đặt làm mặc định!\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, from } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n AbstractControl,\n} from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n@Component({\n selector: 'app-quy-dinh-khoan-thu',\n templateUrl: './quy-dinh-khoan-thu.component.html',\n styleUrls: ['./quy-dinh-khoan-thu.component.scss'],\n})\nexport class QuyDinhKhoanThuComponent extends BaseComponent implements OnInit {\n ID_toa_nha_filter: string = '';\n ID_co_so_filter: string = '';\n ID_phong_filter: string = '';\n ID_loai_phong_filter: string = '';\n Tang_filter: string = '';\n Ma_sv_filter: string = '';\n Ho_ten_filter: string = '';\n ID_gioi_tinh_filter: string = '';\n Ngay_sinh_filter: string = '';\n Hoc_ky_filter: string = '';\n Nam_hoc_filter: string = '';\n ID_thu_chi_filter: string = '';\n Thang_filter: string = '';\n Nam_hoc_arr: any = [];\n dataSV: any = [];\n dataSV2: any = [];\n beforeFilter: any = [];\n dataCampus: any = [];\n dataBuilding: any = [];\n dataRoom = [];\n dataCampusAfter: any = [];\n dataBuildingAfter: any = [];\n dataRoomAfter: any = [];\n numberChecked: any;\n numberPage2: any;\n public arrNumberPage2_child: any;\n totalRecord2: any = 0;\n page_sv: any = 1;\n pageSize2: any = 10;\n Display: any = false;\n disable = false;\n Ngay_sinh: any;\n Insert = new FormGroup({\n Hoc_ky: new FormControl(1, [Validators.required]),\n Nam_hoc: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1),\n [Validators.required]\n ),\n Dot: new FormControl(1, [Validators.required, Validators.min(1)]),\n ID_thu_chi: new FormControl('', [Validators.required]),\n So_tien: new FormControl(0, [Validators.required, Validators.min(1)]),\n Ghi_chu: new FormControl(''),\n Thang: new FormControl(''),\n Co_so: new FormControl(''),\n Toa_nha: new FormControl(''),\n Phong: new FormControl(''),\n });\n Ho_ten: any = '';\n Ma_sv: any = '';\n ID_he: any = '';\n ID_khoa: any = '';\n Khoa_hoc: any = '';\n ID_thu_chi: any = '';\n ID_chuyen_nganh: any = '';\n dataLoaiKhoanThu: any = [];\n dataHe: any = [];\n dataKhoa: any = [];\n dataKhoaHoc: any = [];\n dataKhoaHoc2: any = [];\n dataChuyenNganh: any = [];\n dataChuyenNganh2: any = [];\n dataLop: any = [];\n dataLop2: any = [];\n ngOnInit(): void {\n if (new Date().getMonth() + 1 > 8) {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n );\n } else {\n this.Insert.get('Nam_hoc').setValue(\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear()\n );\n }\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.getCount();\n this.getList();\n this.getListCampus();\n this.getLoaiKhoanThu();\n this.getListTypeRoom();\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n getLoaiKhoanThu() {\n this.QuyDinhKhoanThuService.getLoaiKhoanThu(this.Token).subscribe((z) => {\n this.dataLoaiKhoanThu = z.Data;\n });\n }\n getCount() {\n this.QuyDinhKhoanThuService.Count(this.Token).subscribe(\n (z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_toa_nha: this.ID_toa_nha_filter ? this.ID_toa_nha_filter : '',\n ID_co_so: this.ID_co_so_filter ? this.ID_co_so_filter : '',\n ID_phong: this.ID_phong_filter,\n Tang: this.Tang_filter.trim(),\n ID_loai_phong: this.ID_loai_phong_filter,\n Ma_sv: this.Ma_sv_filter.trim(),\n ID_gioi_tinh: this.ID_gioi_tinh_filter,\n Ngay_sinh: this.Ngay_sinh_filter,\n Hoc_ky: this.Hoc_ky_filter,\n Nam_hoc: this.Nam_hoc_filter,\n ID_thu_chi: this.ID_thu_chi_filter,\n Thang: this.Thang_filter,\n };\n this.QuyDinhKhoanThuService.getAll(dataFilter, this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.QuyDinhKhoanThuService.CountFilter(\n dataFilter,\n this.Token\n ).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getCount();\n this.getList();\n }\n handlePageSizeChange2(event) {\n this.page_sv = 1;\n if (event.target.value == 'Tất cả') {\n this.pageSize2 = 100000;\n } else {\n this.pageSize2 = event.target.value;\n }\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.changepage2(1);\n }\n refesh() {\n this.ID_toa_nha_filter = '';\n this.ID_co_so_filter = '';\n this.ID_phong_filter = '';\n this.ID_loai_phong_filter = '';\n this.Tang_filter = '';\n this.Ma_sv_filter = '';\n this.Ho_ten_filter = '';\n this.ID_gioi_tinh_filter = '';\n this.Ngay_sinh_filter = '';\n this.Hoc_ky_filter = '';\n this.Nam_hoc_filter = '';\n this.ID_thu_chi_filter = '';\n this.Thang_filter = '';\n\n this.getCount();\n this.getList();\n }\n next() {\n if (this.dataSV2.filter((x) => x.checked == true).length == 0) {\n this.toastr.warning('Bạn chưa chọn sinh viên');\n return false;\n }\n this.Display = true;\n }\n prev() {\n this.Display = false;\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n ID_toa_nha: this.ID_toa_nha_filter ? this.ID_toa_nha_filter : '',\n ID_co_so: this.ID_co_so_filter ? this.ID_co_so_filter : '',\n ID_phong: this.ID_phong_filter,\n Tang: this.Tang_filter,\n ID_loai_phong: this.ID_loai_phong_filter,\n Ma_sv: this.Ma_sv_filter,\n ID_gioi_tinh: this.ID_gioi_tinh_filter,\n Ngay_sinh: this.Ngay_sinh_filter,\n Hoc_ky: this.Hoc_ky_filter,\n Nam_hoc: this.Nam_hoc_filter,\n ID_thu_chi: this.ID_thu_chi_filter,\n Thang: this.Thang_filter,\n };\n this.QuyDinhKhoanThuService.getAll(dataFilter, this.Token).subscribe(\n (z) => {\n this.dataTable = z.Data;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n open(content, sizm, category, Data) {\n if (category == 'DeleteM') {\n this.numberChecked = this.dataTable.filter((x) => x.checked == true);\n if (this.numberChecked.length == 0) {\n this.toastr.warning('Bạn chưa chọn sinh viên!');\n return false;\n }\n }\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.dataPopup = Data;\n }\n openModal(content, sizm, category, Data) {\n this.Insert.get('Dot').setValue(1);\n this.Insert.get('Thang').setValue('');\n this.Insert.get('ID_thu_chi').setValue('');\n this.Insert.get('So_tien').setValue(0);\n this.Insert.get('Toa_nha').setValue('');\n this.Insert.get('Phong').setValue('');\n\n this.dataSV2 = [];\n this.Display = false;\n this.submitted = false;\n this.Ngay_sinh = '';\n this.Ma_sv = '';\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.dataPopup = Data;\n if (category == 'Insert') {\n this.page_sv = 1;\n this.CampusService.getList(this.Token).subscribe((z) => {\n this.dataCampus = z.Data;\n this.Insert.get('Co_so').setValue(z.Data[0].ID);\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuildingAfter = z.Data;\n this.dataBuilding = z.Data.filter(\n (x) => x.ID_CoSo == this.Insert.value.Co_so\n );\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoomAfter = z.Data;\n });\n });\n });\n this.getHoSoSV();\n this.getHeKhoaKhoa();\n }\n }\n changeCampusInsert() {\n this.dataBuilding = this.dataBuildingAfter.filter(\n (x) => x.ID_CoSo == this.Insert.value.Co_so\n );\n this.Insert.get('Toa_nha').setValue(this.dataBuilding[0].ID_CoSo);\n this.dataRoom = this.dataRoomAfter.filter(\n (x) => x.ID_Toa_Nha == this.Insert.value.Toa_nha\n );\n this.Insert.get('Phong').setValue('');\n }\n changeBuildingInsert() {\n this.dataRoom = this.dataRoomAfter.filter(\n (x) => x.ID_Toa_Nha == this.Insert.value.Toa_nha\n );\n this.Insert.get('Phong').setValue('');\n }\n getHeKhoaKhoa() {\n this.spinner.show();\n let IDhe;\n let IDKhoahoc;\n this.QuyDinhKhoanThuService.getHe(this.Token).subscribe((z) => {\n this.dataHe = z;\n IDhe = z[0].ID_he;\n this.QuyDinhKhoanThuService.getKhoa(this.Token).subscribe((z) => {\n this.dataKhoa = z;\n this.QuyDinhKhoanThuService.getKhoaHoc(this.Token).subscribe((z) => {\n this.dataKhoaHoc = z.Data;\n this.dataKhoaHoc2 = this.dataKhoaHoc.filter((i) => i.ID_he == IDhe);\n this.dataKhoaHoc2 = this.dataKhoaHoc2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.Khoa_hoc === item.Khoa_hoc) === i\n );\n\n this.QuyDinhKhoanThuService.getLop(this.Token).subscribe((z) => {\n this.dataChuyenNganh = z;\n this.dataChuyenNganh2 = this.dataChuyenNganh;\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (i) => i.ID_he == IDhe\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex(\n (t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh\n ) === i\n );\n this.dataLop = z;\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == IDhe);\n });\n this.spinner.hide();\n });\n });\n });\n }\n changeHe() {\n this.dataKhoaHoc2 = this.dataKhoaHoc.filter((i) => i.ID_he == this.ID_he);\n this.dataKhoaHoc2 = this.dataKhoaHoc2.filter(\n (item, i, arr) => arr.findIndex((t) => t.Khoa_hoc === item.Khoa_hoc) === i\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh.filter(\n (i) => i.ID_he == this.ID_he\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh) === i\n );\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n }\n changeKhoa() {\n if (this.ID_khoa != '') {\n this.dataKhoaHoc2 = this.dataKhoaHoc.filter((i) => i.ID_he == this.ID_he);\n this.dataKhoaHoc2 = this.dataKhoaHoc2.filter(\n (i) => i.ID_khoa == this.ID_khoa\n );\n this.dataKhoaHoc2 = this.dataKhoaHoc2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.Khoa_hoc === item.Khoa_hoc) === i\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh.filter(\n (i) => i.ID_he == this.ID_he\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (i) => i.ID_khoa == this.ID_khoa\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh) === i\n );\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n this.dataLop2 = this.dataLop2.filter((i) => i.ID_khoa == this.ID_khoa);\n } else {\n this.dataKhoaHoc2 = this.dataKhoaHoc.filter((i) => i.ID_he == this.ID_he);\n this.dataKhoaHoc2 = this.dataKhoaHoc2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.Khoa_hoc === item.Khoa_hoc) === i\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh.filter(\n (i) => i.ID_he == this.ID_he\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh) === i\n );\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n }\n }\n changeKhoaHoc() {\n if (this.Khoa_hoc != '') {\n this.dataChuyenNganh2 = this.dataChuyenNganh.filter(\n (i) => i.ID_he == this.ID_he\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (i) => i.ID_khoa == this.ID_khoa\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (i) => i.Khoa_hoc == parseInt(this.Khoa_hoc)\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh) === i\n );\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n this.dataLop2 = this.dataLop2.filter((i) => i.ID_khoa == this.ID_khoa);\n this.dataLop2 = this.dataLop2.filter(\n (i) => i.Khoa_hoc == parseInt(this.Khoa_hoc)\n );\n } else {\n this.dataChuyenNganh2 = this.dataChuyenNganh.filter(\n (i) => i.ID_he == this.ID_he\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (i) => i.ID_khoa == this.ID_khoa\n );\n this.dataChuyenNganh2 = this.dataChuyenNganh2.filter(\n (item, i, arr) =>\n arr.findIndex((t) => t.ID_chuyen_nganh === item.ID_chuyen_nganh) === i\n );\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n this.dataLop2 = this.dataLop2.filter((i) => i.ID_khoa == this.ID_khoa);\n }\n }\n changeChuyenNganh() {\n if (this.ID_chuyen_nganh != '') {\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n this.dataLop2 = this.dataLop2.filter((i) => i.ID_khoa == this.ID_khoa);\n this.dataLop2 = this.dataLop2.filter(\n (i) => i.Khoa_hoc == parseInt(this.Khoa_hoc)\n );\n this.dataLop2 = this.dataLop2.filter(\n (i) => i.ID_chuyen_nganh == this.ID_chuyen_nganh\n );\n } else {\n this.dataLop2 = this.dataLop.filter((i) => i.ID_he == this.ID_he);\n this.dataLop2 = this.dataLop2.filter((i) => i.ID_khoa == this.ID_khoa);\n this.dataLop2 = this.dataLop2.filter(\n (i) => i.Khoa_hoc == parseInt(this.Khoa_hoc)\n );\n }\n }\n getHoSoSV() {\n this.spinner.show();\n this.QuyDinhKhoanThuService.getListSV(this.Token).subscribe((z) => {\n this.dataSV = z.Data;\n this.totalRecord2 = z.Data.length;\n this.beforeFilter = z.Data;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.dataSV2 = z.Data.filter((x) => 0 < x.STT && x.STT <= this.pageSize2);\n this.spinner.hide();\n });\n }\n checkAllCheckBox2(ev) {\n this.dataSV2.forEach((x) => (x.checked = ev.target.checked));\n }\n isAllCheckBoxChecked2() {\n if (this.dataSV2 != undefined) return this.dataSV2.every((p) => p.checked);\n }\n changepage2(event: any) {\n this.spinner.show();\n if (event == 'pre') {\n this.page_sv = this.page_sv - 1;\n } else if (event == 'next') {\n this.page_sv = this.page_sv + 1;\n } else {\n this.page_sv = event;\n this.arrNumberPage2_child = [];\n for (var i = event - 3; i <= event + 3; i++) {\n if (i > 0 && i <= this.numberPage2) {\n this.arrNumberPage2_child.push(i);\n }\n }\n }\n this.dataSV2 = this.dataSV.filter(\n (x) =>\n this.pageSize2 * (this.page_sv - 1) < x.STT &&\n x.STT <= this.pageSize2 * this.page_sv\n );\n\n this.spinner.hide();\n }\n filterModal() {\n this.dataSV = this.beforeFilter;\n if (this.ID_he != '') {\n this.dataSV = this.dataSV.filter((x) => x.ID_he == this.ID_he);\n }\n if (this.ID_khoa != '') {\n this.dataSV = this.dataSV.filter((x) => x.ID_khoa == this.ID_khoa);\n }\n if (this.Khoa_hoc != '') {\n this.dataSV = this.dataSV.filter((x) => x.Khoa_hoc == this.Khoa_hoc);\n }\n if (this.ID_chuyen_nganh != '') {\n this.dataSV = this.dataSV.filter(\n (x) => x.ID_chuyen_nganh == this.ID_chuyen_nganh\n );\n }\n\n if (this.Ma_sv != '') {\n let a = this.dataSV;\n let b = this.dataSV;\n if (a != []) {\n a = this.dataSV.filter((i) => i.Ma_sv.includes(this.Ma_sv.trim()));\n }\n if (b != []) {\n b = this.dataSV.filter((i) =>\n this.xoa_dau(i.Ho_ten.toLowerCase()).includes(\n this.xoa_dau(this.Ma_sv.trim().toLowerCase())\n )\n );\n }\n this.dataSV = [];\n if (a.length != 0) {\n a.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n if (b.length != 0) {\n b.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n }\n if (\n this.Ngay_sinh != undefined &&\n this.Ngay_sinh != null &&\n this.Ngay_sinh != ''\n ) {\n this.dataSV = this.dataSV.filter(\n (x) => x.Ngay_sinh.toString().substring(0, 10) == this.Ngay_sinh\n );\n }\n for (var j = 0; j < this.dataSV.length; j++) {\n this.dataSV[j].STT = j + 1;\n }\n this.totalRecord2 = this.dataSV.length;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.changepage2(1);\n }\n onSubmit() {}\n buttonMultiDelete() {\n this.spinner.show();\n let arr = [];\n for (var i = 0; i < this.numberChecked.length; i++) {\n let req = {\n Hoc_ky: this.numberChecked[i].Hoc_ky,\n Nam_hoc: this.numberChecked[i].Nam_hoc,\n Dot: this.numberChecked[i].Dot,\n ID_sv: this.numberChecked[i].ID_sv,\n ID_thu_chi: this.numberChecked[i].ID_thu_chi,\n ID_mon: this.numberChecked[i].ID_mon,\n Thang: this.numberChecked[i].Thang,\n };\n arr.push(req);\n }\n this.QuyDinhKhoanThuService.MultiDelete(arr, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n\n this.getCount();\n this.getList();\n this.modalService.dismissAll();\n this.spinner.hide();\n }\n changeRoom() {\n this.getListRoom(this.ID_toa_nha_filter);\n }\n Delete() {\n this.spinner.show();\n let req = {\n Hoc_ky: this.dataPopup.Hoc_ky,\n Nam_hoc: this.dataPopup.Nam_hoc,\n Dot: this.dataPopup.Dot,\n ID_sv: this.dataPopup.ID_sv,\n ID_thu_chi: this.dataPopup.ID_thu_chi,\n ID_mon: this.dataPopup.ID_mon,\n Thang: this.dataPopup.Thang,\n };\n this.QuyDinhKhoanThuService.Delete(req, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.getCount();\n this.getList();\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll();\n\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n changeKhoanThu() {\n let filter = this.dataLoaiKhoanThu.filter(\n (x) => x.ID_thu_chi == this.Insert.value.ID_thu_chi\n );\n if (\n filter[0].Khoan_tien_dien == true ||\n filter[0].Khoan_tien_nuoc == true\n ) {\n this.disable = false;\n } else {\n this.disable = true;\n }\n }\n save() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n if (!this.disable && this.Insert.value.Thang == '') {\n this.toastr.warning('Bạn chưa chọn tháng!');\n return false;\n } else if (!this.disable && this.Insert.value.Phong == '') {\n this.toastr.warning('Bạn chưa chọn phòng!');\n return false;\n }\n this.spinner.show();\n let arr = [];\n let dataChecked = this.dataSV2.filter((x) => x.checked == true);\n for (var i = 0; i < dataChecked.length; i++) {\n let req = {\n ID_sv: dataChecked[i].ID_sv,\n Hoc_ky: this.Insert.value.Hoc_ky,\n Nam_hoc: this.Insert.value.Nam_hoc,\n Dot: this.Insert.value.Dot,\n ID_thu_chi: this.Insert.value.ID_thu_chi,\n So_tien: this.Insert.value.So_tien,\n Ghi_chu: this.Insert.value.Ghi_chu,\n ID_lop: dataChecked[i].ID_lop,\n Thang: this.Insert.value.Thang == '' ? 0 : this.Insert.value.Thang,\n ID_phong: this.Insert.value.Phong == '' ? 0 : this.Insert.value.Phong,\n };\n arr.push(req);\n }\n this.QuyDinhKhoanThuService.MultiInsert(arr, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.getCount();\n this.getList();\n } else {\n this.toastr.error(z.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n this.modalService.dismissAll();\n this.spinner.hide();\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Quy định khoản thu
  4. \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n Tất cả\n 1\n 2\n 3\n \n
\n
\n \n \n Tất cả\n {{\n p.name\n }}\n \n
\n
\n \n \n Tất cả\n 1\n 2\n 3\n 4\n 5\n 6\n 7\n 8\n 9\n 10\n 11\n 12\n \n
\n
\n \n \n Tất cả\n {{ element.Ten_thu_chi }}\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n Chọn tòa nhà\n {{\n i.Ten_ToaNha\n }}\n \n
\n
\n \n \n
\n
\n \n \n Chọn phòng\n {{\n i.Ten_phong\n }}\n \n
\n
\n \n \n Tất cả\n {{ p.Ten_loai_phong }}\n \n \n
\n
\n \n \n Tất cả\n Nam\n Nữ\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n
\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ và tênGiới tínhNgày sinhHọc kỳNăm họcĐợtThángTòa nhà - PhòngSố tháng ởTên khoản thuSố tiền\n
Ghi chú
\n
Ngày cập nhậtThao tác
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}NữNam{{ p.Ngay_sinh }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Dot }}{{ p.Thang }}\n {{ p.Ten_toa_nha }}-{{ p.Ten_phong }}\n {{ p.So_thang_o }}{{ p.Ten_thu_chi }}{{ p.So_tien | number }}{{ p.Ghi_chu }}\n {{ p.Ngay_cap_nhat | date: 'dd/MM/yyyy' }}\n \n \n
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn chắc chắn muốn xóa {{ numberChecked.length }} sinh viên\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n
\n
    \n
  • Chọn sinh viên
  • \n
  • \n Quy định khoản thu\n
  • \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã SVTên sinh viênGiới tínhNgày sinh
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}NamNữ\n {{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}\n
\n
\n
\n
\n

\n Tổng số bản ghi: {{ totalRecord2 | number }}\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n 1\n 2\n 3\n \n
\n
\n Học kỳ không được bỏ trống!\n
\n
\n
\n
\n \n \n {{\n p.name\n }}\n \n
\n
\n Năm học không được bỏ trống!\n
\n
\n
\n
\n \n \n 1\n 2\n 3\n 4\n 5\n 6\n 7\n 8\n 9\n 10\n \n
\n
\n Đợt không được bỏ trống!\n
\n
\n Đợt không được nhỏ hơn 1!\n
\n
\n
\n
\n \n \n Chọn tháng\n 1\n 2\n 3\n 4\n 5\n 6\n 7\n 8\n 9\n 10\n 11\n 12\n \n
\n
\n \n \n Chọn loại khoản thu\n {{ element.Ten_thu_chi }}\n \n \n
\n
\n Loại khoản thu không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Số tiền không được bỏ trống!\n
\n
\n Số tiền phải lớn hơn 0!\n
\n
\n
\n
\n \n \n {{value.name}}\n \n
\n
\n \n \n Chọn toà nhà\n {{value.Ten_ToaNha}}\n \n
\n
\n \n \n Chọn phòng\n {{value.Ten_phong}}\n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport * as XLSX from 'xlsx';\r\nimport { BaseComponent } from '../base/base.component';\r\nimport { AnyMxRecord } from 'dns';\r\nimport { debug } from 'console';\r\n\r\n@Component({\r\n selector: 'app-register-dorm',\r\n templateUrl: './register-dorm.component.html',\r\n styleUrls: ['./register-dorm.component.scss'],\r\n})\r\nexport class RegisterDormComponent extends BaseComponent implements OnInit {\r\n Token: string;\r\n Res: any;\r\n req: any;\r\n check: any;\r\n dataTable: any = [];\r\n dataPhongKTX: any = [];\r\n dataDanToc: any = [];\r\n dataLoaiPhong: any = [];\r\n dataQuocTich: any = [];\r\n SelectData: any = [];\r\n dataDoiTuongChinhSach: any = [];\r\n dataKhuVucTuyenSinh: any = [];\r\n ClassData: any;\r\n ID_dang_ky: any;\r\n ID_doi_tuong: any;\r\n code: any;\r\n Ghi_chu: any;\r\n Ngay_cap_the: any;\r\n Ngay_bat_dau: any;\r\n Ngay_ket_thuc: any;\r\n La_truong_phong: any;\r\n Ten_trang_thai_o: any;\r\n Ten_trang_thai_the: any;\r\n Ten_trang_thai_duyet: any;\r\n Trang_thai_duyet: any;\r\n Ma_sv: any;\r\n Mo_ta: any;\r\n Ho_ten: any;\r\n Ngay_sinh: any;\r\n ID_gioi_tinh: any;\r\n Ten_gioi_tinh: any;\r\n id_he_nhap_hoc: any;\r\n He_nhap_hoc: any;\r\n ID_quoc_tich: any;\r\n Ten_quoc_tich: any;\r\n ID_dan_toc: any;\r\n Ten_dan_toc: any;\r\n CMND: any;\r\n Ngay_cap_CMND: any;\r\n ID_noi_cap_CMND: any;\r\n Ton_giao: any;\r\n So_ho_chieu: any;\r\n Ngay_het_han_visa: any;\r\n Dia_chi_tt: any;\r\n ID_khoa_nhap_hoc: any;\r\n Ten_khoa_nhap_hoc: any;\r\n Khoa_hoc_nhap_hoc: any;\r\n ID_chuyen_nganh_nhap_hoc: any;\r\n Ten_chuyen_nganh_nhap_hoc: any;\r\n ID_nganh_nhap_hoc: any;\r\n ID_loai_phong: any;\r\n Ten_nganh_nhap_hoc: any;\r\n Lop: any;\r\n Dienthoai_canhan: any;\r\n Email: any;\r\n Ho_ten_cha: any;\r\n Namsinh_cha: any;\r\n Hoat_dong_XH_CT_cha: any;\r\n Ho_ten_me: any;\r\n Namsinh_me: any;\r\n Hoat_dong_XH_CT_me: any;\r\n NoiO_hiennay: any;\r\n So_dien_thoai_bo: any;\r\n So_dien_thoai_me: any;\r\n titleModal: string;\r\n dataStudent: any;\r\n dataStudent_Search: any;\r\n ID_sv: any;\r\n ID_kv: any;\r\n ID_dt: any;\r\n ID_doi_tuong_TS: any;\r\n ID_khu_vuc_TS: any;\r\n Hoc_ky: any;\r\n Ly_do: any;\r\n Nam_hoc: any;\r\n default: any;\r\n ckicked: any;\r\n title = 'read-excel-in-angular8';\r\n storeData: any;\r\n csvData: any;\r\n jsonData: any;\r\n textData: any;\r\n htmlData: any;\r\n fileUploaded: File;\r\n worksheet: any;\r\n dataPhongByID: any;\r\n Ma_loai_phong: any;\r\n Con_trong_lp: any;\r\n Dang_o_lp: any;\r\n Gia_loai_phong: any;\r\n Mo_ta_lp: any;\r\n Suc_chua_lp: any;\r\n Ten_loai_phong: any;\r\n Gia_phong: any;\r\n Nam_hoc_arr: any = [];\r\n uploadedFile(event) {\r\n this.fileUploaded = event.target.files[0];\r\n this.readExcel();\r\n }\r\n\r\n readExcel() {\r\n let readFile = new FileReader();\r\n readFile.onload = (e) => {\r\n this.storeData = readFile.result;\r\n var data = new Uint8Array(this.storeData);\r\n var arr = new Array();\r\n for (var i = 0; i != data.length; ++i)\r\n arr[i] = String.fromCharCode(data[i]);\r\n var bstr = arr.join('');\r\n var workbook = XLSX.read(bstr, { type: 'binary' });\r\n var first_sheet_name = workbook.SheetNames[0];\r\n this.worksheet = workbook.Sheets[first_sheet_name];\r\n };\r\n readFile.readAsArrayBuffer(this.fileUploaded);\r\n }\r\n datatableElement: DataTableDirective;\r\n checkInsert: boolean;\r\n getNull = false;\r\n submitted = false;\r\n NameTitle: string;\r\n Title: string = 'Đang tải cơ sở...';\r\n TitleClass: string = 'spinner-border text-muted';\r\n Request: any;\r\n InputDatas: any;\r\n HuyDuyetRow: any;\r\n TuChoiRow: any;\r\n DuyetDKRow: any;\r\n InputDatas_Update: any;\r\n InputDatas_Student: any;\r\n Insert = new FormGroup({\r\n ID_doi_tuong: new FormControl(1, [Validators.required]),\r\n ID_dang_ky: new FormControl(0, []),\r\n code: new FormControl(null, []),\r\n ID_phong: new FormControl(null, []),\r\n Trang_thai_the: new FormControl(0, []),\r\n Trang_thai_o: new FormControl(0, []),\r\n Trang_thai_duyet: new FormControl(0, []),\r\n So_the: new FormControl(null, [Validators.required]),\r\n Ngay_cap_the: new FormControl(null, []),\r\n Ghi_chu: new FormControl(null, []),\r\n La_truong_phong: new FormControl(null, []),\r\n ID_sv: new FormControl(0, []),\r\n Ma_sv: new FormControl(null, []),\r\n Ho_ten: new FormControl(null, []),\r\n Ngay_sinh: new FormControl(null, []),\r\n ID_gioi_tinh: new FormControl(2, []),\r\n Ten_gioi_tinh: new FormControl(null, []),\r\n id_he_nhap_hoc: new FormControl(0, []),\r\n He_nhap_hoc: new FormControl(null, []),\r\n ID_quoc_tich: new FormControl(0, []),\r\n Ten_quoc_tich: new FormControl(null, []),\r\n ID_dan_toc: new FormControl(0, []),\r\n Ten_dan_toc: new FormControl(null, []),\r\n CMND: new FormControl(null, []),\r\n Ngay_cap_CMND: new FormControl(null, []),\r\n ID_noi_cap_CMND: new FormControl(0, []),\r\n Ton_giao: new FormControl(null, []),\r\n So_ho_chieu: new FormControl(null, []),\r\n Ngay_het_han_visa: new FormControl(null, []),\r\n Dia_chi_tt: new FormControl(null, []),\r\n ID_khoa_nhap_hoc: new FormControl(0, []),\r\n Ten_khoa_nhap_hoc: new FormControl(null, []),\r\n Khoa_hoc_nhap_hoc: new FormControl(0, []),\r\n ID_chuyen_nganh_nhap_hoc: new FormControl(0, []),\r\n Ten_chuyen_nganh_nhap_hoc: new FormControl(null, []),\r\n ID_nganh_nhap_hoc: new FormControl(0, []),\r\n Ten_nganh_nhap_hoc: new FormControl(null, []),\r\n Lop: new FormControl(null, []),\r\n Dienthoai_canhan: new FormControl(null, []),\r\n Email: new FormControl(null, []),\r\n Ho_ten_cha: new FormControl(null, []),\r\n Namsinh_cha: new FormControl(null, []),\r\n Hoat_dong_XH_CT_cha: new FormControl(null, []),\r\n Ho_ten_me: new FormControl(null, []),\r\n Namsinh_me: new FormControl(null, []),\r\n Hoat_dong_XH_CT_me: new FormControl(null, []),\r\n NoiO_hiennay: new FormControl(null, []),\r\n So_dien_thoai_bo: new FormControl(null, []),\r\n So_dien_thoai_me: new FormControl(null, []),\r\n Tinh_trang_suc_khoe: new FormControl(null, []),\r\n Nguyen_vong: new FormControl(null, []),\r\n ID_kv: new FormControl(0, []),\r\n ID_dt: new FormControl(0, []),\r\n ID_doi_tuong_TS: new FormControl(0, []),\r\n ID_khu_vuc_TS: new FormControl(0, []),\r\n Hoc_ky: new FormControl(null, []),\r\n Nam_hoc: new FormControl(null, []),\r\n Loai_phong: new FormControl(0, []),\r\n ID_lop: new FormControl(0, []),\r\n });\r\n FillMaSV: any;\r\n FillHoTen: any;\r\n FillLoaiPhong: any = '';\r\n FillTrangThaiDangKy: any = 0;\r\n FillTrangThaiO: any = '';\r\n FillNgaySinh: any;\r\n dataTypeRoom: any;\r\n dataTypeRoomGioiTinh: any;\r\n dataHe: any;\r\n dataKhoa: any;\r\n FillDoiTuong: any = '';\r\n FillTuNgay: any;\r\n FillDenNgay: any;\r\n FillGioiTinh: any = '';\r\n FillHe: any = '';\r\n FillKhoa: any = '';\r\n FillKhoaHoc: any;\r\n public com: common;\r\n ngOnInit(): void {\r\n var yearNow = new Date().getFullYear() + 4;\r\n for (var i = 0; i < 10; i++) {\r\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\r\n let object = {\r\n value: Nam_hoc_string,\r\n name: Nam_hoc_string,\r\n };\r\n this.Nam_hoc_arr.push(object);\r\n yearNow--;\r\n }\r\n var getMonth = new Date().getMonth() + 1;\r\n if (getMonth > 8) {\r\n this.Nam_hoc =\r\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\r\n } else {\r\n this.Nam_hoc =\r\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\r\n }\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.getListSVTuDongHuyDK();\r\n this.GetDanToc();\r\n this.GetQuocTich();\r\n this.GetDoiTuongChinhSach();\r\n this.GetKhuVucTuyenSinh();\r\n this.getHeNhapHoc();\r\n this.getKhoaNhapHoc();\r\n this.getListTypeRoom();\r\n this.FillTuNgay = new Date().toISOString().substring(0, 10);\r\n this.FillDenNgay = new Date().toISOString().substring(0, 10);\r\n }\r\n getCount() {\r\n this.RegisterDormService.getCount(this.Token).subscribe((z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n });\r\n }\r\n getListFirst() {\r\n this.spinner.show();\r\n this.page = 1;\r\n this.arrNumberPage = [];\r\n this.arrNumberPage_chil = [];\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Ma_sv: this.FillMaSV,\r\n Ho_ten: this.FillHoTen,\r\n Ngay_sinh: this.FillNgaySinh,\r\n ID_loai_phong: this.FillLoaiPhong,\r\n Trang_thai_duyet: this.FillTrangThaiDangKy,\r\n Ten_he: this.FillHe,\r\n Ten_khoa: this.FillKhoa,\r\n Khoa_hoc: this.FillKhoaHoc,\r\n ID_doi_tuong_TS: this.FillDoiTuong,\r\n ID_gioi_tinh: this.FillGioiTinh,\r\n Nam_hoc: this.Nam_hoc,\r\n Trang_thai_o: this.FillTrangThaiO,\r\n };\r\n this.RegisterDormService.getListAll(param, this.Token).subscribe(\r\n (z) => {\r\n this.dataTable = z.Data;\r\n this.getCount();\r\n this.RegisterDormService.getCountFilter(param, this.Token).subscribe(\r\n (z) => {\r\n this.spinner.hide();\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n }\r\n );\r\n },\r\n (err) => {\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n getList() {\r\n this.spinner.show();\r\n this.page = 1;\r\n this.arrNumberPage = [];\r\n this.arrNumberPage_chil = [];\r\n\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Ma_sv: this.FillMaSV,\r\n Ho_ten: this.FillHoTen,\r\n Ngay_sinh: this.FillNgaySinh,\r\n ID_loai_phong: this.FillLoaiPhong,\r\n Trang_thai_duyet: this.FillTrangThaiDangKy,\r\n Ten_he: this.FillHe,\r\n Ten_khoa: this.FillKhoa,\r\n Khoa_hoc: this.FillKhoaHoc,\r\n ID_doi_tuong_TS: this.FillDoiTuong,\r\n ID_gioi_tinh: this.FillGioiTinh,\r\n Nam_hoc: this.Nam_hoc,\r\n Trang_thai_o: this.FillTrangThaiO,\r\n };\r\n this.RegisterDormService.getListAll(param, this.Token).subscribe(\r\n (z) => {\r\n this.dataTable = z.Data;\r\n this.RegisterDormService.getCountFilter(param, this.Token).subscribe(\r\n (z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n }\r\n );\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n refesh() {\r\n this.FillMaSV = '';\r\n this.FillHoTen = '';\r\n this.FillNgaySinh = '';\r\n this.FillLoaiPhong = '';\r\n this.FillTrangThaiDangKy = '';\r\n this.FillHe = '';\r\n this.FillKhoa = '';\r\n this.FillKhoaHoc = '';\r\n this.FillDoiTuong = '';\r\n this.FillGioiTinh = '';\r\n this.FillTrangThaiO = '';\r\n\r\n this.getList();\r\n }\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Ma_sv: this.FillMaSV,\r\n Ho_ten: this.FillHoTen,\r\n Ngay_sinh: this.FillNgaySinh,\r\n ID_loai_phong: this.FillLoaiPhong,\r\n Trang_thai_duyet: this.FillTrangThaiDangKy,\r\n Ten_he: this.FillHe,\r\n Ten_khoa: this.FillKhoa,\r\n Khoa_hoc: this.FillKhoaHoc,\r\n ID_doi_tuong_TS: this.FillDoiTuong,\r\n ID_gioi_tinh: this.FillGioiTinh,\r\n Nam_hoc: this.Nam_hoc,\r\n Trang_thai_o: this.FillTrangThaiO,\r\n };\r\n this.RegisterDormService.getListAll(param, this.Token).subscribe((z) => {\r\n this.dataTable = z.Data;\r\n this.spinner.hide();\r\n });\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n getListSVTuDongHuyDK() {\r\n this.spinner.show();\r\n this.RegisterDormService.getListSVQuaHanDongTien(this.Token).subscribe(\r\n (z) => {\r\n this.getListFirst();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n open(content, sizm, Loai, Data) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n if (Loai == 'Edit') {\r\n this.getListTypeRoomGioiTinh(Data.ID_gioi_tinh, Data.ID_sv);\r\n this.titleModal = 'Sửa đăng ký';\r\n this.checkInsert = true;\r\n this.check = Data.code;\r\n this.Trang_thai_duyet = Data.Trang_thai_duyet;\r\n this.Insert.patchValue({\r\n ID_dang_ky: Data.ID_dang_ky,\r\n ID_sv: Data.ID_sv,\r\n Ma_sv: Data.Ma_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Ngay_sinh:\r\n Data.Ngay_sinh == null ? '' : Data.Ngay_sinh.substring(0, 10),\r\n ID_gioi_tinh: Data.ID_gioi_tinh,\r\n CMND: Data.CMND,\r\n Ngay_cap_CMND:\r\n Data.Ngay_cap_CMND == null ? '' : Data.Ngay_cap_CMND.substring(0, 10),\r\n ID_noi_cap_CMND: Data.ID_noi_cap_CMND,\r\n Ton_giao: Data.Ton_giao,\r\n So_ho_chieu: Data.So_ho_chieu,\r\n Ngay_het_han_visa:\r\n Data.Ngay_het_han_visa == null\r\n ? ''\r\n : Data.Ngay_het_han_visa.substring(0, 10),\r\n Dienthoai_canhan: Data.Dienthoai_canhan,\r\n Email: Data.Email,\r\n Dia_chi_tt: Data.Dia_chi_tt,\r\n ID_dan_toc: Data.ID_dan_toc,\r\n ID_quoc_tich: Data.ID_quoc_tich,\r\n Ho_ten_cha: Data.Ho_ten_cha,\r\n Namsinh_cha: Data.Namsinh_cha,\r\n Hoat_dong_XH_CT_cha: Data.Hoat_dong_XH_CT_cha,\r\n So_dien_thoai_bo: Data.So_dien_thoai_bo,\r\n Ho_ten_me: Data.Ho_ten_me,\r\n Namsinh_me: Data.Namsinh_me,\r\n Hoat_dong_XH_CT_me: Data.Hoat_dong_XH_CT_me,\r\n So_dien_thoai_me: Data.So_dien_thoai_me,\r\n NoiO_hiennay: Data.NoiO_hiennay,\r\n He_nhap_hoc: Data.He_nhap_hoc,\r\n Ten_khoa_nhap_hoc: Data.Ten_khoa_nhap_hoc,\r\n Khoa_hoc_nhap_hoc: Data.Khoa_hoc_nhap_hoc,\r\n Ten_nganh_nhap_hoc: Data.Ten_nganh_nhap_hoc,\r\n Ten_chuyen_nganh_nhap_hoc: Data.Ten_chuyen_nganh_nhap_hoc,\r\n Lop: Data.Lop,\r\n So_the: Data.So_the,\r\n Ngay_cap_the:\r\n Data.Ngay_cap_the == null ? '' : Data.Ngay_cap_the.substring(0, 10),\r\n Ghi_chu: Data.Ghi_chu,\r\n ID_dt: Data.ID_doi_tuong_TS,\r\n ID_kv: Data.ID_khu_vuc_TS,\r\n Loai_phong: Data.ID_loai_phong,\r\n Tinh_trang_suc_khoe: Data.Tinh_trang_suc_khoe,\r\n Nguyen_vong: Data.Nguyen_vong,\r\n ID_doi_tuong: Data.ID_doi_tuong,\r\n Hoc_ky: Data.Hoc_ky,\r\n Nam_hoc: Data.Nam_hoc,\r\n ID_lop: Data.ID_lop,\r\n });\r\n } else if (Loai == 'Add') {\r\n this.titleModal = 'Đăng ký ký túc xá cho sinh viên';\r\n this.checkInsert = false;\r\n this.dataTypeRoomGioiTinh = this.dataTypeRoom;\r\n this.GetAll();\r\n } else if (Loai == 'Delete') {\r\n this.ID_dang_ky = Data.ID_dang_ky;\r\n this.Trang_thai_duyet = Data.Trang_thai_duyet;\r\n } else if (Loai == 'View') {\r\n this.dataPhongByID = this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n );\r\n this.Ma_loai_phong = this.dataPhongByID[0].Ma_loai_phong;\r\n this.Con_trong_lp = this.dataPhongByID[0].Con_trong;\r\n this.Dang_o_lp = this.dataPhongByID[0].Dang_o;\r\n this.Gia_loai_phong = this.dataPhongByID[0].Gia_phong;\r\n this.Mo_ta_lp = this.dataPhongByID[0].Mo_ta;\r\n this.Suc_chua_lp = this.dataPhongByID[0].Suc_chua;\r\n this.Ten_loai_phong = this.dataPhongByID[0].Ten_loai_phong;\r\n } else if (Loai == 'huyDuyet') {\r\n this.dataPhongByID = this.dataTypeRoom.filter(\r\n (x) => x.ID == Data.ID_loai_phong\r\n );\r\n this.HuyDuyetRow = {\r\n ID_dang_ky: Data.ID_dang_ky,\r\n ID_sv: Data.ID_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Trang_thai_duyet: Data.Trang_thai_duyet,\r\n Hoc_ky: Data.Hoc_ky,\r\n Nam_hoc: Data.Nam_hoc,\r\n Trang_thai_o: Data.Trang_thai_o,\r\n Ma_loai_phong: this.dataPhongByID[0].Ma_loai_phong,\r\n Ten_loai_phong: this.dataPhongByID[0].Ten_loai_phong,\r\n Email: Data.Email,\r\n };\r\n } else if (Loai == 'tuChoi') {\r\n this.dataPhongByID = this.dataTypeRoom.filter(\r\n (x) => x.ID == Data.ID_loai_phong\r\n );\r\n this.TuChoiRow = {\r\n ID_dang_ky: Data.ID_dang_ky,\r\n ID_sv: Data.ID_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Trang_thai_duyet: Data.Trang_thai_duyet,\r\n Hoc_ky: Data.Hoc_ky,\r\n Nam_hoc: Data.Nam_hoc,\r\n Trang_thai_o: Data.Trang_thai_o,\r\n Email: Data.Email,\r\n Ma_loai_phong: this.dataPhongByID[0].Ma_loai_phong,\r\n Ten_loai_phong: this.dataPhongByID[0].Ten_loai_phong,\r\n };\r\n } else if (Loai == 'DuyetDK') {\r\n this.dataPhongByID = this.dataTypeRoom.filter(\r\n (x) => x.ID == Data.ID_loai_phong\r\n );\r\n this.DuyetDKRow = {\r\n ID_dang_ky: Data.ID_dang_ky,\r\n ID_sv: Data.ID_sv,\r\n Ho_ten: Data.Ho_ten,\r\n Trang_thai_duyet: Data.Trang_thai_duyet,\r\n Hoc_ky: Data.Hoc_ky,\r\n Nam_hoc: Data.Nam_hoc,\r\n Trang_thai_o: Data.Trang_thai_o,\r\n Ma_loai_phong: this.dataPhongByID[0].Ma_loai_phong,\r\n Ten_loai_phong: this.dataPhongByID[0].Ten_loai_phong,\r\n Email: Data.Email,\r\n };\r\n }\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.Insert.invalid) {\r\n return false;\r\n }\r\n this.create();\r\n }\r\n getdatasv(code) {}\r\n onReset() {\r\n this.submitted = false;\r\n this.Insert.reset();\r\n }\r\n\r\n GetAll() {\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n this.dataPhongKTX = z.Data;\r\n });\r\n }\r\n GetDoiTuongChinhSach() {\r\n this.SystemService.Get_doituong_chinhsach(this.Token).subscribe((z) => {\r\n this.dataDoiTuongChinhSach = z;\r\n });\r\n }\r\n getHeNhapHoc() {\r\n this.RegisterDormService.List_He(this.Token).subscribe((z) => {\r\n this.dataHe = z;\r\n });\r\n }\r\n getKhoaNhapHoc() {\r\n this.RegisterDormService.List_Khoa(this.Token).subscribe((z) => {\r\n this.dataKhoa = z;\r\n });\r\n }\r\n getListRegister() {\r\n this.RegisterDormService.getList(this.Token).subscribe((z) => {\r\n this.dataTypeRoom = z.Data;\r\n });\r\n } // lấy danh sách loại phòng\r\n getListTypeRoom() {\r\n this.RoomcategoryService.getList(this.getNull, this.Token).subscribe(\r\n (z) => {\r\n this.dataTypeRoom = z.Data;\r\n }\r\n );\r\n } // lấy danh sách loại phòng\r\n\r\n getListTypeRoomGioiTinh(IDGioiTinh, IDsv) {\r\n this.RoomCategoryRegisterService.getListAdmin(\r\n IDGioiTinh,\r\n IDsv,\r\n this.Token\r\n ).subscribe((z) => {\r\n this.dataTypeRoomGioiTinh = z.Data;\r\n });\r\n } // lấy danh sách loại phòng\r\n GetKhuVucTuyenSinh() {\r\n this.SystemService.Get_khuvuc_tuyensinh(this.Token).subscribe((z) => {\r\n this.dataKhuVucTuyenSinh = z;\r\n });\r\n }\r\n\r\n GetDanToc() {\r\n this.SystemService.Get_danh_sach_dan_toc(this.Token).subscribe((z) => {\r\n this.dataDanToc = z;\r\n });\r\n }\r\n\r\n GetQuocTich() {\r\n this.SystemService.Get_danh_sach_quoc_tich(this.Token).subscribe((z) => {\r\n this.dataQuocTich = z;\r\n });\r\n }\r\n create() {\r\n this.spinner.show();\r\n if (this.Insert.value.Loai_phong == 0) {\r\n this.toastr.warning('Vui lòng chọn loại phòng!');\r\n this.spinner.hide();\r\n return;\r\n }\r\n var dt = this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n );\r\n this.InputDatas_Update = {\r\n ID_dang_ky: this.Insert.value.ID_dang_ky,\r\n ID_doi_tuong: this.Insert.value.ID_doi_tuong,\r\n code: this.code,\r\n So_the: this.Insert.value.So_the,\r\n Ghi_chu: this.Insert.value.Ghi_chu,\r\n Ngay_cap_the: this.Insert.value.Ngay_cap_the,\r\n Ngay_sinh: this.Insert.value.Ngay_sinh,\r\n ID_khu_vuc_TS: this.Insert.value.ID_kv,\r\n ID_doi_tuong_TS: this.Insert.value.ID_dt,\r\n Nguyen_vong: this.Insert.value.Nguyen_vong,\r\n Tinh_trang_suc_khoe: this.Insert.value.Tinh_trang_suc_khoe,\r\n ID_loai_phong: this.Insert.value.Loai_phong,\r\n Gia_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Gia_phong,\r\n Ten_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Ten_loai_phong,\r\n Ma_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Ma_loai_phong,\r\n La_truong_phong: false,\r\n Ten_trang_thai_o: 0,\r\n Ten_trang_thai_the: 0,\r\n Ten_trang_thai_duyet: 0,\r\n Trang_thai_o: 0,\r\n ID_sv: this.Insert.value.ID_sv,\r\n ID_phong: null,\r\n Ma_sv: this.code,\r\n ID_lop: this.Insert.value.ID_lop,\r\n Ho_ten: this.Insert.value.Ho_ten,\r\n Hoc_ky: this.Insert.value.Hoc_ky,\r\n Nam_hoc: this.Insert.value.Nam_hoc,\r\n Email: this.Insert.value.Email,\r\n ID_gioi_tinh: this.Insert.value.ID_gioi_tinh,\r\n };\r\n if (this.checkInsert == true) {\r\n this.RegisterDormService.Update(\r\n this.InputDatas_Update,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 9) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.RegisterDormService.Update_Student(\r\n this.Insert.value,\r\n this.Token\r\n ).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi sửa lại thông tin sinh viên.');\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n } else if (z.Status == 5) {\r\n this.toastr.error('Cập nhật thất bại!');\r\n } else if (z.Status == 6) {\r\n this.toastr.warning(z.Message);\r\n }\r\n this.spinner.hide();\r\n this.modalService.dismissAll('AddModal');\r\n });\r\n } else {\r\n this.RegisterDormService.getSVbyMa(this.code, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 5) {\r\n this.toastr.error(\r\n 'Mã sinh viên không đúng. Xin vui lòng nhập lại mã sinh viên.!'\r\n );\r\n } else if (z.Status == 1) {\r\n this.dataStudent = z.Data;\r\n this.InputDatas = {\r\n ID_dang_ky: this.ID_dang_ky,\r\n ID_doi_tuong: this.Insert.value.ID_doi_tuong,\r\n ID_gioi_tinh: this.Insert.value.ID_gioi_tinh,\r\n code: this.code,\r\n So_the: this.Insert.value.So_the,\r\n Ghi_chu: this.Insert.value.Ghi_chu,\r\n Ngay_cap_the: this.Insert.value.Ngay_cap_the,\r\n ID_khu_vuc_TS: this.Insert.value.ID_kv,\r\n ID_doi_tuong_TS: this.Insert.value.ID_dt,\r\n Nguyen_vong: this.Insert.value.Nguyen_vong,\r\n Tinh_trang_suc_khoe: this.Insert.value.Tinh_trang_suc_khoe,\r\n ID_loai_phong: this.Insert.value.Loai_phong,\r\n Gia_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Gia_phong,\r\n Ten_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Ten_loai_phong,\r\n La_truong_phong: false,\r\n Ten_trang_thai_o: 0,\r\n Ten_trang_thai_the: 0,\r\n Ten_trang_thai_duyet: 0,\r\n Trang_thai_o: 0,\r\n ID_sv: this.dataStudent[0].ID_sv,\r\n ID_phong: null,\r\n Ma_sv: this.code,\r\n ID_lop: this.dataStudent_Search[0].ID_lop,\r\n Ho_ten: this.Insert.value.Ho_ten,\r\n Email: this.Insert.value.Email,\r\n Ma_loai_phong: this.dataTypeRoom.filter(\r\n (x) => x.ID == this.Insert.value.Loai_phong\r\n )[0].Ma_loai_phong,\r\n };\r\n this.RegisterDormService.Update_Student(\r\n this.Insert.value,\r\n this.Token\r\n ).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi sửa lại thông tin sinh viên.');\r\n } else if (z.Status == 1) {\r\n this.RegisterDormService.Insert(\r\n this.InputDatas,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 5) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 8) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else if (z.Status == 6) {\r\n this.toastr.warning(z.Message);\r\n }\r\n this.getList();\r\n this.spinner.hide();\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n this.spinner.hide();\r\n this.modalService.dismissAll('AddModal');\r\n }\r\n );\r\n }\r\n }\r\n\r\n search() {\r\n this.spinner.show();\r\n this.RegisterDormService.getSVbyMa(this.code, this.Token).subscribe(\r\n (z) => {\r\n this.spinner.hide();\r\n if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 5) {\r\n this.toastr.error(\r\n 'Mã sinh viên không đúng. Xin vui lòng nhập lại mã sinh viên dể tìm kiếm.!'\r\n );\r\n } else if (z.Status == 1) {\r\n this.dataStudent_Search = z.Data;\r\n this.getListTypeRoomGioiTinh(\r\n this.dataStudent_Search[0].ID_gioi_tinh,\r\n this.dataStudent_Search[0].ID_sv\r\n );\r\n this.Insert.patchValue({\r\n ID_sv: this.dataStudent_Search[0].ID_sv,\r\n Ma_sv: this.dataStudent_Search[0].Ma_sv,\r\n ID_dan_toc: this.dataStudent_Search[0].ID_dan_toc,\r\n Ho_ten: this.dataStudent_Search[0].Ho_ten,\r\n Ngay_sinh:\r\n this.dataStudent_Search[0].Ngay_sinh == null\r\n ? ''\r\n : this.dataStudent_Search[0].Ngay_sinh.substring(0, 10),\r\n ID_gioi_tinh: this.dataStudent_Search[0].ID_gioi_tinh,\r\n CMND: this.dataStudent_Search[0].CMND,\r\n Ngay_cap_CMND:\r\n this.dataStudent_Search[0].Ngay_cap_CMND == null\r\n ? ''\r\n : this.dataStudent_Search[0].Ngay_cap_CMND.substring(0, 10),\r\n ID_noi_cap_CMND: this.dataStudent_Search[0].ID_noi_cap_CMND,\r\n Ton_giao: this.dataStudent_Search[0].Ton_giao,\r\n So_ho_chieu: this.dataStudent_Search[0].So_ho_chieu,\r\n Ngay_het_han_visa:\r\n this.dataStudent_Search[0].Ngay_het_han_visa == null\r\n ? ''\r\n : this.dataStudent_Search[0].Ngay_het_han_visa.substring(0, 10),\r\n Dienthoai_canhan: this.dataStudent_Search[0].Dienthoai_canhan,\r\n Email: this.dataStudent_Search[0].Email,\r\n Dia_chi_tt: this.dataStudent_Search[0].Dia_chi_tt,\r\n ID_quoc_tich: this.dataStudent_Search[0].ID_quoc_tich,\r\n Ho_ten_cha: this.dataStudent_Search[0].Ho_ten_cha,\r\n Namsinh_cha: this.dataStudent_Search[0].Namsinh_cha,\r\n Hoat_dong_XH_CT_cha: this.dataStudent_Search[0].Hoat_dong_XH_CT_cha,\r\n So_dien_thoai_bo: this.dataStudent_Search[0].So_dien_thoai_bo,\r\n Ho_ten_me: this.dataStudent_Search[0].Ho_ten_me,\r\n Namsinh_me: this.dataStudent_Search[0].Namsinh_me,\r\n Hoat_dong_XH_CT_me: this.dataStudent_Search[0].Hoat_dong_XH_CT_me,\r\n So_dien_thoai_me: this.dataStudent_Search[0].So_dien_thoai_me,\r\n NoiO_hiennay: this.dataStudent_Search[0].NoiO_hiennay,\r\n He_nhap_hoc: this.dataStudent_Search[0].He_nhap_hoc,\r\n Ten_khoa_nhap_hoc: this.dataStudent_Search[0].Ten_khoa_nhap_hoc,\r\n Khoa_hoc_nhap_hoc: this.dataStudent_Search[0].Khoa_hoc_nhap_hoc,\r\n Ten_nganh_nhap_hoc: this.dataStudent_Search[0].Ten_nganh_nhap_hoc,\r\n Ten_chuyen_nganh_nhap_hoc: this.dataStudent_Search[0]\r\n .Ten_chuyen_nganh_nhap_hoc,\r\n Lop: this.dataStudent_Search[0].Lop,\r\n So_the: this.dataStudent_Search[0].Ma_sv,\r\n ID_dang_ky: this.dataStudent_Search[0].ID_dang_ky,\r\n ID_dt: this.dataStudent_Search[0].ID_doi_tuong_TS,\r\n ID_doi_tuong_TS: this.dataStudent_Search[0].ID_doi_tuong_TS,\r\n ID_kv: this.dataStudent_Search[0].ID_khu_vuc_TS,\r\n ID_khu_vuc_TS: this.dataStudent_Search[0].ID_khu_vuc_TS,\r\n ID_lop: this.dataStudent_Search[0].ID_lop,\r\n });\r\n }\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n GetStringID(m) {\r\n var rs = '';\r\n for (var k = 0; k < m.length; k++) {\r\n if (k == 0) {\r\n rs += m[k].ID_dang_ky;\r\n } else {\r\n rs += ',' + m[k].ID_dang_ky;\r\n }\r\n }\r\n return rs;\r\n }\r\n Delete_Register() {\r\n let TrangThaiDuyet = this.Trang_thai_duyet;\r\n if (TrangThaiDuyet == 1) {\r\n this.toastr.warning('Bạn không thể xóa đăng ký ở trạng thái: Đã duyệt.!');\r\n } else {\r\n this.RegisterDormService.Delete(this.ID_dang_ky, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error('Có lỗi trong quá trình xóa đăng ký.!');\r\n } else {\r\n this.modalService.dismissAll('Delete');\r\n\r\n this.toastr.success('Xóa đăng ký thành công!');\r\n }\r\n this.getList();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n }\r\n Approve_Register() {\r\n this.spinner.show();\r\n this.RegisterDormService.UpdateStatus(\r\n this.DuyetDKRow,\r\n this.Token\r\n ).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi trong quá trình Khóa đăng ký.!');\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 7) {\r\n this.toastr.warning(z.Message);\r\n } else {\r\n this.toastr.success(z.Message);\r\n }\r\n this.modalService.dismissAll('DuyetDK');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n UnApprove_Register() {\r\n this.spinner.show();\r\n if (this.Ly_do == undefined) this.HuyDuyetRow.Ly_do = '';\r\n else this.HuyDuyetRow.Ly_do = this.Ly_do;\r\n this.RegisterDormService.UnApproveRegister(\r\n this.HuyDuyetRow,\r\n this.Token\r\n ).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi trong quá trình hủy duyệt đăng ký.!');\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 7) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n this.modalService.dismissAll('HuyDuyet');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n DuyetDangKy_ListID() {\r\n this.spinner.show();\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('DuyetDKList');\r\n this.toastr.error('Bạn vui lòng tích chọn sinh viên để Khóa đăng ký.!');\r\n } else {\r\n var length = dt.length;\r\n var dtstring = this.GetStringID(dt);\r\n let data = {\r\n lstIdDangKy: dtstring,\r\n };\r\n this.RegisterDormService.UpdateStatus_ListID(data, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi trong duyệt đăng ký.!');\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 7) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n this.modalService.dismissAll('DuyetDKList');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n }\r\n HuyDangKy_ListID() {\r\n this.spinner.show();\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('HuyDuyetList');\r\n this.toastr.error('Bạn vui lòng tích chọn sinh viên để Hủy đăng ký.!');\r\n } else {\r\n var length = dt.length;\r\n var dtstring = this.GetStringID(dt);\r\n let data = {\r\n lstIdDangKy: dtstring,\r\n Ly_do: this.Ly_do == undefined ? '' : this.Ly_do,\r\n };\r\n this.RegisterDormService.UnApproveRegister_ListID(\r\n data,\r\n this.Token\r\n ).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi trong quá trình hủy duyệt đăng ký.!');\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 7) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n this.modalService.dismissAll('HuyDuyetList');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n }\r\n TuChoiDangKy_ListID() {\r\n this.spinner.show();\r\n var dt = this.dataTable.filter((x) => x.checked == true);\r\n if (dt.length == 0) {\r\n this.modalService.dismissAll('TuChoiList');\r\n this.toastr.error(\r\n 'Bạn vui lòng tích chọn sinh viên để Từ chối đăng ký.!'\r\n );\r\n } else {\r\n var length = dt.length;\r\n var dtstring = this.GetStringID(dt);\r\n let data = {\r\n lstIdDangKy: dtstring,\r\n Ly_do: this.Ly_do == undefined ? '' : this.Ly_do,\r\n };\r\n this.RegisterDormService.RejectStatus_ListID(data, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error('Xảy ra lỗi trong quá trình hủy duyệt đăng ký.!');\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 7) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n\r\n this.modalService.dismissAll('TuChoiList');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n Reject_Register() {\r\n this.spinner.show();\r\n if (this.Ly_do == undefined) this.TuChoiRow.Ly_do = '';\r\n else this.TuChoiRow.Ly_do = this.Ly_do;\r\n this.RegisterDormService.RejectStatus(this.TuChoiRow, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.error(\r\n 'Xảy ra lỗi trong quá trình từ chối duyệt đăng ký.!'\r\n );\r\n } else if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 8) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n }\r\n this.modalService.dismissAll('TuChoi');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n ImportExcel() {\r\n this.spinner.show();\r\n var lstCols = ['A', 'B', 'C', 'D', 'E', 'G', 'H', 'I', 'J'];\r\n if (this.worksheet == undefined) {\r\n this.toastr.warning('Bạn phải chọn file để ấn lưu.!');\r\n this.spinner.hide();\r\n } else {\r\n var ref = this.worksheet['!ref'];\r\n var row = ref.substring(4, ref.lenght);\r\n let lstData: any = [];\r\n for (let index = 2; index <= row; index++) {\r\n var obj = {\r\n Ma_sv: null,\r\n CMND: null,\r\n Ma_loai_phong: '',\r\n Doi_tuong_chinh_sach: '',\r\n So_the: '',\r\n Ngay_cap_the: '',\r\n Khu_vuc: '',\r\n Tinh_trang_suc_khoe: '',\r\n Nguyen_vong: '',\r\n Ghi_chu: '',\r\n ID_sv: 0,\r\n Trang_thai_o: 0,\r\n };\r\n if (\r\n this.worksheet['A' + index] != undefined ||\r\n this.worksheet['A' + index] != null\r\n ) {\r\n obj.Ma_sv = this.worksheet['A' + index].v;\r\n }\r\n if (\r\n this.worksheet['B' + index] != undefined ||\r\n this.worksheet['B' + index] != null\r\n ) {\r\n obj.CMND = this.worksheet['B' + index].v;\r\n }\r\n if (\r\n this.worksheet['C' + index] != undefined ||\r\n this.worksheet['C' + index] != null\r\n ) {\r\n obj.Ma_loai_phong = this.worksheet['C' + index].v;\r\n }\r\n if (\r\n this.worksheet['D' + index] != undefined ||\r\n this.worksheet['D' + index] != null\r\n ) {\r\n obj.So_the = this.worksheet['D' + index].v;\r\n }\r\n if (\r\n this.worksheet['E' + index] != undefined ||\r\n this.worksheet['E' + index] != null\r\n ) {\r\n obj.Ngay_cap_the = this.worksheet['E' + index].v\r\n .split('/')\r\n .reverse()\r\n .join('-');\r\n }\r\n if (\r\n this.worksheet['F' + index] != undefined ||\r\n this.worksheet['F' + index] != null\r\n ) {\r\n obj.Doi_tuong_chinh_sach = this.worksheet['F' + index].v;\r\n }\r\n\r\n if (\r\n this.worksheet['G' + index] != undefined ||\r\n this.worksheet['G' + index] != null\r\n ) {\r\n obj.Khu_vuc = this.worksheet['G' + index].v;\r\n }\r\n if (\r\n this.worksheet['H' + index] != undefined ||\r\n this.worksheet['H' + index] != null\r\n ) {\r\n obj.Tinh_trang_suc_khoe = this.worksheet['H' + index].v;\r\n }\r\n if (\r\n this.worksheet['I' + index] != undefined ||\r\n this.worksheet['I' + index] != null\r\n ) {\r\n obj.Nguyen_vong = this.worksheet['I' + index].v;\r\n }\r\n if (\r\n this.worksheet['J' + index] != undefined ||\r\n this.worksheet['J' + index] != null\r\n ) {\r\n obj.Ghi_chu = this.worksheet['J' + index].v;\r\n }\r\n\r\n lstData.push(obj);\r\n this.modalService.dismissAll('Import_Excel');\r\n }\r\n this.RegisterDormService.Import_Excel(lstData, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 5) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 2) {\r\n this.toastr.error(\r\n 'Import đăng ký cho sinh viên không thành công.!'\r\n );\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Import đăng ký cho sinh viên thành công.!');\r\n } else if (z.Status == 8) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 6) {\r\n this.toastr.warning(z.Message);\r\n }\r\n this.modalService.dismissAll('Import_Excel');\r\n this.getList();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n this.toastr.warning('');\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n }\r\n Excel() {\r\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\r\n if (r) {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.spinner.show();\r\n\r\n let param = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Ma_sv: this.FillMaSV,\r\n Ho_ten: this.FillHoTen,\r\n Ngay_sinh: this.FillNgaySinh,\r\n ID_loai_phong: this.FillLoaiPhong,\r\n Trang_thai_duyet: this.FillTrangThaiDangKy,\r\n Ten_he: this.FillHe,\r\n Ten_khoa: this.FillKhoa,\r\n Khoa_hoc: this.FillKhoaHoc,\r\n ID_doi_tuong_TS: this.FillDoiTuong,\r\n ID_gioi_tinh: this.FillGioiTinh,\r\n Nam_hoc: this.Nam_hoc,\r\n Trang_thai_o: this.FillTrangThaiO,\r\n };\r\n this.RegisterDormService.ExcelDangKy(param, a.Token).subscribe((z) => {\r\n this.exportService.exportExcelByte(z.FileData, 'DANHSACHDANGKY');\r\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\r\n this.spinner.hide();\r\n\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n }\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n };\r\n });\r\n }\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_DuyetDK;\r\n window.open(urlHelp, '_blank');\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 \r\n \r\n Chọn giới tính\r\n Nam\r\n Nữ\r\n \r\n
\r\n
\r\n \r\n \r\n Chọn đối tượng\r\n \r\n Là đối tượng chính sách bất kỳ\r\n \r\n {{ item.Ten_dt }}\r\n \r\n
\r\n
\r\n \r\n \r\n Chọn loại phòng\r\n \r\n {{ item.Ten_loai_phong }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Tất cả\r\n Chưa duyệt\r\n Khóa duyệt\r\n Hủy duyệt\r\n Từ chối duyệt\r\n \r\n
\r\n
\r\n \r\n \r\n Tất cả\r\n Chưa ở\r\n Đang ở\r\n Đã ra\r\n \r\n
\r\n
\r\n \r\n \r\n Chọn hệ\r\n \r\n {{ item.Ten_he }}\r\n \r\n
\r\n
\r\n \r\n \r\n Chọn khoa\r\n \r\n {{ item.Ten_khoa }}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {{\r\n i.name\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

{{ titleModal }}

\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 Tìm sinh viên\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Thông tin đăng ký ký túc xá\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 Số thẻ không được bỏ trống!\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 \r\n {{ item.Ten_dt }}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ item.Ten_kv }}\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
\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
\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 \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 {{ item.Dan_toc }}\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n {{ item.Quoc_tich }}\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 \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 Đóng\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 có chắc chắn xóa đăng ký cho sinh viên?\r\n

\r\n
\r\n \r\n Hủy bỏ\r\n \r\n \r\n Đồng ý\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 có chắc chắn muốn khóa đăng ký cho sinh viên?\r\n

\r\n
\r\n \r\n Khóa đăng ký\r\n \r\n \r\n Hủy bỏ\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 có chắc chắn muốn khóa đăng ký cho sinh viên?\r\n

\r\n
\r\n \r\n Khóa đăng ký\r\n \r\n \r\n Hủy bỏ\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 đăng ký cho sinh viên bằng file excel\r\n
\r\n \r\n File mẫu Excel\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 \r\n
\r\n
\r\n \r\n Hủy\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n

Thông tin mô tả loại phòng

\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
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

\r\n Hủy đăng ký của sinh viê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 Hủy đăng ký\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

\r\n Hủy đăng ký của sinh viê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 Hủy đăng ký\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

\r\n Từ chối đăng ký của sinh viê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 Từ chối\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

\r\n Từ chối đăng ký của sinh viê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 Từ chối\r\n \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild, Input, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\r\nimport { forEach } from '@angular-devkit/schematics';\r\nimport { timeout, zipAll } from 'rxjs/operators';\r\nimport { AbstractControl } from '@angular/forms';\r\nimport { ExportService } from 'src/app/Utils/services/export.service';\r\nimport { RegulationObjectService } from 'src/app/utils/services/regulation-object.service';\r\nimport { CampusService } from 'src/app/Utils/services/campus.service';\r\nimport { BuildingService } from 'src/app/Utils/services/building.service';\r\nimport { ListallService } from 'src/app/utils/services/listall.service';\r\nimport { StudentSortService } from 'src/app/Utils/services/student-sort.service';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nexport function removeSpaces(control: AbstractControl) {\r\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\r\n control.setValue('');\r\n }\r\n return null;\r\n}\r\n\r\n@Component({\r\n selector: 'app-regulation-object',\r\n templateUrl: './regulation-object.component.html',\r\n styleUrls: ['./regulation-object.component.scss'],\r\n})\r\nexport class RegulationObjectComponent implements OnInit {\r\n dtOptions: DataTables.Settings;\r\n dtOptions2: any;\r\n Token: string;\r\n datadetail: any;\r\n Res: any;\r\n req: any;\r\n check: any;\r\n ID: any;\r\n Nam_hoc: any;\r\n Khoa_hoc: any;\r\n ID_toa_nha: any;\r\n ID_khoa: any;\r\n dataTable: any = [];\r\n dataKhoaHoc: any = [];\r\n dataCoSo: any = [];\r\n dataToaNha: any = [];\r\n dataHe: any = [];\r\n dataKhoa: any = [];\r\n closeResult: string;\r\n ClassData: any;\r\n default: any;\r\n ListTN: any;\r\n Nam_hoc_arr: any = [];\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n checkInsert: boolean;\r\n submitted = false;\r\n titleName: string;\r\n Request: any;\r\n id_selected: any;\r\n\r\n Insert = new FormGroup({\r\n ID_he: new FormControl(null),\r\n ID_khoa: new FormControl('0'),\r\n Khoa_hoc: new FormControl('0'),\r\n Nam_hoc: new FormControl('0'),\r\n ID_coso: new FormControl(''),\r\n So_thang: new FormControl(0, [Validators.required]),\r\n Tu_ngay: new FormControl(null, [Validators.required]),\r\n Den_ngay: new FormControl(null, [Validators.required]),\r\n Gioi_tinh: new FormControl(null),\r\n Hoc_ky_3: new FormControl(false),\r\n Doi_tuong_cs: new FormControl(false),\r\n });\r\n Fillter = new FormGroup({\r\n He_filter: new FormControl(null),\r\n Khoa_filter: new FormControl(null),\r\n Khoa_hoc_filter: new FormControl(null),\r\n Nam_hoc_filter: new FormControl(''),\r\n Tu_ngay: new FormControl(null),\r\n Den_ngay: new FormControl(null),\r\n });\r\n constructor(\r\n @Inject(AppConfig)\r\n private readonly appConfig: AppConfiguration,\r\n private modalService: NgbModal,\r\n private RegulationObjectService: RegulationObjectService,\r\n private StudentSortService: StudentSortService,\r\n private CampusService: CampusService,\r\n private BuildingService: BuildingService,\r\n private ListallService: ListallService,\r\n public router: Router,\r\n private toastr: ToastrService,\r\n private spinner: NgxSpinnerService,\r\n public exportService: ExportService\r\n ) {}\r\n dtTrigger = new Subject();\r\n dtTrigger2 = new Subject();\r\n public com: common;\r\n\r\n ngOnInit() {\r\n var yearNow = new Date().getFullYear() + 1;\r\n for (var i = 0; i < 10; i++) {\r\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\r\n let object = {\r\n value: Nam_hoc_string,\r\n name: Nam_hoc_string,\r\n };\r\n this.Nam_hoc_arr.push(object);\r\n yearNow--;\r\n }\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.dtOptions = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {\r\n title: 'ID',\r\n visible: false,\r\n },\r\n {\r\n title: 'Tên hệ',\r\n },\r\n {\r\n title: 'Tên khoa',\r\n },\r\n {\r\n title: 'Khóa học',\r\n },\r\n {\r\n title: 'Năm học',\r\n },\r\n {\r\n title: 'Từ ngày',\r\n },\r\n {\r\n title: 'Đến ngày',\r\n },\r\n {\r\n title: 'Giới tính',\r\n },\r\n {\r\n title: 'Học kỳ 3',\r\n },\r\n {\r\n title: 'Đối tượng CS',\r\n },\r\n {\r\n title: 'SL tòa nhà',\r\n },\r\n {\r\n title: 'Thao tác',\r\n width: '18%',\r\n className: 'dt-center',\r\n },\r\n ],\r\n order: [[1, 'desc']],\r\n };\r\n this.dtOptions2 = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {},\r\n {\r\n title: 'Mã tòa nhà',\r\n },\r\n {\r\n title: 'Tên tòa nhà',\r\n },\r\n ],\r\n };\r\n\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n this.ListTN = z.Data;\r\n this.getList(a.Token);\r\n });\r\n }\r\n\r\n filterById(): void {\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.draw();\r\n $.fn['dataTable'].ext.search.pop();\r\n });\r\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\r\n let Ten_he_data = data[1];\r\n let Khoa_data = data[2];\r\n let Khoa_hoc_data = data[3];\r\n let Nam_hoc_data = data[4];\r\n let bool1 = true;\r\n let bool2 = true;\r\n let bool3 = true;\r\n let bool4 = true;\r\n if (\r\n this.Fillter.controls.He_filter.value != '' &&\r\n this.Fillter.controls.He_filter.value != undefined\r\n ) {\r\n var a = Ten_he_data;\r\n var b = this.Fillter.controls.He_filter.value;\r\n bool1 = a.toLowerCase().includes(b.toLowerCase());\r\n }\r\n if (\r\n this.Fillter.controls.Khoa_hoc_filter.value != '' &&\r\n this.Fillter.controls.Khoa_hoc_filter.value != undefined\r\n ) {\r\n let b = Khoa_hoc_data;\r\n let a = this.Fillter.controls.Khoa_hoc_filter.value;\r\n bool2 = a == b;\r\n }\r\n if (\r\n this.Fillter.controls.Nam_hoc_filter.value != '' &&\r\n this.Fillter.controls.Nam_hoc_filter.value != undefined\r\n ) {\r\n var a = Nam_hoc_data;\r\n var b = this.Fillter.controls.Nam_hoc_filter.value;\r\n bool3 = a.toLowerCase().includes(b.toLowerCase());\r\n }\r\n if (\r\n this.Fillter.controls.Khoa_filter.value != '' &&\r\n this.Fillter.controls.Khoa_filter.value != undefined\r\n ) {\r\n bool4 = Khoa_data.toLowerCase().includes(\r\n this.Fillter.controls.Khoa_filter.value.toLowerCase()\r\n );\r\n }\r\n\r\n if (bool1 && bool2 && bool3 && bool4) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n getList(token) {\r\n this.spinner.show();\r\n this.RegulationObjectService.GetAll(token).subscribe(\r\n (z) => {\r\n console.log('zxc', z.Data);\r\n\r\n z.Data.forEach((element, index) => {\r\n if (element.ID_toa_nha == '') {\r\n z.Data[index].SoLuongToaNha = 0;\r\n } else {\r\n z.Data[index].SoLuongToaNha = element.ID_toa_nha.split(',').length;\r\n }\r\n });\r\n this.dataTable = z.Data;\r\n this.dtTrigger.next();\r\n this.spinner.hide();\r\n this.StudentSortService.List_He(this.Token).subscribe((z) => {\r\n this.dataHe = z;\r\n this.StudentSortService.List_Khoa(this.Token).subscribe((z) => {\r\n this.dataKhoa = z;\r\n });\r\n this.Insert.patchValue({ ID_he: z[0].ID_he });\r\n this.getKhoaHoc(this.Insert.controls.ID_he.value);\r\n this.CampusService.getList(this.Token).subscribe((z) => {\r\n this.dataCoSo = z.Data;\r\n this.Insert.patchValue({ ID_coso: z.Data[0].ID });\r\n this.getToaNha(z.Data[0].ID);\r\n });\r\n });\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.dataTable = [];\r\n this.dtTrigger.next();\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n changeHe() {\r\n this.getKhoaHoc(this.Insert.controls.ID_he.value);\r\n }\r\n changeCoSo() {\r\n this.getToaNha(this.Insert.controls.ID_coso.value);\r\n }\r\n ChangeKhoaHoc() {\r\n var id_khoa = this.Insert.controls.Khoa_hoc.value;\r\n let filter = this.dataKhoaHoc.filter((a) => a.Khoa_hoc == id_khoa);\r\n this.Insert.patchValue({ Nam_hoc: filter[0].Nam_hoc });\r\n }\r\n ChangeNamHoc() {\r\n var nam = this.Insert.controls.Nam_hoc.value;\r\n let filter = this.dataKhoaHoc.filter((a) => a.Nam_hoc == nam);\r\n this.Insert.patchValue({ Khoa_hoc: filter[0].Khoa_hoc });\r\n }\r\n getKhoaHoc(ID_he) {\r\n this.dataKhoaHoc = [];\r\n this.RegulationObjectService.LoadKhoaHoc(ID_he, this.Token).subscribe(\r\n (z) => {\r\n let arr = [];\r\n z.Data.forEach((x) => {\r\n if (arr.indexOf(x.Khoa_hoc) < 0) {\r\n arr.push(x.Khoa_hoc);\r\n }\r\n });\r\n this.dataKhoaHoc = arr;\r\n }\r\n );\r\n }\r\n getToaNha(ID) {\r\n this.dataToaNha = this.ListTN.filter((d) => d.ID_CoSo == ID);\r\n this.dtTrigger2.next();\r\n }\r\n open(content, sizm, Loai, Data) {\r\n this.ID = Data.ID_he;\r\n this.Khoa_hoc = Data.Khoa_hoc;\r\n this.Nam_hoc = Data.Nam_hoc;\r\n this.ID_toa_nha = Data.ID_toa_nha;\r\n this.ID_khoa = Data.ID_khoa;\r\n this.submitted = false;\r\n this.id_selected = Data.ID_quy_dinh_dt > 0 ? Data.ID_quy_dinh_dt : 0;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n if (Loai == 'Add') {\r\n this.spinner.show();\r\n this.Insert.patchValue({\r\n Khoa_hoc: '0',\r\n Tu_ngay: null,\r\n Den_ngay: null,\r\n So_thang: 0,\r\n Nam_hoc: 0,\r\n Gioi_tinh: null,\r\n Hoc_ky_3: false,\r\n ID_khoa: '0',\r\n Doi_tuong_cs: false,\r\n });\r\n this.checkInsert = true;\r\n for (let index = 0; index < this.dataToaNha.length; index++) {\r\n this.dataToaNha[index].Selected = false;\r\n }\r\n this.spinner.hide();\r\n } else if (Loai == 'Edit') {\r\n this.spinner.show();\r\n this.checkInsert = false;\r\n this.Insert.patchValue({ ID_he: Data.ID_he });\r\n this.Insert.patchValue({ ID_khoa: Data.ID_khoa });\r\n this.Insert.patchValue({ Gioi_tinh: Data.Gioi_tinh });\r\n this.Insert.patchValue({ Hoc_ky_3: Data.Hoc_ky_3 });\r\n this.Insert.patchValue({ Doi_tuong_cs: Data.Doi_tuong_cs });\r\n this.changeHe();\r\n this.Insert.patchValue({ Khoa_hoc: Data.Khoa_hoc });\r\n this.Insert.patchValue({ Nam_hoc: Data.Nam_hoc });\r\n this.Insert.patchValue({ So_thang: Data.So_thang });\r\n this.Insert.patchValue({ Tu_ngay: Data.Tu_ngay });\r\n this.Insert.patchValue({ Den_ngay: Data.Den_ngay });\r\n let a = Data.ID_toa_nha.split(',');\r\n let idcs = this.ListTN.filter((d) => d.ID_ToaNha == a[0]);\r\n this.Insert.patchValue({ ID_coso: idcs[0].ID_CoSo });\r\n this.dataToaNha = this.ListTN.filter((d) => d.ID_CoSo == idcs[0].ID_CoSo);\r\n this.BuildingService.getList(this.Token).subscribe((z) => {\r\n for (let i = 0; i < this.dataToaNha.length; i++) {\r\n this.dataToaNha[i].Selected = false;\r\n for (let j = 0; j < a.length; j++) {\r\n if (a[j] == this.dataToaNha[i].ID_ToaNha.toString()) {\r\n if ($('#checkbox' + a[j]).prop('checked', true)) {\r\n {\r\n this.dataToaNha[i].Selected = true;\r\n }\r\n } else {\r\n this.dataToaNha[i].Selected = false;\r\n }\r\n }\r\n }\r\n }\r\n this.spinner.hide();\r\n });\r\n }\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n\r\n // onSubmit() {\r\n // this.submitted = true\r\n // if (this.Insert.invalid) {\r\n // return false\r\n // }\r\n // this.create()\r\n // }\r\n // onReset() {\r\n // this.submitted = false\r\n // this.Insert.reset()\r\n // }\r\n // create\r\n\r\n Delete() {\r\n let req = {\r\n ID_quy_dinh_dt: this.id_selected,\r\n Danh_sach_toa_nha: this.ID_toa_nha.split(','),\r\n };\r\n this.RegulationObjectService.Delete(req, this.Token).subscribe((z) => {\r\n this.modalService.dismissAll('AddModal');\r\n if (z.Status == 8) {\r\n this.toastr.warning('Rằng buộc không thể xóa');\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Xóa thành công');\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n });\r\n this.getList(this.Token);\r\n } else {\r\n this.toastr.warning(z.Message);\r\n }\r\n });\r\n }\r\n\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n setStyle(x: any) {\r\n let floorElements = document.getElementById(x);\r\n floorElements.setAttribute('style', 'border: 10px');\r\n }\r\n ngOnDestroy(): void {\r\n // Do not forget to unsubscribe the event\r\n this.dtTrigger.unsubscribe();\r\n this.dtTrigger2.unsubscribe();\r\n\r\n $.fn['dataTable'].ext.search.pop();\r\n }\r\n CheckAll() {\r\n if ($('#SelectALL').prop('checked')) {\r\n for (let index = 0; index < this.dataToaNha.length; index++) {\r\n this.dataToaNha[index].Selected = true;\r\n }\r\n } else {\r\n for (let index = 0; index < this.dataToaNha.length; index++) {\r\n this.dataToaNha[index].Selected = false;\r\n }\r\n }\r\n }\r\n SelectRow(ID_ToaNha) {\r\n for (let index = 0; index < this.dataToaNha.length; index++) {\r\n if (this.dataToaNha[index].ID_ToaNha == ID_ToaNha) {\r\n if ($('#checkbox' + ID_ToaNha).prop('checked')) {\r\n {\r\n this.dataToaNha[index].Selected = true;\r\n }\r\n } else {\r\n this.dataToaNha[index].Selected = false;\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n OnSubmit() {\r\n this.submitted = true;\r\n if (this.Insert.invalid) {\r\n return false;\r\n }\r\n if (\r\n this.Insert.controls.Tu_ngay.value >= this.Insert.controls.Den_ngay.value\r\n ) {\r\n this.toastr.warning('Từ ngày phải nhỏ hơn đến ngày');\r\n return false;\r\n }\r\n var lst = jQuery.grep(this.dataToaNha, function (pa: any, i) {\r\n return pa.Selected;\r\n });\r\n let stringID_toa_nha = '';\r\n if (lst.length < 1) {\r\n this.toastr.warning('Bạn chưa chọn tòa nhà!');\r\n } else {\r\n lst.forEach((element, index) => {\r\n if (index == 0) {\r\n stringID_toa_nha += element.ID_ToaNha;\r\n } else {\r\n stringID_toa_nha += ',' + element.ID_ToaNha;\r\n }\r\n });\r\n let InputDatas = {\r\n ID_he: this.Insert.controls.ID_he.value,\r\n ID_khoa: this.Insert.controls.ID_khoa.value,\r\n Khoa_hoc: this.Insert.controls.Khoa_hoc.value,\r\n Nam_hoc: this.Insert.controls.Nam_hoc.value,\r\n ID_toa_nha: stringID_toa_nha,\r\n So_thang: this.Insert.controls.So_thang.value,\r\n Tu_ngay: this.Insert.controls.Tu_ngay.value,\r\n Den_ngay: this.Insert.controls.Den_ngay.value,\r\n Gioi_tinh: this.Insert.controls.Gioi_tinh.value,\r\n Hoc_ky_3: this.Insert.controls.Hoc_ky_3.value,\r\n Doi_tuong_cs: this.Insert.controls.Doi_tuong_cs.value,\r\n };\r\n Object.assign(InputDatas, { ID_quy_dinh_dt: this.id_selected });\r\n if (this.checkInsert == true) {\r\n this.RegulationObjectService.Insert(InputDatas, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList(this.Token);\r\n } else if (z.Status == 8) {\r\n this.toastr.warning(z.Message);\r\n } else {\r\n this.toastr.warning(z.Message);\r\n }\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n } else {\r\n this.RegulationObjectService.Update(InputDatas, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else if (z.Status == 8) {\r\n this.toastr.warning(z.Message);\r\n } else {\r\n this.toastr.warning(z.Message);\r\n }\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList(this.Token);\r\n }\r\n );\r\n }\r\n }\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QLDangKy;\r\n window.open(urlHelp, '_blank');\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 \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 \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 {{ p.ID_he }}\r\n {{ p.ID_he > 0 ? p.Ten_he : 'Tất cả' }}\r\n {{ p.Ten_khoa ? p.Ten_khoa : 'Tất cả' }}\r\n {{ p.Khoa_hoc == 0 ? 'Tất cả' : p.Khoa_hoc }}\r\n {{ p.Nam_hoc == 0 ? 'Tất cả' : p.Nam_hoc }}\r\n \r\n {{\r\n p.Tu_ngay == '0001-01-01T00:00:00'\r\n ? ''\r\n : (p.Tu_ngay | date: 'dd/MM/yyyy HH:mm')\r\n }}\r\n \r\n \r\n {{\r\n p.Den_ngay == '0001-01-01T00:00:00'\r\n ? ''\r\n : (p.Den_ngay | date: 'dd/MM/yyyy HH:mm')\r\n }}\r\n \r\n Tất cả\r\n Nữ\r\n Nam\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 {{ p.SoLuongToaNha }}\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 \r\n
\r\n \r\n Bạn có chắc chắn muốn xóa\r\n

\r\n
\r\n \r\n \r\n Hủy bỏ\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n

Quy định đối tượng

\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
\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 \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 Từ ngày không được bỏ trống!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Đến ngày không được bỏ trống!\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 \r\n {{ p.Ma_ToaNha }}\r\n {{ p.Ten_ToaNha }}\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 \r\n \r\n Đóng\r\n \r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnInit, ViewChild, Input, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CKEditorModule, ChangeEvent } from '@ckeditor/ckeditor5-angular';\r\nimport ClassicEditor from '@ckeditor/ckeditor5-build-classic';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\r\nimport { forEach } from '@angular-devkit/schematics';\r\nimport { timeout } from 'rxjs/operators';\r\nimport { AbstractControl } from '@angular/forms';\r\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\r\nimport { NgIf } from '@angular/common';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nexport function removeSpaces(control: AbstractControl) {\r\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\r\n control.setValue('');\r\n }\r\n return null;\r\n}\r\n@Component({\r\n selector: 'app-room-category',\r\n templateUrl: './room-category.component.html',\r\n styleUrls: ['./room-category.component.scss'],\r\n})\r\nexport class RoomCategoryComponent implements OnInit {\r\n public Editor = ClassicEditor;\r\n dtOptions: DataTables.Settings;\r\n dataTable: any = [];\r\n ExtensionsRoom: any = [];\r\n ExtensionsNotInRoom: any = [];\r\n dataMoTa: any = 'Mô tả phòng';\r\n titleModal: string;\r\n default: any;\r\n Token: string;\r\n closeResult: string;\r\n fileName: string = '';\r\n fileNameUpLoad: string = '';\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n checkInsert: boolean;\r\n submitted = false;\r\n NameTitle: string;\r\n Title: string = 'Đang tải danh sách...';\r\n TitleClass: string = 'spinner-border text-muted';\r\n Request: any;\r\n fileToUpload: File = null;\r\n FileBase64: string;\r\n ID: any;\r\n ID_loai_phong: any;\r\n Ma_loai_phong_ft: any;\r\n Ma_loai_phong: any;\r\n Ten_loai_phong: any;\r\n Gia_phong: any;\r\n Mo_ta: any;\r\n Dang_o: any;\r\n MaLP: any;\r\n constructor(\r\n @Inject(AppConfig)\r\n private readonly appConfig: AppConfiguration,\r\n private modalService: NgbModal,\r\n private fb: FormBuilder,\r\n public router: Router,\r\n private fromBuilder: FormBuilder,\r\n private toastr: ToastrService,\r\n private spinner: NgxSpinnerService,\r\n public RoomcategoryService: RoomcategoryService\r\n ) {}\r\n Insert = new FormGroup({\r\n Ten_loai_phong: new FormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(200),\r\n removeSpaces,\r\n ]),\r\n Ma_loai_phong: new FormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(20),\r\n removeSpaces,\r\n ]),\r\n Gia_phong: new FormControl(null, [Validators.required]),\r\n Tien_cuoc: new FormControl(null, [Validators.required]),\r\n });\r\n Filter = new FormGroup({\r\n Ma_loai_phong_ft: new FormControl(null),\r\n Ten_loai_phong_ft: new FormControl(null),\r\n Gia_phong_ft: new FormControl(null),\r\n });\r\n dtTrigger = new Subject();\r\n public com: common;\r\n\r\n ngOnInit(): void {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.dtOptions = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {\r\n title: 'ID',\r\n visible: false,\r\n },\r\n {\r\n title: 'Mã loại phòng',\r\n },\r\n {\r\n title: 'Tên loại phòng',\r\n },\r\n {\r\n title: 'Giá phòng',\r\n },\r\n {\r\n title: 'Tiền cược',\r\n },\r\n {\r\n title: 'Sức chứa',\r\n },\r\n {\r\n title: 'Đang ở',\r\n },\r\n {\r\n title: 'Đã đăng ký',\r\n },\r\n {\r\n title: 'Còn trống',\r\n },\r\n {\r\n title: 'Thao tác',\r\n width: '18%',\r\n className: 'dt-center',\r\n },\r\n ],\r\n order: [[0, 'desc']],\r\n };\r\n this.getlist();\r\n }\r\n public onChange({ editor }: ChangeEvent) {\r\n const data = editor.getData();\r\n this.dataMoTa = data;\r\n }\r\n\r\n fill() {\r\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\r\n let Ma_loai_phong_dt = data[1];\r\n let Ten_loai_phong_dt = data[2];\r\n let Gia_phong_dt = data[3];\r\n let bool1 = true;\r\n let bool2 = true;\r\n let bool3 = true;\r\n let fillter = true;\r\n if (this.Filter.controls.Ma_loai_phong_ft.value != undefined) {\r\n var b = this.Filter.controls.Ma_loai_phong_ft.value;\r\n var a = Ma_loai_phong_dt;\r\n bool1 = a.toLowerCase().includes(b.toLowerCase());\r\n }\r\n if (this.Filter.controls.Ten_loai_phong_ft.value != undefined) {\r\n var b = this.Filter.controls.Ten_loai_phong_ft.value;\r\n var a = Ten_loai_phong_dt;\r\n bool2 = a.toLowerCase().includes(b.toLowerCase());\r\n }\r\n if (this.Filter.controls.Gia_phong_ft.value != undefined) {\r\n var b = this.Filter.controls.Gia_phong_ft.value;\r\n var a = Gia_phong_dt.replaceAll(',', '');\r\n bool3 = a.toLowerCase().includes(b.toLowerCase());\r\n }\r\n fillter = bool1 && bool2 && bool3;\r\n\r\n return fillter;\r\n });\r\n }\r\n getlist() {\r\n this.spinner.show();\r\n let GetNull = true;\r\n this.RoomcategoryService.getList(GetNull, this.Token).subscribe(\r\n (z) => {\r\n this.dataTable = z.Data;\r\n this.dtTrigger.next();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.dtTrigger.next();\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n ngOnDestroy(): void {\r\n // Do not forget to unsubscribe the event\r\n this.dtTrigger.unsubscribe();\r\n\r\n $.fn['dataTable'].ext.search.pop();\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n open(content, size, Loai, Data) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: size })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n\r\n this.ID = Data.ID;\r\n if (Loai == 'Edit') {\r\n this.checkInsert = false;\r\n this.titleModal = 'Sửa loại phòng';\r\n // this.Insert.patchValue({ID: Data.ID})\r\n this.MaLP = Data.Ma_loai_phong;\r\n this.Insert.patchValue({ Ma_loai_phong: Data.Ma_loai_phong });\r\n this.Insert.patchValue({ Ten_loai_phong: Data.Ten_loai_phong });\r\n this.Insert.patchValue({ Gia_phong: Data.Gia_phong });\r\n this.Insert.patchValue({ Tien_cuoc: Data.Tien_cuoc });\r\n this.Dang_o = Data.Dang_o;\r\n this.dataMoTa = Data.Mo_ta;\r\n } else if (Loai == 'Add') {\r\n this.dataMoTa = '';\r\n this.titleModal = 'Thêm loại phòng';\r\n this.checkInsert = true;\r\n this.Insert.patchValue({ Ma_loai_phong: '' });\r\n this.Insert.patchValue({ Ten_loai_phong: '' });\r\n this.Insert.patchValue({ Gia_phong: '' });\r\n this.Insert.patchValue({ Mo_ta: '' });\r\n this.Insert.reset();\r\n } else if (Loai == 'ViewMota') {\r\n this.Mo_ta = Data.Mo_ta;\r\n }\r\n if (Loai == 'Extensions') {\r\n this.ID_loai_phong = Data.ID;\r\n this.RoomcategoryService.LoadExtensionsByIDLoaiPhong(\r\n Data.ID,\r\n this.Token\r\n ).subscribe((data) => {\r\n if (data.Status == 1) {\r\n this.ExtensionsRoom = data.ListData;\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n if (Loai == 'AddExtensions') {\r\n this.RoomcategoryService.LoadExtensionsNotExistByIDLoaiPhong(\r\n this.ID_loai_phong,\r\n this.Token\r\n ).subscribe((data) => {\r\n if (data.Status == 1) {\r\n this.ExtensionsNotInRoom = data.ListData;\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n }\r\n LoadExtensionsNotExistByIDLoaiPhong(ID_loai_phong) {\r\n this.spinner.show();\r\n this.RoomcategoryService.LoadExtensionsNotExistByIDLoaiPhong(\r\n ID_loai_phong,\r\n this.Token\r\n ).subscribe((data) => {\r\n this.spinner.hide();\r\n if (data.Status == 1) {\r\n this.ExtensionsNotInRoom = data.ListData;\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n\r\n LoadExtensionsByIDLoaiPhong(ID_loai_phong) {\r\n this.spinner.show();\r\n this.RoomcategoryService.LoadExtensionsByIDLoaiPhong(\r\n ID_loai_phong,\r\n this.Token\r\n ).subscribe((data) => {\r\n this.spinner.hide();\r\n if (data.Status == 1) {\r\n this.ExtensionsRoom = data.ListData;\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n DeleteExtension(ID_tien_ich) {\r\n this.spinner.show();\r\n this.RoomcategoryService.DeleteExtensionsLoaiPhong(\r\n this.ID_loai_phong,\r\n ID_tien_ich,\r\n this.Token\r\n ).subscribe((data) => {\r\n this.spinner.hide();\r\n if (data.Status == 1) {\r\n this.LoadExtensionsNotExistByIDLoaiPhong(this.ID_loai_phong);\r\n this.LoadExtensionsByIDLoaiPhong(this.ID_loai_phong);\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n InsertExtension(ID_tien_ich, Don_gia) {\r\n if (!Don_gia) {\r\n this.toastr.warning('Vui lòng nhập đơn giá.');\r\n return;\r\n }\r\n this.spinner.show();\r\n this.RoomcategoryService.InsertExtensionsLoaiPhong(\r\n this.ID_loai_phong,\r\n ID_tien_ich,\r\n Don_gia,\r\n this.Token\r\n ).subscribe((data) => {\r\n this.spinner.hide();\r\n if (data.Status == 1) {\r\n this.LoadExtensionsNotExistByIDLoaiPhong(this.ID_loai_phong);\r\n this.LoadExtensionsByIDLoaiPhong(this.ID_loai_phong);\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n Delete() {\r\n this.RoomcategoryService.Delete(this.ID, this.Token).subscribe((data) => {\r\n if (data.Status == 1) {\r\n this.toastr.success('Đã xoá thành công');\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n });\r\n this.getlist();\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n });\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.Insert.invalid) {\r\n return false;\r\n }\r\n if (this.checkInsert == true) {\r\n this.create();\r\n } else {\r\n this.update();\r\n }\r\n }\r\n create() {\r\n let input = {\r\n Ma_loai_phong: this.Insert.controls.Ma_loai_phong.value,\r\n Ten_loai_phong: this.Insert.controls.Ten_loai_phong.value,\r\n Gia_phong: this.Insert.controls.Gia_phong.value,\r\n Tien_cuoc: this.Insert.controls.Tien_cuoc.value,\r\n Mo_ta: this.dataMoTa,\r\n };\r\n this.RoomcategoryService.CheckExist(\r\n input.Ma_loai_phong,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 9) {\r\n this.RoomcategoryService.Insert(input, this.Token).subscribe(\r\n (data) => {\r\n if (data.Status == 1) {\r\n this.toastr.success(data.Message);\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getlist();\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n } else {\r\n this.toastr.warning('Mã loại phòng đã tồn tại');\r\n }\r\n });\r\n }\r\n update() {\r\n if (this.Dang_o > 0) {\r\n this.toastr.warning('Loại phòng đã được sử dụng không thể sửa');\r\n this.modalService.dismissAll('AddModal');\r\n } else {\r\n let input = {\r\n ID: this.ID,\r\n Ma_loai_phong: this.Insert.controls.Ma_loai_phong.value,\r\n Ten_loai_phong: this.Insert.controls.Ten_loai_phong.value,\r\n Gia_phong: this.Insert.controls.Gia_phong.value,\r\n Tien_cuoc: this.Insert.controls.Tien_cuoc.value,\r\n Mo_ta: this.dataMoTa,\r\n };\r\n if (input.Ma_loai_phong == this.MaLP) {\r\n this.RoomcategoryService.Update(input, this.Token).subscribe((data) => {\r\n if (data.Status == 1) {\r\n this.toastr.success(data.Message);\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getlist();\r\n });\r\n } else {\r\n this.RoomcategoryService.CheckExist(\r\n input.Ma_loai_phong,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 9) {\r\n this.RoomcategoryService.Update(input, this.Token).subscribe(\r\n (data) => {\r\n if (data.Status == 1) {\r\n this.toastr.success(data.Message);\r\n } else {\r\n this.toastr.error(data.Message);\r\n }\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getlist();\r\n }\r\n );\r\n } else {\r\n this.toastr.warning('Mã loại phòng đã tồn tại');\r\n }\r\n });\r\n }\r\n }\r\n }\r\n filterById(): void {\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.draw();\r\n $.fn['dataTable'].ext.search.pop();\r\n });\r\n this.fill();\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QLLoaiPhong;\r\n window.open(urlHelp, '_blank');\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
\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 \r\n \r\n \r\n \r\n \r\n {{ p.ID }}\r\n {{ p.Ma_loai_phong }}\r\n {{ p.Ten_loai_phong }}\r\n {{ p.Gia_phong | number }}\r\n {{ p.Tien_cuoc | number }}\r\n {{ p.Suc_chua }}\r\n {{ p.Dang_o }}\r\n {{ p.Da_dang_ky }}\r\n {{ p.Con_trong }}\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 \r\n
\r\n\r\n \r\n

{{ titleModal }}

\r\n ×\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Mã loại phòng không được bỏ trống\r\n
\r\n
\r\n Mã loại phòng bị tối đa 20 ký tự!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Tên loại phòng không được bỏ trống!\r\n
\r\n
\r\n Tên loại phòng bị tối đa 20 ký tự!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Giá phòng không được bỏ trống!\r\n
\r\n
\r\n Giá phòng bị tối đa 200 ký tự!\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n Tiền cược không được bỏ trống!\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\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n

Mô tả loại phòng

\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 có chắc chắn muốn xóa\r\n

\r\n
\r\n \r\n \r\n Hủy bỏ\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n

Thông tin tiện ích

\r\n ×\r\n \r\n
\r\n
\r\n
\r\n \r\n Thêm tiện ích\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 \r\n
\r\n Mã tiện ích\r\n \r\n Tên tiện ích\r\n \r\n Đơn giá\r\n \r\n Mô tả\r\n \r\n Thao tác\r\n
{{ p.Ma_tien_ich }}{{ p.Ten_tien_ich }}{{ p.Don_gia | number }}{{ p.Mo_ta }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n

Thêm tiện ích vào Loại phòng

\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 Mã tiện ích\r\n \r\n Tên tiện ích\r\n \r\n Đơn giá\r\n \r\n Mô tả\r\n \r\n Thao tác\r\n
{{ p.Ma_tien_ich }}{{ p.Ten_tien_ich }}{{ p.Mo_ta }}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl,FormGroup,FormBuilder,Validators, MaxLengthValidator,} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-add-payment-regulations',\n templateUrl: './add-payment-regulations.component.html',\n styleUrls: ['./add-payment-regulations.component.scss']\n})\nexport class AddPaymentRegulationsComponent implements OnInit {\n dtOptions: DataTables.Settings;\n dtTrigger = new Subject();\n Hinh_thuc_thu:any;\n dataTable=[];\n MonthOption:any=[]\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n constructor(\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) {}\n Insert = new FormGroup({\n Hinh_thuc_thu: new FormControl(true,[Validators.required]),\n Thang: new FormControl((new Date().getMonth() + 1),[Validators.required]),\n Nam: new FormControl((new Date().getFullYear()),[Validators.required]),\n Hoc_ky: new FormControl(1,[Validators.required]),\n Nam_hoc: new FormControl(new Date().getFullYear() + '-' + (new Date().getFullYear() + 1),[Validators.required]),\n So_tien: new FormControl(null,[Validators.required,Validators.min(0)]),\n Phan_tram_mien_giam: new FormControl(0,[Validators.min(0)]),\n So_tien_mien_giam: new FormControl(0,[Validators.min(0)]),\n Thanh_tien: new FormControl(null),\n Noi_dung: new FormControl(null,[removeSpaces]),\n ID_tham_so: new FormControl('ID_khoan_thu_tien_phong',[Validators.required]),\n });\n ngOnInit(): void {\n this.MonthOption = [\n { 'value': 1, 'name': 'Tháng 1' }, { 'value': 2, 'name': 'Tháng 2' },\n { 'value': 3, 'name': 'Tháng 3' }, { 'value': 4, 'name': 'Tháng 4' },\n { 'value': 5, 'name': 'Tháng 5' }, { 'value': 6, 'name': 'Tháng 6' },\n { 'value': 7, 'name': 'Tháng 7' }, { 'value': 8, 'name': 'Tháng 8' },\n { 'value': 9, 'name': 'Tháng 9' }, { 'value': 10, 'name': 'Tháng 10' },\n { 'value': 11, 'name': 'Tháng 11' }, { 'value': 12, 'name': 'Tháng 12' },\n ]\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10, \n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n width:'30px'\n },\n {\n title: 'ID_sv',\n visible:false\n },\n {\n title: 'Mã sinh viên',\n },\n {\n title: 'Họ và tên',\n },\n {\n title: 'Ngày sinh',\n },\n {\n title: 'Quê quán',\n }\n ],\n \"order\": [[ 0, \"desc\" ]]\n };\n \n this.getAll();\n }\n ngAfterViewInit() {\n this.dtTrigger.next();\n }\n ngOnDestroy(): void {\n this.dtTrigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n }\n getAll(){\n \n this.dataTable = [\n {ID_sv:1, Ma_sinh_vien:'15130298',Ho_ten:'Nguyễn Thành Trung',Ngay_sinh:'13/1/1997',Que_quan:'Hải Dương'},\n {ID_sv:2, Ma_sinh_vien:'15124578',Ho_ten:'Lê Thanh Nghị',Ngay_sinh:'13/1/1997',Que_quan:'Hải Dương'},\n {ID_sv:3, Ma_sinh_vien:'15156847',Ho_ten:'Trần Hữu Công',Ngay_sinh:'13/1/1997',Que_quan:'Hải Dương'},\n {ID_sv:4, Ma_sinh_vien:'15142786',Ho_ten:'Lê Thị Thúy',Ngay_sinh:'13/1/1997',Que_quan:'Quảng Ninh'},\n {ID_sv:5, Ma_sinh_vien:'15197524',Ho_ten:'Lăng Văn Nhăng',Ngay_sinh:'13/1/1997',Que_quan:'Bắc Giang'},\n {ID_sv:6, Ma_sinh_vien:'15135555',Ho_ten:'Lừa Văn Quỵt',Ngay_sinh:'13/1/1997',Que_quan:'Hải Phòng'},\n {ID_sv:7, Ma_sinh_vien:'15178999',Ho_ten:'Cao Thanh Lâm',Ngay_sinh:'13/1/1997',Que_quan:'Hà Nội'},\n // {ID_sv:1, Ma_sinh_vien:'15130298',Ho_ten:'Nguyễn Thành Trung',Ngay_sinh:'13/1/1997',Que_quan:'Hải Dương'},\n ];\n }\n changeHinh_thuc() {\n let a = this.Insert.controls.Hinh_thuc_thu.value;\n if (a == \"true\") {\n this.Hinh_thuc_thu = true\n } else {\n this.Hinh_thuc_thu = false\n }\n }\n changeSoTien() {\n let st = this.Insert.controls.So_tien.value\n let a = parseFloat(st ? st.toString() : '0')\n let ptmg = this.Insert.controls.Phan_tram_mien_giam.value\n let b = parseFloat(ptmg ? ptmg.toString() : '0')\n let stmg = this.Insert.controls.So_tien_mien_giam.value\n let c = parseFloat(stmg ? stmg.toString() : '0')\n let d = a - a * b / 100 - c\n this.Insert.patchValue({ Thanh_tien: d })\n }\n\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n Trang chủ\n
  2. \n
  3. Quy định khoản nộp
  4. \n
  5. Thêm mới quy định khoản nộp
  6. \n
\n
\n
\n \n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n \n \n
\n \n \n \n
\n
\n \n \n
\n \n \n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{p.ID_sv}}{{ p.Ma_sinh_vien }}{{ p.Ho_ten }}{{ p.Ngay_sinh }}{{ p.Que_quan }}
\n
\n
\n
\n
\n
\n
\n
\n \n\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, zip } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from \"ngx-spinner\";\nimport { RegulationPaymentService } from 'src/app/utils/services/regulation-payment.service';\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-room-charge',\n templateUrl: './room-charge.component.html',\n styleUrls: ['./room-charge.component.scss']\n})\nexport class RoomChargeComponent implements OnInit {\n Student: any = [];\n onItemDeSelect(a:any){\n }\n ListStudent(item: any) {\n this.Student.push(item)\n }\n ListAllStudent(items: any) {\n }\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n titleConfirm: any\n yearArr: any = []\n Nam_hoc_Arr: any = []\n dataTable: any = [];\n dataStudent: any = [];\n DetailData: any = [];\n MonthOption: any = [];\n dataKhoanNop:any = []\n closeResult: string;\n ClassData: any;\n titleModal: string;\n default: any;\n Ma_sv_filter: any\n Ho_ten_filter: any\n Thang_filter: any = 0\n Nam_filter: any = 0\n Hoc_ky_filter: any = 0\n Nam_hoc_filter: any = 0\n ID_khoan_thu_filter:any = 0\n ID_sv: any\n Hinh_thuc_thu: boolean = true\n Thang: any\n Nam: any\n Hoc_ky: any\n Nam_hoc: any\n Nam_hoc2: any\n So_tien: number = 0\n Phan_tram_mien_giam: number = 0\n So_tien_mien_giam: number = 0\n Thanh_tien: number = 0\n Trang_thai_filter: any = 0\n ID_qdkt: any\n dropdownSettings:any\n selectedItems:any\n myForm:FormGroup;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: any;\n checkConfirm: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải mức học phí tín chỉ...';\n Request: any;\n constructor(\n private modalService: NgbModal,\n private RegulationPaymentService: RegulationPaymentService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n Insert = new FormGroup({\n selectedItems:new FormControl(null,[Validators.required]),\n Hinh_thuc_thu: new FormControl(true,[Validators.required]),\n Thang: new FormControl((new Date().getMonth() + 1),[Validators.required]),\n Nam: new FormControl((new Date().getFullYear()),[Validators.required]),\n Hoc_ky: new FormControl(1,[Validators.required]),\n Nam_hoc: new FormControl(new Date().getFullYear() + '-' + (new Date().getFullYear() + 1),[Validators.required]),\n So_tien: new FormControl(null,[Validators.required,Validators.min(0)]),\n Phan_tram_mien_giam: new FormControl(0,[Validators.min(0)]),\n So_tien_mien_giam: new FormControl(0,[Validators.min(0)]),\n Thanh_tien: new FormControl(null),\n Noi_dung: new FormControl(null,[removeSpaces]),\n ID_tham_so: new FormControl('ID_khoan_thu_tien_phong',[Validators.required]),\n });\n\n ngOnInit() {\n var d = new Date();\n var n = d.getFullYear();\n\n var Nam_hoc = d.getFullYear();\n var out = '';\n for (var i = 0; i < 10; i++) {\n var value = Nam_hoc - 1 + '-' + Nam_hoc;\n out += '';\n Nam_hoc--;\n }\n $('#Nam_hoc').html(out);\n for (var i = 0; i < 10; i++) {\n let object = {\n 'value': n,\n 'name': n\n }\n this.yearArr.push(object)\n n--\n }\n var yearNow = d.getFullYear();\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1)\n let object = {\n 'value': Nam_hoc_string,\n 'name': Nam_hoc_string\n }\n this.Nam_hoc_Arr.push(object)\n yearNow--\n }\n this.MonthOption = [\n { 'value': 1, 'name': 'Tháng 1' }, { 'value': 2, 'name': 'Tháng 2' },\n { 'value': 3, 'name': 'Tháng 3' }, { 'value': 4, 'name': 'Tháng 4' },\n { 'value': 5, 'name': 'Tháng 5' }, { 'value': 6, 'name': 'Tháng 6' },\n { 'value': 7, 'name': 'Tháng 7' }, { 'value': 8, 'name': 'Tháng 8' },\n { 'value': 9, 'name': 'Tháng 9' }, { 'value': 10, 'name': 'Tháng 10' },\n { 'value': 11, 'name': 'Tháng 11' }, { 'value': 12, 'name': 'Tháng 12' },\n ]\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n dom: 'Bfrtip',\n buttons: [\n {\n extend: 'excelHtml5', text: '  Xuất excel ',\n titleAttr: 'Xuất excel ',\n className: \"btn-sm\",\n exportOptions: {\n columns: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n orthogonal: 'export',\n className: \"btn btn-success\",\n format: {\n body: function (data, row, column, node) {\n return data;\n }\n }\n },\n },\n ],\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible:false\n },\n {\n title: 'Loại khoản thu',\n },\n {\n title: 'Mã sinh viên',\n },\n {\n title: 'Họ và tên',\n },\n {\n title: 'Ngày sinh',\n },\n {\n title: 'Học kỳ',\n },\n {\n title: 'Năm học',\n },\n {\n title: 'Tháng',\n },\n {\n title: 'Năm',\n },\n {\n title: 'Số tiền',\n },\n {\n title: 'Phần trăm miễn giảm',\n },\n {\n title: 'Số tiền miễn giảm',\n },\n {\n title: 'Thành tiền',\n },\n {\n title: 'Thao tác',\n width: '75px',\n className: 'dt-center'\n },\n {\n title: 'ID_khoan_thu',\n visible:false\n },\n {\n title: 'Trang thai',\n visible:false\n }\n ],\n \"order\": [[ 0, \"desc\" ]]\n };\n this.getAll(a.Token);\n }\n fill() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_sv_data = data[2]\n let Ho_ten_data = data[3]\n let Hoc_ky_data = data[5]\n let Nam_hoc_data = data[6]\n let Thang_data = data[7]\n let Nam_data = data[8]\n let ID_khoan_thu_data = data[14]\n let Trang_thai_data = data[15]\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let bool4 = true;\n let bool5 = true;\n let bool6 = true;\n let bool7 = true;\n let bool8 = true;\n let fillter = true;\n if (this.Ma_sv_filter != null) {\n var a = Ma_sv_data;\n var b = this.Ma_sv_filter;\n bool1 = (a.toLowerCase()).includes(b.toLowerCase());\n }\n if (this.Ho_ten_filter != null) {\n var a = Ho_ten_data;\n var b = this.Ho_ten_filter;\n bool2 = (a.toLowerCase()).includes(b.toLowerCase());\n }\n if (this.Hoc_ky_filter != 0) {\n var a = Hoc_ky_data;\n var b = this.Hoc_ky_filter\n bool3 = a == b;\n }\n if (this.Nam_hoc_filter != 0) {\n var a = Nam_hoc_data\n var b = this.Nam_hoc_filter\n bool4 = a==b;\n }\n\n if (this.Thang_filter != 0) {\n var a = Thang_data\n var b = this.Thang_filter\n bool5 = a==b;\n }\n if (this.Nam_filter != 0) {\n var a = Nam_data\n var b = this.Nam_filter\n bool6 = a==b;\n }\n if (this.ID_khoan_thu_filter != 0) {\n var a = ID_khoan_thu_data\n var b = this.ID_khoan_thu_filter\n bool7 = a==b;\n }\n if (this.Trang_thai_filter != 0) {\n var a = Trang_thai_data\n var b = this.Trang_thai_filter\n bool8 = a==b;\n }\n if (bool1 && bool2 && bool3 && bool4 && bool5 && bool6 && bool7 && bool8) {\n return true;\n }\n return false;\n });\n }\n getAll(token) {\n \n this.spinner.show();\n this.RegulationPaymentService.getAll(this.Token).subscribe(z => {\n this.dataTable = z.Data;\n this.RegulationPaymentService.getStudent(token).subscribe((student) => {\n for (let i = 0; i < student.Data.length; i++) {\n student.Data[i]['Ma_ho_ten'] = student.Data[i].Ma_sv + \" - \" + student.Data[i].Ho_ten\n }\n this.dataStudent = student.Data;\n this.RegulationPaymentService.SystemParameterRP_List(this.Token).subscribe(z => {\n this.dataKhoanNop = z.Data;\n this.dtTrigger.next();\n this.spinner.hide();\n });\n });\n });\n }\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Add') {\n this.titleModal = 'Thêm mới thiết bị'\n this.checkInsert = false\n } else if (Loai == 'Delete') {\n this.ID_qdkt = Data.ID_quy_dinh_khoan_nop;\n }\n }\n get checkvalue() {\n return this.Insert.controls;\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.RegulationPaymentService.Delete(this.ID_qdkt, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.modalService.dismissAll('DeleteModal');\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getAll(a.Token);\n });\n }\n\n //check value\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n }\n changeHinh_thuc() {\n let a = $('#Hinh_thuc_thu').val();\n if (a == \"true\") {\n this.Hinh_thuc_thu = true\n } else {\n this.Hinh_thuc_thu = false\n }\n }\n changeSoTien() {\n let st = $('#So_tien').val()\n let a = parseFloat(st ? st.toString() : '0')\n let ptmg = $('#Phan_tram_mien_giam').val()\n let b = parseFloat(ptmg ? ptmg.toString() : '0')\n let stmg = $('#So_tien_mien_giam').val()\n let c = parseFloat(stmg ? stmg.toString() : '0')\n let d = a - a * b / 100 - c\n this.Insert.patchValue({ Thanh_tien: d })\n }\n create() {\n this.com = new common(this.router)\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let obj = {}\n let arr = []\n if(this.Insert.controls.selectedItems.value.length>0){\n this.Insert.controls.selectedItems.value.forEach(element => {\n if(this.Insert.controls.Hinh_thuc_thu.value == true){\n obj = {\n ID_sv : element.ID_sv,\n Trang_thai : 0,\n ID_tham_so : this.Insert.controls.ID_tham_so.value,\n Hinh_thuc_thu : true,\n Hoc_ky : 0,\n Nam_hoc : 0,\n Thang : this.Insert.controls.Thang.value,\n Nam : this.Insert.controls.Nam.value,\n So_tien : this.Insert.controls.So_tien.value,\n Phan_tram_mien_giam : this.Insert.controls.Phan_tram_mien_giam.value,\n So_tien_mien_giam : this.Insert.controls.So_tien_mien_giam.value,\n Thanh_tien : this.Insert.controls.Thanh_tien.value,\n Noi_dung : this.Insert.controls.Noi_dung.value,\n }\n }else{\n obj = {\n ID_sv : element.ID_sv,\n Trang_thai : 0,\n ID_tham_so : this.Insert.controls.ID_tham_so.value,\n Hinh_thuc_thu : true,\n Hoc_ky : this.Insert.controls.Hoc_ky.value,\n Nam_hoc : this.Insert.controls.Nam_hoc.value,\n Thang : 0,\n Nam : 0,\n So_tien : this.Insert.controls.So_tien.value,\n Phan_tram_mien_giam : this.Insert.controls.Phan_tram_mien_giam.value,\n So_tien_mien_giam : this.Insert.controls.So_tien_mien_giam.value,\n Thanh_tien : this.Insert.controls.Thanh_tien.value,\n Noi_dung : this.Insert.controls.Noi_dung.value,\n }\n }\n arr.push(obj)\n });\n this.RegulationPaymentService.MultipleInsert(arr, a.Token).subscribe((z) => {\n this.toastr.success(z.Message);\n this.modalService.dismissAll('DeleteModal');\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.getAll(a.Token);\n });\n }\n }\n\n getData() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n }\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n filterById(): void {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n $.fn['dataTable'].ext.search.pop();\n });\n this.fill();\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n\n\n}\n\n","
\n
\n
\n
\n
    \n
  1. \n Trang chủ\n
  2. \n
  3. Quy định khoản nộp
  4. \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_quy_dinh_khoan_nop }}{{ p.Ten_thu_chi }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.Ngay_sinh | date:'dd/MM/yyyy' }}{{ p.Hoc_ky}}{{ p.Nam_hoc }}{{ p.Thang }}{{ p.Nam }}{{ p.So_tien|currency:'VND'}}{{ p.Phan_tram_mien_giam}}{{ p.So_tien_mien_giam | currency:'VND'}}{{ p.Thanh_tien | currency:'VND'}} \n Đã lập biên lai{{p.ID_khoan_thu}}{{p.Trang_thai}}
\n
\n
\n
\n
\n
\n
\n
\n\n\n
\n
\n
\n \n
\n \n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService, ToastrComponentlessModule } from 'ngx-toastr';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { BuildingService } from 'src/app/Utils/services/building.service';\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\nimport { AbstractControl } from '@angular/forms';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { data } from 'jquery';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-room',\n templateUrl: './room.component.html',\n styleUrls: ['./room.component.scss'],\n})\nexport class RoomComponent implements OnInit {\n dtOptions: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n DSCoSo: any;\n DSToaNha: any;\n DSToaNha2: any;\n DSToaNha3: any;\n DSLoaiPhong: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n ID_phong: any;\n ID_co_so: any;\n ID_toa_nha: any;\n Ma_phong: any;\n Ten_phong: any;\n Loai_phong: any;\n ID_loai_phong: any;\n Khoa_phong: any;\n Tang: any;\n Suc_chua: any;\n Ghi_chu: any;\n ID_toa_nha_ft: any = '';\n Ten_phong_ft: any;\n gioi_tinh_ft: any = '';\n loai_phong_ft: any = '';\n ID_co_so_ft: any = '';\n Tang_ft: any = '';\n titleModal: string;\n default: any;\n DataSelect: any;\n Dang_o: any;\n filter: any = false;\n\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách phòng...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Thu_tu: any;\n Insert = new FormGroup({\n ID_phong: new FormControl(null),\n ID_co_so: new FormControl('', [Validators.required]),\n ID_toa_nha: new FormControl('', [Validators.required]),\n Ma_phong: new FormControl(null, [\n Validators.required,\n Validators.maxLength(20),\n removeSpaces,\n ]),\n Ten_phong: new FormControl(null, [\n Validators.required,\n Validators.maxLength(10),\n removeSpaces,\n ]),\n Loai_phong: new FormControl(null),\n Tang: new FormControl(null, [Validators.maxLength(20), removeSpaces]),\n Suc_chua: new FormControl(null, [Validators.required]),\n Ghi_chu: new FormControl(null, [Validators.maxLength(500), removeSpaces]),\n ID_loai_phong: new FormControl(null, [Validators.required]),\n Khoa_phong: new FormControl(null),\n Bao_phong: new FormControl(null),\n Thu_tu: new FormControl(null),\n });\n\n CheckEdit: boolean = false;\n constructor(\n @Inject(AppConfig)\n private readonly appConfig: AppConfiguration,\n private modalService: NgbModal,\n private RoomService: RoomService,\n private CampusService: CampusService,\n private BuildingService: BuildingService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private RoomcategoryService: RoomcategoryService\n ) {}\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let ID_toa_nha_dt = data[3];\n let Ten_phong_dt = data[5];\n let gioi_tinh_dt = data[7];\n let ID_co_so_dt = data[2];\n let Tang_dt = data[6];\n let Loai_phong_dt = data[15];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let bool4 = true;\n let bool5 = true;\n let bool6 = true;\n let fillter = true;\n if (\n this.ID_toa_nha_ft != undefined &&\n this.ID_toa_nha_ft != '' &&\n this.ID_toa_nha_ft != null\n ) {\n var a = ID_toa_nha_dt;\n var b = this.ID_toa_nha_ft;\n bool1 = a == b;\n }\n if (\n this.Tang_ft != undefined &&\n this.Tang_ft != null &&\n this.Tang_ft != ''\n ) {\n var a = Tang_dt;\n var b = this.Tang_ft;\n bool5 = a == b;\n }\n if (\n this.Ten_phong_ft != undefined &&\n this.Ten_phong_ft != '' &&\n this.Ten_phong_ft != null\n ) {\n var a = Ten_phong_dt;\n var b = this.Ten_phong_ft;\n bool2 = a.toLowerCase().includes(b.toLowerCase());\n }\n if (this.gioi_tinh_ft != '' && this.gioi_tinh_ft != undefined) {\n var a = gioi_tinh_dt;\n var b = this.gioi_tinh_ft;\n bool3 = a == b;\n }\n if (this.ID_co_so_ft != '' && this.ID_co_so_ft != undefined) {\n var a = ID_co_so_dt;\n var b = this.ID_co_so_ft;\n bool4 = parseInt(a) == parseInt(b);\n }\n if (this.loai_phong_ft != '' && this.loai_phong_ft != undefined) {\n var a = Loai_phong_dt;\n var b = this.loai_phong_ft;\n bool6 = a == b;\n }\n\n fillter = bool1 && bool2 && bool3 && bool4 && bool5 && bool6;\n\n return fillter;\n });\n\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n className: 'dt-center',\n },\n {\n title: 'ID phòng',\n visible: false,\n },\n {\n title: 'ID cơ sở',\n visible: false,\n },\n {\n title: 'ID toà nhà',\n visible: false,\n },\n {\n title: 'Mã phòng',\n },\n {\n title: 'Tên phòng',\n },\n {\n title: 'Tầng',\n },\n {\n title: 'Giới tính',\n visible: false,\n },\n {\n title: 'Giới tính',\n },\n {\n title: 'Loại phòng',\n },\n {\n title: 'Sức chứa',\n },\n {\n title: 'Đang ở',\n },\n {\n title: 'Giá tiền',\n className: 'dt-right',\n },\n\n {\n title: 'Khoá phòng',\n className: 'dt-center',\n },\n {\n title: 'Bao phòng',\n className: 'dt-center',\n },\n {\n title: 'ID_loai_phong',\n visible: false,\n },\n {\n title: 'Thứ tự',\n },\n {\n title: 'Thao tác',\n width: '18%',\n className: 'dt-center',\n },\n ],\n order: [[3, 'desc']],\n };\n\n this.getList(a.Token);\n\n this.CampusService.getList(a.Token).subscribe((z) => {\n this.DSCoSo = z.Data;\n this.BuildingService.getList(a.Token).subscribe((z) => {\n this.DSToaNha = z.Data;\n this.DSToaNha2 = z.Data;\n this.DSToaNha3 = z.Data;\n });\n this.RoomcategoryService.getList(1, a.Token).subscribe((z) => {\n this.DSLoaiPhong = z.Data;\n });\n });\n }\n ngAfterViewInit() {\n this.dataTable = [];\n this.dtTrigger.next();\n }\n locft() {\n var table = $('#maindata').DataTable();\n table.on('search.dt', function () {\n var tongsucchua = 0;\n var dasudung = 0;\n var controng = 0;\n var length = table.rows({ filter: 'applied' }).nodes().length;\n for (var i = 0; i < length; i++) {\n tongsucchua =\n tongsucchua +\n parseInt(table.rows({ filter: 'applied' }).data()[i][10]);\n dasudung =\n dasudung + parseInt(table.rows({ filter: 'applied' }).data()[i][11]);\n //controng = controng + parseInt(table.rows({ filter: 'applied' }).data()[i][11])\n }\n controng = tongsucchua - dasudung;\n $('#tongsucchua').val(tongsucchua);\n $('#svdango').val(dasudung);\n });\n }\n cosochange() {\n let ID_coso = this.Insert.value.ID_co_so;\n\n if (ID_coso != '') {\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\n return pa.ID_CoSo == ID_coso;\n });\n } else {\n this.DSToaNha2 = this.DSToaNha;\n }\n let ID_coso2 = this.ID_co_so_ft;\n if (ID_coso2 != '') {\n this.DSToaNha3 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\n return pa.ID_CoSo == ID_coso2;\n });\n } else {\n this.DSToaNha3 = this.DSToaNha;\n }\n }\n\n getList(token) {\n this.spinner.show();\n\n this.RoomService.GetAll(token).subscribe(\n (z) => {\n var tongsucchua = 0;\n var dasudung = 0;\n var controng = 0;\n for (var i = 0; i < z.Data.length; i++) {\n if (z.Data[i].Loai_phong == false) {\n z.Data[i].Loai_phong_text = 'Nam';\n } else {\n z.Data[i].Loai_phong_text = 'Nữ';\n }\n // if (z.Data[i].ID_Phong % 2 == 0) { z.Data[i].Loai_phong_kt = 'Loại 1'; z.Data[i].Ghi_chu = '350000' } else { z.Data[i].Loai_phong_kt = 'Loại 2'; z.Data[i].Ghi_chu = '240000' }\n dasudung = dasudung + z.Data[i].Dang_o;\n controng = controng + z.Data[i].Con_trong;\n tongsucchua = tongsucchua + z.Data[i].Suc_chua;\n $('#tongsucchua').val(tongsucchua);\n $('#svdango').val(dasudung);\n }\n this.dataTable = z.Data;\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.dtTrigger.next();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 401) {\n this.dataTable = [];\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.dtTrigger.next();\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n //get\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n this.Insert.reset();\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n this.Insert.reset();\n }\n );\n this.CheckEdit = false;\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa phòng';\n this.checkInsert = false;\n this.Insert.get('ID_co_so').setValue(Data.ID_Co_So);\n this.Insert.get('ID_toa_nha').setValue(Data.ID_Toa_Nha);\n this.Insert.get('Ma_phong').setValue(Data.Ma_phong);\n this.Insert.get('Ten_phong').setValue(Data.Ten_phong);\n this.Insert.get('Loai_phong').setValue(Data.Loai_phong);\n this.Insert.get('Tang').setValue(Data.Tang);\n this.Insert.get('Suc_chua').setValue(Data.Suc_chua);\n this.Insert.get('Ghi_chu').setValue(Data.Ghi_chu);\n this.Insert.get('Thu_tu').setValue(Data.Thu_tu);\n this.Insert.get('Bao_phong').setValue(Data.Bao_phong);\n this.Insert.get('Khoa_phong').setValue(Data.Khoa_phong);\n this.Insert.get('ID_loai_phong').setValue(Data.ID_loai_phong);\n this.check = Data.Ma_phong;\n this.ID_phong = Data.ID_Phong;\n this.ID_co_so = Data.ID_Co_So;\n let IDcs = Data.ID_Co_So;\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\n return pa.ID_CoSo == IDcs;\n });\n this.ID_toa_nha = Data.ID_Toa_Nha;\n this.Ma_phong = Data.Ma_phong;\n this.Ten_phong = Data.Ten_phong;\n this.Tang = Data.Tang;\n this.Loai_phong = Data.Loai_phong;\n this.Suc_chua = Data.Suc_chua;\n this.Ghi_chu = Data.Ghi_chu;\n this.Thu_tu = Data.Thu_tu;\n this.Dang_o = Data.Dang_o;\n this.ID_loai_phong = Data.ID_loai_phong;\n this.Insert.controls['Bao_phong'].enable({\n onlySelf: true,\n emitEvent: true,\n });\n if (this.Dang_o > 0) {\n this.Insert.controls['Bao_phong'].disable({\n onlySelf: true,\n emitEvent: false,\n });\n this.CheckEdit = true;\n }\n } else if (Loai == 'Add') {\n this.onReset();\n this.titleModal = 'Thêm mới phòng';\n this.checkInsert = true;\n this.Insert.reset();\n this.Insert.controls['Bao_phong'].enable({\n onlySelf: true,\n emitEvent: true,\n });\n // this.ID_co_so = this.DSCoSo[0].ID;\n let IDcs = this.DSCoSo[0].ID;\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\n return pa.ID_CoSo == IDcs;\n });\n // this.ID_toa_nha = this.DSToaNha2[0].ID_ToaNha;\n this.Loai_phong = false;\n this.Insert.get('Bao_phong').setValue(false);\n this.Insert.get('Khoa_phong').setValue(false);\n } else if (Loai == 'Delete') {\n this.ID_phong = Data.ID_Phong;\n }\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n filterById() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n });\n $('#SelectALL').prop('checked', false);\n this.locft();\n }\n\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n this.ID_phong = '';\n this.ID_co_so = '';\n this.ID_toa_nha = '';\n this.Ma_phong = '';\n this.Ten_phong = '';\n this.Tang = '';\n this.Loai_phong = '';\n this.Suc_chua = '';\n this.Ghi_chu = '';\n this.Thu_tu = '';\n }\n // create\n create() {\n let InputDatas = {\n ID_Phong: this.ID_phong,\n ID_Co_So: this.Insert.value.ID_co_so,\n ID_Toa_Nha: this.Insert.value.ID_toa_nha,\n Ma_phong: this.Insert.value.Ma_phong,\n Ten_phong: this.Insert.value.Ten_phong,\n Loai_phong: this.Insert.value.Loai_phong,\n Tang: this.Insert.value.Tang,\n Suc_chua: this.Insert.value.Suc_chua,\n Ghi_chu: this.Insert.value.Ghi_chu,\n Thu_tu: this.Insert.value.Thu_tu,\n ID_loai_phong: this.Insert.value.ID_loai_phong,\n Khoa_phong: this.Insert.value.Khoa_phong,\n Bao_phong: this.Insert.value.Bao_phong,\n };\n let code = {\n Ma_phong: this.Insert.value.Ma_phong,\n };\n this.modalService.dismissAll('AddModal');\n\n if (this.checkInsert == false) {\n if (this.check == this.Insert.value.Ma_phong) {\n this.RoomService.Update(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.getList(this.Token);\n });\n } else {\n this.RoomService.CheckExist(code, this.Token).subscribe((z) => {\n if (z.Status == 9) {\n this.RoomService.Update(InputDatas, this.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.error('Cập nhật thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Cập nhật thành công!');\n } else {\n this.toastr.warning(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n this.getList(this.Token);\n });\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã phòng!');\n }\n });\n }\n } else {\n this.RoomService.CheckExist(code, this.Token).subscribe((z) => {\n if (z.Status == 9) {\n this.RoomService.Insert(InputDatas, this.Token).subscribe(\n (z) => {\n if (z.Status != 1) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success('Thêm mới thành công!');\n this.modalService.dismissAll('AddModal');\n this.getList(this.Token);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n } else if (z.Status == 8) {\n this.toastr.warning('Đã tồn tại mã phòng!');\n }\n });\n }\n }\n\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let Data = {\n ID_phong: this.ID_phong,\n };\n this.RoomService.Delete(Data, a.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.warning(z.Message);\n }\n this.getList(a.Token);\n });\n }\n SelectRow(ID_Phong) {\n for (let index = 0; index < this.dataTable.length; index++) {\n if (this.dataTable[index].ID_Phong == ID_Phong) {\n if ($('#checkbox' + ID_Phong).prop('checked')) {\n {\n this.dataTable[index].Selected = true;\n }\n } else {\n this.dataTable[index].Selected = false;\n }\n break;\n }\n }\n }\n chonall() {\n var table = $('#maindata').DataTable().rows({ filter: 'applied' }).data();\n var length = table.rows({ filter: 'applied' }).nodes().length;\n var lstID = [];\n for (var i = 0; i < length; i++) {\n var IDPhong = parseInt(table[i][1]);\n lstID.push(IDPhong);\n }\n for (let index = 0; index < this.dataTable.length; index++) {\n if (lstID.includes(this.dataTable[index].ID_Phong)) {\n this.dataTable[index].Selected = $('#SelectALL').prop('checked');\n }\n }\n }\n KhoaPhong() {\n var dt = jQuery.grep(this.dataTable, function (pa: any, i) {\n return pa.Selected;\n });\n var dtstring = this.GetStringID(dt);\n let data = {\n dsID: dtstring,\n };\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.RoomService.Lock(data, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.success(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalService.dismissAll('AddModal');\n this.getList(a.Token);\n } else {\n this.toastr.warning(z.Message);\n }\n });\n }\n GetStringID(m) {\n var rs = '';\n for (var k = 0; k < m.length; k++) {\n if (k == 0) {\n rs += m[k].ID_Phong;\n } else {\n rs += ',' + m[k].ID_Phong;\n }\n }\n return rs;\n }\n help() {\n const urlHelp =\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QLPhong;\n window.open(urlHelp, '_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Phòng ký túc xá
  4. \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n Chọn cơ sở\n {{\n p.name\n }}\n \n
\n
\n \n \n Chọn toà nhà\n {{\n p.Ten_ToaNha\n }}\n \n
\n
\n \n \n Chọn loại phòng\n {{\n p.Ten_loai_phong\n }}\n \n
\n
\n \n \n Chọn phòng Nam/Nữ\n Phòng Nam\n Phòng Nữ\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n \n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n {{ p.ID_Phong }}{{ p.ID_Co_So }}{{ p.ID_Toa_Nha }}{{ p.Ma_phong }}{{ p.Ten_phong }}{{ p.Tang }}{{ p.Loai_phong }}{{ p.Loai_phong_text }}{{ p.Ten_loai_phong }}{{ p.Suc_chua }}{{ p.Dang_o }}{{ p.Gia_tien | number }}\n
\n
\n Đã khoá\n
\n
\n
\n
\n Chưa khoá\n
\n
\n
\n
\n \n
\n
\n \n
\n
{{ p.ID_loai_phong }}{{ p.Thu_tu }}\n \n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Vui lòng chọn cơ sở\n
\n
\n
\n
\n \n \n
\n
\n Vui lòng chọn toà nhà\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Mã phòng không được bỏ trống!\n
\n
\n Mã phòng tối đa 20 ký tự!\n
\n
\n
\n
\n \n \n
\n
\n Tên phòng không được bỏ trống!\n
\n
\n Tên phòng tối đa 10 ký tự!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n Tầng tối đa 20 ký tự!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n Loại phòng không được để trống\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n Sức chứa không được để trống\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n Ghi chú tối đa 500 ký tự!\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { DeviceService } from 'src/app/Utils/services/device.service';\n@Component({\n selector: 'app-roomdetail',\n templateUrl: './roomdetail.component.html',\n styleUrls: ['./roomdetail.component.scss']\n})\nexport class RoomdetailComponent implements OnInit {\n dtOptions: DataTables.Settings;\n DSThietBi: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n IDphong: any;\n Maphong:any;\n ID_phong_thiet_bi: any;\n ID_phong: any;\n ID_thiet_bi: any;\n Ma_thiet_bi: any;\n Ten_thiet_bi: any;\n Trang_thai: any;\n So_luong: any;\n Ghi_chu: any;\n Ma_thiet_bi_ft: any;\n Ten_thiet_bi_dt: any;\n Trang_thai_ft:any=\"\";\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách thiết bị trong phòng ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Insert = new FormGroup({\n ID_phong_thiet_bi: new FormControl(null),\n ID_phong: new FormControl(null),\n ID_thiet_bi: new FormControl(null, [Validators.required]),\n Trang_thai: new FormControl(null),\n So_luong: new FormControl(null, [Validators.required]),\n Ghi_chu: new FormControl(null, [Validators.maxLength(500)]),\n });\n Fillter = new FormGroup({\n Ma_thiet_bi_ft: new FormControl(null),\n Ten_thiet_bi_dt: new FormControl(null),\n Trang_thai_ft: new FormControl(null)\n });\n constructor(\n private modalService: NgbModal,\n private RoomService: RoomService,\n private DeviceService: DeviceService,\n private fb: FormBuilder,\n public router: Router,\n public route: ActivatedRoute,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n this.route.queryParams\n .subscribe(params => {\n this.IDphong = params.ID_Phong;\n this.Maphong=params.Ma_phong;\n });\n \n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_thiet_bi_dt = data[3];\n let Ten_thiet_bi_dt = data[4];\n let Trang_thai_dt=data[5];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let fillter = true;\n if (this.Ma_thiet_bi_ft != undefined) {\n var a = this.removeAccents(Ma_thiet_bi_dt)\n var b = this.removeAccents(this.Ma_thiet_bi_ft)\n bool1 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Ten_thiet_bi_dt != undefined) {\n var a = this.removeAccents(Ten_thiet_bi_dt)\n var b = this.removeAccents(this.Ten_thiet_bi_dt)\n bool2 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Trang_thai_ft != \"\") {\n bool3 = Trang_thai_dt==this.Trang_thai_ft;\n } else {\n bool3 = true;\n }\n fillter = bool1 && bool2 && bool3\n return fillter;\n });\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID phòng thiết bị',\n visible: false,\n },\n {\n title: 'ID phòng',\n visible: false,\n },\n {\n title: 'ID thiết bị',\n visible: false,\n },\n {\n title: 'Mã thiết bị',\n },\n {\n title: 'Tên thiết bị',\n },\n {\n title: 'Trạng thái',\n visible: false,\n },\n {\n title: 'Trạng thái',\n },\n {\n title: 'Số lượng',\n },\n {\n title: 'Ghi chú',\n },\n {\n title: 'Thao tác',\n width: \"18%\",\n className: \"dt-center\"\n },\n ],\n };\n this.DeviceService.getList(a.Token).subscribe(z => {\n this.DSThietBi = z.Data;\n this.getList(a.Token);\n })\n\n }\n removeAccents(str) {\n var AccentsMap = [\n \"aàảãáạăằẳẵắặâầẩẫấậ\",\n \"AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ\",\n \"dđ\", \"DĐ\",\n \"eèẻẽéẹêềểễếệ\",\n \"EÈẺẼÉẸÊỀỂỄẾỆ\",\n \"iìỉĩíị\",\n \"IÌỈĨÍỊ\",\n \"oòỏõóọôồổỗốộơờởỡớợ\",\n \"OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ\",\n \"uùủũúụưừửữứự\",\n \"UÙỦŨÚỤƯỪỬỮỨỰ\",\n \"yỳỷỹýỵ\",\n \"YỲỶỸÝỴ\"\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n getList(token) {\n this.spinner.show();\n this.RoomService.PhongThietBiGetAll(this.IDphong, token).subscribe((z) => {\n for(var i=0;i {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Edit') {\n this.titleModal = 'Sửa';\n this.checkInsert = false;\n this.Insert.get('ID_thiet_bi').setValue(Data.ID_thiet_bi);\n this.Insert.get('Trang_thai').setValue(Data.Trang_thai);\n this.Insert.get('So_luong').setValue(Data.So_luong);\n this.Insert.get('Ghi_chu').setValue(Data.Ghi_chu);\n this.ID_phong_thiet_bi = Data.ID_phong_thiet_bi;\n this.ID_thiet_bi = Data.ID_thiet_bi;\n this.Trang_thai = Data.Trang_thai;\n this.So_luong = Data.So_luong;\n this.Ghi_chu = Data.Ghi_chu;\n } else if (Loai == 'Add') {\n this.onReset();\n this.titleModal = 'Thêm mới';\n this.checkInsert = true;\n this.Insert.reset();\n this.ID_thiet_bi = this.DSThietBi[0].ID;\n this.Trang_thai = true;\n } else if (Loai == 'Delete') {\n this.ID_phong_thiet_bi = Data.ID_phong_thiet_bi;\n }\n }\n //check value\n get checkvalue() {\n return this.Insert.controls;\n }\n filterById() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n });\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n return false;\n }\n this.create();\n }\n onReset() {\n this.submitted = false;\n this.Insert.reset();\n this.ID_phong_thiet_bi = '';\n this.ID_thiet_bi = '';\n this.Trang_thai = '';\n this.So_luong = '';\n this.Ghi_chu = '';\n }\n // create\n create() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let InputDatas = {\n ID_phong_thiet_bi: this.ID_phong_thiet_bi,\n ID_Phong: this.IDphong,\n ID_thiet_bi: this.ID_thiet_bi,\n So_luong: this.So_luong,\n Trang_thai: this.Trang_thai,\n Ghi_chu: this.Ghi_chu,\n };\n if (this.checkInsert == false) {\n this.RoomService.PhongThietBiUpdate(InputDatas, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else if (z.Status == 4) {\n this.toastr.error('Cập nhật không thành công!');\n }\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n });\n } else {\n this.RoomService.PhongThietBiInsert(InputDatas, a.Token).subscribe((z) => {\n if (z.Status == 2) {\n this.toastr.success('Thêm mới thất bại!');\n } else if (z.Status == 1) {\n this.toastr.success('Thêm mới thành công!');\n this.modalService.dismissAll('AddModal');\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n }else if(z.Status == 8){\n this.toastr.warning(z.Message);\n }\n });\n }\n }\n //modal\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n\n $.fn['dataTable'].ext.search.pop();\n }\n Delete() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n let Data = {\n ID_phong_thiet_bi: this.ID_phong_thiet_bi\n }\n this.RoomService.PhongThietBiDelete(Data, a.Token).subscribe((z) => {\n this.modalService.dismissAll('AddModal');\n if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n } else {\n this.toastr.error(z.Message);\n }\n this.datatableElement.dtInstance.then(\n (dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n }\n );\n this.getList(a.Token);\n });\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Phòng ký túc xá
  4. \n
  5. Thiết bị trong phòng {{Maphong}}
  6. \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_phong_thiet_bi }}{{ p.ID_phong }}{{ p.ID_thiet_bi }}{{ p.Ma_thiet_bi }}{{ p.Ten_thiet_bi }}{{ p.Trang_thai }}{{ p.Trang_thai_text }}{{ p.So_luong}}{{ p.Ghi_chu }}\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n
\n \n \n
\n
\n Vui lòng chọn thiết bị\n
\n
\n
\n
\n \n \n
\n
\n Số lượng không được để trống\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n Ghi chú tối đa 500 ký tự!\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-roomtypes',\n templateUrl: './roomtypes.component.html',\n styleUrls: ['./roomtypes.component.scss']\n})\nexport class RoomtypesComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

roomtypes works!

\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { SearchLogService } from 'src/app/Utils/services/search-log.service';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n@Component({\n selector: 'app-search-log',\n templateUrl: './search-log.component.html',\n styleUrls: ['./search-log.component.scss'],\n})\nexport class SearchLogComponent implements OnInit {\n dtOptions: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n ID_ToaNha: any;\n dataTable: any = [];\n dataCampus: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n Ma_ToaNha: any;\n Ten_ToaNha: any;\n address: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkAction: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải ...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n FillChucNang: string = '';\n FillThaoTac: number = 3;\n FillFromDate: any;\n FillToDate: any;\n constructor(\n private SearchLogService: SearchLogService,\n public router: Router,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService\n ) {}\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n \n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n dom: 'Bfrtip',\n buttons: [\n {\n extend: 'excelHtml5',\n text: '  Xuất excel ',\n titleAttr: 'Xuất excel ',\n className: 'btn-sm',\n exportOptions: {\n columns: [0, 1, 2, 3, 4, 5],\n orthogonal: 'export',\n className: 'btn btn-success',\n format: {\n body: function (data, row, column, node) {\n return data;\n },\n },\n },\n },\n ],\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'Chức năng',\n },\n {\n title: 'Sự kiện',\n },\n {\n title: 'Nội dung',\n width: '50%',\n },\n {\n title: 'Máy trạm',\n },\n {\n title: 'Thời điểm',\n },\n {\n title: 'Người dùng',\n width: '10%',\n },\n ],\n };\n }\n\n ngAfterViewInit() {\n this.dataTable = [];\n this.dtTrigger.next();\n }\n getList() {\n this.spinner.show();\n this.SearchLogService.GetAll(\n this.FillChucNang,\n this.FillThaoTac,\n this.FillFromDate,\n this.FillToDate,\n this.Token\n ).subscribe(\n (z) => {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n }\n //get list table all\n\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n // Do not forget to unsubscribe the event\n this.dtTrigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n }\n\n cleanDataTable() {\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.destroy();\n });\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Tra cứu log
  4. \n
\n
\n \n
\n
\n
\n\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Đăng kýXếp phòngDanh sách ởBiên lai hóa đơnCơ sởTòa nhàPhòngLoại phòngThiết bịQuy định đăng kýDanh sách hạn chếDanh sách raQuy định khoản thu{{ p.Su_kien }}{{ p.Noi_dung }}{{ p.May_tram }}{{ p.Thoi_diem | date: 'dd/MM/yyy , h:mm:ss a' }}{{ p.User_name }}
\n
\n
\n
\n
\n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { common } from 'src/app/app.common';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport { BaseComponent } from '../base/base.component';\r\n\r\n@Component({\r\n selector: 'app-statistical-money',\r\n templateUrl: './statistical-money.component.html',\r\n styleUrls: ['./statistical-money.component.scss'],\r\n})\r\nexport class StatisticalMoneyComponent extends BaseComponent implements OnInit {\r\n ID_thu_chi_list: any = '';\r\n Ma_sv: any = '';\r\n Ho_ten: any = '';\r\n Nam: any = '';\r\n Thang: any = '';\r\n Token: string;\r\n dataKhoanNopKTX: any = [];\r\n dataRoom: any = [];\r\n Nam_arr: any = [];\r\n So_tien_con_phai_thu: any = 0;\r\n So_tien_con_phai_tra: any = 0;\r\n So_tien_da_nop: any = 0;\r\n So_tien_da_tra: any = 0;\r\n So_tien_phai_thu: any = 0;\r\n TatCa: string = '';\r\n Thieu_thua: any = 0;\r\n ID_co_so: any;\r\n ID_toa_nha: any;\r\n Ten_phong: any = '';\r\n Hoc_ky: any = '';\r\n Nam_hoc: any = '';\r\n Tu_ngay: any = '';\r\n Den_ngay: any = '';\r\n yeardate: any = [];\r\n public com: common;\r\n ngOnInit() {\r\n var yearNow = new Date().getFullYear();\r\n for (var i = 0; i < 9; i++) {\r\n let object = {\r\n value: yearNow,\r\n name: yearNow,\r\n };\r\n this.Nam_arr.push(object);\r\n yearNow--;\r\n }\r\n\r\n var Nam_hoc = new Date().getFullYear();\r\n for (var i = 0; i < 9; i++) {\r\n let object = {\r\n value: Nam_hoc + '-' + (Nam_hoc + 1),\r\n name: Nam_hoc,\r\n };\r\n this.yeardate.push(object);\r\n Nam_hoc--;\r\n }\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.KhoanNopKTX();\r\n this.getListCampus();\r\n }\r\n KhoanNopKTX() {\r\n this.spinner.show();\r\n this.StatisticalMoneyService.KhoanNopKTX(this.Token).subscribe(\r\n (z) => {\r\n z.Data.forEach((element, index) => {\r\n this.TatCa += element.ID_thu_chi + ',';\r\n });\r\n this.TatCa += '0';\r\n let input = '';\r\n if (this.ID_thu_chi_list == '') {\r\n input = this.TatCa;\r\n } else {\r\n input = this.ID_thu_chi_list;\r\n }\r\n let Nam_hoc;\r\n if (this.Thang > 8) {\r\n Nam_hoc =\r\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\r\n } else {\r\n Nam_hoc =\r\n new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\r\n }\r\n let dataFilter = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n ID_thu_chi_list: input,\r\n Ma_sv: this.Ma_sv.trim(),\r\n Ho_ten: this.Ho_ten.trim(),\r\n Thieu_thua: this.Thieu_thua,\r\n ID_co_so_filter: this.ID_co_so,\r\n ID_toa_nha_filter: this.ID_toa_nha,\r\n Ten_phong: this.Ten_phong.trim(),\r\n Hoc_ky: 1,\r\n Nam_hoc: Nam_hoc,\r\n Thang: this.Thang,\r\n };\r\n this.StatisticalMoneyService.Count(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n }\r\n );\r\n this.dataKhoanNopKTX = z.Data;\r\n this.getList();\r\n },\r\n (err) => {\r\n this.spinner.hide();\r\n if (err.status == 401) {\r\n this.dataTable = [];\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n ExportExcel() {\r\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\r\n if (r) {\r\n this.spinner.show();\r\n this.page = 1;\r\n let input = '';\r\n if (this.ID_thu_chi_list == '') {\r\n input = this.TatCa;\r\n } else {\r\n input = this.ID_thu_chi_list;\r\n }\r\n let Nam_hoc;\r\n if (this.Thang > 8) {\r\n Nam_hoc =\r\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\r\n } else {\r\n Nam_hoc = new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\r\n }\r\n let dataFilter = {\r\n So_ban_ghi: 1000000000,\r\n Trang: 1,\r\n ID_thu_chi_list: input,\r\n Ma_sv: this.Ma_sv.trim(),\r\n Ho_ten: this.Ho_ten.trim(),\r\n Thieu_thua: this.Thieu_thua,\r\n ID_co_so_filter: this.ID_co_so,\r\n ID_toa_nha_filter: this.ID_toa_nha,\r\n Ten_phong: this.Ten_phong.trim(),\r\n Hoc_ky: this.Hoc_ky,\r\n Thang: this.Thang,\r\n Nam_hoc: this.Nam_hoc,\r\n Tu_ngay: this.Tu_ngay,\r\n Den_ngay: this.Den_ngay,\r\n };\r\n this.StatisticalMoneyService.Export(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.exportService.exportExcelByte(z.FileData, 'ThongKeKhoanNop');\r\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\r\n this.spinner.hide();\r\n this.modalService.dismissAll('ExportExcel');\r\n } else {\r\n this.toastr.error(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n }\r\n );\r\n }\r\n }\r\n getList() {\r\n this.spinner.show();\r\n this.page = 1;\r\n this.arrNumberPage = [];\r\n this.arrNumberPage_chil = [];\r\n // this.So_tien_phai_thu = 0;\r\n // this.So_tien_da_thu = 0;\r\n // this.So_tien_con_phai_thu = 0;\r\n // this.So_tien_thu_thua = 0;\r\n let input = '';\r\n if (this.ID_thu_chi_list == '') {\r\n input = this.TatCa;\r\n } else {\r\n input = this.ID_thu_chi_list;\r\n }\r\n let Nam_hoc;\r\n let Hoc_ky = 1;\r\n if (this.Thang == '') {\r\n Nam_hoc = '';\r\n Hoc_ky = null;\r\n } else {\r\n if (this.Thang > 8) {\r\n Nam_hoc =\r\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\r\n } else {\r\n Nam_hoc = new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\r\n }\r\n }\r\n\r\n let dataFilter = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n ID_thu_chi_list: input,\r\n Ma_sv: this.Ma_sv.trim(),\r\n Ho_ten: this.Ho_ten.trim(),\r\n Thieu_thua: this.Thieu_thua,\r\n ID_co_so_filter: this.ID_co_so,\r\n ID_toa_nha_filter: this.ID_toa_nha,\r\n Ten_phong: this.Ten_phong.trim(),\r\n Hoc_ky: this.Hoc_ky,\r\n Thang: this.Thang,\r\n Nam_hoc: this.Nam_hoc,\r\n Tu_ngay: this.Tu_ngay,\r\n Den_ngay: this.Den_ngay,\r\n };\r\n this.StatisticalMoneyService.GetAll(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n this.dataTable = z.Data;\r\n // this.dataTable.forEach((element, index) => {\r\n // this.So_tien_phai_thu += element.So_tien_nop;\r\n // this.So_tien_da_thu += element.So_tien_da_nop;\r\n // if (element.So_tien_nop >= element.So_tien_da_nop) {\r\n // this.So_tien_con_phai_thu += element.Thua_thieu;\r\n // } else {\r\n // this.So_tien_thu_thua += Math.abs(element.Thua_thieu);\r\n // }\r\n // });\r\n this.spinner.hide();\r\n }\r\n );\r\n this.StatisticalMoneyService.TotalFilter(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n this.So_tien_con_phai_thu = z.So_tien_con_phai_thu;\r\n this.So_tien_con_phai_tra = z.So_tien_con_phai_tra;\r\n this.So_tien_da_nop = z.So_tien_da_nop;\r\n this.So_tien_da_tra = z.So_tien_da_tra;\r\n this.So_tien_phai_thu = z.So_tien_phai_thu;\r\n }\r\n );\r\n this.StatisticalMoneyService.CountFilter(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n this.spinner.hide();\r\n }\r\n );\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n refesh() {\r\n this.ID_thu_chi_list = '';\r\n this.Ma_sv = '';\r\n this.Ho_ten = '';\r\n this.Thieu_thua = '0';\r\n this.ID_co_so = '';\r\n this.ID_toa_nha = '';\r\n this.Ten_phong = '';\r\n this.Nam = '';\r\n this.Thang = '';\r\n this.Nam_hoc = '';\r\n this.Tu_ngay = '';\r\n this.Den_ngay = '';\r\n this.getList();\r\n }\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n let input = '';\r\n if (this.ID_thu_chi_list == '') {\r\n input = this.TatCa;\r\n } else {\r\n input = this.ID_thu_chi_list;\r\n }\r\n let Nam_hoc;\r\n if (this.Thang > 8) {\r\n Nam_hoc = new Date().getFullYear() + '-' + (new Date().getFullYear() + 1);\r\n } else {\r\n Nam_hoc = new Date().getFullYear() - 1 + '-' + new Date().getFullYear();\r\n }\r\n let dataFilter = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n ID_thu_chi_list: input,\r\n Ma_sv: this.Ma_sv.trim(),\r\n Ho_ten: this.Ho_ten.trim(),\r\n Thieu_thua: this.Thieu_thua,\r\n ID_co_so_filter: this.ID_co_so,\r\n ID_toa_nha_filter: this.ID_toa_nha,\r\n Ten_phong: this.Ten_phong.trim(),\r\n Hoc_ky: 1,\r\n Nam_hoc: Nam_hoc,\r\n Thang: this.Thang,\r\n Tu_ngay: this.Tu_ngay,\r\n Den_ngay: this.Den_ngay,\r\n };\r\n this.StatisticalMoneyService.GetAll(dataFilter, this.Token).subscribe(\r\n (z) => {\r\n this.dataTable = z.Data;\r\n this.spinner.hide();\r\n }\r\n );\r\n }\r\n open(content, sizm) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n }\r\n changeCampus() {\r\n this.getListBuilding(this.ID_co_so);\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QDKhoanNop;\r\n window.open(urlHelp, '_blank');\r\n }\r\n}\r\n","
\n \n
\n
\n
\n
\n
\n
\n \n \n Tất cả\n {{ i.Ten_thu_chi }}\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n Tất cả\n Có khoản chưa đóng\n Có khoản thu thừa\n Đã hoàn thành khoản nộp\n \n
\n
\n \n \n \n \n \n \n \n
\n
\n \n \n Tất cả\n {{\n value.value\n }}\n \n
\n \n
\n
\n
\n \n \n Tất cả\n {{\n i.code\n }}\n \n
\n
\n \n \n Tất cả\n {{\n i.Ten_ToaNha\n }}\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n\n
\n

Bạn có muốn xuất excel dữ liệu này không?

\n
\n\n
\n
\n \n Tải xuống\n \n \n Đóng\n \n
\n
\n
\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { RoomService } from 'src/app/Utils/services/room.service';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { StatisticalService } from 'src/app/Utils/services/statistical.service';\nimport { BuildingService } from 'src/app/Utils/services/building.service';\nimport { CampusService } from 'src/app/Utils/services/campus.service';\nimport { ExportService } from 'src/app/Utils/services/export.service';\n@Component({\n selector: 'app-statistical',\n templateUrl: './statistical.component.html',\n styleUrls: ['./statistical.component.scss']\n})\nexport class StatisticalComponent implements OnInit {\n dtOptions: DataTables.Settings;\n DSCoSo:any;\n DSToaNha:any;\n DSToaNha2:any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n closeResult: string;\n ClassData: any;\n titleModal: string;\n default: any;\n Ma_sv_ft: any;\n Loai_thu_ft:any= 0;\n Thang_nam_ft:any;\n Hoc_ky_ft:any =0;\n Trang_thai_ft:any =0;\n show:any = 0\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n \n Fillter = new FormGroup({\n Ma_sv_ft: new FormControl(null),\n Loai_thu_ft: new FormControl(0),\n Thang_nam_ft: new FormControl(null),\n Hoc_ky_ft:new FormControl(null),\n Trang_thai_ft:new FormControl(null),\n });\n\n constructor(\n private modalService: NgbModal,\n private StatisticalService: StatisticalService,\n private BuildingService: BuildingService,\n private CampusService: CampusService,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n public exportService: ExportService\n ) { }\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n ngOnInit() {\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\n let Ma_sv_dt = data[1];\n let Trang_thai_dt=data[7];\n let Loai_thu_dt = data[10];\n let Thang_dt = data[14];\n let Nam_dt = data[15];\n let Hoc_ky_dt = data[12];\n let bool1 = true;\n let bool2 = true;\n let bool3 = true;\n let bool4 = true;\n let bool5=true;\n let bool6=true;\n let fillter = true;\n if (this.Ma_sv_ft != undefined) {\n var a = this.removeAccents(Ma_sv_dt)\n var b = this.removeAccents(this.Ma_sv_ft)\n bool1 = a.toLowerCase().includes(b.toLowerCase())\n }\n if (this.Loai_thu_ft != 0) {\n var a = Loai_thu_dt\n var b = this.Loai_thu_ft\n bool2 = a == b\n }\n if (this.Hoc_ky_ft != 0) {\n var a = Hoc_ky_dt\n var b = this.Hoc_ky_ft\n bool3= a == b\n }\n if(this.Trang_thai_ft !=0){\n var a = this.removeAccents(Trang_thai_dt)\n var b = this.removeAccents(this.Trang_thai_ft)\n bool6 = a.toLowerCase().includes(b.toLowerCase()) \n }\n \n if (this.Thang_nam_ft != \"\" && this.Thang_nam_ft != undefined) { \n var nam = this.Thang_nam_ft.substring(0,4)\n var thang = this.Thang_nam_ft.substring(5,7)\n bool4 =nam==Nam_dt\n bool5 =parseInt(thang)==parseInt(Thang_dt)\n }\n \n\n fillter = bool1 && bool2 && bool3 && bool4 && bool5 && bool6\n return fillter; \n });\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID sv',\n visible: false,\n },\n {\n title: 'Mã sinh viên',\n },\n {\n title: 'Họ tên',\n },\n {\n title: 'ID cơ sở',\n visible: false,\n },\n {\n title: 'ID toà nhà',\n visible: false,\n },\n {\n title: 'ID phòng',\n visible: false,\n },\n {\n title: 'Tên phòng',\n },\n {\n title: 'Trạng thái nộp',visible: false,\n },\n {\n title: 'Trạng thái nộp',\n },\n {\n title: 'Hình thức thu',visible: false,\n },\n {\n title: 'Loại khoản thu', visible: false,\n },\n {\n title: 'Loại khoản thu',\n },\n {\n title: 'Học kỳ',\n },\n {\n title: 'Năm học',\n },\n {\n title: 'Tháng',\n },\n {\n title: 'Năm',\n },\n {\n title: 'Thành tiền', \n },\n {\n title: 'Ngày quy định', visible: false,\n },\n {\n title: 'Số biên lai',\n },\n \n ],\n };\n this.CampusService.getList(a.Token).subscribe(z=>{\n this.DSCoSo=z.Data;\n this.BuildingService.getList(a.Token).subscribe(z=>{\n this.DSToaNha=z.Data;\n this.DSToaNha2=z.Data;\n this.getList(a.Token);\n })\n })\n \n }\n cosochange(){\n let ID_coso = $('#ID_co_so').val();\n this.DSToaNha2 = jQuery.grep(this.DSToaNha,\n function (pa: any, i) {\n return pa.ID_CoSo == ID_coso;\n });\n }\n removeAccents(str) {\n var AccentsMap = [\n \"aàảãáạăằẳẵắặâầẩẫấậ\",\n \"AÀẢÃÁẠĂẰẲẴẮẶÂẦẨẪẤẬ\",\n \"dđ\", \"DĐ\",\n \"eèẻẽéẹêềểễếệ\",\n \"EÈẺẼÉẸÊỀỂỄẾỆ\",\n \"iìỉĩíị\",\n \"IÌỈĨÍỊ\",\n \"oòỏõóọôồổỗốộơờởỡớợ\",\n \"OÒỎÕÓỌÔỒỔỖỐỘƠỜỞỠỚỢ\",\n \"uùủũúụưừửữứự\",\n \"UÙỦŨÚỤƯỪỬỮỨỰ\",\n \"yỳỷỹýỵ\",\n \"YỲỶỸÝỴ\"\n ];\n for (var i = 0; i < AccentsMap.length; i++) {\n var re = new RegExp('[' + AccentsMap[i].substr(1) + ']', 'g');\n var char = AccentsMap[i][0];\n str = str.replace(re, char);\n }\n return str;\n }\n getList(token) {\n this.spinner.show();\n this.StatisticalService.GetAll(token).subscribe((z) => { \n z.Data.forEach(a => {\n if( a.ID_khoan_thu == 10){a.ID_khoan_thu_text=\"Tiền điện\"}\n if( a.ID_khoan_thu == 11){a.ID_khoan_thu_text=\"Tiền nước\"}\n if( a.ID_khoan_thu == 16){a.ID_khoan_thu_text=\"Tiền phòng\"}\n if(a.Trang_thai==true)\n {a.Trang_thai_text=\"Đã nộp\"}\n else{a.Trang_thai_text=\"Chưa nộp\"}\n });\n this.dataTable = z.Data;\n this.dtTrigger.next();\n this.Title = '';\n this.TitleClass = '';\n this.spinner.hide();\n });\n }\n //get\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n \n }\n //check value\n // get checkvalue() {\n // return this.Insert.controls;\n // }\n filterById(){\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\n dtInstance.draw();\n });\n if(this.Loai_thu_ft == '16'){\n this.show = 1\n }\n }\n \n\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n setStyle(x: any) {\n let floorElements = document.getElementById(x);\n floorElements.setAttribute('style', 'border: 10px');\n }\n ngOnDestroy(): void {\n this.dtTrigger.unsubscribe();\n this.dt2Trigger.unsubscribe();\n $.fn['dataTable'].ext.search.pop();\n } \n Excel(){\n var r = confirm(\"File của bạn sẽ được tải xuống trong giây lát!\");\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show(); \n this.StatisticalService.Excel(a.Token)\n .subscribe(z => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Thongkekhoannop');\n this.toastr.success(\"File đã được tải xuống\", \"Tác vụ thành công\")\n this.spinner.hide();\n }\n else {\n this.toastr.error(z.Message, \"Tác vụ thất bại\")\n this.spinner.hide();\n }\n });\n };\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Thống kê khoản nộp
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ p.ID_sv }}{{ p.Ma_sv }}{{ p.Ho_ten }}{{ p.ID_co_so }}{{ p.ID_toa_nha }}{{ p.ID_phong }}{{ p.Ten_phong}}{{ p.Trang_thai}}{{ p.Trang_thai_text}}{{ p.Hinh_thuc_thu }}{{ p.ID_khoan_thu }}{{ p.ID_khoan_thu_text }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{ p.Thang }}{{ p.Nam }}{{ p.Thanh_tien|number }}{{ p.Ngay_quy_dinh |date:'dd/MM/yyyy' }}{{ p.So_bien_lai }}
\n
\n
\n
\n
\n
\n
\n
\n
\n ","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { StudentSortService } from 'src/app/Utils/services/student-sort.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { common } from 'src/app/app.common';\r\nimport { Subject } from 'rxjs';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { CampusService } from 'src/app/Utils/services/campus.service';\r\nimport { BuildingService } from 'src/app/Utils/services/building.service';\r\nimport { RoomService } from 'src/app/Utils/services/room.service';\r\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\r\nimport { now } from 'jquery';\r\nimport { WebSocketService } from 'src/app/utils/services/web-socket.service';\r\n@Component({\r\n selector: 'app-students-sort-detail',\r\n templateUrl: './students-sort-detail.component.html',\r\n styleUrls: ['./students-sort-detail.component.scss'],\r\n})\r\nexport class StudentsSortDetailComponent implements OnInit {\r\n @Input() StudentData: any = [];\r\n @ViewChild(DataTableDirective)\r\n datatableElement: DataTableDirective;\r\n spinner1 = 'sp1';\r\n Token: any;\r\n TongSucChua: number = 0;\r\n DataDetail: any = [];\r\n DSLoaiPhong: any = [];\r\n DSIDLoaiPhong: any = [];\r\n DSCoSo: any;\r\n DSToaNha: any;\r\n dtOptions: DataTables.Settings;\r\n dtTrigger: Subject = new Subject();\r\n Fillter: FormGroup;\r\n Insert = new FormGroup({\r\n Thu_tu_doi_tuong: new FormControl(2),\r\n Thu_tu_phong: new FormControl(2),\r\n Ngay_bat_dau: new FormControl(null, [Validators.required]),\r\n Ngay_ket_thuc: new FormControl(null),\r\n ThangO: new FormControl(null),\r\n });\r\n constructor(\r\n private RoomService: RoomService,\r\n public router: Router,\r\n private toastr: ToastrService,\r\n private activatedroute: ActivatedRoute,\r\n private Service: StudentSortService,\r\n private spinner: NgxSpinnerService,\r\n private RoomCateGoryService: RoomcategoryService,\r\n private CampusService: CampusService,\r\n private BuildingService: BuildingService,\r\n private WebSocketService: WebSocketService\r\n ) {\r\n this.StudentData = router.getCurrentNavigation().extras.state;\r\n // this.activatedroute.params.subscribe(data => {\r\n // })\r\n if (this.StudentData == undefined) {\r\n this.router.navigate(['/students-sort']);\r\n }\r\n }\r\n public com: common;\r\n ngOnInit(): void {\r\n let Ngay_ket_thuc = '05-31-' + (new Date().getFullYear() + 1);\r\n if (\r\n this.formatDate(new Date()) <\r\n this.formatDate(new Date('05-31-' + new Date().getFullYear()))\r\n ) {\r\n Ngay_ket_thuc = '05-31-' + new Date().getFullYear();\r\n }\r\n this.Insert.patchValue({\r\n Ngay_bat_dau: this.formatDate(new Date()),\r\n Ngay_ket_thuc: this.formatDate(new Date(Ngay_ket_thuc)),\r\n });\r\n this.GetMonth();\r\n $('#datatable').DataTable().clear();\r\n $('#datatable').DataTable().destroy();\r\n $.fn['dataTable'].ext.search = [];\r\n this.Fillter = new FormGroup({\r\n Loai_phong_filter: new FormControl(''),\r\n Co_so_filter: new FormControl(''),\r\n Toa_nha_filter: new FormControl(''),\r\n Tang_filter: new FormControl(null),\r\n Phong_filter: new FormControl(1),\r\n Ten_phong_filter: new FormControl(''),\r\n });\r\n if (this.StudentData[0].Gioi_tinh == 'Nam') {\r\n this.Fillter.patchValue({ Phong_filter: 1 });\r\n } else {\r\n this.Fillter.patchValue({ Phong_filter: 2 });\r\n }\r\n\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n\r\n this.dtOptions = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n ordering: false,\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {\r\n width: '5%',\r\n className: 'dt-center',\r\n },\r\n {\r\n title: 'ID phòng',\r\n visible: false,\r\n },\r\n {\r\n title: 'ID cơ sở',\r\n visible: false,\r\n },\r\n {\r\n title: 'ID toà nhà',\r\n visible: false,\r\n },\r\n {\r\n title: 'Cơ sở',\r\n },\r\n {\r\n title: 'Tòa nhà',\r\n },\r\n {\r\n title: 'Tầng',\r\n },\r\n {\r\n title: 'Loại phòng',\r\n },\r\n {\r\n title: 'Mã phòng',\r\n },\r\n {\r\n title: 'Tên phòng',\r\n },\r\n {\r\n title: 'Sức chứa',\r\n },\r\n {\r\n title: 'Số chỗ trống',\r\n },\r\n {\r\n title: 'Cơ sở',\r\n visible: false,\r\n },\r\n {\r\n title: 'Loại phòng',\r\n visible: false,\r\n },\r\n {\r\n title: 'Phòng',\r\n },\r\n {\r\n title: 'Sức chứa',\r\n visible: false,\r\n },\r\n {\r\n title: 'Ghi chú',\r\n visible: false,\r\n },\r\n ],\r\n };\r\n // this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n // dtInstance.destroy();\r\n // });\r\n\r\n this.RoomCateGoryService.getList(true, a.Token).subscribe((z) => {\r\n this.DSLoaiPhong = [];\r\n this.DSIDLoaiPhong = [];\r\n if (this.StudentData.length > 0) {\r\n this.StudentData.forEach((element) => {\r\n let a = z.Data.filter((x) => x.ID == element.ID_loai_phong);\r\n let req = {\r\n ID_loai_phong: element.ID_loai_phong,\r\n Ten_loai_phong: element.Ten_loai_phong,\r\n };\r\n let index = this.DSLoaiPhong.indexOf(req, 0);\r\n let index2 = this.DSIDLoaiPhong.indexOf(req.ID_loai_phong, 0);\r\n if (index2 == -1) {\r\n this.DSLoaiPhong.push(req);\r\n this.DSIDLoaiPhong.push(req.ID_loai_phong);\r\n }\r\n this.Fillter.controls['Loai_phong_filter'].setValue(\r\n element.Ten_loai_phong\r\n );\r\n this.filterById();\r\n });\r\n }\r\n });\r\n this.CampusService.getList(a.Token).subscribe((z) => {\r\n this.DSCoSo = z.Data;\r\n });\r\n this.BuildingService.getList(a.Token).subscribe((z) => {\r\n this.DSToaNha = z.Data;\r\n });\r\n\r\n this.getdeviceroom();\r\n }\r\n\r\n private formatDate(date) {\r\n const d = new Date(date);\r\n let month = '' + (d.getMonth() + 1);\r\n let day = '' + d.getDate();\r\n const year = d.getFullYear();\r\n if (month.length < 2) month = '0' + month;\r\n if (day.length < 2) day = '0' + day;\r\n return [year, month, day].join('-');\r\n }\r\n getdeviceroom() {\r\n this.spinner.show();\r\n this.RoomService.GetRoom(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Loai_phong == false) {\r\n z.Data[i].Loai_phong_text = 'Nam';\r\n } else {\r\n z.Data[i].Loai_phong_text = 'Nữ';\r\n }\r\n }\r\n if (this.DSLoaiPhong) {\r\n if (this.DSLoaiPhong.length > 0) {\r\n this.DSLoaiPhong.forEach((element) => {\r\n let a = z.Data.filter((x) => x.ID_loai_phong == element.ID);\r\n a.forEach((element) => {\r\n this.DataDetail.push(element);\r\n });\r\n });\r\n }\r\n }\r\n\r\n this.TongSucChua = 0;\r\n this.DataDetail = z.Data;\r\n this.dtTrigger.next();\r\n this.filterById();\r\n this.spinner.hide();\r\n });\r\n }\r\n\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n SelectRow(ID_Phong) {\r\n for (let index = 0; index < this.DataDetail.length; index++) {\r\n if (this.DataDetail[index].ID_Phong == ID_Phong) {\r\n if ($('#' + ID_Phong).prop('checked')) {\r\n {\r\n this.DataDetail[index].Selected = true;\r\n }\r\n } else {\r\n this.DataDetail[index].Selected = false;\r\n }\r\n break;\r\n }\r\n }\r\n this.TongSucChua = 0;\r\n for (let index = 0; index < this.DataDetail.length; index++) {\r\n if (this.DataDetail[index].Selected == true) {\r\n this.TongSucChua += this.DataDetail[index].Con_trong;\r\n }\r\n }\r\n }\r\n onSubmit() {\r\n if (!(this.StudentData.length > 0)) {\r\n this.toastr.warning('Tổng số đối tượng đã chọn bằng 0 !');\r\n return false;\r\n }\r\n if (this.Insert.invalid) {\r\n this.toastr.warning('Vui lòng chọn ngày nhận phòng');\r\n return false;\r\n }\r\n if (\r\n this.Insert.value.ThangO <= 0 ||\r\n this.Insert.value.ThangO == null ||\r\n this.Insert.value.ThangO == undefined\r\n ) {\r\n this.toastr.warning('Số tháng ở không được nhỏ hơn 0');\r\n return false;\r\n }\r\n\r\n if (this.StudentData.length <= this.TongSucChua) {\r\n var lstPhong = jQuery.grep(this.DataDetail, function (pa: any, i) {\r\n return pa.Selected;\r\n });\r\n if (this.Fillter.value.Phong_filter == 1) {\r\n var lstPhongCheck = jQuery.grep(this.DataDetail, function (pa: any, i) {\r\n return pa.Loai_phong && pa.Selected;\r\n });\r\n if (lstPhongCheck.length > 0) {\r\n this.toastr.warning('Bạn không thể chọn phòng nữ cho sinh viên nam');\r\n return false;\r\n }\r\n } else {\r\n var lstPhongCheck = jQuery.grep(this.DataDetail, function (pa: any, i) {\r\n return !pa.Loai_phong && pa.Selected;\r\n });\r\n if (lstPhongCheck.length > 0) {\r\n this.toastr.warning('Bạn không thể chọn phòng nam cho sinh viên nữ');\r\n return false;\r\n }\r\n }\r\n let InputDatas = {\r\n Thu_tu_doi_tuong: this.Insert.value.Thu_tu_doi_tuong,\r\n Thu_tu_phong: this.Insert.value.Thu_tu_phong,\r\n Ngay_bat_dau: this.Insert.value.Ngay_bat_dau,\r\n Ngay_ket_thuc: this.Insert.value.Ngay_ket_thuc,\r\n So_thang_o: this.Insert.value.ThangO,\r\n Students: this.StudentData,\r\n Rooms: lstPhong,\r\n };\r\n this.showSpinner('sp2');\r\n this.Service.Sort(this.Token, InputDatas).subscribe((z) => {\r\n this.StudentData = [];\r\n this.hideSpinner('sp2');\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n });\r\n\r\n this.getdeviceroom();\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message, 'Xếp phòng thành công');\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n }\r\n });\r\n } else {\r\n this.toastr.warning('Sức chứa không đủ, vui lòng kiểm tra lại');\r\n }\r\n }\r\n CheckAll2() {\r\n this.TongSucChua = 0;\r\n var datatable = $('#datatable')\r\n .DataTable()\r\n .rows({ filter: 'applied' })\r\n .data();\r\n var length = datatable.rows({ filter: 'applied' }).nodes().length;\r\n var lstID = [];\r\n for (var i = 0; i < length; i++) {\r\n var ID_Phong = parseInt(datatable[i][1]);\r\n lstID.push(ID_Phong);\r\n }\r\n for (let index = 0; index < this.DataDetail.length; index++) {\r\n if (lstID.includes(this.DataDetail[index].ID_Phong)) {\r\n this.DataDetail[index].Selected = $('#SelectALL2').prop('checked');\r\n }\r\n }\r\n for (let index = 0; index < this.DataDetail.length; index++) {\r\n if (this.DataDetail[index].Selected == true) {\r\n this.TongSucChua += this.DataDetail[index].Con_trong;\r\n }\r\n }\r\n }\r\n filterById(): void {\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.draw();\r\n $.fn['dataTable'].ext.search.pop();\r\n });\r\n this.fill();\r\n }\r\n fill() {\r\n $('#SelectALL2').prop('checked', false);\r\n $.fn['dataTable'].ext.search.push((settings, data, dataIndex) => {\r\n let Loai_phongD = data[7];\r\n let Co_soD = data[4];\r\n let Toa_nhaD = data[5];\r\n let TangD = data[6];\r\n let PhongD = data[13];\r\n let TenPhongD = data[8];\r\n let MaPhongD = data[9];\r\n ////////////////////////////////\r\n let bool1 = true;\r\n let bool2 = true;\r\n let bool3 = true;\r\n let bool4 = true;\r\n let bool5 = true;\r\n let bool6 = true;\r\n\r\n if (this.Fillter.value.Loai_phong_filter != undefined) {\r\n bool1 = Loai_phongD.toLowerCase().includes(\r\n this.Fillter.value.Loai_phong_filter.toLowerCase()\r\n );\r\n }\r\n if (this.Fillter.value.Co_so_filter != undefined) {\r\n bool2 = Co_soD.toLowerCase().includes(\r\n this.Fillter.value.Co_so_filter.toLowerCase()\r\n );\r\n }\r\n if (this.Fillter.value.Toa_nha_filter != undefined) {\r\n bool3 = Toa_nhaD.toLowerCase().includes(\r\n this.Fillter.value.Toa_nha_filter.toLowerCase()\r\n );\r\n }\r\n if (\r\n this.Fillter.value.Tang_filter != undefined &&\r\n this.Fillter.value.Tang_filter != ''\r\n ) {\r\n bool4 = TangD == this.Fillter.value.Tang_filter;\r\n }\r\n if (this.Fillter.value.Phong_filter > 0) {\r\n if (this.Fillter.value.Phong_filter == 1) {\r\n bool5 = PhongD == 'false';\r\n } else {\r\n bool5 = PhongD == 'true';\r\n }\r\n }\r\n if (\r\n this.Fillter.value.Ten_phong_filter != undefined &&\r\n this.Fillter.value.Ten_phong_filter != ''\r\n ) {\r\n bool6 =\r\n TenPhongD.toLowerCase().includes(\r\n this.Fillter.value.Ten_phong_filter.toLowerCase()\r\n ) ||\r\n MaPhongD.toLowerCase().includes(\r\n this.Fillter.value.Ten_phong_filter.toLowerCase()\r\n );\r\n }\r\n // if (this.Fillter.value.Khoa_filter != undefined) {\r\n // bool3 = KhoaD.toLowerCase().includes(this.Fillter.value.Khoa_filter.toLowerCase());\r\n // }\r\n // if (this.Fillter.value.Khoa_hoc_filter != undefined && this.Fillter.value.Khoa_hoc_filter != '') {\r\n // bool4 = KhoaHocD == this.Fillter.value.Khoa_hoc_filter;\r\n // }\r\n // if (this.Fillter.value.Chuyen_nganh_filter != undefined && this.Fillter.value.Chuyen_nganh_filter != '') {\r\n // bool1 = ChuyenNganhD.toLowerCase().includes(this.Fillter.value.Chuyen_nganh_filter.toLowerCase());\r\n // }\r\n // if (this.Fillter.value.Chuyen_nganh_filter != undefined && this.Fillter.value.Chuyen_nganh_filter != '') {\r\n // bool1 = ChuyenNganhD.toLowerCase().includes(this.Fillter.value.Chuyen_nganh_filter.toLowerCase());\r\n // }\r\n // if (this.Fillter.value.Khu_vuc_filter != undefined && this.Fillter.value.Khu_vuc_filter != '') {\r\n // bool7 = KhuVucD.toLowerCase().includes(this.Fillter.value.Khu_vuc_filter.toLowerCase());\r\n // }\r\n // if (this.Fillter.value.Loai_phong_filter != undefined && this.Fillter.value.Loai_phong_filter != '') {\r\n // bool8 = Loai_phongD == this.Fillter.value.Loai_phong_filter;\r\n // }\r\n // if (this.Fillter.value.Doi_tuong_chinh_sach_filter != undefined && this.Fillter.value.Doi_tuong_chinh_sach_filter != '') {\r\n // bool9 = Doi_tuong_chinh_sach_D.toLowerCase().includes(this.Fillter.value.Doi_tuong_chinh_sach_filter.toLowerCase());\r\n // }\r\n if (bool1 && bool2 && bool3 && bool4 && bool5 && bool6) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n showSpinner(name: string) {\r\n this.spinner.show(name);\r\n }\r\n\r\n hideSpinner(name: string) {\r\n this.spinner.hide(name);\r\n }\r\n\r\n GetMonth() {\r\n let Ngay_ket_thuc = new Date(this.Insert.value.Ngay_ket_thuc);\r\n let Ngay_bat_dau = new Date(this.Insert.value.Ngay_bat_dau);\r\n let SoThangO;\r\n\r\n if (Ngay_ket_thuc.getFullYear() > Ngay_bat_dau.getFullYear()) {\r\n SoThangO = 12 - Ngay_bat_dau.getMonth() + Ngay_ket_thuc.getMonth();\r\n } else {\r\n SoThangO = Ngay_ket_thuc.getMonth() - Ngay_bat_dau.getMonth();\r\n }\r\n if (Ngay_bat_dau != Ngay_ket_thuc) {\r\n SoThangO -= 1;\r\n if (30 - Ngay_bat_dau.getDate() > 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n if (30 - Ngay_ket_thuc.getDate() < 15) {\r\n SoThangO += 1;\r\n } else {\r\n SoThangO += 0.5;\r\n }\r\n }\r\n this.Insert.controls.ThangO.setValue(SoThangO);\r\n } //Lấy ra số tháng ở từ ngày đến ngày\r\n}\r\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. \n Chọn sinh viên\n
  4. \n
  5. Tiến hành xếp phòng
  6. \n
\n
\n
\n \n\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Thông tin xếp phòng
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Danh sách phòng
\n
\n
\n\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n {{ p.ID_Phong }}{{ p.ID_Co_So }}{{ p.ID_Toa_Nha }}{{ p.Ten_co_so }}{{ p.Ten_toa_nha }}{{ p.Tang }}{{ p.Ten_loai_phong }}{{ p.Ma_phong }}{{ p.Ten_phong }}{{ p.Suc_chua }}{{ p.Con_trong }}{{ p.Ten_co_so }}{{ p.Loai_phong}}{{ p.Loai_phong_text}}{{ p.Suc_chua }}{{ p.Ghi_chu }}
\n
\n
\n\n
\n
\n
\n\n\n
\n\n

Vui lòng chờ, hệ thống đang xếp phòng và gửi email thông báo...

\n
","import {\r\n AfterViewInit,\r\n Component,\r\n OnDestroy,\r\n OnInit,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { StudentSortService } from 'src/app/Utils/services/student-sort.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { common } from 'src/app/app.common';\r\nimport { Subject } from 'rxjs';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { CampusService } from 'src/app/Utils/services/campus.service';\r\nimport { BuildingService } from 'src/app/Utils/services/building.service';\r\nimport { RoomService } from 'src/app/Utils/services/room.service';\r\nimport { SystemService } from 'src/app/Utils/services/system.service';\r\nimport { RoomcategoryService } from 'src/app/Utils/services/room-category.service';\r\nimport { BaseComponent } from '../base/base.component';\r\n@Component({\r\n selector: 'app-students-sort',\r\n templateUrl: './students-sort.component.html',\r\n styleUrls: ['./students-sort.component.scss'],\r\n})\r\nexport class StudentsSortComponent extends BaseComponent\r\n implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n dtTrigger = new Subject();\r\n dtOptions: any;\r\n datadetail: any;\r\n closeResult: string;\r\n Token: string;\r\n DSCoSo: any;\r\n DSToaNha: any;\r\n DSToaNha2: any;\r\n DSPhong: any;\r\n DSPhong2: any;\r\n DSHe: any;\r\n DSKhoa: any;\r\n DSChuyenNganh: any;\r\n DSKhuVuc: any;\r\n DSDoiTuong: any;\r\n DSLoaiPhong: any;\r\n submitted = false;\r\n dataTable: any = [];\r\n dataMain: any = [];\r\n SelectData: any = [];\r\n code_filter: any;\r\n name_filter: any;\r\n NguyenVong_filter: any;\r\n NgaySinh_filter: any;\r\n Nhap_hoc_filter: any;\r\n Loai_phong_filter: any;\r\n Thanh_toan_filter: any;\r\n Doi_tuong_chinh_sach_filter: any;\r\n He_filter: any;\r\n Khoa_filter: any;\r\n Khoa_hoc_filter: any;\r\n Chuyen_nganh_filter: any;\r\n Khu_vuc_filter: any;\r\n khoa_filter: any;\r\n lop_filter: any;\r\n StudentData: any = [];\r\n doituong_filter: any;\r\n SelectNum: any;\r\n Fillter: FormGroup;\r\n totalItem: any;\r\n totalItemFilter: any;\r\n Insert = new FormGroup({\r\n ID_Phong: new FormControl(null, [Validators.required]),\r\n ID_co_so: new FormControl(null, [Validators.required]),\r\n ID_toa_nha: new FormControl(null, [Validators.required]),\r\n });\r\n\r\n // constructor(\r\n // private modalService: NgbModal,\r\n // private Service: StudentSortService,\r\n // private router: Router,\r\n // private toastr: ToastrService,\r\n // private spinner: NgxSpinnerService,\r\n // private CampusService: CampusService,\r\n // private BuildingService: BuildingService,\r\n // private RoomService: RoomService,\r\n // private SystemService: SystemService,\r\n // private RoomCateGoryService: RoomcategoryService,\r\n\r\n // ) {\r\n // }\r\n public com: common;\r\n ngOnInit(): void {\r\n $('#datatable').DataTable().clear();\r\n $('#datatable').DataTable().destroy();\r\n $.fn['dataTable'].ext.search = [];\r\n this.Fillter = new FormGroup({\r\n code_filter: new FormControl(null),\r\n name_filter: new FormControl(null),\r\n khoa_filter: new FormControl(null),\r\n lop_filter: new FormControl(null),\r\n doituong_filter: new FormControl(null),\r\n NguyenVong_filter: new FormControl(null),\r\n NgaySinh_filter: new FormControl(null),\r\n Loai_phong_filter: new FormControl(''),\r\n Thanh_toan_filter: new FormControl(''),\r\n Gioi_tinh_filter: new FormControl(1),\r\n Doi_tuong_chinh_sach_filter: new FormControl(''),\r\n He_filter: new FormControl(''),\r\n Khoa_filter: new FormControl(''),\r\n Khoa_hoc_filter: new FormControl(null),\r\n Chuyen_nganh_filter: new FormControl(''),\r\n Khu_vuc_filter: new FormControl(''),\r\n Nhap_hoc_filter: new FormControl(''),\r\n Ma_sv_filter: new FormControl(''),\r\n Ho_ten_filter: new FormControl(''),\r\n });\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n\r\n this.getList();\r\n this.getCount();\r\n this.CampusService.getList(a.Token).subscribe((z) => {\r\n this.DSCoSo = z.Data;\r\n this.BuildingService.getList(a.Token).subscribe((z) => {\r\n this.DSToaNha = z.Data;\r\n this.DSToaNha2 = z.Data;\r\n this.RoomService.GetAll(this.Token).subscribe((z) => {\r\n for (var i = 0; i < z.Data.length; i++) {\r\n if (z.Data[i].Loai_phong == false) {\r\n z.Data[i].Loai_phong_text = 'Nam';\r\n } else {\r\n z.Data[i].Loai_phong_text = 'Nữ';\r\n }\r\n }\r\n this.Service.List_He(a.Token).subscribe((z) => {\r\n this.DSHe = z;\r\n });\r\n this.Service.List_Khoa(a.Token).subscribe((z) => {\r\n this.DSKhoa = z;\r\n });\r\n this.Service.List_ChuyenNganh(a.Token).subscribe((z) => {\r\n this.DSChuyenNganh = z;\r\n });\r\n this.SystemService.Get_khuvuc_tuyensinh(a.Token).subscribe((z) => {\r\n this.DSKhuVuc = z;\r\n });\r\n this.SystemService.Get_doituong_chinhsach(a.Token).subscribe((z) => {\r\n this.DSDoiTuong = z;\r\n });\r\n this.RoomCateGoryService.getList(true, a.Token).subscribe((z) => {\r\n this.DSLoaiPhong = z.Data;\r\n });\r\n this.DSPhong = z.Data;\r\n this.DSPhong2 = z.Data;\r\n });\r\n });\r\n });\r\n }\r\n ngAfterViewInit() {}\r\n getCount() {\r\n this.Service.getCount(this.Token).subscribe((z) => {\r\n this.totalItem = z.Tong_so_ban_ghi;\r\n });\r\n }\r\n cosochange() {\r\n let ID_coso = $('#ID_co_so').val();\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n // this.Insert.patchValue({\r\n // ID_toa_nha: idtn\r\n // });\r\n }\r\n ToaNhaChange() {\r\n let ID_toanha = $('#ID_toa_nha').val();\r\n this.DSPhong2 = jQuery.grep(this.DSPhong, function (pa: any, i) {\r\n return pa.ID_Toa_Nha == ID_toanha;\r\n });\r\n // let idphong = this.DSPhong2.length == 0 ? 0 : this.DSPhong2[0].ID_Phong;\r\n // this.Insert.patchValue({\r\n // ID_Phong: idphong\r\n // });\r\n }\r\n getList() {\r\n this.spinner.show();\r\n this.page = 1;\r\n let req = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Nhap_hoc: this.Fillter.value.Nhap_hoc_filter,\r\n Thanh_toan: this.Fillter.value.Thanh_toan_filter,\r\n Gioi_tinh: this.Fillter.value.Gioi_tinh_filter == 2 ? 'Nữ' : 'Nam',\r\n Ten_loai_phong: this.Fillter.value.Loai_phong_filter,\r\n Nguyen_vong:\r\n this.Fillter.value.NguyenVong_filter == null\r\n ? ''\r\n : this.Fillter.value.NguyenVong_filter,\r\n Doi_tuong_chinh_sach: this.Fillter.value.Doi_tuong_chinh_sach_filter,\r\n Ngay_sinh:\r\n this.Fillter.value.NgaySinh_filter == null\r\n ? ''\r\n : this.Fillter.value.NgaySinh_filter,\r\n Ten_he: this.Fillter.value.He_filter,\r\n Khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc:\r\n this.Fillter.value.Khoa_hoc_filter == null\r\n ? ''\r\n : this.Fillter.value.Khoa_hoc_filter,\r\n Chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n Doi_tuong_khu_vuc: this.Fillter.value.Khu_vuc_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n Ho_ten: this.Fillter.value.Ho_ten_filter,\r\n };\r\n this.Service.ListAll(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.Data;\r\n this.Service.getCountFilter(req, this.Token).subscribe((z) => {\r\n this.spinner.hide();\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.numberPage = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).numberPage;\r\n this.arrNumberPage_chil = this.createNumberPage(\r\n z.Tong_so_ban_ghi_filter,\r\n this.pageSize\r\n ).arrNumberPage_chil;\r\n });\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n }\r\n },\r\n (err) => {\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.dtTrigger.next();\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n open(content, size, Loai, Data) {\r\n let dtft = this.dataTable.filter((x) => x.checked == true);\r\n this.SelectNum = dtft.length;\r\n if (this.SelectNum > 0) {\r\n this.StudentData = dtft;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: size })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n } else {\r\n this.toastr.warning('Bạn chưa chọn đối tượng xếp phòng');\r\n }\r\n // this.ID_co_so=this.DSCoSo[0].ID;\r\n // this.ID_toa_nha=this.DSToaNha[0].ID_ToaNha;\r\n let ID_coso = this.DSCoSo[0].ID;\r\n this.DSToaNha2 = jQuery.grep(this.DSToaNha, function (pa: any, i) {\r\n return pa.ID_CoSo == ID_coso;\r\n });\r\n let idtn = this.DSToaNha2.length == 0 ? 0 : this.DSToaNha2[0].ID_ToaNha;\r\n this.Insert.patchValue({\r\n ID_co_so: this.DSCoSo[0].ID,\r\n ID_toa_nha: idtn,\r\n });\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.Insert.invalid) {\r\n return false;\r\n }\r\n let dtft = this.dataTable.filter((x) => x.checked == true);\r\n if (this.SelectNum > 0) {\r\n let InputDatas = {\r\n IDPhong: this.Insert.value.ID_Phong,\r\n IDToaNha: this.Insert.value.ID_toa_nha,\r\n IDCoSo: this.Insert.value.ID_co_so,\r\n Students: dtft,\r\n };\r\n // this.Service.Sort(this.Token, InputDatas).subscribe((z) => {\r\n // this.modalService.dismissAll('ThemModal');\r\n // if (z.Status == 1) {\r\n // this.toastr.success(z.Message, 'Xếp phòng thành công');\r\n // } else {\r\n // this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n // }\r\n // this.getList();\r\n // });\r\n } else {\r\n this.toastr.warning('Bạn chưa chọn danh sách đối tượng xếp phòng');\r\n }\r\n }\r\n navigate(): void {\r\n let dtft = this.dataTable.filter((x) => x.checked == true);\r\n this.StudentData = dtft;\r\n if (this.StudentData.length > 0) {\r\n this.router.navigate(['/admin/sort-detail'], { state: this.StudentData });\r\n } else {\r\n this.toastr.warning('Vui lòng chọn sinh viên cần xếp phòng');\r\n }\r\n\r\n // this.router.navigate(['/sort-detail', this.StudentData]);\r\n }\r\n ngOnDestroy() {\r\n // $('#datatable').DataTable().clear();\r\n // $('#datatable').DataTable().destroy();\r\n // $.fn['dataTable'].ext.search = []\r\n // this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n // dtInstance.destroy();\r\n // });\r\n }\r\n changPage(event) {\r\n this.handlePageChange(event);\r\n this.spinner.show();\r\n let req = {\r\n So_ban_ghi: this.pageSize,\r\n Trang: this.page,\r\n Nhap_hoc: this.Fillter.value.Nhap_hoc_filter,\r\n Thanh_toan: this.Fillter.value.Thanh_toan_filter,\r\n Gioi_tinh: this.Fillter.value.Gioi_tinh_filter == 2 ? 'Nữ' : 'Nam',\r\n Ten_loai_phong: this.Fillter.value.Loai_phong_filter,\r\n Nguyen_vong:\r\n this.Fillter.value.NguyenVong_filter == null\r\n ? ''\r\n : this.Fillter.value.NguyenVong_filter,\r\n Doi_tuong_chinh_sach: this.Fillter.value.Doi_tuong_chinh_sach_filter,\r\n Ngay_sinh:\r\n this.Fillter.value.NgaySinh_filter == null\r\n ? ''\r\n : this.Fillter.value.NgaySinh_filter,\r\n Ten_he: this.Fillter.value.He_filter,\r\n Khoa: this.Fillter.value.Khoa_filter,\r\n Khoa_hoc:\r\n this.Fillter.value.Khoa_hoc_filter == null\r\n ? ''\r\n : this.Fillter.value.Khoa_hoc_filter,\r\n Chuyen_nganh: this.Fillter.value.Chuyen_nganh_filter,\r\n Doi_tuong_khu_vuc: this.Fillter.value.Khu_vuc_filter,\r\n Ma_sv: this.Fillter.value.Ma_sv_filter,\r\n Ho_ten: this.Fillter.value.Ho_ten_filter,\r\n };\r\n this.spinner.show();\r\n this.Service.ListAll(req, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 1) {\r\n this.dataTable = z.Data;\r\n this.Service.getCountFilter(req, this.Token).subscribe((z) => {\r\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\r\n this.spinner.hide();\r\n });\r\n } else {\r\n this.toastr.warning(z.Message, 'Tác vụ thất bại');\r\n this.spinner.hide();\r\n }\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.dtTrigger.next();\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n }\r\n }\r\n );\r\n }\r\n handlePageSizeChange(event) {\r\n if (event.target.value == 'Tất cả') {\r\n this.pageSize = 100000;\r\n } else {\r\n this.pageSize = event.target.value;\r\n }\r\n this.getList();\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_XepPhong;\r\n window.open(urlHelp, '_blank');\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 Nam\r\n Nữ\r\n \r\n
\r\n
\r\n \r\n Chọn loại thanh toán\r\n Đã đóng tiền\r\n Chưa đóng tiền\r\n \r\n
\r\n
\r\n \r\n Chọn đối tượng\r\n Sinh viên nhập học\r\n Sinh viên đang học\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n Chọn hệ\r\n {{\r\n p.Ten_he\r\n }}\r\n \r\n \r\n
\r\n
\r\n \r\n Chọn khoa\r\n {{\r\n p.Ten_khoa\r\n }}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Chọn chuyên ngành\r\n {{ p.Chuyen_nganh }}\r\n \r\n \r\n
\r\n
\r\n \r\n Chọn khu vực\r\n {{\r\n p.Ten_kv\r\n }}\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n Chọn loại đối tượng chính sách\r\n \r\n {{\r\n p.Ten_dt\r\n }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Chọn loại phòng đăng ký\r\n {{ p.Ten_loai_phong }}\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';\nimport { BaseComponent } from '../base/base.component';\nimport ClassicEditor from '@ckeditor/ckeditor5-build-classic';\nimport { ChangeEvent } from '@ckeditor/ckeditor5-angular';\n@Component({\n selector: 'app-template-email',\n templateUrl: './template-email.component.html',\n styleUrls: ['./template-email.component.scss'],\n})\nexport class TemplateEmailComponent extends BaseComponent implements OnInit {\n id: any;\n content: any;\n public Editor = ClassicEditor;\n ngOnInit(): void {\n this.getToken();\n this.getAll();\n }\n getAll() {\n this.spinner.show();\n this.TemplateEmailService.getAll(this.Token).subscribe((z) => {\n this.spinner.hide();\n this.dataTable = z;\n });\n }\n public onChange({ editor }: ChangeEvent) {\n const data = editor.getData();\n this.content = data;\n }\n open(content, sizm, Loai, Data) {\n this.id = Data.id;\n this.content = Data.Noi_dung;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n }\n onSubmit() {\n let req = {\n id: this.id,\n Noi_dung: this.content,\n };\n this.TemplateEmailService.update(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getAll();\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n}\n","
\n \n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
Mã TemplateTên TemplateThao tác
{{ data.Ma_template }}{{ data.Ten_template }}\n \n \n \n
Không có kết quả
\n \n
\n
\n
\n
\n \n
\n\n\n \n

Sửa nội dung Email

\n ×\n \n
\n
\n \n
\n
\n
\n
\n \n \n Đóng\n \n
\n
\n
\n","\nimport { Component, OnInit } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { BaseComponent } from '../base/base.component';\n\n@Component({\n selector: 'app-tham-so-he-thong',\n templateUrl: './tham-so-he-thong.component.html',\n styleUrls: ['./tham-so-he-thong.component.scss']\n})\nexport class ThamSoHeThongComponent extends BaseComponent implements OnInit {\n update = new FormGroup({\n Ten_tham_so: new FormControl('',[Validators.required]),\n Gia_tri: new FormControl('',[Validators.required]),\n Ghi_chu: new FormControl('',[Validators.required]),\n });\n ID:any\n ngOnInit(): void {\n \n this.getToken();\n this.getAll();\n }\n \n getAll() {\n this.spinner.show();\n\n this.ThamSoHeThongService.getAll(this.Token).subscribe(\n (z) => {\n this.spinner.hide();\n if (z.Status == 10) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.router.navigate(['/admin']);\n this.spinner.hide();\n } else {\n this.dataTable = z.Data;\n }\n }\n );\n }\n get checkvalue() {\n return this.update.controls;\n }\n \n open(content, sizm, Loai, Data) {\n this.ID = Data.ID_tham_so;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.update.get('Ten_tham_so').setValue(Data.Ten_tham_so);\n this.update.get('Gia_tri').setValue(Data.Gia_tri);\n this.update.get('Ghi_chu').setValue(Data.Ghi_chu);\n }\n \n onSubmit() {\n this.submitted = true;\n if (this.update.invalid) {\n return false;\n }\n let req = {\n ID_tham_so: this.ID,\n Ten_tham_so: this.update.value.Ten_tham_so,\n Gia_tri: this.update.value.Gia_tri,\n Ghi_chu: this.update.value.Ghi_chu,\n };\n this.ThamSoHeThongService.update(req, this.Token).subscribe(\n (res) => {\n if (res.Status == 2) {\n this.toastr.warning(res.Message);\n } else if (res.Status == 1) {\n this.toastr.success(res.Message);\n this.modalService.dismissAll('AddModal');\n this.getAll();\n } else if (res.Status == 4) {\n this.toastr.error('Thêm mới thất bại!');\n } else {\n this.toastr.warning(res.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n\n}\n","
\n \n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n
Tên tham sốGiá trịGhi chúThao tác
{{ data.Ten_tham_so }}{{ data.Gia_tri }}{{ data.Ghi_chu }}\n \n \n \n
Không có kết quả
\n \n
\n
\n
\n
\n \n
\n\n\n \n

Sửa tham số hệ thống

\n ×\n \n
\n
\n
\n
\n \n \n \n
\n Tên tham số không được bỏ trống!\n
\n
\n
\n\n
\n \n \n \n
\n Giá trị không được bỏ trống!\n
\n
\n
\n
\n \n \n \n
\n Ghi chú không được bỏ trống!\n
\n
\n \n \n \n \n
\n
\n \n \n Đóng\n \n
\n
\n
\n","import { Component, OnInit, ViewChild, Input, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DataTablesModule } from 'angular-datatables';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\r\nimport { forEach } from '@angular-devkit/schematics';\r\nimport { timeout } from 'rxjs/operators';\r\nimport { CampusService } from 'src/app/Utils/services/campus.service';\r\nimport { BuildingService } from 'src/app/Utils/services/building.service';\r\nimport { ExtensionsService } from 'src/app/utils/services/extensions.service';\r\nimport { AbstractControl } from '@angular/forms';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nexport function removeSpaces(control: AbstractControl) {\r\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\r\n control.setValue('');\r\n }\r\n return null;\r\n}\r\n\r\n@Component({\r\n selector: 'app-tien-ich',\r\n templateUrl: './tien-ich.component.html',\r\n styleUrls: ['./tien-ich.component.scss'],\r\n})\r\nexport class TienIchComponent implements OnInit {\r\n dtOptions: DataTables.Settings;\r\n Token: string;\r\n Res: any;\r\n req: any;\r\n check: any;\r\n ID_tien_ich: any;\r\n dataTable: any = [];\r\n dataCampus: any = [];\r\n closeResult: string;\r\n ClassData: any;\r\n ID: any;\r\n Ma_ToaNha: any;\r\n Ten_ToaNha: any;\r\n address: any;\r\n titleModal: string;\r\n default: any;\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n checkAction: boolean;\r\n submitted = false;\r\n NameTitle: string;\r\n Title: string = 'Đang tải ...';\r\n TitleClass: string = 'spinner-border text-muted';\r\n Request: any;\r\n Action = new FormGroup({\r\n Ma_tien_ich: new FormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(50),\r\n removeSpaces,\r\n ]),\r\n Ten_tien_ich: new FormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(500),\r\n removeSpaces,\r\n ]),\r\n Mo_ta: new FormControl(null),\r\n Trang_thai: new FormControl(null, [Validators.required]),\r\n });\r\n\r\n constructor(\r\n @Inject(AppConfig)\r\n private readonly appConfig: AppConfiguration,\r\n private modalService: NgbModal,\r\n private BuildingService: BuildingService,\r\n private CampusService: CampusService,\r\n private ExtensionsService: ExtensionsService,\r\n private fb: FormBuilder,\r\n public router: Router,\r\n private fromBuilder: FormBuilder,\r\n private toastr: ToastrService,\r\n private spinner: NgxSpinnerService\r\n ) {}\r\n dtTrigger = new Subject();\r\n dt2Trigger = new Subject();\r\n public com: common;\r\n\r\n ngOnInit() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.dtOptions = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {\r\n title: 'ID',\r\n visible: false,\r\n },\r\n {\r\n title: 'Mã tiện ích',\r\n },\r\n {\r\n title: 'Tên tiện ích',\r\n },\r\n {\r\n title: 'Mô tả',\r\n },\r\n {\r\n title: 'Trạng thái',\r\n },\r\n {\r\n title: 'Thao tác',\r\n className: 'dt-center',\r\n width: '12%',\r\n },\r\n ],\r\n order: [[0, 'desc']],\r\n };\r\n this.getList(a.Token);\r\n }\r\n\r\n getList(token) {\r\n this.spinner.show();\r\n this.ExtensionsService.getList(token).subscribe(\r\n (z) => {\r\n this.dataTable = z.ListData;\r\n this.dtTrigger.next();\r\n this.spinner.hide();\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.dataTable = [];\r\n this.dtTrigger.next();\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n this.spinner.hide();\r\n }\r\n }\r\n );\r\n }\r\n //get list table all\r\n\r\n getListCampus(token) {\r\n // this.spinner.show();\r\n this.CampusService.getList(token).subscribe((z) => {\r\n this.dataCampus = z.Data;\r\n });\r\n }\r\n //get list table all\r\n\r\n open(content, sizm, Loai, Data) {\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n if (Loai == 'Edit') {\r\n this.titleModal = 'Sửa tiện ích';\r\n this.check = Data.Ma_ToaNha;\r\n this.checkAction = true;\r\n this.ID_tien_ich = Data.ID_tien_ich;\r\n this.Action.setValue({\r\n Ma_tien_ich: Data.Ma_tien_ich,\r\n Ten_tien_ich: Data.Ten_tien_ich,\r\n Mo_ta: Data.Mo_ta,\r\n Trang_thai: Data.Trang_thai,\r\n });\r\n } else if (Loai == 'Add') {\r\n this.titleModal = 'Thêm mới tiện ích';\r\n this.checkAction = false;\r\n this.Action.reset();\r\n } else if (Loai == 'Delete') {\r\n this.ID_tien_ich = Data.ID_tien_ich;\r\n }\r\n }\r\n //check value\r\n get checkvalue() {\r\n return this.Action.controls;\r\n }\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.Action.invalid) {\r\n return false;\r\n }\r\n this.create();\r\n }\r\n onReset() {\r\n this.submitted = false;\r\n this.Action.reset();\r\n }\r\n // create\r\n create() {\r\n let InputDatas = {\r\n ExtensionData: {\r\n ID_tien_ich: this.ID_tien_ich,\r\n Ten_tien_ich: this.Action.value.Ten_tien_ich,\r\n Ma_tien_ich: this.Action.value.Ma_tien_ich,\r\n Trang_thai: this.Action.value.Trang_thai,\r\n Mo_ta: this.Action.value.Mo_ta,\r\n },\r\n };\r\n if (this.checkAction == true) {\r\n if (this.check == this.Action.value.Ma_ToaNha) {\r\n this.ExtensionsService.Update(InputDatas, this.Token).subscribe((z) => {\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else if (z.Status == 5) {\r\n this.toastr.error(z.Message);\r\n }\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList(this.Token);\r\n });\r\n } else {\r\n if (\r\n this.dataTable.some((x) => {\r\n return x.Ma_ToaNha == this.Action.value.Ma_ToaNha;\r\n }) == false\r\n ) {\r\n this.ExtensionsService.Update(InputDatas, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error('Cập nhật thất bại!');\r\n } else if (z.Status == 9) {\r\n this.toastr.warning(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList(this.Token);\r\n }\r\n }\r\n );\r\n } else {\r\n this.toastr.warning('Mã đã tồn tại');\r\n }\r\n }\r\n } else {\r\n if (\r\n this.dataTable.some((x) => {\r\n return x.Ma_tien_ich == this.Action.value.Ma_tien_ich;\r\n }) == false\r\n ) {\r\n this.ExtensionsService.Insert(InputDatas, this.Token).subscribe(\r\n (z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error('Thêm mới thất bại!');\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Thêm mới thành công!');\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList(this.Token);\r\n } else {\r\n this.toastr.success(z.Message);\r\n }\r\n },\r\n (err) => {\r\n console.log(err);\r\n this.spinner.hide();\r\n if (err.status == 0) {\r\n localStorage.removeItem('UserInfo');\r\n this.router.navigate(['/login']);\r\n } else if (err.status == 401) {\r\n this.toastr.warning(\r\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\r\n );\r\n this.spinner.hide();\r\n }\r\n }\r\n );\r\n } else {\r\n this.toastr.warning('Mã tiện ích này đã tồn tại!');\r\n }\r\n }\r\n }\r\n\r\n //modal\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n setStyle(x: any) {\r\n let floorElements = document.getElementById(x);\r\n floorElements.setAttribute('style', 'border: 10px');\r\n }\r\n ngOnDestroy(): void {\r\n // Do not forget to unsubscribe the event\r\n this.dtTrigger.unsubscribe();\r\n this.dt2Trigger.unsubscribe();\r\n\r\n $.fn['dataTable'].ext.search.pop();\r\n }\r\n Delete() {\r\n let ID = this.ID_tien_ich;\r\n this.ExtensionsService.Delete(ID, this.Token).subscribe((z) => {\r\n this.modalService.dismissAll('AddModal');\r\n if (z.Status == 1) {\r\n this.toastr.success(z.Message);\r\n } else {\r\n this.toastr.error(z.Message);\r\n }\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n });\r\n this.getList(this.Token);\r\n });\r\n }\r\n help() {\r\n const urlHelp =\r\n this.appConfig.HelpUrl + '?' + this.appConfig.document_QLNha;\r\n window.open(urlHelp, '_blank');\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 \r\n \r\n \r\n {{ p.ID_tien_ich }}\r\n {{ p.Ma_tien_ich }}\r\n\r\n {{ p.Ten_tien_ich }}\r\n {{ p.Mo_ta }}\r\n \r\n {{ p.Trang_thai == 1 ? 'Đang sử dụng' : 'Ngừng sử dụng' }}\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

{{ titleModal }}

\r\n ×\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Mã tiện ích không được bỏ trống!\r\n
\r\n
\r\n Mã tiện ích tối đa 50 ký tự!\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Tên tiện ích không được bỏ trống!\r\n
\r\n
\r\n Tên tiện ích tối đa 500 ký 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 \r\n \r\n Đóng\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 có chắc chắn muốn xóa\r\n

\r\n
\r\n \r\n \r\n Hủy bỏ\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\nimport { BaseComponent } from '../base/base.component';\n@Component({\n selector: 'app-users-toa-nha',\n templateUrl: './users-toa-nha.component.html',\n styleUrls: ['./users-toa-nha.component.scss'],\n})\nexport class UsersToaNhaComponent extends BaseComponent implements OnInit {\n FullName: any = '';\n UserName: any = '';\n Data:any\n dataUser:any\n UserID:any\n dataView:any=[]\n numberPage2\n arrNumberPage2_child\n pageSize2=2\n page2=1\n totalRecord2\n beforeFilter\n dataAfter:any=[]\n public dataTable: any = [];\n ngOnInit(): void {\n\n this.getToken();\n this.getCount();\n this.getList();\n }\n getCount() {\n this.spinner.show();\n this.UserToaNhaService.getCount(this.Token).subscribe((z) => {\n this.totalItem = z.Tong_so_ban_ghi;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n getList() {\n this.spinner.show();\n this.page = 1;\n this.arrNumberPage = [];\n this.arrNumberPage_chil = [];\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n FullName: this.FullName.trim(),\n UserName: this.UserName.trim(),\n };\n this.UserToaNhaService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.UserToaNhaService.getCountFilter(dataFilter, this.Token).subscribe(\n (z) => {\n this.totalItemFilter = z.Tong_so_ban_ghi_filter;\n this.numberPage = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Tong_so_ban_ghi_filter,\n this.pageSize\n ).arrNumberPage_chil;\n this.spinner.hide();\n }\n );\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n refesh() {\n this.FullName = '';\n this.UserName = '';\n this.getList();\n }\n changPage(event) {\n this.handlePageChange(event);\n this.spinner.show();\n let dataFilter = {\n So_ban_ghi: this.pageSize,\n Trang: this.page,\n FullName: this.FullName.trim(),\n UserName: this.UserName.trim(),\n };\n this.UserToaNhaService.getList(dataFilter, this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n this.getList();\n }\n open(content, sizm, Loai, Data) {\n this.Data = Data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.spinner.show()\n this.UserToaNhaService.getUser( this.Token).subscribe((z) => {\n this.dataUser = z.Data;\n this.UserID = z.Data[0].UserID;\n this.BuildingService.getList( this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n this.spinner.hide()\n });\n });\n }\n openEdit(content, sizm, Loai, Data) {\n this.Data = Data;\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if(Loai=='Add'){\n this.spinner.show()\n this.UserToaNhaService.getUser( this.Token).subscribe((z) => {\n this.dataUser = z.Data;\n this.UserID = Data.UserID;\n this.BuildingService.getList( this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n this.UserToaNhaService.getDetail(Data.UserID, this.Token).subscribe((z) => {\n for(var i =0; i (x.checked = ev.target.checked));\n }\n isAllCheckBoxChecked2() {\n if (this.dataBuilding != undefined) return this.dataBuilding.every((p) => p.checked);\n }\n OnSubmit(){\n if(this.UserID==''){\n this.toastr.warning(\"Bạn chưa chọn tài khoản!\")\n return false\n }\n if(this.dataBuilding.filter((x) => x.checked == true).length <1){\n this.toastr.warning(\"Bạn chưa chọn tòa nhà!\")\n return false\n }\n let dataTN = this.dataBuilding.filter((x) => x.checked == true)\n let req = {\n UserID: this.UserID,\n dataBuilding: dataTN\n }\n this.UserToaNhaService.CheckExist(this.UserID, this.Token).subscribe((z) => {\n if(z.Message >0){\n this.toastr.warning(\"Tài khoản này đã được quy định!\")\n }else{\n this.UserToaNhaService.Insert(req, this.Token).subscribe((z) => {\n if(z.Status ==1){\n this.toastr.success(z.Message)\n this.getList()\n this.getCount()\n this.modalService.dismissAll('AddModal');\n \n }else{\n this.toastr.error(\"Thêm quyền thất bại!\")\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n });\n \n }\n update(){\n if(this.UserID==''){\n this.toastr.warning(\"Bạn chưa chọn tài khoản!\")\n return false\n }\n if(this.dataBuilding.filter((x) => x.checked == true).length <1){\n this.toastr.warning(\"Bạn chưa chọn tòa nhà!\")\n return false\n }\n let dataTN = this.dataBuilding.filter((x) => x.checked == true)\n let req = {\n UserID: this.UserID,\n dataBuilding: dataTN\n }\n this.UserToaNhaService.Update(req, this.Token).subscribe((z) => {\n if(z.Status ==1){\n this.toastr.success(z.Message)\n this.getList()\n this.modalService.dismissAll('AddModal');\n\n }else{\n this.toastr.error(\"Thêm quyền thất bại!\")\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n }\n Delete(){\n this.UserToaNhaService.Delete(this.Data.UserID, this.Token).subscribe((z) => {\n if(z.Status == 1){\n this.toastr.success(z.Message)\n this.getList()\n this.getCount()\n this.modalService.dismissAll('AddModal');\n\n }else{\n this.toastr.error(z.Message)\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n });\n\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Phân quyền tài khoản
  4. \n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n \n \n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Tên tài khoảnHọ tênEmailThao tác
{{ p.UserName }}{{ p.FullName }}{{ p.Email }}\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

Thêm quyền người dùng

\n ×\n
\n
\n\n
\n
\n \n \n {{ p.UserName }} ({{p.FullName}})\n \n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Tên cơ sởMã tòa nhàTên tòa nhà
\n {{p.Ten_CoSo}} {{ p.Ma_ToaNha }}{{ p.Ten_ToaNha }}
\n
\n
\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n
\n Tên cơ sởMã tòa nhàTên tòa nhà
\n {{p.Ten_CoSo}}{{ p.Ma_ToaNha }}{{ p.Ten_ToaNha }}
\n
\n
\n\n\n
\n\n
\n
\n
\n \n \n\n
\n
\n
\n
\n\n
\n

Sửa quyền người dùng

\n ×\n
\n
\n
\n
\n \n \n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Tên cơ sởMã tòa nhàTên tòa nhà
\n {{p.Ten_CoSo}}{{ p.Ma_ToaNha }}{{ p.Ten_ToaNha }}
\n
\n
\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n
\n Tên cơ sởMã tòa nhàTên tòa nhà
\n {{p.Ten_CoSo}}{{ p.Ma_ToaNha }}{{ p.Ten_ToaNha }}
\n
\n
\n\n\n
\n\n
\n
\n
\n \n \n\n
\n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn xóa\n

\n
\n \n \n
\n
\n
\n
","import { HttpClient } from '@angular/common/http';\nimport { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-version-detail',\n templateUrl: './version-detail.component.html',\n styleUrls: ['./version-detail.component.scss']\n})\nexport class VersionDetailComponent implements OnInit {\nversion:any;\nversionDetail:any;\n constructor(\n private http: HttpClient\n ) { }\n\n ngOnInit(): void {\n this.http.get('assets/version.json').subscribe(data => {\n this.version=data.version \n \n })\n this.http.get('assets/UpdateDescription.json').subscribe(data => {\n this.versionDetail=data\n})\n }\n\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Chi tiết phiên bản
  4. \n
\n
\n
\n \n\n
\n
\n
\n
\n\n\n
\n
\n
    \n
  • \n
    \n
    \n
    \n

    Version: {{k.Version}}

    \n

    Date: {{k.Date}}

    \n
    \n
    \n
      \n
    • {{ p }}
    • \n
    \n
    \n
    \n
  • \n
  • \n
    \n
    \n
    \n

    Version: {{k.Version}}

    \n

    Date: {{k.Date}}

    \n
    \n
    \n
      \n
    • {{ p }}
    • \n
    \n
    \n
    \n
  • \n
\n
\n
","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Subject } from 'rxjs';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n NgModel,\n} from '@angular/forms';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { BaseComponent } from 'src/app/components/base/base.component';\nimport { isBuffer } from 'util';\n@Component({\n selector: 'app-vi-pham',\n templateUrl: './vi-pham.component.html',\n styleUrls: ['./vi-pham.component.scss'],\n})\nexport class ViPhamComponent extends BaseComponent implements OnInit {\n titleModal: any = '';\n data_Delete: any;\n isInsert: any;\n FillPhong: any = '';\n DataToaNha: any;\n show_search: any = true;\n List_phong_ban: any;\n FillToaNha: any;\n Ho_ten: any;\n numberChecked: any;\n Ma_sv: any;\n req: any;\n public arrNumberPage2_child: any;\n numberPage2: any;\n pageSize2: any = 10;\n page_sv: any = 1;\n ID_vi_pham: any;\n dataPhongByID: any;\n DuyetDKRow: any;\n HuyDuyetRow: any;\n Ngay_sinh: any;\n Duyet_diem: any;\n Display: any = false;\n DataRoom: any = [];\n totalRecord2: any = 0;\n DataThietBi: any = [];\n dataSV2: any = [];\n dataSV: any = [];\n DataView: any = [];\n dataTypeVipham: any = [];\n beforeFilter: any = [];\n Nam_hoc_arr: any = [];\n DataV: any = [];\n DataViPham: any = [];\n DataFilter: any = [];\n dataRoomView: any;\n dataSVO:any;\n FilterForm = new FormGroup({\n Ma_sv_ft: new FormControl(null,removeSpaces),\n Ten_sv_ft: new FormControl(null, removeSpaces),\n Ngay_sinh_ft: new FormControl(null),\n Tu_ngay_ft: new FormControl(null),\n Den_ngay_ft: new FormControl(null),\n Hoc_ky_ft: new FormControl(\"\"),\n Nam_hoc_ft: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1)\n ),\n });\n InsertForm = new FormGroup({\n ID_sv: new FormControl(null),\n Hoc_ky: new FormControl(1, [Validators.required]),\n Nam_hoc: new FormControl(\n new Date().getFullYear() + '-' + (new Date().getFullYear() + 1),\n [Validators.required]\n ),\n Noi_dung: new FormControl(null),\n Ngay_sinh: new FormControl(null),\n Diem_tru: new FormControl(null),\n Ngay_vi_pham: new FormControl(null, [Validators.required]),\n Duyet_diem: new FormControl(null),\n });\n UpdateForm = new FormGroup({\n ID_vi_pham: new FormControl(null),\n ID_sv: new FormControl(null),\n Ma_sv: new FormControl(null),\n Ngay_sinh: new FormControl(null),\n Ten_sv: new FormControl(null),\n Hoc_ky: new FormControl(null),\n Nam_hoc: new FormControl(null),\n Diem_tru: new FormControl(null),\n Noi_dung: new FormControl(null),\n Ngay_vi_pham: new FormControl(null),\n Duyet_diem: new FormControl(null),\n });\n dtTrigger = new Subject();\n public com: common;\n ngOnInit(): void {\n var yearNow = new Date().getFullYear() + 4;\n for (var i = 0; i < 10; i++) {\n let Nam_hoc_string = yearNow + '-' + (yearNow + 1);\n let object = {\n value: Nam_hoc_string,\n name: Nam_hoc_string,\n };\n this.Nam_hoc_arr.push(object);\n yearNow--;\n }\n this.getToken();\n this.GetAll();\n this.getHoSoSV();\n }\n hidesearch() {\n if (this.show_search == true) {\n return (this.show_search = false);\n }\n if (this.show_search == false) {\n return (this.show_search = true);\n }\n }\n GetAll() {\n this.page = 1;\n this.spinner.show();\n this.ViPhamService.GetAll(this.Token).subscribe((z) => {\n this.dataTable = z.Data;\n this.DataFilter = z.Data;\n this.DataView = this.dataTable.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n this.numberPage = this.createNumberPage(\n z.Data.length,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n z.Data.length,\n this.pageSize\n ).arrNumberPage_chil;\n this.totalItem = z.Data.length;\n this.totalItemFilter = z.Data.length;\n this.spinner.hide();\n });\n }\n getListBuilding() {\n this.FillToaNha = '';\n this.BuildingService.getList(this.Token).subscribe((z) => {\n this.dataBuilding = z.Data;\n });\n }\n ChangeToaNha() {\n let id_toa_nha = this.FilterForm.value.Ten_nha_ft;\n if (id_toa_nha != '') {\n this.dataRoomView = this.dataRoom.filter(\n (x) => x.ID_Toa_Nha == id_toa_nha\n );\n } else {\n this.dataRoomView = this.dataRoom;\n }\n }\n ChangeToaNhaInsert() {\n let id_toa_nha = this.FilterForm.value.Ten_toa_nha;\n this.dataRoomView = this.dataRoom.filter((x) => x.ID_Toa_Nha == id_toa_nha);\n \n }\n getListRoom() {\n this.FillPhong = '';\n this.RoomService.GetAll(this.Token).subscribe((z) => {\n this.dataRoom = z.Data;\n this.dataRoomView = z.Data;\n //this.Filter();\n });\n } // list phòng\n GetCount(req) {\n this.LichSuSuaChuaService.Count(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.totalItem = z.Message;\n }\n });\n }\n getHoSoSV() {\n this.spinner.show();\n this.ListpeopledormService.getList(this.Token).subscribe((z) => {\n this.dataSV = z.Data;\n this.totalRecord2 = z.Data.length;\n this.beforeFilter = z.Data;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.dataSV2 = z.Data.filter((x) => 0 < x.STT && x.STT <= this.pageSize2);\n this.spinner.hide();\n });\n }\n checkAllCheckBox(ev) {\n this.DataView.forEach((x) => (x.checked = ev.target.checked));\n }\n isAllCheckBoxChecked() {\n if (this.DataView != undefined) return this.DataView.every((p) => p.checked);\n }\n isAllCheckBoxChecked1() {\n if (this.dataSV != undefined) return this.dataSV.every((p) => p.checked);\n }\n checkAllCheckBox1(ev) {\n this.dataSV.forEach((x) => (x.checked = ev.target.checked));\n }\n isAllCheckBoxChecked2() {\n if (this.dataSV != undefined) return this.dataSV.every((p) => {\n return p.checked\n });\n }\n isCheckBox(p) {\n\n }\n checkAllCheckBoxAu2(ev) {\n if (this.DataViPham.length > 0) {\n this.DataViPham.forEach((x) => {\n x.checked = ev.target.checked\n })\n }\n }\n\n changepage2(event: any) {\n this.spinner.show();\n if (event == 'pre') {\n this.page_sv = this.page_sv - 1;\n } else if (event == 'next') {\n this.page_sv = this.page_sv + 1;\n } else {\n this.page_sv = event;\n this.arrNumberPage2_child = [];\n for (var i = event - 3; i <= event + 3; i++) {\n if (i > 0 && i <= this.numberPage2) {\n this.arrNumberPage2_child.push(i);\n }\n }\n }\n this.dataSV2 = this.dataSV.filter(\n (x) =>\n this.pageSize2 * (this.page_sv - 1) < x.STT &&\n x.STT <= this.pageSize2 * this.page_sv\n );\n\n this.spinner.hide();\n }\n SpliceCheckRow() {\n for (let i = 0; i < this.DataViPham.length; i++) {\n if (this.DataViPham[i].checked == true) {\n const check = this.dataSV.some(\n (el) => el.ID_sv === this.DataViPham[i].ID_sv\n );\n if (!check) {\n this.dataSV.push(this.DataViPham[i]);\n }\n this.DataViPham.splice(i, 1);\n i--;\n }\n }\n } // Xóa row check\n SpliceCheckRow1(DataViPham) {\n if (this.DataViPham.checked == true) {\n const check = this.dataSV.some(\n (el) => el.ID_sv === this.DataViPham.ID_sv\n );\n if (!check) {\n this.dataSV.push(this.DataViPham);\n }\n this.DataViPham.splice();\n DataViPham --;\n }\n } // Xóa row check\n\n PushCheckRow() {\n for (let i = 0; i < this.dataSV.length; i++) {\n if (this.dataSV[i].checked == true) {\n const check = this.DataViPham.some((el) => {\n return el.ID_sv == this.dataSV[i].ID_sv;\n });\n if (!check) {\n this.DataViPham.push(this.dataSV[i]);\n }\n this.dataSV.splice(i, 1);\n i--;\n }\n }\n } // thêm row check\n next() {\n if (this.DataViPham.length == 0) {\n this.toastr.warning('Chọn sinh viên !');\n return false;\n }\n this.Display = true;\n }\n\n prev() {\n this.Display = false;\n }\n\n resetform() {\n this.DataViPham = [];\n this.Display = false;\n }\n checkbox(event) {\n this.DataViPham.push(event);\n }\n open(content, sizm, category, Data) {\n if (category == 'DeleteM') {\n this.numberChecked = this.dataTable.filter((x) => x.checked == true);\n if (this.numberChecked.length == 0) {\n this.toastr.warning('Bạn chưa chọn sinh viên!');\n return false;\n }\n }\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n this.dataPopup = Data;\n }\n openModal(content, sizm, category, Data) {\n this.dataSV2 = [];\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n\n if (category == 'Insert') {\n this.dataPopup = Data;\n this.page_sv = 1;\n this.getHoSoSV();\n this.titleModal = 'Thêm vi phạm';\n this.isInsert = true;\n } else if (category == 'DuyetDK') {\n this.dataPhongByID = this.dataTypeRoom.filter(\n (x) => x.ID == Data.ID_vi_pham\n );\n // this.DuyetDKRow = {\n // ID_vi_pham: Data.ID_vi_pham,\n // Ma_sv: Data.ID_sv,\n // Ten_sv: Data.ID_sv,\n // Ngay_sinh: Data.Ngay_sinh,\n // Hoc_ky: Data.Hoc_ky,\n // Nam_hoc: Data.Nam_hoc,\n // Diem_tru: Data.Diem_tru,\n // Noi_dung: Data.Noi_dung,\n // Ngay_vi_pham: Data.Ngay_vi_pham,\n // Duyet_diem: Data.Duyet_diem,\n // };\n }\n if (category == 'Update') {\n this.titleModal = 'Sửa vi phạm';\n this.UpdateForm.setValue({\n ID_vi_pham: Data.ID_vi_pham,\n ID_sv: Data.ID_sv,\n Ma_sv: Data.Ma_sv,\n Ten_sv: Data.Ten_sv,\n Ngay_sinh: Data.Ngay_sinh,\n Hoc_ky: Data.Hoc_ky,\n Nam_hoc: Data.Nam_hoc.trim(),\n Diem_tru: Data.Diem_tru,\n Noi_dung: Data.Noi_dung,\n Ngay_vi_pham: Data.Ngay_vi_pham.substr(0, 10),\n Duyet_diem: Data.Duyet_diem,\n });\n }\n if (category == 'Delete') {\n this.ID_vi_pham = Data.ID_vi_pham;\n this.data_Delete=Data;\n }\n }\n changPage(event) {\n this.handlePageChange(event);\n //this.spinner.show();\n this.DataView = this.DataFilter.filter(\n (x) =>\n this.pageSize * (this.page - 1) < x.STT &&\n x.STT <= this.pageSize * this.page\n );\n // this.arrNumberPage_chil = this.createNumberPage(\n // this.DataFilter.length,\n // this.pageSize\n // ).arrNumberPage_chil;\n }\n handlePageSizeChange2(event) {\n this.page_sv = 1;\n if (event.target.value == 'Tất cả') {\n this.pageSize2 = 100000;\n } else {\n this.pageSize2 = event.target.value;\n }\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.changepage2(1);\n }\n handlePageSizeChange(event) {\n if (event.target.value == 'Tất cả') {\n this.pageSize = 100000;\n } else {\n this.pageSize = event.target.value;\n }\n //this.GetCount();\n this.GetAll();\n }\n get checkvalue() {\n return this.InsertForm.controls;\n }\n Delete() {\n let req = {\n ID_vi_pham: this.ID_vi_pham,\n ID_sv: this.data_Delete.ID_sv,\n Hoc_ky:this.data_Delete.Hoc_ky,\n Nam_hoc: this.data_Delete.Nam_hoc,\n };\n this.modalService.dismissAll();\n this.ViPhamService.Delete(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n \n }, \n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n Insert() {\n this.submitted = true;\n if (this.InsertForm.invalid) {\n this.toastr.warning('Vui lòng nhập đủ các thông tin cần thiết');\n return false;\n }\n if (this.DataViPham.length == 0) {\n this.toastr.warning('Bạn chưa chọn sinh viên!');\n return false;\n }\n let listsv = [];\n let listsv1 = this.DataViPham.filter((x) => x.checked == true);\n\n for (var i = 0; i < listsv1.length; i++) {\n let req = {\n ID_sv: listsv1[i].ID_sv,\n Ngay_sinh: this.InsertForm.value.Ngay_sinh,\n Hoc_ky: this.InsertForm.value.Hoc_ky,\n Nam_hoc: this.InsertForm.value.Nam_hoc,\n Diem_tru: this.InsertForm.value.Diem_tru,\n Noi_dung: this.InsertForm.value.Noi_dung,\n Ngay_vi_pham: this.InsertForm.value.Ngay_vi_pham,\n Duyet_diem: 0,\n };\n listsv.push(req);\n }\n if (this.isInsert == true) {\n this.spinner.show()\n this.ViPhamService.Insert(listsv, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(this.req);\n } else {\n this.toastr.error(z.Message);\n }\n this.spinner.hide() \n }, (err) => {\n this.spinner.hide(); \n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n });\n this.modalService.dismissAll();\n }\n }\n update() {\n let req = {\n ID_vi_pham: this.UpdateForm.value.ID_vi_pham,\n ID_sv: this.UpdateForm.value.ID_sv,\n Ma_sv: this.UpdateForm.value.Ma_sv,\n Ten_sv: this.UpdateForm.value.Ten_sv,\n Hoc_ky: this.UpdateForm.value.Hoc_ky,\n Nam_hoc: this.UpdateForm.value.Nam_hoc.trim(),\n Diem_tru: this.UpdateForm.value.Diem_tru,\n Noi_dung: this.UpdateForm.value.Noi_dung,\n Ngay_vi_pham: this.UpdateForm.value.Ngay_vi_pham,\n Duyet_diem: this.UpdateForm.value.Duyet_diem,\n };\n this.ViPhamService.Update(req, this.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetAll();\n this.GetCount(req);\n } else {\n this.toastr.error(z.Message);\n }\n }, (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n\n this.modalService.dismissAll();\n }\n filterModal() {\n this.dataSV = this.beforeFilter;\n if (this.Ma_sv != '') {\n let a = this.dataSV;\n let b = this.dataSV;\n if (a != []) {\n a = this.dataSV.filter((i) => i.Ma_sv.includes(this.Ma_sv.trim()));\n }\n if (b != []) {\n b = this.dataSV.filter((i) =>\n this.xoa_dau(i.Ho_ten.toLowerCase()).includes(\n this.xoa_dau(this.Ma_sv.trim().toLowerCase())\n )\n );\n }\n this.dataSV = [];\n if (a.length != 0) {\n a.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n if (b.length != 0) {\n b.forEach((i) => {\n this.dataSV.push(i);\n });\n }\n }\n if (\n this.Ngay_sinh != undefined &&\n this.Ngay_sinh != null &&\n this.Ngay_sinh != ''\n ) {\n this.dataSV = this.dataSV.filter(\n (x) => x.Ngay_sinh.toString().substring(0, 10) == this.Ngay_sinh\n );\n }\n for (var j = 0; j < this.dataSV.length; j++) {\n this.dataSV[j].STT = j + 1;\n }\n this.totalRecord2 = this.dataSV.length;\n this.numberPage2 = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).numberPage;\n this.arrNumberPage2_child = this.createNumberPage(\n this.dataSV.length,\n this.pageSize2\n ).arrNumberPage_chil;\n this.changepage2(1);\n }\n Filter() {\n this.DataFilter = this.dataTable;\n if (this.FilterForm.value.Ma_sv_ft != '' && this.FilterForm.value.Ma_sv_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => (x.Ma_sv.trim()).toLowerCase() == (this.FilterForm.value.Ma_sv_ft.trim()).toLowerCase());\n }\n if (this.FilterForm.value.Ten_sv_ft != '' && this.FilterForm.value.Ten_sv_ft != undefined) {\n this.DataFilter = this.DataFilter.filter((x) => (x.Ten_sv.trim()).toLowerCase()== (this.FilterForm.value.Ten_sv_ft.trim()).toLowerCase());\n }\n if ( this.FilterForm.value.Hoc_ky_ft != '' &&this.FilterForm.value.Hoc_ky_ft != undefined ) {\n this.DataFilter = this.DataFilter.filter(\n (x) => x.Hoc_ky.toString() == this.FilterForm.value.Hoc_ky_ft\n );\n }\n if (\n this.FilterForm.value.Nam_hoc_ft != '' &&\n this.FilterForm.value.Nam_hoc_ft != undefined\n ) {\n this.DataFilter = this.DataFilter.filter(\n (x) => x.Nam_hoc.toString().trim() == this.FilterForm.value.Nam_hoc_ft\n );\n }\n if (this.FilterForm.value.Tu_ngay_ft != '' && this.FilterForm.value.Tu_ngay_ft != undefined) {\n if (this.FilterForm.value.Den_ngay_ft != '' && this.FilterForm.value.Den_ngay_ft != undefined) {\n if (this.FilterForm.value.Den_ngay_ft < this.FilterForm.value.Tu_ngay_ft) {\n this.toastr.warning('Từ ngày không lớn hơn đến ngày!');\n } else { \n this.DataFilter = this.DataFilter.filter((x) => x.Ngay_vi_pham == null ? \"\" : x.Ngay_vi_pham.substr(0, 10) >= this.FilterForm.value.Tu_ngay_ft && x.Ngay_vi_pham == null ? \"\" : x.Ngay_vi_pham.substr(0, 10) <= this.FilterForm.value.Den_ngay_ft);\n }\n }\n } \n this.page = 1;\n for (var i = 0; i < this.DataFilter.length; i++) {\n this.DataFilter[i].STT = i + 1;\n }\n this.totalItemFilter = this.DataFilter.length;\n this.DataView = this.DataFilter.filter(\n (x) =>\n x.STT > (this.page - 1) * this.pageSize &&\n x.STT <= this.page * this.pageSize\n );\n this.numberPage = this.createNumberPage(\n this.totalItemFilter,\n this.pageSize\n ).numberPage;\n this.arrNumberPage_chil = this.createNumberPage(\n this.totalItemFilter,\n this.pageSize\n ).arrNumberPage_chil;\n }\n updateStatus_ViPham() {\n let dataRequest = this.DataView.filter((x) => x.checked == true);\n this.spinner.show();\n this.ViPhamService.UpdateStatus(dataRequest, this.Token).subscribe(\n (z) => {\n if (z.Status == 5) {\n this.toastr.error('Xảy ra lỗi trong quá trình duyệt điểm!');\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 7) {\n this.toastr.warning(z.Message);\n } else {\n this.toastr.success(z.Message);\n }\n this.modalService.dismissAll('DuyetDK');\n this.GetAll();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n unUpdate_Status_ViPham() {\n\n this.spinner.show();\n if (this.Duyet_diem == undefined) this.HuyDuyetRow.Duyet_diem = '';\n else this.HuyDuyetRow.Duyet_diem = this.Duyet_diem;\n this.ViPhamService.UnUpdateStatus(this.HuyDuyetRow, this.Token).subscribe(\n (z) => {\n if (z.Status == 5) {\n this.toastr.error(\n 'Xảy ra lỗi trong quá trình hủy duyệt điểm sinh viên.!'\n );\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 7) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n }\n this.modalService.dismissAll('HuyDuyet');\n this.GetAll();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n GetStringID(m) {\n var rs = '';\n for (var k = 0; k < m.length; k++) {\n if (k == 0) {\n rs += m[k].ID_vi_pham;\n } else {\n rs += ',' + m[k].ID_vi_pham;\n }\n }\n return rs;\n }\n\n DuyetDiem_ListID() {\n this.spinner.show();\n var dt = this.dataTable.filter((x) => x.checked == true);\n if (dt.length == 0) {\n this.modalService.dismissAll('DuyetDKList');\n this.toastr.error('Bạn vui lòng tích chọn sinh viên để duyệt điểm.!');\n this.spinner.hide();\n } else {\n // var length = dt.length;\n // var dtstring = this.GetStringID(dt);\n let req = [];\n for (var i = 0; i < dt.length; i++) {\n req.push({ \n ID_vi_pham: dt[i].ID_vi_pham,\n ID_sv: dt[i].ID_sv,\n Hoc_ky:dt[i].Hoc_ky,\n Nam_hoc:dt[i].Nam_hoc\n });\n }\n this.ViPhamService.UpdateStatus(req, this.Token).subscribe(\n (z) => {\n if (z.Status == 5) {\n this.toastr.error('Xảy ra lỗi trong duyệt điểm.!');\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 7) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n }else if(z.Status==0)\n {\n this.toastr.warning(z.Message);\n }\n this.modalService.dismissAll('DuyetDKList');\n this.GetAll();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n }\n HuyDuyetDiem_ListID() {\n this.spinner.show();\n var dt = this.dataTable.filter((x) => x.checked == true);\n if (dt.length == 0) {\n this.modalService.dismissAll('DuyetDKList');\n this.toastr.error('Bạn vui lòng tích chọn sinh viên để duyệt điểm.!');\n this.spinner.hide();\n } else {\n var length = dt.length;\n let req = [];\n for (var i = 0; i < length; i++) {\n req.push({ \n ID_vi_pham: dt[i].ID_vi_pham,\n ID_sv: dt[i].ID_sv,\n Hoc_ky:dt[i].Hoc_ky,\n Nam_hoc:dt[i].Nam_hoc\n });\n }\n this.ViPhamService.UnUpdateStatus(req, this.Token).subscribe(\n (z) => {\n if (z.Status == 5) {\n this.toastr.error('Xảy ra lỗi trong huỷ duyệt điểm.!');\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 7) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n }\n this.modalService.dismissAll('DuyetDKList');\n this.GetAll();\n this.spinner.hide();\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n );\n }\n }\n getListViPham() {\n this.ViPhamService.GetAll(this.Token).subscribe((z) => {\n this.dataTypeVipham = z.Data;\n });\n }\n save() {\n this.submitted = true;\n if (this.InsertForm.invalid) {\n return false;\n }\n this.spinner.show();\n let arr = [];\n let dataChecked = this.DataViPham.filter((x) => x.checked == true);\n for (var i = 0; i < dataChecked.length; i++) {\n let req = {\n ID_sv: dataChecked[i].ID_sv,\n Ngay_sinh: this.InsertForm.value.Ngay_sinh,\n Hoc_ky: this.InsertForm.value.Hoc_ky,\n Nam_hoc: this.InsertForm.value.Nam_hoc,\n Diem_tru: this.InsertForm.value.Diem_tru,\n Noi_dung: this.InsertForm.value.Noi_dung,\n Ngay_vi_pham: this.InsertForm.value.Ngay_vi_pham,\n Duyet_diem: 0,\n };\n arr.push(req);\n }\n this.ViPhamService.Insert(arr, this.Token).subscribe(\n (z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.GetCount(this.req);\n this.GetAll();\n } else {\n this.toastr.error(z.Message);\n }\n },\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n } else if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n this.spinner.hide();\n }\n }\n );\n this.modalService.dismissAll();\n this.spinner.hide();\n }\n Excel() {\n var r = confirm('File của bạn sẽ được tải xuống trong giây lát!');\n if (r) {\n this.com = new common(this.router);\n this.com.CheckLogin();\n var a = this.com.getUserinfo();\n this.spinner.show();\n this.ViPhamService.Excel(a.Token).subscribe((z) => {\n if (z.Status == 1) {\n this.exportService.exportExcelByte(z.FileData, 'Sinh viên vi phạm');\n this.toastr.success('File đã được tải xuống', 'Tác vụ thành công');\n this.spinner.hide();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n this.spinner.hide();\n }\n (err) => {\n this.spinner.hide();\n if (err.status == 0) {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n if (err.status == 401) {\n this.toastr.warning(\n 'Bạn không có quyền sử dụng chức năng này, vui lòng liên hệ với quản trị viên để được hỗ trợ!'\n );\n }\n }\n });\n }\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl + \"?\" + this.appConfig.document_QuanLyViPham;\n window.open(urlHelp, '_blank');\n }\n}\n","
\n
\n
\n
\n
    \n
  1. \n  Trang chủ\n
  2. \n
  3. Quản lý vi phạm
  4. \n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n STTMã sinh viênHọ tênNgày sinhĐiểm trừHọc kỳNăm họcNhà - phòngNội dungNgày vi phạmTrạng thái duyệtThao tác
\n \n {{ p.STT }}{{ p.Ma_sv }}{{ p.Ten_sv }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}{{ p.Diem_tru }}{{ p.Hoc_ky }}{{ p.Nam_hoc }}{{p.Ten_nha}}-{{p.Ten_phong}}{{ p.Noi_dung }}{{ p.Ngay_vi_pham | date: 'dd/MM/yyyy' }}Chưa duyệtDuyệtBỏ duyệt\n \n \n
Không có kết quả
\n
\n
\n
\n

\n Tổng số {{ totalItem | number }} kết quả, đã lọc được\n {{ totalItemFilter | number }} kết quả\n

\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n \n \n Thông tin vi phạm\n \n
\n
\n
\n
\n \n \n
\n
\n Học kỳ không được bỏ trống!\n
\n
\n
\n
\n \n \n
\n
\n Năm học không được bỏ trống!\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n Năm học không được bỏ trống!\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n Hiển thị\n \n kết quả\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ tên
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}
\n Không có kết quả\n
\n
\n
\n
\n
\n

\n Tổng số bản ghi: {{ totalRecord2 }}\n

\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n Mã sinh viênHọ tên
\n \n {{ p.Ma_sv }}{{ p.Ho_ten }}
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n

{{ titleModal }}

\n ×\n
\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n \n
\n \n Bạn muốn xóa thông tin vi phạm của sinh viên\n

\n
\n \n \n
\n
\n
\n
\n\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn bỏ duyệt điểm cho sinh viên?\n

\n
\n \n \n
\n
\n
\n
\n\n
\n
\n
\n \n
\n

\n Bạn có chắc chắn muốn duyệt điểm cho sinh viên?\n

\n
\n \n \n
\n
\n
\n
","import { Component, OnInit, OnDestroy, Renderer2 } from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { Router } from '@angular/router';\nimport { common } from 'src/app/app.common';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { Account } from 'src/app/utils/services/Account.service';\nimport { DataTableDirective } from 'angular-datatables';\nimport { RequestLogin } from 'src/app/Models/input.model/RequestLogin';\nimport { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\nimport { CookieService } from 'ngx-cookie-service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n@Component({\n selector: 'app-change-pass',\n templateUrl: './change-pass.component.html',\n styleUrls: ['./change-pass.component.scss']\n})\nexport class ChangePassComponent implements OnInit {\n public ChangePassForm: FormGroup;\n public m: RequestLogin;\n public LoginResult: ResponseLogin;\n public UserName: any;\n public Password: any;\n public Password2: any;\n public Password3: any;\n public com: common;\n isPassword: boolean = true;\n\n TitleVal: string\n requestObject: RequestLogin = new RequestLogin()\n constructor(\n public AccountServirce: Account,\n private toastr: ToastrService,\n private appService: AppService,\n public router: Router,\n private spinner: NgxSpinnerService,\n ) { }\n\n ngOnInit() {\n this.ChangePassForm = new FormGroup({\n Password: new FormControl(null, Validators.required),\n Password2: new FormControl(null, Validators.required),\n Password3: new FormControl(null, Validators.required)\n });\n this.com = new common(this.router);\n this.com.CheckLogin();\n }\n show() {\n this.isPassword = !(this.isPassword);\n }\n\n ChangePass() {\n \n if (this.ChangePassForm.valid) {\n let a = this.com.getUserinfo();\n this.UserName = a.Info.UserName;\n this.Password = this.ChangePassForm.controls.Password.value;\n this.Password2 = this.ChangePassForm.controls.Password2.value;\n this.Password3 = this.ChangePassForm.controls.Password3.value;\n this.requestObject.UserName = a.Info.UserName;\n var checkregex = new RegExp(\"^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\\$%\\^&\\*])(?=.{6,})\");\n // if (checkregex.test(this.Password2)) {\n if (this.Password2 == this.Password3) {\n let req = {\n UserName: this.UserName,\n Password: this.Password,\n NewPassword: this.Password2,\n UserCategory: 1\n }\n this.spinner.show()\n this.AccountServirce.ChangePass(req, a.Token)\n .subscribe(z => {\n this.spinner.hide();\n if (z.Status == 1) {\n this.toastr.success('Đổi mật khẩu thành công');\n this.router.navigate(['/admin/']);\n } else {\n this.toastr.error(z.Message, 'Thao tác thất bại');\n }\n })\n } else { this.toastr.warning('Mật khẩu mới của bạn không trùng khớp', 'Thao tác thất bại'); }\n // } else {\n // this.toastr.warning('Mật khẩu không đúng định dạng', 'Thao tác thất bại');\n // this.TitleVal = 'Mật khẩu phải có ít nhất một chữ hoa , chữ thường , kí tự (không có khoảng trắng) và từ 6 kí tự trở lên'\n // }\n } else {\n this.toastr.error('Vui lòng nhập đầy đủ thông tin', 'Tác vụ thất bại');\n };\n }\n\n}\n","
\n
\n
\n
    \n
  1.  Trang chủ
  2. \n
  3. Đổi mật khẩu
  4. \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\nimport { HttpClient } from '@angular/common/http';\nimport { FormControl } from '@angular/forms';\nimport { FormGroup } from '@angular/forms';\nimport { AfterViewInit } from '@angular/core';\nimport { Renderer2 } from '@angular/core';\ndeclare var $: any;\n\nvar messages = [], //array that hold the record of each string in chat\n lastUserMessage = '', //keeps track of the most recent input string from the user\n botMessage = '', //var keeps track of what the chatbot is going to say\n botName = 'ChatBOT', //name of the chatbot\n talking = true; //when false the speach function doesn't work\nfunction chatbotResponse() {\n talking = true;\n botMessage = 'Bạn cần nhập đúng lựa chọn !'; //the default message\n if (lastUserMessage === '1' || lastUserMessage.toLowerCase() == 'mot') {\n const sdt = [\n 'Điện thoại hỗ trợ: ',\n '0943.665.522',\n 'Email tiếp nhận yêu cầu:',\n 'b.ktx@hnue.edu.vn',\n ];\n botMessage =\n sdt[0] +\n '
' +\n \"\" +\n sdt[1] +\n '' +\n '
' +\n sdt[2] +\n '
' +\n \"\" +\n sdt[3] +\n '';\n }\n if (lastUserMessage === '2' || lastUserMessage.toLowerCase() == 'hai') {\n const linkHD = [\n 'http://thienan.vn/chitiet/video-huong-dan-su-dung-phan-mem/huong-dan-su-dung-phan-mem-quan-ly-dao-tao-phan-he-quan-ly-sinh-vien',\n ];\n botMessage = linkHD[0];\n }\n if (lastUserMessage.toLowerCase() === 'name' || lastUserMessage.toLowerCase() == 'ten' || lastUserMessage.toLowerCase() == 'tên') {\n botMessage = 'My name is ' + botName;\n }\n}\n\n//runs the keypress() function when a key is pressed\ndocument.onkeypress = keyPress;\n//if the key pressed is 'enter' runs the function newEntry()\nfunction keyPress(e) {\n var x = e || window.event;\n var key = x.keyCode || x.which;\n if (key == 13 || key == 3) {\n //runs this function when enter is pressed\n // newEntry();\n }\n if (key == 38) {\n //document.getElementById(\"chatbox\").value = lastUserMessage;\n }\n}\n\n@Component({\n selector: 'app-chat-bot',\n templateUrl: './chat-bot.component.html',\n styleUrls: ['./chat-bot.component.scss'],\n})\nexport class ChatBotComponent implements OnInit, AfterViewInit {\n Token: any;\n\n public com: common;\n UserName_get: any;\n FullName_get: any;\n form = new FormGroup({\n myInput: new FormControl(''),\n });\n\n constructor(\n public router: Router,\n private titleService: Title,\n private http: HttpClient,\n private renderer: Renderer2\n ) {}\n\n ngOnInit(): void {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.UserName_get = a.Info.UserName;\n this.FullName_get = a.Info.FullName;\n this.Token = a.Token;\n }\n clickComment() {\n $('.chatbox-popup').fadeToggle();\n }\n closePopUp() {\n $('.chatbox-popup').fadeOut();\n }\n zoomOutPopUp() {\n $('.chatbox-popup__main').css('height', '50vh');\n $('.chatbox-zoomOut').css('display', 'none');\n $('.chatbox-zoomIn').css('display', 'block');\n }\n zoomInPopUp() {\n $('.chatbox-popup__main').css('height', '300px');\n $('.chatbox-zoomOut').css('display', 'block');\n $('.chatbox-zoomIn').css('display', 'none');\n }\n ngAfterViewInit() {\n setTimeout(() => {\n var elem = this.renderer.selectRootElement('#chatbox');\n elem.focus();\n }, 1000);\n }\n\n focusMyInput() {\n var ampm = new Date().getHours() >= 12 ? 'pm' : 'am';\n var strTime =\n new Date().getHours() +\n ':' +\n new Date().getMinutes() +\n ':' +\n new Date().getSeconds() +\n ' ' +\n ampm;\n this.renderer.selectRootElement('#chatbox').focus();\n if (this.form.value.myInput != '') {\n lastUserMessage = this.xoa_dau(this.form.value.myInput.toLowerCase());\n this.form.value.myInput = '';\n messages.push(\n '
' +\n '
' +\n '
' +\n '' +\n this.UserName_get +\n '' +\n ' ' +\n strTime +\n '' +\n '
' +\n ' \"Message' +\n '
' +\n lastUserMessage +\n '
' +\n '
'\n );\n chatbotResponse();\n if (\n lastUserMessage == '2' ||\n lastUserMessage == 'hai' \n ) {\n messages.push(\n '
' +\n '
' +\n '' +\n botName +\n '' +\n '' +\n strTime +\n '' +\n '
' +\n ' \"Message' +\n '
' +\n \"\" +\n botMessage +\n '' +\n '
' +\n '
' +\n '
'\n );\n } else {\n // messages.push(\"\" + botName + \": \" + botMessage);\n messages.push(\n '
' +\n '
' +\n '' +\n botName +\n '' +\n '' +\n strTime +\n '' +\n '
' +\n ' \"Message' +\n '
' +\n botMessage +\n '
' +\n '
' +\n ''\n );\n }\n for (var i = 1; i < 8; i++) {\n if (messages[messages.length - i])\n document.getElementById('chatlog' + i).innerHTML =\n messages[messages.length - i];\n }\n $('.chatbox-popup__main').scrollTop(\n $('.chatbox-popup__main')[0].scrollHeight\n );\n }\n this.form.reset();\n }\n\n xoa_dau(str) {\n str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');\n str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');\n str = str.replace(/ì|í|ị|ỉ|ĩ|ị/g, 'i');\n str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');\n str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');\n str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');\n str = str.replace(/đ/g, 'd');\n str = str.replace(/À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, 'A');\n str = str.replace(/È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ/g, 'E');\n str = str.replace(/Ì|Í|Ị|Ỉ|Ĩ/g, 'I');\n str = str.replace(/Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ/g, 'O');\n str = str.replace(/Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ/g, 'U');\n str = str.replace(/Ỳ|Ý|Ỵ|Ỷ|Ỹ/g, 'Y');\n str = str.replace(/Đ/g, 'D');\n str = str.replace(/\\u0300|\\u0301|\\u0303|\\u0309|\\u0323/g, ''); // huyền, sắc, hỏi, ngã, nặng\n str = str.replace(/\\u02C6|\\u0306|\\u031B/g, ''); // mũ â (ê), mũ ă, mũ ơ (ư)\n return str;\n }\n}\n","\n\n
\n
\n \n \n \n
\n
\n
\n

Hỗ trợ trực tuyến

\n

1. SĐT hỗ trợ

\n

2. Tài liệu hướng dẫn sử dụng phần mềm

\n
\n
\n  \n  \n  \n  \n  \n  \n  \n
\n
\n
\n \n \n \n
\n
\n","import { Component, OnInit, OnDestroy, Renderer2,NgModule } from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { AccService } from 'src/app/utils/services/acc.service';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { RequestLogin } from 'src/app/Models/input.model/RequestLogin';\nimport { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { FormsModule } from '@angular/forms';\nimport { CookieService } from 'ngx-cookie-service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\n@Component({\n selector: 'app-dang-nhap',\n templateUrl: './dang-nhap.component.html',\n styleUrls: ['./dang-nhap.component.scss','./main.css']\n})\nexport class DangNhapComponent implements OnInit {\n public loginForm: FormGroup;\n public m: RequestLogin;\n public LoginResult: ResponseLogin;\n constructor(\n private renderer: Renderer2,\n private toastr: ToastrService,\n private appService: AppService,\n private http: HttpClient,\n private cookieService: CookieService,\n private spinner: NgxSpinnerService,\n private Acc: AccService\n ) {}\n\n ngOnInit() {\n this.renderer.addClass(document.body, 'login-page');\n this.m = new RequestLogin();\n this.cookieService.deleteAll;\n this.LoginResult = new ResponseLogin();\n this.loginForm = new FormGroup({\n UserName: new FormControl(null, Validators.required),\n Password: new FormControl(null),\n });\n // this.loginForm.controls.UserName.setValue('aaaaaaa')\n }\n\n Ridrect() {\n this.appService.login();\n }\n logIn() {\n if (this.loginForm.valid) {\n this.m.UserName = this.loginForm.controls.UserName.value;\n this.m.Password = this.loginForm.controls.Password.value;\n let req = {\n UserName: this.m.UserName.split(' ').join(''),\n Password: this.m.Password,\n UserCategory: 3,\n };\n this.spinner.show()\n this.Acc.Login(req).subscribe((z) => {\n this.spinner.hide()\n if (z.Status == 1) {\n localStorage.setItem('PortalInfo', JSON.stringify(z));\n this.appService.loginPortal();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n localStorage.removeItem('PortalInfo');\n }\n });\n } else {\n this.toastr.error('Vui lòng nhập đầy đủ thông tin', 'Tác vụ thất bại');\n }\n }\n ngOnDestroy() {\n this.renderer.removeClass(document.body, 'login-page');\n }\n}\n","
\n
\n
\n
\n \n \n Đăng nhập để truy cập ký túc xá\n \n \n
\n \n \n \n
\n \n
\n \n \n \n
\n\n
\n \n
\n \n \n \n
\n
\n
\n
\n
","import { Component, OnInit, OnDestroy, Renderer2,NgModule } from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { AccService } from 'src/app/utils/services/acc.service';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { RequestLogin } from 'src/app/Models/input.model/RequestLogin';\nimport { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { FormsModule } from '@angular/forms';\nimport { CookieService } from 'ngx-cookie-service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss','./main.css'],\n})\nexport class LoginComponent implements OnInit, OnDestroy {\n public loginForm: FormGroup;\n public m: RequestLogin;\n public LoginResult: ResponseLogin;\n constructor(\n private renderer: Renderer2,\n private toastr: ToastrService,\n private appService: AppService,\n private http: HttpClient,\n private cookieService: CookieService,\n private spinner: NgxSpinnerService,\n private Acc: AccService\n ) {}\n\n ngOnInit() {\n this.renderer.addClass(document.body, 'login-page');\n this.m = new RequestLogin();\n this.cookieService.deleteAll;\n this.LoginResult = new ResponseLogin();\n this.loginForm = new FormGroup({\n UserName: new FormControl(null, Validators.required),\n Password: new FormControl(null, Validators.required),\n });\n // this.loginForm.controls.UserName.setValue('aaaaaaa')\n }\n\n Ridrect() {\n this.appService.login();\n }\n logIn() {\n if (this.loginForm.valid) {\n this.m.UserName = this.loginForm.controls.UserName.value;\n this.m.Password = this.loginForm.controls.Password.value;\n let req = {\n UserName: this.m.UserName,\n Password: this.m.Password,\n UserCategory: 1,\n ID_ph:15\n };\n this.spinner.show()\n this.Acc.LoginWithRoles(req).subscribe((z) => {\n this.spinner.hide()\n if (z.Status == 1) {\n localStorage.setItem('UserInfo', JSON.stringify(z));\n this.appService.login();\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n localStorage.removeItem('UserInfo');\n }\n });\n } else {\n this.toastr.error('Vui lòng nhập đầy đủ thông tin', 'Tác vụ thất bại');\n }\n }\n ngOnDestroy() {\n this.renderer.removeClass(document.body, 'login-page');\n }\n}\n","
\n
\n
\n
\n \n \n UniDormitory\n \n \n
\n \n \n \n
\n \n
\n \n \n \n
\n \n
\n \n
\n \n \n
\n
\n
\n
\n
","import { HttpClient } from '@angular/common/http';\nimport { Component, OnInit } from '@angular/core';\nimport { version } from './../../../../../package.json';\n\n@Component({\n selector: 'app-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n})\nexport class FooterComponent implements OnInit {\n public appVersion = version;\n \n version:any;\n versionDetail:any;\n constructor(\n private http: HttpClient\n ) { }\n \n\n ngOnInit() {\n this.http.get('assets/version.json').subscribe(data => {\n this.version=data.version \n \n })\n }\n}\n","\n","import { Component, OnInit, Output, EventEmitter,Inject } from '@angular/core';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport {BaseComponent} from 'src/app/components/base/base.component'\nimport { AppConfig, AppConfiguration } from 'src/configuration';\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n})\nexport class HeaderComponent implements OnInit {\n @Output() toggleMenuSidebar: EventEmitter = new EventEmitter();\n public searchForm: FormGroup;\n\n constructor(\n private appService: AppService,\n @Inject(AppConfig) \n public readonly appConfig: AppConfiguration,\n ) {}\n\n ngOnInit() {\n this.searchForm = new FormGroup({\n search: new FormControl(null),\n });\n }\n\n logout() {\n this.appService.logout();\n }\n help() {\n const urlHelp = this.appConfig.HelpUrl + \"?\" + this.appConfig.document_QuanLyViPham;\n window.open(urlHelp, '_blank');\n }\n}\n","\n\n\n","import {\n Component,\n OnInit,\n HostListener,\n ElementRef,\n ViewChild,\n Renderer2,\n} from '@angular/core';\n\n@Component({\n selector: 'app-messages-dropdown-menu',\n templateUrl: './messages-dropdown-menu.component.html',\n styleUrls: ['./messages-dropdown-menu.component.scss'],\n})\nexport class MessagesDropdownMenuComponent implements OnInit {\n @ViewChild('dropdownMenu', { static: false }) dropdownMenu;\n\n @HostListener('document:click', ['$event'])\n clickout(event) {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n this.hideDropdownMenu();\n }\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {}\n\n ngOnInit() {}\n\n toggleDropdownMenu() {\n if (this.dropdownMenu.nativeElement.classList.contains('show')) {\n this.hideDropdownMenu();\n } else {\n this.showDropdownMenu();\n }\n }\n\n showDropdownMenu() {\n this.renderer.addClass(this.dropdownMenu.nativeElement, 'show');\n }\n\n hideDropdownMenu() {\n this.renderer.removeClass(this.dropdownMenu.nativeElement, 'show');\n }\n}\n","
  • \n \n \n 3\n \n \n
  • \n","import {\n Component,\n OnInit,\n ViewChild,\n HostListener,\n ElementRef,\n Renderer2,\n} from '@angular/core';\n\n@Component({\n selector: 'app-notifications-dropdown-menu',\n templateUrl: './notifications-dropdown-menu.component.html',\n styleUrls: ['./notifications-dropdown-menu.component.scss'],\n})\nexport class NotificationsDropdownMenuComponent implements OnInit {\n @ViewChild('dropdownMenu', { static: false }) dropdownMenu;\n\n @HostListener('document:click', ['$event'])\n clickout(event) {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n this.hideDropdownMenu();\n }\n }\n\n constructor(private elementRef: ElementRef, private renderer: Renderer2) {}\n\n ngOnInit() {}\n\n toggleDropdownMenu() {\n if (this.dropdownMenu.nativeElement.classList.contains('show')) {\n this.hideDropdownMenu();\n } else {\n this.showDropdownMenu();\n }\n }\n\n showDropdownMenu() {\n this.renderer.addClass(this.dropdownMenu.nativeElement, 'show');\n }\n\n hideDropdownMenu() {\n this.renderer.removeClass(this.dropdownMenu.nativeElement, 'show');\n }\n}\n","
  • \n \n \n 15\n \n \n
  • \n\n\n \n 4 new messages\n 3 mins\n \n
    \n
    \n","import {\n Component,\n OnInit,\n HostListener,\n ElementRef,\n ViewChild,\n Renderer2\n} from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { ToastrService } from 'ngx-toastr';\n@Component({\n selector: 'app-user-dropdown-menu',\n templateUrl: './user-dropdown-menu.component.html',\n styleUrls: ['./user-dropdown-menu.component.scss']\n})\nexport class UserDropdownMenuComponent implements OnInit {\n @ViewChild('dropdownMenu', { static: false }) dropdownMenu;\n\n @HostListener('document:click', ['$event'])\n clickout(event) {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n this.hideDropdownMenu();\n }\n }\n requestObject: RequestBase = new RequestBase()\n com: common;\n UnReadNum: number;\n MessageLst: []\n UserName:string=\"Đang lấy dữ liệu...\"\n constructor(public elementRef: ElementRef, public renderer: Renderer2,\n public router: Router,) { }\n\n ngOnInit() {\n this.com = new common(this.router);\n var User = this.com.getUserinfo();\n this.UserName = User.Info.FullName\n \n }\n\n toggleDropdownMenu() {\n if (this.dropdownMenu.nativeElement.classList.contains('show')) {\n this.hideDropdownMenu();\n } else {\n this.showDropdownMenu();\n }\n }\n\n showDropdownMenu() {\n this.renderer.addClass(this.dropdownMenu.nativeElement, 'show');\n }\n\n hideDropdownMenu() {\n this.renderer.removeClass(this.dropdownMenu.nativeElement, 'show');\n }\n\n}\n","
  • \n \n \n \n \n
  • ","import { AfterViewInit, Component, OnInit, Renderer2, ViewChild } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\n\n\n@Component({\n selector: 'app-main',\n templateUrl: './main.component.html',\n styleUrls: ['./main.component.scss'],\n})\nexport class MainComponent implements OnInit, AfterViewInit{\n public sidebarMenuOpened = true;\n @ViewChild('contentWrapper', { static: false }) contentWrapper;\n\n constructor(private renderer: Renderer2, public router: Router, private titleService: Title) {}\n public com: common;\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLogin();\n this.renderer.removeClass(document.querySelector('app-root'), 'login-page');\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'register-page'\n );\n }\n ngAfterViewInit() {\n this.setTitle()\n }\n public setTitle() {\n var res = $('.breadcrumb-item.active').text();\n this.titleService.setTitle(res +\" | UniDormitory\");\n }\n mainSidebarHeight(height) {\n // this.renderer.setStyle(\n // this.contentWrapper.nativeElement,\n // 'min-height',\n // height - 114 + 'px'\n // );\n }\n\n \n\n toggleMenuSidebar() {\n console.log('sidebarMenuCollapsed', this.sidebarMenuOpened);\n if (this.sidebarMenuOpened) {\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'sidebar-open'\n );\n this.renderer.addClass(\n document.querySelector('app-root'),\n 'sidebar-collapse'\n );\n this.sidebarMenuOpened = false;\n } else {\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'sidebar-collapse'\n );\n this.renderer.addClass(\n document.querySelector('app-root'),\n 'sidebar-open'\n );\n this.sidebarMenuOpened = true;\n }\n }\n}\n","
    \n \n\n \n\n
    \n \n
    \n\n \n \n
    \n
    \n","import {\r\n Component,\r\n OnInit,\r\n AfterViewInit,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { common } from 'src/app/app.common';\r\nimport { AppService } from 'src/app/utils/services/app.service';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-menu-sidebar',\r\n templateUrl: './menu-sidebar.component.html',\r\n styleUrls: ['./menu-sidebar.component.scss'],\r\n})\r\nexport class MenuSidebarComponent implements OnInit, AfterViewInit {\r\n @ViewChild('mainSidebar', { static: false }) mainSidebar;\r\n @Output() mainSidebarHeight: EventEmitter = new EventEmitter();\r\n DonGiaDienNuoc: any;\r\n QuanTriEmail: any;\r\n LichSuEmail: any;\r\n constructor(\r\n public appService: AppService,\r\n private router: Router,\r\n private toastr: ToastrService,\r\n private titleService: Title\r\n ) {}\r\n styleLi: string = 'nav-item ';\r\n public com: common;\r\n Co_so: boolean = false;\r\n Toa_nha: boolean = false;\r\n Loai_phong: boolean = false;\r\n Phong: boolean = false;\r\n So_do_phong: boolean = false;\r\n Thiet_bi: boolean = false;\r\n Quy_dinh_dang_ky: boolean = false;\r\n Duyet_dang_ky: boolean = false;\r\n Xep_phong: boolean = false;\r\n Bien_lai: boolean = false;\r\n Thong_ke: boolean = false;\r\n Danh_sach_o: boolean = false;\r\n Danh_sach_ra: boolean = false;\r\n Danh_sach_han_che: boolean = false;\r\n Tra_cuu_log: boolean = false;\r\n QuyDinhKhoanThu: boolean = false;\r\n DeXuatSinhVien: boolean = false;\r\n DiemSinhVien: boolean = false;\r\n DiemPhong: boolean = false;\r\n PhanQuyen: boolean = false;\r\n LichSuSuaChua: boolean = false;\r\n ViPham: boolean = false;\r\n HinhThuc: boolean = false;\r\n KhenThuongKyLuat: boolean = false;\r\n BienDong: boolean = false;\r\n SoDien: boolean = false;\r\n SoNuoc: boolean = false;\r\n TienIch: boolean = false;\r\n ThamSoHeThong: boolean = false;\r\n Roles: any;\r\n ngOnInit() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var UserData = this.com.getUserinfo();\r\n this.Roles = UserData.Roles;\r\n if (this.Roles.length == 0) {\r\n this.toastr.warning(\r\n 'Bạn chưa được cấp bất kỳ quyền nào! Vui lòng liên hệ với quản trị viên để được hỗ trợ'\r\n );\r\n } else {\r\n this.SetUpMenu(this.Roles);\r\n }\r\n }\r\n menu(id: string) {\r\n let element, name, arr;\r\n element = document.getElementById(id);\r\n arr = element.className.split(' ');\r\n name = 'menu-open';\r\n if (arr.indexOf(name) == -1) {\r\n element.className += ' ' + name;\r\n } else {\r\n element.className = 'nav-item';\r\n }\r\n }\r\n ngAfterViewInit() {\r\n this.mainSidebarHeight.emit(this.mainSidebar.nativeElement.offsetHeight);\r\n }\r\n public setTitle(newTitle) {\r\n this.titleService.setTitle(newTitle + ' | UniDormitory');\r\n }\r\n SetUpMenu(R) {\r\n // Đăng ký\r\n this.Duyet_dang_ky = R.some((x) => x.ID_quyen == 1500);\r\n this.QuyDinhKhoanThu = R.some((x) => x.ID_quyen == 1513);\r\n // Xếp phòng\r\n this.Xep_phong = R.some((x) => x.ID_quyen == 1501);\r\n // Danh sách ở\r\n this.Danh_sach_o = R.some((x) => x.ID_quyen == 1502);\r\n // Biên lai hóa đơn\r\n this.Bien_lai = R.some((x) => x.ID_quyen == 1503);\r\n // Cơ sở\r\n this.Co_so = R.some((x) => x.ID_quyen == 1504);\r\n // Tòa nhà\r\n this.Toa_nha = R.some((x) => x.ID_quyen == 1505);\r\n // Phòng\r\n this.Phong = R.some((x) => x.ID_quyen == 1506);\r\n // Loại phòng\r\n this.Loai_phong = R.some((x) => x.ID_quyen == 1507);\r\n // Thiết bị\r\n this.Thiet_bi = R.some((x) => x.ID_quyen == 1508);\r\n\r\n // Quy định đăng ký\r\n this.Quy_dinh_dang_ky = R.some((x) => x.ID_quyen == 1509);\r\n // Danh sách hạn chế\r\n this.Danh_sach_han_che = R.some((x) => x.ID_quyen == 1510);\r\n // Danh sách ra\r\n this.Danh_sach_ra = R.some((x) => x.ID_quyen == 1511);\r\n this.Tra_cuu_log = R.some((x) => x.ID_quyen == 1512);\r\n this.DeXuatSinhVien = R.some((x) => x.ID_quyen == 1514);\r\n this.DiemSinhVien = R.some((x) => x.ID_quyen == 1515);\r\n this.DiemPhong = R.some((x) => x.ID_quyen == 1516);\r\n this.BienDong = R.some((x) => x.ID_quyen == 1517);\r\n this.PhanQuyen = R.some((x) => x.ID_quyen == 1518);\r\n this.LichSuSuaChua = R.some((x) => x.ID_quyen == 1519);\r\n this.ViPham = R.some((x) => x.ID_quyen == 1520);\r\n this.HinhThuc = R.some((x) => x.ID_quyen == 1521);\r\n this.KhenThuongKyLuat = R.some((x) => x.ID_quyen == 1522);\r\n this.SoDien = R.some((x) => x.ID_quyen == 1523);\r\n this.SoNuoc = R.some((x) => x.ID_quyen == 1524);\r\n this.DonGiaDienNuoc = R.some((x) => x.ID_quyen == 1525);\r\n this.QuanTriEmail = R.some((x) => x.ID_quyen == 1526);\r\n this.LichSuEmail = R.some((x) => x.ID_quyen == 1527);\r\n this.ThamSoHeThong = R.some((x) => x.ID_quyen == 1529);\r\n this.TienIch = R.some((x) => x.ID_quyen == 1530);\r\n }\r\n}\r\n","\r\n \r\n \r\n \"UniDormitory\"\r\n UniDormitory\r\n \r\n
    \r\n \r\n \r\n
    \r\n\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { DataTableDirective } from 'angular-datatables';\r\nimport { Subject } from 'rxjs';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormBuilder,\r\n Validators,\r\n MaxLengthValidator,\r\n} from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { DeXuatSinhVienService } from 'src/app/utils/services/de-xuat-sinh-vien.service';\r\nimport { LoaiDeXuatService } from 'src/app/utils/services/loaidexuat.service';\r\nimport { AbstractControl } from '@angular/forms';\r\nexport function removeSpaces(control: AbstractControl) {\r\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\r\n control.setValue('');\r\n }\r\n return null;\r\n}\r\n@Component({\r\n selector: 'app-de-xuat',\r\n templateUrl: './de-xuat.component.html',\r\n styleUrls: ['./de-xuat.component.scss'],\r\n})\r\nexport class DeXuatComponent implements OnInit {\r\n dtOptions: DataTables.Settings;\r\n @ViewChild(DataTableDirective, { static: false })\r\n datatableElement: DataTableDirective;\r\n Token: string;\r\n dataTable: any = [];\r\n submitted = false;\r\n NameTitle: string;\r\n titleModal: string;\r\n closeResult: string;\r\n Data: any;\r\n check: any;\r\n DataLoaiDeXuat: any;\r\n public com: common;\r\n dtTrigger = new Subject();\r\n Insert = new FormGroup({\r\n Noi_dung: new FormControl(null, [\r\n Validators.required,\r\n Validators.maxLength(500),\r\n removeSpaces,\r\n ]),\r\n ID_loai_de_xuat: new FormControl(null, [Validators.required]),\r\n });\r\n constructor(\r\n private modalService: NgbModal,\r\n private DeXuatSinhVienService: DeXuatSinhVienService,\r\n private fb: FormBuilder,\r\n public router: Router,\r\n private fromBuilder: FormBuilder,\r\n private toastr: ToastrService,\r\n private spinner: NgxSpinnerService,\r\n private LoaiDeXuatService: LoaiDeXuatService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n let element, name, arr;\r\n element = document.getElementById('menu1');\r\n arr = element.className.split(' ');\r\n name = 'menu-open';\r\n if (arr.indexOf(name) == -1) {\r\n element.className += ' ' + name;\r\n }\r\n this.com = new common(this.router);\r\n this.com.CheckLoginPortal();\r\n var a = this.com.getPortalInfo();\r\n this.Token = a.Token;\r\n this.dtOptions = {\r\n pagingType: 'full_numbers',\r\n pageLength: 10,\r\n language: {\r\n processing: 'Đang xử lý...',\r\n lengthMenu: 'Xem _MENU_ mục',\r\n emptyTable: 'Không có dữ liệu!',\r\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\r\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\r\n infoFiltered: '(được lọc từ _MAX_ mục)',\r\n infoPostFix: '',\r\n search: 'Tìm kiếm nhanh:',\r\n url: '',\r\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\r\n paginate: {\r\n first: 'Đầu',\r\n previous: 'Trước',\r\n next: 'Tiếp',\r\n last: 'Cuối',\r\n },\r\n },\r\n columns: [\r\n {\r\n title: 'ID',\r\n visible: false,\r\n },\r\n {\r\n title: 'Nội dung đề xuất',\r\n },\r\n {\r\n title: 'Ngày đề xuất',\r\n },\r\n {\r\n title: 'Loại đề xuất',\r\n visible: false,\r\n },\r\n {\r\n title: 'Loại đề xuất',\r\n },\r\n {\r\n title: 'Nội dung phản hồi',\r\n },\r\n {\r\n title: 'Thao tác',\r\n width: '75px',\r\n },\r\n ],\r\n order: [[0, 'desc']],\r\n };\r\n this.getList();\r\n this.getLoaiDeXuat();\r\n }\r\n getList() {\r\n this.spinner.show();\r\n let ID_sv = this.com.getPortalInfo().Info.UserID;\r\n this.DeXuatSinhVienService.getAllBySv(ID_sv, this.Token).subscribe((z) => {\r\n this.dataTable = z.Data;\r\n\r\n this.dtTrigger.next();\r\n this.spinner.hide();\r\n });\r\n }\r\n clear() {\r\n this.Insert.value.Noi_dung = '';\r\n }\r\n\r\n open(content, sizm, Loai, Data) {\r\n this.Data = Data;\r\n this.submitted = false;\r\n this.modalService\r\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n if (Loai == 'Edit') {\r\n this.check = true;\r\n this.titleModal = 'Sửa đề xuất';\r\n this.Insert.patchValue({\r\n Noi_dung: Data.Noi_dung,\r\n ID_loai_de_xuat: Data.ID_loai_de_xuat,\r\n });\r\n } else {\r\n this.check = false;\r\n this.titleModal = 'Thêm đề xuất';\r\n this.Insert.reset();\r\n }\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n save() {\r\n if (this.check == false) {\r\n let req = {\r\n ID_sv: this.com.getPortalInfo().Info.UserID,\r\n Noi_dung: this.Insert.value.Noi_dung,\r\n ID_loai_de_xuat: this.Insert.value.ID_loai_de_xuat,\r\n Ngay_xu_ly: null,\r\n };\r\n this.DeXuatSinhVienService.Insert(req, this.Token).subscribe((z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Thêm mới thành công!');\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList();\r\n }\r\n });\r\n } else {\r\n let req = {\r\n ID_de_xuat: this.Data.ID_de_xuat,\r\n Noi_dung: this.Insert.value.Noi_dung,\r\n ID_loai_de_xuat: this.Insert.value.ID_loai_de_xuat,\r\n };\r\n this.DeXuatSinhVienService.UpdateBySV(req, this.Token).subscribe((z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error(z.Message);\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Sửa thành công!');\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then(\r\n (dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n }\r\n );\r\n this.getList();\r\n }\r\n });\r\n }\r\n }\r\n Delete() {\r\n this.DeXuatSinhVienService.Delete(\r\n this.Data.ID_de_xuat,\r\n this.Token\r\n ).subscribe((z) => {\r\n if (z.Status == 2) {\r\n this.toastr.error('Xoá thất bại!');\r\n } else if (z.Status == 1) {\r\n this.toastr.success('Xoá thành công');\r\n this.modalService.dismissAll('AddModal');\r\n this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {\r\n dtInstance.destroy();\r\n });\r\n this.getList();\r\n }\r\n });\r\n }\r\n get checkvalue() {\r\n return this.Insert.controls;\r\n }\r\n getLoaiDeXuat() {\r\n this.LoaiDeXuatService.getList(this.Token).subscribe((z) => {\r\n this.DataLoaiDeXuat = z.Data;\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 \r\n \r\n \r\n \r\n {{ p.ID_de_xuat }}\r\n {{ p.Noi_dung }}\r\n {{ p.Ngay_de_xuat | date: 'dd/MM/yyyy' }}\r\n {{ p.ID_loai_de_xuat }}\r\n {{ p.Ten_loai_de_xuat }}\r\n {{ p.Noi_dung_phan_hoi }}\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 \r\n {{ titleModal }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Chọn loại đề xuất\r\n \r\n {{ value.Ten_loai_de_xuat }}\r\n \r\n \r\n \r\n
    \r\n Loại đề xuất không được bỏ trống!\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n Nội dung không được bỏ trống!\r\n
    \r\n
    \r\n Nội dung tối đa 500 ký tự!\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n Gửi đề xuất\r\n \r\n\r\n \r\n Đóng\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 có chắc chắn muốn xóa\r\n

    \r\n
    \r\n \r\n \r\n Hủy bỏ\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, from, Observable } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { FormControl, FormGroup, FormBuilder, Validators, MaxLengthValidator, AbstractControl, } from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\n\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n\n@Component({\n selector: 'app-portal-cap-nhat-thong-tin',\n templateUrl: './portal-cap-nhat-thong-tin.component.html',\n styleUrls: ['./portal-cap-nhat-thong-tin.component.scss']\n})\nexport class PortalCapNhatThongTinComponent implements OnInit {\n\n dtOptions: DataTables.Settings;\n Token: string;\n dataTable: any = []\n closeResult: string;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective\n submitted = false\n dtTrigger = new Subject();\n public com: common;\n public data: any;\n checkInsert:boolean = false;\n titleModal: any;\n\n dataSinhVien: any;\n UserName_get: string;\n Ma_sv_get: string;\n Email_get: string;\n So_dien_thoai_get: string;\n\n Insert = new FormGroup({\n Ghi_chu: new FormControl(''),\n Tinh_trang_suc_khoe: new FormControl(''),\n // Nguyen_vong: new FormControl(''),\n ID_doi_tuong_TS: new FormControl(0),\n ID_khu_vuc_TS: new FormControl(''),\n Ma_sv: new FormControl(''),\n Ho_ten: new FormControl(''),\n Email: new FormControl('', [\n Validators.required,\n Validators.email,\n removeSpaces,\n ]),\n Ngay_sinh: new FormControl(''),\n Loai_phong: new FormControl(''),\n Dienthoai_canhan: new FormControl('', [Validators.required]),\n });\n\n constructor(\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private RoomCategoryRegister: RoomCategoryRegisterService,\n private System: SystemService,\n private RegisterDorm: RegisterDormService,\n private http: HttpClient,\n ) { }\n\n ngOnInit(): void {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.Token = a.Token;\n this.UserName_get = a.Info.UserName;\n this.Ma_sv_get = a.Info.UserName;\n\n this.GetSinhVienByMaSV();\n this.GetDataSystem();\n this.Insert.get('ID_doi_tuong_TS').disable();\n this.Insert.get('ID_khu_vuc_TS').disable();\n }\n\n ID_doi_tuong_TS_Insert: number;\n ID_khu_vuc_TS_Insert: number;\n\n Ho_ten_sv: string;\n Ten_nganh_nhap_hoc_sv: string;\n Khoa_hoc_dang_hoc_sv: number;\n\n //-------------------------Lấy thông tin sv theo mã----------------------------//\n GetSinhVienByMaSV() {\n this.spinner.show();\n this.RegisterDorm.getSVbyMa(this.Ma_sv_get, this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataSinhVien = res.Data;\n this.ID_doi_tuong_TS_Insert = this.dataSinhVien[0].ID_doi_tuong_TS;\n this.ID_khu_vuc_TS_Insert = this.dataSinhVien[0].ID_khu_vuc_TS;\n this.Ho_ten_sv = this.dataSinhVien[0].Ho_ten;\n this.Ten_nganh_nhap_hoc_sv = this.dataSinhVien[0].Ten_nganh_nhap_hoc;\n this.Khoa_hoc_dang_hoc_sv = this.dataSinhVien[0].Khoa_hoc_nhap_hoc;\n this.Insert.patchValue({\n Ma_sv: this.Ma_sv_get,\n Ho_ten: this.dataSinhVien[0].Ho_ten,\n Ngay_sinh: this.dataSinhVien[0].Ngay_sinh.substring(0, 10),\n Email: this.dataSinhVien[0].Email,\n ID_doi_tuong_TS: this.dataSinhVien[0].ID_doi_tuong_TS,\n ID_khu_vuc_TS: this.dataSinhVien[0].ID_khu_vuc_TS,\n Dienthoai_canhan: this.dataSinhVien[0].Dienthoai_canhan,\n });\n this.spinner.hide();\n }\n else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n\n open(content, sizm, Loai, Data) {\n this.submitted = true;\n if (this.Insert.invalid) {\n this.toastr.warning(\"Bạn chưa nhập đầy đủ thông tin !\");\n return false;\n }\n else {\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Update') {\n this.titleModal = 'Xác nhận cập nhật thông tin';\n this.Email_get = this.Insert.value.Email;\n this.So_dien_thoai_get = this.Insert.value.Dienthoai_canhan.toString();\n this.submitted = false\n }\n }\n }\n\n dataKhuVucTuyenSinh: any;\n dataDanToc: any;\n dataQuocTich: any;\n dataDoiTuongChinhSach: any;\n //-------------------------Lấy danh sách dataSystemm----------------------------//\n GetDataSystem() {\n this.spinner.show();\n this.System.Get_khuvuc_tuyensinh(this.Token).subscribe((res) => {\n this.dataKhuVucTuyenSinh = res;\n this.System.Get_danh_sach_dan_toc(this.Token).subscribe((res) => {\n this.dataDanToc = res;\n this.System.Get_doituong_chinhsach(this.Token).subscribe((res) => {\n this.dataDoiTuongChinhSach = res;\n this.System.Get_danh_sach_quoc_tich(this.Token).subscribe((res) => {\n this.dataQuocTich = res;\n });\n });\n });\n })\n this.spinner.hide();\n }\n\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n get checkvalue() {\n return this.Insert.controls;\n } //check value\n\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n this.toastr.warning(\"Bạn chưa nhập đầy đủ thông tin !\");\n return false;\n }\n let req = {\n ID_sv: this.dataSinhVien[0].ID_sv,\n Email: this.Insert.value.Email,\n ID_doi_tuong_TS: this.ID_doi_tuong_TS_Insert,\n ID_khu_vuc_TS: this.ID_khu_vuc_TS_Insert,\n Dienthoai_canhan: this.Insert.value.Dienthoai_canhan,\n };\n this.spinner.show();\n this.RegisterDorm.Update_Student(req,this.Token).subscribe((z) => {\n if (z.Status == 5) {\n this.toastr.warning(z.Message);\n this.spinner.hide();\n } else if (z.Status == 8) {\n this.toastr.warning(z.Message);\n this.spinner.hide();\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n this.spinner.hide();\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.spinner.hide();\n }\n this.GetSinhVienByMaSV();\n this.modalService.dismissAll('UppdateModal');\n this.spinner.hide();\n });\n }\n}\n","\n
    \n \n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n {{Ho_ten_sv}} - {{Ten_nganh_nhap_hoc_sv}} - K{{Khoa_hoc_dang_hoc_sv}}  \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n Email không được bỏ trống !\n
    \n
    \n Email không đúng định dạng !\n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n Số điện thoại không được bỏ trống !\n
    \n
    \n
    \n
    \n \n 0\" formControlName=\"ID_doi_tuong_TS\" notFoundText=\"Không có kết quả\" readonly>\n Chọn đối tượng chính sách\n \n {{ item.Ten_dt }}\n \n \n 0)\" value=\"Không\" readonly>\n
    \n
    \n \n 0\" formControlName=\"ID_khu_vuc_TS\" notFoundText=\"Không có kết quả\">\n Chọn khu vực\n {{ item.Ten_kv }}\n \n 0)\" value=\"Không\" readonly>\n
    \n \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n\n\n
    \n
    \n
    \n \n
    \n \n Bạn chắc chắn đã khai báo đúng thông tin cá nhân ?\n

    \n
    \n \n \n
    \n
    \n \n Hủy bỏ\n \n \n Đồng ý\n \n
    \n
    \n
    \n\n ","import { Component, OnInit, OnDestroy, Renderer2 } from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { Router } from '@angular/router';\nimport { common } from 'src/app/app.common';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { Account } from 'src/app/utils/services/Account.service';\nimport { DataTableDirective } from 'angular-datatables';\nimport { RequestLogin } from 'src/app/Models/input.model/RequestLogin';\nimport { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { HttpClient, HttpHeaders } from \"@angular/common/http\";\nimport { CookieService } from 'ngx-cookie-service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n@Component({\n selector: 'app-portal-change-pass',\n templateUrl: './portal-change-pass.component.html',\n styleUrls: ['./portal-change-pass.component.scss']\n})\nexport class PortalChangePassComponent implements OnInit {\n public ChangePassForm: FormGroup;\n public m: RequestLogin;\n public LoginResult: ResponseLogin;\n public UserName: any;\n public Password: any;\n public Password2: any;\n public Password3: any;\n public com: common;\n isPassword: boolean = true;\n\n TitleVal: string\n requestObject: RequestLogin = new RequestLogin()\n constructor(\n public AccountServirce: Account,\n private toastr: ToastrService,\n private appService: AppService,\n public router: Router,\n private spinner: NgxSpinnerService,\n ) { }\n\n ngOnInit() {\n this.ChangePassForm = new FormGroup({\n Password: new FormControl(null, Validators.required),\n Password2: new FormControl(null, Validators.required),\n Password3: new FormControl(null, Validators.required)\n });\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n }\n show() {\n this.isPassword = !(this.isPassword);\n }\n\n ChangePass() {\n \n if (this.ChangePassForm.valid) {\n let a = this.com.getPortalInfo();\n this.UserName = a.Info.UserName;\n this.Password = this.ChangePassForm.controls.Password.value;\n this.Password2 = this.ChangePassForm.controls.Password2.value;\n this.Password3 = this.ChangePassForm.controls.Password3.value;\n this.requestObject.UserName = a.Info.UserName;\n var checkregex = new RegExp(\"^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\\$%\\^&\\*])(?=.{6,})\");\n // if (checkregex.test(this.Password2)) {\n if (this.Password2 == this.Password3) {\n let req = {\n UserName: this.UserName,\n Password: this.Password,\n NewPassword: this.Password2,\n UserCategory: 3\n }\n this.spinner.show()\n this.AccountServirce.ChangePass(req, a.Token)\n .subscribe(z => {\n this.spinner.hide();\n if (z.Status == 1) {\n this.toastr.success('Đổi mật khẩu thành công');\n this.router.navigate(['/portal/dang-ky']);\n } else {\n this.toastr.error(z.Message, 'Thao tác thất bại');\n }\n })\n } else { this.toastr.warning('Mật khẩu mới của bạn không trùng khớp', 'Thao tác thất bại'); }\n // } else {\n // this.toastr.warning('Mật khẩu không đúng định dạng', 'Thao tác thất bại');\n // this.TitleVal = 'Mật khẩu phải có ít nhất một chữ hoa , chữ thường , kí tự (không có khoảng trắng) và từ 6 kí tự trở lên'\n // }\n } else {\n this.toastr.error('Vui lòng nhập đầy đủ thông tin', 'Tác vụ thất bại');\n };\n }\n\n}\n","
    \n
    \n
    \n
      \n
    1.  Trang chủ
    2. \n
    3. Đổi mật khẩu
    4. \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n \n
    ","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, from, Observable } from 'rxjs';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\n\n@Component({\n selector: 'app-portal-dang-ky-total-page',\n templateUrl: './portal-dang-ky-total-page.component.html',\n styleUrls: ['./portal-dang-ky-total-page.component.scss'],\n})\nexport class PortalDangKyTotalPageComponent implements OnInit {\n\n public com: common;\n Token: string;\n UserName_get: string;\n Ma_sv_get: string;\n FullName_get: string;\n\n\n constructor(\n public router: Router,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private RoomCategoryRegister: RoomCategoryRegisterService,\n private System: SystemService,\n private RegisterDorm: RegisterDormService,\n private http: HttpClient,\n ) {}\n\n ngOnInit(): void {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.Token = a.Token;\n this.UserName_get = a.Info.UserName;\n this.Ma_sv_get = a.Info.UserName;\n this.FullName_get = a.Info.FullName;\n this.GetDataMail();\n }\n\n So_thong_bao: number;\n dataLichSuEmail: any;\n\n //-------------------------Lấy mail thông tin sv theo mã----------------------------//\n GetDataMail() {\n this.spinner.show();\n this.RegisterDorm.getSVbyMa(this.Ma_sv_get, this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataLichSuEmail = res.DataEmail;\n this.So_thong_bao = this.dataLichSuEmail.length > 0 ? this.dataLichSuEmail.length : 0;\n this.spinner.hide();\n }\n else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n}\n","
    \n
    \n
    \n
    \n
      \n
    1. \n  Trang chủ\n
    2. \n
    3. Đăng kí nội trú
    4. \n
    \n
    \n
    \n
    \n
    \n\n \n \n Đăng kí nội trú\n \n \n \n \n \n \n \n Hộp thư đến  \n {{So_thong_bao}}\n \n \n \n \n \n","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, from, Observable } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\n\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\n\n@Component({\n selector: 'app-portal-dang-ky',\n templateUrl: './portal-dang-ky.component.html',\n styleUrls: ['./portal-dang-ky.component.scss'],\n})\nexport class PortalDangKyComponent implements OnInit {\n dtOptions: DataTables.Settings;\n DSCoSo: any;\n DSToaNha: any;\n DSToaNha2: any;\n Token: string;\n Res: any;\n req: any;\n check: any;\n dataTable: any = [];\n dataDoiTuongChinhSach: any = [];\n closeResult: string;\n ClassData: any;\n ID: any;\n ID_doi_tuong_TS: any;\n ID_khu_vuc_TS: any;\n Ma_loai_phong: any;\n Gia_phong: any;\n Mo_ta: any;\n Con_trong: any;\n titleModal: string;\n default: any;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n checkInsert: boolean;\n submitted = false;\n getNull = false;\n NameTitle: string;\n Title: string = 'Đang tải danh sách loại phòng...';\n TitleClass: string = 'spinner-border text-muted';\n Request: any;\n Datas_Input: any;\n dtTrigger = new Subject();\n dt2Trigger = new Subject();\n public com: common;\n\n //-----------------------------------------------------//\n dataSinhVien: any;\n dataLoaiPhong: any[];\n dataSinhVienDangKy: any;\n dataKhoanNop: any;\n dataKhuVucTuyenSinh: any;\n dataPhongByID: any;\n dataDanToc: any;\n dataQuocTich: any;\n dataFile: any;\n FullName_get: string;\n\n Insert = new FormGroup({\n Ghi_chu: new FormControl(''),\n Tinh_trang_suc_khoe: new FormControl(''),\n Nguyen_vong: new FormControl(''),\n ID_doi_tuong_TS: new FormControl(''),\n ID_khu_vuc_TS: new FormControl(''),\n Ma_sv: new FormControl(''),\n Ho_ten: new FormControl(''),\n Email: new FormControl('', [\n Validators.required,\n Validators.email,\n removeSpaces,\n ]),\n Ngay_sinh: new FormControl(''),\n Loai_phong: new FormControl(''),\n Ruler: new FormControl(false),\n Dienthoai_canhan: new FormControl('', [Validators.required]),\n });\n\n constructor(\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private RoomCategoryRegister: RoomCategoryRegisterService,\n private System: SystemService,\n private RegisterDorm: RegisterDormService,\n private http: HttpClient\n ) {}\n\n ngOnInit(): void {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.Token = a.Token;\n this.UserName_get = a.Info.UserName;\n this.Ma_sv_get = a.Info.UserName;\n this.FullName_get = a.Info.FullName;\n\n this.GetSinhVienByMaSV();\n this.GetDataSystem();\n this.Insert.get('ID_doi_tuong_TS').disable();\n this.Insert.get('ID_khu_vuc_TS').disable();\n }\n\n UserName_get: string;\n Ma_sv_get: string;\n Ten_phong: string;\n Ten_loai_phong: string;\n Tinh_trang_suc_khoe: string;\n Nguyen_vong: string;\n Ghi_chu: string;\n Trang_thai_duyet: number;\n Trang_thai_o: number;\n ID_dang_ky: number;\n\n So_tien_phai_nop: any;\n So_tien_cuoc: any;\n So_tien_da_nop: any;\n So_tien_con_phai_dong: any;\n Dang_o: any;\n Suc_chua: any;\n dataLichSuEmail: any;\n ID_doi_tuong_TS_Insert: number;\n ID_khu_vuc_TS_Insert: number;\n\n //-------------------------Lấy thông tin sv theo mã----------------------------//\n GetSinhVienByMaSV() {\n this.spinner.show();\n this.RegisterDorm.getSVbyMa(this.Ma_sv_get, this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataSinhVien = res.Data;\n this.ID_doi_tuong_TS_Insert = this.dataSinhVien[0].ID_doi_tuong_TS;\n this.ID_khu_vuc_TS_Insert = this.dataSinhVien[0].ID_khu_vuc_TS;\n this.Insert.patchValue({\n Ma_sv: this.Ma_sv_get,\n Ho_ten: this.dataSinhVien[0].Ho_ten,\n Ngay_sinh: this.dataSinhVien[0].Ngay_sinh.substring(0, 10),\n Email: this.dataSinhVien[0].Email,\n ID_doi_tuong_TS: this.dataSinhVien[0].ID_doi_tuong_TS,\n ID_khu_vuc_TS: this.dataSinhVien[0].ID_khu_vuc_TS,\n Dienthoai_canhan: this.dataSinhVien[0].Dienthoai_canhan,\n });\n if (this.dataSinhVien.length > 0) {\n this.GetListLoaiPhong(\n (this.dataSinhVien[0].ID_gioi_tinh = null\n ? 0\n : this.dataSinhVien[0].ID_gioi_tinh),\n this.dataSinhVien[0].ID_sv\n );\n }\n this.spinner.hide();\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n\n ID_toa_nha_check: any;\n dataCheckTime: any;\n Tu_ngay: any;\n Den_ngay: any;\n Tu_ngay_before: any;\n Den_ngay_before: any;\n //-------------------------Lấy danh sách loại phòng theo giới tính + ID_sv----------------------------//\n GetListLoaiPhong(ID_gioi_tinh: number, ID_sv: number) {\n this.spinner.show();\n this.RoomCategoryRegister.getList(\n ID_gioi_tinh,\n ID_sv,\n this.Token\n ).subscribe((res) => {\n if (res.Status == 1) {\n this.dataLoaiPhong = !res.Data ? [] : res.Data;\n // this.dataCheckTime = res.DataQuyDinhDoiTuong;\n this.GetDangKiByID_sv(this.dataSinhVien[0].ID_sv);\n this.spinner.hide();\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n\n Ten_phong_dang_ky: string = '';\n Ten_loai_phong_dang_ky: string = '';\n Trang_thai_duyet_dang_ky: any;\n Ten_trang_thai_o_dang_ky: string = '';\n Trang_thai_o_dang_ky: any;\n //-------------------------Lấy danh sách đăng ký sv theo id----------------------------//\n GetDangKiByID_sv(ID_sv: number) {\n this.spinner.show();\n this.RegisterDorm.getListRegisterByID(ID_sv, this.Token).subscribe(\n (res) => {\n if (res.Status == 1) {\n this.dataSinhVienDangKy = res.Data;\n if (this.dataSinhVienDangKy.length > 0) {\n document.getElementById('__btnNotifi').click();\n // this.toastr.success(`Bạn đã đăng kí nội trú thành công lần mới nhất vào ngày ${this.dataSinhVienDangKy[0].Create_date.substring(0,10)} !`);\n this.Ten_phong_dang_ky = this.dataSinhVienDangKy[0].Ten_phong;\n this.Ten_loai_phong_dang_ky = this.dataSinhVienDangKy[0].Ten_loai_phong;\n this.Insert.patchValue({\n Tinh_trang_suc_khoe: this.dataSinhVienDangKy[0]\n .Tinh_trang_suc_khoe,\n Nguyen_vong: this.dataSinhVienDangKy[0].Nguyen_vong,\n Ghi_chu: this.dataSinhVienDangKy[0].Ghi_chu,\n // Loai_phong: this.dataRegisterStudent[0].ID_loai_phong,\n Ruler: true,\n });\n this.Trang_thai_duyet_dang_ky = this.dataSinhVienDangKy[0].Trang_thai_duyet;\n this.Ten_trang_thai_o_dang_ky = this.dataSinhVienDangKy[0].Ten_trang_thai_o;\n this.Trang_thai_o_dang_ky = this.dataSinhVienDangKy[0].Trang_thai_o;\n this.ID_dang_ky = this.dataSinhVienDangKy[0].ID_dang_ky;\n this.spinner.hide();\n //-------------------------Lấy ra danh sách khoản nộp----------------------------//\n // this.RegisterDorm.getListMonneyRoom(ID_sv, this.Token).subscribe(\n // (res) => {\n // if (res.Status == 1) {\n // if (res.Data) {\n // this.So_tien_phai_nop = this.dataKhoanNop[0].Sotienphainop;\n // this.So_tien_cuoc = this.dataKhoanNop[0].Sotiencuoc;\n // this.So_tien_da_nop = this.dataKhoanNop[0].Sotiendanop;\n // this.So_tien_con_phai_dong = null\n // ? this.dataKhoanNop[0].Sotienconphaidong\n // : this.dataKhoanNop[0].Sotienconphaidong + this.dataKhoanNop[0].Sotiencuoc;\n // this.spinner.hide();\n // }\n // }\n // else {\n // this.toastr.warning(res.Message);\n // this.spinner.hide();\n // }\n // }\n // );\n } else {\n this.toastr.success('Bạn chưa đăng kí nội trú !');\n }\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n }\n );\n }\n\n //-------------------------Lấy danh sách dataSystemm----------------------------//\n GetDataSystem() {\n this.spinner.show();\n this.System.Get_khuvuc_tuyensinh(this.Token).subscribe((res) => {\n this.dataKhuVucTuyenSinh = res;\n this.System.Get_danh_sach_dan_toc(this.Token).subscribe((res) => {\n this.dataDanToc = res;\n this.System.Get_doituong_chinhsach(this.Token).subscribe((res) => {\n this.dataDoiTuongChinhSach = res;\n this.System.Get_danh_sach_quoc_tich(this.Token).subscribe((res) => {\n this.dataQuocTich = res;\n });\n });\n });\n });\n this.spinner.hide();\n }\n\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'ViewInfoRoom') {\n if (!(this.Insert.value.Loai_phong > 0)) {\n this.toastr.warning('Bạn chưa chọn loại phòng !');\n return false;\n }\n this.submitted = false;\n this.dataPhongByID = this.dataLoaiPhong.filter(\n (x) => x.ID == this.Insert.value.Loai_phong\n );\n this.Ma_loai_phong = this.dataPhongByID[0].Ma_loai_phong;\n this.Con_trong = this.dataPhongByID[0].Con_trong;\n this.Dang_o = this.dataPhongByID[0].Dang_o;\n this.Gia_phong = this.dataPhongByID[0].Gia_phong;\n this.Mo_ta = this.dataPhongByID[0].Mo_ta;\n this.Suc_chua = this.dataPhongByID[0].Suc_chua;\n this.Ten_loai_phong = this.dataPhongByID[0].Ten_loai_phong;\n } else if (Loai == 'Add') {\n this.submitted = false;\n this.Insert.reset();\n this.titleModal = 'Thêm mới phòng';\n this.checkInsert = true;\n } else if (Loai == 'Destroy') {\n this.submitted = false;\n this.Mo_ta = Data.Mo_ta;\n } else if (Loai == 'Aprove') {\n this.titleModal = 'Chính sách quy định ban quản lý KTX';\n this.submitted = false;\n this.RegisterDorm.getFile(this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataFile = res.Data;\n } else {\n this.toastr.warning(res.Data);\n }\n });\n } else if (Loai == 'Notification') {\n this.titleModal = 'Thông báo ';\n this.submitted = false;\n }\n }\n\n get checkvalue() {\n return this.Insert.controls;\n } //check values\n cancelRegister() {\n this.RegisterDorm.cancelRegister(\n this.com.getPortalInfo().Info.UserID,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 1) {\n this.toastr.success(z.Message);\n this.modalService.dismissAll('');\n } else {\n this.toastr.warning(z.Message);\n this.modalService.dismissAll('ConfirmRegisterModal');\n }\n });\n }\n onSubmit() {\n this.submitted = true;\n if (this.Insert.invalid) {\n this.modalService.dismissAll('ConfirmRegisterModal');\n this.toastr.warning('Bạn chưa nhập đầy đủ thông tin !');\n return false;\n }\n if (!(this.Insert.value.Loai_phong > 0)) {\n this.toastr.warning(\n 'Chưa lấy được thông tin phòng mà bạn đăng ký. Lưu thất bại !'\n );\n this.modalService.dismissAll('ConfirmRegisterModal');\n return false;\n }\n if (this.Insert.value.Ruler) {\n var today = new Date();\n var dd = today.getDate();\n var mm = today.getMonth() + 1; //As January is 0.\n var yyyy = today.getFullYear();\n this.Datas_Input = {\n ID_doi_tuong: this.ID_doi_tuong_TS_Insert,\n Ma_sv:\n this.Insert.value.Ma_sv == ''\n ? this.UserName_get\n : this.dataSinhVien[0].Ma_sv,\n So_the: this.Insert.value.Ma_sv,\n Ghi_chu: this.Insert.value.Ghi_chu,\n Ngay_cap_the: yyyy + '-' + mm + '-' + dd,\n Nguyen_vong: this.Insert.value.Nguyen_vong,\n Tinh_trang_suc_khoe: this.Insert.value.Tinh_trang_suc_khoe,\n La_truong_phong: false,\n Ten_trang_thai_o: 0,\n Ten_trang_thai_the: 0,\n Ten_trang_thai_duyet: 1,\n Trang_thai_o: 0,\n ID_sv: this.dataSinhVien[0].ID_sv,\n ID_phong: null,\n Email: this.Insert.value.Email,\n ID_loai_phong: this.Insert.value.Loai_phong,\n Gia_loai_phong: this.dataLoaiPhong.filter(\n (x) => x.ID == this.Insert.value.Loai_phong\n )[0].Gia_phong,\n ID_lop: this.dataSinhVien[0].ID_lop,\n Ho_ten: this.Insert.value.Ho_ten,\n Ten_loai_phong: this.dataLoaiPhong.filter(\n (x) => x.ID == this.Insert.value.Loai_phong\n )[0].Ten_loai_phong,\n Ma_loai_phong: this.dataLoaiPhong.filter(\n (x) => x.ID == this.Insert.value.Loai_phong\n )[0].Ma_loai_phong,\n ID_gioi_tinh: this.dataSinhVien[0].ID_gioi_tinh,\n ID_toa_nha: this.dataLoaiPhong[0].Id_toa_nha,\n };\n let Data_student = {\n ID_sv: this.dataSinhVien[0].ID_sv,\n Email: this.Insert.value.Email,\n ID_doi_tuong_TS: this.ID_doi_tuong_TS_Insert,\n ID_khu_vuc_TS: this.ID_khu_vuc_TS_Insert,\n Dienthoai_canhan: this.Insert.value.Dienthoai_canhan,\n };\n if (this.dataSinhVienDangKy.length == 0 || this.Trang_thai_duyet == 2) {\n this.spinner.show();\n this.RegisterDorm.Update_Student(Data_student, this.Token).subscribe(\n (z) => {\n if (z.Status == 5) {\n this.toastr.error('Xảy ra lỗi sửa lại thông tin sinh viên.');\n } else if (z.Status == 1) {\n this.RegisterDorm.InsertStudent(\n this.Datas_Input,\n this.Token\n ).subscribe((z) => {\n if (z.Status == 5) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 8) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 2) {\n this.toastr.warning(z.Message);\n } else if (z.Status == 1) {\n this.toastr.success(z.Message);\n }\n this.modalService.dismissAll('AddModal');\n this.spinner.hide();\n this.GetSinhVienByMaSV();\n // setTimeout(()=> {\n // window.location.reload();\n // },4000)\n });\n }\n }\n );\n } else {\n this.toastr.warning(\n 'Bạn đã đăng ký, thông tin phòng được hiển thị phía dưới !'\n );\n this.spinner.hide();\n }\n } else {\n this.toastr.warning('Bạn cần chấp nhận nội quy chính sách ở ký túc xá');\n this.modalService.dismissAll('ConfirmRegisterModal');\n }\n }\n}\n","\n
    \n
    \n
    \n
    \n
    \n Đã hết phòng đăng kí ktx. Bạn vui lòng chờ đợt đăng ký tiếp theo !\n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n\n\n
    \n
    \n
    \n
    \n
    \n
    \n THÔNG TIN ĐĂNG KÍ KTX   \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n Email không được bỏ trống !\n
    \n
    \n Email không đúng định dạng !\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n Số điện thoại không được bỏ trống !\n
    \n
    \n
    \n
    \n
    \n
    \n \n 0\" formControlName=\"ID_doi_tuong_TS\"\n notFoundText=\"Không có kết quả\" readonly>\n Chọn đối tượng chính sách\n \n {{ item.Ten_dt }}\n \n \n 0)\" value=\"Không\"\n readonly />\n
    \n
    \n \n 0\" formControlName=\"ID_khu_vuc_TS\"\n notFoundText=\"Không có kết quả\">\n Chọn khu vực\n {{ item.Ten_kv }}\n \n \n 0)\" value=\"Không\" readonly />\n
    \n
    \n \n \n
    \n \n
    \n   Xem\n
    \n
    \n \n
    \n
    \n Loại phòng không được bỏ trống!\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n Xem nội dung chính sách\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n

    \n THÔNG TIN PHÒNG ĐĂNG KÍ\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n\n\n
    \n
    \n

    \n {{ titleModal }}\n

    \n ×\n
    \n
    \n
    \n
    \n
    \n
    \n\n\n\n
    \n

    \n Thông tin mô tả loại phòng\n

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n\n\n\n
    \n
    \n
    \n \n
    \n

    \n Bạn có chắc chắn muốn đăng ký thông tin này ?\n

    \n\n
    \n \n \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n
    \n

    \n Bạn có chắc chắn muốn huỷ đăng ký?\n

    \n\n
    \n \n \n
    \n
    \n
    \n
    \n\n\n
    \n

    \n {{ titleModal }}\n

    \n ×\n
    \n
    \n \n
    \n
    \n
    \n

    Không có sự kiện nào mới !

    \n
    \n
    \n

    Thông tin đăng kí !

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Họ và tênMã SV\n Ngày đăng ký\n Năm học\n Loại phòng đăng ký\n Phòng ở
    {{ FullName_get }}{{ UserName_get }}{{ svdk.Create_date | date: 'dd-MM-yyyy hh:mm a' }}{{ svdk.Nam_hoc }}{{ svdk.Ten_loai_phong }}\n Đang chờ ban quản lý KTX duyệt...\n \n Ban quản lý đã duyệt.Vui lòng chờ xếp phòng...\n \n {{ Ten_phong_dang_ky }}\n \n Ban quản lý đã từ chối duyệt đăng ký nội trú\n \n Ban quản lý hủy duyệt đăng ký nội trú\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    ","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-portal-footer',\n templateUrl: './portal-footer.component.html',\n styleUrls: ['./portal-footer.component.scss']\n})\nexport class PortalFooterComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n Phần mềm quản lý ký túc xá.\n Phát triển bởi công ty công nghệ\n Thiên An.\n
    \n
    \n ","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { AppService } from 'src/app/utils/services/app.service';\n\n@Component({\n selector: 'app-portal-header',\n templateUrl: './portal-header.component.html',\n styleUrls: ['./portal-header.component.scss']\n})\nexport class PortalHeaderComponent implements OnInit {\n\n @Output() toggleMenuSidebar: EventEmitter = new EventEmitter();\n public searchForm: FormGroup;\n\n constructor(private appService: AppService) {}\n\n ngOnInit() {\n this.searchForm = new FormGroup({\n search: new FormControl(null),\n });\n }\n\n logout() {\n this.appService.logoutPortal();\n }\n}\n","\n\n \n ","import {\n Component,\n OnInit,\n HostListener,\n ElementRef,\n ViewChild,\n Renderer2\n} from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { RequestBase } from 'src/app/Models/input.model/RequestBase';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-portal-user-dropdown',\n templateUrl: './portal-user-dropdown.component.html',\n styleUrls: ['./portal-user-dropdown.component.scss']\n})\nexport class PortalUserDropdownComponent implements OnInit {\n @ViewChild('dropdownMenu', { static: false }) dropdownMenu;\n\n @HostListener('document:click', ['$event'])\n clickout(event) {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n this.hideDropdownMenu();\n }\n }\n requestObject: RequestBase = new RequestBase()\n com: common;\n UnReadNum: number;\n MessageLst: []\n UserName:string=\"Đang lấy dữ liệu...\"\n constructor(public elementRef: ElementRef, public renderer: Renderer2,\n public router: Router,) { }\n\n ngOnInit() {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var User = this.com.getPortalInfo();\n this.UserName = User.Info.UserName\n \n }\n\n toggleDropdownMenu() {\n if (this.dropdownMenu.nativeElement.classList.contains('show')) {\n this.hideDropdownMenu();\n } else {\n this.showDropdownMenu();\n }\n }\n\n showDropdownMenu() {\n this.renderer.addClass(this.dropdownMenu.nativeElement, 'show');\n }\n\n hideDropdownMenu() {\n this.renderer.removeClass(this.dropdownMenu.nativeElement, 'show');\n }\n}\n","
  • \n \n \n \n \n
  • ","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject, from, Observable } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { DataTablesModule } from 'angular-datatables';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { formatValidator } from '@angular-devkit/schematics/src/formats/format-validator';\nimport { forEach } from '@angular-devkit/schematics';\nimport { timeout } from 'rxjs/operators';\nimport { AbstractControl } from '@angular/forms';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { SystemService } from 'src/app/Utils/services/system.service';\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\nimport { WebSocketService } from 'src/app/utils/services/web-socket.service';\n\n\n@Component({\n selector: 'app-portal-ket-qua',\n templateUrl: './portal-ket-qua.component.html',\n styleUrls: ['./portal-ket-qua.component.scss']\n})\nexport class PortalKetQuaComponent implements OnInit {\n\n current_year = new Date().getFullYear();\n registerTime = new Date().getHours() + \":\" + new Date().getMinutes();\n\n submitted: boolean = false;\n closeResult: string;\n titleModal: string;\n public com: common;\n Token: string;\n UserName_get: string;\n Ma_sv_get: string;\n dataLichSuEmail: any;\n searchString: string;\n\n dataNoiDungEmail: string;\n constructor(\n private modalService: NgbModal,\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private http: HttpClient,\n private RegisterDorm: RegisterDormService\n ) {}\n \n ngOnInit(): void {\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.Token = a.Token;\n this.UserName_get = a.Info.UserName;\n this.Ma_sv_get = a.Info.UserName;\n\n this.GetAll();\n }\n\n //-------------------------Lấy thông tin sv theo mã----------------------------//\n GetAll() {\n this.spinner.show();\n this.RegisterDorm.getSVbyMa(this.Ma_sv_get, this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataLichSuEmail = !res.DataEmail ? []: res.DataEmail;\n this.spinner.hide();\n }\n else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n\n private getDismissReason(reason: any): string {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n open(content, sizm, Loai, Data) {\n this.submitted = false;\n this.modalService\n .open(content, { ariaLabelledBy: 'modal-basic-title', size: sizm })\n .result.then(\n (result) => {\n this.closeResult = `Closed with: ${result}`;\n },\n (reason) => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n }\n );\n if (Loai == 'Detail') {\n this.submitted = false;\n this.titleModal = 'Nội dung kết quả đăng kí';\n this.dataNoiDungEmail = Data.Noi_dung_email;\n }\n }\n\n hideContent(data) {\n this.dataLichSuEmail = this.dataLichSuEmail.filter(x => x.ID_email_da_gui != data.ID_email_da_gui);\n }\n}\n","\n\n
    \n
    \n
    \n
    \n LỊCH SỬ ĐĂNG KÝ KTX {{current_year}} \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    STTNội dungThời gianNgười nhậnNgười gửiThao tác
    {{i+1}}{{ email.Tieu_de_email }}{{ email.CreateDate | date:'dd-MM-yyyy hh:mm a' }}{{ email.Email_sv }}{{ email.Ten_nguoi_gui | uppercase}}\n \n \n \n \n
    Rất tiếc bạn chưa nhận được bất kỳ email nào từ ban quản lý KTX
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n  \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n\n\n
    \n
    \n

    {{ titleModal }}

    \n ×\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    ","import {\n Component,\n OnInit,\n AfterViewInit,\n ViewChild,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\n\n@Component({\n selector: 'app-portal-menu-sidebar',\n templateUrl: './portal-menu-sidebar.component.html',\n styleUrls: ['./portal-menu-sidebar.component.scss']\n})\nexport class PortalMenuSidebarComponent implements OnInit {\n @ViewChild('mainSidebar', { static: false }) mainSidebar;\n @Output() mainSidebarHeight: EventEmitter = new EventEmitter();\n constructor(public appService: AppService) {}\n styleLi: string = 'nav-item ';\n\n ngOnInit() {}\n menu(id: string) {\n let element, name, arr;\n element = document.getElementById(id);\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n } else {\n element.className = 'nav-item';\n }\n }\n ngAfterViewInit() {\n this.mainSidebarHeight.emit(this.mainSidebar.nativeElement.offsetHeight);\n }\n\n}\n","","import { Component, OnInit, Renderer2, ViewChild } from '@angular/core';\nimport { common } from 'src/app/app.common';\nimport { Router } from '@angular/router';\nimport { ToastrService } from 'ngx-toastr';\n\n@Component({\n selector: 'app-portal',\n templateUrl: './portal.component.html',\n styleUrls: ['./portal.component.scss']\n})\nexport class PortalComponent implements OnInit {\n public sidebarMenuOpened = true;\n @ViewChild('contentWrapper', { static: false }) contentWrapper;\n\n constructor(\n private renderer: Renderer2, \n public router: Router, \n private toastr: ToastrService,\n ) {}\n public com: common;\n ngOnInit() {\n this.com = new common(this.router);\n // this.com.CheckLogin();\n this.renderer.removeClass(document.querySelector('app-root'), 'login-page');\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'register-page'\n );\n }\n\n mainSidebarHeight(height) {\n // this.renderer.setStyle(\n // this.contentWrapper.nativeElement,\n // 'min-height',\n // height - 114 + 'px'\n // );\n }\n\n toggleMenuSidebar() {\n console.log('sidebarMenuCollapsed', this.sidebarMenuOpened);\n if (this.sidebarMenuOpened) {\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'sidebar-open'\n );\n this.renderer.addClass(\n document.querySelector('app-root'),\n 'sidebar-collapse'\n );\n this.sidebarMenuOpened = false;\n } else {\n this.renderer.removeClass(\n document.querySelector('app-root'),\n 'sidebar-collapse'\n );\n this.renderer.addClass(\n document.querySelector('app-root'),\n 'sidebar-open'\n );\n this.sidebarMenuOpened = true;\n }\n }\n}\n","
    \n \n \n \n \n
    \n \n
    \n \n \n \n
    \n \n
    ","import { Component, OnInit, ViewChild, Input } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { common } from 'src/app/app.common';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { DataTableDirective } from 'angular-datatables';\nimport { Subject } from 'rxjs';\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport {\n FormControl,\n FormGroup,\n FormBuilder,\n Validators,\n MaxLengthValidator,\n} from '@angular/forms';\nimport { ToastrService } from 'ngx-toastr';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { AbstractControl } from '@angular/forms';\nexport function removeSpaces(control: AbstractControl) {\n if (control && control.value && !control.value.replace(/\\s/g, '').length) {\n control.setValue('');\n }\n return null;\n}\nimport { RegisterDormService } from 'src/app/Utils/services/register-dorm.service';\nimport { RoomCategoryRegisterService } from 'src/app/utils/services/RoomCategoryRegister.service';\nimport { Account } from 'src/app/utils/services/Account.service';\nimport { Console } from 'console';\n\n@Component({\n selector: 'app-thong-tin-sinh-vien',\n templateUrl: './thong-tin-sinh-vien.component.html',\n styleUrls: ['./thong-tin-sinh-vien.component.scss']\n})\nexport class ThongTinSinhVienComponent implements OnInit {\n dtOptions: DataTables.Settings;\n @ViewChild(DataTableDirective, { static: false })\n datatableElement: DataTableDirective;\n Token: string;\n dataTable: any = [];\n dataLoaiPhong: any[];\n dataSinhVienDangKy: any;\n submitted = false;\n NameTitle: string;\n titleModal: string;\n closeResult: string;\n Data:any\n check:any\n checker:boolean\n DataLoaiDeXuat:any\n public com: common;\n dtTrigger = new Subject();\n \n Insert = new FormGroup({\n Ghi_chu: new FormControl(''),\n Tinh_trang_suc_khoe: new FormControl(''),\n Nguyen_vong: new FormControl(''),\n ID_doi_tuong_TS: new FormControl(''),\n ID_khu_vuc_TS: new FormControl(''),\n Ma_sv: new FormControl(''),\n Ho_ten: new FormControl(''),\n Email: new FormControl(''),\n Ngay_sinh: new FormControl(''),\n Loai_phong: new FormControl(''),\n Ruler: new FormControl(false),\n Dienthoai_canhan: new FormControl(''),\n Ten_gioi_tinh: new FormControl(''),\n Dan_toc: new FormControl(''),\n Ton_giao:new FormControl(''),\n Ten_khoa_nhap_hoc:new FormControl(''),\n Khoa_hoc_nhap_hoc:new FormControl(''),\n Lop:new FormControl(''),\n Xa_phuong_tt:new FormControl(''),\n Huyen_tt:new FormControl(''),\n Tinh_tt:new FormControl(''), \n So_dien_thoai_bo:new FormControl(''),\n Ten_dt_chinh_sach:new FormControl('')\n });\n checkThongTin:boolean\n UserName_get: string;\n Ma_sv_get: string;\n Ten_phong: string;\n Ten_loai_phong: string;\n Tinh_trang_suc_khoe: string;\n Nguyen_vong: string;\n Ghi_chu: string;\n Trang_thai_duyet: number;\n Trang_thai_o: number;\n ID_dang_ky: number;\n FullName_get: string;\n dataSinhVien: any;\n Ten_phong_dang_ky: string = '';\n Ten_loai_phong_dang_ky: string = '';\n Trang_thai_duyet_dang_ky: any;\n Ten_trang_thai_o_dang_ky: string = '';\n Trang_thai_o_dang_ky: any;\n dataCheck:any\n ID_sv:any\n tokenEncr:any\n constructor(\n private fb: FormBuilder,\n public router: Router,\n private fromBuilder: FormBuilder,\n private toastr: ToastrService,\n private spinner: NgxSpinnerService,\n private RegisterDorm: RegisterDormService,\n private RoomCategoryRegister: RoomCategoryRegisterService,\n private Account:Account,\n \n ) { }\n\n ngOnInit(): void {\n this.checkThongTin=false;\n let element, name, arr;\n element = document.getElementById('menu1');\n arr = element.className.split(' ');\n name = 'menu-open';\n if (arr.indexOf(name) == -1) {\n element.className += ' ' + name;\n }\n this.com = new common(this.router);\n this.com.CheckLoginPortal();\n var a = this.com.getPortalInfo();\n this.Token = a.Token;\n this.ID_sv=a.Info.UserID;\n this.UserName_get = a.Info.UserName;\n this.Ma_sv_get = a.Info.UserName;\n this.FullName_get = a.Info.FullName;\n this.Token = a.Token;\n this.dtOptions = {\n pagingType: 'full_numbers',\n pageLength: 10,\n language: {\n processing: 'Đang xử lý...',\n lengthMenu: 'Xem _MENU_ mục',\n emptyTable: 'Không có dữ liệu!',\n info: 'Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục',\n infoEmpty: 'Đang xem 0 đến 0 trong tổng số 0 mục',\n infoFiltered: '(được lọc từ _MAX_ mục)',\n infoPostFix: '',\n search: 'Tìm kiếm nhanh:',\n url: '',\n searchPlaceholder: 'Nhập từ khóa cần tìm...',\n paginate: {\n first: 'Đầu',\n previous: 'Trước',\n next: 'Tiếp',\n last: 'Cuối',\n },\n },\n columns: [\n {\n title: 'ID',\n visible: false,\n },\n {\n title: 'Nội dung đề xuất',\n },\n {\n title: 'Ngày đề xuất',\n \n },\n {\n title: 'Loại đề xuất',\n visible: false,\n },\n {\n title: 'Loại đề xuất',\n },\n {\n title: 'Nội dung phản hồi',\n },\n \n ],\n order: [[0, 'desc']],\n };\n this.GetSinhVienByMaSV()\n this.SinhVienCheck()\n this.AutoLogin()\n }\n GetSinhVienByMaSV() {\n this.spinner.show();\n this.RegisterDorm.getSVbyMa(this.Ma_sv_get, this.Token).subscribe((res) => {\n if (res.Status == 1) {\n this.dataSinhVien = res.Data;\n this.Insert.patchValue({\n Ma_sv: this.Ma_sv_get,\n Ho_ten: this.dataSinhVien[0].Ho_ten,\n Ngay_sinh: this.dataSinhVien[0].Ngay_sinh.substring(0, 10),\n Email: this.dataSinhVien[0].Email,\n ID_doi_tuong_TS: this.dataSinhVien[0].ID_doi_tuong_TS,\n ID_khu_vuc_TS: this.dataSinhVien[0].ID_khu_vuc_TS,\n Dienthoai_canhan: this.dataSinhVien[0].Dienthoai_canhan,\n Ten_gioi_tinh: this.dataSinhVien[0].Ten_gioi_tinh,\n Ten_khoa_nhap_hoc:this.dataSinhVien[0].Ten_khoa_nhap_hoc,\n Lop:this.dataSinhVien[0].Lop,\n Khoa_hoc_nhap_hoc:this.dataSinhVien[0].Khoa_hoc_nhap_hoc,\n So_dien_thoai_bo: this.dataSinhVien[0].So_dien_thoai_bo,\n Ten_dt_chinh_sach: this.dataSinhVien[0].Ten_dt_chinh_sach,\n Xa_phuong_tt: this.dataSinhVien[0].Xa_phuong_tt,\n Huyen_tt: this.dataSinhVien[0].Huyen_tt,\n Tinh_tt: this.dataSinhVien[0].Tinh_tt,\n Ton_giao:this.dataSinhVien[0].Ton_giao,\n Dan_toc:this.dataSinhVien[0].Dan_toc\n });\n if (this.dataSinhVien.length > 0) {\n this.GetListLoaiPhong(\n (this.dataSinhVien[0].ID_gioi_tinh = null\n ? 0\n : this.dataSinhVien[0].ID_gioi_tinh),\n this.dataSinhVien[0].ID_sv\n );\n }\n if(this.Insert.value==\"\")\n {\n this.checker==true;\n \n }\n this.spinner.hide();\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n SinhVienCheck(){\n this.RegisterDorm.SinhVienCheckValue(this.ID_sv,this.Token).subscribe((z)=>{\n z.CheckEd;\n if(z.CheckEd=1)\n {\n this.checkThongTin==true;\n }\n else\n {\n this.checkThongTin=false\n }\n })\n }\n GetListLoaiPhong(ID_gioi_tinh: number, ID_sv: number) {\n this.spinner.show();\n this.RoomCategoryRegister.getList(\n ID_gioi_tinh,\n ID_sv,\n this.Token\n ).subscribe((res) => {\n if (res.Status == 1) {\n this.dataLoaiPhong = !res.Data ? [] : res.Data;\n // this.dataCheckTime = res.DataQuyDinhDoiTuong;\n this.GetDangKiByID_sv(this.dataSinhVien[0].ID_sv);\n this.spinner.hide();\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n });\n }\n GetDangKiByID_sv(ID_sv: number) {\n this.spinner.show();\n this.RegisterDorm.getListRegisterByID(ID_sv, this.Token).subscribe(\n (res) => {\n if (res.Status == 1) {\n this.dataSinhVienDangKy = res.Data;\n if (this.dataSinhVienDangKy.length > 0) {\n document.getElementById('__btnNotifi').click();\n // this.toastr.success(`Bạn đã đăng kí nội trú thành công lần mới nhất vào ngày ${this.dataSinhVienDangKy[0].Create_date.substring(0,10)} !`);\n this.Ten_phong_dang_ky = this.dataSinhVienDangKy[0].Ten_phong;\n this.Ten_loai_phong_dang_ky = this.dataSinhVienDangKy[0].Ten_loai_phong;\n this.Insert.patchValue({\n Tinh_trang_suc_khoe: this.dataSinhVienDangKy[0]\n .Tinh_trang_suc_khoe,\n Nguyen_vong: this.dataSinhVienDangKy[0].Nguyen_vong,\n Ghi_chu: this.dataSinhVienDangKy[0].Ghi_chu,\n // Loai_phong: this.dataRegisterStudent[0].ID_loai_phong,\n Ruler: true,\n });\n this.Trang_thai_duyet_dang_ky = this.dataSinhVienDangKy[0].Trang_thai_duyet;\n this.Ten_trang_thai_o_dang_ky = this.dataSinhVienDangKy[0].Ten_trang_thai_o;\n this.Trang_thai_o_dang_ky = this.dataSinhVienDangKy[0].Trang_thai_o;\n this.ID_dang_ky = this.dataSinhVienDangKy[0].ID_dang_ky;\n this.spinner.hide();\n //-------------------------Lấy ra danh sách khoản nộp----------------------------//\n // this.RegisterDorm.getListMonneyRoom(ID_sv, this.Token).subscribe(\n // (res) => {\n // if (res.Status == 1) {\n // if (res.Data) {\n // this.So_tien_phai_nop = this.dataKhoanNop[0].Sotienphainop;\n // this.So_tien_cuoc = this.dataKhoanNop[0].Sotiencuoc;\n // this.So_tien_da_nop = this.dataKhoanNop[0].Sotiendanop;\n // this.So_tien_con_phai_dong = null\n // ? this.dataKhoanNop[0].Sotienconphaidong\n // : this.dataKhoanNop[0].Sotienconphaidong + this.dataKhoanNop[0].Sotiencuoc;\n // this.spinner.hide();\n // }\n // }\n // else {\n // this.toastr.warning(res.Message);\n // this.spinner.hide();\n // }\n // }\n // );\n } else {\n this.toastr.success('Bạn chưa đăng kí nội trú !');\n }\n } else {\n this.toastr.warning(res.Message);\n this.spinner.hide();\n }\n }\n );\n }\nAutoLogin(){\n this.Account.AutoLogin(this.Ma_sv_get,this.Token).subscribe((z=>\n {\n z\n this.tokenEncr=z.Token\n console.log(z)\n }))\n\n}\n get checkvalue() {\n return this.Insert.controls;\n }\n}\n","
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    THÔNG TIN SINH VIÊ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
    \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 Hộ khẩu thường trú\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 \r\n \r\n Đăng ký ở ký túc xá\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, Renderer2, OnDestroy } from '@angular/core';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { AccService } from 'src/app/utils/services/acc.service'\n\n@Component({\n selector: 'app-register',\n templateUrl: './register.component.html',\n styleUrls: ['./register.component.scss', './main.css'],\n})\nexport class RegisterComponent implements OnInit, OnDestroy {\n public registerForm = new FormGroup({\n UserName: new FormControl(null, Validators.required),\n Email: new FormControl(null, Validators.required),\n password: new FormControl(null, Validators.required),\n retypePassword: new FormControl(null, Validators.required),\n });\n constructor(\n private renderer: Renderer2,\n private toastr: ToastrService,\n private appService: AppService,\n private Service:AccService\n ) { }\n\n ngOnInit() {\n this.renderer.addClass(document.body, 'register-page');\n // / this.renderer.addClass(document.querySelector('app-root'), 'register-page');\n this.registerForm\n }\n\n register() {\n if (this.registerForm.valid) {\n this.appService.register();\n } else {\n this.toastr.error('Hello world!', 'Toastr fun!');\n }\n }\n getPassWord() {\n let req={\n UserName:this.registerForm.value.UserName,\n Email:this.registerForm.value.Email,\n UserCategory:1\n }\n this.Service.GetPassword(req).subscribe(z=>{\n if(z.Status==1){\n this.toastr.success(z.Message)\n }else{\n this.toastr.error(z.Message)\n }\n })\n }\n ngOnDestroy() {\n this.renderer.removeClass(document.body, 'register-page');\n // this.renderer.removeClass(document.querySelector('app-root'),'register-page');\n }\n}\n","
    \n
    \n
    \n
    \n \n \n UniDormitory\n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    ","import { Component, OnInit, Renderer2, OnDestroy } from '@angular/core';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { HttpClient } from '@angular/common/http';\nimport { CookieService } from 'ngx-cookie-service';\nimport { AccService } from 'src/app/utils/services/acc.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\n@Component({\n selector: 'app-xac-nhan-sau-dai-hoc',\n templateUrl: './xac-nhan-sau-dai-hoc.component.html',\n styleUrls: ['./xac-nhan-sau-dai-hoc.component.scss','./main.css']\n})\nexport class XacNhanSauDaiHocComponent implements OnInit {\n public registerForm: FormGroup;\n Title: string = \"\";\n constructor(\n private renderer: Renderer2,\n private toastr: ToastrService,\n private appService: AppService,\n private http: HttpClient,\n private cookieService: CookieService,\n private Acc: AccService,\n private spinner: NgxSpinnerService\n ) { }\n\n ngOnInit() {\n this.renderer.addClass(document.body, 'login-page');\n //this.renderer.addClass(document.querySelector('app-root'), 'register-page');\n this.registerForm = new FormGroup({\n HoTen: new FormControl(null, Validators.required),\n NgaySinh: new FormControl(null, Validators.required),\n MaHocVien: new FormControl(null, Validators.required),\n StudentCategory: new FormControl(1, Validators.required),\n });\n }\n\n Confirm() {\n this.Title=\"\";\n if (this.registerForm.valid) {\n this.spinner.show();\n let req = {\n HoTen: this.registerForm.controls.HoTen.value,\n NgaySinh: this.registerForm.controls.NgaySinh.value,\n MaHocVien: this.registerForm.controls.MaHocVien.value,\n StudentCategory: this.registerForm.controls.StudentCategory.value,\n };\n this.Acc.XacThucThongTin(req).subscribe((z) => {\n this.spinner.hide();\n if (z.Status == 1) {\n \n this.toastr.success(z.Message, 'Tác vụ thành công')\n this.Title=z.Message;\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n }\n });\n } else {\n this.toastr.error('Vui lòng nhập kiểm tra lại thông tin đã nhập', 'Tác vụ thất bại');\n }\n }\n\n ngOnDestroy() {\n // this.renderer.removeClass(\n // document.querySelector('app-root'),\n // 'register-page'\n // );\n this.renderer.removeClass(document.body, 'login-page');\n }\n\n}\n","\n
    \n
    \n
    \n
    \n \n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n
    \n \n
    \n

    \n {{Title}}\n

    \n
    \n
    \n
    \n
    \n
    \n
    ","import { Component, OnInit, Renderer2, OnDestroy } from '@angular/core';\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\nimport { AppService } from 'src/app/utils/services/app.service';\nimport { ToastrService } from 'ngx-toastr';\nimport { HttpClient } from '@angular/common/http';\nimport { CookieService } from 'ngx-cookie-service';\nimport { AccService } from 'src/app/utils/services/acc.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\n@Component({\n selector: 'app-xac-nhan',\n templateUrl: './xac-nhan.component.html',\n styleUrls: ['./xac-nhan.component.scss', './main.css']\n})\nexport class XacNhanComponent implements OnInit {\n public registerForm: FormGroup;\n Title: string = \"\";\n constructor(\n private renderer: Renderer2,\n private toastr: ToastrService,\n private appService: AppService,\n private http: HttpClient,\n private cookieService: CookieService,\n private Acc: AccService,\n private spinner: NgxSpinnerService\n ) { }\n\n ngOnInit() {\n this.renderer.addClass(document.body, 'login-page');\n //this.renderer.addClass(document.querySelector('app-root'), 'register-page');\n this.registerForm = new FormGroup({\n HoTen: new FormControl(null, Validators.required),\n NgaySinh: new FormControl(null, Validators.required),\n CMND: new FormControl(null, Validators.required),\n Email: new FormControl(null, [Validators.email, Validators.required]),\n });\n }\n\n Confirm() {\n this.Title=\"\";\n if (this.registerForm.valid) {\n this.spinner.show();\n let req = {\n HoTen: this.registerForm.controls.HoTen.value,\n NgaySinh: this.registerForm.controls.NgaySinh.value,\n CMND: this.registerForm.controls.CMND.value,\n Email: this.registerForm.controls.Email.value,\n UserCategory: 3,\n };\n this.Acc.Confirm(req).subscribe((z) => {\n this.spinner.hide();\n if (z.Status == 1) {\n localStorage.setItem('PortalInfo', JSON.stringify(z));\n this.toastr.success(z.Message, 'Tác vụ thành công')\n this.Title=z.Message;\n } else {\n this.toastr.error(z.Message, 'Tác vụ thất bại');\n localStorage.removeItem('PortalInfo');\n }\n });\n } else {\n this.toastr.error('Vui lòng nhập kiểm tra lại thông tin đã nhập', 'Tác vụ thất bại');\n }\n }\n\n ngOnDestroy() {\n // this.renderer.removeClass(\n // document.querySelector('app-root'),\n // 'register-page'\n // );\n this.renderer.removeClass(document.body, 'login-page');\n }\n}\n","\n
    \n
    \n
    \n
    \n \n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n
    \n

    \n {{Title}}\n

    \n
    \n
    \n
    \n
    \n
    \n
    ","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n CanActivateChild,\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n UrlTree,\n} from '@angular/router';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate, CanActivateChild {\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | Observable\n | Promise\n | boolean\n | UrlTree {\n return true;\n }\n canActivateChild(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | Observable\n | Promise\n | boolean\n | UrlTree {\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n CanActivateChild,\n CanLoad,\n Route,\n UrlSegment,\n ActivatedRouteSnapshot,\n RouterStateSnapshot,\n UrlTree,\n} from '@angular/router';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NonAuthGuard implements CanActivate, CanActivateChild, CanLoad {\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | Observable\n | Promise\n | boolean\n | UrlTree {\n return true;\n }\n canActivateChild(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | Observable\n | Promise\n | boolean\n | UrlTree {\n return true;\n }\n canLoad(\n route: Route,\n segments: UrlSegment[]\n ): Observable | Promise | boolean {\n return true;\n }\n}\n","import { Injectable ,Inject} from '@angular/core';\nimport { Router } from '@angular/router';\nimport { environment } from 'src/environments/environment';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { map, filter } from 'rxjs/operators';\nimport { ResponseLogin } from 'src/app/Models/output.model/ResponseLogin';\nimport { CookieService } from 'ngx-cookie-service';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\n@Injectable({\n providedIn: 'root',\n})\nexport class Account {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration,private router: Router,private http : HttpClient) {}\n Login(req: any) {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/Login', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ChangePass(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/ChangePassword', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n \n AutoLogin(Ma_sv: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Account/Auto_Login?Ma_sv=' + Ma_sv, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RoomCategoryRegisterService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(id_gioi_tinh,id_sv, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'RoomCategoryRegister/RoomCategoryLoadDetail?id_gioi_tinh=' + id_gioi_tinh+'&id_sv='+id_sv, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListAdmin(id_gioi_tinh,id_sv, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'RoomCategoryRegister/RoomCategoryRegisterAdmin?id_gioi_tinh=' + id_gioi_tinh+'&id_sv='+id_sv, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccService { \n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration,private router: Router,private http : HttpClient) {}\n Login(req: any) {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/Login', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n GetPassword(req: any) {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/GetPassword', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n LoginWithRoles(req: any) {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/LoginWithRoles', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Confirm(req: any) {\n return this.http\n .post(this.appConfig.UniSystemAPI + '/Account/Confirm', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n XacThucThongTin(req: any) {\n return this.http\n .post(this.appConfig.UniDormAPI + '/SauDaiHoc/XacThucThongTin', req, {})\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ChangePass(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniSystemAPI + 'Account/ChangePassword', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getAccessToken(authorization_code: any): Observable {\n return this.http\n .get(this.appConfig.UniSystemAPI + 'Account/authenticationinfo?authorizationCode='+authorization_code,)\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getInfoToken(token: any): Observable {\n return this.http\n .get(this.appConfig.UniSystemAPI + 'Account/getInfoToken?token='+token,)\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AppService {\n public user = {\n firstName: 'Alexander',\n lastName: 'Pierce',\n image: 'assets/img/user2-160x160.jpg',\n };\n\n constructor(private router: Router) {}\n\n login() {\n localStorage.setItem('token', 'LOGGED_IN');\n this.router.navigate(['/admin']);\n }\n loginPortal() {\n localStorage.setItem('token', 'LOGGED_IN');\n this.router.navigate(['/thong-tin-sv']);\n }\n\n register() {\n localStorage.setItem('token', 'LOGGED_IN');\n this.router.navigate(['/']);\n }\n\n logout() {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/login']);\n }\n logoutPortal() {\n localStorage.removeItem('UserInfo');\n this.router.navigate(['/dang-nhap']);\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CollectionReceiptService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Receipt/ReceiptListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n GetAllDetailreceipt(id ,id_phong , token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Receipt/DetailReceiptListAll?id_bien_lai=' + id +'&ID_phong=' + id_phong,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n GetAllCodeDetailreceipt(code, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'Receipt/DetailReceiptListAllMSV?Ma_sv=' +\n code,\n 0,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n Insert(req, dsid, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Receipt/ReceiptAdd?dsid=' + dsid,\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(dt, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'Receipt/ReceiptEdit',dt,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n } //hủy biên lai\n\n getListDestroy(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Receipt/ReceiptListAllDestroy', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n } // lish all biên lai hủy\n\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DangKyQuaTrinhServiceService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n TongHop(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + '/DangKyQuaTrinh/TongHop', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n TongHop_Count(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + '/DangKyQuaTrinh/TongHop_Count',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Detail(ID_dang_ky, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n '/DangKyQuaTrinh/DangKyQuaTrinh_Detail?ID_dang_ky=' +\n ID_dang_ky,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DashBoardService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private router: Router,\r\n private http: HttpClient\r\n ) {}\r\n\r\n getList(UserID, khoa_hoc, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI +\r\n `DashBoard/DashBoard_List?UserID=${UserID}&khoa_hoc=${khoa_hoc}`,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n getListKhoaHoc(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'DashBoard/Load_Khoa_Hoc', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n"," import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DeXuatSinhVienService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/ListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/Delete?ID_de_xuat=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n UpdateBySV(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/UpdateBySV', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/CountFilter',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n updateStatus(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/UpdateStatus',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCanBo(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/CanBo', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getAllBySv(ID_sv,token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/ListAllBySv?ID_sv='+ID_sv, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Excel(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuat/Excel', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n DeXuat_ThongKe(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuat/DeXuat_ThongKe', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n \n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DiemPhongService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n Excel(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemPhong/ExportExcel', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getList(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemPhong/ListAll', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemPhong/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'DiemPhong/Delete?ID_diem_phong=' + ID,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemPhong/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DiemPhong/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemPhong/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n updateStatus(ID_phong, Trang_thai, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'DiemPhong/UpdateStatus?ID_phong=' +\n ID_phong +\n '&Trang_thai=' +\n Trang_thai,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n updateStatusByHocKy(Hoc_ky, Nam_hoc, Trang_thai, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'DiemPhong/UpdateStatusByHocKy?Hoc_ky=' +\n Hoc_ky +\n '&Nam_hoc=' +\n Nam_hoc +\n '&Trang_thai=' +\n Trang_thai,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Detail(ID_phong, Hoc_ky, Nam_hoc, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'DiemPhong/Detail?ID_phong=' +\n ID_phong +\n '&Hoc_ky=' +\n Hoc_ky +\n '&Nam_hoc=' +\n Nam_hoc,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DiemSinhVienService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/ListAll',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Excel(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/Excel',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DiemSinhVien/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/CountFilter',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getViPham(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/ListViPham',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ChotDiem(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/ChotDiem',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MoDiem(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/MoDiem',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MoDiemSV(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/MoDiemSV',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n KhoaDiemSV(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DiemSinhVien/KhoaDiemSV',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DoiTuongChinhSachService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private http: HttpClient\n ) {}\n\n getAll(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DoiTuongChinhSach/GetAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n add(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DoiTuongChinhSach/Add?ID='+ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DoiTuongChinhSach/Delete?ID='+ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DonGiaDienNuocService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/ListAll',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/CountFilter',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/Delete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DonGiaDienNuoc/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ExtensionsService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private http: HttpClient\r\n ) {}\r\n\r\n getList(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Extensions/List', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Insert(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Extensions/Insert', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Delete(ID: any, token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'Extensions/Delete?ID=' + ID, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Update(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'Extensions/Update', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root'\n})\nexport class HinhThucService {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration, private router: Router, private http: HttpClient) { }\n\n GetAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'HinhThuc/ListAll', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Insert(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'HinhThuc/Add',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n } \n Update(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'HinhThuc/Update',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Count(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'HinhThuc/Count',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Delete(req:any,token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'HinhThuc/Delete?ID_hinh_thuc='+req.ID_hinh_thuc, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n}","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root'\n})\nexport class KhenThuongKyLuatService {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration, private router: Router, private http: HttpClient) { }\n\n GetAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/ListAll', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Insert(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/Add',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n } \n Update(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/Update',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Count(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/Count',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Count_Filter(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/CountFilter',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Delete(req:any,token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/Delete?ID='+req.ID, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Excel(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'KhenThuongKyLuat/Excel', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root'\n})\nexport class LichSuSuaChuaService {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration, private router: Router, private http: HttpClient) { }\n\n GetAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'SuaThietBi/ListAll', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n \n Count(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'SuaThietBi/Count',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n CountFilter(req: any, token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'SuaThietBi/CountFilter', req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Insert(req: any, token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'SuaThietBi/Add', req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Update(req: any, token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'SuaThietBi/Update', req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Delete(req: any, token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'SuaThietBi/Delete?ID_sua_chua='+req.ID_sua_chua, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Excel(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'SuaThietBi/Excel', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n}\n\n}","import { Injectable, Inject } from '@angular/core';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\n@Injectable({\n providedIn: 'root'\n})\nexport class ListallService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n getListBuilding(dt: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Building/BuildingCampusLoad?ID_co_so=' +dt,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Register_getManager(ID_phong: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/Register_getManager?ID_phong=' + ID_phong,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Register_getRoom(ID_phong: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Register/Register_getRoom?ID_phong=' + ID_phong,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListRoom(dt: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Room/RoomBuildingLoad?ID_toa_nha=' +dt,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListRoomNuoc(dt: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Room/RoomSoNuoc?ID_toa_nha=' +dt.ID_toa_nha+'&Thang='+dt.Thang+'&Nam='+dt.Nam,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListRoomDien(dt: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'Room/RoomSoDien?ID_toa_nha=' +dt.ID_toa_nha+'&Thang='+dt.Thang+'&Nam='+dt.Nam,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListCampus(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Campus/Campus_List', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoaiDeXuatService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuatLoai/Load_List')\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID,token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DeXuatLoai/Delete?ID='+ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuatLoai/Insert',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DeXuatLoai/Update',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\n@Injectable({\n providedIn: 'root'\n})\nexport class NumberElectricService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n Delete(dt: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'NumberElectric/NumberElectric_Delete?ID=' + dt,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count( token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'NumberElectric/Count',\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'NumberElectric/CountFilter',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n GetPagination(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'NumberElectric/RoomSoDien',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_List', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getThongKeKHoanThu(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/ThongKeKhoanThu', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiUpdate(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_MultiUpdate', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n RP_Manager(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_RP_Manager', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n RP_Personal(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_RP_Personal', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckExist(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_CheckExist?month=' + req.month + '&year=' + req.year + '&ID_room=' + req.ID_room,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListFill(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_MonthYear_Load?month=' + req.month + '&year=' + req.year,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus0(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_MonthYear_Load_Status_0?month=' + req.month + '&year=' + req.year,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus1(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_MonthYear_Load_Status_1?month=' + req.month + '&year=' + req.year + '&ID_building=' + req.ID_building,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus01(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberElectric/NumberElectric_MonthYear_Load_Status_0_1?month=' + req.month + '&year=' + req.year + '&ID_building=' + req.ID_building,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MoChot(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/MoChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n PhanBo(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/PhanBo', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getKHoanThu(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/KhoanThu', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiChot(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/MultiChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiMoChot(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/MultiMoChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiPhanBo(req, type, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/MultiPhanBo?type=' + type, req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ExcelSoDien(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberElectric/ExcelSoDien',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\n@Injectable({\n providedIn: 'root'\n})\nexport class NumberWaterService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n Count( token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'NumberWater/Count',\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'NumberWater/CountFilter',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n GetPagination(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'NumberWater/RoomSoNuoc',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getKHoanThu(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/KhoanThu', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getThongKeKHoanThu(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/ThongKeKhoanThu', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/NumberWater_Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/NumberWater_Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MoChot(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/MoChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n PhanBo(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/PhanBo', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListFill(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberWater/NumberWater_MonthYear_Load?month=' + req.month + '&year=' + req.year ,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n RP_Manager(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/NumberWater_RP_Manager', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n RP_Personal(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/NumberWater_RP_Personal', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiUpdate(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/NumberWater_MultiUpdate', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiChot(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/MultiChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiMoChot(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/MultiMoChot', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiPhanBo(req,type, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/MultiPhanBo?type='+type, req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus0(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberWater/NumberWater_MonthYear_Load_Status_0?month=' + req.month + '&year=' + req.year ,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus1(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberWater/NumberWater_MonthYear_Load_Status_1?month=' + req.month + '&year=' + req.year+'&ID_building='+req.ID_building ,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListStatus01(req: any, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI + 'NumberWater/NumberWater_MonthYear_Load_Status_0_1?month=' + req.month + '&year=' + req.year+'&ID_building='+req.ID_building ,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ExcelSoNuoc(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'NumberWater/ExcelSoNuoc',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class QuanTriEmailService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n getList(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/ListAll', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'QuanTriEmail/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getLichSuEmail(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/LichSuEmail', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n LichSuCountFilter(req, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'QuanTriEmail/LichSuEmailCountFilter',\n req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Resend(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/ResendEmail', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n LichSuCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'QuanTriEmail/LichSuEmailCount', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'QuanTriEmail/Delete?ID=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MacDinh(ID: any, Mac_dinh: boolean, token): Observable {\n return this.http\n .get(\n this.appConfig.UniDormAPI +\n 'QuanTriEmail/Change?ID=' +\n ID +\n '&Mac_dinh=' +\n Mac_dinh,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'QuanTriEmail/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\n@Injectable({\n providedIn: 'root'\n})\nexport class QuyDinhKhoanThuService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n\n getAll(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/ListAll', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/Delete', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiDelete(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/MultiDelete', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n MultiInsert(req,token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/MultiInsert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getListSV(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/HoSoSV', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getLoaiKhoanThu(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'DanhSachKhoanNopNienChe/LoaiKhoanThu', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getHe(token): Observable {\n return this.http.get(this.appConfig.UniSystemAPI + 'He/Danh_sach_he', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n getKhoa(token): Observable {\n return this.http.get(this.appConfig.UniSystemAPI + 'Khoa/Danh_sach_khoa', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n getKhoaHoc(token): Observable {\n return this.http.get(this.appConfig.UniSystemAPI + 'Core/KhoaHoc_Load_List', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n getChuyenNganh(token): Observable {\n return this.http.get(this.appConfig.UniSystemAPI + 'ChuyenNganh/Danh_sach_chuyen_nganh', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n getLop(token): Observable {\n return this.http.get(this.appConfig.UniSystemAPI + 'Lop/Danh_sach_lop_dang_hoc', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n\n}\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { AppConfig, AppConfiguration } from 'src/configuration';\r\nimport { Router } from '@angular/router';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RegulationObjectService {\r\n constructor(\r\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\r\n private router: Router,\r\n private http: HttpClient\r\n ) {}\r\n\r\n GetAll(token): Observable {\r\n return this.http\r\n .get(this.appConfig.UniDormAPI + 'RegulationObject/ListAll', {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n Insert(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'RegulationObject/Insert', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n Update(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'RegulationObject/Update', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n\r\n Delete(req: any, token): Observable {\r\n return this.http\r\n .post(this.appConfig.UniDormAPI + 'RegulationObject/Delete', req, {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n })\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n LoadKhoaHoc(ID_he: any, token): Observable {\r\n return this.http\r\n .get(\r\n this.appConfig.UniDormAPI + 'RegulationObject/LoadByHe?ID_he=' + ID_he,\r\n {\r\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\r\n }\r\n )\r\n .pipe(\r\n map((z) => {\r\n return z;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\n@Injectable({\n providedIn: 'root'\n})\nexport class RegulationPaymentService {\n\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n\n MultipleInsert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'RegulationPayment/MultiInsert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'RegulationPayment/getAll', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n SystemParameterRP_List(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'RegulationPayment/SystemParameterRP_List', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n getStudent(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'Register/Register_getConfirm', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Delete(ID: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'RegulationPayment/Delete?ID_quy_dinh_khoan_nop=' + ID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SoPhongService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n\n GetAll(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'SoPhong/GetAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n ByIDToaNha(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'SoPhong/ByIDToaNha', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root',\n})\nexport class StatisticalMoneyService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) { }\n\n GetAll(req,token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'StatisticalMoney/ListAll',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Count(req,token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'StatisticalMoney/Count',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CountFilter(req,token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'StatisticalMoney/CountFilter',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n TotalFilter(req,token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI +\n 'StatisticalMoney/TotalFilter',req,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Export(data: any, token): Observable {\n return this.http\n .post(\n this.appConfig.UniDormAPI + 'StatisticalMoney/ExportExcel',\n data,\n {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }\n )\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n KhoanNopKTX(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'StatisticalMoney/KhoanNopKTX', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TemplateEmailService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private http: HttpClient\n ) {}\n\n getAll(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'TemplateEmail/GetAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'TemplateEmail/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n \n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ThamSoHeThongService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private http: HttpClient\n ) {}\n\n getAll(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'ThamSoHeThong/GetAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'ThamSoHeThong/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n \n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserToaNhaService {\n constructor(\n @Inject(AppConfig) private readonly appConfig: AppConfiguration,\n private router: Router,\n private http: HttpClient\n ) {}\n getList(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'UserToaNha/ListAll', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Insert(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'UserToaNha/Insert', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Update(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'UserToaNha/Update', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n CheckExist(req: any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'UserToaNha/CheckExist?UserID='+ req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n\n getCount(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'UserToaNha/Count', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getCountFilter(req, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'UserToaNha/CountFilter', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getUser( token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'UserToaNha/UserListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n getDetail(UserID:any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'UserToaNha/Detail?UserID='+UserID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(UserID:any, token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'UserToaNha/DeleteQuyen?UserID='+UserID, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n}\n","import { Injectable, Inject } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { environment } from 'src/environments/environment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { AppConfig, AppConfiguration } from 'src/configuration';\nimport { Router } from '@angular/router';\n@Injectable({\n providedIn: 'root'\n})\nexport class ViPhamService {\n constructor(@Inject(AppConfig) private readonly appConfig: AppConfiguration, private router: Router, private http: HttpClient) { }\n getList(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'Building/BuildingListAll', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n GetAll(token): Observable {\n return this.http.get(this.appConfig.UniDormAPI + 'ViPham/List_All', {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n \n Insert(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'ViPham/Add',req,{\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n \n Update(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'ViPham/Update',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n UpdateStatus(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'ViPham/Update_Status',req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n UnUpdateStatus(req: any, token): Observable {\n return this.http\n .post(this.appConfig.UniDormAPI + 'ViPham/Unupdate_Status', req, {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n })\n .pipe(\n map((z) => {\n return z;\n })\n );\n }\n Delete(req:any,token): Observable {\n return this.http.post(this.appConfig.UniDormAPI + 'ViPham/Delete',req, {\n headers: new HttpHeaders()\n .set('Authorization', `Bearer ${token}`)\n }).pipe(map(z => { return z }))\n }\n Excel(token): Observable {\n return this.http\n .get(this.appConfig.UniDormAPI + 'ViPham/Excel', {\n headers: new HttpHeaders().set('Authorization', `Bearer ${token}`),\n }).pipe(map((z) => {return z;}));\n }\n}","import { Injectable } from '@angular/core';\nimport { io } from 'socket.io-client/build/index';\nimport { Observable } from 'rxjs';\nimport { AnyRecord } from 'dns';\n@Injectable({\n providedIn: 'root',\n})\nexport class WebSocketService {}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-blank',\n templateUrl: './blank.component.html',\n styleUrls: ['./blank.component.scss'],\n})\nexport class BlankComponent implements OnInit {\n constructor() {}\n\n ngOnInit() {}\n}\n","\n
    \n
    \n
    \n
    \n

    Blank Page

    \n
    \n
    \n
      \n
    1. Home
    2. \n
    3. Blank Page
    4. \n
    \n
    \n
    \n
    \n \n
    \n\n\n
    \n \n
    \n
    \n
    \n

    Title

    \n\n
    \n \n \n \n \n \n \n
    \n
    \n
    \n Start creating your amazing application!\n
    \n \n
    \n Footer\n
    \n \n
    \n
    \n \n
    \n\n","/*\n CanvasJS HTML5 & JavaScript Charts - v2.3.1 GA - https://canvasjs.com/ \n Copyright 2018 fenopix\n\n --------------------- License Information --------------------\n CanvasJS is a commercial product which requires purchase of license. Without a commercial license you can use it for evaluation purposes for upto 30 days. Please refer to the following link for further details.\n https://canvasjs.com/license/\n\n*/\n/*eslint-disable*/\n/*jshint ignore:start*/\n(function () {\n function qa(k, p) {\n k.prototype = eb(p.prototype);\n k.prototype.constructor = k;\n k.base = p.prototype\n }\n\n function eb(k) {\n function p() { }\n p.prototype = k;\n return new p\n }\n\n function Ya(k, p, D) {\n \"millisecond\" === D ? k.setMilliseconds(k.getMilliseconds() + 1 * p) : \"second\" === D ? k.setSeconds(k.getSeconds() + 1 * p) : \"minute\" === D ? k.setMinutes(k.getMinutes() + 1 * p) : \"hour\" === D ? k.setHours(k.getHours() + 1 * p) : \"day\" === D ? k.setDate(k.getDate() + 1 * p) : \"week\" === D ? k.setDate(k.getDate() + 7 * p) : \"month\" === D ? k.setMonth(k.getMonth() + 1 * p) : \"year\" === D && k.setFullYear(k.getFullYear() +\n 1 * p);\n return k\n }\n\n function $(k, p) {\n var D = !1;\n 0 > k && (D = !0, k *= -1);\n k = \"\" + k;\n for (p = p ? p : 1; k.length < p;) k = \"0\" + k;\n return D ? \"-\" + k : k\n }\n\n function Ia(k) {\n if (!k) return k;\n k = k.replace(/^\\s\\s*/, \"\");\n for (var p = /\\s/, D = k.length; p.test(k.charAt(--D)););\n return k.slice(0, D + 1)\n }\n\n function Ea(k) {\n k.roundRect = function (k, D, r, u, H, F, z, v) {\n z && (this.fillStyle = z);\n v && (this.strokeStyle = v);\n \"undefined\" === typeof H && (H = 5);\n this.lineWidth = F;\n this.beginPath();\n this.moveTo(k + H, D);\n this.lineTo(k + r - H, D);\n this.quadraticCurveTo(k + r, D, k + r, D + H);\n this.lineTo(k + r, D + u - H);\n this.quadraticCurveTo(k + r, D + u, k + r - H, D + u);\n this.lineTo(k + H, D + u);\n this.quadraticCurveTo(k, D + u, k, D + u - H);\n this.lineTo(k, D + H);\n this.quadraticCurveTo(k, D, k + H, D);\n this.closePath();\n z && this.fill();\n v && 0 < F && this.stroke()\n }\n }\n\n function Sa(k, p) {\n return k - p\n }\n\n function Ta(k, p, D) {\n if (k && p && D) {\n D = D + \".\" + p;\n var r = \"image/\" + p;\n k = k.toDataURL(r);\n var u = !1,\n H = document.createElement(\"a\");\n H.download = D;\n H.href = k;\n if (\"undefined\" !== typeof Blob && new Blob) {\n for (var F = k.replace(/^data:[a-z\\/]*;base64,/, \"\"), F = atob(F), z = new ArrayBuffer(F.length), z = new Uint8Array(z),\n v = 0; v < F.length; v++) z[v] = F.charCodeAt(v);\n p = new Blob([z.buffer], {\n type: \"image/\" + p\n });\n try {\n window.navigator.msSaveBlob(p, D), u = !0\n } catch (L) {\n H.dataset.downloadurl = [r, H.download, H.href].join(\":\"), H.href = window.URL.createObjectURL(p)\n }\n }\n if (!u) try {\n event = document.createEvent(\"MouseEvents\"), event.initMouseEvent(\"click\", !0, !1, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), H.dispatchEvent ? H.dispatchEvent(event) : H.fireEvent && H.fireEvent(\"onclick\")\n } catch (E) {\n p = window.open(), p.document.write(\"
    Please right click on the image and save it to your device
    \"),\n p.document.close()\n }\n }\n }\n\n function N(k) {\n var p = ((k & 16711680) >> 16).toString(16),\n D = ((k & 65280) >> 8).toString(16);\n k = ((k & 255) >> 0).toString(16);\n p = 2 > p.length ? \"0\" + p : p;\n D = 2 > D.length ? \"0\" + D : D;\n k = 2 > k.length ? \"0\" + k : k;\n return \"#\" + p + D + k\n }\n\n function fb(k, p) {\n var D = this.length >>> 0,\n r = Number(p) || 0,\n r = 0 > r ? Math.ceil(r) : Math.floor(r);\n for (0 > r && (r += D); r < D; r++)\n if (r in this && this[r] === k) return r;\n return -1\n }\n\n function u(k) {\n return null === k || \"undefined\" === typeof k\n }\n\n function Fa(k) {\n k.indexOf || (k.indexOf = fb);\n return k\n }\n\n function gb(k) {\n if (U.fSDec) k[ja(\"`eeDwdouMhrudods\")](ja(\"e`u`@ohl`uhnoHuds`uhnoDoe\"),\n function () {\n U._fTWm && U._fTWm(k)\n })\n }\n\n function Za(k, p, D) {\n D = D || \"normal\";\n var r = k + \"_\" + p + \"_\" + D,\n u = $a[r];\n if (isNaN(u)) {\n try {\n k = \"position:absolute; left:0px; top:-20000px; padding:0px;margin:0px;border:none;white-space:pre;line-height:normal;font-family:\" + k + \"; font-size:\" + p + \"px; font-weight:\" + D + \";\";\n if (!xa) {\n var H = document.body;\n xa = document.createElement(\"span\");\n xa.innerHTML = \"\";\n var F = document.createTextNode(\"Mpgyi\");\n xa.appendChild(F);\n H.appendChild(xa)\n }\n xa.style.display = \"\";\n xa.setAttribute(\"style\", k);\n u = Math.round(xa.offsetHeight);\n xa.style.display = \"none\"\n } catch (z) {\n u = Math.ceil(1.1 * p)\n }\n u = Math.max(u, p);\n $a[r] = u\n }\n return u\n }\n\n function R(k, p) {\n var D = [];\n if (D = {\n solid: [],\n shortDash: [3, 1],\n shortDot: [1, 1],\n shortDashDot: [3, 1, 1, 1],\n shortDashDotDot: [3, 1, 1, 1, 1, 1],\n dot: [1, 2],\n dash: [4, 2],\n dashDot: [4, 2, 1, 2],\n longDash: [8, 2],\n longDashDot: [8, 2, 1, 2],\n longDashDotDot: [8, 2, 1, 2, 1, 2]\n }[k || \"solid\"])\n for (var r = 0; r < D.length; r++) D[r] *= p;\n else D = [];\n return D\n }\n\n function O(k, p, D, r, u) {\n r = r || [];\n u = u || !1;\n r.push([k, p, D, u]);\n return k.addEventListener ? (k.addEventListener(p, D, u), D) : k.attachEvent ?\n (r = function (p) {\n p = p || window.event;\n p.preventDefault = p.preventDefault || function () {\n p.returnValue = !1\n };\n p.stopPropagation = p.stopPropagation || function () {\n p.cancelBubble = !0\n };\n D.call(k, p)\n }, k.attachEvent(\"on\" + p, r), r) : !1\n }\n\n function ab(k, p, D) {\n k *= W;\n p *= W;\n k = D.getImageData(k, p, 2, 2).data;\n p = !0;\n for (D = 0; 4 > D; D++)\n if (k[D] !== k[D + 4] | k[D] !== k[D + 8] | k[D] !== k[D + 12]) {\n p = !1;\n break\n } return p ? k[0] << 16 | k[1] << 8 | k[2] : 0\n }\n\n function na(k, p, D) {\n return k in p ? p[k] : D[k]\n }\n\n function Oa(k, p, D) {\n if (r && bb) {\n var u = k.getContext(\"2d\");\n Pa = u.webkitBackingStorePixelRatio ||\n u.mozBackingStorePixelRatio || u.msBackingStorePixelRatio || u.oBackingStorePixelRatio || u.backingStorePixelRatio || 1;\n W = Ua / Pa;\n k.width = p * W;\n k.height = D * W;\n Ua !== Pa && (k.style.width = p + \"px\", k.style.height = D + \"px\", u.scale(W, W))\n } else k.width = p, k.height = D\n }\n\n function hb(k) {\n if (!ib) {\n var p = !1,\n D = !1;\n \"undefined\" === typeof ra.Chart.creditHref ? (k.creditHref = \"http://thienan.vn/\", k.creditText = ja(\"B`ow`rKR/bnl\")) : (p = k.updateOption(\"creditText\"), D = k.updateOption(\"creditHref\"));\n if (k.creditHref && k.creditText) {\n k._creditLink ||\n (k._creditLink = document.createElement(\"a\"),k.creditText=\"ThienAn.vn\",k.creditHref=\"http://thienan.vn/\", k._creditLink.setAttribute(\"class\", \"canvasjs-chart-credit\"), k._creditLink.setAttribute(\"title\", \"JavaScript Charts\"), k._creditLink.setAttribute(\"style\", \"outline:none;margin:0px;position:absolute;right:2px;top:\" + (k.height - 14) + \"px;color:dimgrey;text-decoration:none;font-size:11px;font-family: Calibri, Lucida Grande, Lucida Sans Unicode, Arial, sans-serif\"), k._creditLink.setAttribute(\"tabIndex\", -1), k._creditLink.setAttribute(\"target\", \"_blank\"));\n if (0 === k.renderCount ||\n p || D) k._creditLink.setAttribute(\"href\", k.creditHref), k._creditLink.innerHTML = k.creditText;\n k._creditLink && k.creditHref && k.creditText ? (k._creditLink.parentElement || k._canvasJSContainer.appendChild(k._creditLink), k._creditLink.style.top = k.height - 14 + \"px\") : k._creditLink.parentElement && k._canvasJSContainer.removeChild(k._creditLink)\n }\n }\n }\n\n function ta(k, p) {\n Ja && (this.canvasCount |= 0, window.console.log(++this.canvasCount));\n var D = document.createElement(\"canvas\");\n D.setAttribute(\"class\", \"canvasjs-chart-canvas\");\n Oa(D,\n k, p);\n r || \"undefined\" === typeof G_vmlCanvasManager || G_vmlCanvasManager.initElement(D);\n return D\n }\n\n function sa(k, p, D) {\n for (var r in D) p.style[r] = D[r]\n }\n\n function ua(k, p, D) {\n p.getAttribute(\"state\") || (p.style.backgroundColor = k.toolbar.backgroundColor, p.style.color = k.toolbar.fontColor, p.style.border = \"none\", sa(k, p, {\n WebkitUserSelect: \"none\",\n MozUserSelect: \"none\",\n msUserSelect: \"none\",\n userSelect: \"none\"\n }));\n p.getAttribute(\"state\") !== D && (p.setAttribute(\"state\", D), p.setAttribute(\"type\", \"button\"), sa(k, p, {\n padding: \"5px 12px\",\n cursor: \"pointer\",\n \"float\": \"left\",\n width: \"40px\",\n height: \"25px\",\n outline: \"0px\",\n verticalAlign: \"baseline\",\n lineHeight: \"0\"\n }), p.setAttribute(\"title\", k._cultureInfo[D + \"Text\"]), p.innerHTML = \"\" + k._cultureInfo[D + \"Text\"] + \"\")\n }\n\n function Qa() {\n for (var k = null, p = 0; p < arguments.length; p++) k = arguments[p], k.style && (k.style.display = \"inline\")\n }\n\n function va() {\n for (var k = null, p = 0; p < arguments.length; p++)(k = arguments[p]) && k.style && (k.style.display = \"none\")\n }\n\n function V(k, p, D, r, v) {\n this._defaultsKey = k;\n this._themeOptionsKey = p;\n this._index = r;\n this.parent = v;\n this._eventListeners = [];\n k = {};\n this.theme && u(p) && u(r) ? k = u(ya[this.theme]) ? ya.light1 : ya[this.theme] : this.parent && (this.parent.themeOptions && this.parent.themeOptions[p]) && (null === r ? k = this.parent.themeOptions[p] : 0 < this.parent.themeOptions[p].length && (r = Math.min(this.parent.themeOptions[p].length - 1, r), k = this.parent.themeOptions[p][r]));\n this.themeOptions = k;\n this.options = D ? D : {\n _isPlaceholder: !0\n };\n this.setOptions(this.options,\n k)\n }\n\n function Ga(k, p, r, u, v) {\n \"undefined\" === typeof v && (v = 0);\n this._padding = v;\n this._x1 = k;\n this._y1 = p;\n this._x2 = r;\n this._y2 = u;\n this._rightOccupied = this._leftOccupied = this._bottomOccupied = this._topOccupied = this._padding\n }\n\n function ka(k, p) {\n ka.base.constructor.call(this, \"TextBlock\", null, p, null, null);\n this.ctx = k;\n this._isDirty = !0;\n this._wrappedText = null;\n this._initialize()\n }\n\n function Va(k, p) {\n Va.base.constructor.call(this, \"Toolbar\", \"toolbar\", p, null, k);\n this.chart = k;\n this.canvas = k.canvas;\n this.ctx = this.chart.ctx;\n this.optionsName =\n \"toolbar\"\n }\n\n function Aa(k, p) {\n Aa.base.constructor.call(this, \"Title\", \"title\", p, null, k);\n this.chart = k;\n this.canvas = k.canvas;\n this.ctx = this.chart.ctx;\n this.optionsName = \"title\";\n if (u(this.options.margin) && k.options.subtitles)\n for (var r = k.options.subtitles, za = 0; za < r.length; za++)\n if ((u(r[za].horizontalAlign) && \"center\" === this.horizontalAlign || r[za].horizontalAlign === this.horizontalAlign) && (u(r[za].verticalAlign) && \"top\" === this.verticalAlign || r[za].verticalAlign === this.verticalAlign) && !r[za].dockInsidePlotArea === !this.dockInsidePlotArea) {\n this.margin =\n 0;\n break\n }\n \"undefined\" === typeof this.options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize));\n this.height = this.width = null;\n this.bounds = {\n x1: null,\n y1: null,\n x2: null,\n y2: null\n }\n }\n\n function Ka(k, p, r) {\n Ka.base.constructor.call(this, \"Subtitle\", \"subtitles\", p, r, k);\n this.chart = k;\n this.canvas = k.canvas;\n this.ctx = this.chart.ctx;\n this.optionsName = \"subtitles\";\n this.isOptionsInArray = !0;\n \"undefined\" === typeof this.options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize));\n this.height = this.width = null;\n this.bounds = {\n x1: null,\n y1: null,\n x2: null,\n y2: null\n }\n }\n\n function Wa() {\n this.pool = []\n }\n\n function La(k) {\n var p;\n k && Ma[k] && (p = Ma[k]);\n La.base.constructor.call(this, \"CultureInfo\", null, p, null, null)\n }\n var Ja = !1,\n U = {},\n r = !!document.createElement(\"canvas\").getContext,\n ra = {\n Chart: {\n width: 500,\n height: 400,\n zoomEnabled: !1,\n zoomType: \"x\",\n backgroundColor: \"white\",\n theme: \"light1\",\n animationEnabled: !1,\n animationDuration: 1200,\n dataPointWidth: null,\n dataPointMinWidth: null,\n dataPointMaxWidth: null,\n colorSet: \"colorSet1\",\n culture: \"en\",\n creditHref: \"\",\n creditText: \"CanvasJS\",\n interactivityEnabled: !0,\n exportEnabled: !1,\n exportFileName: \"Chart\",\n rangeChanging: null,\n rangeChanged: null,\n publicProperties: {\n title: \"readWrite\",\n subtitles: \"readWrite\",\n toolbar: \"readWrite\",\n toolTip: \"readWrite\",\n legend: \"readWrite\",\n axisX: \"readWrite\",\n axisY: \"readWrite\",\n axisX2: \"readWrite\",\n axisY2: \"readWrite\",\n data: \"readWrite\",\n options: \"readWrite\",\n bounds: \"readOnly\",\n container: \"readOnly\"\n }\n },\n Title: {\n padding: 0,\n text: null,\n verticalAlign: \"top\",\n horizontalAlign: \"center\",\n fontSize: 20,\n fontFamily: \"Calibri\",\n fontWeight: \"normal\",\n fontColor: \"black\",\n fontStyle: \"normal\",\n borderThickness: 0,\n borderColor: \"black\",\n cornerRadius: 0,\n backgroundColor: r ? \"transparent\" : null,\n margin: 5,\n wrap: !0,\n maxWidth: null,\n dockInsidePlotArea: !1,\n publicProperties: {\n options: \"readWrite\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n Subtitle: {\n padding: 0,\n text: null,\n verticalAlign: \"top\",\n horizontalAlign: \"center\",\n fontSize: 14,\n fontFamily: \"Calibri\",\n fontWeight: \"normal\",\n fontColor: \"black\",\n fontStyle: \"normal\",\n borderThickness: 0,\n borderColor: \"black\",\n cornerRadius: 0,\n backgroundColor: null,\n margin: 2,\n wrap: !0,\n maxWidth: null,\n dockInsidePlotArea: !1,\n publicProperties: {\n options: \"readWrite\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n Toolbar: {\n backgroundColor: \"white\",\n backgroundColorOnHover: \"#2196f3\",\n borderColor: \"#2196f3\",\n borderThickness: 1,\n fontColor: \"black\",\n fontColorOnHover: \"white\",\n publicProperties: {\n options: \"readWrite\",\n chart: \"readOnly\"\n }\n },\n Legend: {\n name: null,\n verticalAlign: \"center\",\n horizontalAlign: \"right\",\n fontSize: 14,\n fontFamily: \"calibri\",\n fontWeight: \"normal\",\n fontColor: \"black\",\n fontStyle: \"normal\",\n cursor: null,\n itemmouseover: null,\n itemmouseout: null,\n itemmousemove: null,\n itemclick: null,\n dockInsidePlotArea: !1,\n reversed: !1,\n backgroundColor: r ? \"transparent\" : null,\n borderColor: r ? \"transparent\" : null,\n borderThickness: 0,\n cornerRadius: 0,\n maxWidth: null,\n maxHeight: null,\n markerMargin: null,\n itemMaxWidth: null,\n itemWidth: null,\n itemWrap: !0,\n itemTextFormatter: null,\n publicProperties: {\n options: \"readWrite\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n ToolTip: {\n enabled: !0,\n shared: !1,\n animationEnabled: !0,\n content: null,\n contentFormatter: null,\n reversed: !1,\n backgroundColor: r ? \"rgba(255,255,255,.9)\" : \"rgb(255,255,255)\",\n borderColor: null,\n borderThickness: 2,\n cornerRadius: 5,\n fontSize: 14,\n fontColor: \"black\",\n fontFamily: \"Calibri, Arial, Georgia, serif;\",\n fontWeight: \"normal\",\n fontStyle: \"italic\",\n publicProperties: {\n options: \"readWrite\",\n chart: \"readOnly\"\n }\n },\n Axis: {\n minimum: null,\n maximum: null,\n viewportMinimum: null,\n viewportMaximum: null,\n interval: null,\n intervalType: null,\n reversed: !1,\n logarithmic: !1,\n logarithmBase: 10,\n title: null,\n titleFontColor: \"black\",\n titleFontSize: 20,\n titleFontFamily: \"arial\",\n titleFontWeight: \"normal\",\n titleFontStyle: \"normal\",\n titleWrap: !0,\n titleMaxWidth: null,\n titleBackgroundColor: r ? \"transparent\" : null,\n titleBorderColor: r ? \"transparent\" : null,\n titleBorderThickness: 0,\n titleCornerRadius: 0,\n labelAngle: 0,\n labelFontFamily: \"arial\",\n labelFontColor: \"black\",\n labelFontSize: 12,\n labelFontWeight: \"normal\",\n labelFontStyle: \"normal\",\n labelAutoFit: !0,\n labelWrap: !0,\n labelMaxWidth: null,\n labelFormatter: null,\n labelBackgroundColor: r ? \"transparent\" : null,\n labelBorderColor: r ? \"transparent\" : null,\n labelBorderThickness: 0,\n labelCornerRadius: 0,\n labelPlacement: \"outside\",\n prefix: \"\",\n suffix: \"\",\n includeZero: !0,\n tickLength: 5,\n tickColor: \"black\",\n tickThickness: 1,\n lineColor: \"black\",\n lineThickness: 1,\n lineDashType: \"solid\",\n gridColor: \"A0A0A0\",\n gridThickness: 0,\n gridDashType: \"solid\",\n interlacedColor: r ? \"transparent\" : null,\n valueFormatString: null,\n margin: 2,\n publicProperties: {\n options: \"readWrite\",\n stripLines: \"readWrite\",\n scaleBreaks: \"readWrite\",\n crosshair: \"readWrite\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n StripLine: {\n value: null,\n startValue: null,\n endValue: null,\n color: \"orange\",\n opacity: null,\n thickness: 2,\n lineDashType: \"solid\",\n label: \"\",\n labelPlacement: \"inside\",\n labelAlign: \"far\",\n labelWrap: !0,\n labelMaxWidth: null,\n labelBackgroundColor: null,\n labelBorderColor: r ? \"transparent\" : null,\n labelBorderThickness: 0,\n labelCornerRadius: 0,\n labelFontFamily: \"arial\",\n labelFontColor: \"orange\",\n labelFontSize: 12,\n labelFontWeight: \"normal\",\n labelFontStyle: \"normal\",\n labelFormatter: null,\n showOnTop: !1,\n publicProperties: {\n options: \"readWrite\",\n axis: \"readOnly\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n ScaleBreaks: {\n autoCalculate: !1,\n collapsibleThreshold: \"25%\",\n maxNumberOfAutoBreaks: 2,\n spacing: 8,\n type: \"straight\",\n color: \"#FFFFFF\",\n fillOpacity: 0.9,\n lineThickness: 2,\n lineColor: \"#E16E6E\",\n lineDashType: \"solid\",\n publicProperties: {\n options: \"readWrite\",\n customBreaks: \"readWrite\",\n axis: \"readOnly\",\n autoBreaks: \"readOnly\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n Break: {\n startValue: null,\n endValue: null,\n spacing: 8,\n type: \"straight\",\n color: \"#FFFFFF\",\n fillOpacity: 0.9,\n lineThickness: 2,\n lineColor: \"#E16E6E\",\n lineDashType: \"solid\",\n publicProperties: {\n options: \"readWrite\",\n scaleBreaks: \"readOnly\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n Crosshair: {\n enabled: !1,\n snapToDataPoint: !1,\n color: \"grey\",\n opacity: null,\n thickness: 2,\n lineDashType: \"solid\",\n label: \"\",\n labelWrap: !0,\n labelMaxWidth: null,\n labelBackgroundColor: r ? \"grey\" : null,\n labelBorderColor: r ? \"grey\" : null,\n labelBorderThickness: 0,\n labelCornerRadius: 0,\n labelFontFamily: r ? \"Calibri, Optima, Candara, Verdana, Geneva, sans-serif\" : \"calibri\",\n labelFontSize: 12,\n labelFontColor: \"#fff\",\n labelFontWeight: \"normal\",\n labelFontStyle: \"normal\",\n labelFormatter: null,\n valueFormatString: null,\n publicProperties: {\n options: \"readWrite\",\n axis: \"readOnly\",\n bounds: \"readOnly\",\n chart: \"readOnly\"\n }\n },\n DataSeries: {\n name: null,\n dataPoints: null,\n label: \"\",\n bevelEnabled: !1,\n highlightEnabled: !0,\n cursor: \"default\",\n indexLabel: \"\",\n indexLabelPlacement: \"auto\",\n indexLabelOrientation: \"horizontal\",\n indexLabelFontColor: \"black\",\n indexLabelFontSize: 12,\n indexLabelFontStyle: \"normal\",\n indexLabelFontFamily: \"Arial\",\n indexLabelFontWeight: \"normal\",\n indexLabelBackgroundColor: null,\n indexLabelLineColor: \"gray\",\n indexLabelLineThickness: 1,\n indexLabelLineDashType: \"solid\",\n indexLabelMaxWidth: null,\n indexLabelWrap: !0,\n indexLabelFormatter: null,\n lineThickness: 2,\n lineDashType: \"solid\",\n connectNullData: !1,\n nullDataLineDashType: \"dash\",\n color: null,\n lineColor: null,\n risingColor: \"white\",\n fallingColor: \"red\",\n fillOpacity: null,\n startAngle: 0,\n radius: null,\n innerRadius: null,\n neckHeight: null,\n neckWidth: null,\n reversed: !1,\n valueRepresents: null,\n linkedDataSeriesIndex: null,\n whiskerThickness: 2,\n whiskerDashType: \"solid\",\n whiskerColor: null,\n whiskerLength: null,\n stemThickness: 2,\n stemColor: null,\n stemDashType: \"solid\",\n upperBoxColor: \"white\",\n lowerBoxColor: \"white\",\n type: \"column\",\n xValueType: \"number\",\n axisXType: \"primary\",\n axisYType: \"primary\",\n axisXIndex: 0,\n axisYIndex: 0,\n xValueFormatString: null,\n yValueFormatString: null,\n zValueFormatString: null,\n percentFormatString: null,\n showInLegend: null,\n legendMarkerType: null,\n legendMarkerColor: null,\n legendText: null,\n legendMarkerBorderColor: r ? \"transparent\" : null,\n legendMarkerBorderThickness: 0,\n markerType: \"circle\",\n markerColor: null,\n markerSize: null,\n markerBorderColor: r ? \"transparent\" : null,\n markerBorderThickness: 0,\n mouseover: null,\n mouseout: null,\n mousemove: null,\n click: null,\n toolTipContent: null,\n visible: !0,\n publicProperties: {\n options: \"readWrite\",\n axisX: \"readWrite\",\n axisY: \"readWrite\",\n chart: \"readOnly\"\n }\n },\n TextBlock: {\n x: 0,\n y: 0,\n width: null,\n height: null,\n maxWidth: null,\n maxHeight: null,\n padding: 0,\n angle: 0,\n text: \"\",\n horizontalAlign: \"center\",\n fontSize: 12,\n fontFamily: \"calibri\",\n fontWeight: \"normal\",\n fontColor: \"black\",\n fontStyle: \"normal\",\n borderThickness: 0,\n borderColor: \"black\",\n cornerRadius: 0,\n backgroundColor: null,\n textBaseline: \"top\"\n },\n CultureInfo: {\n decimalSeparator: \".\",\n digitGroupSeparator: \",\",\n zoomText: \"Zoom\",\n panText: \"Pan\",\n resetText: \"Reset\",\n menuText: \"More Options\",\n saveJPGText: \"Save as JPEG\",\n savePNGText: \"Save as PNG\",\n printText: \"Print\",\n days: \"Sunday Monday Tuesday Wednesday Thursday Friday Saturday\".split(\" \"),\n shortDays: \"Sun Mon Tue Wed Thu Fri Sat\".split(\" \"),\n months: \"January February March April May June July August September October November December\".split(\" \"),\n shortMonths: \"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec\".split(\" \")\n }\n },\n Ma = {\n en: {}\n },\n v = r ? \"Trebuchet MS, Helvetica, sans-serif\" : \"Arial\",\n Ha = r ? \"Impact, Charcoal, sans-serif\" : \"Arial\",\n Ba = {\n colorSet1: \"#4F81BC #C0504E #9BBB58 #23BFAA #8064A1 #4AACC5 #F79647 #7F6084 #77A033 #33558B #E59566\".split(\" \"),\n colorSet2: \"#6D78AD #51CDA0 #DF7970 #4C9CA0 #AE7D99 #C9D45C #5592AD #DF874D #52BCA8 #8E7AA3 #E3CB64 #C77B85 #C39762 #8DD17E #B57952 #FCC26C\".split(\" \"),\n colorSet3: \"#8CA1BC #36845C #017E82 #8CB9D0 #708C98 #94838D #F08891 #0366A7 #008276 #EE7757 #E5BA3A #F2990B #03557B #782970\".split(\" \")\n },\n I, fa, Q, ha, ga;\n fa = \"#333333\";\n Q = \"#000000\";\n I = \"#666666\";\n ga = ha = \"#000000\";\n var X = 20,\n E = 14,\n Xa = {\n colorSet: \"colorSet1\",\n backgroundColor: \"#FFFFFF\",\n title: {\n fontFamily: Ha,\n fontSize: 32,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n },\n subtitles: [{\n fontFamily: Ha,\n fontSize: E,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n }],\n data: [{\n indexLabelFontFamily: v,\n indexLabelFontSize: E,\n indexLabelFontColor: fa,\n indexLabelFontWeight: \"normal\",\n indexLabelLineThickness: 1\n }],\n axisX: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: fa,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisX2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: fa,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisY: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: fa,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisY2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: fa,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n legend: {\n fontFamily: v,\n fontSize: 14,\n fontColor: fa,\n fontWeight: \"bold\",\n verticalAlign: \"bottom\",\n horizontalAlign: \"center\"\n },\n toolTip: {\n fontFamily: v,\n fontSize: 14,\n fontStyle: \"normal\",\n cornerRadius: 0,\n borderThickness: 1\n }\n };\n Q = fa = \"#F5F5F5\";\n I = \"#FFFFFF\";\n ha = \"#40BAF1\";\n ga = \"#F5F5F5\";\n var X = 20,\n E = 14,\n cb = {\n colorSet: \"colorSet2\",\n title: {\n fontFamily: v,\n fontSize: 33,\n fontColor: \"#3A3A3A\",\n fontWeight: \"bold\",\n verticalAlign: \"top\",\n margin: 5\n },\n subtitles: [{\n fontFamily: v,\n fontSize: E,\n fontColor: \"#3A3A3A\",\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n }],\n data: [{\n indexLabelFontFamily: v,\n indexLabelFontSize: E,\n indexLabelFontColor: \"#666666\",\n indexLabelFontWeight: \"normal\",\n indexLabelLineThickness: 1\n }],\n axisX: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: \"#666666\",\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#666666\",\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: \"#BBBBBB\",\n tickThickness: 1,\n tickColor: \"#BBBBBB\",\n gridThickness: 1,\n gridColor: \"#BBBBBB\",\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FFA500\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FFA500\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: \"black\",\n color: \"black\",\n thickness: 1,\n lineDashType: \"dot\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisX2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: \"#666666\",\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#666666\",\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: \"#BBBBBB\",\n tickColor: \"#BBBBBB\",\n tickThickness: 1,\n gridThickness: 1,\n gridColor: \"#BBBBBB\",\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FFA500\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FFA500\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: \"black\",\n color: \"black\",\n thickness: 1,\n lineDashType: \"dot\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisY: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: \"#666666\",\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#666666\",\n labelFontWeight: \"normal\",\n lineThickness: 0,\n lineColor: \"#BBBBBB\",\n tickColor: \"#BBBBBB\",\n tickThickness: 1,\n gridThickness: 1,\n gridColor: \"#BBBBBB\",\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FFA500\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FFA500\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: \"black\",\n color: \"black\",\n thickness: 1,\n lineDashType: \"dot\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n axisY2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: \"#666666\",\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#666666\",\n labelFontWeight: \"normal\",\n lineThickness: 0,\n lineColor: \"#BBBBBB\",\n tickColor: \"#BBBBBB\",\n tickThickness: 1,\n gridThickness: 1,\n gridColor: \"#BBBBBB\",\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FFA500\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FFA500\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#EEEEEE\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: \"black\",\n color: \"black\",\n thickness: 1,\n lineDashType: \"dot\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#BBBBBB\",\n lineThickness: 1,\n lineDashType: \"solid\"\n }\n }],\n legend: {\n fontFamily: v,\n fontSize: 14,\n fontColor: \"#3A3A3A\",\n fontWeight: \"bold\",\n verticalAlign: \"bottom\",\n horizontalAlign: \"center\"\n },\n toolTip: {\n fontFamily: v,\n fontSize: 14,\n fontStyle: \"normal\",\n cornerRadius: 0,\n borderThickness: 1\n }\n };\n Q = fa = \"#F5F5F5\";\n I = \"#FFFFFF\";\n ha = \"#40BAF1\";\n ga = \"#F5F5F5\";\n X = 20;\n E = 14;\n Ha = {\n colorSet: \"colorSet12\",\n backgroundColor: \"#2A2A2A\",\n title: {\n fontFamily: Ha,\n fontSize: 32,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n },\n subtitles: [{\n fontFamily: Ha,\n fontSize: E,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n }],\n toolbar: {\n backgroundColor: \"#666666\",\n backgroundColorOnHover: \"#FF7372\",\n borderColor: \"#FF7372\",\n borderThickness: 1,\n fontColor: \"#F5F5F5\",\n fontColorOnHover: \"#F5F5F5\"\n },\n data: [{\n indexLabelFontFamily: v,\n indexLabelFontSize: E,\n indexLabelFontColor: Q,\n indexLabelFontWeight: \"normal\",\n indexLabelLineThickness: 1\n }],\n axisX: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisX2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisY: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisY2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n legend: {\n fontFamily: v,\n fontSize: 14,\n fontColor: fa,\n fontWeight: \"bold\",\n verticalAlign: \"bottom\",\n horizontalAlign: \"center\"\n },\n toolTip: {\n fontFamily: v,\n fontSize: 14,\n fontStyle: \"normal\",\n cornerRadius: 0,\n borderThickness: 1,\n fontColor: Q,\n backgroundColor: \"rgba(0, 0, 0, .7)\"\n }\n };\n I = \"#FFFFFF\";\n Q = fa = \"#FAFAFA\";\n ha = \"#40BAF1\";\n ga = \"#F5F5F5\";\n var X = 20,\n E = 14,\n ya = {\n light1: Xa,\n light2: cb,\n dark1: Ha,\n dark2: {\n colorSet: \"colorSet2\",\n backgroundColor: \"#32373A\",\n title: {\n fontFamily: v,\n fontSize: 32,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n },\n subtitles: [{\n fontFamily: v,\n fontSize: E,\n fontColor: fa,\n fontWeight: \"normal\",\n verticalAlign: \"top\",\n margin: 5\n }],\n toolbar: {\n backgroundColor: \"#666666\",\n backgroundColorOnHover: \"#FF7372\",\n borderColor: \"#FF7372\",\n borderThickness: 1,\n fontColor: \"#F5F5F5\",\n fontColorOnHover: \"#F5F5F5\"\n },\n data: [{\n indexLabelFontFamily: v,\n indexLabelFontSize: E,\n indexLabelFontColor: Q,\n indexLabelFontWeight: \"normal\",\n indexLabelLineThickness: 1\n }],\n axisX: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisX2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 1,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 0,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisY: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 0,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n axisY2: [{\n titleFontFamily: v,\n titleFontSize: X,\n titleFontColor: Q,\n titleFontWeight: \"normal\",\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: Q,\n labelFontWeight: \"normal\",\n lineThickness: 0,\n lineColor: I,\n tickThickness: 1,\n tickColor: I,\n gridThickness: 1,\n gridColor: I,\n stripLines: [{\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#FF7300\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: null,\n color: \"#FF7300\",\n thickness: 1\n }],\n crosshair: {\n labelFontFamily: v,\n labelFontSize: E,\n labelFontColor: \"#000000\",\n labelFontWeight: \"normal\",\n labelBackgroundColor: ga,\n color: ha,\n thickness: 1,\n lineDashType: \"dash\"\n },\n scaleBreaks: {\n type: \"zigzag\",\n spacing: \"2%\",\n lineColor: \"#777777\",\n lineThickness: 1,\n lineDashType: \"solid\",\n color: \"#111111\"\n }\n }],\n legend: {\n fontFamily: v,\n fontSize: 14,\n fontColor: fa,\n fontWeight: \"bold\",\n verticalAlign: \"bottom\",\n horizontalAlign: \"center\"\n },\n toolTip: {\n fontFamily: v,\n fontSize: 14,\n fontStyle: \"normal\",\n cornerRadius: 0,\n borderThickness: 1,\n fontColor: Q,\n backgroundColor: \"rgba(0, 0, 0, .7)\"\n }\n },\n theme1: Xa,\n theme2: cb,\n theme3: Xa\n },\n S = {\n numberDuration: 1,\n yearDuration: 314496E5,\n monthDuration: 2592E6,\n weekDuration: 6048E5,\n dayDuration: 864E5,\n hourDuration: 36E5,\n minuteDuration: 6E4,\n secondDuration: 1E3,\n millisecondDuration: 1,\n dayOfWeekFromInt: \"Sunday Monday Tuesday Wednesday Thursday Friday Saturday\".split(\" \")\n };\n (function () {\n U.fSDec = function (k) {\n for (var p = \"\", r = 0; r < k.length; r++) p += String.fromCharCode(Math.ceil(k.length / 57 / 5) ^ k.charCodeAt(r));\n return p\n };\n U.obj = {\n trVs: \"\",\n fntStr: \"qy!B`mhcsh-!Mtbhe`!Fs`oed-!Mtbhe`!R`or!Tohbned-!@sh`m-!r`or,rdshg\",\n txtBl: \"udyuC`rdmhod\",\n fnt: \"gnou\",\n fSy: \"ghmmRuxmd\",\n fTx: \"ghmmUdyu\",\n grClr: \"fsdx\",\n cntx: \"buy\",\n tp: \"unq\"\n };\n delete ra[U.fSDec(\"Bi`su\")][U.fSDec(\"bsdehuIsdg\")];\n U.pro = {\n sCH: ra[U.fSDec(\"Bi`su\")][U.fSDec(\"bsdehuIsdg\")]\n };\n U._fTWm = function (k) {\n if (\"undefined\" === typeof U.pro.sCH && !db) try {\n var p = k[U.fSDec(U.obj.cntx)];\n p[U.fSDec(U.obj.txtBl)] = U.fSDec(U.obj.tp);\n p[U.fSDec(U.obj.fnt)] = 11 + U.fSDec(U.obj.fntStr);\n p[U.fSDec(U.obj.fSy)] = U.fSDec(U.obj.grClr);\n p[U.fSDec(U.obj.fTx)](U.fSDec(U.obj.trVs), 2, k.height - 11 - 2)\n } catch (r) { }\n }\n })();\n var $a = {},\n xa = null,\n kb =\n function () {\n this.ctx.clearRect(0, 0, this.width, this.height);\n this.backgroundColor && (this.ctx.fillStyle = this.backgroundColor, this.ctx.fillRect(0, 0, this.width, this.height))\n },\n lb = function (k, p, r) {\n p = Math.min(this.width, this.height);\n return Math.max(\"theme4\" === this.theme ? 0 : 300 <= p ? 12 : 10, Math.round(p * (k / 400)))\n },\n Ca = function () {\n var k = /D{1,4}|M{1,4}|Y{1,4}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|f{1,3}|t{1,2}|T{1,2}|K|z{1,3}|\"[^\"]*\"|'[^']*'/g,\n p = \"Sunday Monday Tuesday Wednesday Thursday Friday Saturday\".split(\" \"),\n r = \"Sun Mon Tue Wed Thu Fri Sat\".split(\" \"),\n u = \"January February March April May June July August September October November December\".split(\" \"),\n v = \"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec\".split(\" \"),\n H = /\\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\\d{4})?)\\b/g,\n F = /[^-+\\dA-Z]/g;\n return function (z, E, L) {\n var R = L ? L.days : p,\n I = L ? L.months : u,\n N = L ? L.shortDays : r,\n O = L ? L.shortMonths : v;\n L = \"\";\n var S = !1;\n z = z && z.getTime ? z : z ? new Date(z) : new Date;\n if (isNaN(z)) throw SyntaxError(\"invalid date\");\n \"UTC:\" === E.slice(0, 4) && (E = E.slice(4), S = !0);\n L = S ? \"getUTC\" : \"get\";\n var U = z[L + \"Date\"](),\n V = z[L + \"Day\"](),\n M = z[L + \"Month\"](),\n Q = z[L + \"FullYear\"](),\n a = z[L + \"Hours\"](),\n d = z[L + \"Minutes\"](),\n b = z[L + \"Seconds\"](),\n c = z[L + \"Milliseconds\"](),\n e = S ? 0 : z.getTimezoneOffset();\n return L = E.replace(k, function (g) {\n switch (g) {\n case \"D\":\n return U;\n case \"DD\":\n return $(U, 2);\n case \"DDD\":\n return N[V];\n case \"DDDD\":\n return R[V];\n case \"M\":\n return M + 1;\n case \"MM\":\n return $(M + 1, 2);\n case \"MMM\":\n return O[M];\n case \"MMMM\":\n return I[M];\n case \"Y\":\n return parseInt(String(Q).slice(-2));\n case \"YY\":\n return $(String(Q).slice(-2), 2);\n case \"YYY\":\n return $(String(Q).slice(-3), 3);\n case \"YYYY\":\n return $(Q, 4);\n case \"h\":\n return a % 12 || 12;\n case \"hh\":\n return $(a % 12 || 12, 2);\n case \"H\":\n return a;\n case \"HH\":\n return $(a, 2);\n case \"m\":\n return d;\n case \"mm\":\n return $(d, 2);\n case \"s\":\n return b;\n case \"ss\":\n return $(b, 2);\n case \"f\":\n return String(c).slice(0, 1);\n case \"ff\":\n return $(String(c).slice(0, 2), 2);\n case \"fff\":\n return $(String(c).slice(0, 3), 3);\n case \"t\":\n return 12 > a ? \"a\" : \"p\";\n case \"tt\":\n return 12 > a ? \"am\" : \"pm\";\n case \"T\":\n return 12 > a ? \"A\" :\n \"P\";\n case \"TT\":\n return 12 > a ? \"AM\" : \"PM\";\n case \"K\":\n return S ? \"UTC\" : (String(z).match(H) || [\"\"]).pop().replace(F, \"\");\n case \"z\":\n return (0 < e ? \"-\" : \"+\") + Math.floor(Math.abs(e) / 60);\n case \"zz\":\n return (0 < e ? \"-\" : \"+\") + $(Math.floor(Math.abs(e) / 60), 2);\n case \"zzz\":\n return (0 < e ? \"-\" : \"+\") + $(Math.floor(Math.abs(e) / 60), 2) + $(Math.abs(e) % 60, 2);\n default:\n return g.slice(1, g.length - 1)\n }\n })\n }\n }(),\n ba = function (k, p, r) {\n if (null === k) return \"\";\n if (!isFinite(k)) return k;\n k = Number(k);\n var u = 0 > k ? !0 : !1;\n u && (k *= -1);\n var v = r ? r.decimalSeparator : \".\",\n H = r ? r.digitGroupSeparator :\n \",\",\n F = \"\";\n p = String(p);\n var F = 1,\n z = r = \"\",\n E = -1,\n L = [],\n R = [],\n I = 0,\n N = 0,\n S = 0,\n O = !1,\n U = 0,\n z = p.match(/\"[^\"]*\"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\\u2030|./g);\n p = null;\n for (var Q = 0; z && Q < z.length; Q++)\n if (p = z[Q], \".\" === p && 0 > E) E = Q;\n else {\n if (\"%\" === p) F *= 100;\n else if (\"\\u2030\" === p) {\n F *= 1E3;\n continue\n } else if (\",\" === p[0] && \".\" === p[p.length - 1]) {\n F /= Math.pow(1E3, p.length - 1);\n E = Q + p.length - 1;\n continue\n } else \"E\" !== p[0] && \"e\" !== p[0] || \"0\" !== p[p.length - 1] || (O = !0);\n 0 > E ? (L.push(p), \"#\" === p || \"0\" === p ? I++ : \",\" === p && S++) : (R.push(p), \"#\" !== p && \"0\" !== p || N++)\n } O && (p = Math.floor(k),\n z = -Math.floor(Math.log(k) / Math.LN10 + 1), U = 0 === k ? 0 : 0 === p ? -(I + z) : String(p).length - I, F /= Math.pow(10, U));\n 0 > E && (E = Q);\n F = (k * F).toFixed(N);\n p = F.split(\".\");\n F = (p[0] + \"\").split(\"\");\n k = (p[1] + \"\").split(\"\");\n F && \"0\" === F[0] && F.shift();\n for (O = z = Q = N = E = 0; 0 < L.length;)\n if (p = L.pop(), \"#\" === p || \"0\" === p)\n if (E++, E === I) {\n var M = F,\n F = [];\n if (\"0\" === p)\n for (p = I - N - (M ? M.length : 0); 0 < p;) M.unshift(\"0\"), p--;\n for (; 0 < M.length;) r = M.pop() + r, O++, 0 === O % z && (Q === S && 0 < M.length) && (r = H + r)\n } else 0 < F.length ? (r = F.pop() + r, N++, O++) : \"0\" === p && (r = \"0\" + r, N++, O++), 0 === O %\n z && (Q === S && 0 < F.length) && (r = H + r);\n else \"E\" !== p[0] && \"e\" !== p[0] || \"0\" !== p[p.length - 1] || !/[eE][+-]*[0]+/.test(p) ? \",\" === p ? (Q++, z = O, O = 0, 0 < F.length && (r = H + r)) : r = 1 < p.length && ('\"' === p[0] && '\"' === p[p.length - 1] || \"'\" === p[0] && \"'\" === p[p.length - 1]) ? p.slice(1, p.length - 1) + r : p + r : (p = 0 > U ? p.replace(\"+\", \"\").replace(\"-\", \"\") : p.replace(\"-\", \"\"), r += p.replace(/[0]+/, function (k) {\n return $(U, k.length)\n }));\n H = \"\";\n for (L = !1; 0 < R.length;) p = R.shift(), \"#\" === p || \"0\" === p ? 0 < k.length && 0 !== Number(k.join(\"\")) ? (H += k.shift(), L = !0) : \"0\" === p && (H += \"0\", L = !0) : 1 < p.length && ('\"' === p[0] && '\"' === p[p.length - 1] || \"'\" === p[0] && \"'\" === p[p.length - 1]) ? H += p.slice(1, p.length - 1) : \"E\" !== p[0] && \"e\" !== p[0] || \"0\" !== p[p.length - 1] || !/[eE][+-]*[0]+/.test(p) ? H += p : (p = 0 > U ? p.replace(\"+\", \"\").replace(\"-\", \"\") : p.replace(\"-\", \"\"), H += p.replace(/[0]+/, function (k) {\n return $(U, k.length)\n }));\n r += (L ? v : \"\") + H;\n return u ? \"-\" + r : r\n },\n Ra = function (k) {\n var p = 0,\n r = 0;\n k = k || window.event;\n k.offsetX || 0 === k.offsetX ? (p = k.offsetX, r = k.offsetY) : k.layerX || 0 == k.layerX ? (p = k.layerX, r = k.layerY) : (p = k.pageX - k.target.offsetLeft,\n r = k.pageY - k.target.offsetTop);\n return {\n x: p,\n y: r\n }\n },\n bb = !0,\n Ua = window.devicePixelRatio || 1,\n Pa = 1,\n W = bb ? Ua / Pa : 1,\n ea = function (k, p, r, u, v, H, F, z, E, L, R, N, O) {\n \"undefined\" === typeof O && (O = 1);\n F = F || 0;\n z = z || \"black\";\n var I = 15 < u - p && 15 < v - r ? 8 : 0.35 * Math.min(u - p, v - r);\n k.beginPath();\n k.moveTo(p, r);\n k.save();\n k.fillStyle = H;\n k.globalAlpha = O;\n k.fillRect(p, r, u - p, v - r);\n k.globalAlpha = 1;\n 0 < F && (O = 0 === F % 2 ? 0 : 0.5, k.beginPath(), k.lineWidth = F, k.strokeStyle = z, k.moveTo(p, r), k.rect(p - O, r - O, u - p + 2 * O, v - r + 2 * O), k.stroke());\n k.restore();\n !0 === E && (k.save(), k.beginPath(),\n k.moveTo(p, r), k.lineTo(p + I, r + I), k.lineTo(u - I, r + I), k.lineTo(u, r), k.closePath(), F = k.createLinearGradient((u + p) / 2, r + I, (u + p) / 2, r), F.addColorStop(0, H), F.addColorStop(1, \"rgba(255, 255, 255, .4)\"), k.fillStyle = F, k.fill(), k.restore());\n !0 === L && (k.save(), k.beginPath(), k.moveTo(p, v), k.lineTo(p + I, v - I), k.lineTo(u - I, v - I), k.lineTo(u, v), k.closePath(), F = k.createLinearGradient((u + p) / 2, v - I, (u + p) / 2, v), F.addColorStop(0, H), F.addColorStop(1, \"rgba(255, 255, 255, .4)\"), k.fillStyle = F, k.fill(), k.restore());\n !0 === R && (k.save(),\n k.beginPath(), k.moveTo(p, r), k.lineTo(p + I, r + I), k.lineTo(p + I, v - I), k.lineTo(p, v), k.closePath(), F = k.createLinearGradient(p + I, (v + r) / 2, p, (v + r) / 2), F.addColorStop(0, H), F.addColorStop(1, \"rgba(255, 255, 255, 0.1)\"), k.fillStyle = F, k.fill(), k.restore());\n !0 === N && (k.save(), k.beginPath(), k.moveTo(u, r), k.lineTo(u - I, r + I), k.lineTo(u - I, v - I), k.lineTo(u, v), F = k.createLinearGradient(u - I, (v + r) / 2, u, (v + r) / 2), F.addColorStop(0, H), F.addColorStop(1, \"rgba(255, 255, 255, 0.1)\"), k.fillStyle = F, F.addColorStop(0, H), F.addColorStop(1,\n \"rgba(255, 255, 255, 0.1)\"), k.fillStyle = F, k.fill(), k.closePath(), k.restore())\n },\n ja = function (k) {\n for (var p = \"\", r = 0; r < k.length; r++) p += String.fromCharCode(Math.ceil(k.length / 57 / 5) ^ k.charCodeAt(r));\n return p\n },\n db = window && window[ja(\"mnb`uhno\")] && window[ja(\"mnb`uhno\")].href && window[ja(\"mnb`uhno\")].href.indexOf && (-1 !== window[ja(\"mnb`uhno\")].href.indexOf(ja(\"b`ow`rkr/bnl\")) || -1 !== window[ja(\"mnb`uhno\")].href.indexOf(ja(\"gdonqhy/bnl\")) || -1 !== window[ja(\"mnb`uhno\")].href.indexOf(ja(\"gheemd\"))),\n ib = db && -1 === window[ja(\"mnb`uhno\")].href.indexOf(ja(\"gheemd\")),\n jb = {\n reset: {\n image: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAeCAYAAABJ/8wUAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAPjSURBVFhHxVdJaFNRFP1J/jwkP5MxsbaC1WJEglSxOFAXIsFpVRE3ggi1K90obioRRBA33XXnQnciirhQcMCdorgQxBkXWlREkFKsWkv5npvckp/XnzRpKh64kLw733fffe9L/wrL0+mVUdO8uTSZ3MBL/we2qg4rkuSpodCELstXE46ziVkLQ6FQcGOmeSSq6wd4aV50d3drWjj8kQKZJTUc9kxFGenv79dZrDksTSTWWJp2QYtEPiErysyzdX0LsxsCQR8keX8gs6RHIk8ysdgKFg2G53mhuOPsshTlBjKaFo1g7SqLNoShKLdFXT8huQ/paLSbxatYnc2mHMM4hr18Vi8TIvCmXF3vYrW6cF23gGTOk0M1wA4RKvOmq6vLZRVJipvmSWT6tZ6CSEYkco5V50VPT4+D7RwOqi6RiSZm0fJ+vggSqkeoypdsNmuyelNwbXsbgvkWYMtzDWNvWaijoyOBqE+hVK8abcssUeXQ/YfKyi0gFYv1Ipgfoj34fYGTJLOYJA0ODirok32GLN8XhUWCwSes1hIwBg6LydJ/tEeRRapAdUp+wSAiZchtZZWWgAZ+JNpD8peYXQVK9UwUxNpzOK8pq97kURZhYTCKBwPD7h2zK+js7Myi7D8Fod+0TkMI8+EMAngLGc/WtBFWawkFHFnoj/t9KLgGmF0B3QfkxC+EarxkdhnFYlFLY06USqUwL7UMjICHfh/wOc2sCqhpxGbCkLvL7EUDbF73+6DkmVWB6zi7xUDQSLeYvWjAILvm9zEnkJhlbRcDQZcv6Kg2AipyT/Axw6wKlqVSqxDdjF8Izfod13qURdrG/nxehY+xGh+h0CSzKygGvSNQIcc097BI24jb9hax6kj2E7OrMFX1il+ICEf2NrPbhiXLl+fYl+U7zK4iYdsDcyLGf+ofFlkwcN+s10KhmpuYhhtm0hCLVIFL0MDsqNlDIqy9x2CLs1jL6OvrI7vPRbtohXG6eFmsFnHDGAp6n9AgyuVySRZrGvROxRgIfLXhzjrNYnNBUxNX/dMgRWT1mt4XLDovaApD53E9W3ilNX5M55LJHpRtIsgAvciR4WWcgK2Dvb1YqgXevmF8z2zEBTcKG39EfSKsT9EbhVUaI2FZO+oZIqImxol6j66/hcAu4sSN4vc1ZPoKeoE6RGhYL2YYA+ymOSSi0Z0wWntbtkGUWCvfSDXIxONraZ/FY90KUfNTpfC5spnNLgxoYNnR9RO4F8ofXEHOgogCQE99w+fF2Xw+b7O59rEOsyRqGEfpVoaDMQQ1CZrG46bcM6AZ0C/wPqNfHliqejyTySxh9TqQpL+xmbIlkB9SlAAAAABJRU5ErkJggg==\"\n },\n pan: {\n image: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAICSURBVEhLxZbPahNRGMUn/5MpuAiBEAIufQGfzr5E40YptBXajYzudCEuGqS+gGlrFwquDGRTutBdYfydzJ3LzeQmJGZue+Dw/Z17Mnfmu5Pof9Hr9Z61Wq0bWZMKj263O6xWq99wU9lOpzPMKgEhEcRucNOcioOK+0RzBhNvt9tPV4nmVF19+OWhVqt9xXgFXZq+8lCv119UKpUJ7iX2FmvFTKz8RH34YdBsNk8wVtjE4fGYwm8wrrDi3WBG5oKXZGRSS9hGuNFojLTe2lFz5xThWZIktayyiE2FdT3rzXBXz7krKiL8c17wAKFDjCus2AvW+YGZ9y2JF0VFRuMPfI//rsCE/C+s26s4gQu9ul7r4NteKx7H8XOC724xNNGbaNu++IrBqbOV7Tj3FgMRvc/YKOr3+3sE47wgEt/Bl/gaK5cHbNU11vYSXylfpK7XOvjuumPp4Wcoipu30Qsez2uMXYz4lfI+mOmwothY+SLiXJy7mKVpWs3Si0CoOMfeI9Od43Wic+jO+ZVv+crsm9QSNhUW9LXSeoPBYLXopthGuFQgdIxxhY+UDwlt1x5CZ1hX+NTUdt/OIvjKaDSmuOJfaIVNPKX+W18j/PLA2/kR44p5Sd8HbHngT/yTfNRWUXX14ZcL3wmX0+TLf8YO7CGT8yFE5zB3/gney25/OETRP9CtPDFe5jShAAAAAElFTkSuQmCC\"\n },\n zoom: {\n image: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALWSURBVEhLvZZLaBNRFIabyftBIgEfqCCBoCC6MYqiXYiIj4U76U4X7sUHbhQhUBfixhZEUBDB16YuFERaUaQLK7ooCOJj4UKtYEFU0EptShO/A9Ph3js3k8lo/eHnP7n3nP/M3LlzMz1hkUwmNziOcyKRSFyFt+LxeD/c2Wq1Ym7Kv0M2m11Os1OxWGycn1OwZXCGuXfwIhezkd9/jRgNT2L4ldhs1pbkX5OLJe4euVxuGQaPCa3mnUjtJx7BDuKusJTCV6jVVGHTMuYRjxma7yIOhTgFY6jNaAKew2xPKpVay9ganmkvj+M448/MfJdT5K5Gg4HJacRngPFgqVRaRNwW1B4i7yehWfsEDdz1K+A01AoxPIqGAiuwGfkOTY8+1A6u7AyiFTB2Hu0KPIrdiOnzHLWDybeImvy+Wq2mZa5bUHsD0Zpz+KxHdWQymV6kAb1ElqeORgJLvgnRdj1+R1AfzkIvSUjxVjQSarVakrueIPT8+H1F5jSUy+WXiJrUYBVWyVxU4PEU8TzhfaijUqnMIWrjaY492eWRwdKOIqrnIxnXwLLeRLwk2GQzrEMjg0avEbXxkIxr4OoOImpj2QwyFgms1koa/SZUG8s+0iGnEhNfCNXEhzIXBVz0McTzEvJ+70P9oNFtxEzei3aFYrFYxmuSUPWSv9Yi9IMm2xE1We56Mp1OV4nDwqFmBDV9gk9AEh4gZtFHNt8W4kAUCoXF5MorY9Z/kDni9nDv7hc0i2fhgLvTtX8a99PoMPPagTFPxofRzmDJ9yM+AyEmTfgGysYbQcfhDzPPJDmX0c7gDg4gs9BqFIWhm/Nct5H8gtBq1I7UfIbtvmIuoaGQcp+fdpbbSM43eEH5wrwLbXmhm/fU63VHXjcuok7hEByFY/AeHGC8L5/PL3HT5xGH1uYwfPOICGo+CBcU0vwO1BqzUqILDl/z/9VYIMfpddiAc47jDP8BsUpb13wOLRwAAAAASUVORK5CYII=\"\n },\n menu: {\n image: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAeCAYAAABE4bxTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADoSURBVFhH7dc9CsJAFATgRxIIBCwCqZKATX5sbawsY2MvWOtF9AB6AU8gguAJbD2AnZ2VXQT/Ko2TYGCL2OYtYQc+BuYA+1hCtnCVwMm27SGaXpDJIAiCvCkVR05hGOZNN3HkFMdx3nQRR06+76/R1IcFLJlNQEWlmWlBTwJtKLKHynehZqnjOGM0PYWRVXk61C37p7xlZ3Hk5HneCk1dmMH811xGoKLSzDiQwIBZB4ocoPJdqNkDt2yKlueWRVGUtzy3rPwo3sWRU3nLjuLI6OO67oZM00wMw3hrmpZx0XU9syxrR0T0BeMpb9dneSR2AAAAAElFTkSuQmCC\"\n },\n handle: {\n image: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAYAAADESFVDAAAAAXNSR0IArs4c6QAAAAZiS0dEANAAzwDP4Z7KegAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9sHGw0cMqdt1UwAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAaElEQVQoz+3SsRFAQBCF4Z9WJM8KCDVwownl6YXsTmCUsyKGkZzcl7zkz3YLkypgAnreFmDEpHkIwVOMfpdi9CEEN2nGpFdwD03yEqDtOgCaun7sqSTDH32I1pQA2Pb9sZecAxc5r3IAb21d6878xsAAAAAASUVORK5CYII=\"\n }\n };\n V.prototype.setOptions = function (k, p) {\n if (ra[this._defaultsKey]) {\n var r = ra[this._defaultsKey],\n u;\n for (u in r) \"publicProperties\" !==\n u && r.hasOwnProperty(u) && (this[u] = k && u in k ? k[u] : p && u in p ? p[u] : r[u])\n } else Ja && window.console && console.log(\"defaults not set\")\n };\n V.prototype.get = function (k) {\n var p = ra[this._defaultsKey];\n if (\"options\" === k) return this.options && this.options._isPlaceholder ? null : this.options;\n if (p.hasOwnProperty(k) || p.publicProperties && p.publicProperties.hasOwnProperty(k)) return this[k];\n window.console && window.console.log('Property \"' + k + \"\\\" doesn't exist. Please check for typo.\")\n };\n V.prototype.set = function (k, p, r) {\n r = \"undefined\" ===\n typeof r ? !0 : r;\n var u = ra[this._defaultsKey];\n if (\"options\" === k) this.createUserOptions(p);\n else if (u.hasOwnProperty(k) || u.publicProperties && u.publicProperties.hasOwnProperty(k) && \"readWrite\" === u.publicProperties[k]) this.options._isPlaceholder && this.createUserOptions(), this.options[k] = p;\n else {\n window.console && (u.publicProperties && u.publicProperties.hasOwnProperty(k) && \"readOnly\" === u.publicProperties[k] ? window.console.log('Property \"' + k + '\" is read-only.') : window.console.log('Property \"' + k + \"\\\" doesn't exist. Please check for typo.\"));\n return\n }\n r && (this.stockChart || this.chart || this).render()\n };\n V.prototype.addTo = function (k, p, r, u) {\n u = \"undefined\" === typeof u ? !0 : u;\n var v = ra[this._defaultsKey];\n v.hasOwnProperty(k) || v.publicProperties && v.publicProperties.hasOwnProperty(k) && \"readWrite\" === v.publicProperties[k] ? (this.options._isPlaceholder && this.createUserOptions(), \"undefined\" === typeof this.options[k] && (this.options[k] = []), k = this.options[k], r = \"undefined\" === typeof r || null === r ? k.length : r, k.splice(r, 0, p), u && (this.chart || this).render()) : window.console &&\n (v.publicProperties && v.publicProperties.hasOwnProperty(k) && \"readOnly\" === v.publicProperties[k] ? window.console.log('Property \"' + k + '\" is read-only.') : window.console.log('Property \"' + k + \"\\\" doesn't exist. Please check for typo.\"))\n };\n V.prototype.createUserOptions = function (k) {\n if (\"undefined\" !== typeof k || this.options._isPlaceholder)\n if (this.parent.options._isPlaceholder && this.parent.createUserOptions(), this.isOptionsInArray) {\n this.parent.options[this.optionsName] || (this.parent.options[this.optionsName] = []);\n var p =\n this.parent.options[this.optionsName],\n r = p.length;\n this.options._isPlaceholder || (Fa(p), r = p.indexOf(this.options));\n this.options = \"undefined\" === typeof k ? {} : k;\n p[r] = this.options\n } else this.options = \"undefined\" === typeof k ? {} : k, k = this.parent.options, this.optionsName ? p = this.optionsName : (p = this._defaultsKey) && 0 !== p.length ? (r = p.charAt(0).toLowerCase(), 1 < p.length && (r = r.concat(p.slice(1))), p = r) : p = void 0, k[p] = this.options\n };\n V.prototype.remove = function (k) {\n k = \"undefined\" === typeof k ? !0 : k;\n if (this.isOptionsInArray) {\n var p =\n this.parent.options[this.optionsName];\n Fa(p);\n var r = p.indexOf(this.options);\n 0 <= r && p.splice(r, 1)\n } else delete this.parent.options[this.optionsName];\n k && (this.chart || this).render()\n };\n V.prototype.updateOption = function (k) {\n !ra[this._defaultsKey] && (Ja && window.console) && console.log(\"defaults not set\");\n var p = ra[this._defaultsKey],\n r = {},\n v = this[k],\n E = this._themeOptionsKey,\n H = this._index;\n this.theme && u(E) && u(H) ? r = u(ya[this.theme]) ? ya.light1 : ya[this.theme] : this.parent && (this.parent.themeOptions && this.parent.themeOptions[E]) &&\n (null === H ? r = this.parent.themeOptions[E] : 0 < this.parent.themeOptions[E].length && (r = Math.min(this.parent.themeOptions[E].length - 1, H), r = this.parent.themeOptions[E][r]));\n this.themeOptions = r;\n k in p && (v = k in this.options ? this.options[k] : r && k in r ? r[k] : p[k]);\n if (v === this[k]) return !1;\n this[k] = v;\n return !0\n };\n V.prototype.trackChanges = function (k) {\n if (!this.sessionVariables) throw \"Session Variable Store not set\";\n this.sessionVariables[k] = this.options[k]\n };\n V.prototype.isBeingTracked = function (k) {\n this.options._oldOptions ||\n (this.options._oldOptions = {});\n return this.options._oldOptions[k] ? !0 : !1\n };\n V.prototype.hasOptionChanged = function (k) {\n if (!this.sessionVariables) throw \"Session Variable Store not set\";\n return this.sessionVariables[k] !== this.options[k]\n };\n V.prototype.addEventListener = function (k, p, r) {\n k && p && (this._eventListeners[k] = this._eventListeners[k] || [], this._eventListeners[k].push({\n context: r || this,\n eventHandler: p\n }))\n };\n V.prototype.removeEventListener = function (k, p) {\n if (k && p && this._eventListeners[k])\n for (var r = this._eventListeners[k],\n u = 0; u < r.length; u++)\n if (r[u].eventHandler === p) {\n r[u].splice(u, 1);\n break\n }\n };\n V.prototype.removeAllEventListeners = function () {\n this._eventListeners = []\n };\n V.prototype.dispatchEvent = function (k, p, r) {\n if (k && this._eventListeners[k]) {\n p = p || {};\n for (var u = this._eventListeners[k], v = 0; v < u.length; v++) u[v].eventHandler.call(u[v].context, p)\n }\n \"function\" === typeof this[k] && this[k].call(r || this.chart, p)\n };\n Ga.prototype.registerSpace = function (k, p) {\n \"top\" === k ? this._topOccupied += p.height : \"bottom\" === k ? this._bottomOccupied += p.height : \"left\" ===\n k ? this._leftOccupied += p.width : \"right\" === k && (this._rightOccupied += p.width)\n };\n Ga.prototype.unRegisterSpace = function (k, p) {\n \"top\" === k ? this._topOccupied -= p.height : \"bottom\" === k ? this._bottomOccupied -= p.height : \"left\" === k ? this._leftOccupied -= p.width : \"right\" === k && (this._rightOccupied -= p.width)\n };\n Ga.prototype.getFreeSpace = function () {\n return {\n x1: this._x1 + this._leftOccupied,\n y1: this._y1 + this._topOccupied,\n x2: this._x2 - this._rightOccupied,\n y2: this._y2 - this._bottomOccupied,\n width: this._x2 - this._x1 - this._rightOccupied - this._leftOccupied,\n height: this._y2 - this._y1 - this._bottomOccupied - this._topOccupied\n }\n };\n Ga.prototype.reset = function () {\n this._rightOccupied = this._leftOccupied = this._bottomOccupied = this._topOccupied = this._padding\n };\n qa(ka, V);\n ka.prototype._initialize = function () {\n u(this.padding) || \"object\" !== typeof this.padding ? this.topPadding = this.rightPadding = this.bottomPadding = this.leftPadding = Number(this.padding) | 0 : (this.topPadding = u(this.padding.top) ? 0 : Number(this.padding.top) | 0, this.rightPadding = u(this.padding.right) ? 0 : Number(this.padding.right) |\n 0, this.bottomPadding = u(this.padding.bottom) ? 0 : Number(this.padding.bottom) | 0, this.leftPadding = u(this.padding.left) ? 0 : Number(this.padding.left) | 0)\n };\n ka.prototype.render = function (k) {\n if (0 !== this.fontSize) {\n k && this.ctx.save();\n var p = this.ctx.font;\n this.ctx.textBaseline = this.textBaseline;\n var r = 0;\n this._isDirty && this.measureText(this.ctx);\n this.ctx.translate(this.x, this.y + r);\n \"middle\" === this.textBaseline && (r = -this._lineHeight / 2);\n this.ctx.font = this._getFontString();\n this.ctx.rotate(Math.PI / 180 * this.angle);\n var u =\n 0,\n v = this.topPadding,\n H = null;\n this.ctx.roundRect || Ea(this.ctx);\n (0 < this.borderThickness && this.borderColor || this.backgroundColor) && this.ctx.roundRect(0, r, this.width, this.height, this.cornerRadius, this.borderThickness, this.backgroundColor, this.borderColor);\n this.ctx.fillStyle = this.fontColor;\n for (r = 0; r < this._wrappedText.lines.length; r++) H = this._wrappedText.lines[r], \"right\" === this.horizontalAlign ? u = (this.width - (this.leftPadding + this.rightPadding)) / 2 - H.width / 2 + this.leftPadding : \"left\" === this.horizontalAlign ? u =\n this.leftPadding : \"center\" === this.horizontalAlign && (u = (this.width - (this.leftPadding + this.rightPadding)) / 2 - H.width / 2 + this.leftPadding), this.ctx.fillText(H.text, u, v), v += H.height;\n this.ctx.font = p;\n k && this.ctx.restore()\n }\n };\n ka.prototype.setText = function (k) {\n this.text = k;\n this._isDirty = !0;\n this._wrappedText = null\n };\n ka.prototype.measureText = function () {\n this._lineHeight = Za(this.fontFamily, this.fontSize, this.fontWeight);\n if (null === this.maxWidth) throw \"Please set maxWidth and height for TextBlock\";\n this._wrapText(this.ctx);\n this._isDirty = !1;\n return {\n width: this.width,\n height: this.height\n }\n };\n ka.prototype._getLineWithWidth = function (k, p, r) {\n k = String(k);\n if (!k) return {\n text: \"\",\n width: 0\n };\n var u = r = 0,\n v = k.length - 1,\n H = Infinity;\n for (this.ctx.font = this._getFontString(); u <= v;) {\n var H = Math.floor((u + v) / 2),\n F = k.substr(0, H + 1);\n r = this.ctx.measureText(F).width;\n if (r < p) u = H + 1;\n else if (r > p) v = H - 1;\n else break\n }\n r > p && 1 < F.length && (F = F.substr(0, F.length - 1), r = this.ctx.measureText(F).width);\n p = !0;\n if (F.length === k.length || \" \" === k[F.length]) p = !1;\n p && (k = F.split(\" \"), 1 < k.length &&\n k.pop(), F = k.join(\" \"), r = this.ctx.measureText(F).width);\n return {\n text: F,\n width: r\n }\n };\n ka.prototype._wrapText = function () {\n var k = new String(Ia(String(this.text))),\n p = [],\n r = this.ctx.font,\n u = 0,\n v = 0;\n this.ctx.font = this._getFontString();\n if (0 === this.frontSize) v = u = 0;\n else\n for (; 0 < k.length;) {\n var H = this.maxHeight - (this.topPadding + this.bottomPadding),\n F = this._getLineWithWidth(k, this.maxWidth - (this.leftPadding + this.rightPadding), !1);\n F.height = this._lineHeight;\n p.push(F);\n var z = v,\n v = Math.max(v, F.width),\n u = u + F.height,\n k = Ia(k.slice(F.text.length,\n k.length));\n H && u > H && (F = p.pop(), u -= F.height, v = z)\n }\n this._wrappedText = {\n lines: p,\n width: v,\n height: u\n };\n this.width = v + (this.leftPadding + this.rightPadding);\n this.height = u + (this.topPadding + this.bottomPadding);\n this.ctx.font = r\n };\n ka.prototype._getFontString = function () {\n var k;\n k = \"\" + (this.fontStyle ? this.fontStyle + \" \" : \"\");\n k += this.fontWeight ? this.fontWeight + \" \" : \"\";\n k += this.fontSize ? this.fontSize + \"px \" : \"\";\n var p = this.fontFamily ? this.fontFamily + \"\" : \"\";\n !r && p && (p = p.split(\",\")[0], \"'\" !== p[0] && '\"' !== p[0] && (p = \"'\" + p + \"'\"));\n return k += p\n };\n qa(Va, V);\n qa(Aa, V);\n Aa.prototype.setLayout = function () {\n if (this.text) {\n var k = this.dockInsidePlotArea ? this.chart.plotArea : this.chart,\n p = k.layoutManager.getFreeSpace(),\n r = p.x1,\n v = p.y1,\n E = 0,\n H = 0,\n F = this.chart._menuButton && this.chart.exportEnabled && \"top\" === this.verticalAlign ? 22 : 0,\n z, I;\n \"top\" === this.verticalAlign || \"bottom\" === this.verticalAlign ? (null === this.maxWidth && (this.maxWidth = p.width - 4 - F * (\"center\" === this.horizontalAlign ? 2 : 1)), H = 0.5 * p.height - this.margin - 2, E = 0) : \"center\" === this.verticalAlign && (\"left\" === this.horizontalAlign ||\n \"right\" === this.horizontalAlign ? (null === this.maxWidth && (this.maxWidth = p.height - 4), H = 0.5 * p.width - this.margin - 2) : \"center\" === this.horizontalAlign && (null === this.maxWidth && (this.maxWidth = p.width - 4), H = 0.5 * p.height - 4));\n var L;\n u(this.padding) || \"number\" !== typeof this.padding ? u(this.padding) || \"object\" !== typeof this.padding || (L = this.padding.top ? this.padding.top : this.padding.bottom ? this.padding.bottom : 0, L += this.padding.bottom ? this.padding.bottom : this.padding.top ? this.padding.top : 0, L *= 1.25) : L = 2.5 * this.padding;\n this.wrap ||\n (H = Math.min(H, Math.max(1.5 * this.fontSize, this.fontSize + L)));\n H = new ka(this.ctx, {\n fontSize: this.fontSize,\n fontFamily: this.fontFamily,\n fontColor: this.fontColor,\n fontStyle: this.fontStyle,\n fontWeight: this.fontWeight,\n horizontalAlign: this.horizontalAlign,\n verticalAlign: this.verticalAlign,\n borderColor: this.borderColor,\n borderThickness: this.borderThickness,\n backgroundColor: this.backgroundColor,\n maxWidth: this.maxWidth,\n maxHeight: H,\n cornerRadius: this.cornerRadius,\n text: this.text,\n padding: this.padding,\n textBaseline: \"top\"\n });\n L = H.measureText();\n \"top\" === this.verticalAlign || \"bottom\" === this.verticalAlign ? (\"top\" === this.verticalAlign ? (v = p.y1 + 2, I = \"top\") : \"bottom\" === this.verticalAlign && (v = p.y2 - 2 - L.height, I = \"bottom\"), \"left\" === this.horizontalAlign ? r = p.x1 + 2 : \"center\" === this.horizontalAlign ? r = p.x1 + p.width / 2 - L.width / 2 : \"right\" === this.horizontalAlign && (r = p.x2 - 2 - L.width - F), z = this.horizontalAlign, this.width = L.width, this.height = L.height) : \"center\" === this.verticalAlign && (\"left\" === this.horizontalAlign ? (r = p.x1 + 2, v = p.y2 - 2 - (this.maxWidth / 2 - L.width /\n 2), E = -90, I = \"left\", this.width = L.height, this.height = L.width) : \"right\" === this.horizontalAlign ? (r = p.x2 - 2, v = p.y1 + 2 + (this.maxWidth / 2 - L.width / 2), E = 90, I = \"right\", this.width = L.height, this.height = L.width) : \"center\" === this.horizontalAlign && (v = k.y1 + (k.height / 2 - L.height / 2), r = k.x1 + (k.width / 2 - L.width / 2), I = \"center\", this.width = L.width, this.height = L.height), z = \"center\");\n H.x = r;\n H.y = v;\n H.angle = E;\n H.horizontalAlign = z;\n this._textBlock = H;\n k.layoutManager.registerSpace(I, {\n width: this.width + (\"left\" === I || \"right\" === I ? this.margin + 2 : 0),\n height: this.height + (\"top\" === I || \"bottom\" === I ? this.margin + 2 : 0)\n });\n this.bounds = {\n x1: r,\n y1: v,\n x2: r + this.width,\n y2: v + this.height\n };\n this.ctx.textBaseline = \"top\"\n }\n };\n Aa.prototype.render = function () {\n this._textBlock && this._textBlock.render(!0)\n };\n qa(Ka, V);\n Ka.prototype.setLayout = Aa.prototype.setLayout;\n Ka.prototype.render = Aa.prototype.render;\n Wa.prototype.get = function (k, p) {\n var r = null;\n 0 < this.pool.length ? (r = this.pool.pop(), Oa(r, k, p)) : r = ta(k, p);\n return r\n };\n Wa.prototype.release = function (k) {\n this.pool.push(k)\n };\n qa(La, V);\n var Na = {\n addTheme: function (k,\n p) {\n ya[k] = p\n },\n addColorSet: function (k, p) {\n Ba[k] = p\n },\n addCultureInfo: function (k, p) {\n Ma[k] = p\n },\n formatNumber: function (k, p, r) {\n r = r || \"en\";\n if (Ma[r]) return ba(k, p || \"#,##0.##\", new La(r));\n throw \"Unknown Culture Name\";\n },\n formatDate: function (k, p, r) {\n r = r || \"en\";\n if (Ma[r]) return Ca(k, p || \"DD MMM YYYY\", new La(r));\n throw \"Unknown Culture Name\";\n }\n };\n \"undefined\" !== typeof module && \"undefined\" !== typeof module.exports ? module.exports = Na : \"function\" === typeof define && define.amd ? define([], function () {\n return Na\n }) : window.CanvasJS = Na;\n Na.Chart = function () {\n function k(a,\n d) {\n return a.x - d.x\n }\n\n function p(a, d) {\n d = d || {};\n this.theme = u(d.theme) || u(ya[d.theme]) ? \"light1\" : d.theme;\n p.base.constructor.call(this, \"Chart\", null, d, null, null);\n var b = this;\n this._containerId = a;\n this._objectsInitialized = !1;\n this.overlaidCanvasCtx = this.ctx = null;\n this._indexLabels = [];\n this._panTimerId = 0;\n this._lastTouchEventType = \"\";\n this._lastTouchData = null;\n this.isAnimating = !1;\n this.renderCount = 0;\n this.disableToolTip = this.animatedRender = !1;\n this.canvasPool = new Wa;\n this.allDOMEventHandlers = [];\n this.panEnabled = !1;\n this._defaultCursor =\n \"default\";\n this.plotArea = {\n canvas: null,\n ctx: null,\n x1: 0,\n y1: 0,\n x2: 0,\n y2: 0,\n width: 0,\n height: 0\n };\n this._dataInRenderedOrder = [];\n if (this.container = \"string\" === typeof this._containerId ? document.getElementById(this._containerId) : this._containerId) {\n this.container.innerHTML = \"\";\n var c = 0,\n e = 0,\n c = this.options.width ? this.width : 0 < this.container.clientWidth ? this.container.clientWidth : this.width,\n e = this.options.height ? this.height : 0 < this.container.clientHeight ? this.container.clientHeight : this.height;\n this.width = c;\n this.height = e;\n this.x1 =\n this.y1 = 0;\n this.x2 = this.width;\n this.y2 = this.height;\n this._selectedColorSet = \"undefined\" !== typeof Ba[this.colorSet] ? Ba[this.colorSet] : Ba.colorSet1;\n this._canvasJSContainer = document.createElement(\"div\");\n this._canvasJSContainer.setAttribute(\"class\", \"canvasjs-chart-container\");\n this._canvasJSContainer.style.position = \"relative\";\n this._canvasJSContainer.style.textAlign = \"left\";\n this._canvasJSContainer.style.cursor = \"auto\";\n r || (this._canvasJSContainer.style.height = \"0px\");\n this.container.appendChild(this._canvasJSContainer);\n this.canvas = ta(c, e);\n this._preRenderCanvas = ta(c, e);\n this.canvas.style.position = \"absolute\";\n this.canvas.style.WebkitUserSelect = \"none\";\n this.canvas.style.MozUserSelect = \"none\";\n this.canvas.style.msUserSelect = \"none\";\n this.canvas.style.userSelect = \"none\";\n this.canvas.getContext && (this._canvasJSContainer.appendChild(this.canvas), this.ctx = this.canvas.getContext(\"2d\"), this.ctx.textBaseline = \"top\", Ea(this.ctx), this._preRenderCtx = this._preRenderCanvas.getContext(\"2d\"), this._preRenderCtx.textBaseline = \"top\", Ea(this._preRenderCtx),\n r ? this.plotArea.ctx = this.ctx : (this.plotArea.canvas = ta(c, e), this.plotArea.canvas.style.position = \"absolute\", this.plotArea.canvas.setAttribute(\"class\", \"plotAreaCanvas\"), this._canvasJSContainer.appendChild(this.plotArea.canvas), this.plotArea.ctx = this.plotArea.canvas.getContext(\"2d\")), this.overlaidCanvas = ta(c, e), this.overlaidCanvas.style.position = \"absolute\", this.overlaidCanvas.style.webkitTapHighlightColor = \"transparent\", this.overlaidCanvas.style.WebkitUserSelect = \"none\", this.overlaidCanvas.style.MozUserSelect =\n \"none\", this.overlaidCanvas.style.msUserSelect = \"none\", this.overlaidCanvas.style.userSelect = \"none\", this.overlaidCanvas.getContext && (this._canvasJSContainer.appendChild(this.overlaidCanvas), this.overlaidCanvasCtx = this.overlaidCanvas.getContext(\"2d\"), this.overlaidCanvasCtx.textBaseline = \"top\", Ea(this.overlaidCanvasCtx)), this._eventManager = new ha(this), this.windowResizeHandler = O(window, \"resize\", function () {\n b._updateSize() && b.render()\n }, this.allDOMEventHandlers), this._toolBar = document.createElement(\"div\"),\n this._toolBar.setAttribute(\"class\", \"canvasjs-chart-toolbar\"), this._toolBar.style.cssText = \"position: absolute; right: 1px; top: 1px;\", this._canvasJSContainer.appendChild(this._toolBar), this.bounds = {\n x1: 0,\n y1: 0,\n x2: this.width,\n y2: this.height\n }, O(this.overlaidCanvas, \"click\", function (a) {\n b._mouseEventHandler(a)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, \"mousemove\", function (a) {\n b._mouseEventHandler(a)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, \"mouseup\", function (a) {\n b._mouseEventHandler(a)\n }, this.allDOMEventHandlers),\n O(this.overlaidCanvas, \"mousedown\", function (a) {\n b._mouseEventHandler(a);\n va(b._dropdownMenu)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, \"mouseout\", function (a) {\n b._mouseEventHandler(a)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, window.navigator.msPointerEnabled ? \"MSPointerDown\" : \"touchstart\", function (a) {\n b._touchEventHandler(a)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, window.navigator.msPointerEnabled ? \"MSPointerMove\" : \"touchmove\", function (a) {\n b._touchEventHandler(a)\n }, this.allDOMEventHandlers),\n O(this.overlaidCanvas, window.navigator.msPointerEnabled ? \"MSPointerUp\" : \"touchend\", function (a) {\n b._touchEventHandler(a)\n }, this.allDOMEventHandlers), O(this.overlaidCanvas, window.navigator.msPointerEnabled ? \"MSPointerCancel\" : \"touchcancel\", function (a) {\n b._touchEventHandler(a)\n }, this.allDOMEventHandlers), this.toolTip = new $(this, this.options.toolTip), this.data = null, this.axisX = [], this.axisX2 = [], this.axisY = [], this.axisY2 = [], this.sessionVariables = {\n axisX: [],\n axisX2: [],\n axisY: [],\n axisY2: []\n })\n } else window.console && window.console.log('CanvasJS Error: Chart Container with id \"' +\n this._containerId + '\" was not found')\n }\n\n function v(a, d) {\n for (var b = [], c, e = 0; e < a.length; e++)\n if (0 == e) b.push(a[0]);\n else {\n var g, m, l;\n l = e - 1;\n g = 0 === l ? 0 : l - 1;\n m = l === a.length - 1 ? l : l + 1;\n c = Math.abs((a[m].x - a[g].x) / (0 === a[m].x - a[l].x ? 0.01 : a[m].x - a[l].x)) * (d - 1) / 2 + 1;\n var w = (a[m].x - a[g].x) / c;\n c = (a[m].y - a[g].y) / c;\n b[b.length] = a[l].x > a[g].x && 0 < w || a[l].x < a[g].x && 0 > w ? {\n x: a[l].x + w / 3,\n y: a[l].y + c / 3\n } : {\n x: a[l].x,\n y: a[l].y + c / 9\n };\n l = e;\n g = 0 === l ? 0 : l - 1;\n m = l === a.length - 1 ? l : l + 1;\n c = Math.abs((a[m].x - a[g].x) / (0 === a[l].x - a[g].x ? 0.01 : a[l].x - a[g].x)) * (d -\n 1) / 2 + 1;\n w = (a[m].x - a[g].x) / c;\n c = (a[m].y - a[g].y) / c;\n b[b.length] = a[l].x > a[g].x && 0 < w || a[l].x < a[g].x && 0 > w ? {\n x: a[l].x - w / 3,\n y: a[l].y - c / 3\n } : {\n x: a[l].x,\n y: a[l].y - c / 9\n };\n b[b.length] = a[e]\n } return b\n }\n\n function E(a, d, b, c, e, g, m, l, w, h) {\n var s = 0;\n h ? (m.color = g, l.color = g) : h = 1;\n s = w ? Math.abs(e - b) : Math.abs(c - d);\n s = 0 < m.trimLength ? Math.abs(s * m.trimLength / 100) : Math.abs(s - m.length);\n w ? (b += s / 2, e -= s / 2) : (d += s / 2, c -= s / 2);\n var s = 1 === Math.round(m.thickness) % 2 ? 0.5 : 0,\n q = 1 === Math.round(l.thickness) % 2 ? 0.5 : 0;\n a.save();\n a.globalAlpha = h;\n a.strokeStyle = l.color ||\n g;\n a.lineWidth = l.thickness || 2;\n a.setLineDash && a.setLineDash(R(l.dashType, l.thickness));\n a.beginPath();\n w && 0 < l.thickness ? (a.moveTo(c - m.thickness / 2, Math.round((b + e) / 2) - q), a.lineTo(d + m.thickness / 2, Math.round((b + e) / 2) - q)) : 0 < l.thickness && (a.moveTo(Math.round((d + c) / 2) - q, b + m.thickness / 2), a.lineTo(Math.round((d + c) / 2) - q, e - m.thickness / 2));\n a.stroke();\n a.strokeStyle = m.color || g;\n a.lineWidth = m.thickness || 2;\n a.setLineDash && a.setLineDash(R(m.dashType, m.thickness));\n a.beginPath();\n w && 0 < m.thickness ? (a.moveTo(c - s, b), a.lineTo(c -\n s, e), a.moveTo(d + s, b), a.lineTo(d + s, e)) : 0 < m.thickness && (a.moveTo(d, b + s), a.lineTo(c, b + s), a.moveTo(d, e - s), a.lineTo(c, e - s));\n a.stroke();\n a.restore()\n }\n\n function I(a, d, b, c, e) {\n if (null === a || \"undefined\" === typeof a) return \"undefined\" === typeof b ? d : b;\n a = parseFloat(a.toString()) * (0 <= a.toString().indexOf(\"%\") ? d / 100 : 1);\n \"undefined\" !== typeof c && (a = Math.min(c, a), \"undefined\" !== typeof e && (a = Math.max(e, a)));\n return !isNaN(a) && a <= d && 0 <= a ? a : \"undefined\" === typeof b ? d : b\n }\n\n function H(a, d) {\n H.base.constructor.call(this, \"Legend\", \"legend\",\n d, null, a);\n this.chart = a;\n this.canvas = a.canvas;\n this.ctx = this.chart.ctx;\n this.ghostCtx = this.chart._eventManager.ghostCtx;\n this.items = [];\n this.optionsName = \"legend\";\n this.height = this.width = 0;\n this.orientation = null;\n this.dataSeries = [];\n this.bounds = {\n x1: null,\n y1: null,\n x2: null,\n y2: null\n };\n \"undefined\" === typeof this.options.fontSize && (this.fontSize = this.chart.getAutoFontSize(this.fontSize));\n this.lineHeight = Za(this.fontFamily, this.fontSize, this.fontWeight);\n this.horizontalSpacing = this.fontSize\n }\n\n function F(a, d, b, c) {\n F.base.constructor.call(this,\n \"DataSeries\", \"data\", d, b, a);\n this.chart = a;\n this.canvas = a.canvas;\n this._ctx = a.canvas.ctx;\n this.index = b;\n this.noDataPointsInPlotArea = 0;\n this.id = c;\n this.chart._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataSeries\",\n dataSeriesIndex: b\n };\n a = d.dataPoints ? d.dataPoints.length : 0;\n this.dataPointEOs = [];\n for (d = 0; d < a; d++) this.dataPointEOs[d] = {};\n this.dataPointIds = [];\n this.plotUnit = [];\n this.axisY = this.axisX = null;\n this.optionsName = \"data\";\n this.isOptionsInArray = !0;\n null === this.fillOpacity && (this.type.match(/area/i) ? this.fillOpacity =\n 0.7 : this.fillOpacity = 1);\n this.axisPlacement = this.getDefaultAxisPlacement();\n \"undefined\" === typeof this.options.indexLabelFontSize && (this.indexLabelFontSize = this.chart.getAutoFontSize(this.indexLabelFontSize))\n }\n\n function z(a, d, b, c, e, g) {\n z.base.constructor.call(this, \"Axis\", d, b, c, a);\n this.chart = a;\n this.canvas = a.canvas;\n this.ctx = a.ctx;\n this.intervalStartPosition = this.maxHeight = this.maxWidth = 0;\n this.labels = [];\n this.dataSeries = [];\n this._stripLineLabels = this._ticks = this._labels = null;\n this.dataInfo = {\n min: Infinity,\n max: -Infinity,\n viewPortMin: Infinity,\n viewPortMax: -Infinity,\n minDiff: Infinity\n };\n this.isOptionsInArray = !0;\n \"axisX\" === e ? (\"left\" === g || \"bottom\" === g ? (this.optionsName = \"axisX\", u(this.chart.sessionVariables.axisX[c]) && (this.chart.sessionVariables.axisX[c] = {}), this.sessionVariables = this.chart.sessionVariables.axisX[c]) : (this.optionsName = \"axisX2\", u(this.chart.sessionVariables.axisX2[c]) && (this.chart.sessionVariables.axisX2[c] = {}), this.sessionVariables = this.chart.sessionVariables.axisX2[c]), this.options.interval || (this.intervalType =\n null)) : \"left\" === g || \"bottom\" === g ? (this.optionsName = \"axisY\", u(this.chart.sessionVariables.axisY[c]) && (this.chart.sessionVariables.axisY[c] = {}), this.sessionVariables = this.chart.sessionVariables.axisY[c]) : (this.optionsName = \"axisY2\", u(this.chart.sessionVariables.axisY2[c]) && (this.chart.sessionVariables.axisY2[c] = {}), this.sessionVariables = this.chart.sessionVariables.axisY2[c]);\n \"undefined\" === typeof this.options.titleFontSize && (this.titleFontSize = this.chart.getAutoFontSize(this.titleFontSize));\n \"undefined\" ===\n typeof this.options.labelFontSize && (this.labelFontSize = this.chart.getAutoFontSize(this.labelFontSize));\n this.type = e;\n \"axisX\" !== e || b && \"undefined\" !== typeof b.gridThickness || (this.gridThickness = 0);\n this._position = g;\n this.lineCoordinates = {\n x1: null,\n y1: null,\n x2: null,\n y2: null,\n width: null\n };\n this.labelAngle = (this.labelAngle % 360 + 360) % 360;\n 90 < this.labelAngle && 270 > this.labelAngle ? this.labelAngle -= 180 : 270 <= this.labelAngle && 360 >= this.labelAngle && (this.labelAngle -= 360);\n this.options.scaleBreaks && (this.scaleBreaks = new Q(this.chart,\n this.options.scaleBreaks, ++this.chart._eventManager.lastObjectId, this));\n this.stripLines = [];\n if (this.options.stripLines && 0 < this.options.stripLines.length)\n for (a = 0; a < this.options.stripLines.length; a++) this.stripLines.push(new X(this.chart, this.options.stripLines[a], a, ++this.chart._eventManager.lastObjectId, this));\n this.options.crosshair && (this.crosshair = new fa(this.chart, this.options.crosshair, this));\n this._titleTextBlock = null;\n this.hasOptionChanged(\"viewportMinimum\") && null === this.viewportMinimum && (this.options.viewportMinimum =\n void 0, this.sessionVariables.viewportMinimum = null);\n this.hasOptionChanged(\"viewportMinimum\") || isNaN(this.sessionVariables.newViewportMinimum) || null === this.sessionVariables.newViewportMinimum ? this.sessionVariables.newViewportMinimum = null : this.viewportMinimum = this.sessionVariables.newViewportMinimum;\n this.hasOptionChanged(\"viewportMaximum\") && null === this.viewportMaximum && (this.options.viewportMaximum = void 0, this.sessionVariables.viewportMaximum = null);\n this.hasOptionChanged(\"viewportMaximum\") || isNaN(this.sessionVariables.newViewportMaximum) ||\n null === this.sessionVariables.newViewportMaximum ? this.sessionVariables.newViewportMaximum = null : this.viewportMaximum = this.sessionVariables.newViewportMaximum;\n null !== this.minimum && null !== this.viewportMinimum && (this.viewportMinimum = Math.max(this.viewportMinimum, this.minimum));\n null !== this.maximum && null !== this.viewportMaximum && (this.viewportMaximum = Math.min(this.viewportMaximum, this.maximum));\n this.trackChanges(\"viewportMinimum\");\n this.trackChanges(\"viewportMaximum\")\n }\n\n function Q(a, d, b, c) {\n Q.base.constructor.call(this,\n \"ScaleBreaks\", \"scaleBreaks\", d, null, c);\n this.id = b;\n this.chart = a;\n this.ctx = this.chart.ctx;\n this.axis = c;\n this.optionsName = \"scaleBreaks\";\n this.isOptionsInArray = !1;\n this._appliedBreaks = [];\n this.customBreaks = [];\n this.autoBreaks = [];\n \"string\" === typeof this.spacing ? (this.spacing = parseFloat(this.spacing), this.spacing = isNaN(this.spacing) ? 8 : (10 < this.spacing ? 10 : this.spacing) + \"%\") : \"number\" !== typeof this.spacing && (this.spacing = 8);\n this.autoCalculate && (this.maxNumberOfAutoBreaks = Math.min(this.maxNumberOfAutoBreaks, 5));\n if (this.options.customBreaks &&\n 0 < this.options.customBreaks.length) {\n for (a = 0; a < this.options.customBreaks.length; a++) this.customBreaks.push(new L(this.chart, \"customBreaks\", this.options.customBreaks[a], a, ++this.chart._eventManager.lastObjectId, this)), \"number\" === typeof this.customBreaks[a].startValue && (\"number\" === typeof this.customBreaks[a].endValue && this.customBreaks[a].endValue !== this.customBreaks[a].startValue) && this._appliedBreaks.push(this.customBreaks[a]);\n this._appliedBreaks.sort(function (a, c) {\n return a.startValue - c.startValue\n });\n for (a = 0; a < this._appliedBreaks.length - 1; a++) this._appliedBreaks[a].endValue >= this._appliedBreaks[a + 1].startValue && (this._appliedBreaks[a].endValue = Math.max(this._appliedBreaks[a].endValue, this._appliedBreaks[a + 1].endValue), window.console && window.console.log(\"CanvasJS Error: Breaks \" + a + \" and \" + (a + 1) + \" are overlapping.\"), this._appliedBreaks.splice(a, 2), a--)\n }\n }\n\n function L(a, d, b, c, e, g) {\n L.base.constructor.call(this, \"Break\", d, b, c, g);\n this.id = e;\n this.chart = a;\n this.ctx = this.chart.ctx;\n this.scaleBreaks = g;\n this.optionsName =\n d;\n this.isOptionsInArray = !0;\n this.type = b.type ? this.type : g.type;\n this.fillOpacity = u(b.fillOpacity) ? g.fillOpacity : this.fillOpacity;\n this.lineThickness = u(b.lineThickness) ? g.lineThickness : this.lineThickness;\n this.color = b.color ? this.color : g.color;\n this.lineColor = b.lineColor ? this.lineColor : g.lineColor;\n this.lineDashType = b.lineDashType ? this.lineDashType : g.lineDashType;\n !u(this.startValue) && this.startValue.getTime && (this.startValue = this.startValue.getTime());\n !u(this.endValue) && this.endValue.getTime && (this.endValue =\n this.endValue.getTime());\n \"number\" === typeof this.startValue && (\"number\" === typeof this.endValue && this.endValue < this.startValue) && (a = this.startValue, this.startValue = this.endValue, this.endValue = a);\n this.spacing = \"undefined\" === typeof b.spacing ? g.spacing : b.spacing;\n \"string\" === typeof this.options.spacing ? (this.spacing = parseFloat(this.spacing), this.spacing = isNaN(this.spacing) ? 0 : (10 < this.spacing ? 10 : this.spacing) + \"%\") : \"number\" !== typeof this.options.spacing && (this.spacing = g.spacing);\n this.size = g.parent.logarithmic ?\n 1 : 0\n }\n\n function X(a, d, b, c, e) {\n X.base.constructor.call(this, \"StripLine\", \"stripLines\", d, b, e);\n this.id = c;\n this.chart = a;\n this.ctx = this.chart.ctx;\n this.label = this.label;\n this.axis = e;\n this.optionsName = \"stripLines\";\n this.isOptionsInArray = !0;\n this._thicknessType = \"pixel\";\n null !== this.startValue && null !== this.endValue && (this.value = e.logarithmic ? Math.sqrt((this.startValue.getTime ? this.startValue.getTime() : this.startValue) * (this.endValue.getTime ? this.endValue.getTime() : this.endValue)) : ((this.startValue.getTime ? this.startValue.getTime() :\n this.startValue) + (this.endValue.getTime ? this.endValue.getTime() : this.endValue)) / 2, this._thicknessType = null)\n }\n\n function fa(a, d, b) {\n fa.base.constructor.call(this, \"Crosshair\", \"crosshair\", d, null, b);\n this.chart = a;\n this.ctx = this.chart.ctx;\n this.axis = b;\n this.optionsName = \"crosshair\";\n this._thicknessType = \"pixel\"\n }\n\n function $(a, d) {\n $.base.constructor.call(this, \"ToolTip\", \"toolTip\", d, null, a);\n this.chart = a;\n this.canvas = a.canvas;\n this.ctx = this.chart.ctx;\n this.currentDataPointIndex = this.currentSeriesIndex = -1;\n this._prevY = this._prevX =\n NaN;\n this.containerTransitionDuration = 0.1;\n this.mozContainerTransition = this.getContainerTransition(this.containerTransitionDuration);\n this.optionsName = \"toolTip\";\n this._initialize()\n }\n\n function ha(a) {\n this.chart = a;\n this.lastObjectId = 0;\n this.objectMap = [];\n this.rectangularRegionEventSubscriptions = [];\n this.previousDataPointEventObject = null;\n this.ghostCanvas = ta(this.chart.width, this.chart.height);\n this.ghostCtx = this.ghostCanvas.getContext(\"2d\");\n this.mouseoveredObjectMaps = []\n }\n\n function ga(a) {\n this.chart = a;\n this.ctx = this.chart.plotArea.ctx;\n this.animations = [];\n this.animationRequestId = null\n }\n qa(p, V);\n p.prototype.destroy = function () {\n var a = this.allDOMEventHandlers;\n this._animator && this._animator.cancelAllAnimations();\n this._panTimerId && clearTimeout(this._panTimerId);\n for (var d = 0; d < a.length; d++) {\n var b = a[d][0],\n c = a[d][1],\n e = a[d][2],\n g = a[d][3],\n g = g || !1;\n b.removeEventListener ? b.removeEventListener(c, e, g) : b.detachEvent && b.detachEvent(\"on\" + c, e)\n }\n this.allDOMEventHandlers = [];\n for (this.removeAllEventListeners(); this._canvasJSContainer && this._canvasJSContainer.hasChildNodes();) this._canvasJSContainer.removeChild(this._canvasJSContainer.lastChild);\n for (; this.container && this.container.hasChildNodes();) this.container.removeChild(this.container.lastChild);\n for (; this._dropdownMenu && this._dropdownMenu.hasChildNodes();) this._dropdownMenu.removeChild(this._dropdownMenu.lastChild);\n this.overlaidCanvas = this.canvas = this.container = this._canvasJSContainer = null;\n this._toolBar = this._dropdownMenu = this._menuButton = this._resetButton = this._zoomButton = this._breaksCanvas = this._preRenderCanvas = this.toolTip.container = null\n };\n p.prototype._updateOptions = function () {\n var a =\n this;\n this.updateOption(\"width\");\n this.updateOption(\"height\");\n this.updateOption(\"dataPointWidth\");\n this.updateOption(\"dataPointMinWidth\");\n this.updateOption(\"dataPointMaxWidth\");\n this.updateOption(\"interactivityEnabled\");\n this.updateOption(\"theme\");\n this.updateOption(\"colorSet\") && (this._selectedColorSet = \"undefined\" !== typeof Ba[this.colorSet] ? Ba[this.colorSet] : Ba.colorSet1);\n this.updateOption(\"backgroundColor\");\n this.backgroundColor || (this.backgroundColor = \"rgba(0,0,0,0)\");\n this.updateOption(\"culture\");\n this._cultureInfo =\n new La(this.options.culture);\n this.updateOption(\"animationEnabled\");\n this.animationEnabled = this.animationEnabled && r;\n this.updateOption(\"animationDuration\");\n this.updateOption(\"rangeChanging\");\n this.updateOption(\"rangeChanged\");\n this.updateOption(\"exportEnabled\");\n this.updateOption(\"exportFileName\");\n this.updateOption(\"zoomType\");\n if (this.options.zoomEnabled) {\n if (!this._zoomButton) {\n var d = !1;\n va(this._zoomButton = document.createElement(\"button\"));\n ua(this, this._zoomButton, \"pan\");\n this._toolBar.appendChild(this._zoomButton);\n this._zoomButton.style.borderRight = this.toolbar.borderThickness + \"px solid \" + this.toolbar.borderColor;\n O(this._zoomButton, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers);\n O(this._zoomButton, \"click\", function () {\n a.zoomEnabled ? (a.zoomEnabled = !1, a.panEnabled = !0, ua(a, a._zoomButton, \"zoom\")) : (a.zoomEnabled = !0, a.panEnabled = !1, ua(a, a._zoomButton, \"pan\"));\n a.render()\n }, this.allDOMEventHandlers);\n O(this._zoomButton, \"mouseover\", function () {\n d ? d = !1 : (sa(a, a._zoomButton, {\n backgroundColor: a.toolbar.backgroundColorOnHover,\n color: a.toolbar.fontColorOnHover,\n transition: \"0.4s\",\n WebkitTransition: \"0.4s\"\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._zoomButton.childNodes[0], {\n WebkitFilter: \"invert(100%)\",\n filter: \"invert(100%)\"\n }))\n }, this.allDOMEventHandlers);\n O(this._zoomButton, \"mouseout\", function () {\n d || (sa(a, a._zoomButton, {\n backgroundColor: a.toolbar.backgroundColor,\n color: a.toolbar.fontColor,\n transition: \"0.4s\",\n WebkitTransition: \"0.4s\"\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._zoomButton.childNodes[0], {\n WebkitFilter: \"invert(0%)\",\n filter: \"invert(0%)\"\n }))\n }, this.allDOMEventHandlers)\n }\n this._resetButton || (d = !1, va(this._resetButton = document.createElement(\"button\")), ua(this, this._resetButton, \"reset\"), this._resetButton.style.borderRight = (this.exportEnabled ? this.toolbar.borderThickness : 0) + \"px solid \" + this.toolbar.borderColor, this._toolBar.appendChild(this._resetButton), O(this._resetButton, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers), O(this._resetButton, \"click\", function () {\n a.toolTip.hide();\n a.zoomEnabled || a.panEnabled ? (a.zoomEnabled = !0, a.panEnabled = !1, ua(a, a._zoomButton, \"pan\"), a._defaultCursor = \"default\", a.overlaidCanvas.style.cursor = a._defaultCursor) : (a.zoomEnabled = !1, a.panEnabled = !1);\n if (a.sessionVariables.axisX)\n for (var c = 0; c < a.sessionVariables.axisX.length; c++) a.sessionVariables.axisX[c].newViewportMinimum = null, a.sessionVariables.axisX[c].newViewportMaximum = null;\n if (a.sessionVariables.axisX2)\n for (c = 0; c < a.sessionVariables.axisX2.length; c++) a.sessionVariables.axisX2[c].newViewportMinimum = null, a.sessionVariables.axisX2[c].newViewportMaximum =\n null;\n if (a.sessionVariables.axisY)\n for (c = 0; c < a.sessionVariables.axisY.length; c++) a.sessionVariables.axisY[c].newViewportMinimum = null, a.sessionVariables.axisY[c].newViewportMaximum = null;\n if (a.sessionVariables.axisY2)\n for (c = 0; c < a.sessionVariables.axisY2.length; c++) a.sessionVariables.axisY2[c].newViewportMinimum = null, a.sessionVariables.axisY2[c].newViewportMaximum = null;\n a.resetOverlayedCanvas();\n va(a._zoomButton, a._resetButton);\n a._dispatchRangeEvent(\"rangeChanging\", \"reset\");\n a.render();\n a._dispatchRangeEvent(\"rangeChanged\",\n \"reset\");\n a.syncCharts && a.syncCharts(null, null)\n }, this.allDOMEventHandlers), O(this._resetButton, \"mouseover\", function () {\n d || (sa(a, a._resetButton, {\n backgroundColor: a.toolbar.backgroundColorOnHover,\n color: a.toolbar.hoverFfontColorOnHoverontColor,\n transition: \"0.4s\",\n WebkitTransition: \"0.4s\"\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._resetButton.childNodes[0], {\n WebkitFilter: \"invert(100%)\",\n filter: \"invert(100%)\"\n }))\n }, this.allDOMEventHandlers), O(this._resetButton, \"mouseout\", function () {\n d || (sa(a, a._resetButton, {\n backgroundColor: a.toolbar.backgroundColor,\n color: a.toolbar.fontColor,\n transition: \"0.4s\",\n WebkitTransition: \"0.4s\"\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._resetButton.childNodes[0], {\n WebkitFilter: \"invert(0%)\",\n filter: \"invert(0%)\"\n }))\n }, this.allDOMEventHandlers), this.overlaidCanvas.style.cursor = a._defaultCursor);\n this.zoomEnabled || this.panEnabled || (this._zoomButton ? (a._zoomButton.getAttribute(\"state\") === a._cultureInfo.zoomText ? (this.panEnabled = !0, this.zoomEnabled = !1) : (this.zoomEnabled = !0, this.panEnabled = !1), Qa(a._zoomButton, a._resetButton)) : (this.zoomEnabled = !0, this.panEnabled = !1))\n } else this.panEnabled = this.zoomEnabled = !1;\n this._menuButton ? this.exportEnabled ? Qa(this._menuButton) : va(this._menuButton) : this.exportEnabled && r && (d = !1, this._menuButton = document.createElement(\"button\"), ua(this, this._menuButton, \"menu\"), this._toolBar.appendChild(this._menuButton), O(this._menuButton, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers), O(this._menuButton, \"click\", function () {\n \"none\" !== a._dropdownMenu.style.display ||\n a._dropDownCloseTime && 500 >= (new Date).getTime() - a._dropDownCloseTime.getTime() || (a._dropdownMenu.style.display = \"block\", a._menuButton.blur(), a._dropdownMenu.focus())\n }, this.allDOMEventHandlers, !0), O(this._menuButton, \"mouseover\", function () {\n d || (sa(a, a._menuButton, {\n backgroundColor: a.toolbar.backgroundColorOnHover,\n color: a.toolbar.fontColorOnHover\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._menuButton.childNodes[0], {\n WebkitFilter: \"invert(100%)\",\n filter: \"invert(100%)\"\n }))\n }, this.allDOMEventHandlers, !0),\n O(this._menuButton, \"mouseout\", function () {\n d || (sa(a, a._menuButton, {\n backgroundColor: a.toolbar.backgroundColor,\n color: a.toolbar.fontColor\n }), 0 >= navigator.userAgent.search(\"MSIE\") && sa(a, a._menuButton.childNodes[0], {\n WebkitFilter: \"invert(0%)\",\n filter: \"invert(0%)\"\n }))\n }, this.allDOMEventHandlers, !0));\n if (!this._dropdownMenu && this.exportEnabled && r) {\n d = !1;\n this._dropdownMenu = document.createElement(\"div\");\n this._dropdownMenu.setAttribute(\"tabindex\", -1);\n var b = -1 !== this.theme.indexOf(\"dark\") ? \"black\" : \"#888888\";\n this._dropdownMenu.style.cssText =\n \"position: absolute; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; cursor: pointer;right: 0px;top: 25px;min-width: 120px;outline: 0;font-size: 14px; font-family: Arial, Helvetica, sans-serif;padding: 5px 0px 5px 0px;text-align: left;line-height: 10px;background-color:\" + this.toolbar.backgroundColor + \";box-shadow: 2px 2px 10px \" + b;\n a._dropdownMenu.style.display = \"none\";\n this._toolBar.appendChild(this._dropdownMenu);\n O(this._dropdownMenu, \"blur\", function () {\n va(a._dropdownMenu);\n a._dropDownCloseTime = new Date\n }, this.allDOMEventHandlers, !0);\n b = document.createElement(\"div\");\n b.style.cssText = \"padding: 12px 8px 12px 8px\";\n b.innerHTML = this._cultureInfo.printText;\n b.style.backgroundColor = this.toolbar.backgroundColor;\n b.style.color = this.toolbar.fontColor;\n this._dropdownMenu.appendChild(b);\n O(b, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers);\n O(b, \"mouseover\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColorOnHover, this.style.color = a.toolbar.fontColorOnHover)\n }, this.allDOMEventHandlers,\n !0);\n O(b, \"mouseout\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColor, this.style.color = a.toolbar.fontColor)\n }, this.allDOMEventHandlers, !0);\n O(b, \"click\", function () {\n a.print();\n va(a._dropdownMenu)\n }, this.allDOMEventHandlers, !0);\n b = document.createElement(\"div\");\n b.style.cssText = \"padding: 12px 8px 12px 8px\";\n b.innerHTML = this._cultureInfo.saveJPGText;\n b.style.backgroundColor = this.toolbar.backgroundColor;\n b.style.color = this.toolbar.fontColor;\n this._dropdownMenu.appendChild(b);\n O(b, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers);\n O(b, \"mouseover\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColorOnHover, this.style.color = a.toolbar.fontColorOnHover)\n }, this.allDOMEventHandlers, !0);\n O(b, \"mouseout\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColor, this.style.color = a.toolbar.fontColor)\n }, this.allDOMEventHandlers, !0);\n O(b, \"click\", function () {\n Ta(a.canvas, \"jpeg\", a.exportFileName);\n va(a._dropdownMenu)\n }, this.allDOMEventHandlers, !0);\n b = document.createElement(\"div\");\n b.style.cssText =\n \"padding: 12px 8px 12px 8px\";\n b.innerHTML = this._cultureInfo.savePNGText;\n b.style.backgroundColor = this.toolbar.backgroundColor;\n b.style.color = this.toolbar.fontColor;\n this._dropdownMenu.appendChild(b);\n O(b, \"touchstart\", function (a) {\n d = !0\n }, this.allDOMEventHandlers);\n O(b, \"mouseover\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColorOnHover, this.style.color = a.toolbar.fontColorOnHover)\n }, this.allDOMEventHandlers, !0);\n O(b, \"mouseout\", function () {\n d || (this.style.backgroundColor = a.toolbar.backgroundColor,\n this.style.color = a.toolbar.fontColor)\n }, this.allDOMEventHandlers, !0);\n O(b, \"click\", function () {\n Ta(a.canvas, \"png\", a.exportFileName);\n va(a._dropdownMenu)\n }, this.allDOMEventHandlers, !0)\n }\n \"none\" !== this._toolBar.style.display && this._zoomButton && (this.panEnabled ? ua(a, a._zoomButton, \"zoom\") : ua(a, a._zoomButton, \"pan\"), a._resetButton.getAttribute(\"state\") !== a._cultureInfo.resetText && ua(a, a._resetButton, \"reset\"));\n this.options.toolTip && this.toolTip.options !== this.options.toolTip && (this.toolTip.options = this.options.toolTip);\n for (var c in this.toolTip.options) this.toolTip.options.hasOwnProperty(c) && this.toolTip.updateOption(c)\n };\n p.prototype._updateSize = function () {\n var a;\n a = [this.canvas, this._preRenderCanvas, this.overlaidCanvas, this._eventManager.ghostCanvas];\n var d = 0,\n b = 0;\n this.options.width ? d = this.width : this.width = d = 0 < this.container.clientWidth ? this.container.clientWidth : this.width;\n this.options.height ? b = this.height : this.height = b = 0 < this.container.clientHeight ? this.container.clientHeight : this.height;\n if (this.canvas.width !== d *\n W || this.canvas.height !== b * W) {\n for (var c = 0; c < a.length; c++) Oa(a[c], d, b);\n a = !0\n } else a = !1;\n return a\n };\n p.prototype._initialize = function () {\n this.isNavigator = u(this.parent) || u(this.parent._defaultsKey) || \"Navigator\" !== this.parent._defaultsKey ? !1 : !0;\n this.toolbar = new Va(this, this.options.toolbar);\n this._animator ? this._animator.cancelAllAnimations() : this._animator = new ga(this);\n this.removeAllEventListeners();\n this.disableToolTip = !1;\n this._axes = [];\n this.funnelPyramidClickHandler = this.pieDoughnutClickHandler = null;\n this._updateOptions();\n this.animatedRender = r && this.animationEnabled && 0 === this.renderCount;\n this._updateSize();\n this.clearCanvas();\n this.ctx.beginPath();\n this.axisX = [];\n this.axisX2 = [];\n this.axisY = [];\n this.axisY2 = [];\n this._indexLabels = [];\n this._dataInRenderedOrder = [];\n this._events = [];\n this._eventManager && this._eventManager.reset();\n this.plotInfo = {\n axisPlacement: null,\n plotTypes: []\n };\n this.layoutManager = new Ga(0, 0, this.width, this.height, this.isNavigator ? 0 : 2);\n this.plotArea.layoutManager && this.plotArea.layoutManager.reset();\n this.data = [];\n var a =\n 0,\n d = null;\n if (this.options.data) {\n for (var b = 0; b < this.options.data.length; b++)\n if (a++, !this.options.data[b].type || 0 <= p._supportedChartTypes.indexOf(this.options.data[b].type)) {\n var c = new F(this, this.options.data[b], a - 1, ++this._eventManager.lastObjectId);\n \"error\" === c.type && (c.linkedDataSeriesIndex = u(this.options.data[b].linkedDataSeriesIndex) ? b - 1 : this.options.data[b].linkedDataSeriesIndex, 0 > c.linkedDataSeriesIndex || c.linkedDataSeriesIndex >= this.options.data.length || \"number\" !== typeof c.linkedDataSeriesIndex ||\n \"error\" === this.options.data[c.linkedDataSeriesIndex].type) && (c.linkedDataSeriesIndex = null);\n null === c.name && (c.name = \"DataSeries \" + a);\n null === c.color ? 1 < this.options.data.length ? (c._colorSet = [this._selectedColorSet[c.index % this._selectedColorSet.length]], c.color = this._selectedColorSet[c.index % this._selectedColorSet.length]) : c._colorSet = \"line\" === c.type || \"stepLine\" === c.type || \"spline\" === c.type || \"area\" === c.type || \"stepArea\" === c.type || \"splineArea\" === c.type || \"stackedArea\" === c.type || \"stackedArea100\" === c.type ||\n \"rangeArea\" === c.type || \"rangeSplineArea\" === c.type || \"candlestick\" === c.type || \"ohlc\" === c.type || \"waterfall\" === c.type || \"boxAndWhisker\" === c.type ? [this._selectedColorSet[0]] : this._selectedColorSet : c._colorSet = [c.color];\n null === c.markerSize && ((\"line\" === c.type || \"stepLine\" === c.type || \"spline\" === c.type || 0 <= c.type.toLowerCase().indexOf(\"area\")) && c.dataPoints && c.dataPoints.length < this.width / 16 || \"scatter\" === c.type) && (c.markerSize = 8);\n \"bubble\" !== c.type && \"scatter\" !== c.type || !c.dataPoints || (c.dataPoints.some ? c.dataPoints.some(function (a) {\n return a.x\n }) &&\n c.dataPoints.sort(k) : c.dataPoints.sort(k));\n this.data.push(c);\n var e = c.axisPlacement,\n d = d || e,\n g;\n \"normal\" === e ? \"xySwapped\" === this.plotInfo.axisPlacement ? g = 'You cannot combine \"' + c.type + '\" with bar chart' : \"none\" === this.plotInfo.axisPlacement ? g = 'You cannot combine \"' + c.type + '\" with pie chart' : null === this.plotInfo.axisPlacement && (this.plotInfo.axisPlacement = \"normal\") : \"xySwapped\" === e ? \"normal\" === this.plotInfo.axisPlacement ? g = 'You cannot combine \"' + c.type + '\" with line, area, column or pie chart' : \"none\" === this.plotInfo.axisPlacement ?\n g = 'You cannot combine \"' + c.type + '\" with pie chart' : null === this.plotInfo.axisPlacement && (this.plotInfo.axisPlacement = \"xySwapped\") : \"none\" === e ? \"normal\" === this.plotInfo.axisPlacement ? g = 'You cannot combine \"' + c.type + '\" with line, area, column or bar chart' : \"xySwapped\" === this.plotInfo.axisPlacement ? g = 'You cannot combine \"' + c.type + '\" with bar chart' : null === this.plotInfo.axisPlacement && (this.plotInfo.axisPlacement = \"none\") : null === e && \"none\" === this.plotInfo.axisPlacement && (g = 'You cannot combine \"' + c.type + '\" with pie chart');\n if (g && window.console) {\n window.console.log(g);\n return\n }\n } for (b = 0; b < this.data.length; b++) {\n if (\"none\" == d && \"error\" === this.data[b].type && window.console) {\n window.console.log('You cannot combine \"' + c.type + '\" with error chart');\n return\n }\n \"error\" === this.data[b].type && (this.data[b].axisPlacement = this.plotInfo.axisPlacement = d || \"normal\", this.data[b]._linkedSeries = null === this.data[b].linkedDataSeriesIndex ? null : this.data[this.data[b].linkedDataSeriesIndex])\n }\n }\n this._objectsInitialized = !0;\n this._plotAreaElements = []\n };\n p._supportedChartTypes =\n Fa(\"line stepLine spline column area stepArea splineArea bar bubble scatter stackedColumn stackedColumn100 stackedBar stackedBar100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeBar rangeArea rangeSplineArea pie doughnut funnel pyramid waterfall\".split(\" \"));\n p.prototype.setLayout = function () {\n for (var a = this._plotAreaElements, d = 0; d < this.data.length; d++)\n if (\"normal\" === this.plotInfo.axisPlacement || \"xySwapped\" === this.plotInfo.axisPlacement) {\n if (!this.data[d].axisYType ||\n \"primary\" === this.data[d].axisYType)\n if (this.options.axisY && 0 < this.options.axisY.length) {\n if (!this.axisY.length)\n for (var b = 0; b < this.options.axisY.length; b++) \"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY[b] = new z(this, \"axisY\", this.options.axisY[b], b, \"axisY\", \"left\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisY[b] = new z(this, \"axisY\", this.options.axisY[b], b, \"axisY\", \"bottom\"));\n this.data[d].axisY = this.axisY[0 <= this.data[d].axisYIndex && this.data[d].axisYIndex < this.axisY.length ?\n this.data[d].axisYIndex : 0];\n this.axisY[0 <= this.data[d].axisYIndex && this.data[d].axisYIndex < this.axisY.length ? this.data[d].axisYIndex : 0].dataSeries.push(this.data[d])\n } else this.axisY.length || (\"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY[0] = new z(this, \"axisY\", this.options.axisY, 0, \"axisY\", \"left\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisY[0] = new z(this, \"axisY\", this.options.axisY, 0, \"axisY\", \"bottom\"))), this.data[d].axisY = this.axisY[0], this.axisY[0].dataSeries.push(this.data[d]);\n if (\"secondary\" === this.data[d].axisYType)\n if (this.options.axisY2 && 0 < this.options.axisY2.length) {\n if (!this.axisY2.length)\n for (b = 0; b < this.options.axisY2.length; b++) \"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY2[b] = new z(this, \"axisY2\", this.options.axisY2[b], b, \"axisY\", \"right\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisY2[b] = new z(this, \"axisY2\", this.options.axisY2[b], b, \"axisY\", \"top\"));\n this.data[d].axisY = this.axisY2[0 <= this.data[d].axisYIndex && this.data[d].axisYIndex <\n this.axisY2.length ? this.data[d].axisYIndex : 0];\n this.axisY2[0 <= this.data[d].axisYIndex && this.data[d].axisYIndex < this.axisY2.length ? this.data[d].axisYIndex : 0].dataSeries.push(this.data[d])\n } else this.axisY2.length || (\"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisY2[0] = new z(this, \"axisY2\", this.options.axisY2, 0, \"axisY\", \"right\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisY2[0] = new z(this, \"axisY2\", this.options.axisY2, 0, \"axisY\", \"top\"))), this.data[d].axisY = this.axisY2[0],\n this.axisY2[0].dataSeries.push(this.data[d]);\n if (!this.data[d].axisXType || \"primary\" === this.data[d].axisXType)\n if (this.options.axisX && 0 < this.options.axisX.length) {\n if (!this.axisX.length)\n for (b = 0; b < this.options.axisX.length; b++) \"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisX[b] = new z(this, \"axisX\", this.options.axisX[b], b, \"axisX\", \"bottom\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisX[b] = new z(this, \"axisX\", this.options.axisX[b], b, \"axisX\", \"left\"));\n this.data[d].axisX =\n this.axisX[0 <= this.data[d].axisXIndex && this.data[d].axisXIndex < this.axisX.length ? this.data[d].axisXIndex : 0];\n this.axisX[0 <= this.data[d].axisXIndex && this.data[d].axisXIndex < this.axisX.length ? this.data[d].axisXIndex : 0].dataSeries.push(this.data[d])\n } else this.axisX.length || (\"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisX[0] = new z(this, \"axisX\", this.options.axisX, 0, \"axisX\", \"bottom\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisX[0] = new z(this, \"axisX\", this.options.axisX,\n 0, \"axisX\", \"left\"))), this.data[d].axisX = this.axisX[0], this.axisX[0].dataSeries.push(this.data[d]);\n if (\"secondary\" === this.data[d].axisXType)\n if (this.options.axisX2 && 0 < this.options.axisX2.length) {\n if (!this.axisX2.length)\n for (b = 0; b < this.options.axisX2.length; b++) \"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisX2[b] = new z(this, \"axisX2\", this.options.axisX2[b], b, \"axisX\", \"top\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisX2[b] = new z(this, \"axisX2\", this.options.axisX2[b],\n b, \"axisX\", \"right\"));\n this.data[d].axisX = this.axisX2[0 <= this.data[d].axisXIndex && this.data[d].axisXIndex < this.axisX2.length ? this.data[d].axisXIndex : 0];\n this.axisX2[0 <= this.data[d].axisXIndex && this.data[d].axisXIndex < this.axisX2.length ? this.data[d].axisXIndex : 0].dataSeries.push(this.data[d])\n } else this.axisX2.length || (\"normal\" === this.plotInfo.axisPlacement ? this._axes.push(this.axisX2[0] = new z(this, \"axisX2\", this.options.axisX2, 0, \"axisX\", \"top\")) : \"xySwapped\" === this.plotInfo.axisPlacement && this._axes.push(this.axisX2[0] =\n new z(this, \"axisX2\", this.options.axisX2, 0, \"axisX\", \"right\"))), this.data[d].axisX = this.axisX2[0], this.axisX2[0].dataSeries.push(this.data[d])\n } if (this.axisY) {\n for (b = 1; b < this.axisY.length; b++) \"undefined\" === typeof this.axisY[b].options.gridThickness && (this.axisY[b].gridThickness = 0);\n for (b = 0; b < this.axisY.length - 1; b++) \"undefined\" === typeof this.axisY[b].options.margin && (this.axisY[b].margin = 10)\n }\n if (this.axisY2) {\n for (b = 1; b < this.axisY2.length; b++) \"undefined\" === typeof this.axisY2[b].options.gridThickness && (this.axisY2[b].gridThickness =\n 0);\n for (b = 0; b < this.axisY2.length - 1; b++) \"undefined\" === typeof this.axisY2[b].options.margin && (this.axisY2[b].margin = 10)\n }\n this.axisY && 0 < this.axisY.length && (this.axisY2 && 0 < this.axisY2.length) && (0 < this.axisY[0].gridThickness && \"undefined\" === typeof this.axisY2[0].options.gridThickness ? this.axisY2[0].gridThickness = 0 : 0 < this.axisY2[0].gridThickness && \"undefined\" === typeof this.axisY[0].options.gridThickness && (this.axisY[0].gridThickness = 0));\n if (this.axisX)\n for (b = 0; b < this.axisX.length; b++) \"undefined\" === typeof this.axisX[b].options.gridThickness &&\n (this.axisX[b].gridThickness = 0);\n if (this.axisX2)\n for (b = 0; b < this.axisX2.length; b++) \"undefined\" === typeof this.axisX2[b].options.gridThickness && (this.axisX2[b].gridThickness = 0);\n this.axisX && 0 < this.axisX.length && (this.axisX2 && 0 < this.axisX2.length) && (0 < this.axisX[0].gridThickness && \"undefined\" === typeof this.axisX2[0].options.gridThickness ? this.axisX2[0].gridThickness = 0 : 0 < this.axisX2[0].gridThickness && \"undefined\" === typeof this.axisX[0].options.gridThickness && (this.axisX[0].gridThickness = 0));\n b = !1;\n if (0 < this._axes.length &&\n (this.zoomEnabled || this.panEnabled))\n for (d = 0; d < this._axes.length; d++)\n if (null !== this._axes[d].viewportMinimum || null !== this._axes[d].viewportMaximum) {\n b = !0;\n break\n } b ? (Qa(this._zoomButton, this._resetButton), this._toolBar.style.border = this.toolbar.borderThickness + \"px solid \" + this.toolbar.borderColor, this._zoomButton.style.borderRight = this.toolbar.borderThickness + \"px solid \" + this.toolbar.borderColor, this._resetButton.style.borderRight = (this.exportEnabled ? this.toolbar.borderThickness : 0) + \"px solid \" + this.toolbar.borderColor) :\n (va(this._zoomButton, this._resetButton), this._toolBar.style.border = this.toolbar.borderThickness + \"px solid transparent\", this.options.zoomEnabled && (this.zoomEnabled = !0, this.panEnabled = !1));\n gb(this);\n this._processData();\n this.options.title && (this.title = new Aa(this, this.options.title), this.title.dockInsidePlotArea ? a.push(this.title) : this.title.setLayout());\n this.subtitles = [];\n if (this.options.subtitles)\n for (d = 0; d < this.options.subtitles.length; d++) b = new Ka(this, this.options.subtitles[d], d), this.subtitles.push(b),\n b.dockInsidePlotArea ? a.push(b) : b.setLayout();\n this.legend = new H(this, this.options.legend);\n for (d = 0; d < this.data.length; d++)(this.data[d].showInLegend || \"pie\" === this.data[d].type || \"doughnut\" === this.data[d].type || \"funnel\" === this.data[d].type || \"pyramid\" === this.data[d].type) && this.legend.dataSeries.push(this.data[d]);\n this.legend.dockInsidePlotArea ? a.push(this.legend) : this.legend.setLayout();\n for (d = 0; d < this._axes.length; d++)\n if (this._axes[d].scaleBreaks && this._axes[d].scaleBreaks._appliedBreaks.length) {\n r ? (this._breaksCanvas =\n ta(this.width, this.height, !0), this._breaksCanvasCtx = this._breaksCanvas.getContext(\"2d\")) : (this._breaksCanvas = this.canvas, this._breaksCanvasCtx = this.ctx);\n break\n } this._preRenderCanvas = u(this._preRenderCanvas) ? ta(this.width, this.height) : this._preRenderCanvas;\n this._preRenderCtx = this._preRenderCanvas.getContext(\"2d\");\n \"normal\" !== this.plotInfo.axisPlacement && \"xySwapped\" !== this.plotInfo.axisPlacement || z.setLayout(this.axisX, this.axisX2, this.axisY, this.axisY2, this.plotInfo.axisPlacement, this.layoutManager.getFreeSpace())\n };\n p.prototype.renderElements = function () {\n var a = this._plotAreaElements;\n this.title && !this.title.dockInsidePlotArea && this.title.render();\n for (var d = 0; d < this.subtitles.length; d++) this.subtitles[d].dockInsidePlotArea || this.subtitles[d].render();\n this.legend.dockInsidePlotArea || this.legend.render();\n if (\"normal\" === this.plotInfo.axisPlacement || \"xySwapped\" === this.plotInfo.axisPlacement) z.render(this.axisX, this.axisX2, this.axisY, this.axisY2, this.plotInfo.axisPlacement);\n else if (\"none\" === this.plotInfo.axisPlacement) this.preparePlotArea();\n else return;\n for (d = 0; d < a.length; d++) a[d].setLayout(), a[d].render();\n var b = [];\n if (this.animatedRender) {\n var c = ta(this.width, this.height);\n c.getContext(\"2d\").drawImage(this.canvas, 0, 0, this.width, this.height)\n }\n hb(this);\n var a = this.ctx.miterLimit,\n e;\n this.ctx.miterLimit = 3;\n r && this._breaksCanvas && (this._preRenderCtx.drawImage(this.canvas, 0, 0, this.width, this.height), this._preRenderCtx.drawImage(this._breaksCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx.globalCompositeOperation = \"source-atop\", this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n 0, 0, this.width, this.height), this._preRenderCtx.clearRect(0, 0, this.width, this.height));\n for (d = 0; d < this.plotInfo.plotTypes.length; d++)\n for (var g = this.plotInfo.plotTypes[d], m = 0; m < g.plotUnits.length; m++) {\n var l = g.plotUnits[m],\n w = null;\n l.targetCanvas = null;\n this.animatedRender && (l.targetCanvas = ta(this.width, this.height), l.targetCanvasCtx = l.targetCanvas.getContext(\"2d\"), e = l.targetCanvasCtx.miterLimit, l.targetCanvasCtx.miterLimit = 3);\n \"line\" === l.type ? w = this.renderLine(l) : \"stepLine\" === l.type ? w = this.renderStepLine(l) :\n \"spline\" === l.type ? w = this.renderSpline(l) : \"column\" === l.type ? w = this.renderColumn(l) : \"bar\" === l.type ? w = this.renderBar(l) : \"area\" === l.type ? w = this.renderArea(l) : \"stepArea\" === l.type ? w = this.renderStepArea(l) : \"splineArea\" === l.type ? w = this.renderSplineArea(l) : \"stackedColumn\" === l.type ? w = this.renderStackedColumn(l) : \"stackedColumn100\" === l.type ? w = this.renderStackedColumn100(l) : \"stackedBar\" === l.type ? w = this.renderStackedBar(l) : \"stackedBar100\" === l.type ? w = this.renderStackedBar100(l) : \"stackedArea\" === l.type ? w = this.renderStackedArea(l) :\n \"stackedArea100\" === l.type ? w = this.renderStackedArea100(l) : \"bubble\" === l.type ? w = w = this.renderBubble(l) : \"scatter\" === l.type ? w = this.renderScatter(l) : \"pie\" === l.type ? this.renderPie(l) : \"doughnut\" === l.type ? this.renderPie(l) : \"funnel\" === l.type ? w = this.renderFunnel(l) : \"pyramid\" === l.type ? w = this.renderFunnel(l) : \"candlestick\" === l.type ? w = this.renderCandlestick(l) : \"ohlc\" === l.type ? w = this.renderCandlestick(l) : \"rangeColumn\" === l.type ? w = this.renderRangeColumn(l) : \"error\" === l.type ? w = this.renderError(l) : \"rangeBar\" === l.type ?\n w = this.renderRangeBar(l) : \"rangeArea\" === l.type ? w = this.renderRangeArea(l) : \"rangeSplineArea\" === l.type ? w = this.renderRangeSplineArea(l) : \"waterfall\" === l.type ? w = this.renderWaterfall(l) : \"boxAndWhisker\" === l.type && (w = this.renderBoxAndWhisker(l));\n for (var h = 0; h < l.dataSeriesIndexes.length; h++) this._dataInRenderedOrder.push(this.data[l.dataSeriesIndexes[h]]);\n this.animatedRender && (l.targetCanvasCtx.miterLimit = e, w && b.push(w))\n }\n this.ctx.miterLimit = a;\n this.animatedRender && this._breaksCanvasCtx && b.push({\n source: this._breaksCanvasCtx,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0,\n startTimePercent: 0.7\n });\n this.animatedRender && 0 < this._indexLabels.length && (e = ta(this.width, this.height).getContext(\"2d\"), b.push(this.renderIndexLabels(e)));\n var s = this;\n if (0 < b.length) s.disableToolTip = !0, s._animator.animate(200, s.animationDuration, function (a) {\n s.ctx.clearRect(0, 0, s.width, s.height);\n s.ctx.drawImage(c, 0, 0, Math.floor(s.width * W), Math.floor(s.height * W), 0, 0, s.width, s.height);\n for (var e =\n 0; e < b.length; e++) w = b[e], 1 > a && \"undefined\" !== typeof w.startTimePercent ? a >= w.startTimePercent && w.animationCallback(w.easingFunction(a - w.startTimePercent, 0, 1, 1 - w.startTimePercent), w) : w.animationCallback(w.easingFunction(a, 0, 1, 1), w);\n s.dispatchEvent(\"dataAnimationIterationEnd\", {\n chart: s\n })\n }, function () {\n b = [];\n for (var a = 0; a < s.plotInfo.plotTypes.length; a++)\n for (var e = s.plotInfo.plotTypes[a], d = 0; d < e.plotUnits.length; d++) e.plotUnits[d].targetCanvas = null;\n c = null;\n s.disableToolTip = !1\n });\n else {\n if (s._breaksCanvas)\n if (r) s.plotArea.ctx.drawImage(s._breaksCanvas,\n 0, 0, this.width, this.height);\n else\n for (h = 0; h < s._axes.length; h++) s._axes[h].createMask();\n 0 < s._indexLabels.length && s.renderIndexLabels();\n s.dispatchEvent(\"dataAnimationIterationEnd\", {\n chart: s\n })\n }\n this.attachPlotAreaEventHandlers();\n this.zoomEnabled || (this.panEnabled || !this._zoomButton || \"none\" === this._zoomButton.style.display) || va(this._zoomButton, this._resetButton);\n this.toolTip._updateToolTip();\n this.renderCount++;\n Ja && (s = this, setTimeout(function () {\n var a = document.getElementById(\"ghostCanvasCopy\");\n a && (Oa(a, s.width,\n s.height), a.getContext(\"2d\").drawImage(s._eventManager.ghostCanvas, 0, 0))\n }, 2E3));\n this._breaksCanvas && (delete this._breaksCanvas, delete this._breaksCanvasCtx);\n for (h = 0; h < this._axes.length; h++) this._axes[h].maskCanvas && (delete this._axes[h].maskCanvas, delete this._axes[h].maskCtx)\n };\n p.prototype.render = function (a) {\n a && (this.options = a);\n this._initialize();\n this.setLayout();\n this.renderElements()\n };\n p.prototype.attachPlotAreaEventHandlers = function () {\n this.attachEvent({\n context: this,\n chart: this,\n mousedown: this._plotAreaMouseDown,\n mouseup: this._plotAreaMouseUp,\n mousemove: this._plotAreaMouseMove,\n cursor: this.panEnabled ? \"move\" : \"default\",\n capture: !0,\n bounds: this.plotArea\n })\n };\n p.prototype.categoriseDataSeries = function () {\n for (var a = \"\", d = 0; d < this.data.length; d++)\n if (a = this.data[d], a.dataPoints && (0 !== a.dataPoints.length && a.visible) && 0 <= p._supportedChartTypes.indexOf(a.type)) {\n for (var b = null, c = !1, e = null, g = !1, m = 0; m < this.plotInfo.plotTypes.length; m++)\n if (this.plotInfo.plotTypes[m].type === a.type) {\n c = !0;\n b = this.plotInfo.plotTypes[m];\n break\n } c || (b = {\n type: a.type,\n totalDataSeries: 0,\n plotUnits: []\n }, this.plotInfo.plotTypes.push(b));\n for (m = 0; m < b.plotUnits.length; m++)\n if (b.plotUnits[m].axisYType === a.axisYType && b.plotUnits[m].axisXType === a.axisXType && b.plotUnits[m].axisYIndex === a.axisYIndex && b.plotUnits[m].axisXIndex === a.axisXIndex) {\n g = !0;\n e = b.plotUnits[m];\n break\n } g || (e = {\n type: a.type,\n previousDataSeriesCount: 0,\n index: b.plotUnits.length,\n plotType: b,\n axisXType: a.axisXType,\n axisYType: a.axisYType,\n axisYIndex: a.axisYIndex,\n axisXIndex: a.axisXIndex,\n axisY: \"primary\" === a.axisYType ? this.axisY[0 <=\n a.axisYIndex && a.axisYIndex < this.axisY.length ? a.axisYIndex : 0] : this.axisY2[0 <= a.axisYIndex && a.axisYIndex < this.axisY2.length ? a.axisYIndex : 0],\n axisX: \"primary\" === a.axisXType ? this.axisX[0 <= a.axisXIndex && a.axisXIndex < this.axisX.length ? a.axisXIndex : 0] : this.axisX2[0 <= a.axisXIndex && a.axisXIndex < this.axisX2.length ? a.axisXIndex : 0],\n dataSeriesIndexes: [],\n yTotals: []\n }, b.plotUnits.push(e));\n b.totalDataSeries++;\n e.dataSeriesIndexes.push(d);\n a.plotUnit = e\n } for (d = 0; d < this.plotInfo.plotTypes.length; d++)\n for (b = this.plotInfo.plotTypes[d],\n m = a = 0; m < b.plotUnits.length; m++) b.plotUnits[m].previousDataSeriesCount = a, a += b.plotUnits[m].dataSeriesIndexes.length\n };\n p.prototype.assignIdToDataPoints = function () {\n for (var a = 0; a < this.data.length; a++) {\n var d = this.data[a];\n if (d.dataPoints)\n for (var b = d.dataPoints.length, c = 0; c < b; c++) d.dataPointIds[c] = ++this._eventManager.lastObjectId\n }\n };\n p.prototype._processData = function () {\n this.assignIdToDataPoints();\n this.categoriseDataSeries();\n for (var a = 0; a < this.plotInfo.plotTypes.length; a++)\n for (var d = this.plotInfo.plotTypes[a],\n b = 0; b < d.plotUnits.length; b++) {\n var c = d.plotUnits[b];\n \"line\" === c.type || \"stepLine\" === c.type || \"spline\" === c.type || \"column\" === c.type || \"area\" === c.type || \"stepArea\" === c.type || \"splineArea\" === c.type || \"bar\" === c.type || \"bubble\" === c.type || \"scatter\" === c.type ? this._processMultiseriesPlotUnit(c) : \"stackedColumn\" === c.type || \"stackedBar\" === c.type || \"stackedArea\" === c.type ? this._processStackedPlotUnit(c) : \"stackedColumn100\" === c.type || \"stackedBar100\" === c.type || \"stackedArea100\" === c.type ? this._processStacked100PlotUnit(c) : \"candlestick\" ===\n c.type || \"ohlc\" === c.type || \"rangeColumn\" === c.type || \"rangeBar\" === c.type || \"rangeArea\" === c.type || \"rangeSplineArea\" === c.type || \"error\" === c.type || \"boxAndWhisker\" === c.type ? this._processMultiYPlotUnit(c) : \"waterfall\" === c.type && this._processSpecificPlotUnit(c)\n }\n this.calculateAutoBreaks()\n };\n p.prototype._processMultiseriesPlotUnit = function (a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length))\n for (var d = a.axisY.dataInfo, b = a.axisX.dataInfo, c, e, g = !1, m = 0; m < a.dataSeriesIndexes.length; m++) {\n var l = this.data[a.dataSeriesIndexes[m]],\n w = 0,\n h = !1,\n s = !1,\n q;\n if (\"normal\" === l.axisPlacement || \"xySwapped\" === l.axisPlacement) var n = a.axisX.sessionVariables.newViewportMinimum ? a.axisX.sessionVariables.newViewportMinimum : this.options.axisX && this.options.axisX.viewportMinimum ? this.options.axisX.viewportMinimum : this.options.axisX && this.options.axisX.minimum ? this.options.axisX.minimum : a.axisX.logarithmic ? 0 : -Infinity,\n f = a.axisX.sessionVariables.newViewportMaximum ? a.axisX.sessionVariables.newViewportMaximum : this.options.axisX && this.options.axisX.viewportMaximum ?\n this.options.axisX.viewportMaximum : this.options.axisX && this.options.axisX.maximum ? this.options.axisX.maximum : Infinity;\n if (l.dataPoints[w].x && l.dataPoints[w].x.getTime || \"dateTime\" === l.xValueType) g = !0;\n for (w = 0; w < l.dataPoints.length; w++) {\n \"undefined\" === typeof l.dataPoints[w].x && (l.dataPoints[w].x = w + (a.axisX.logarithmic ? 1 : 0));\n l.dataPoints[w].x.getTime ? (g = !0, c = l.dataPoints[w].x.getTime()) : c = l.dataPoints[w].x;\n e = l.dataPoints[w].y;\n c < b.min && (b.min = c);\n c > b.max && (b.max = c);\n e < d.min && \"number\" === typeof e && (d.min = e);\n e > d.max && \"number\" === typeof e && (d.max = e);\n if (0 < w) {\n if (a.axisX.logarithmic) {\n var B = c / l.dataPoints[w - 1].x;\n 1 > B && (B = 1 / B);\n b.minDiff > B && 1 !== B && (b.minDiff = B)\n } else B = c - l.dataPoints[w - 1].x, 0 > B && (B *= -1), b.minDiff > B && 0 !== B && (b.minDiff = B);\n null !== e && null !== l.dataPoints[w - 1].y && (a.axisY.logarithmic ? (B = e / l.dataPoints[w - 1].y, 1 > B && (B = 1 / B), d.minDiff > B && 1 !== B && (d.minDiff = B)) : (B = e - l.dataPoints[w - 1].y, 0 > B && (B *= -1), d.minDiff > B && 0 !== B && (d.minDiff = B)))\n }\n if (c < n && !h) null !== e && (q = c);\n else {\n if (!h && (h = !0, 0 < w)) {\n w -= 2;\n continue\n }\n if (c > f &&\n !s) s = !0;\n else if (c > f && s) continue;\n l.dataPoints[w].label && (a.axisX.labels[c] = l.dataPoints[w].label);\n c < b.viewPortMin && (b.viewPortMin = c);\n c > b.viewPortMax && (b.viewPortMax = c);\n null === e ? b.viewPortMin === c && q < c && (b.viewPortMin = q) : (e < d.viewPortMin && \"number\" === typeof e && (d.viewPortMin = e), e > d.viewPortMax && \"number\" === typeof e && (d.viewPortMax = e))\n }\n }\n l.axisX.valueType = l.xValueType = g ? \"dateTime\" : \"number\"\n }\n };\n p.prototype._processStackedPlotUnit = function (a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) {\n for (var d =\n a.axisY.dataInfo, b = a.axisX.dataInfo, c, e, g = !1, m = [], l = [], w = Infinity, h = -Infinity, s = 0; s < a.dataSeriesIndexes.length; s++) {\n var q = this.data[a.dataSeriesIndexes[s]],\n n = 0,\n f = !1,\n B = !1,\n k;\n if (\"normal\" === q.axisPlacement || \"xySwapped\" === q.axisPlacement) var p = a.axisX.sessionVariables.newViewportMinimum ? a.axisX.sessionVariables.newViewportMinimum : this.options.axisX && this.options.axisX.viewportMinimum ? this.options.axisX.viewportMinimum : this.options.axisX && this.options.axisX.minimum ? this.options.axisX.minimum : -Infinity,\n t = a.axisX.sessionVariables.newViewportMaximum ? a.axisX.sessionVariables.newViewportMaximum : this.options.axisX && this.options.axisX.viewportMaximum ? this.options.axisX.viewportMaximum : this.options.axisX && this.options.axisX.maximum ? this.options.axisX.maximum : Infinity;\n if (q.dataPoints[n].x && q.dataPoints[n].x.getTime || \"dateTime\" === q.xValueType) g = !0;\n for (n = 0; n < q.dataPoints.length; n++) {\n \"undefined\" === typeof q.dataPoints[n].x && (q.dataPoints[n].x = n + (a.axisX.logarithmic ? 1 : 0));\n q.dataPoints[n].x.getTime ? (g = !0, c = q.dataPoints[n].x.getTime()) :\n c = q.dataPoints[n].x;\n e = u(q.dataPoints[n].y) ? 0 : q.dataPoints[n].y;\n c < b.min && (b.min = c);\n c > b.max && (b.max = c);\n if (0 < n) {\n if (a.axisX.logarithmic) {\n var r = c / q.dataPoints[n - 1].x;\n 1 > r && (r = 1 / r);\n b.minDiff > r && 1 !== r && (b.minDiff = r)\n } else r = c - q.dataPoints[n - 1].x, 0 > r && (r *= -1), b.minDiff > r && 0 !== r && (b.minDiff = r);\n null !== e && null !== q.dataPoints[n - 1].y && (a.axisY.logarithmic ? 0 < e && (r = e / q.dataPoints[n - 1].y, 1 > r && (r = 1 / r), d.minDiff > r && 1 !== r && (d.minDiff = r)) : (r = e - q.dataPoints[n - 1].y, 0 > r && (r *= -1), d.minDiff > r && 0 !== r && (d.minDiff = r)))\n }\n if (c < p &&\n !f) null !== q.dataPoints[n].y && (k = c);\n else {\n if (!f && (f = !0, 0 < n)) {\n n -= 2;\n continue\n }\n if (c > t && !B) B = !0;\n else if (c > t && B) continue;\n q.dataPoints[n].label && (a.axisX.labels[c] = q.dataPoints[n].label);\n c < b.viewPortMin && (b.viewPortMin = c);\n c > b.viewPortMax && (b.viewPortMax = c);\n null === q.dataPoints[n].y ? b.viewPortMin === c && k < c && (b.viewPortMin = k) : (a.yTotals[c] = (a.yTotals[c] ? a.yTotals[c] : 0) + e, 0 <= e ? m[c] ? m[c] += e : (m[c] = e, w = Math.min(e, w)) : l[c] ? l[c] += e : (l[c] = e, h = Math.max(e, h)))\n }\n }\n a.axisY.scaleBreaks && (a.axisY.scaleBreaks.autoCalculate &&\n 1 <= a.axisY.scaleBreaks.maxNumberOfAutoBreaks) && (d.dataPointYPositiveSums ? (d.dataPointYPositiveSums.push.apply(d.dataPointYPositiveSums, m), d.dataPointYNegativeSums.push.apply(d.dataPointYPositiveSums, l)) : (d.dataPointYPositiveSums = m, d.dataPointYNegativeSums = l));\n q.axisX.valueType = q.xValueType = g ? \"dateTime\" : \"number\"\n }\n for (n in m) m.hasOwnProperty(n) && !isNaN(n) && (a = m[n], a < d.min && (d.min = Math.min(a, w)), a > d.max && (d.max = a), n < b.viewPortMin || n > b.viewPortMax || (a < d.viewPortMin && (d.viewPortMin = Math.min(a, w)), a > d.viewPortMax &&\n (d.viewPortMax = a)));\n for (n in l) l.hasOwnProperty(n) && !isNaN(n) && (a = l[n], a < d.min && (d.min = a), a > d.max && (d.max = Math.max(a, h)), n < b.viewPortMin || n > b.viewPortMax || (a < d.viewPortMin && (d.viewPortMin = a), a > d.viewPortMax && (d.viewPortMax = Math.max(a, h))))\n }\n };\n p.prototype._processStacked100PlotUnit = function (a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) {\n for (var d = a.axisY.dataInfo, b = a.axisX.dataInfo, c, e, g = !1, m = !1, l = !1, w = [], h = 0; h < a.dataSeriesIndexes.length; h++) {\n var s = this.data[a.dataSeriesIndexes[h]],\n q = 0,\n n = !1,\n f = !1,\n B;\n if (\"normal\" === s.axisPlacement || \"xySwapped\" === s.axisPlacement) var k = a.axisX.sessionVariables.newViewportMinimum ? a.axisX.sessionVariables.newViewportMinimum : this.options.axisX && this.options.axisX.viewportMinimum ? this.options.axisX.viewportMinimum : this.options.axisX && this.options.axisX.minimum ? this.options.axisX.minimum : -Infinity,\n r = a.axisX.sessionVariables.newViewportMaximum ? a.axisX.sessionVariables.newViewportMaximum : this.options.axisX && this.options.axisX.viewportMaximum ? this.options.axisX.viewportMaximum :\n this.options.axisX && this.options.axisX.maximum ? this.options.axisX.maximum : Infinity;\n if (s.dataPoints[q].x && s.dataPoints[q].x.getTime || \"dateTime\" === s.xValueType) g = !0;\n for (q = 0; q < s.dataPoints.length; q++) {\n \"undefined\" === typeof s.dataPoints[q].x && (s.dataPoints[q].x = q + (a.axisX.logarithmic ? 1 : 0));\n s.dataPoints[q].x.getTime ? (g = !0, c = s.dataPoints[q].x.getTime()) : c = s.dataPoints[q].x;\n e = u(s.dataPoints[q].y) ? null : s.dataPoints[q].y;\n c < b.min && (b.min = c);\n c > b.max && (b.max = c);\n if (0 < q) {\n if (a.axisX.logarithmic) {\n var t = c / s.dataPoints[q -\n 1].x;\n 1 > t && (t = 1 / t);\n b.minDiff > t && 1 !== t && (b.minDiff = t)\n } else t = c - s.dataPoints[q - 1].x, 0 > t && (t *= -1), b.minDiff > t && 0 !== t && (b.minDiff = t);\n u(e) || null === s.dataPoints[q - 1].y || (a.axisY.logarithmic ? 0 < e && (t = e / s.dataPoints[q - 1].y, 1 > t && (t = 1 / t), d.minDiff > t && 1 !== t && (d.minDiff = t)) : (t = e - s.dataPoints[q - 1].y, 0 > t && (t *= -1), d.minDiff > t && 0 !== t && (d.minDiff = t)))\n }\n if (c < k && !n) null !== e && (B = c);\n else {\n if (!n && (n = !0, 0 < q)) {\n q -= 2;\n continue\n }\n if (c > r && !f) f = !0;\n else if (c > r && f) continue;\n s.dataPoints[q].label && (a.axisX.labels[c] = s.dataPoints[q].label);\n c < b.viewPortMin && (b.viewPortMin = c);\n c > b.viewPortMax && (b.viewPortMax = c);\n null === e ? b.viewPortMin === c && B < c && (b.viewPortMin = B) : (a.yTotals[c] = (a.yTotals[c] ? a.yTotals[c] : 0) + e, 0 <= e ? m = !0 : 0 > e && (l = !0), w[c] = w[c] ? w[c] + Math.abs(e) : Math.abs(e))\n }\n }\n s.axisX.valueType = s.xValueType = g ? \"dateTime\" : \"number\"\n }\n a.axisY.logarithmic ? (d.max = u(d.viewPortMax) ? 99 * Math.pow(a.axisY.logarithmBase, -0.05) : Math.max(d.viewPortMax, 99 * Math.pow(a.axisY.logarithmBase, -0.05)), d.min = u(d.viewPortMin) ? 1 : Math.min(d.viewPortMin, 1)) : m && !l ? (d.max = u(d.viewPortMax) ?\n 99 : Math.max(d.viewPortMax, 99), d.min = u(d.viewPortMin) ? 1 : Math.min(d.viewPortMin, 1)) : m && l ? (d.max = u(d.viewPortMax) ? 99 : Math.max(d.viewPortMax, 99), d.min = u(d.viewPortMin) ? -99 : Math.min(d.viewPortMin, -99)) : !m && l && (d.max = u(d.viewPortMax) ? -1 : Math.max(d.viewPortMax, -1), d.min = u(d.viewPortMin) ? -99 : Math.min(d.viewPortMin, -99));\n d.viewPortMin = d.min;\n d.viewPortMax = d.max;\n a.dataPointYSums = w\n }\n };\n p.prototype._processMultiYPlotUnit = function (a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length))\n for (var d = a.axisY.dataInfo,\n b = a.axisX.dataInfo, c, e, g, m, l = !1, w = 0; w < a.dataSeriesIndexes.length; w++) {\n var h = this.data[a.dataSeriesIndexes[w]],\n s = 0,\n q = !1,\n n = !1,\n f, B, k;\n if (\"normal\" === h.axisPlacement || \"xySwapped\" === h.axisPlacement) var r = a.axisX.sessionVariables.newViewportMinimum ? a.axisX.sessionVariables.newViewportMinimum : this.options.axisX && this.options.axisX.viewportMinimum ? this.options.axisX.viewportMinimum : this.options.axisX && this.options.axisX.minimum ? this.options.axisX.minimum : a.axisX.logarithmic ? 0 : -Infinity,\n t = a.axisX.sessionVariables.newViewportMaximum ?\n a.axisX.sessionVariables.newViewportMaximum : this.options.axisX && this.options.axisX.viewportMaximum ? this.options.axisX.viewportMaximum : this.options.axisX && this.options.axisX.maximum ? this.options.axisX.maximum : Infinity;\n if (h.dataPoints[s].x && h.dataPoints[s].x.getTime || \"dateTime\" === h.xValueType) l = !0;\n for (s = 0; s < h.dataPoints.length; s++) {\n \"undefined\" === typeof h.dataPoints[s].x && (h.dataPoints[s].x = s + (a.axisX.logarithmic ? 1 : 0));\n h.dataPoints[s].x.getTime ? (l = !0, c = h.dataPoints[s].x.getTime()) : c = h.dataPoints[s].x;\n if ((e = h.dataPoints[s].y) && e.length) {\n g = Math.min.apply(null, e);\n m = Math.max.apply(null, e);\n B = !0;\n for (var p = 0; p < e.length; p++) null === e.k && (B = !1);\n B && (q || (k = f), f = c)\n }\n c < b.min && (b.min = c);\n c > b.max && (b.max = c);\n g < d.min && (d.min = g);\n m > d.max && (d.max = m);\n 0 < s && (a.axisX.logarithmic ? (B = c / h.dataPoints[s - 1].x, 1 > B && (B = 1 / B), b.minDiff > B && 1 !== B && (b.minDiff = B)) : (B = c - h.dataPoints[s - 1].x, 0 > B && (B *= -1), b.minDiff > B && 0 !== B && (b.minDiff = B)), e && (null !== e[0] && h.dataPoints[s - 1].y && null !== h.dataPoints[s - 1].y[0]) && (a.axisY.logarithmic ? (B = e[0] /\n h.dataPoints[s - 1].y[0], 1 > B && (B = 1 / B), d.minDiff > B && 1 !== B && (d.minDiff = B)) : (B = e[0] - h.dataPoints[s - 1].y[0], 0 > B && (B *= -1), d.minDiff > B && 0 !== B && (d.minDiff = B))));\n if (!(c < r) || q) {\n if (!q && (q = !0, 0 < s)) {\n s -= 2;\n f = k;\n continue\n }\n if (c > t && !n) n = !0;\n else if (c > t && n) continue;\n h.dataPoints[s].label && (a.axisX.labels[c] = h.dataPoints[s].label);\n c < b.viewPortMin && (b.viewPortMin = c);\n c > b.viewPortMax && (b.viewPortMax = c);\n if (b.viewPortMin === c && e)\n for (p = 0; p < e.length; p++)\n if (null === e[p] && f < c) {\n b.viewPortMin = f;\n break\n } null === e ? b.viewPortMin === c && f < c &&\n (b.viewPortMin = f) : (g < d.viewPortMin && (d.viewPortMin = g), m > d.viewPortMax && (d.viewPortMax = m))\n }\n }\n h.axisX.valueType = h.xValueType = l ? \"dateTime\" : \"number\"\n }\n };\n p.prototype._processSpecificPlotUnit = function (a) {\n if (\"waterfall\" === a.type && a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length))\n for (var d = a.axisY.dataInfo, b = a.axisX.dataInfo, c, e, g = !1, m = 0; m < a.dataSeriesIndexes.length; m++) {\n var l = this.data[a.dataSeriesIndexes[m]],\n w = 0,\n h = !1,\n s = !1,\n q = c = 0;\n if (\"normal\" === l.axisPlacement || \"xySwapped\" === l.axisPlacement) var n = a.axisX.sessionVariables.newViewportMinimum ?\n a.axisX.sessionVariables.newViewportMinimum : this.options.axisX && this.options.axisX.viewportMinimum ? this.options.axisX.viewportMinimum : this.options.axisX && this.options.axisX.minimum ? this.options.axisX.minimum : a.axisX.logarithmic ? 0 : -Infinity,\n f = a.axisX.sessionVariables.newViewportMaximum ? a.axisX.sessionVariables.newViewportMaximum : this.options.axisX && this.options.axisX.viewportMaximum ? this.options.axisX.viewportMaximum : this.options.axisX && this.options.axisX.maximum ? this.options.axisX.maximum : Infinity;\n if (l.dataPoints[w].x && l.dataPoints[w].x.getTime || \"dateTime\" === l.xValueType) g = !0;\n for (w = 0; w < l.dataPoints.length; w++) \"undefined\" !== typeof l.dataPoints[w].isCumulativeSum && !0 === l.dataPoints[w].isCumulativeSum ? (l.dataPointEOs[w].cumulativeSumYStartValue = 0, l.dataPointEOs[w].cumulativeSum = 0 === w ? 0 : l.dataPointEOs[w - 1].cumulativeSum, l.dataPoints[w].y = 0 === w ? 0 : l.dataPointEOs[w - 1].cumulativeSum) : \"undefined\" !== typeof l.dataPoints[w].isIntermediateSum && !0 === l.dataPoints[w].isIntermediateSum ? (l.dataPointEOs[w].cumulativeSumYStartValue =\n q, l.dataPointEOs[w].cumulativeSum = 0 === w ? 0 : l.dataPointEOs[w - 1].cumulativeSum, l.dataPoints[w].y = 0 === w ? 0 : c, q = 0 === w ? 0 : l.dataPointEOs[w - 1].cumulativeSum, c = 0) : (e = \"number\" !== typeof l.dataPoints[w].y ? 0 : l.dataPoints[w].y, l.dataPointEOs[w].cumulativeSumYStartValue = 0 === w ? 0 : l.dataPointEOs[w - 1].cumulativeSum, l.dataPointEOs[w].cumulativeSum = 0 === w ? e : l.dataPointEOs[w - 1].cumulativeSum + e, c += e);\n for (w = 0; w < l.dataPoints.length; w++)\n if (\"undefined\" === typeof l.dataPoints[w].x && (l.dataPoints[w].x = w + (a.axisX.logarithmic ? 1 : 0)),\n l.dataPoints[w].x.getTime ? (g = !0, c = l.dataPoints[w].x.getTime()) : c = l.dataPoints[w].x, e = l.dataPoints[w].y, c < b.min && (b.min = c), c > b.max && (b.max = c), l.dataPointEOs[w].cumulativeSum < d.min && (d.min = l.dataPointEOs[w].cumulativeSum), l.dataPointEOs[w].cumulativeSum > d.max && (d.max = l.dataPointEOs[w].cumulativeSum), 0 < w && (a.axisX.logarithmic ? (q = c / l.dataPoints[w - 1].x, 1 > q && (q = 1 / q), b.minDiff > q && 1 !== q && (b.minDiff = q)) : (q = c - l.dataPoints[w - 1].x, 0 > q && (q *= -1), b.minDiff > q && 0 !== q && (b.minDiff = q)), null !== e && null !== l.dataPoints[w -\n 1].y && (a.axisY.logarithmic ? (e = l.dataPointEOs[w].cumulativeSum / l.dataPointEOs[w - 1].cumulativeSum, 1 > e && (e = 1 / e), d.minDiff > e && 1 !== e && (d.minDiff = e)) : (e = l.dataPointEOs[w].cumulativeSum - l.dataPointEOs[w - 1].cumulativeSum, 0 > e && (e *= -1), d.minDiff > e && 0 !== e && (d.minDiff = e)))), !(c < n) || h) {\n if (!h && (h = !0, 0 < w)) {\n w -= 2;\n continue\n }\n if (c > f && !s) s = !0;\n else if (c > f && s) continue;\n l.dataPoints[w].label && (a.axisX.labels[c] = l.dataPoints[w].label);\n c < b.viewPortMin && (b.viewPortMin = c);\n c > b.viewPortMax && (b.viewPortMax = c);\n 0 < w && (l.dataPointEOs[w -\n 1].cumulativeSum < d.viewPortMin && (d.viewPortMin = l.dataPointEOs[w - 1].cumulativeSum), l.dataPointEOs[w - 1].cumulativeSum > d.viewPortMax && (d.viewPortMax = l.dataPointEOs[w - 1].cumulativeSum));\n l.dataPointEOs[w].cumulativeSum < d.viewPortMin && (d.viewPortMin = l.dataPointEOs[w].cumulativeSum);\n l.dataPointEOs[w].cumulativeSum > d.viewPortMax && (d.viewPortMax = l.dataPointEOs[w].cumulativeSum)\n } l.axisX.valueType = l.xValueType = g ? \"dateTime\" : \"number\"\n }\n };\n p.prototype.calculateAutoBreaks = function () {\n function a(a, c, b, e) {\n if (e) return b =\n Math.pow(Math.min(b * a / c, c / a), 0.2), 1 >= b && (b = Math.pow(1 > a ? 1 / a : Math.min(c / a, a), 0.25)), {\n startValue: a * b,\n endValue: c / b\n };\n b = 0.2 * Math.min(b - c + a, c - a);\n 0 >= b && (b = 0.25 * Math.min(c - a, Math.abs(a)));\n return {\n startValue: a + b,\n endValue: c - b\n }\n }\n\n function d(a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length)) {\n var c = a.axisX.scaleBreaks && a.axisX.scaleBreaks.autoCalculate && 1 <= a.axisX.scaleBreaks.maxNumberOfAutoBreaks,\n b = a.axisY.scaleBreaks && a.axisY.scaleBreaks.autoCalculate && 1 <= a.axisY.scaleBreaks.maxNumberOfAutoBreaks;\n if (c ||\n b)\n for (var d = a.axisY.dataInfo, f = a.axisX.dataInfo, g, h = f.min, l = f.max, m = d.min, n = d.max, f = f._dataRanges, d = d._dataRanges, q, w = 0, s = 0; s < a.dataSeriesIndexes.length; s++) {\n var k = e.data[a.dataSeriesIndexes[s]];\n if (!(4 > k.dataPoints.length))\n for (w = 0; w < k.dataPoints.length; w++)\n if (c && (q = (l + 1 - h) * Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold) || 10, 10) / 100, g = k.dataPoints[w].x.getTime ? k.dataPoints[w].x.getTime() : k.dataPoints[w].x, q = Math.floor((g - h) / q), g < f[q].min && (f[q].min = g), g > f[q].max && (f[q].max = g)), b) {\n var r =\n (n + 1 - m) * Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold) || 10, 10) / 100;\n if ((g = \"waterfall\" === a.type ? k.dataPointEOs[w].cumulativeSum : k.dataPoints[w].y) && g.length)\n for (var p = 0; p < g.length; p++) q = Math.floor((g[p] - m) / r), g[p] < d[q].min && (d[q].min = g[p]), g[p] > d[q].max && (d[q].max = g[p]);\n else u(g) || (q = Math.floor((g - m) / r), g < d[q].min && (d[q].min = g), g > d[q].max && (d[q].max = g))\n }\n }\n }\n }\n\n function b(a) {\n if (a.dataSeriesIndexes && !(1 > a.dataSeriesIndexes.length) && a.axisX.scaleBreaks && a.axisX.scaleBreaks.autoCalculate && 1 <=\n a.axisX.scaleBreaks.maxNumberOfAutoBreaks)\n for (var c = a.axisX.dataInfo, b = c.min, d = c.max, f = c._dataRanges, g, h = 0, l = 0; l < a.dataSeriesIndexes.length; l++) {\n var m = e.data[a.dataSeriesIndexes[l]];\n if (!(4 > m.dataPoints.length))\n for (h = 0; h < m.dataPoints.length; h++) g = (d + 1 - b) * Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold) || 10, 10) / 100, c = m.dataPoints[h].x.getTime ? m.dataPoints[h].x.getTime() : m.dataPoints[h].x, g = Math.floor((c - b) / g), c < f[g].min && (f[g].min = c), c > f[g].max && (f[g].max = c)\n }\n }\n for (var c, e = this, g = !1, m = 0; m <\n this._axes.length; m++)\n if (this._axes[m].scaleBreaks && this._axes[m].scaleBreaks.autoCalculate && 1 <= this._axes[m].scaleBreaks.maxNumberOfAutoBreaks) {\n g = !0;\n this._axes[m].dataInfo._dataRanges = [];\n for (var l = 0; l < 100 / Math.max(parseFloat(this._axes[m].scaleBreaks.collapsibleThreshold) || 10, 10); l++) this._axes[m].dataInfo._dataRanges.push({\n min: Infinity,\n max: -Infinity\n })\n } if (g) {\n for (m = 0; m < this.plotInfo.plotTypes.length; m++)\n for (g = this.plotInfo.plotTypes[m], l = 0; l < g.plotUnits.length; l++) c = g.plotUnits[l], \"line\" === c.type ||\n \"stepLine\" === c.type || \"spline\" === c.type || \"column\" === c.type || \"area\" === c.type || \"stepArea\" === c.type || \"splineArea\" === c.type || \"bar\" === c.type || \"bubble\" === c.type || \"scatter\" === c.type || \"candlestick\" === c.type || \"ohlc\" === c.type || \"rangeColumn\" === c.type || \"rangeBar\" === c.type || \"rangeArea\" === c.type || \"rangeSplineArea\" === c.type || \"waterfall\" === c.type || \"error\" === c.type || \"boxAndWhisker\" === c.type ? d(c) : 0 <= c.type.indexOf(\"stacked\") && b(c);\n for (m = 0; m < this._axes.length; m++)\n if (this._axes[m].dataInfo._dataRanges) {\n var w = this._axes[m].dataInfo.min;\n c = (this._axes[m].dataInfo.max + 1 - w) * Math.max(parseFloat(this._axes[m].scaleBreaks.collapsibleThreshold) || 10, 10) / 100;\n var h = this._axes[m].dataInfo._dataRanges,\n s, q, g = [];\n if (this._axes[m].dataInfo.dataPointYPositiveSums) {\n var n = this._axes[m].dataInfo.dataPointYPositiveSums;\n s = h;\n for (l in n)\n if (n.hasOwnProperty(l) && !isNaN(l) && (q = n[l], !u(q))) {\n var f = Math.floor((q - w) / c);\n q < s[f].min && (s[f].min = q);\n q > s[f].max && (s[f].max = q)\n } delete this._axes[m].dataInfo.dataPointYPositiveSums\n }\n if (this._axes[m].dataInfo.dataPointYNegativeSums) {\n n =\n this._axes[m].dataInfo.dataPointYNegativeSums;\n s = h;\n for (l in n) n.hasOwnProperty(l) && !isNaN(l) && (q = -1 * n[l], u(q) || (f = Math.floor((q - w) / c), q < s[f].min && (s[f].min = q), q > s[f].max && (s[f].max = q)));\n delete this._axes[m].dataInfo.dataPointYNegativeSums\n }\n for (l = 0; l < h.length - 1; l++)\n if (s = h[l].max, isFinite(s))\n for (; l < h.length - 1;)\n if (w = h[l + 1].min, isFinite(w)) {\n q = w - s;\n q > c && g.push({\n diff: q,\n start: s,\n end: w\n });\n break\n } else l++;\n if (this._axes[m].scaleBreaks.customBreaks)\n for (l = 0; l < this._axes[m].scaleBreaks.customBreaks.length; l++)\n for (c =\n 0; c < g.length; c++)\n if (this._axes[m].scaleBreaks.customBreaks[l].startValue <= g[c].start && g[c].start <= this._axes[m].scaleBreaks.customBreaks[l].endValue || this._axes[m].scaleBreaks.customBreaks[l].startValue <= g[c].start && g[c].start <= this._axes[m].scaleBreaks.customBreaks[l].endValue || g[c].start <= this._axes[m].scaleBreaks.customBreaks[l].startValue && this._axes[m].scaleBreaks.customBreaks[l].startValue <= g[c].end || g[c].start <= this._axes[m].scaleBreaks.customBreaks[l].endValue && this._axes[m].scaleBreaks.customBreaks[l].endValue <=\n g[c].end) g.splice(c, 1), c--;\n g.sort(function (a, c) {\n return c.diff - a.diff\n });\n for (l = 0; l < Math.min(g.length, this._axes[m].scaleBreaks.maxNumberOfAutoBreaks); l++) c = a(g[l].start, g[l].end, this._axes[m].logarithmic ? this._axes[m].dataInfo.max / this._axes[m].dataInfo.min : this._axes[m].dataInfo.max - this._axes[m].dataInfo.min, this._axes[m].logarithmic), this._axes[m].scaleBreaks.autoBreaks.push(new L(this, \"autoBreaks\", c, l, ++this._eventManager.lastObjectId, this._axes[m].scaleBreaks)), this._axes[m].scaleBreaks._appliedBreaks.push(this._axes[m].scaleBreaks.autoBreaks[this._axes[m].scaleBreaks.autoBreaks.length -\n 1]);\n this._axes[m].scaleBreaks._appliedBreaks.sort(function (a, c) {\n return a.startValue - c.startValue\n })\n }\n }\n };\n p.prototype.getDataPointAtXY = function (a, d, b) {\n b = b || !1;\n for (var c = [], e = this._dataInRenderedOrder.length - 1; 0 <= e; e--) {\n var g = null;\n (g = this._dataInRenderedOrder[e].getDataPointAtXY(a, d, b)) && c.push(g)\n }\n a = null;\n d = !1;\n for (b = 0; b < c.length; b++)\n if (\"line\" === c[b].dataSeries.type || \"stepLine\" === c[b].dataSeries.type || \"area\" === c[b].dataSeries.type || \"stepArea\" === c[b].dataSeries.type)\n if (e = na(\"markerSize\", c[b].dataPoint, c[b].dataSeries) ||\n 8, c[b].distance <= e / 2) {\n d = !0;\n break\n } for (b = 0; b < c.length; b++) d && \"line\" !== c[b].dataSeries.type && \"stepLine\" !== c[b].dataSeries.type && \"area\" !== c[b].dataSeries.type && \"stepArea\" !== c[b].dataSeries.type || (a ? c[b].distance <= a.distance && (a = c[b]) : a = c[b]);\n return a\n };\n p.prototype.getObjectAtXY = function (a, d, b) {\n var c = null;\n if (b = this.getDataPointAtXY(a, d, b || !1)) c = b.dataSeries.dataPointIds[b.dataPointIndex];\n else if (r) c = ab(a, d, this._eventManager.ghostCtx);\n else\n for (b = 0; b < this.legend.items.length; b++) {\n var e = this.legend.items[b];\n a >= e.x1 && (a <= e.x2 && d >= e.y1 && d <= e.y2) && (c = e.id)\n }\n return c\n };\n p.prototype.getAutoFontSize = lb;\n p.prototype.resetOverlayedCanvas = function () {\n this.overlaidCanvasCtx.clearRect(0, 0, this.width, this.height)\n };\n p.prototype.clearCanvas = kb;\n p.prototype.attachEvent = function (a) {\n this._events.push(a)\n };\n p.prototype._touchEventHandler = function (a) {\n if (a.changedTouches && this.interactivityEnabled) {\n var d = [],\n b = a.changedTouches,\n c = b ? b[0] : a,\n e = null;\n switch (a.type) {\n case \"touchstart\":\n case \"MSPointerDown\":\n d = [\"mousemove\", \"mousedown\"];\n this._lastTouchData =\n Ra(c);\n this._lastTouchData.time = new Date;\n break;\n case \"touchmove\":\n case \"MSPointerMove\":\n d = [\"mousemove\"];\n break;\n case \"touchend\":\n case \"MSPointerUp\":\n var g = this._lastTouchData && this._lastTouchData.time ? new Date - this._lastTouchData.time : 0,\n d = \"touchstart\" === this._lastTouchEventType || \"MSPointerDown\" === this._lastTouchEventType || 300 > g ? [\"mouseup\", \"click\"] : [\"mouseup\"];\n break;\n default:\n return\n }\n if (!(b && 1 < b.length)) {\n e = Ra(c);\n e.time = new Date;\n try {\n var m = e.y - this._lastTouchData.y,\n g = e.time - this._lastTouchData.time;\n if (1 < Math.abs(m) &&\n this._lastTouchData.scroll || 5 < Math.abs(m) && 250 > g) this._lastTouchData.scroll = !0\n } catch (l) { }\n this._lastTouchEventType = a.type;\n if (this._lastTouchData.scroll && this.zoomEnabled) this.isDrag && this.resetOverlayedCanvas(), this.isDrag = !1;\n else\n for (b = 0; b < d.length; b++)\n if (e = d[b], m = document.createEvent(\"MouseEvent\"), m.initMouseEvent(e, !0, !0, window, 1, c.screenX, c.screenY, c.clientX, c.clientY, !1, !1, !1, !1, 0, null), c.target.dispatchEvent(m), !u(this._lastTouchData.scroll) && !this._lastTouchData.scroll || !this._lastTouchData.scroll &&\n 250 < g || \"click\" === e) a.preventManipulation && a.preventManipulation(), a.preventDefault && a.preventDefault()\n }\n }\n };\n p.prototype._dispatchRangeEvent = function (a, d) {\n var b = {\n chart: this\n };\n b.type = a;\n b.trigger = d;\n var c = [];\n this.axisX && 0 < this.axisX.length && c.push(\"axisX\");\n this.axisX2 && 0 < this.axisX2.length && c.push(\"axisX2\");\n this.axisY && 0 < this.axisY.length && c.push(\"axisY\");\n this.axisY2 && 0 < this.axisY2.length && c.push(\"axisY2\");\n for (var e = 0; e < c.length; e++)\n if (u(b[c[e]]) && (b[c[e]] = []), \"axisY\" === c[e])\n for (var g = 0; g < this.axisY.length; g++) b[c[e]].push({\n viewportMinimum: this[c[e]][g].sessionVariables.newViewportMinimum,\n viewportMaximum: this[c[e]][g].sessionVariables.newViewportMaximum\n });\n else if (\"axisY2\" === c[e])\n for (g = 0; g < this.axisY2.length; g++) b[c[e]].push({\n viewportMinimum: this[c[e]][g].sessionVariables.newViewportMinimum,\n viewportMaximum: this[c[e]][g].sessionVariables.newViewportMaximum\n });\n else if (\"axisX\" === c[e])\n for (g = 0; g < this.axisX.length; g++) b[c[e]].push({\n viewportMinimum: this[c[e]][g].sessionVariables.newViewportMinimum,\n viewportMaximum: this[c[e]][g].sessionVariables.newViewportMaximum\n });\n else if (\"axisX2\" === c[e])\n for (g =\n 0; g < this.axisX2.length; g++) b[c[e]].push({\n viewportMinimum: this[c[e]][g].sessionVariables.newViewportMinimum,\n viewportMaximum: this[c[e]][g].sessionVariables.newViewportMaximum\n });\n this.dispatchEvent(a, b, this)\n };\n p.prototype._mouseEventHandler = function (a) {\n \"undefined\" === typeof a.target && a.srcElement && (a.target = a.srcElement);\n var d = Ra(a),\n b = a.type,\n c, e;\n a.which ? e = 3 == a.which : a.button && (e = 2 == a.button);\n p.capturedEventParam && (c = p.capturedEventParam, \"mouseup\" === b && (p.capturedEventParam = null, c.chart.overlaidCanvas.releaseCapture ?\n c.chart.overlaidCanvas.releaseCapture() : document.documentElement.removeEventListener(\"mouseup\", c.chart._mouseEventHandler, !1)), c.hasOwnProperty(b) && (\"mouseup\" !== b || c.chart.overlaidCanvas.releaseCapture ? a.target !== c.chart.overlaidCanvas && r || c[b].call(c.context, d.x, d.y) : a.target !== c.chart.overlaidCanvas && (c.chart.isDrag = !1)));\n if (this.interactivityEnabled)\n if (this._ignoreNextEvent) this._ignoreNextEvent = !1;\n else if (a.preventManipulation && a.preventManipulation(), a.preventDefault && a.preventDefault(), Ja &&\n window.console && (window.console.log(b + \" --\\x3e x: \" + d.x + \"; y:\" + d.y), e && window.console.log(a.which), \"mouseup\" === b && window.console.log(\"mouseup\")), !e) {\n if (!p.capturedEventParam && this._events) {\n for (var g = 0; g < this._events.length; g++)\n if (this._events[g].hasOwnProperty(b))\n if (c = this._events[g], e = c.bounds, d.x >= e.x1 && d.x <= e.x2 && d.y >= e.y1 && d.y <= e.y2) {\n c[b].call(c.context, d.x, d.y);\n \"mousedown\" === b && !0 === c.capture ? (p.capturedEventParam = c, this.overlaidCanvas.setCapture ? this.overlaidCanvas.setCapture() : document.documentElement.addEventListener(\"mouseup\",\n this._mouseEventHandler, !1)) : \"mouseup\" === b && (c.chart.overlaidCanvas.releaseCapture ? c.chart.overlaidCanvas.releaseCapture() : document.documentElement.removeEventListener(\"mouseup\", this._mouseEventHandler, !1));\n break\n } else c = null;\n a.target.style.cursor = c && c.cursor ? c.cursor : this._defaultCursor\n }\n b = this.plotArea;\n if (d.x < b.x1 || d.x > b.x2 || d.y < b.y1 || d.y > b.y2) this.toolTip && this.toolTip.enabled ? this.toolTip.hide() : this.resetOverlayedCanvas();\n this.isDrag && this.zoomEnabled || !this._eventManager || this._eventManager.mouseEventHandler(a)\n }\n };\n p.prototype._plotAreaMouseDown = function (a, d) {\n this.isDrag = !0;\n this.dragStartPoint = {\n x: a,\n y: d\n }\n };\n p.prototype._plotAreaMouseUp = function (a, d) {\n if ((\"normal\" === this.plotInfo.axisPlacement || \"xySwapped\" === this.plotInfo.axisPlacement) && this.isDrag) {\n var b = d - this.dragStartPoint.y,\n c = a - this.dragStartPoint.x,\n e = 0 <= this.zoomType.indexOf(\"x\"),\n g = 0 <= this.zoomType.indexOf(\"y\"),\n m = !1;\n this.resetOverlayedCanvas();\n if (\"xySwapped\" === this.plotInfo.axisPlacement) var l = g,\n g = e,\n e = l;\n if (this.panEnabled || this.zoomEnabled) {\n if (this.panEnabled)\n for (e =\n g = 0; e < this._axes.length; e++) b = this._axes[e], b.logarithmic ? b.viewportMinimum < b.minimum ? (g = b.minimum / b.viewportMinimum, b.sessionVariables.newViewportMinimum = b.viewportMinimum * g, b.sessionVariables.newViewportMaximum = b.viewportMaximum * g, m = !0) : b.viewportMaximum > b.maximum && (g = b.viewportMaximum / b.maximum, b.sessionVariables.newViewportMinimum = b.viewportMinimum / g, b.sessionVariables.newViewportMaximum = b.viewportMaximum / g, m = !0) : b.viewportMinimum < b.minimum ? (g = b.minimum - b.viewportMinimum, b.sessionVariables.newViewportMinimum =\n b.viewportMinimum + g, b.sessionVariables.newViewportMaximum = b.viewportMaximum + g, m = !0) : b.viewportMaximum > b.maximum && (g = b.viewportMaximum - b.maximum, b.sessionVariables.newViewportMinimum = b.viewportMinimum - g, b.sessionVariables.newViewportMaximum = b.viewportMaximum - g, m = !0);\n else if ((!e || 2 < Math.abs(c)) && (!g || 2 < Math.abs(b)) && this.zoomEnabled) {\n if (!this.dragStartPoint) return;\n b = e ? this.dragStartPoint.x : this.plotArea.x1;\n c = g ? this.dragStartPoint.y : this.plotArea.y1;\n e = e ? a : this.plotArea.x2;\n g = g ? d : this.plotArea.y2;\n 2 < Math.abs(b -\n e) && 2 < Math.abs(c - g) && this._zoomPanToSelectedRegion(b, c, e, g) && (m = !0)\n }\n m && (this._ignoreNextEvent = !0, this._dispatchRangeEvent(\"rangeChanging\", \"zoom\"), this.render(), this._dispatchRangeEvent(\"rangeChanged\", \"zoom\"), m && (this.zoomEnabled && \"none\" === this._zoomButton.style.display) && (Qa(this._zoomButton, this._resetButton), ua(this, this._zoomButton, \"pan\"), ua(this, this._resetButton, \"reset\")))\n }\n }\n this.isDrag = !1;\n if (\"none\" !== this.plotInfo.axisPlacement) {\n this.resetOverlayedCanvas();\n if (this.axisX && 0 < this.axisX.length)\n for (m =\n 0; m < this.axisX.length; m++) this.axisX[m].crosshair && this.axisX[m].crosshair.enabled && this.axisX[m].renderCrosshair(a, d);\n if (this.axisX2 && 0 < this.axisX2.length)\n for (m = 0; m < this.axisX2.length; m++) this.axisX2[m].crosshair && this.axisX2[m].crosshair.enabled && this.axisX2[m].renderCrosshair(a, d);\n if (this.axisY && 0 < this.axisY.length)\n for (m = 0; m < this.axisY.length; m++) this.axisY[m].crosshair && this.axisY[m].crosshair.enabled && this.axisY[m].renderCrosshair(a, d);\n if (this.axisY2 && 0 < this.axisY2.length)\n for (m = 0; m < this.axisY2.length; m++) this.axisY2[m].crosshair &&\n this.axisY2[m].crosshair.enabled && this.axisY2[m].renderCrosshair(a, d)\n }\n };\n p.prototype._plotAreaMouseMove = function (a, d) {\n if (this.isDrag && \"none\" !== this.plotInfo.axisPlacement) {\n var b = 0,\n c = 0,\n e = b = null,\n e = 0 <= this.zoomType.indexOf(\"x\"),\n g = 0 <= this.zoomType.indexOf(\"y\"),\n m = this;\n \"xySwapped\" === this.plotInfo.axisPlacement && (b = g, g = e, e = b);\n b = this.dragStartPoint.x - a;\n c = this.dragStartPoint.y - d;\n 2 < Math.abs(b) && 8 > Math.abs(b) && (this.panEnabled || this.zoomEnabled) ? this.toolTip.hide() : this.panEnabled || this.zoomEnabled || this.toolTip.mouseMoveHandler(a,\n d);\n if ((!e || 2 < Math.abs(b) || !g || 2 < Math.abs(c)) && (this.panEnabled || this.zoomEnabled))\n if (this.panEnabled) e = {\n x1: e ? this.plotArea.x1 + b : this.plotArea.x1,\n y1: g ? this.plotArea.y1 + c : this.plotArea.y1,\n x2: e ? this.plotArea.x2 + b : this.plotArea.x2,\n y2: g ? this.plotArea.y2 + c : this.plotArea.y2\n }, clearTimeout(m._panTimerId), m._panTimerId = setTimeout(function (c, b, e, f) {\n return function () {\n m._zoomPanToSelectedRegion(c, b, e, f, !0) && (m._dispatchRangeEvent(\"rangeChanging\", \"pan\"), m.render(), m._dispatchRangeEvent(\"rangeChanged\", \"pan\"), m.dragStartPoint.x =\n a, m.dragStartPoint.y = d)\n }\n }(e.x1, e.y1, e.x2, e.y2), 0);\n else if (this.zoomEnabled) {\n this.resetOverlayedCanvas();\n b = this.overlaidCanvasCtx.globalAlpha;\n this.overlaidCanvasCtx.fillStyle = \"#A89896\";\n var c = e ? this.dragStartPoint.x : this.plotArea.x1,\n l = g ? this.dragStartPoint.y : this.plotArea.y1,\n w = e ? a - this.dragStartPoint.x : this.plotArea.x2 - this.plotArea.x1,\n h = g ? d - this.dragStartPoint.y : this.plotArea.y2 - this.plotArea.y1;\n this.validateRegion(c, l, e ? a : this.plotArea.x2 - this.plotArea.x1, g ? d : this.plotArea.y2 - this.plotArea.y1, \"xy\" !==\n this.zoomType).isValid && (this.resetOverlayedCanvas(), this.overlaidCanvasCtx.fillStyle = \"#99B2B5\");\n this.overlaidCanvasCtx.globalAlpha = 0.7;\n this.overlaidCanvasCtx.fillRect(c, l, w, h);\n this.overlaidCanvasCtx.globalAlpha = b\n }\n } else if (this.toolTip.mouseMoveHandler(a, d), \"none\" !== this.plotInfo.axisPlacement) {\n if (this.axisX && 0 < this.axisX.length)\n for (e = 0; e < this.axisX.length; e++) this.axisX[e].crosshair && this.axisX[e].crosshair.enabled && this.axisX[e].renderCrosshair(a, d);\n if (this.axisX2 && 0 < this.axisX2.length)\n for (e = 0; e <\n this.axisX2.length; e++) this.axisX2[e].crosshair && this.axisX2[e].crosshair.enabled && this.axisX2[e].renderCrosshair(a, d);\n if (this.axisY && 0 < this.axisY.length)\n for (e = 0; e < this.axisY.length; e++) this.axisY[e].crosshair && this.axisY[e].crosshair.enabled && this.axisY[e].renderCrosshair(a, d);\n if (this.axisY2 && 0 < this.axisY2.length)\n for (e = 0; e < this.axisY2.length; e++) this.axisY2[e].crosshair && this.axisY2[e].crosshair.enabled && this.axisY2[e].renderCrosshair(a, d)\n }\n };\n p.prototype._zoomPanToSelectedRegion = function (a, d, b, c,\n e) {\n a = this.validateRegion(a, d, b, c, e);\n d = a.axesWithValidRange;\n b = a.axesRanges;\n if (a.isValid)\n for (c = 0; c < d.length; c++) e = b[c], d[c].setViewPortRange(e.val1, e.val2), this.syncCharts && this.syncCharts(e.val1, e.val2);\n return a.isValid\n };\n p.prototype.validateRegion = function (a, d, b, c, e) {\n e = e || !1;\n for (var g = 0 <= this.zoomType.indexOf(\"x\"), m = 0 <= this.zoomType.indexOf(\"y\"), l = !1, w = [], h = [], s = [], q = 0; q < this._axes.length; q++)(\"axisX\" === this._axes[q].type && g || \"axisY\" === this._axes[q].type && m) && h.push(this._axes[q]);\n for (m = 0; m < h.length; m++) {\n var q =\n h[m],\n g = !1,\n n = q.convertPixelToValue({\n x: a,\n y: d\n }),\n f = q.convertPixelToValue({\n x: b,\n y: c\n });\n if (n > f) var B = f,\n f = n,\n n = B;\n if (q.scaleBreaks)\n for (B = 0; !g && B < q.scaleBreaks._appliedBreaks.length; B++) g = q.scaleBreaks._appliedBreaks[B].startValue <= n && q.scaleBreaks._appliedBreaks[B].endValue >= f;\n if (isFinite(q.dataInfo.minDiff))\n if (B = q.getApparentDifference(n, f, null, !0), !(g || !(this.panEnabled && q.scaleBreaks && q.scaleBreaks._appliedBreaks.length) && (q.logarithmic && B < Math.pow(q.dataInfo.minDiff, 3) || !q.logarithmic && B < 3 * Math.abs(q.dataInfo.minDiff)) ||\n n < q.minimum || f > q.maximum)) w.push(q), s.push({\n val1: n,\n val2: f\n }), l = !0;\n else if (!e) {\n l = !1;\n break\n }\n }\n return {\n isValid: l,\n axesWithValidRange: w,\n axesRanges: s\n }\n };\n p.prototype.preparePlotArea = function () {\n var a = this.plotArea;\n !r && (0 < a.x1 || 0 < a.y1) && a.ctx.translate(a.x1, a.y1);\n if ((this.axisX[0] || this.axisX2[0]) && (this.axisY[0] || this.axisY2[0])) {\n var d = this.axisX[0] ? this.axisX[0].lineCoordinates : this.axisX2[0].lineCoordinates;\n if (this.axisY && 0 < this.axisY.length && this.axisY[0]) {\n var b = this.axisY[0];\n a.x1 = d.x1 < d.x2 ? d.x1 : b.lineCoordinates.x1;\n a.y1 = d.y1 < b.lineCoordinates.y1 ? d.y1 : b.lineCoordinates.y1;\n a.x2 = d.x2 > b.lineCoordinates.x2 ? d.x2 : b.lineCoordinates.x2;\n a.y2 = d.y2 > d.y1 ? d.y2 : b.lineCoordinates.y2;\n a.width = a.x2 - a.x1;\n a.height = a.y2 - a.y1\n }\n this.axisY2 && 0 < this.axisY2.length && this.axisY2[0] && (b = this.axisY2[0], a.x1 = d.x1 < d.x2 ? d.x1 : b.lineCoordinates.x1, a.y1 = d.y1 < b.lineCoordinates.y1 ? d.y1 : b.lineCoordinates.y1, a.x2 = d.x2 > b.lineCoordinates.x2 ? d.x2 : b.lineCoordinates.x2, a.y2 = d.y2 > d.y1 ? d.y2 : b.lineCoordinates.y2, a.width = a.x2 - a.x1, a.height = a.y2 - a.y1)\n } else d =\n this.layoutManager.getFreeSpace(), a.x1 = d.x1, a.x2 = d.x2, a.y1 = d.y1, a.y2 = d.y2, a.width = d.width, a.height = d.height;\n r || (a.canvas.width = a.width, a.canvas.height = a.height, a.canvas.style.left = a.x1 + \"px\", a.canvas.style.top = a.y1 + \"px\", (0 < a.x1 || 0 < a.y1) && a.ctx.translate(-a.x1, -a.y1));\n a.layoutManager = new Ga(a.x1, a.y1, a.x2, a.y2, 2)\n };\n p.prototype.renderIndexLabels = function (a) {\n var d = a || this.plotArea.ctx,\n b = this.plotArea,\n c = 0,\n e = 0,\n g = 0,\n m = 0,\n l = c = m = e = g = 0,\n w = 0;\n for (a = 0; a < this._indexLabels.length; a++) {\n var h = this._indexLabels[a],\n s = h.chartType.toLowerCase(),\n q, n, l = na(\"indexLabelFontColor\", h.dataPoint, h.dataSeries),\n w = na(\"indexLabelFontSize\", h.dataPoint, h.dataSeries);\n q = na(\"indexLabelFontFamily\", h.dataPoint, h.dataSeries);\n n = na(\"indexLabelFontStyle\", h.dataPoint, h.dataSeries);\n var m = na(\"indexLabelFontWeight\", h.dataPoint, h.dataSeries),\n f = na(\"indexLabelBackgroundColor\", h.dataPoint, h.dataSeries),\n e = na(\"indexLabelMaxWidth\", h.dataPoint, h.dataSeries),\n g = na(\"indexLabelWrap\", h.dataPoint, h.dataSeries),\n B = na(\"indexLabelLineDashType\", h.dataPoint, h.dataSeries),\n k = na(\"indexLabelLineColor\",\n h.dataPoint, h.dataSeries),\n p = u(h.dataPoint.indexLabelLineThickness) ? u(h.dataSeries.options.indexLabelLineThickness) ? 0 : h.dataSeries.options.indexLabelLineThickness : h.dataPoint.indexLabelLineThickness,\n c = 0 < p ? Math.min(10, (\"normal\" === this.plotInfo.axisPlacement ? this.plotArea.height : this.plotArea.width) << 0) : 0,\n t = {\n percent: null,\n total: null\n },\n C = null;\n if (0 <= h.dataSeries.type.indexOf(\"stacked\") || \"pie\" === h.dataSeries.type || \"doughnut\" === h.dataSeries.type) t = this.getPercentAndTotal(h.dataSeries, h.dataPoint);\n if (h.dataSeries.indexLabelFormatter ||\n h.dataPoint.indexLabelFormatter) C = {\n chart: this,\n dataSeries: h.dataSeries,\n dataPoint: h.dataPoint,\n index: h.indexKeyword,\n total: t.total,\n percent: t.percent\n };\n var x = h.dataPoint.indexLabelFormatter ? h.dataPoint.indexLabelFormatter(C) : h.dataPoint.indexLabel ? this.replaceKeywordsWithValue(h.dataPoint.indexLabel, h.dataPoint, h.dataSeries, null, h.indexKeyword) : h.dataSeries.indexLabelFormatter ? h.dataSeries.indexLabelFormatter(C) : h.dataSeries.indexLabel ? this.replaceKeywordsWithValue(h.dataSeries.indexLabel, h.dataPoint, h.dataSeries,\n null, h.indexKeyword) : null;\n if (null !== x && \"\" !== x) {\n var t = na(\"indexLabelPlacement\", h.dataPoint, h.dataSeries),\n C = na(\"indexLabelOrientation\", h.dataPoint, h.dataSeries),\n ma = h.direction,\n y = h.dataSeries.axisX,\n A = h.dataSeries.axisY,\n v = !1,\n f = new ka(d, {\n x: 0,\n y: 0,\n maxWidth: e ? e : 0.5 * this.width,\n maxHeight: g ? 5 * w : 1.5 * w,\n angle: \"horizontal\" === C ? 0 : -90,\n text: x,\n padding: 0,\n backgroundColor: f,\n horizontalAlign: \"left\",\n fontSize: w,\n fontFamily: q,\n fontWeight: m,\n fontColor: l,\n fontStyle: n,\n textBaseline: \"top\"\n });\n f.measureText();\n h.dataSeries.indexLabelMaxWidth =\n f.maxWidth;\n if (\"stackedarea100\" === s) {\n if (h.point.x < b.x1 || h.point.x > b.x2 || h.point.y < b.y1 - 1 || h.point.y > b.y2 + 1) continue\n } else if (\"rangearea\" === s || \"rangesplinearea\" === s) {\n if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x > y.viewportMaximum || Math.max.apply(null, h.dataPoint.y) < A.viewportMinimum || Math.min.apply(null, h.dataPoint.y) > A.viewportMaximum) continue\n } else if (0 <= s.indexOf(\"line\") || 0 <= s.indexOf(\"area\") || 0 <= s.indexOf(\"bubble\") || 0 <= s.indexOf(\"scatter\")) {\n if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x > y.viewportMaximum ||\n h.dataPoint.y < A.viewportMinimum || h.dataPoint.y > A.viewportMaximum) continue\n } else if (0 <= s.indexOf(\"column\") || \"waterfall\" === s || \"error\" === s && !h.axisSwapped) {\n if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x > y.viewportMaximum || h.bounds.y1 > b.y2 || h.bounds.y2 < b.y1) continue\n } else if (0 <= s.indexOf(\"bar\") || \"error\" === s) {\n if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x > y.viewportMaximum || h.bounds.x1 > b.x2 || h.bounds.x2 < b.x1) continue\n } else if (\"candlestick\" === s || \"ohlc\" === s) {\n if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x >\n y.viewportMaximum || Math.max.apply(null, h.dataPoint.y) < A.viewportMinimum || Math.min.apply(null, h.dataPoint.y) > A.viewportMaximum) continue\n } else if (h.dataPoint.x < y.viewportMinimum || h.dataPoint.x > y.viewportMaximum) continue;\n e = m = 2;\n \"horizontal\" === C ? (l = f.width, w = f.height) : (w = f.width, l = f.height);\n if (\"normal\" === this.plotInfo.axisPlacement) {\n if (0 <= s.indexOf(\"line\") || 0 <= s.indexOf(\"area\")) t = \"auto\", m = 4;\n else if (0 <= s.indexOf(\"stacked\")) \"auto\" === t && (t = \"inside\");\n else if (\"bubble\" === s || \"scatter\" === s) t = \"inside\";\n q = h.point.x -\n l / 2;\n \"inside\" !== t ? (e = b.y1, g = b.y2, 0 < ma ? (n = h.point.y - w - m - c, n < e && (n = \"auto\" === t ? Math.max(h.point.y, e) + m + c : e + m + c, v = n + w > h.point.y)) : (n = h.point.y + m + c, n > g - w - m - c && (n = \"auto\" === t ? Math.min(h.point.y, g) - w - m - c : g - w - m - c, v = n < h.point.y))) : (e = Math.max(h.bounds.y1, b.y1), g = Math.min(h.bounds.y2, b.y2), c = 0 <= s.indexOf(\"range\") || \"error\" === s ? 0 < ma ? Math.max(h.bounds.y1, b.y1) + w / 2 + m : Math.min(h.bounds.y2, b.y2) - w / 2 - m : (Math.max(h.bounds.y1, b.y1) + Math.min(h.bounds.y2, b.y2)) / 2, 0 < ma ? (n = Math.max(h.point.y, c) - w / 2, n < e && (\"bubble\" === s || \"scatter\" ===\n s) && (n = Math.max(h.point.y - w - m, b.y1 + m))) : (n = Math.min(h.point.y, c) - w / 2, n > g - w - m && (\"bubble\" === s || \"scatter\" === s) && (n = Math.min(h.point.y + m, b.y2 - w - m))), n = Math.min(n, g - w))\n } else 0 <= s.indexOf(\"line\") || 0 <= s.indexOf(\"area\") || 0 <= s.indexOf(\"scatter\") ? (t = \"auto\", e = 4) : 0 <= s.indexOf(\"stacked\") ? \"auto\" === t && (t = \"inside\") : \"bubble\" === s && (t = \"inside\"), n = h.point.y - w / 2, \"inside\" !== t ? (m = b.x1, g = b.x2, 0 > ma ? (q = h.point.x - l - e - c, q < m && (q = \"auto\" === t ? Math.max(h.point.x, m) + e + c : m + e + c, v = q + l > h.point.x)) : (q = h.point.x + e + c, q > g - l - e - c && (q = \"auto\" ===\n t ? Math.min(h.point.x, g) - l - e - c : g - l - e - c, v = q < h.point.x))) : (m = Math.max(h.bounds.x1, b.x1), Math.min(h.bounds.x2, b.x2), c = 0 <= s.indexOf(\"range\") || \"error\" === s ? 0 > ma ? Math.max(h.bounds.x1, b.x1) + l / 2 + e : Math.min(h.bounds.x2, b.x2) - l / 2 - e : (Math.max(h.bounds.x1, b.x1) + Math.min(h.bounds.x2, b.x2)) / 2, q = 0 > ma ? Math.max(h.point.x, c) - l / 2 : Math.min(h.point.x, c) - l / 2, q = Math.max(q, m));\n \"vertical\" === C && (n += w);\n f.x = q;\n f.y = n;\n f.render(!0);\n p && (\"inside\" !== t && (0 > s.indexOf(\"bar\") && (\"error\" !== s || !h.axisSwapped) && h.point.x > b.x1 && h.point.x < b.x2 ||\n !v) && (0 > s.indexOf(\"column\") && (\"error\" !== s || h.axisSwapped) && h.point.y > b.y1 && h.point.y < b.y2 || !v)) && (d.lineWidth = p, d.strokeStyle = k ? k : \"gray\", d.setLineDash && d.setLineDash(R(B, p)), d.beginPath(), d.moveTo(h.point.x, h.point.y), 0 <= s.indexOf(\"bar\") || \"error\" === s && h.axisSwapped ? d.lineTo(q + (0 < h.direction ? 0 : l), n + (\"horizontal\" === C ? w : -w) / 2) : 0 <= s.indexOf(\"column\") || \"error\" === s && !h.axisSwapped ? d.lineTo(q + l / 2, n + ((0 < h.direction ? w : -w) + (\"horizontal\" === C ? w : -w)) / 2) : d.lineTo(q + l / 2, n + ((n < h.point.y ? w : -w) + (\"horizontal\" === C ? w :\n -w)) / 2), d.stroke())\n }\n }\n d = {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0,\n startTimePercent: 0.7\n };\n for (a = 0; a < this._indexLabels.length; a++) h = this._indexLabels[a], f = na(\"indexLabelBackgroundColor\", h.dataPoint, h.dataSeries), h.dataSeries.indexLabelBackgroundColor = u(f) ? r ? \"transparent\" : null : f;\n return d\n };\n p.prototype.renderLine = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c =\n this._eventManager.ghostCtx;\n b.save();\n var e = this.plotArea;\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n for (var g = [], m, l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = a.dataSeriesIndexes[l],\n h = this.data[w];\n b.lineWidth = h.lineThickness;\n var s = h.dataPoints,\n q = \"solid\";\n if (b.setLineDash) {\n var n = R(h.nullDataLineDashType, h.lineThickness),\n q = h.lineDashType,\n f = R(q, h.lineThickness);\n b.setLineDash(f)\n }\n var B = h.id;\n this._eventManager.objectMap[B] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: w\n };\n B = N(B);\n c.strokeStyle = B;\n c.lineWidth = 0 < h.lineThickness ? Math.max(h.lineThickness, 4) : 0;\n var B = h._colorSet,\n k = B = h.lineColor = h.options.lineColor ? h.options.lineColor : B[0];\n b.strokeStyle = B;\n var p = !0,\n t = 0,\n C, x;\n b.beginPath();\n if (0 < s.length) {\n for (var u = !1, t = 0; t < s.length; t++)\n if (C = s[t].x.getTime ? s[t].x.getTime() : s[t].x, !(C < a.axisX.dataInfo.viewPortMin || C > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !u)))\n if (\"number\" !== typeof s[t].y) 0 < t && !(h.connectNullData || u || p) && (b.stroke(), r && c.stroke()), u = !0;\n else {\n C = a.axisX.convertValueToPixel(C);\n x =\n a.axisY.convertValueToPixel(s[t].y);\n var y = h.dataPointIds[t];\n this._eventManager.objectMap[y] = {\n id: y,\n objectType: \"dataPoint\",\n dataSeriesIndex: w,\n dataPointIndex: t,\n x1: C,\n y1: x\n };\n p || u ? (!p && h.connectNullData ? (b.setLineDash && (h.options.nullDataLineDashType || q === h.lineDashType && h.lineDashType !== h.nullDataLineDashType) && (b.stroke(), b.beginPath(), b.moveTo(m.x, m.y), q = h.nullDataLineDashType, b.setLineDash(n)), b.lineTo(C, x), r && c.lineTo(C, x)) : (b.beginPath(), b.moveTo(C, x), r && (c.beginPath(), c.moveTo(C, x))), u = p = !1) : (b.lineTo(C,\n x), r && c.lineTo(C, x), 0 == t % 500 && (b.stroke(), b.beginPath(), b.moveTo(C, x), r && (c.stroke(), c.beginPath(), c.moveTo(C, x))));\n m = {\n x: C,\n y: x\n };\n t < s.length - 1 && (k !== (s[t].lineColor || B) || q !== (s[t].lineDashType || h.lineDashType)) && (b.stroke(), b.beginPath(), b.moveTo(C, x), k = s[t].lineColor || B, b.strokeStyle = k, b.setLineDash && (s[t].lineDashType ? (q = s[t].lineDashType, b.setLineDash(R(q, h.lineThickness))) : (q = h.lineDashType, b.setLineDash(f))));\n if (0 < s[t].markerSize || 0 < h.markerSize) {\n var A = h.getMarkerProperties(t, C, x, b);\n g.push(A);\n y = N(y);\n r && g.push({\n x: C,\n y: x,\n ctx: c,\n type: A.type,\n size: A.size,\n color: y,\n borderColor: y,\n borderThickness: A.borderThickness\n })\n } (s[t].indexLabel || h.indexLabel || s[t].indexLabelFormatter || h.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"line\",\n dataPoint: s[t],\n dataSeries: h,\n point: {\n x: C,\n y: x\n },\n direction: 0 > s[t].y === a.axisY.reversed ? 1 : -1,\n color: B\n })\n } b.stroke();\n r && c.stroke()\n }\n }\n ia.drawMarkers(g);\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas &&\n b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), c.beginPath());\n b.restore();\n b.beginPath();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderStepLine = function (a) {\n var d = a.targetCanvasCtx ||\n this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = this._eventManager.ghostCtx;\n b.save();\n var e = this.plotArea;\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n for (var g = [], m, l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = a.dataSeriesIndexes[l],\n h = this.data[w];\n b.lineWidth = h.lineThickness;\n var s = h.dataPoints,\n q = \"solid\";\n if (b.setLineDash) {\n var n = R(h.nullDataLineDashType, h.lineThickness),\n q = h.lineDashType,\n f = R(q, h.lineThickness);\n b.setLineDash(f)\n }\n var B = h.id;\n this._eventManager.objectMap[B] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: w\n };\n B = N(B);\n c.strokeStyle = B;\n c.lineWidth = 0 < h.lineThickness ? Math.max(h.lineThickness, 4) : 0;\n var B = h._colorSet,\n k = B = h.lineColor = h.options.lineColor ? h.options.lineColor : B[0];\n b.strokeStyle = B;\n var p = !0,\n t = 0,\n C, x;\n b.beginPath();\n if (0 < s.length) {\n for (var u = !1, t = 0; t < s.length; t++)\n if (C = s[t].getTime ? s[t].x.getTime() : s[t].x, !(C < a.axisX.dataInfo.viewPortMin || C > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !u)))\n if (\"number\" !== typeof s[t].y) 0 < t && !(h.connectNullData || u || p) && (b.stroke(),\n r && c.stroke()), u = !0;\n else {\n var y = x;\n C = a.axisX.convertValueToPixel(C);\n x = a.axisY.convertValueToPixel(s[t].y);\n var A = h.dataPointIds[t];\n this._eventManager.objectMap[A] = {\n id: A,\n objectType: \"dataPoint\",\n dataSeriesIndex: w,\n dataPointIndex: t,\n x1: C,\n y1: x\n };\n p || u ? (!p && h.connectNullData ? (b.setLineDash && (h.options.nullDataLineDashType || q === h.lineDashType && h.lineDashType !== h.nullDataLineDashType) && (b.stroke(), b.beginPath(), b.moveTo(m.x, m.y), q = h.nullDataLineDashType, b.setLineDash(n)), b.lineTo(C, y), b.lineTo(C, x), r && (c.lineTo(C,\n y), c.lineTo(C, x))) : (b.beginPath(), b.moveTo(C, x), r && (c.beginPath(), c.moveTo(C, x))), u = p = !1) : (b.lineTo(C, y), r && c.lineTo(C, y), b.lineTo(C, x), r && c.lineTo(C, x), 0 == t % 500 && (b.stroke(), b.beginPath(), b.moveTo(C, x), r && (c.stroke(), c.beginPath(), c.moveTo(C, x))));\n m = {\n x: C,\n y: x\n };\n t < s.length - 1 && (k !== (s[t].lineColor || B) || q !== (s[t].lineDashType || h.lineDashType)) && (b.stroke(), b.beginPath(), b.moveTo(C, x), k = s[t].lineColor || B, b.strokeStyle = k, b.setLineDash && (s[t].lineDashType ? (q = s[t].lineDashType, b.setLineDash(R(q, h.lineThickness))) :\n (q = h.lineDashType, b.setLineDash(f))));\n if (0 < s[t].markerSize || 0 < h.markerSize) y = h.getMarkerProperties(t, C, x, b), g.push(y), A = N(A), r && g.push({\n x: C,\n y: x,\n ctx: c,\n type: y.type,\n size: y.size,\n color: A,\n borderColor: A,\n borderThickness: y.borderThickness\n });\n (s[t].indexLabel || h.indexLabel || s[t].indexLabelFormatter || h.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stepLine\",\n dataPoint: s[t],\n dataSeries: h,\n point: {\n x: C,\n y: x\n },\n direction: 0 > s[t].y === a.axisY.reversed ? 1 : -1,\n color: B\n })\n } b.stroke();\n r && c.stroke()\n }\n }\n ia.drawMarkers(g);\n r &&\n (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), c.beginPath());\n b.restore();\n b.beginPath();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderSpline = function (a) {\n function d(a) {\n a = v(a, 2);\n if (0 < a.length) {\n c.beginPath();\n r && e.beginPath();\n c.moveTo(a[0].x, a[0].y);\n a[0].newStrokeStyle && (c.strokeStyle = a[0].newStrokeStyle);\n a[0].newLineDashArray && c.setLineDash(a[0].newLineDashArray);\n r && e.moveTo(a[0].x, a[0].y);\n for (var b = 0; b < a.length - 3; b += 3)\n if (c.bezierCurveTo(a[b + 1].x, a[b + 1].y, a[b + 2].x, a[b + 2].y, a[b + 3].x, a[b + 3].y), r && e.bezierCurveTo(a[b + 1].x, a[b + 1].y, a[b + 2].x, a[b + 2].y, a[b + 3].x, a[b + 3].y),\n 0 < b && 0 === b % 3E3 || a[b + 3].newStrokeStyle || a[b + 3].newLineDashArray) c.stroke(), c.beginPath(), c.moveTo(a[b + 3].x, a[b + 3].y), a[b + 3].newStrokeStyle && (c.strokeStyle = a[b + 3].newStrokeStyle), a[b + 3].newLineDashArray && c.setLineDash(a[b + 3].newLineDashArray), r && (e.stroke(), e.beginPath(), e.moveTo(a[b + 3].x, a[b + 3].y));\n c.stroke();\n r && e.stroke()\n }\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = this._eventManager.ghostCtx;\n c.save();\n var g = this.plotArea;\n c.beginPath();\n c.rect(g.x1, g.y1, g.width, g.height);\n c.clip();\n for (var m = [], l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = a.dataSeriesIndexes[l],\n h = this.data[w];\n c.lineWidth = h.lineThickness;\n var s = h.dataPoints,\n q = \"solid\";\n if (c.setLineDash) {\n var n = R(h.nullDataLineDashType, h.lineThickness),\n q = h.lineDashType,\n f = R(q, h.lineThickness);\n c.setLineDash(f)\n }\n var B = h.id;\n this._eventManager.objectMap[B] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: w\n };\n B = N(B);\n e.strokeStyle = B;\n e.lineWidth = 0 < h.lineThickness ? Math.max(h.lineThickness, 4) : 0;\n var B = h._colorSet,\n k = B = h.lineColor = h.options.lineColor ? h.options.lineColor : B[0];\n c.strokeStyle = B;\n var p = 0,\n t, u, x = [];\n c.beginPath();\n if (0 < s.length)\n for (u = !1, p = 0; p < s.length; p++)\n if (t = s[p].getTime ? s[p].x.getTime() : s[p].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !u)))\n if (\"number\" !== typeof s[p].y) 0 < p && !u && (h.connectNullData ? c.setLineDash && (0 < x.length && (h.options.nullDataLineDashType || !s[p - 1].lineDashType)) && (x[x.length - 1].newLineDashArray = n, q = h.nullDataLineDashType) : (d(x), x = [])), u = !0;\n else {\n t = a.axisX.convertValueToPixel(t);\n u = a.axisY.convertValueToPixel(s[p].y);\n var ma = h.dataPointIds[p];\n this._eventManager.objectMap[ma] = {\n id: ma,\n objectType: \"dataPoint\",\n dataSeriesIndex: w,\n dataPointIndex: p,\n x1: t,\n y1: u\n };\n x[x.length] = {\n x: t,\n y: u\n };\n p < s.length - 1 && (k !== (s[p].lineColor || B) || q !== (s[p].lineDashType || h.lineDashType)) && (k = s[p].lineColor || B, x[x.length - 1].newStrokeStyle = k, c.setLineDash && (s[p].lineDashType ? (q = s[p].lineDashType, x[x.length - 1].newLineDashArray = R(q, h.lineThickness)) : (q = h.lineDashType, x[x.length -\n 1].newLineDashArray = f)));\n if (0 < s[p].markerSize || 0 < h.markerSize) {\n var y = h.getMarkerProperties(p, t, u, c);\n m.push(y);\n ma = N(ma);\n r && m.push({\n x: t,\n y: u,\n ctx: e,\n type: y.type,\n size: y.size,\n color: ma,\n borderColor: ma,\n borderThickness: y.borderThickness\n })\n } (s[p].indexLabel || h.indexLabel || s[p].indexLabelFormatter || h.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"spline\",\n dataPoint: s[p],\n dataSeries: h,\n point: {\n x: t,\n y: u\n },\n direction: 0 > s[p].y === a.axisY.reversed ? 1 : -1,\n color: B\n });\n u = !1\n } d(x)\n }\n ia.drawMarkers(m);\n r && (b.drawImage(this._preRenderCanvas,\n 0, 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(g.x1, g.y1, g.width, g.height), e.beginPath());\n c.restore();\n c.beginPath();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderColumn = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = 0,\n m, l, w, h = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n g = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1,\n s = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.width,\n 0.9 * (this.plotArea.width / a.plotType.totalDataSeries)) << 0,\n q = a.axisX.dataInfo.minDiff;\n isFinite(q) || (q = 0.3 * Math.abs(a.axisX.range));\n q = this.dataPointWidth = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.width * (a.axisX.logarithmic ? Math.log(q) / Math.log(a.axisX.range) : Math.abs(q) / Math.abs(a.axisX.range)) / a.plotType.totalDataSeries) << 0;\n this.dataPointMaxWidth && g > s && (g = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, s));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && s < g) && (s = Math.max(this.options.dataPointWidth ?\n this.dataPointWidth : -Infinity, g));\n q < g && (q = g);\n q > s && (q = s);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (s = 0; s < a.dataSeriesIndexes.length; s++) {\n var n = a.dataSeriesIndexes[s],\n f = this.data[n],\n B = f.dataPoints;\n if (0 < B.length)\n for (var p = 5 < q && f.bevelEnabled ? !0 : !1, g = 0; g < B.length; g++)\n if (B[g].getTime ? w = B[g].x.getTime() :\n w = B[g].x, !(w < a.axisX.dataInfo.viewPortMin || w > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof B[g].y) {\n m = a.axisX.convertValueToPixel(w);\n l = a.axisY.convertValueToPixel(B[g].y);\n m = a.axisX.reversed ? m + a.plotType.totalDataSeries * q / 2 - (a.previousDataSeriesCount + s) * q << 0 : m - a.plotType.totalDataSeries * q / 2 + (a.previousDataSeriesCount + s) * q << 0;\n var k = a.axisX.reversed ? m - q << 0 : m + q << 0,\n t;\n 0 <= B[g].y ? t = h : (t = l, l = h);\n l > t && (c = l, l = t, t = c);\n c = B[g].color ? B[g].color : f._colorSet[g % f._colorSet.length];\n ea(b, m, l, k, t, c, 0, null, p && 0 <= B[g].y,\n 0 > B[g].y && p, !1, !1, f.fillOpacity);\n c = f.dataPointIds[g];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: n,\n dataPointIndex: g,\n x1: m,\n y1: l,\n x2: k,\n y2: t\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, m, l, k, t, c, 0, null, !1, !1, !1, !1);\n (B[g].indexLabel || f.indexLabel || B[g].indexLabelFormatter || f.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"column\",\n dataPoint: B[g],\n dataSeries: f,\n point: {\n x: m + (k - m) / 2,\n y: 0 > B[g].y === a.axisY.reversed ? l : t\n },\n direction: 0 > B[g].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: m,\n y1: Math.min(l, t),\n x2: k,\n y2: Math.max(l, t)\n },\n color: c\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.yScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: h < a.axisY.bounds.y1 ? a.axisY.bounds.y1 : h > a.axisY.bounds.y2 ? a.axisY.bounds.y2 : h\n }\n }\n };\n p.prototype.renderStackedColumn = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = [],\n m = [],\n l = [],\n w = [],\n h = 0,\n s, q, n = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n h = this.options.dataPointMinWidth ?\n this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n s = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.15 * this.width << 0;\n var f = a.axisX.dataInfo.minDiff;\n isFinite(f) || (f = 0.3 * Math.abs(a.axisX.range));\n f = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.width * (a.axisX.logarithmic ? Math.log(f) / Math.log(a.axisX.range) : Math.abs(f) / Math.abs(a.axisX.range)) / a.plotType.plotUnits.length) << 0;\n this.dataPointMaxWidth && h > s && (h = Math.min(this.options.dataPointWidth ?\n this.dataPointWidth : Infinity, s));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && s < h) && (s = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, h));\n f < h && (f = h);\n f > s && (f = s);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var B = 0; B < a.dataSeriesIndexes.length; B++) {\n var k = a.dataSeriesIndexes[B],\n p = this.data[k],\n t = p.dataPoints;\n if (0 < t.length) {\n var u = 5 < f && p.bevelEnabled ? !0 : !1;\n b.strokeStyle = \"#4572A7 \";\n for (h = 0; h < t.length; h++)\n if (c = t[h].x.getTime ? t[h].x.getTime() : t[h].x, !(c < a.axisX.dataInfo.viewPortMin || c > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof t[h].y) {\n s = a.axisX.convertValueToPixel(c);\n var x = s - a.plotType.plotUnits.length * f / 2 + a.index * f << 0,\n v = x + f << 0,\n y;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 < t[h].y) l[c] = t[h].y + (l[c] ? l[c] : 0), 0 < l[c] && (q = a.axisY.convertValueToPixel(l[c]),\n y = \"undefined\" !== typeof g[c] ? g[c] : n, g[c] = q);\n else if (a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 >= t[h].y) w[c] = t[h].y + (w[c] ? w[c] : 0), y = a.axisY.convertValueToPixel(w[c]), q = \"undefined\" !== typeof m[c] ? m[c] : n, m[c] = y;\n else if (q = a.axisY.convertValueToPixel(t[h].y), 0 <= t[h].y) {\n var A = \"undefined\" !== typeof g[c] ? g[c] : 0;\n q -= A;\n y = n - A;\n g[c] = A + (y - q)\n } else A = m[c] ? m[c] : 0, y = q + A, q = n + A, m[c] = A + (y - q);\n c = t[h].color ? t[h].color : p._colorSet[h % p._colorSet.length];\n ea(b, x, q, v, y, c, 0, null, u && 0 <= t[h].y, 0 > t[h].y && u, !1,\n !1, p.fillOpacity);\n c = p.dataPointIds[h];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: k,\n dataPointIndex: h,\n x1: x,\n y1: q,\n x2: v,\n y2: y\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, x, q, v, y, c, 0, null, !1, !1, !1, !1);\n (t[h].indexLabel || p.indexLabel || t[h].indexLabelFormatter || p.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stackedColumn\",\n dataPoint: t[h],\n dataSeries: p,\n point: {\n x: s,\n y: 0 <= t[h].y ? q : y\n },\n direction: 0 > t[h].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: x,\n y1: Math.min(q, y),\n x2: v,\n y2: Math.max(q,\n y)\n },\n color: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.yScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: n < a.axisY.bounds.y1 ? a.axisY.bounds.y1 : n > a.axisY.bounds.y2 ? a.axisY.bounds.y2 : n\n }\n }\n };\n p.prototype.renderStackedColumn100 = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = [],\n m = [],\n l = [],\n w = [],\n h = 0,\n s, q, n = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n h = this.options.dataPointMinWidth ? this.dataPointMinWidth :\n this.options.dataPointWidth ? this.dataPointWidth : 1;\n s = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.15 * this.width << 0;\n var f = a.axisX.dataInfo.minDiff;\n isFinite(f) || (f = 0.3 * Math.abs(a.axisX.range));\n f = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.width * (a.axisX.logarithmic ? Math.log(f) / Math.log(a.axisX.range) : Math.abs(f) / Math.abs(a.axisX.range)) / a.plotType.plotUnits.length) << 0;\n this.dataPointMaxWidth && h > s && (h = Math.min(this.options.dataPointWidth ?\n this.dataPointWidth : Infinity, s));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && s < h) && (s = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, h));\n f < h && (f = h);\n f > s && (f = s);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var B = 0; B < a.dataSeriesIndexes.length; B++) {\n var p = a.dataSeriesIndexes[B],\n k = this.data[p],\n t = k.dataPoints;\n if (0 < t.length)\n for (var u = 5 < f && k.bevelEnabled ? !0 : !1, h = 0; h < t.length; h++)\n if (c = t[h].x.getTime ? t[h].x.getTime() : t[h].x, !(c < a.axisX.dataInfo.viewPortMin || c > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof t[h].y) {\n s = a.axisX.convertValueToPixel(c);\n q = 0 !== a.dataPointYSums[c] ? 100 * (t[h].y / a.dataPointYSums[c]) : 0;\n var x = s - a.plotType.plotUnits.length * f / 2 + a.index * f << 0,\n v = x + f << 0,\n y;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 < t[h].y) {\n l[c] = q +\n (\"undefined\" !== typeof l[c] ? l[c] : 0);\n if (0 >= l[c]) continue;\n q = a.axisY.convertValueToPixel(l[c]);\n y = g[c] ? g[c] : n;\n g[c] = q\n } else if (a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 >= t[h].y) w[c] = q + (\"undefined\" !== typeof w[c] ? w[c] : 0), y = a.axisY.convertValueToPixel(w[c]), q = m[c] ? m[c] : n, m[c] = y;\n else if (q = a.axisY.convertValueToPixel(q), 0 <= t[h].y) {\n var A = \"undefined\" !== typeof g[c] ? g[c] : 0;\n q -= A;\n y = n - A;\n a.dataSeriesIndexes.length - 1 === B && 1 >= Math.abs(e.y1 - q) && (q = e.y1);\n g[c] = A + (y - q)\n } else A = \"undefined\" !== typeof m[c] ?\n m[c] : 0, y = q + A, q = n + A, a.dataSeriesIndexes.length - 1 === B && 1 >= Math.abs(e.y2 - y) && (y = e.y2), m[c] = A + (y - q);\n c = t[h].color ? t[h].color : k._colorSet[h % k._colorSet.length];\n ea(b, x, q, v, y, c, 0, null, u && 0 <= t[h].y, 0 > t[h].y && u, !1, !1, k.fillOpacity);\n c = k.dataPointIds[h];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: p,\n dataPointIndex: h,\n x1: x,\n y1: q,\n x2: v,\n y2: y\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, x, q, v, y, c, 0, null, !1, !1, !1, !1);\n (t[h].indexLabel || k.indexLabel || t[h].indexLabelFormatter || k.indexLabelFormatter) &&\n this._indexLabels.push({\n chartType: \"stackedColumn100\",\n dataPoint: t[h],\n dataSeries: k,\n point: {\n x: s,\n y: 0 <= t[h].y ? q : y\n },\n direction: 0 > t[h].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: x,\n y1: Math.min(q, y),\n x2: v,\n y2: Math.max(q, y)\n },\n color: c\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx &&\n this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.yScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: n < a.axisY.bounds.y1 ? a.axisY.bounds.y1 : n > a.axisY.bounds.y2 ? a.axisY.bounds.y2 : n\n }\n }\n };\n p.prototype.renderBar = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c =\n null,\n e = this.plotArea,\n g = 0,\n m, l, w, h = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n g = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1,\n s = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.height, 0.9 * (this.plotArea.height / a.plotType.totalDataSeries)) << 0,\n q = a.axisX.dataInfo.minDiff;\n isFinite(q) || (q = 0.3 * Math.abs(a.axisX.range));\n q = this.options.dataPointWidth ?\n this.dataPointWidth : 0.9 * (e.height * (a.axisX.logarithmic ? Math.log(q) / Math.log(a.axisX.range) : Math.abs(q) / Math.abs(a.axisX.range)) / a.plotType.totalDataSeries) << 0;\n this.dataPointMaxWidth && g > s && (g = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, s));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && s < g) && (s = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, g));\n q < g && (q = g);\n q > s && (q = s);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (s = 0; s < a.dataSeriesIndexes.length; s++) {\n var n = a.dataSeriesIndexes[s],\n f = this.data[n],\n B = f.dataPoints;\n if (0 < B.length) {\n var k = 5 < q && f.bevelEnabled ? !0 : !1;\n b.strokeStyle = \"#4572A7 \";\n for (g = 0; g < B.length; g++)\n if (B[g].getTime ? w = B[g].x.getTime() : w = B[g].x, !(w < a.axisX.dataInfo.viewPortMin || w > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof B[g].y) {\n l = a.axisX.convertValueToPixel(w);\n m = a.axisY.convertValueToPixel(B[g].y);\n l = a.axisX.reversed ? l + a.plotType.totalDataSeries * q / 2 - (a.previousDataSeriesCount + s) * q << 0 : l - a.plotType.totalDataSeries * q / 2 + (a.previousDataSeriesCount + s) * q << 0;\n var p = a.axisX.reversed ? l - q << 0 : l + q << 0,\n t;\n 0 <= B[g].y ? t = h : (t = m, m = h);\n c = B[g].color ? B[g].color : f._colorSet[g % f._colorSet.length];\n ea(b, t, l, m, p, c, 0, null, k, !1, !1, !1, f.fillOpacity);\n c = f.dataPointIds[g];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: n,\n dataPointIndex: g,\n x1: t,\n y1: l,\n x2: m,\n y2: p\n };\n c =\n N(c);\n r && ea(this._eventManager.ghostCtx, t, l, m, p, c, 0, null, !1, !1, !1, !1);\n (B[g].indexLabel || f.indexLabel || B[g].indexLabelFormatter || f.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"bar\",\n dataPoint: B[g],\n dataSeries: f,\n point: {\n x: 0 <= B[g].y ? m : t,\n y: l + (p - l) / 2\n },\n direction: 0 > B[g].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: Math.min(t, m),\n y1: l,\n x2: Math.max(t, m),\n y2: p\n },\n color: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas,\n 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.xScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: h < a.axisY.bounds.x1 ? a.axisY.bounds.x1 : h > a.axisY.bounds.x2 ? a.axisY.bounds.x2 : h\n }\n }\n };\n p.prototype.renderStackedBar = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = [],\n m = [],\n l = [],\n w = [],\n h = 0,\n s, q, n = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n h = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n q = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.15 * this.height <<\n 0;\n var f = a.axisX.dataInfo.minDiff;\n isFinite(f) || (f = 0.3 * Math.abs(a.axisX.range));\n f = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.height * (a.axisX.logarithmic ? Math.log(f) / Math.log(a.axisX.range) : Math.abs(f) / Math.abs(a.axisX.range)) / a.plotType.plotUnits.length) << 0;\n this.dataPointMaxWidth && h > q && (h = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, q));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && q < h) && (q = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, h));\n f <\n h && (f = h);\n f > q && (f = q);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var B = 0; B < a.dataSeriesIndexes.length; B++) {\n var p = a.dataSeriesIndexes[B],\n k = this.data[p],\n t = k.dataPoints;\n if (0 < t.length) {\n var u = 5 < f && k.bevelEnabled ? !0 : !1;\n b.strokeStyle = \"#4572A7 \";\n for (h = 0; h < t.length; h++)\n if (c = t[h].x.getTime ? t[h].x.getTime() :\n t[h].x, !(c < a.axisX.dataInfo.viewPortMin || c > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof t[h].y) {\n q = a.axisX.convertValueToPixel(c);\n var x = q - a.plotType.plotUnits.length * f / 2 + a.index * f << 0,\n v = x + f << 0,\n y;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 < t[h].y) l[c] = t[h].y + (l[c] ? l[c] : 0), 0 < l[c] && (y = g[c] ? g[c] : n, g[c] = s = a.axisY.convertValueToPixel(l[c]));\n else if (a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 >= t[h].y) w[c] = t[h].y + (w[c] ? w[c] : 0), s = m[c] ?\n m[c] : n, m[c] = y = a.axisY.convertValueToPixel(w[c]);\n else if (s = a.axisY.convertValueToPixel(t[h].y), 0 <= t[h].y) {\n var A = g[c] ? g[c] : 0;\n y = n + A;\n s += A;\n g[c] = A + (s - y)\n } else A = m[c] ? m[c] : 0, y = s - A, s = n - A, m[c] = A + (s - y);\n c = t[h].color ? t[h].color : k._colorSet[h % k._colorSet.length];\n ea(b, y, x, s, v, c, 0, null, u, !1, !1, !1, k.fillOpacity);\n c = k.dataPointIds[h];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: p,\n dataPointIndex: h,\n x1: y,\n y1: x,\n x2: s,\n y2: v\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, y, x, s, v, c, 0, null, !1, !1, !1,\n !1);\n (t[h].indexLabel || k.indexLabel || t[h].indexLabelFormatter || k.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stackedBar\",\n dataPoint: t[h],\n dataSeries: k,\n point: {\n x: 0 <= t[h].y ? s : y,\n y: q\n },\n direction: 0 > t[h].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: Math.min(y, s),\n y1: x,\n x2: Math.max(y, s),\n y2: v\n },\n color: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas &&\n b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.xScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: n < a.axisY.bounds.x1 ? a.axisY.bounds.x1 : n > a.axisY.bounds.x2 ? a.axisY.bounds.x2 : n\n }\n }\n };\n p.prototype.renderStackedBar100 = function (a) {\n var d =\n a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = [],\n m = [],\n l = [],\n w = [],\n h = 0,\n s, q, n = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n h = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n q = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.15 * this.height << 0;\n var f = a.axisX.dataInfo.minDiff;\n isFinite(f) ||\n (f = 0.3 * Math.abs(a.axisX.range));\n f = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.height * (a.axisX.logarithmic ? Math.log(f) / Math.log(a.axisX.range) : Math.abs(f) / Math.abs(a.axisX.range)) / a.plotType.plotUnits.length) << 0;\n this.dataPointMaxWidth && h > q && (h = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, q));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && q < h) && (q = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, h));\n f < h && (f = h);\n f > q && (f = q);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var B = 0; B < a.dataSeriesIndexes.length; B++) {\n var k = a.dataSeriesIndexes[B],\n p = this.data[k],\n t = p.dataPoints;\n if (0 < t.length) {\n var u = 5 < f && p.bevelEnabled ? !0 : !1;\n b.strokeStyle = \"#4572A7 \";\n for (h = 0; h < t.length; h++)\n if (c = t[h].x.getTime ? t[h].x.getTime() : t[h].x, !(c < a.axisX.dataInfo.viewPortMin || c > a.axisX.dataInfo.viewPortMax) &&\n \"number\" === typeof t[h].y) {\n q = a.axisX.convertValueToPixel(c);\n var x;\n x = 0 !== a.dataPointYSums[c] ? 100 * (t[h].y / a.dataPointYSums[c]) : 0;\n var v = q - a.plotType.plotUnits.length * f / 2 + a.index * f << 0,\n y = v + f << 0;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 < t[h].y) {\n l[c] = x + (l[c] ? l[c] : 0);\n if (0 >= l[c]) continue;\n x = g[c] ? g[c] : n;\n g[c] = s = a.axisY.convertValueToPixel(l[c])\n } else if (a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length && 0 >= t[h].y) w[c] = x + (w[c] ? w[c] : 0), s = m[c] ? m[c] :\n n, m[c] = x = a.axisY.convertValueToPixel(w[c]);\n else if (s = a.axisY.convertValueToPixel(x), 0 <= t[h].y) {\n var A = g[c] ? g[c] : 0;\n x = n + A;\n s += A;\n a.dataSeriesIndexes.length - 1 === B && 1 >= Math.abs(e.x2 - s) && (s = e.x2);\n g[c] = A + (s - x)\n } else A = m[c] ? m[c] : 0, x = s - A, s = n - A, a.dataSeriesIndexes.length - 1 === B && 1 >= Math.abs(e.x1 - x) && (x = e.x1), m[c] = A + (s - x);\n c = t[h].color ? t[h].color : p._colorSet[h % p._colorSet.length];\n ea(b, x, v, s, y, c, 0, null, u, !1, !1, !1, p.fillOpacity);\n c = p.dataPointIds[h];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: k,\n dataPointIndex: h,\n x1: x,\n y1: v,\n x2: s,\n y2: y\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, x, v, s, y, c, 0, null, !1, !1, !1, !1);\n (t[h].indexLabel || p.indexLabel || t[h].indexLabelFormatter || p.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stackedBar100\",\n dataPoint: t[h],\n dataSeries: p,\n point: {\n x: 0 <= t[h].y ? s : x,\n y: q\n },\n direction: 0 > t[h].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: Math.min(x, s),\n y1: v,\n x2: Math.max(x, s),\n y2: y\n },\n color: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\",\n a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.xScaleAnimation,\n easingFunction: M.easing.easeOutQuart,\n animationBase: n < a.axisY.bounds.x1 ? a.axisY.bounds.x1 : n > a.axisY.bounds.x2 ? a.axisY.bounds.x2 : n\n }\n }\n };\n p.prototype.renderArea = function (a) {\n var d, b;\n\n function c() {\n A && (0 < B.lineThickness && g.stroke(), a.axisY.logarithmic || 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ? y = v : 0 > a.axisY.viewportMaximum ? y = w.y1 : 0 < a.axisY.viewportMinimum && (y = l.y2), g.lineTo(t, y), g.lineTo(A.x, y), g.closePath(), g.globalAlpha = B.fillOpacity, g.fill(), g.globalAlpha = 1, r && (m.lineTo(t, y), m.lineTo(A.x, y), m.closePath(), m.fill()), g.beginPath(), g.moveTo(t, u), m.beginPath(), m.moveTo(t, u), A = {\n x: t,\n y: u\n })\n }\n var e = a.targetCanvasCtx || this.plotArea.ctx,\n g = r ? this._preRenderCtx : e;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var m = this._eventManager.ghostCtx,\n l = a.axisX.lineCoordinates,\n w = a.axisY.lineCoordinates,\n h = [],\n s = this.plotArea,\n q;\n g.save();\n r && m.save();\n g.beginPath();\n g.rect(s.x1, s.y1, s.width, s.height);\n g.clip();\n r && (m.beginPath(), m.rect(s.x1, s.y1, s.width, s.height), m.clip());\n for (var n = 0; n < a.dataSeriesIndexes.length; n++) {\n var f = a.dataSeriesIndexes[n],\n B = this.data[f],\n p = B.dataPoints,\n h = B.id;\n this._eventManager.objectMap[h] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: f\n };\n h = N(h);\n m.fillStyle = h;\n h = [];\n d = !0;\n var k = 0,\n t, u, x, v = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n y, A = null;\n if (0 < p.length) {\n var z = B._colorSet[k % B._colorSet.length],\n aa = B.lineColor = B.options.lineColor || z,\n T = aa;\n g.fillStyle = z;\n g.strokeStyle = aa;\n g.lineWidth = B.lineThickness;\n b = \"solid\";\n if (g.setLineDash) {\n var Y = R(B.nullDataLineDashType, B.lineThickness);\n b = B.lineDashType;\n var ca = R(b, B.lineThickness);\n g.setLineDash(ca)\n }\n for (var da = !0; k < p.length; k++)\n if (x = p[k].x.getTime ? p[k].x.getTime() :\n p[k].x, !(x < a.axisX.dataInfo.viewPortMin || x > a.axisX.dataInfo.viewPortMax && (!B.connectNullData || !da)))\n if (\"number\" !== typeof p[k].y) B.connectNullData || (da || d) || c(), da = !0;\n else {\n t = a.axisX.convertValueToPixel(x);\n u = a.axisY.convertValueToPixel(p[k].y);\n d || da ? (!d && B.connectNullData ? (g.setLineDash && (B.options.nullDataLineDashType || b === B.lineDashType && B.lineDashType !== B.nullDataLineDashType) && (d = t, b = u, t = q.x, u = q.y, c(), g.moveTo(q.x, q.y), t = d, u = b, A = q, b = B.nullDataLineDashType, g.setLineDash(Y)), g.lineTo(t, u), r && m.lineTo(t,\n u)) : (g.beginPath(), g.moveTo(t, u), r && (m.beginPath(), m.moveTo(t, u)), A = {\n x: t,\n y: u\n }), da = d = !1) : (g.lineTo(t, u), r && m.lineTo(t, u), 0 == k % 250 && c());\n q = {\n x: t,\n y: u\n };\n k < p.length - 1 && (T !== (p[k].lineColor || aa) || b !== (p[k].lineDashType || B.lineDashType)) && (c(), T = p[k].lineColor || aa, g.strokeStyle = T, g.setLineDash && (p[k].lineDashType ? (b = p[k].lineDashType, g.setLineDash(R(b, B.lineThickness))) : (b = B.lineDashType, g.setLineDash(ca))));\n var Z = B.dataPointIds[k];\n this._eventManager.objectMap[Z] = {\n id: Z,\n objectType: \"dataPoint\",\n dataSeriesIndex: f,\n dataPointIndex: k,\n x1: t,\n y1: u\n };\n 0 !== p[k].markerSize && (0 < p[k].markerSize || 0 < B.markerSize) && (x = B.getMarkerProperties(k, t, u, g), h.push(x), Z = N(Z), r && h.push({\n x: t,\n y: u,\n ctx: m,\n type: x.type,\n size: x.size,\n color: Z,\n borderColor: Z,\n borderThickness: x.borderThickness\n }));\n (p[k].indexLabel || B.indexLabel || p[k].indexLabelFormatter || B.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"area\",\n dataPoint: p[k],\n dataSeries: B,\n point: {\n x: t,\n y: u\n },\n direction: 0 > p[k].y === a.axisY.reversed ? 1 : -1,\n color: z\n })\n } c();\n ia.drawMarkers(h)\n }\n }\n r && (e.drawImage(this._preRenderCanvas,\n 0, 0, this.width, this.height), g.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && g.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && g.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), g.clearRect(s.x1, s.y1, s.width, s.height), this._eventManager.ghostCtx.restore());\n g.restore();\n return {\n source: e,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderSplineArea = function (a) {\n function d() {\n var b = v(x, 2);\n if (0 < b.length) {\n if (0 < q.lineThickness) {\n c.beginPath();\n c.moveTo(b[0].x, b[0].y);\n b[0].newStrokeStyle && (c.strokeStyle = b[0].newStrokeStyle);\n b[0].newLineDashArray && c.setLineDash(b[0].newLineDashArray);\n for (var d = 0; d < b.length - 3; d += 3)\n if (c.bezierCurveTo(b[d + 1].x, b[d + 1].y, b[d + 2].x, b[d + 2].y, b[d + 3].x, b[d + 3].y), r && e.bezierCurveTo(b[d + 1].x, b[d + 1].y, b[d + 2].x, b[d + 2].y, b[d + 3].x, b[d + 3].y), b[d + 3].newStrokeStyle || b[d + 3].newLineDashArray) c.stroke(),\n c.beginPath(), c.moveTo(b[d + 3].x, b[d + 3].y), b[d + 3].newStrokeStyle && (c.strokeStyle = b[d + 3].newStrokeStyle), b[d + 3].newLineDashArray && c.setLineDash(b[d + 3].newLineDashArray);\n c.stroke()\n }\n c.beginPath();\n c.moveTo(b[0].x, b[0].y);\n r && (e.beginPath(), e.moveTo(b[0].x, b[0].y));\n for (d = 0; d < b.length - 3; d += 3) c.bezierCurveTo(b[d + 1].x, b[d + 1].y, b[d + 2].x, b[d + 2].y, b[d + 3].x, b[d + 3].y), r && e.bezierCurveTo(b[d + 1].x, b[d + 1].y, b[d + 2].x, b[d + 2].y, b[d + 3].x, b[d + 3].y);\n a.axisY.logarithmic || 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ?\n t = p : 0 > a.axisY.viewportMaximum ? t = m.y1 : 0 < a.axisY.viewportMinimum && (t = g.y2);\n u = {\n x: b[0].x,\n y: b[0].y\n };\n c.lineTo(b[b.length - 1].x, t);\n c.lineTo(u.x, t);\n c.closePath();\n c.globalAlpha = q.fillOpacity;\n c.fill();\n c.globalAlpha = 1;\n r && (e.lineTo(b[b.length - 1].x, t), e.lineTo(u.x, t), e.closePath(), e.fill())\n }\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = this._eventManager.ghostCtx,\n g = a.axisX.lineCoordinates,\n m = a.axisY.lineCoordinates,\n l = [],\n w = this.plotArea;\n c.save();\n r &&\n e.save();\n c.beginPath();\n c.rect(w.x1, w.y1, w.width, w.height);\n c.clip();\n r && (e.beginPath(), e.rect(w.x1, w.y1, w.width, w.height), e.clip());\n for (var h = 0; h < a.dataSeriesIndexes.length; h++) {\n var s = a.dataSeriesIndexes[h],\n q = this.data[s],\n n = q.dataPoints,\n l = q.id;\n this._eventManager.objectMap[l] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: s\n };\n l = N(l);\n e.fillStyle = l;\n var l = [],\n f = 0,\n B, k, p = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n t, u = null,\n x = [];\n if (0 < n.length) {\n var ma = q._colorSet[f % q._colorSet.length],\n y = q.lineColor = q.options.lineColor || ma,\n A = y;\n c.fillStyle = ma;\n c.strokeStyle = y;\n c.lineWidth = q.lineThickness;\n var z = \"solid\";\n if (c.setLineDash) {\n var aa = R(q.nullDataLineDashType, q.lineThickness),\n z = q.lineDashType,\n T = R(z, q.lineThickness);\n c.setLineDash(T)\n }\n for (k = !1; f < n.length; f++)\n if (B = n[f].x.getTime ? n[f].x.getTime() : n[f].x, !(B < a.axisX.dataInfo.viewPortMin || B > a.axisX.dataInfo.viewPortMax && (!q.connectNullData || !k)))\n if (\"number\" !== typeof n[f].y) 0 < f && !k && (q.connectNullData ? c.setLineDash && (0 < x.length && (q.options.nullDataLineDashType ||\n !n[f - 1].lineDashType)) && (x[x.length - 1].newLineDashArray = aa, z = q.nullDataLineDashType) : (d(), x = [])), k = !0;\n else {\n B = a.axisX.convertValueToPixel(B);\n k = a.axisY.convertValueToPixel(n[f].y);\n var Y = q.dataPointIds[f];\n this._eventManager.objectMap[Y] = {\n id: Y,\n objectType: \"dataPoint\",\n dataSeriesIndex: s,\n dataPointIndex: f,\n x1: B,\n y1: k\n };\n x[x.length] = {\n x: B,\n y: k\n };\n f < n.length - 1 && (A !== (n[f].lineColor || y) || z !== (n[f].lineDashType || q.lineDashType)) && (A = n[f].lineColor || y, x[x.length - 1].newStrokeStyle = A, c.setLineDash && (n[f].lineDashType ? (z =\n n[f].lineDashType, x[x.length - 1].newLineDashArray = R(z, q.lineThickness)) : (z = q.lineDashType, x[x.length - 1].newLineDashArray = T)));\n if (0 !== n[f].markerSize && (0 < n[f].markerSize || 0 < q.markerSize)) {\n var ca = q.getMarkerProperties(f, B, k, c);\n l.push(ca);\n Y = N(Y);\n r && l.push({\n x: B,\n y: k,\n ctx: e,\n type: ca.type,\n size: ca.size,\n color: Y,\n borderColor: Y,\n borderThickness: ca.borderThickness\n })\n } (n[f].indexLabel || q.indexLabel || n[f].indexLabelFormatter || q.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"splineArea\",\n dataPoint: n[f],\n dataSeries: q,\n point: {\n x: B,\n y: k\n },\n direction: 0 > n[f].y === a.axisY.reversed ? 1 : -1,\n color: ma\n });\n k = !1\n } d();\n ia.drawMarkers(l)\n }\n }\n r && (b.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(w.x1, w.y1, w.width, w.height),\n this._eventManager.ghostCtx.restore());\n c.restore();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderStepArea = function (a) {\n var d, b;\n\n function c() {\n A && (0 < B.lineThickness && g.stroke(), a.axisY.logarithmic || 0 >= a.axisY.viewportMinimum && 0 <= a.axisY.viewportMaximum ? y = v : 0 > a.axisY.viewportMaximum ? y = w.y1 : 0 < a.axisY.viewportMinimum && (y = l.y2), g.lineTo(t, y), g.lineTo(A.x, y), g.closePath(), g.globalAlpha = B.fillOpacity, g.fill(), g.globalAlpha =\n 1, r && (m.lineTo(t, y), m.lineTo(A.x, y), m.closePath(), m.fill()), g.beginPath(), g.moveTo(t, u), m.beginPath(), m.moveTo(t, u), A = {\n x: t,\n y: u\n })\n }\n var e = a.targetCanvasCtx || this.plotArea.ctx,\n g = r ? this._preRenderCtx : e;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var m = this._eventManager.ghostCtx,\n l = a.axisX.lineCoordinates,\n w = a.axisY.lineCoordinates,\n h = [],\n s = this.plotArea,\n q;\n g.save();\n r && m.save();\n g.beginPath();\n g.rect(s.x1, s.y1, s.width, s.height);\n g.clip();\n r && (m.beginPath(), m.rect(s.x1, s.y1, s.width, s.height), m.clip());\n for (var n = 0; n < a.dataSeriesIndexes.length; n++) {\n var f =\n a.dataSeriesIndexes[n],\n B = this.data[f],\n k = B.dataPoints,\n h = B.id;\n this._eventManager.objectMap[h] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: f\n };\n h = N(h);\n m.fillStyle = h;\n h = [];\n d = !0;\n var p = 0,\n t, u, x, v = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n y, A = null;\n b = !1;\n if (0 < k.length) {\n var z = B._colorSet[p % B._colorSet.length],\n aa = B.lineColor = B.options.lineColor || z,\n T = aa;\n g.fillStyle = z;\n g.strokeStyle = aa;\n g.lineWidth = B.lineThickness;\n var Y = \"solid\";\n if (g.setLineDash) {\n var ca = R(B.nullDataLineDashType, B.lineThickness),\n Y = B.lineDashType,\n da = R(Y, B.lineThickness);\n g.setLineDash(da)\n }\n for (; p < k.length; p++)\n if (x = k[p].x.getTime ? k[p].x.getTime() : k[p].x, !(x < a.axisX.dataInfo.viewPortMin || x > a.axisX.dataInfo.viewPortMax && (!B.connectNullData || !b))) {\n var Z = u;\n \"number\" !== typeof k[p].y ? (B.connectNullData || (b || d) || c(), b = !0) : (t = a.axisX.convertValueToPixel(x), u = a.axisY.convertValueToPixel(k[p].y), d || b ? (!d && B.connectNullData ? (g.setLineDash && (B.options.nullDataLineDashType || Y === B.lineDashType && B.lineDashType !== B.nullDataLineDashType) && (d =\n t, b = u, t = q.x, u = q.y, c(), g.moveTo(q.x, q.y), t = d, u = b, A = q, Y = B.nullDataLineDashType, g.setLineDash(ca)), g.lineTo(t, Z), g.lineTo(t, u), r && (m.lineTo(t, Z), m.lineTo(t, u))) : (g.beginPath(), g.moveTo(t, u), r && (m.beginPath(), m.moveTo(t, u)), A = {\n x: t,\n y: u\n }), b = d = !1) : (g.lineTo(t, Z), r && m.lineTo(t, Z), g.lineTo(t, u), r && m.lineTo(t, u), 0 == p % 250 && c()), q = {\n x: t,\n y: u\n }, p < k.length - 1 && (T !== (k[p].lineColor || aa) || Y !== (k[p].lineDashType || B.lineDashType)) && (c(), T = k[p].lineColor || aa, g.strokeStyle = T, g.setLineDash && (k[p].lineDashType ? (Y = k[p].lineDashType,\n g.setLineDash(R(Y, B.lineThickness))) : (Y = B.lineDashType, g.setLineDash(da)))), x = B.dataPointIds[p], this._eventManager.objectMap[x] = {\n id: x,\n objectType: \"dataPoint\",\n dataSeriesIndex: f,\n dataPointIndex: p,\n x1: t,\n y1: u\n }, 0 !== k[p].markerSize && (0 < k[p].markerSize || 0 < B.markerSize) && (Z = B.getMarkerProperties(p, t, u, g), h.push(Z), x = N(x), r && h.push({\n x: t,\n y: u,\n ctx: m,\n type: Z.type,\n size: Z.size,\n color: x,\n borderColor: x,\n borderThickness: Z.borderThickness\n })), (k[p].indexLabel || B.indexLabel || k[p].indexLabelFormatter || B.indexLabelFormatter) &&\n this._indexLabels.push({\n chartType: \"stepArea\",\n dataPoint: k[p],\n dataSeries: B,\n point: {\n x: t,\n y: u\n },\n direction: 0 > k[p].y === a.axisY.reversed ? 1 : -1,\n color: z\n }))\n } c();\n ia.drawMarkers(h)\n }\n }\n r && (e.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), g.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && g.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && g.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n 0, 0, this.width, this.height), g.clearRect(s.x1, s.y1, s.width, s.height), this._eventManager.ghostCtx.restore());\n g.restore();\n return {\n source: e,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderStackedArea = function (a) {\n function d() {\n if (!(1 > h.length)) {\n for (0 < A.lineThickness && c.stroke(); 0 < h.length;) {\n var a = h.pop();\n c.lineTo(a.x, a.y);\n r && u.lineTo(a.x, a.y)\n }\n c.closePath();\n c.globalAlpha = A.fillOpacity;\n c.fill();\n c.globalAlpha = 1;\n c.beginPath();\n r && (u.closePath(),\n u.fill(), u.beginPath());\n h = []\n }\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = null,\n g = null,\n m = [],\n l = this.plotArea,\n w = [],\n h = [],\n s = [],\n q = [],\n n = 0,\n f, k, p = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n u = this._eventManager.ghostCtx,\n t, C, x;\n r && u.beginPath();\n c.save();\n r && u.save();\n c.beginPath();\n c.rect(l.x1, l.y1, l.width, l.height);\n c.clip();\n r && (u.beginPath(), u.rect(l.x1, l.y1, l.width, l.height), u.clip());\n for (var e = [], v = 0; v < a.dataSeriesIndexes.length; v++) {\n var y =\n a.dataSeriesIndexes[v],\n A = this.data[y],\n z = A.dataPoints;\n A.dataPointIndexes = [];\n for (n = 0; n < z.length; n++) y = z[n].x.getTime ? z[n].x.getTime() : z[n].x, A.dataPointIndexes[y] = n, e[y] || (s.push(y), e[y] = !0);\n s.sort(Sa)\n }\n for (v = 0; v < a.dataSeriesIndexes.length; v++) {\n y = a.dataSeriesIndexes[v];\n A = this.data[y];\n z = A.dataPoints;\n C = !0;\n h = [];\n n = A.id;\n this._eventManager.objectMap[n] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: y\n };\n n = N(n);\n u.fillStyle = n;\n if (0 < s.length) {\n var e = A._colorSet[0],\n aa = A.lineColor = A.options.lineColor || e,\n T = aa;\n c.fillStyle =\n e;\n c.strokeStyle = aa;\n c.lineWidth = A.lineThickness;\n x = \"solid\";\n if (c.setLineDash) {\n var Y = R(A.nullDataLineDashType, A.lineThickness);\n x = A.lineDashType;\n var ca = R(x, A.lineThickness);\n c.setLineDash(ca)\n }\n for (var da = !0, n = 0; n < s.length; n++) {\n var g = s[n],\n Z = null,\n Z = 0 <= A.dataPointIndexes[g] ? z[A.dataPointIndexes[g]] : {\n x: g,\n y: null\n };\n if (!(g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax && (!A.connectNullData || !da)))\n if (\"number\" !== typeof Z.y) A.connectNullData || (da || C) || d(), da = !0;\n else {\n f = a.axisX.convertValueToPixel(g);\n var oa =\n w[g] ? w[g] : 0;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length) {\n q[g] = Z.y + (q[g] ? q[g] : 0);\n if (0 >= q[g] && a.axisY.logarithmic) continue;\n k = a.axisY.convertValueToPixel(q[g])\n } else k = a.axisY.convertValueToPixel(Z.y), k -= oa;\n h.push({\n x: f,\n y: p - oa\n });\n w[g] = p - k;\n C || da ? (!C && A.connectNullData ? (c.setLineDash && (A.options.nullDataLineDashType || x === A.lineDashType && A.lineDashType !== A.nullDataLineDashType) && (C = h.pop(), x = h[h.length - 1], d(), c.moveTo(t.x, t.y), h.push(x), h.push(C), x = A.nullDataLineDashType,\n c.setLineDash(Y)), c.lineTo(f, k), r && u.lineTo(f, k)) : (c.beginPath(), c.moveTo(f, k), r && (u.beginPath(), u.moveTo(f, k))), da = C = !1) : (c.lineTo(f, k), r && u.lineTo(f, k), 0 == n % 250 && (d(), c.moveTo(f, k), r && u.moveTo(f, k), h.push({\n x: f,\n y: p - oa\n })));\n t = {\n x: f,\n y: k\n };\n n < z.length - 1 && (T !== (z[n].lineColor || aa) || x !== (z[n].lineDashType || A.lineDashType)) && (d(), c.beginPath(), c.moveTo(f, k), h.push({\n x: f,\n y: p - oa\n }), T = z[n].lineColor || aa, c.strokeStyle = T, c.setLineDash && (z[n].lineDashType ? (x = z[n].lineDashType, c.setLineDash(R(x, A.lineThickness))) :\n (x = A.lineDashType, c.setLineDash(ca))));\n if (0 <= A.dataPointIndexes[g]) {\n var la = A.dataPointIds[A.dataPointIndexes[g]];\n this._eventManager.objectMap[la] = {\n id: la,\n objectType: \"dataPoint\",\n dataSeriesIndex: y,\n dataPointIndex: A.dataPointIndexes[g],\n x1: f,\n y1: k\n }\n }\n 0 <= A.dataPointIndexes[g] && 0 !== Z.markerSize && (0 < Z.markerSize || 0 < A.markerSize) && (oa = A.getMarkerProperties(A.dataPointIndexes[g], f, k, c), m.push(oa), g = N(la), r && m.push({\n x: f,\n y: k,\n ctx: u,\n type: oa.type,\n size: oa.size,\n color: g,\n borderColor: g,\n borderThickness: oa.borderThickness\n }));\n (Z.indexLabel || A.indexLabel || Z.indexLabelFormatter || A.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stackedArea\",\n dataPoint: Z,\n dataSeries: A,\n point: {\n x: f,\n y: k\n },\n direction: 0 > z[n].y === a.axisY.reversed ? 1 : -1,\n color: e\n })\n }\n }\n d();\n c.moveTo(f, k);\n r && u.moveTo(f, k)\n }\n delete A.dataPointIndexes\n }\n ia.drawMarkers(m);\n r && (b.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas &&\n c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(l.x1, l.y1, l.width, l.height), u.restore());\n c.restore();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderStackedArea100 = function (a) {\n function d() {\n for (0 < A.lineThickness && c.stroke(); 0 < h.length;) {\n var a = h.pop();\n c.lineTo(a.x, a.y);\n r && x.lineTo(a.x,\n a.y)\n }\n c.closePath();\n c.globalAlpha = A.fillOpacity;\n c.fill();\n c.globalAlpha = 1;\n c.beginPath();\n r && (x.closePath(), x.fill(), x.beginPath());\n h = []\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = null,\n g = null,\n m = this.plotArea,\n l = [],\n w = [],\n h = [],\n s = [],\n q = [],\n n = 0,\n f, k, p, u, t, C = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n x = this._eventManager.ghostCtx;\n c.save();\n r && x.save();\n c.beginPath();\n c.rect(m.x1, m.y1, m.width, m.height);\n c.clip();\n r && (x.beginPath(),\n x.rect(m.x1, m.y1, m.width, m.height), x.clip());\n for (var e = [], v = 0; v < a.dataSeriesIndexes.length; v++) {\n var y = a.dataSeriesIndexes[v],\n A = this.data[y],\n z = A.dataPoints;\n A.dataPointIndexes = [];\n for (n = 0; n < z.length; n++) y = z[n].x.getTime ? z[n].x.getTime() : z[n].x, A.dataPointIndexes[y] = n, e[y] || (s.push(y), e[y] = !0);\n s.sort(Sa)\n }\n for (v = 0; v < a.dataSeriesIndexes.length; v++) {\n y = a.dataSeriesIndexes[v];\n A = this.data[y];\n z = A.dataPoints;\n u = !0;\n e = A.id;\n this._eventManager.objectMap[e] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: y\n };\n e = N(e);\n x.fillStyle =\n e;\n h = [];\n if (0 < s.length) {\n var e = A._colorSet[n % A._colorSet.length],\n aa = A.lineColor = A.options.lineColor || e,\n T = aa;\n c.fillStyle = e;\n c.strokeStyle = aa;\n c.lineWidth = A.lineThickness;\n t = \"solid\";\n if (c.setLineDash) {\n var Y = R(A.nullDataLineDashType, A.lineThickness);\n t = A.lineDashType;\n var ca = R(t, A.lineThickness);\n c.setLineDash(ca)\n }\n for (var da = !0, n = 0; n < s.length; n++) {\n var g = s[n],\n Z = null,\n Z = 0 <= A.dataPointIndexes[g] ? z[A.dataPointIndexes[g]] : {\n x: g,\n y: null\n };\n if (!(g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax && (!A.connectNullData ||\n !da)))\n if (\"number\" !== typeof Z.y) A.connectNullData || (da || u) || d(), da = !0;\n else {\n var oa;\n oa = 0 !== a.dataPointYSums[g] ? 100 * (Z.y / a.dataPointYSums[g]) : 0;\n f = a.axisX.convertValueToPixel(g);\n var la = w[g] ? w[g] : 0;\n if (a.axisY.logarithmic || a.axisY.scaleBreaks && 0 < a.axisY.scaleBreaks._appliedBreaks.length) {\n q[g] = oa + (q[g] ? q[g] : 0);\n if (0 >= q[g] && a.axisY.logarithmic) continue;\n k = a.axisY.convertValueToPixel(q[g])\n } else k = a.axisY.convertValueToPixel(oa), k -= la;\n h.push({\n x: f,\n y: C - la\n });\n w[g] = C - k;\n u || da ? (!u && A.connectNullData ? (c.setLineDash &&\n (A.options.nullDataLineDashType || t === A.lineDashType && A.lineDashType !== A.nullDataLineDashType) && (u = h.pop(), t = h[h.length - 1], d(), c.moveTo(p.x, p.y), h.push(t), h.push(u), t = A.nullDataLineDashType, c.setLineDash(Y)), c.lineTo(f, k), r && x.lineTo(f, k)) : (c.beginPath(), c.moveTo(f, k), r && (x.beginPath(), x.moveTo(f, k))), da = u = !1) : (c.lineTo(f, k), r && x.lineTo(f, k), 0 == n % 250 && (d(), c.moveTo(f, k), r && x.moveTo(f, k), h.push({\n x: f,\n y: C - la\n })));\n p = {\n x: f,\n y: k\n };\n n < z.length - 1 && (T !== (z[n].lineColor || aa) || t !== (z[n].lineDashType || A.lineDashType)) &&\n (d(), c.beginPath(), c.moveTo(f, k), h.push({\n x: f,\n y: C - la\n }), T = z[n].lineColor || aa, c.strokeStyle = T, c.setLineDash && (z[n].lineDashType ? (t = z[n].lineDashType, c.setLineDash(R(t, A.lineThickness))) : (t = A.lineDashType, c.setLineDash(ca))));\n if (0 <= A.dataPointIndexes[g]) {\n var G = A.dataPointIds[A.dataPointIndexes[g]];\n this._eventManager.objectMap[G] = {\n id: G,\n objectType: \"dataPoint\",\n dataSeriesIndex: y,\n dataPointIndex: A.dataPointIndexes[g],\n x1: f,\n y1: k\n }\n }\n 0 <= A.dataPointIndexes[g] && 0 !== Z.markerSize && (0 < Z.markerSize || 0 < A.markerSize) && (la =\n A.getMarkerProperties(n, f, k, c), l.push(la), g = N(G), r && l.push({\n x: f,\n y: k,\n ctx: x,\n type: la.type,\n size: la.size,\n color: g,\n borderColor: g,\n borderThickness: la.borderThickness\n }));\n (Z.indexLabel || A.indexLabel || Z.indexLabelFormatter || A.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"stackedArea100\",\n dataPoint: Z,\n dataSeries: A,\n point: {\n x: f,\n y: k\n },\n direction: 0 > z[n].y === a.axisY.reversed ? 1 : -1,\n color: e\n })\n }\n }\n d();\n c.moveTo(f, k);\n r && x.moveTo(f, k)\n }\n delete A.dataPointIndexes\n }\n ia.drawMarkers(l);\n r && (b.drawImage(this._preRenderCanvas, 0,\n 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(m.x1, m.y1, m.width, m.height), x.restore());\n c.restore();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderBubble = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = this.plotArea,\n e = 0,\n g, m;\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(c.x1, c.y1, c.width, c.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(c.x1, c.y1, c.width, c.height), this._eventManager.ghostCtx.clip());\n for (var l = -Infinity, w = Infinity, h = 0; h < a.dataSeriesIndexes.length; h++)\n for (var s = a.dataSeriesIndexes[h],\n q = this.data[s], n = q.dataPoints, f = 0, e = 0; e < n.length; e++) g = n[e].getTime ? g = n[e].x.getTime() : g = n[e].x, g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax || \"undefined\" === typeof n[e].z || (f = n[e].z, f > l && (l = f), f < w && (w = f));\n for (var k = 25 * Math.PI, p = Math.max(Math.pow(0.25 * Math.min(c.height, c.width) / 2, 2) * Math.PI, k), h = 0; h < a.dataSeriesIndexes.length; h++)\n if (s = a.dataSeriesIndexes[h], q = this.data[s], n = q.dataPoints, 0 < n.length)\n for (b.strokeStyle = \"#4572A7 \", e = 0; e < n.length; e++)\n if (g = n[e].getTime ? g = n[e].x.getTime() :\n g = n[e].x, !(g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof n[e].y) {\n g = a.axisX.convertValueToPixel(g);\n m = a.axisY.convertValueToPixel(n[e].y);\n var f = n[e].z,\n u = 2 * Math.max(Math.sqrt((l === w ? p / 2 : k + (p - k) / (l - w) * (f - w)) / Math.PI) << 0, 1),\n f = q.getMarkerProperties(e, b);\n f.size = u;\n b.globalAlpha = q.fillOpacity;\n ia.drawMarker(g, m, b, f.type, f.size, f.color, f.borderColor, f.borderThickness);\n b.globalAlpha = 1;\n var t = q.dataPointIds[e];\n this._eventManager.objectMap[t] = {\n id: t,\n objectType: \"dataPoint\",\n dataSeriesIndex: s,\n dataPointIndex: e,\n x1: g,\n y1: m,\n size: u\n };\n u = N(t);\n r && ia.drawMarker(g, m, this._eventManager.ghostCtx, f.type, f.size, u, u, f.borderThickness);\n (n[e].indexLabel || q.indexLabel || n[e].indexLabelFormatter || q.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"bubble\",\n dataPoint: n[e],\n dataSeries: q,\n point: {\n x: g,\n y: m\n },\n direction: 1,\n bounds: {\n x1: g - f.size / 2,\n y1: m - f.size / 2,\n x2: g + f.size / 2,\n y2: m + f.size / 2\n },\n color: null\n })\n } r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas &&\n b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(c.x1, c.y1, c.width, c.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderScatter = function (a) {\n var d =\n a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = this.plotArea,\n e = 0,\n g, m;\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(c.x1, c.y1, c.width, c.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(c.x1, c.y1, c.width, c.height), this._eventManager.ghostCtx.clip());\n for (var l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = a.dataSeriesIndexes[l],\n h = this.data[w],\n s = h.dataPoints;\n if (0 < s.length) {\n b.strokeStyle =\n \"#4572A7 \";\n Math.pow(0.3 * Math.min(c.height, c.width) / 2, 2);\n for (var q = 0, n = 0, e = 0; e < s.length; e++)\n if (g = s[e].getTime ? g = s[e].x.getTime() : g = s[e].x, !(g < a.axisX.dataInfo.viewPortMin || g > a.axisX.dataInfo.viewPortMax) && \"number\" === typeof s[e].y) {\n g = a.axisX.convertValueToPixel(g);\n m = a.axisY.convertValueToPixel(s[e].y);\n var f = h.getMarkerProperties(e, g, m, b);\n b.globalAlpha = h.fillOpacity;\n ia.drawMarker(f.x, f.y, f.ctx, f.type, f.size, f.color, f.borderColor, f.borderThickness);\n b.globalAlpha = 1;\n Math.sqrt((q - g) * (q - g) + (n - m) * (n - m)) < Math.min(f.size,\n 5) && s.length > Math.min(this.plotArea.width, this.plotArea.height) || (q = h.dataPointIds[e], this._eventManager.objectMap[q] = {\n id: q,\n objectType: \"dataPoint\",\n dataSeriesIndex: w,\n dataPointIndex: e,\n x1: g,\n y1: m\n }, q = N(q), r && ia.drawMarker(f.x, f.y, this._eventManager.ghostCtx, f.type, f.size, q, q, f.borderThickness), (s[e].indexLabel || h.indexLabel || s[e].indexLabelFormatter || h.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"scatter\",\n dataPoint: s[e],\n dataSeries: h,\n point: {\n x: g,\n y: m\n },\n direction: 1,\n bounds: {\n x1: g - f.size / 2,\n y1: m - f.size /\n 2,\n x2: g + f.size / 2,\n y2: m + f.size / 2\n },\n color: null\n }), q = g, n = m)\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(c.x1, c.y1, c.width, c.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderCandlestick = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d,\n c = this._eventManager.ghostCtx;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = null,\n g = null,\n m = this.plotArea,\n l = 0,\n w, h, s, q, n, f, e = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1,\n g = this.options.dataPointMaxWidth ?\n this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.015 * this.width,\n k = a.axisX.dataInfo.minDiff;\n isFinite(k) || (k = 0.3 * Math.abs(a.axisX.range));\n k = this.options.dataPointWidth ? this.dataPointWidth : 0.7 * m.width * (a.axisX.logarithmic ? Math.log(k) / Math.log(a.axisX.range) : Math.abs(k) / Math.abs(a.axisX.range)) << 0;\n this.dataPointMaxWidth && e > g && (e = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, g));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && g < e) && (g = Math.max(this.options.dataPointWidth ?\n this.dataPointWidth : -Infinity, e));\n k < e && (k = e);\n k > g && (k = g);\n b.save();\n r && c.save();\n b.beginPath();\n b.rect(m.x1, m.y1, m.width, m.height);\n b.clip();\n r && (c.beginPath(), c.rect(m.x1, m.y1, m.width, m.height), c.clip());\n for (var p = 0; p < a.dataSeriesIndexes.length; p++) {\n var v = a.dataSeriesIndexes[p],\n t = this.data[v],\n C = t.dataPoints;\n if (0 < C.length)\n for (var x = 5 < k && t.bevelEnabled ? !0 : !1, l = 0; l < C.length; l++)\n if (C[l].getTime ? f = C[l].x.getTime() : f = C[l].x, !(f < a.axisX.dataInfo.viewPortMin || f > a.axisX.dataInfo.viewPortMax) && !u(C[l].y) && C[l].y.length &&\n \"number\" === typeof C[l].y[0] && \"number\" === typeof C[l].y[1] && \"number\" === typeof C[l].y[2] && \"number\" === typeof C[l].y[3]) {\n w = a.axisX.convertValueToPixel(f);\n h = a.axisY.convertValueToPixel(C[l].y[0]);\n s = a.axisY.convertValueToPixel(C[l].y[1]);\n q = a.axisY.convertValueToPixel(C[l].y[2]);\n n = a.axisY.convertValueToPixel(C[l].y[3]);\n var z = w - k / 2 << 0,\n y = z + k << 0,\n g = t.options.fallingColor ? t.fallingColor : t._colorSet[0],\n e = C[l].color ? C[l].color : t._colorSet[0],\n A = Math.round(Math.max(1, 0.15 * k)),\n D = 0 === A % 2 ? 0 : 0.5,\n aa = t.dataPointIds[l];\n this._eventManager.objectMap[aa] = {\n id: aa,\n objectType: \"dataPoint\",\n dataSeriesIndex: v,\n dataPointIndex: l,\n x1: z,\n y1: h,\n x2: y,\n y2: s,\n x3: w,\n y3: q,\n x4: w,\n y4: n,\n borderThickness: A,\n color: e\n };\n b.strokeStyle = e;\n b.beginPath();\n b.lineWidth = A;\n c.lineWidth = Math.max(A, 4);\n \"candlestick\" === t.type ? (b.moveTo(w - D, s), b.lineTo(w - D, Math.min(h, n)), b.stroke(), b.moveTo(w - D, Math.max(h, n)), b.lineTo(w - D, q), b.stroke(), ea(b, z, Math.min(h, n), y, Math.max(h, n), C[l].y[0] <= C[l].y[3] ? t.risingColor : g, A, e, x, x, !1, !1, t.fillOpacity), r && (e = N(aa), c.strokeStyle = e, c.moveTo(w -\n D, s), c.lineTo(w - D, Math.min(h, n)), c.stroke(), c.moveTo(w - D, Math.max(h, n)), c.lineTo(w - D, q), c.stroke(), ea(c, z, Math.min(h, n), y, Math.max(h, n), e, 0, null, !1, !1, !1, !1))) : \"ohlc\" === t.type && (b.moveTo(w - D, s), b.lineTo(w - D, q), b.stroke(), b.beginPath(), b.moveTo(w, h), b.lineTo(z, h), b.stroke(), b.beginPath(), b.moveTo(w, n), b.lineTo(y, n), b.stroke(), r && (e = N(aa), c.strokeStyle = e, c.moveTo(w - D, s), c.lineTo(w - D, q), c.stroke(), c.beginPath(), c.moveTo(w, h), c.lineTo(z, h), c.stroke(), c.beginPath(), c.moveTo(w, n), c.lineTo(y, n), c.stroke()));\n (C[l].indexLabel || t.indexLabel || C[l].indexLabelFormatter || t.indexLabelFormatter) && this._indexLabels.push({\n chartType: t.type,\n dataPoint: C[l],\n dataSeries: t,\n point: {\n x: z + (y - z) / 2,\n y: a.axisY.reversed ? q : s\n },\n direction: 1,\n bounds: {\n x1: z,\n y1: Math.min(s, q),\n x2: y,\n y2: Math.max(s, q)\n },\n color: e\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas,\n 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(m.x1, m.y1, m.width, m.height), c.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderBoxAndWhisker = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d,\n c = this._eventManager.ghostCtx;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e =\n null,\n g = this.plotArea,\n m = 0,\n l, w, h, s, q, n, f, e = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1,\n m = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.015 * this.width,\n k = a.axisX.dataInfo.minDiff;\n isFinite(k) || (k = 0.3 * Math.abs(a.axisX.range));\n k = this.options.dataPointWidth ? this.dataPointWidth : 0.7 * g.width * (a.axisX.logarithmic ? Math.log(k) / Math.log(a.axisX.range) : Math.abs(k) / Math.abs(a.axisX.range)) << 0;\n this.dataPointMaxWidth &&\n e > m && (e = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, m));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && m < e) && (m = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, e));\n k < e && (k = e);\n k > m && (k = m);\n b.save();\n r && c.save();\n b.beginPath();\n b.rect(g.x1, g.y1, g.width, g.height);\n b.clip();\n r && (c.beginPath(), c.rect(g.x1, g.y1, g.width, g.height), c.clip());\n for (var p = !1, p = !!a.axisY.reversed, v = 0; v < a.dataSeriesIndexes.length; v++) {\n var t = a.dataSeriesIndexes[v],\n C = this.data[t],\n x = C.dataPoints;\n if (0 < x.length)\n for (var z = 5 < k && C.bevelEnabled ? !0 : !1, m = 0; m < x.length; m++)\n if (x[m].getTime ? f = x[m].x.getTime() : f = x[m].x, !(f < a.axisX.dataInfo.viewPortMin || f > a.axisX.dataInfo.viewPortMax) && !u(x[m].y) && x[m].y.length && \"number\" === typeof x[m].y[0] && \"number\" === typeof x[m].y[1] && \"number\" === typeof x[m].y[2] && \"number\" === typeof x[m].y[3] && \"number\" === typeof x[m].y[4] && 5 === x[m].y.length) {\n l = a.axisX.convertValueToPixel(f);\n w = a.axisY.convertValueToPixel(x[m].y[0]);\n h = a.axisY.convertValueToPixel(x[m].y[1]);\n s = a.axisY.convertValueToPixel(x[m].y[2]);\n q = a.axisY.convertValueToPixel(x[m].y[3]);\n n = a.axisY.convertValueToPixel(x[m].y[4]);\n var y = l - k / 2 << 0,\n A = l + k / 2 << 0,\n e = x[m].color ? x[m].color : C._colorSet[0],\n D = Math.round(Math.max(1, 0.15 * k)),\n aa = 0 === D % 2 ? 0 : 0.5,\n T = x[m].whiskerColor ? x[m].whiskerColor : x[m].color ? C.whiskerColor ? C.whiskerColor : x[m].color : C.whiskerColor ? C.whiskerColor : e,\n Y = \"number\" === typeof x[m].whiskerThickness ? x[m].whiskerThickness : \"number\" === typeof C.options.whiskerThickness ? C.whiskerThickness : D,\n ca = x[m].whiskerDashType ? x[m].whiskerDashType : C.whiskerDashType,\n da = u(x[m].whiskerLength) ? u(C.options.whiskerLength) ? k : C.whiskerLength : x[m].whiskerLength,\n da = \"number\" === typeof da ? 0 >= da ? 0 : da >= k ? k : da : \"string\" === typeof da ? parseInt(da) * k / 100 > k ? k : parseInt(da) * k / 100 : k,\n Z = 1 === Math.round(Y) % 2 ? 0.5 : 0,\n oa = x[m].stemColor ? x[m].stemColor : x[m].color ? C.stemColor ? C.stemColor : x[m].color : C.stemColor ? C.stemColor : e,\n la = \"number\" === typeof x[m].stemThickness ? x[m].stemThickness : \"number\" === typeof C.options.stemThickness ? C.stemThickness : D,\n G = 1 === Math.round(la) % 2 ? 0.5 : 0,\n F = x[m].stemDashType ? x[m].stemDashType :\n C.stemDashType,\n E = x[m].lineColor ? x[m].lineColor : x[m].color ? C.lineColor ? C.lineColor : x[m].color : C.lineColor ? C.lineColor : e,\n H = \"number\" === typeof x[m].lineThickness ? x[m].lineThickness : \"number\" === typeof C.options.lineThickness ? C.lineThickness : D,\n I = x[m].lineDashType ? x[m].lineDashType : C.lineDashType,\n K = 1 === Math.round(H) % 2 ? 0.5 : 0,\n L = C.upperBoxColor,\n O = C.lowerBoxColor,\n Q = u(C.options.fillOpacity) ? 1 : C.fillOpacity,\n P = C.dataPointIds[m];\n this._eventManager.objectMap[P] = {\n id: P,\n objectType: \"dataPoint\",\n dataSeriesIndex: t,\n dataPointIndex: m,\n x1: y,\n y1: w,\n x2: A,\n y2: h,\n x3: l,\n y3: s,\n x4: l,\n y4: q,\n y5: n,\n borderThickness: D,\n color: e,\n stemThickness: la,\n stemColor: oa,\n whiskerThickness: Y,\n whiskerLength: da,\n whiskerColor: T,\n lineThickness: H,\n lineColor: E\n };\n b.save();\n 0 < la && (b.beginPath(), b.strokeStyle = oa, b.lineWidth = la, b.setLineDash && b.setLineDash(R(F, la)), b.moveTo(l - G, h), b.lineTo(l - G, w), b.stroke(), b.moveTo(l - G, q), b.lineTo(l - G, s), b.stroke());\n b.restore();\n c.lineWidth = Math.max(D, 4);\n b.beginPath();\n ea(b, y, Math.min(n, h), A, Math.max(h, n), O, 0, e, p ? z : !1, p ? !1 : z, !1, !1, Q);\n b.beginPath();\n ea(b,\n y, Math.min(s, n), A, Math.max(n, s), L, 0, e, p ? !1 : z, p ? z : !1, !1, !1, Q);\n b.beginPath();\n b.lineWidth = D;\n b.strokeStyle = e;\n b.rect(y - aa, Math.min(h, s) - aa, A - y + 2 * aa, Math.max(h, s) - Math.min(h, s) + 2 * aa);\n b.stroke();\n b.save();\n 0 < H && (b.beginPath(), b.globalAlpha = 1, b.setLineDash && b.setLineDash(R(I, H)), b.strokeStyle = E, b.lineWidth = H, b.moveTo(y, n - K), b.lineTo(A, n - K), b.stroke());\n b.restore();\n b.save();\n 0 < Y && (b.beginPath(), b.setLineDash && b.setLineDash(R(ca, Y)), b.strokeStyle = T, b.lineWidth = Y, b.moveTo(l - da / 2 << 0, q - Z), b.lineTo(l + da / 2 << 0, q - Z),\n b.stroke(), b.moveTo(l - da / 2 << 0, w + Z), b.lineTo(l + da / 2 << 0, w + Z), b.stroke());\n b.restore();\n r && (e = N(P), c.strokeStyle = e, c.lineWidth = la, 0 < la && (c.moveTo(l - aa - G, h), c.lineTo(l - aa - G, Math.max(w, q)), c.stroke(), c.moveTo(l - aa - G, Math.min(w, q)), c.lineTo(l - aa - G, s), c.stroke()), ea(c, y, Math.max(h, s), A, Math.min(h, s), e, 0, null, !1, !1, !1, !1), 0 < Y && (c.beginPath(), c.lineWidth = Y, c.moveTo(l + da / 2, q - Z), c.lineTo(l - da / 2, q - Z), c.stroke(), c.moveTo(l + da / 2, w + Z), c.lineTo(l - da / 2, w + Z), c.stroke()));\n (x[m].indexLabel || C.indexLabel || x[m].indexLabelFormatter ||\n C.indexLabelFormatter) && this._indexLabels.push({\n chartType: C.type,\n dataPoint: x[m],\n dataSeries: C,\n point: {\n x: y + (A - y) / 2,\n y: a.axisY.reversed ? w : q\n },\n direction: 1,\n bounds: {\n x1: y,\n y1: Math.min(w, q),\n x2: A,\n y2: Math.max(w, q)\n },\n color: e\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n 0, 0, this.width, this.height), b.clearRect(g.x1, g.y1, g.width, g.height), c.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderRangeColumn = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = 0,\n m, l, w, g = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth :\n 1;\n m = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : 0.03 * this.width;\n var h = a.axisX.dataInfo.minDiff;\n isFinite(h) || (h = 0.3 * Math.abs(a.axisX.range));\n h = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * (e.width * (a.axisX.logarithmic ? Math.log(h) / Math.log(a.axisX.range) : Math.abs(h) / Math.abs(a.axisX.range)) / a.plotType.totalDataSeries) << 0;\n this.dataPointMaxWidth && g > m && (g = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, m));\n !this.dataPointMaxWidth &&\n (this.dataPointMinWidth && m < g) && (m = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, g));\n h < g && (h = g);\n h > m && (h = m);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var s = 0; s < a.dataSeriesIndexes.length; s++) {\n var q = a.dataSeriesIndexes[s],\n n = this.data[q],\n f = n.dataPoints;\n if (0 < f.length)\n for (var k =\n 5 < h && n.bevelEnabled ? !0 : !1, g = 0; g < f.length; g++)\n if (f[g].getTime ? w = f[g].x.getTime() : w = f[g].x, !(w < a.axisX.dataInfo.viewPortMin || w > a.axisX.dataInfo.viewPortMax) && !u(f[g].y) && f[g].y.length && \"number\" === typeof f[g].y[0] && \"number\" === typeof f[g].y[1]) {\n c = a.axisX.convertValueToPixel(w);\n m = a.axisY.convertValueToPixel(f[g].y[0]);\n l = a.axisY.convertValueToPixel(f[g].y[1]);\n var p = a.axisX.reversed ? c + a.plotType.totalDataSeries * h / 2 - (a.previousDataSeriesCount + s) * h << 0 : c - a.plotType.totalDataSeries * h / 2 + (a.previousDataSeriesCount +\n s) * h << 0,\n v = a.axisX.reversed ? p - h << 0 : p + h << 0,\n c = f[g].color ? f[g].color : n._colorSet[g % n._colorSet.length];\n if (m > l) {\n var t = m;\n m = l;\n l = t\n }\n t = n.dataPointIds[g];\n this._eventManager.objectMap[t] = {\n id: t,\n objectType: \"dataPoint\",\n dataSeriesIndex: q,\n dataPointIndex: g,\n x1: p,\n y1: m,\n x2: v,\n y2: l\n };\n ea(b, p, m, v, l, c, 0, c, k, k, !1, !1, n.fillOpacity);\n c = N(t);\n r && ea(this._eventManager.ghostCtx, p, m, v, l, c, 0, null, !1, !1, !1, !1);\n if (f[g].indexLabel || n.indexLabel || f[g].indexLabelFormatter || n.indexLabelFormatter) this._indexLabels.push({\n chartType: \"rangeColumn\",\n dataPoint: f[g],\n dataSeries: n,\n indexKeyword: 0,\n point: {\n x: p + (v - p) / 2,\n y: f[g].y[1] >= f[g].y[0] ? l : m\n },\n direction: f[g].y[1] >= f[g].y[0] ? -1 : 1,\n bounds: {\n x1: p,\n y1: Math.min(m, l),\n x2: v,\n y2: Math.max(m, l)\n },\n color: c\n }), this._indexLabels.push({\n chartType: \"rangeColumn\",\n dataPoint: f[g],\n dataSeries: n,\n indexKeyword: 1,\n point: {\n x: p + (v - p) / 2,\n y: f[g].y[1] >= f[g].y[0] ? m : l\n },\n direction: f[g].y[1] >= f[g].y[0] ? 1 : -1,\n bounds: {\n x1: p,\n y1: Math.min(m, l),\n x2: v,\n y2: Math.max(m, l)\n },\n color: c\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation =\n \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderError =\n function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d,\n c = a.axisY._position ? \"left\" === a.axisY._position || \"right\" === a.axisY._position ? !1 : !0 : !1;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = null,\n g = !1,\n m = this.plotArea,\n l = 0,\n w, h, s, q, n, f, k, p = a.axisX.dataInfo.minDiff;\n isFinite(p) || (p = 0.3 * Math.abs(a.axisX.range));\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(m.x1, m.y1, m.width, m.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(m.x1,\n m.y1, m.width, m.height), this._eventManager.ghostCtx.clip());\n for (var v = 0, t = 0; t < this.data.length; t++) !this.data[t].type.match(/(bar|column)/ig) || !this.data[t].visible || this.data[t].type.match(/(stacked)/ig) && v || v++;\n for (var C = 0; C < a.dataSeriesIndexes.length; C++) {\n var x = a.dataSeriesIndexes[C],\n z = this.data[x],\n y = z.dataPoints,\n A = u(z._linkedSeries) ? !1 : z._linkedSeries.type.match(/(bar|column)/ig) && z._linkedSeries.visible ? !0 : !1,\n D = 0;\n if (A)\n for (e = z._linkedSeries.id, t = 0; t < e; t++) !this.data[t].type.match(/(bar|column)/ig) ||\n !this.data[t].visible || this.data[t].type.match(/(stacked)/ig) && D || (this.data[t].type.match(/(range)/ig) && (g = !0), D++);\n e = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n l = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : c ? Math.min(0.15 * this.height, 0.9 * (this.plotArea.height / (A ? v : 1))) << 0 : 0.3 * this.width;\n g && (l = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth :\n c ? Math.min(0.15 * this.height, 0.9 * (this.plotArea.height / (A ? v : 1))) << 0 : 0.03 * this.width);\n t = this.options.dataPointWidth ? this.dataPointWidth : 0.9 * ((c ? m.height : m.width) * (a.axisX.logarithmic ? Math.log(p) / Math.log(a.axisX.range) : Math.abs(p) / Math.abs(a.axisX.range)) / (A ? v : 1)) << 0;\n this.dataPointMaxWidth && e > l && (e = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, l));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && l < e) && (l = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, e));\n t < e &&\n (t = e);\n t > l && (t = l);\n if (0 < y.length)\n for (var aa = z._colorSet, l = 0; l < y.length; l++) {\n var e = z.lineColor = z.options.color ? z.options.color : aa[0],\n T = {\n color: y[l].whiskerColor ? y[l].whiskerColor : y[l].color ? z.whiskerColor ? z.whiskerColor : y[l].color : z.whiskerColor ? z.whiskerColor : e,\n thickness: u(y[l].whiskerThickness) ? z.whiskerThickness : y[l].whiskerThickness,\n dashType: y[l].whiskerDashType ? y[l].whiskerDashType : z.whiskerDashType,\n length: u(y[l].whiskerLength) ? u(z.options.whiskerLength) ? t : z.options.whiskerLength : y[l].whiskerLength,\n trimLength: u(y[l].whiskerLength) ? u(z.options.whiskerLength) ? 50 : 0 : 0\n };\n T.length = \"number\" === typeof T.length ? 0 >= T.length ? 0 : T.length >= t ? t : T.length : \"string\" === typeof T.length ? parseInt(T.length) * t / 100 > t ? t : parseInt(T.length) * t / 100 > t : t;\n T.thickness = \"number\" === typeof T.thickness ? 0 > T.thickness ? 0 : Math.round(T.thickness) : 2;\n var Y = {\n color: y[l].stemColor ? y[l].stemColor : y[l].color ? z.stemColor ? z.stemColor : y[l].color : z.stemColor ? z.stemColor : e,\n thickness: y[l].stemThickness ? y[l].stemThickness : z.stemThickness,\n dashType: y[l].stemDashType ?\n y[l].stemDashType : z.stemDashType\n };\n Y.thickness = \"number\" === typeof Y.thickness ? 0 > Y.thickness ? 0 : Math.round(Y.thickness) : 2;\n y[l].getTime ? k = y[l].x.getTime() : k = y[l].x;\n if (!(k < a.axisX.dataInfo.viewPortMin || k > a.axisX.dataInfo.viewPortMax) && !u(y[l].y) && y[l].y.length && \"number\" === typeof y[l].y[0] && \"number\" === typeof y[l].y[1]) {\n var ca = a.axisX.convertValueToPixel(k);\n c ? h = ca : w = ca;\n ca = a.axisY.convertValueToPixel(y[l].y[0]);\n c ? s = ca : n = ca;\n ca = a.axisY.convertValueToPixel(y[l].y[1]);\n c ? q = ca : f = ca;\n c ? (n = a.axisX.reversed ? h + (A ? v :\n 1) * t / 2 - (A ? D - 1 : 0) * t << 0 : h - (A ? v : 1) * t / 2 + (A ? D - 1 : 0) * t << 0, f = a.axisX.reversed ? n - t << 0 : n + t << 0) : (s = a.axisX.reversed ? w + (A ? v : 1) * t / 2 - (A ? D - 1 : 0) * t << 0 : w - (A ? v : 1) * t / 2 + (A ? D - 1 : 0) * t << 0, q = a.axisX.reversed ? s - t << 0 : s + t << 0);\n !c && n > f && (ca = n, n = f, f = ca);\n c && s > q && (ca = s, s = q, q = ca);\n ca = z.dataPointIds[l];\n this._eventManager.objectMap[ca] = {\n id: ca,\n objectType: \"dataPoint\",\n dataSeriesIndex: x,\n dataPointIndex: l,\n x1: Math.min(s, q),\n y1: Math.min(n, f),\n x2: Math.max(q, s),\n y2: Math.max(f, n),\n isXYSwapped: c,\n stemProperties: Y,\n whiskerProperties: T\n };\n E(b, Math.min(s, q),\n Math.min(n, f), Math.max(q, s), Math.max(f, n), e, T, Y, c);\n r && E(this._eventManager.ghostCtx, s, n, q, f, e, T, Y, c);\n if (y[l].indexLabel || z.indexLabel || y[l].indexLabelFormatter || z.indexLabelFormatter) this._indexLabels.push({\n chartType: \"error\",\n dataPoint: y[l],\n dataSeries: z,\n indexKeyword: 0,\n point: {\n x: c ? y[l].y[1] >= y[l].y[0] ? s : q : s + (q - s) / 2,\n y: c ? n + (f - n) / 2 : y[l].y[1] >= y[l].y[0] ? f : n\n },\n direction: y[l].y[1] >= y[l].y[0] ? -1 : 1,\n bounds: {\n x1: c ? Math.min(s, q) : s,\n y1: c ? n : Math.min(n, f),\n x2: c ? Math.max(s, q) : q,\n y2: c ? f : Math.max(n, f)\n },\n color: e,\n axisSwapped: c\n }),\n this._indexLabels.push({\n chartType: \"error\",\n dataPoint: y[l],\n dataSeries: z,\n indexKeyword: 1,\n point: {\n x: c ? y[l].y[1] >= y[l].y[0] ? q : s : s + (q - s) / 2,\n y: c ? n + (f - n) / 2 : y[l].y[1] >= y[l].y[0] ? n : f\n },\n direction: y[l].y[1] >= y[l].y[0] ? 1 : -1,\n bounds: {\n x1: c ? Math.min(s, q) : s,\n y1: c ? n : Math.min(n, f),\n x2: c ? Math.max(s, q) : q,\n y2: c ? f : Math.max(n, f)\n },\n color: e,\n axisSwapped: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height),\n a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(m.x1, m.y1, m.width, m.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderRangeBar = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx :\n d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = null,\n e = this.plotArea,\n g = 0,\n m, l, w, h, g = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n m = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.height, 0.9 * (this.plotArea.height / a.plotType.totalDataSeries)) << 0;\n var s = a.axisX.dataInfo.minDiff;\n isFinite(s) || (s = 0.3 * Math.abs(a.axisX.range));\n s = this.options.dataPointWidth ? this.dataPointWidth : 0.9 *\n (e.height * (a.axisX.logarithmic ? Math.log(s) / Math.log(a.axisX.range) : Math.abs(s) / Math.abs(a.axisX.range)) / a.plotType.totalDataSeries) << 0;\n this.dataPointMaxWidth && g > m && (g = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, m));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && m < g) && (m = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, g));\n s < g && (s = g);\n s > m && (s = m);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(e.x1, e.y1, e.width, e.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(),\n this._eventManager.ghostCtx.rect(e.x1, e.y1, e.width, e.height), this._eventManager.ghostCtx.clip());\n for (var q = 0; q < a.dataSeriesIndexes.length; q++) {\n var n = a.dataSeriesIndexes[q],\n f = this.data[n],\n k = f.dataPoints;\n if (0 < k.length) {\n var p = 5 < s && f.bevelEnabled ? !0 : !1;\n b.strokeStyle = \"#4572A7 \";\n for (g = 0; g < k.length; g++)\n if (k[g].getTime ? h = k[g].x.getTime() : h = k[g].x, !(h < a.axisX.dataInfo.viewPortMin || h > a.axisX.dataInfo.viewPortMax) && !u(k[g].y) && k[g].y.length && \"number\" === typeof k[g].y[0] && \"number\" === typeof k[g].y[1]) {\n m = a.axisY.convertValueToPixel(k[g].y[0]);\n l = a.axisY.convertValueToPixel(k[g].y[1]);\n w = a.axisX.convertValueToPixel(h);\n w = a.axisX.reversed ? w + a.plotType.totalDataSeries * s / 2 - (a.previousDataSeriesCount + q) * s << 0 : w - a.plotType.totalDataSeries * s / 2 + (a.previousDataSeriesCount + q) * s << 0;\n var v = a.axisX.reversed ? w - s << 0 : w + s << 0;\n m > l && (c = m, m = l, l = c);\n c = k[g].color ? k[g].color : f._colorSet[g % f._colorSet.length];\n ea(b, m, w, l, v, c, 0, null, p, !1, !1, !1, f.fillOpacity);\n c = f.dataPointIds[g];\n this._eventManager.objectMap[c] = {\n id: c,\n objectType: \"dataPoint\",\n dataSeriesIndex: n,\n dataPointIndex: g,\n x1: m,\n y1: w,\n x2: l,\n y2: v\n };\n c = N(c);\n r && ea(this._eventManager.ghostCtx, m, w, l, v, c, 0, null, !1, !1, !1, !1);\n if (k[g].indexLabel || f.indexLabel || k[g].indexLabelFormatter || f.indexLabelFormatter) this._indexLabels.push({\n chartType: \"rangeBar\",\n dataPoint: k[g],\n dataSeries: f,\n indexKeyword: 0,\n point: {\n x: k[g].y[1] >= k[g].y[0] ? m : l,\n y: w + (v - w) / 2\n },\n direction: k[g].y[1] >= k[g].y[0] ? -1 : 1,\n bounds: {\n x1: Math.min(m, l),\n y1: w,\n x2: Math.max(m, l),\n y2: v\n },\n color: c\n }), this._indexLabels.push({\n chartType: \"rangeBar\",\n dataPoint: k[g],\n dataSeries: f,\n indexKeyword: 1,\n point: {\n x: k[g].y[1] >=\n k[g].y[0] ? l : m,\n y: w + (v - w) / 2\n },\n direction: k[g].y[1] >= k[g].y[0] ? 1 : -1,\n bounds: {\n x1: Math.min(m, l),\n y1: w,\n x2: Math.max(m, l),\n y2: v\n },\n color: c\n })\n }\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.clearRect(e.x1,\n e.y1, e.width, e.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n p.prototype.renderRangeArea = function (a) {\n function d() {\n if (C) {\n var a = null;\n 0 < s.lineThickness && c.stroke();\n for (var b = w.length - 1; 0 <= b; b--) a = w[b], c.lineTo(a.x, a.y), e.lineTo(a.x, a.y);\n c.closePath();\n c.globalAlpha = s.fillOpacity;\n c.fill();\n c.globalAlpha = 1;\n e.fill();\n if (0 < s.lineThickness) {\n c.beginPath();\n c.moveTo(a.x,\n a.y);\n for (b = 0; b < w.length; b++) a = w[b], c.lineTo(a.x, a.y);\n c.stroke()\n }\n c.beginPath();\n c.moveTo(k, p);\n e.beginPath();\n e.moveTo(k, p);\n C = {\n x: k,\n y: p\n };\n w = [];\n w.push({\n x: k,\n y: u\n })\n }\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = this._eventManager.ghostCtx,\n g = [],\n m = this.plotArea;\n c.save();\n r && e.save();\n c.beginPath();\n c.rect(m.x1, m.y1, m.width, m.height);\n c.clip();\n r && (e.beginPath(), e.rect(m.x1, m.y1, m.width, m.height), e.clip());\n for (var l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = [],\n h = a.dataSeriesIndexes[l],\n s = this.data[h],\n q = s.dataPoints,\n g = s.id;\n this._eventManager.objectMap[g] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: h\n };\n g = N(g);\n e.fillStyle = g;\n var g = [],\n n = !0,\n f = 0,\n k, p, u, t, C = null;\n if (0 < q.length) {\n var x = s._colorSet[f % s._colorSet.length],\n v = s.lineColor = s.options.lineColor || x,\n y = v;\n c.fillStyle = x;\n c.strokeStyle = v;\n c.lineWidth = s.lineThickness;\n var A = \"solid\";\n if (c.setLineDash) {\n var z = R(s.nullDataLineDashType, s.lineThickness),\n A = s.lineDashType,\n D = R(A, s.lineThickness);\n c.setLineDash(D)\n }\n for (var T = !0; f <\n q.length; f++)\n if (t = q[f].x.getTime ? q[f].x.getTime() : q[f].x, !(t < a.axisX.dataInfo.viewPortMin || t > a.axisX.dataInfo.viewPortMax && (!s.connectNullData || !T)))\n if (null !== q[f].y && q[f].y.length && \"number\" === typeof q[f].y[0] && \"number\" === typeof q[f].y[1]) {\n k = a.axisX.convertValueToPixel(t);\n p = a.axisY.convertValueToPixel(q[f].y[0]);\n u = a.axisY.convertValueToPixel(q[f].y[1]);\n n || T ? (s.connectNullData && !n ? (c.setLineDash && (s.options.nullDataLineDashType || A === s.lineDashType && s.lineDashType !== s.nullDataLineDashType) && (w[w.length -\n 1].newLineDashArray = D, A = s.nullDataLineDashType, c.setLineDash(z)), c.lineTo(k, p), r && e.lineTo(k, p), w.push({\n x: k,\n y: u\n })) : (c.beginPath(), c.moveTo(k, p), C = {\n x: k,\n y: p\n }, w = [], w.push({\n x: k,\n y: u\n }), r && (e.beginPath(), e.moveTo(k, p))), T = n = !1) : (c.lineTo(k, p), w.push({\n x: k,\n y: u\n }), r && e.lineTo(k, p), 0 == f % 250 && d());\n t = s.dataPointIds[f];\n this._eventManager.objectMap[t] = {\n id: t,\n objectType: \"dataPoint\",\n dataSeriesIndex: h,\n dataPointIndex: f,\n x1: k,\n y1: p,\n y2: u\n };\n f < q.length - 1 && (y !== (q[f].lineColor || v) || A !== (q[f].lineDashType || s.lineDashType)) && (d(),\n y = q[f].lineColor || v, w[w.length - 1].newStrokeStyle = y, c.strokeStyle = y, c.setLineDash && (q[f].lineDashType ? (A = q[f].lineDashType, w[w.length - 1].newLineDashArray = R(A, s.lineThickness), c.setLineDash(w[w.length - 1].newLineDashArray)) : (A = s.lineDashType, w[w.length - 1].newLineDashArray = D, c.setLineDash(D))));\n if (0 !== q[f].markerSize && (0 < q[f].markerSize || 0 < s.markerSize)) {\n var Y = s.getMarkerProperties(f, k, u, c);\n g.push(Y);\n var ca = N(t);\n r && g.push({\n x: k,\n y: u,\n ctx: e,\n type: Y.type,\n size: Y.size,\n color: ca,\n borderColor: ca,\n borderThickness: Y.borderThickness\n });\n Y = s.getMarkerProperties(f, k, p, c);\n g.push(Y);\n ca = N(t);\n r && g.push({\n x: k,\n y: p,\n ctx: e,\n type: Y.type,\n size: Y.size,\n color: ca,\n borderColor: ca,\n borderThickness: Y.borderThickness\n })\n }\n if (q[f].indexLabel || s.indexLabel || q[f].indexLabelFormatter || s.indexLabelFormatter) this._indexLabels.push({\n chartType: \"rangeArea\",\n dataPoint: q[f],\n dataSeries: s,\n indexKeyword: 0,\n point: {\n x: k,\n y: p\n },\n direction: q[f].y[0] > q[f].y[1] === a.axisY.reversed ? -1 : 1,\n color: x\n }), this._indexLabels.push({\n chartType: \"rangeArea\",\n dataPoint: q[f],\n dataSeries: s,\n indexKeyword: 1,\n point: {\n x: k,\n y: u\n },\n direction: q[f].y[0] > q[f].y[1] === a.axisY.reversed ? 1 : -1,\n color: x\n })\n } else T || n || d(), T = !0;\n d();\n ia.drawMarkers(g)\n }\n }\n r && (b.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(m.x1, m.y1,\n m.width, m.height), this._eventManager.ghostCtx.restore());\n c.restore();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderRangeSplineArea = function (a) {\n function d(a, b) {\n var d = v(u, 2);\n if (0 < d.length) {\n if (0 < h.lineThickness) {\n c.strokeStyle = b;\n c.setLineDash && c.setLineDash(a);\n c.beginPath();\n c.moveTo(d[0].x, d[0].y);\n for (var f = 0; f < d.length - 3; f += 3) {\n if (d[f].newStrokeStyle || d[f].newLineDashArray) c.stroke(), c.beginPath(), c.moveTo(d[f].x,\n d[f].y), d[f].newStrokeStyle && (c.strokeStyle = d[f].newStrokeStyle), d[f].newLineDashArray && c.setLineDash(d[f].newLineDashArray);\n c.bezierCurveTo(d[f + 1].x, d[f + 1].y, d[f + 2].x, d[f + 2].y, d[f + 3].x, d[f + 3].y)\n }\n c.stroke()\n }\n c.beginPath();\n c.moveTo(d[0].x, d[0].y);\n r && (e.beginPath(), e.moveTo(d[0].x, d[0].y));\n for (f = 0; f < d.length - 3; f += 3) c.bezierCurveTo(d[f + 1].x, d[f + 1].y, d[f + 2].x, d[f + 2].y, d[f + 3].x, d[f + 3].y), r && e.bezierCurveTo(d[f + 1].x, d[f + 1].y, d[f + 2].x, d[f + 2].y, d[f + 3].x, d[f + 3].y);\n d = v(z, 2);\n c.lineTo(z[z.length - 1].x, z[z.length -\n 1].y);\n for (f = d.length - 1; 2 < f; f -= 3) c.bezierCurveTo(d[f - 1].x, d[f - 1].y, d[f - 2].x, d[f - 2].y, d[f - 3].x, d[f - 3].y), r && e.bezierCurveTo(d[f - 1].x, d[f - 1].y, d[f - 2].x, d[f - 2].y, d[f - 3].x, d[f - 3].y);\n c.closePath();\n c.globalAlpha = h.fillOpacity;\n c.fill();\n r && (e.closePath(), e.fill());\n c.globalAlpha = 1;\n if (0 < h.lineThickness) {\n c.strokeStyle = b;\n c.setLineDash && c.setLineDash(a);\n c.beginPath();\n c.moveTo(d[0].x, d[0].y);\n for (var g = f = 0; f < d.length - 3; f += 3, g++) {\n if (u[g].newStrokeStyle || u[g].newLineDashArray) c.stroke(), c.beginPath(), c.moveTo(d[f].x,\n d[f].y), u[g].newStrokeStyle && (c.strokeStyle = u[g].newStrokeStyle), u[g].newLineDashArray && c.setLineDash(u[g].newLineDashArray);\n c.bezierCurveTo(d[f + 1].x, d[f + 1].y, d[f + 2].x, d[f + 2].y, d[f + 3].x, d[f + 3].y)\n }\n c.stroke()\n }\n c.beginPath()\n }\n }\n var b = a.targetCanvasCtx || this.plotArea.ctx,\n c = r ? this._preRenderCtx : b;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var e = this._eventManager.ghostCtx,\n g = [],\n m = this.plotArea;\n c.save();\n r && e.save();\n c.beginPath();\n c.rect(m.x1, m.y1, m.width, m.height);\n c.clip();\n r && (e.beginPath(), e.rect(m.x1, m.y1, m.width,\n m.height), e.clip());\n for (var l = 0; l < a.dataSeriesIndexes.length; l++) {\n var w = a.dataSeriesIndexes[l],\n h = this.data[w],\n k = h.dataPoints,\n g = h.id;\n this._eventManager.objectMap[g] = {\n objectType: \"dataSeries\",\n dataSeriesIndex: w\n };\n g = N(g);\n e.fillStyle = g;\n var g = [],\n q = 0,\n n, f, p, u = [],\n z = [];\n if (0 < k.length) {\n var t = h._colorSet[q % h._colorSet.length],\n C = h.lineColor = h.options.lineColor || t,\n x = C;\n c.fillStyle = t;\n c.lineWidth = h.lineThickness;\n var F = \"solid\",\n y;\n if (c.setLineDash) {\n var A = R(h.nullDataLineDashType, h.lineThickness),\n F = h.lineDashType;\n y = R(F,\n h.lineThickness)\n }\n for (f = !1; q < k.length; q++)\n if (n = k[q].x.getTime ? k[q].x.getTime() : k[q].x, !(n < a.axisX.dataInfo.viewPortMin || n > a.axisX.dataInfo.viewPortMax && (!h.connectNullData || !f)))\n if (null !== k[q].y && k[q].y.length && \"number\" === typeof k[q].y[0] && \"number\" === typeof k[q].y[1]) {\n n = a.axisX.convertValueToPixel(n);\n f = a.axisY.convertValueToPixel(k[q].y[0]);\n p = a.axisY.convertValueToPixel(k[q].y[1]);\n var E = h.dataPointIds[q];\n this._eventManager.objectMap[E] = {\n id: E,\n objectType: \"dataPoint\",\n dataSeriesIndex: w,\n dataPointIndex: q,\n x1: n,\n y1: f,\n y2: p\n };\n u[u.length] = {\n x: n,\n y: f\n };\n z[z.length] = {\n x: n,\n y: p\n };\n q < k.length - 1 && (x !== (k[q].lineColor || C) || F !== (k[q].lineDashType || h.lineDashType)) && (x = k[q].lineColor || C, u[u.length - 1].newStrokeStyle = x, c.setLineDash && (k[q].lineDashType ? (F = k[q].lineDashType, u[u.length - 1].newLineDashArray = R(F, h.lineThickness)) : (F = h.lineDashType, u[u.length - 1].newLineDashArray = y)));\n if (0 !== k[q].markerSize && (0 < k[q].markerSize || 0 < h.markerSize)) {\n var aa = h.getMarkerProperties(q, n, f, c);\n g.push(aa);\n var T = N(E);\n r && g.push({\n x: n,\n y: f,\n ctx: e,\n type: aa.type,\n size: aa.size,\n color: T,\n borderColor: T,\n borderThickness: aa.borderThickness\n });\n aa = h.getMarkerProperties(q, n, p, c);\n g.push(aa);\n T = N(E);\n r && g.push({\n x: n,\n y: p,\n ctx: e,\n type: aa.type,\n size: aa.size,\n color: T,\n borderColor: T,\n borderThickness: aa.borderThickness\n })\n }\n if (k[q].indexLabel || h.indexLabel || k[q].indexLabelFormatter || h.indexLabelFormatter) this._indexLabels.push({\n chartType: \"rangeSplineArea\",\n dataPoint: k[q],\n dataSeries: h,\n indexKeyword: 0,\n point: {\n x: n,\n y: f\n },\n direction: k[q].y[0] <= k[q].y[1] ? -1 : 1,\n color: t\n }), this._indexLabels.push({\n chartType: \"rangeSplineArea\",\n dataPoint: k[q],\n dataSeries: h,\n indexKeyword: 1,\n point: {\n x: n,\n y: p\n },\n direction: k[q].y[0] <= k[q].y[1] ? 1 : -1,\n color: t\n });\n f = !1\n } else 0 < q && !f && (h.connectNullData ? c.setLineDash && (0 < u.length && (h.options.nullDataLineDashType || !k[q - 1].lineDashType)) && (u[u.length - 1].newLineDashArray = A, F = h.nullDataLineDashType) : (d(y, C), u = [], z = [])), f = !0;\n d(y, C);\n ia.drawMarkers(g)\n }\n }\n r && (b.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && c.drawImage(a.axisX.maskCanvas, 0, 0,\n this.width, this.height), a.axisY.maskCanvas && c.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), c.clearRect(m.x1, m.y1, m.width, m.height), this._eventManager.ghostCtx.restore());\n c.restore();\n return {\n source: b,\n dest: this.plotArea.ctx,\n animationCallback: M.xClipAnimation,\n easingFunction: M.easing.linear,\n animationBase: 0\n }\n }\n };\n p.prototype.renderWaterfall = function (a) {\n var d = a.targetCanvasCtx || this.plotArea.ctx,\n b = r ? this._preRenderCtx : d;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var c = this._eventManager.ghostCtx,\n e = null,\n g = this.plotArea,\n m = 0,\n l, k, h, s, q = a.axisY.convertValueToPixel(a.axisY.logarithmic ? a.axisY.viewportMinimum : 0),\n m = this.options.dataPointMinWidth ? this.dataPointMinWidth : this.options.dataPointWidth ? this.dataPointWidth : 1;\n k = this.options.dataPointMaxWidth ? this.dataPointMaxWidth : this.options.dataPointWidth ? this.dataPointWidth : Math.min(0.15 * this.width, 0.9 * (this.plotArea.width / a.plotType.totalDataSeries)) << 0;\n var n =\n a.axisX.dataInfo.minDiff;\n isFinite(n) || (n = 0.3 * Math.abs(a.axisX.range));\n n = this.options.dataPointWidth ? this.dataPointWidth : 0.6 * (g.width * (a.axisX.logarithmic ? Math.log(n) / Math.log(a.axisX.range) : Math.abs(n) / Math.abs(a.axisX.range)) / a.plotType.totalDataSeries) << 0;\n this.dataPointMaxWidth && m > k && (m = Math.min(this.options.dataPointWidth ? this.dataPointWidth : Infinity, k));\n !this.dataPointMaxWidth && (this.dataPointMinWidth && k < m) && (k = Math.max(this.options.dataPointWidth ? this.dataPointWidth : -Infinity, m));\n n < m && (n = m);\n n > k && (n = k);\n b.save();\n r && this._eventManager.ghostCtx.save();\n b.beginPath();\n b.rect(g.x1, g.y1, g.width, g.height);\n b.clip();\n r && (this._eventManager.ghostCtx.beginPath(), this._eventManager.ghostCtx.rect(g.x1, g.y1, g.width, g.height), this._eventManager.ghostCtx.clip());\n for (var f = 0; f < a.dataSeriesIndexes.length; f++) {\n var p = a.dataSeriesIndexes[f],\n u = this.data[p],\n v = u.dataPoints,\n e = u._colorSet[0];\n u.risingColor = u.options.risingColor ? u.options.risingColor : e;\n u.fallingColor = u.options.fallingColor ? u.options.fallingColor : \"#e40a0a\";\n var t = \"number\" === typeof u.options.lineThickness ? Math.round(u.lineThickness) : 1,\n C = 1 === Math.round(t) % 2 ? -0.5 : 0;\n if (0 < v.length)\n for (var x = 5 < n && u.bevelEnabled ? !0 : !1, z = !1, y = null, A = null, m = 0; m < v.length; m++)\n if (v[m].getTime ? s = v[m].x.getTime() : s = v[m].x, \"number\" !== typeof v[m].y) {\n if (0 < m && !z && u.connectNullData) var D = u.options.nullDataLineDashType || !v[m - 1].lineDashType ? u.nullDataLineDashType : v[m - 1].lineDashType;\n z = !0\n } else {\n l = a.axisX.convertValueToPixel(s);\n k = 0 === u.dataPointEOs[m].cumulativeSum ? q : a.axisY.convertValueToPixel(u.dataPointEOs[m].cumulativeSum);\n h = 0 === u.dataPointEOs[m].cumulativeSumYStartValue ? q : a.axisY.convertValueToPixel(u.dataPointEOs[m].cumulativeSumYStartValue);\n l = a.axisX.reversed ? l + a.plotType.totalDataSeries * n / 2 - (a.previousDataSeriesCount + f) * n << 0 : l - a.plotType.totalDataSeries * n / 2 + (a.previousDataSeriesCount + f) * n << 0;\n var F = a.axisX.reversed ? l - n << 0 : l + n << 0;\n k > h && (e = k, k = h, h = e);\n a.axisY.reversed && (e = k, k = h, h = e);\n e = u.dataPointIds[m];\n this._eventManager.objectMap[e] = {\n id: e,\n objectType: \"dataPoint\",\n dataSeriesIndex: p,\n dataPointIndex: m,\n x1: l,\n y1: k,\n x2: F,\n y2: h\n };\n var T = v[m].color ? v[m].color : 0 < v[m].y ? u.risingColor : u.fallingColor;\n ea(b, l, k, F, h, T, 0, T, x, x, !1, !1, u.fillOpacity);\n e = N(e);\n r && ea(this._eventManager.ghostCtx, l, k, F, h, e, 0, null, !1, !1, !1, !1);\n var Y, T = l;\n Y = \"undefined\" !== typeof v[m].isIntermediateSum && !0 === v[m].isIntermediateSum || \"undefined\" !== typeof v[m].isCumulativeSum && !0 === v[m].isCumulativeSum ? 0 < v[m].y ? k : h : 0 < v[m].y ? h : k;\n 0 < m && y && (!z || u.connectNullData) && (z && b.setLineDash && b.setLineDash(R(D, t)), b.beginPath(), b.moveTo(y, A - C), b.lineTo(T, Y - C), 0 < t && b.stroke(), r &&\n (c.beginPath(), c.moveTo(y, A - C), c.lineTo(T, Y - C), 0 < t && c.stroke()));\n z = !1;\n y = F;\n A = 0 < v[m].y ? k : h;\n T = v[m].lineDashType ? v[m].lineDashType : u.options.lineDashType ? u.options.lineDashType : \"shortDash\";\n b.strokeStyle = v[m].lineColor ? v[m].lineColor : u.options.lineColor ? u.options.lineColor : \"#9e9e9e\";\n b.lineWidth = t;\n b.setLineDash && (T = R(T, t), b.setLineDash(T));\n (v[m].indexLabel || u.indexLabel || v[m].indexLabelFormatter || u.indexLabelFormatter) && this._indexLabels.push({\n chartType: \"waterfall\",\n dataPoint: v[m],\n dataSeries: u,\n point: {\n x: l +\n (F - l) / 2,\n y: 0 <= v[m].y ? k : h\n },\n direction: 0 > v[m].y === a.axisY.reversed ? 1 : -1,\n bounds: {\n x1: l,\n y1: Math.min(k, h),\n x2: F,\n y2: Math.max(k, h)\n },\n color: e\n })\n }\n }\n r && (d.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height), b.globalCompositeOperation = \"source-atop\", a.axisX.maskCanvas && b.drawImage(a.axisX.maskCanvas, 0, 0, this.width, this.height), a.axisY.maskCanvas && b.drawImage(a.axisY.maskCanvas, 0, 0, this.width, this.height), this._breaksCanvasCtx && this._breaksCanvasCtx.drawImage(this._preRenderCanvas, 0, 0, this.width, this.height),\n b.clearRect(g.x1, g.y1, g.width, g.height), this._eventManager.ghostCtx.restore());\n b.restore();\n return {\n source: d,\n dest: this.plotArea.ctx,\n animationCallback: M.fadeInAnimation,\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n };\n var ja = function (a, d, b, c, e, g, m, l, k) {\n if (!(0 > b)) {\n \"undefined\" === typeof l && (l = 1);\n if (!r) {\n var h = Number((m % (2 * Math.PI)).toFixed(8));\n Number((g % (2 * Math.PI)).toFixed(8)) === h && (m -= 1E-4)\n }\n a.save();\n a.globalAlpha = l;\n \"pie\" === e ? (a.beginPath(), a.moveTo(d.x, d.y), a.arc(d.x, d.y, b, g, m, !1), a.fillStyle = c, a.strokeStyle =\n \"white\", a.lineWidth = 2, a.closePath(), a.fill()) : \"doughnut\" === e && (a.beginPath(), a.arc(d.x, d.y, b, g, m, !1), 0 <= k && a.arc(d.x, d.y, k * b, m, g, !0), a.closePath(), a.fillStyle = c, a.strokeStyle = \"white\", a.lineWidth = 2, a.fill());\n a.globalAlpha = 1;\n a.restore()\n }\n };\n p.prototype.renderPie = function (a) {\n function d() {\n if (h && s) {\n for (var a = 0, b = 0, c = 0, e = 0, d = 0; d < s.length; d++) {\n var g = s[d],\n l = h.dataPointIds[d];\n f[d].id = l;\n f[d].objectType = \"dataPoint\";\n f[d].dataPointIndex = d;\n f[d].dataSeriesIndex = 0;\n var m = f[d],\n q = {\n percent: null,\n total: null\n },\n p = null,\n q = k.getPercentAndTotal(h,\n g);\n if (h.indexLabelFormatter || g.indexLabelFormatter) p = {\n chart: k.options,\n dataSeries: h,\n dataPoint: g,\n total: q.total,\n percent: q.percent\n };\n q = g.indexLabelFormatter ? g.indexLabelFormatter(p) : g.indexLabel ? k.replaceKeywordsWithValue(g.indexLabel, g, h, d) : h.indexLabelFormatter ? h.indexLabelFormatter(p) : h.indexLabel ? k.replaceKeywordsWithValue(h.indexLabel, g, h, d) : g.label ? g.label : \"\";\n k._eventManager.objectMap[l] = m;\n m.center = {\n x: x.x,\n y: x.y\n };\n m.y = g.y;\n m.radius = A;\n m.percentInnerRadius = F;\n m.indexLabelText = q;\n m.indexLabelPlacement = h.indexLabelPlacement;\n m.indexLabelLineColor = g.indexLabelLineColor ? g.indexLabelLineColor : h.options.indexLabelLineColor ? h.options.indexLabelLineColor : g.color ? g.color : h._colorSet[d % h._colorSet.length];\n m.indexLabelLineThickness = u(g.indexLabelLineThickness) ? h.indexLabelLineThickness : g.indexLabelLineThickness;\n m.indexLabelLineDashType = g.indexLabelLineDashType ? g.indexLabelLineDashType : h.indexLabelLineDashType;\n m.indexLabelFontColor = g.indexLabelFontColor ? g.indexLabelFontColor : h.indexLabelFontColor;\n m.indexLabelFontStyle = g.indexLabelFontStyle ?\n g.indexLabelFontStyle : h.indexLabelFontStyle;\n m.indexLabelFontWeight = g.indexLabelFontWeight ? g.indexLabelFontWeight : h.indexLabelFontWeight;\n m.indexLabelFontSize = u(g.indexLabelFontSize) ? h.indexLabelFontSize : g.indexLabelFontSize;\n m.indexLabelFontFamily = g.indexLabelFontFamily ? g.indexLabelFontFamily : h.indexLabelFontFamily;\n m.indexLabelBackgroundColor = g.indexLabelBackgroundColor ? g.indexLabelBackgroundColor : h.options.indexLabelBackgroundColor ? h.options.indexLabelBackgroundColor : h.indexLabelBackgroundColor;\n m.indexLabelMaxWidth =\n g.indexLabelMaxWidth ? g.indexLabelMaxWidth : h.indexLabelMaxWidth ? h.indexLabelMaxWidth : 0.33 * n.width;\n m.indexLabelWrap = \"undefined\" !== typeof g.indexLabelWrap ? g.indexLabelWrap : h.indexLabelWrap;\n m.startAngle = 0 === d ? h.startAngle ? h.startAngle / 180 * Math.PI : 0 : f[d - 1].endAngle;\n m.startAngle = (m.startAngle + 2 * Math.PI) % (2 * Math.PI);\n m.endAngle = m.startAngle + 2 * Math.PI / z * Math.abs(g.y);\n g = (m.endAngle + m.startAngle) / 2;\n g = (g + 2 * Math.PI) % (2 * Math.PI);\n m.midAngle = g;\n if (m.midAngle > Math.PI / 2 - t && m.midAngle < Math.PI / 2 + t) {\n if (0 === a || f[c].midAngle >\n m.midAngle) c = d;\n a++\n } else if (m.midAngle > 3 * Math.PI / 2 - t && m.midAngle < 3 * Math.PI / 2 + t) {\n if (0 === b || f[e].midAngle > m.midAngle) e = d;\n b++\n }\n m.hemisphere = g > Math.PI / 2 && g <= 3 * Math.PI / 2 ? \"left\" : \"right\";\n m.indexLabelTextBlock = new ka(k.plotArea.ctx, {\n fontSize: m.indexLabelFontSize,\n fontFamily: m.indexLabelFontFamily,\n fontColor: m.indexLabelFontColor,\n fontStyle: m.indexLabelFontStyle,\n fontWeight: m.indexLabelFontWeight,\n horizontalAlign: \"left\",\n backgroundColor: m.indexLabelBackgroundColor,\n maxWidth: m.indexLabelMaxWidth,\n maxHeight: m.indexLabelWrap ?\n 5 * m.indexLabelFontSize : 1.5 * m.indexLabelFontSize,\n text: m.indexLabelText,\n padding: 0,\n textBaseline: \"top\"\n });\n m.indexLabelTextBlock.measureText()\n }\n l = g = 0;\n q = !1;\n for (d = 0; d < s.length; d++) m = f[(c + d) % s.length], 1 < a && (m.midAngle > Math.PI / 2 - t && m.midAngle < Math.PI / 2 + t) && (g <= a / 2 && !q ? (m.hemisphere = \"right\", g++) : (m.hemisphere = \"left\", q = !0));\n q = !1;\n for (d = 0; d < s.length; d++) m = f[(e + d) % s.length], 1 < b && (m.midAngle > 3 * Math.PI / 2 - t && m.midAngle < 3 * Math.PI / 2 + t) && (l <= b / 2 && !q ? (m.hemisphere = \"left\", l++) : (m.hemisphere = \"right\", q = !0))\n }\n }\n\n function b(a) {\n var b =\n k.plotArea.ctx;\n b.clearRect(n.x1, n.y1, n.width, n.height);\n b.fillStyle = k.backgroundColor;\n b.fillRect(n.x1, n.y1, n.width, n.height);\n for (b = 0; b < s.length; b++) {\n var c = f[b].startAngle,\n e = f[b].endAngle;\n if (e > c) {\n var d = 0.07 * A * Math.cos(f[b].midAngle),\n g = 0.07 * A * Math.sin(f[b].midAngle),\n m = !1;\n if (s[b].exploded) {\n if (1E-9 < Math.abs(f[b].center.x - (x.x + d)) || 1E-9 < Math.abs(f[b].center.y - (x.y + g))) f[b].center.x = x.x + d * a, f[b].center.y = x.y + g * a, m = !0\n } else if (0 < Math.abs(f[b].center.x - x.x) || 0 < Math.abs(f[b].center.y - x.y)) f[b].center.x = x.x +\n d * (1 - a), f[b].center.y = x.y + g * (1 - a), m = !0;\n m && (d = {}, d.dataSeries = h, d.dataPoint = h.dataPoints[b], d.index = b, k.toolTip.highlightObjects([d]));\n ja(k.plotArea.ctx, f[b].center, f[b].radius, s[b].color ? s[b].color : h._colorSet[b % h._colorSet.length], h.type, c, e, h.fillOpacity, f[b].percentInnerRadius)\n }\n }\n a = k.plotArea.ctx;\n a.save();\n a.fillStyle = \"black\";\n a.strokeStyle = \"grey\";\n a.textBaseline = \"middle\";\n a.lineJoin = \"round\";\n for (b = b = 0; b < s.length; b++) c = f[b], c.indexLabelText && (c.indexLabelTextBlock.y -= c.indexLabelTextBlock.height / 2, e =\n 0, e = \"left\" === c.hemisphere ? \"inside\" !== h.indexLabelPlacement ? -(c.indexLabelTextBlock.width + q) : -c.indexLabelTextBlock.width / 2 : \"inside\" !== h.indexLabelPlacement ? q : -c.indexLabelTextBlock.width / 2, c.indexLabelTextBlock.x += e, c.indexLabelTextBlock.render(!0), c.indexLabelTextBlock.x -= e, c.indexLabelTextBlock.y += c.indexLabelTextBlock.height / 2, \"inside\" !== c.indexLabelPlacement && 0 < c.indexLabelLineThickness && (e = c.center.x + A * Math.cos(c.midAngle), d = c.center.y + A * Math.sin(c.midAngle), a.strokeStyle = c.indexLabelLineColor,\n a.lineWidth = c.indexLabelLineThickness, a.setLineDash && a.setLineDash(R(c.indexLabelLineDashType, c.indexLabelLineThickness)), a.beginPath(), a.moveTo(e, d), a.lineTo(c.indexLabelTextBlock.x, c.indexLabelTextBlock.y), a.lineTo(c.indexLabelTextBlock.x + (\"left\" === c.hemisphere ? -q : q), c.indexLabelTextBlock.y), a.stroke()), a.lineJoin = \"miter\");\n a.save()\n }\n\n function c(a, b) {\n var c = 0,\n c = a.indexLabelTextBlock.y - a.indexLabelTextBlock.height / 2,\n e = a.indexLabelTextBlock.y + a.indexLabelTextBlock.height / 2,\n d = b.indexLabelTextBlock.y - b.indexLabelTextBlock.height /\n 2,\n f = b.indexLabelTextBlock.y + b.indexLabelTextBlock.height / 2;\n return c = b.indexLabelTextBlock.y > a.indexLabelTextBlock.y ? d - e : c - f\n }\n\n function e(a) {\n for (var b = null, e = 1; e < s.length; e++)\n if (b = (a + e + f.length) % f.length, f[b].hemisphere !== f[a].hemisphere) {\n b = null;\n break\n } else if (f[b].indexLabelText && b !== a && (0 > c(f[b], f[a]) || (\"right\" === f[a].hemisphere ? f[b].indexLabelTextBlock.y >= f[a].indexLabelTextBlock.y : f[b].indexLabelTextBlock.y <= f[a].indexLabelTextBlock.y))) break;\n else b = null;\n return b\n }\n\n function g(a, b, d) {\n d = (d || 0) + 1;\n if (1E3 <\n d) return 0;\n b = b || 0;\n var m = 0,\n h = x.y - 1 * r,\n l = x.y + 1 * r;\n if (0 <= a && a < s.length) {\n var n = f[a];\n if (0 > b && n.indexLabelTextBlock.y < h || 0 < b && n.indexLabelTextBlock.y > l) return 0;\n var k = 0,\n q = 0,\n q = k = k = 0;\n 0 > b ? n.indexLabelTextBlock.y - n.indexLabelTextBlock.height / 2 > h && n.indexLabelTextBlock.y - n.indexLabelTextBlock.height / 2 + b < h && (b = -(h - (n.indexLabelTextBlock.y - n.indexLabelTextBlock.height / 2 + b))) : n.indexLabelTextBlock.y + n.indexLabelTextBlock.height / 2 < h && n.indexLabelTextBlock.y + n.indexLabelTextBlock.height / 2 + b > l && (b = n.indexLabelTextBlock.y +\n n.indexLabelTextBlock.height / 2 + b - l);\n b = n.indexLabelTextBlock.y + b;\n h = 0;\n h = \"right\" === n.hemisphere ? x.x + Math.sqrt(Math.pow(r, 2) - Math.pow(b - x.y, 2)) : x.x - Math.sqrt(Math.pow(r, 2) - Math.pow(b - x.y, 2));\n q = x.x + A * Math.cos(n.midAngle);\n k = x.y + A * Math.sin(n.midAngle);\n k = Math.sqrt(Math.pow(h - q, 2) + Math.pow(b - k, 2));\n q = Math.acos(A / r);\n k = Math.acos((r * r + A * A - k * k) / (2 * A * r));\n b = k < q ? b - n.indexLabelTextBlock.y : 0;\n h = null;\n for (l = 1; l < s.length; l++)\n if (h = (a - l + f.length) % f.length, f[h].hemisphere !== f[a].hemisphere) {\n h = null;\n break\n } else if (f[h].indexLabelText &&\n f[h].hemisphere === f[a].hemisphere && h !== a && (0 > c(f[h], f[a]) || (\"right\" === f[a].hemisphere ? f[h].indexLabelTextBlock.y <= f[a].indexLabelTextBlock.y : f[h].indexLabelTextBlock.y >= f[a].indexLabelTextBlock.y))) break;\n else h = null;\n q = h;\n k = e(a);\n l = h = 0;\n 0 > b ? (l = \"right\" === n.hemisphere ? q : k, m = b, null !== l && (q = -b, b = n.indexLabelTextBlock.y - n.indexLabelTextBlock.height / 2 - (f[l].indexLabelTextBlock.y + f[l].indexLabelTextBlock.height / 2), b - q < p && (h = -q, l = g(l, h, d + 1), +l.toFixed(C) > +h.toFixed(C) && (m = b > p ? -(b - p) : -(q - (l - h)))))) : 0 < b && (l = \"right\" ===\n n.hemisphere ? k : q, m = b, null !== l && (q = b, b = f[l].indexLabelTextBlock.y - f[l].indexLabelTextBlock.height / 2 - (n.indexLabelTextBlock.y + n.indexLabelTextBlock.height / 2), b - q < p && (h = q, l = g(l, h, d + 1), +l.toFixed(C) < +h.toFixed(C) && (m = b > p ? b - p : q - (h - l)))));\n m && (d = n.indexLabelTextBlock.y + m, b = 0, b = \"right\" === n.hemisphere ? x.x + Math.sqrt(Math.pow(r, 2) - Math.pow(d - x.y, 2)) : x.x - Math.sqrt(Math.pow(r, 2) - Math.pow(d - x.y, 2)), n.midAngle > Math.PI / 2 - t && n.midAngle < Math.PI / 2 + t ? (h = (a - 1 + f.length) % f.length, h = f[h], a = f[(a + 1 + f.length) % f.length], \"left\" ===\n n.hemisphere && \"right\" === h.hemisphere && b > h.indexLabelTextBlock.x ? b = h.indexLabelTextBlock.x - 15 : \"right\" === n.hemisphere && (\"left\" === a.hemisphere && b < a.indexLabelTextBlock.x) && (b = a.indexLabelTextBlock.x + 15)) : n.midAngle > 3 * Math.PI / 2 - t && n.midAngle < 3 * Math.PI / 2 + t && (h = (a - 1 + f.length) % f.length, h = f[h], a = f[(a + 1 + f.length) % f.length], \"right\" === n.hemisphere && \"left\" === h.hemisphere && b < h.indexLabelTextBlock.x ? b = h.indexLabelTextBlock.x + 15 : \"left\" === n.hemisphere && (\"right\" === a.hemisphere && b > a.indexLabelTextBlock.x) && (b = a.indexLabelTextBlock.x -\n 15)), n.indexLabelTextBlock.y = d, n.indexLabelTextBlock.x = b, n.indexLabelAngle = Math.atan2(n.indexLabelTextBlock.y - x.y, n.indexLabelTextBlock.x - x.x))\n }\n return m\n }\n\n function m() {\n var a = k.plotArea.ctx;\n a.fillStyle = \"grey\";\n a.strokeStyle = \"grey\";\n a.font = \"16px Arial\";\n a.textBaseline = \"middle\";\n for (var b = a = 0, d = 0, m = !0, b = 0; 10 > b && (1 > b || 0 < d); b++) {\n if (h.radius || !h.radius && \"undefined\" !== typeof h.innerRadius && null !== h.innerRadius && A - d <= D) m = !1;\n m && (A -= d);\n d = 0;\n if (\"inside\" !== h.indexLabelPlacement) {\n r = A * v;\n for (a = 0; a < s.length; a++) {\n var l =\n f[a];\n l.indexLabelTextBlock.x = x.x + r * Math.cos(l.midAngle);\n l.indexLabelTextBlock.y = x.y + r * Math.sin(l.midAngle);\n l.indexLabelAngle = l.midAngle;\n l.radius = A;\n l.percentInnerRadius = F\n }\n for (var t, u, a = 0; a < s.length; a++) {\n var l = f[a],\n y = e(a);\n if (null !== y) {\n t = f[a];\n u = f[y];\n var z = 0,\n z = c(t, u) - p;\n if (0 > z) {\n for (var E = u = 0, H = 0; H < s.length; H++) H !== a && f[H].hemisphere === l.hemisphere && (f[H].indexLabelTextBlock.y < l.indexLabelTextBlock.y ? u++ : E++);\n u = z / (u + E || 1) * E;\n var E = -1 * (z - u),\n I = H = 0;\n \"right\" === l.hemisphere ? (H = g(a, u), E = -1 * (z - H), I = g(y, E), +I.toFixed(C) <\n +E.toFixed(C) && +H.toFixed(C) <= +u.toFixed(C) && g(a, -(E - I))) : (H = g(y, u), E = -1 * (z - H), I = g(a, E), +I.toFixed(C) < +E.toFixed(C) && +H.toFixed(C) <= +u.toFixed(C) && g(y, -(E - I)))\n }\n }\n }\n } else\n for (a = 0; a < s.length; a++) l = f[a], r = \"pie\" === h.type ? 0.7 * A : 0.8 * A, y = x.x + r * Math.cos(l.midAngle), u = x.y + r * Math.sin(l.midAngle), l.indexLabelTextBlock.x = y, l.indexLabelTextBlock.y = u;\n for (a = 0; a < s.length; a++)\n if (l = f[a], y = l.indexLabelTextBlock.measureText(), 0 !== y.height && 0 !== y.width) y = y = 0, \"right\" === l.hemisphere ? (y = n.x2 - (l.indexLabelTextBlock.x + l.indexLabelTextBlock.width +\n q), y *= -1) : y = n.x1 - (l.indexLabelTextBlock.x - l.indexLabelTextBlock.width - q), 0 < y && (!m && l.indexLabelText && (u = \"right\" === l.hemisphere ? n.x2 - l.indexLabelTextBlock.x : l.indexLabelTextBlock.x - n.x1, 0.3 * l.indexLabelTextBlock.maxWidth > u ? l.indexLabelText = \"\" : l.indexLabelTextBlock.maxWidth = 0.85 * u, 0.3 * l.indexLabelTextBlock.maxWidth < u && (l.indexLabelTextBlock.x -= \"right\" === l.hemisphere ? 2 : -2)), Math.abs(l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 - x.y) < A || Math.abs(l.indexLabelTextBlock.y + l.indexLabelTextBlock.height /\n 2 - x.y) < A) && (y /= Math.abs(Math.cos(l.indexLabelAngle)), 9 < y && (y *= 0.3), y > d && (d = y)), y = y = 0, 0 < l.indexLabelAngle && l.indexLabelAngle < Math.PI ? (y = n.y2 - (l.indexLabelTextBlock.y + l.indexLabelTextBlock.height / 2 + 5), y *= -1) : y = n.y1 - (l.indexLabelTextBlock.y - l.indexLabelTextBlock.height / 2 - 5), 0 < y && (!m && l.indexLabelText && (u = 0 < l.indexLabelAngle && l.indexLabelAngle < Math.PI ? -1 : 1, 0 === g(a, y * u) && g(a, 2 * u)), Math.abs(l.indexLabelTextBlock.x - x.x) < A && (y /= Math.abs(Math.sin(l.indexLabelAngle)), 9 < y && (y *= 0.3), y > d && (d = y)));\n var K = function (a,\n b, c) {\n for (var e = [], d = 0; e.push(f[b]), b !== c; b = (b + 1 + s.length) % s.length);\n e.sort(function (a, b) {\n return a.y - b.y\n });\n for (b = 0; b < e.length; b++)\n if (c = e[b], d < 0.7 * a) d += c.indexLabelTextBlock.height, c.indexLabelTextBlock.text = \"\", c.indexLabelText = \"\", c.indexLabelTextBlock.measureText();\n else break\n };\n (function () {\n for (var a = -1, b = -1, d = 0, g = !1, l = 0; l < s.length; l++)\n if (g = !1, t = f[l], t.indexLabelText) {\n var m = e(l);\n if (null !== m) {\n var h = f[m];\n z = 0;\n z = c(t, h);\n var n;\n if (n = 0 > z) {\n n = t.indexLabelTextBlock.x;\n var k = t.indexLabelTextBlock.y - t.indexLabelTextBlock.height /\n 2,\n w = t.indexLabelTextBlock.y + t.indexLabelTextBlock.height / 2,\n p = h.indexLabelTextBlock.y - h.indexLabelTextBlock.height / 2,\n u = h.indexLabelTextBlock.x + h.indexLabelTextBlock.width,\n r = h.indexLabelTextBlock.y + h.indexLabelTextBlock.height / 2;\n n = t.indexLabelTextBlock.x + t.indexLabelTextBlock.width < h.indexLabelTextBlock.x - q || n > u + q || k > r + q || w < p - q ? !1 : !0\n }\n n ? (0 > a && (a = l), m !== a && (b = m, d += -z), 0 === l % Math.max(s.length / 10, 3) && (g = !0)) : g = !0;\n g && (0 < d && 0 <= a && 0 <= b) && (K(d, a, b), b = a = -1, d = 0)\n }\n } 0 < d && K(d, a, b)\n })()\n }\n }\n\n function l() {\n k.plotArea.layoutManager.reset();\n k.title && (k.title.dockInsidePlotArea || \"center\" === k.title.horizontalAlign && \"center\" === k.title.verticalAlign) && k.title.render();\n if (k.subtitles)\n for (var a = 0; a < k.subtitles.length; a++) {\n var b = k.subtitles[a];\n (b.dockInsidePlotArea || \"center\" === b.horizontalAlign && \"center\" === b.verticalAlign) && b.render()\n }\n k.legend && (k.legend.dockInsidePlotArea || \"center\" === k.legend.horizontalAlign && \"center\" === k.legend.verticalAlign) && (k.legend.setLayout(), k.legend.render())\n }\n var k = this;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n var h =\n this.data[a.dataSeriesIndexes[0]],\n s = h.dataPoints,\n q = 10,\n n = this.plotArea,\n f = h.dataPointEOs,\n p = 2,\n r, v = 1.3,\n t = 20 / 180 * Math.PI,\n C = 6,\n x = {\n x: (n.x2 + n.x1) / 2,\n y: (n.y2 + n.y1) / 2\n },\n z = 0;\n a = !1;\n for (var y = 0; y < s.length; y++) z += Math.abs(s[y].y), !a && (\"undefined\" !== typeof s[y].indexLabel && null !== s[y].indexLabel && 0 < s[y].indexLabel.toString().length) && (a = !0), !a && (\"undefined\" !== typeof s[y].label && null !== s[y].label && 0 < s[y].label.toString().length) && (a = !0);\n if (0 !== z) {\n a = a || \"undefined\" !== typeof h.indexLabel && null !== h.indexLabel && 0 < h.indexLabel.toString().length;\n var A = \"inside\" !== h.indexLabelPlacement && a ? 0.75 * Math.min(n.width, n.height) / 2 : 0.92 * Math.min(n.width, n.height) / 2;\n h.radius && (A = I(h.radius, A));\n var D = \"undefined\" !== typeof h.innerRadius && null !== h.innerRadius ? I(h.innerRadius, A) : 0.7 * A;\n h.radius = A;\n \"doughnut\" === h.type && (h.innerRadius = D);\n var F = Math.min(D / A, (A - 1) / A);\n this.pieDoughnutClickHandler = function (a) {\n k.isAnimating || !u(a.dataSeries.explodeOnClick) && !a.dataSeries.explodeOnClick || (a = a.dataPoint, a.exploded = a.exploded ? !1 : !0, 1 < this.dataPoints.length && k._animator.animate(0,\n 500,\n function (a) {\n b(a);\n l()\n }))\n };\n d();\n m();\n m();\n m();\n m();\n this.disableToolTip = !0;\n this._animator.animate(0, this.animatedRender ? this.animationDuration : 0, function (a) {\n var b = k.plotArea.ctx;\n b.clearRect(n.x1, n.y1, n.width, n.height);\n b.fillStyle = k.backgroundColor;\n b.fillRect(n.x1, n.y1, n.width, n.height);\n a = f[0].startAngle + 2 * Math.PI * a;\n for (b = 0; b < s.length; b++) {\n var c = 0 === b ? f[b].startAngle : e,\n e = c + (f[b].endAngle - f[b].startAngle),\n d = !1;\n e > a && (e = a, d = !0);\n var g = s[b].color ? s[b].color : h._colorSet[b % h._colorSet.length];\n e > c && ja(k.plotArea.ctx,\n f[b].center, f[b].radius, g, h.type, c, e, h.fillOpacity, f[b].percentInnerRadius);\n if (d) break\n }\n l()\n }, function () {\n k.disableToolTip = !1;\n k._animator.animate(0, k.animatedRender ? 500 : 0, function (a) {\n b(a);\n l()\n })\n })\n }\n }\n };\n var ra = function (a, d, b, c) {\n \"undefined\" === typeof b && (b = 1);\n 0 >= Math.round(d.y4 - d.y1) || (a.save(), a.globalAlpha = b, a.beginPath(), a.moveTo(Math.round(d.x1), Math.round(d.y1)), a.lineTo(Math.round(d.x2), Math.round(d.y2)), a.lineTo(Math.round(d.x3), Math.round(d.y3)), a.lineTo(Math.round(d.x4), Math.round(d.y4)), \"undefined\" !==\n d.x5 && (a.lineTo(Math.round(d.x5), Math.round(d.y5)), a.lineTo(Math.round(d.x6), Math.round(d.y6))), a.closePath(), a.fillStyle = c ? c : d.color, a.fill(), a.globalAplha = 1, a.restore())\n };\n p.prototype.renderFunnel = function (a) {\n function d() {\n for (var a = 0, b = [], c = 0; c < C.length; c++) {\n if (\"undefined\" === typeof C[c].y) return -1;\n C[c].y = \"number\" === typeof C[c].y ? C[c].y : 0;\n a += Math.abs(C[c].y)\n }\n if (0 === a) return -1;\n for (c = b[0] = 0; c < C.length; c++) b.push(Math.abs(C[c].y) * F / a);\n return b\n }\n\n function b() {\n var a = $,\n b = V,\n c = K,\n e = ea,\n d, f;\n d = O;\n f = Z - N;\n e = Math.abs((f -\n d) * (b - a + (e - c)) / 2);\n c = ea - K;\n d = f - d;\n f = c * (f - Z);\n f = Math.abs(f);\n f = e + f;\n for (var e = [], g = 0, l = 0; l < C.length; l++) {\n if (\"undefined\" === typeof C[l].y) return -1;\n C[l].y = \"number\" === typeof C[l].y ? C[l].y : 0;\n g += Math.abs(C[l].y)\n }\n if (0 === g) return -1;\n for (var m = e[0] = 0, h = 0, n, k, b = b - a, m = !1, l = 0; l < C.length; l++) a = Math.abs(C[l].y) * f / g, m ? n = 0 == Number(c.toFixed(3)) ? 0 : a / c : (k = ba * ba * b * b - 4 * Math.abs(ba) * a, 0 > k ? (k = c, m = (b + k) * (d - h) / 2, a -= m, n = d - h, h += d - h, n += 0 == k ? 0 : a / k, h += a / k, m = !0) : (n = (Math.abs(ba) * b - Math.sqrt(k)) / 2, k = b - 2 * n / Math.abs(ba), h += n, h > d && (h -= n,\n k = c, m = (b + k) * (d - h) / 2, a -= m, n = d - h, h += d - h, n += a / k, h += a / k, m = !0), b = k)), e.push(n);\n return e\n }\n\n function c() {\n if (t && C) {\n for (var a, b, c, e, d, g, l, h, m, n, k, q, s, w, p = [], B = [], x = {\n percent: null,\n total: null\n }, v = null, y = 0; y < C.length; y++) w = P[y], w = \"undefined\" !== typeof w.x5 ? (w.y2 + w.y4) / 2 : (w.y2 + w.y3) / 2, w = f(w).x2 + 1, p[y] = L - w - S;\n w = 0.5 * S;\n for (var y = 0, A = C.length - 1; y < C.length || 0 <= A; y++, A--) {\n b = t.reversed ? C[A] : C[y];\n a = b.color ? b.color : t.reversed ? t._colorSet[(C.length - 1 - y) % t._colorSet.length] : t._colorSet[y % t._colorSet.length];\n c = b.indexLabelPlacement ||\n t.indexLabelPlacement || \"outside\";\n e = b.indexLabelBackgroundColor || t.indexLabelBackgroundColor || (r ? \"transparent\" : null);\n d = b.indexLabelFontColor || t.indexLabelFontColor || \"#979797\";\n g = u(b.indexLabelFontSize) ? t.indexLabelFontSize : b.indexLabelFontSize;\n l = b.indexLabelFontStyle || t.indexLabelFontStyle || \"normal\";\n h = b.indexLabelFontFamily || t.indexLabelFontFamily || \"arial\";\n m = b.indexLabelFontWeight || t.indexLabelFontWeight || \"normal\";\n a = b.indexLabelLineColor || t.options.indexLabelLineColor || a;\n n = \"number\" === typeof b.indexLabelLineThickness ?\n b.indexLabelLineThickness : \"number\" === typeof t.indexLabelLineThickness ? t.indexLabelLineThickness : 2;\n k = b.indexLabelLineDashType || t.indexLabelLineDashType || \"solid\";\n q = \"undefined\" !== typeof b.indexLabelWrap ? b.indexLabelWrap : \"undefined\" !== typeof t.indexLabelWrap ? t.indexLabelWrap : !0;\n s = t.dataPointIds[y];\n z._eventManager.objectMap[s] = {\n id: s,\n objectType: \"dataPoint\",\n dataPointIndex: y,\n dataSeriesIndex: 0,\n funnelSection: P[t.reversed ? C.length - 1 - y : y]\n };\n \"inside\" === t.indexLabelPlacement && (p[y] = y !== fa ? t.reversed ? P[y].x2 - P[y].x1 :\n P[y].x3 - P[y].x4 : P[y].x3 - P[y].x6, 20 > p[y] && (p[y] = y !== fa ? t.reversed ? P[y].x3 - P[y].x4 : P[y].x2 - P[y].x1 : P[y].x2 - P[y].x1, p[y] /= 2));\n s = b.indexLabelMaxWidth ? b.indexLabelMaxWidth : t.options.indexLabelMaxWidth ? t.indexLabelMaxWidth : p[y];\n if (s > p[y] || 0 > s) s = p[y];\n B[y] = \"inside\" === t.indexLabelPlacement ? P[y].height : !1;\n x = z.getPercentAndTotal(t, b);\n if (t.indexLabelFormatter || b.indexLabelFormatter) v = {\n chart: z.options,\n dataSeries: t,\n dataPoint: b,\n total: x.total,\n percent: x.percent\n };\n b = b.indexLabelFormatter ? b.indexLabelFormatter(v) : b.indexLabel ?\n z.replaceKeywordsWithValue(b.indexLabel, b, t, y) : t.indexLabelFormatter ? t.indexLabelFormatter(v) : t.indexLabel ? z.replaceKeywordsWithValue(t.indexLabel, b, t, y) : b.label ? b.label : \"\";\n 0 >= n && (n = 0);\n 1E3 > s && 1E3 - s < w && (s += 1E3 - s);\n Q.roundRect || Ea(Q);\n c = new ka(Q, {\n fontSize: g,\n fontFamily: h,\n fontColor: d,\n fontStyle: l,\n fontWeight: m,\n horizontalAlign: c,\n backgroundColor: e,\n maxWidth: s,\n maxHeight: !1 === B[y] ? q ? 4.28571429 * g : 1.5 * g : B[y],\n text: b,\n padding: ga\n });\n c.measureText();\n J.push({\n textBlock: c,\n id: t.reversed ? A : y,\n isDirty: !1,\n lineColor: a,\n lineThickness: n,\n lineDashType: k,\n height: c.height < c.maxHeight ? c.height : c.maxHeight,\n width: c.width < c.maxWidth ? c.width : c.maxWidth\n })\n }\n }\n }\n\n function e() {\n var a, b, c, e, d, f = [];\n d = !1;\n c = 0;\n for (var g, l = L - V - S / 2, l = t.options.indexLabelMaxWidth ? t.indexLabelMaxWidth > l ? l : t.indexLabelMaxWidth : l, h = J.length - 1; 0 <= h; h--) {\n g = C[J[h].id];\n c = J[h];\n e = c.textBlock;\n b = (a = n(h) < P.length ? J[n(h)] : null) ? a.textBlock : null;\n c = c.height;\n a && e.y + c + ga > b.y && (d = !0);\n c = g.indexLabelMaxWidth || l;\n if (c > l || 0 > c) c = l;\n f.push(c)\n }\n if (d)\n for (h = J.length - 1; 0 <= h; h--) a = P[h], J[h].textBlock.maxWidth =\n f[f.length - (h + 1)], J[h].textBlock.measureText(), J[h].textBlock.x = L - l, c = J[h].textBlock.height < J[h].textBlock.maxHeight ? J[h].textBlock.height : J[h].textBlock.maxHeight, d = J[h].textBlock.width < J[h].textBlock.maxWidth ? J[h].textBlock.width : J[h].textBlock.maxWidth, J[h].height = c, J[h].width = d, c = \"undefined\" !== typeof a.x5 ? (a.y2 + a.y4) / 2 : (a.y2 + a.y3) / 2, J[h].textBlock.y = c - J[h].height / 2, t.reversed ? (J[h].textBlock.y + J[h].height > pa + D && (J[h].textBlock.y = pa + D - J[h].height), J[h].textBlock.y < wa - D && (J[h].textBlock.y = wa - D)) :\n (J[h].textBlock.y < pa - D && (J[h].textBlock.y = pa - D), J[h].textBlock.y + J[h].height > wa + D && (J[h].textBlock.y = wa + D - J[h].height))\n }\n\n function g() {\n var a, b, c, e;\n if (\"inside\" !== t.indexLabelPlacement)\n for (var d = 0; d < P.length; d++) 0 == J[d].textBlock.text.length ? J[d].isDirty = !0 : (a = P[d], c = \"undefined\" !== typeof a.x5 ? (a.y2 + a.y4) / 2 : (a.y2 + a.y3) / 2, b = t.reversed ? \"undefined\" !== typeof a.x5 ? c > Da ? f(c).x2 + 1 : (a.x2 + a.x3) / 2 + 1 : (a.x2 + a.x3) / 2 + 1 : \"undefined\" !== typeof a.x5 ? c < Da ? f(c).x2 + 1 : (a.x4 + a.x3) / 2 + 1 : (a.x2 + a.x3) / 2 + 1, J[d].textBlock.x = b + S, J[d].textBlock.y =\n c - J[d].height / 2, t.reversed ? (J[d].textBlock.y + J[d].height > pa + D && (J[d].textBlock.y = pa + D - J[d].height), J[d].textBlock.y < wa - D && (J[d].textBlock.y = wa - D)) : (J[d].textBlock.y < pa - D && (J[d].textBlock.y = pa - D), J[d].textBlock.y + J[d].height > wa + D && (J[d].textBlock.y = wa + D - J[d].height)));\n else\n for (d = 0; d < P.length; d++) 0 == J[d].textBlock.text.length ? J[d].isDirty = !0 : (a = P[d], b = a.height, c = J[d].height, e = J[d].width, b >= c ? (b = d != fa ? (a.x4 + a.x3) / 2 - e / 2 : (a.x5 + a.x4) / 2 - e / 2, c = d != fa ? (a.y1 + a.y3) / 2 - c / 2 : (a.y1 + a.y4) / 2 - c / 2, J[d].textBlock.x = b,\n J[d].textBlock.y = c) : J[d].isDirty = !0)\n }\n\n function m() {\n function a(b, c) {\n var d;\n if (0 > b || b >= J.length) return 0;\n var e, f = J[b].textBlock;\n if (0 > c) {\n c *= -1;\n e = q(b);\n d = l(e, b);\n if (d >= c) return f.y -= c, c;\n if (0 == b) return 0 < d && (f.y -= d), d;\n d += a(e, -(c - d));\n 0 < d && (f.y -= d);\n return d\n }\n e = n(b);\n d = l(b, e);\n if (d >= c) return f.y += c, c;\n if (b == P.length - 1) return 0 < d && (f.y += d), d;\n d += a(e, c - d);\n 0 < d && (f.y += d);\n return d\n }\n\n function b() {\n var a, d, e, f, g = 0,\n h;\n f = (Z - O + 2 * D) / k;\n h = k;\n for (var l, m = 1; m < h; m++) {\n e = m * f;\n for (var s = J.length - 1; 0 <= s; s--) !J[s].isDirty && (J[s].textBlock.y <\n e && J[s].textBlock.y + J[s].height > e) && (l = n(s), !(l >= J.length - 1) && J[s].textBlock.y + J[s].height + ga > J[l].textBlock.y && (J[s].textBlock.y = J[s].textBlock.y + J[s].height - e > e - J[s].textBlock.y ? e + 1 : e - J[s].height - 1))\n }\n for (l = P.length - 1; 0 < l; l--)\n if (!J[l].isDirty) {\n e = q(l);\n if (0 > e && (e = 0, J[e].isDirty)) break;\n if (J[l].textBlock.y < J[e].textBlock.y + J[e].height) {\n d = d || l;\n f = l;\n for (h = 0; J[f].textBlock.y < J[e].textBlock.y + J[e].height + ga;) {\n a = a || J[f].textBlock.y + J[f].height;\n h += J[f].height;\n h += ga;\n f = e;\n if (0 >= f) {\n f = 0;\n h += J[f].height;\n break\n }\n e = q(f);\n if (0 > e) {\n f = 0;\n h += J[f].height;\n break\n }\n }\n if (f != l) {\n g = J[f].textBlock.y;\n a -= g;\n a = h - a;\n g = c(a, d, f);\n break\n }\n }\n } return g\n }\n\n function c(a, b, d) {\n var e = [],\n f = 0,\n g = 0;\n for (a = Math.abs(a); d <= b; d++) e.push(P[d]);\n e.sort(function (a, b) {\n return a.height - b.height\n });\n for (d = 0; d < e.length; d++)\n if (b = e[d], f < a) g++, f += J[b.id].height + ga, J[b.id].textBlock.text = \"\", J[b.id].indexLabelText = \"\", J[b.id].isDirty = !0, J[b.id].textBlock.measureText();\n else break;\n return g\n }\n for (var d, e, f, g, h, m, k = 1, s = 0; s < 2 * k; s++) {\n for (var w = J.length - 1; 0 <= w && !(0 <= q(w) && q(w), f = J[w], g = f.textBlock,\n m = (h = n(w) < P.length ? J[n(w)] : null) ? h.textBlock : null, d = +f.height.toFixed(6), e = +g.y.toFixed(6), !f.isDirty && (h && e + d + ga > +m.y.toFixed(6)) && (d = g.y + d + ga - m.y, e = a(w, -d), e < d && (0 < e && (d -= e), e = a(n(w), d), e != d))); w--);\n b()\n }\n }\n\n function l(a, b) {\n return (b < P.length ? J[b].textBlock.y : t.reversed ? pa + D : wa + D) - (0 > a ? t.reversed ? wa - D : pa - D : J[a].textBlock.y + J[a].height + ga)\n }\n\n function k(a, b, c) {\n var d, e, f, l = [],\n m = D,\n n = []; - 1 !== b && (0 <= W.indexOf(b) ? (e = W.indexOf(b), W.splice(e, 1)) : (W.push(b), W = W.sort(function (a, b) {\n return a - b\n })));\n if (0 === W.length) l =\n ia;\n else {\n e = D * (1 != W.length || 0 != W[0] && W[0] != P.length - 1 ? 2 : 1) / h();\n for (var q = 0; q < P.length; q++) {\n if (1 == W.length && 0 == W[0]) {\n if (0 === q) {\n l.push(ia[q]);\n d = m;\n continue\n }\n } else 0 === q && (d = -1 * m);\n l.push(ia[q] + d);\n if (0 <= W.indexOf(q) || q < P.length && 0 <= W.indexOf(q + 1)) d += e\n }\n }\n f = function () {\n for (var a = [], b = 0; b < P.length; b++) a.push(l[b] - P[b].y1);\n return a\n }();\n var w = {\n startTime: (new Date).getTime(),\n duration: c || 500,\n easingFunction: function (a, b, c, d) {\n return M.easing.easeOutQuart(a, b, c, d)\n },\n changeSection: function (a) {\n for (var b, c, d = 0; d < P.length; d++) b =\n f[d], c = P[d], b *= a, \"undefined\" === typeof n[d] && (n[d] = 0), 0 > n && (n *= -1), c.y1 += b - n[d], c.y2 += b - n[d], c.y3 += b - n[d], c.y4 += b - n[d], c.y5 && (c.y5 += b - n[d], c.y6 += b - n[d]), n[d] = b\n }\n };\n a._animator.animate(0, c, function (c) {\n var d = a.plotArea.ctx || a.ctx;\n ja = !0;\n d.clearRect(x.x1, x.y1, x.x2 - x.x1, x.y2 - x.y1);\n d.fillStyle = a.backgroundColor;\n d.fillRect(x.x1, x.y1, x.width, x.height);\n w.changeSection(c, b);\n var e = {};\n e.dataSeries = t;\n e.dataPoint = t.reversed ? t.dataPoints[C.length - 1 - b] : t.dataPoints[b];\n e.index = t.reversed ? C.length - 1 - b : b;\n a.toolTip.highlightObjects([e]);\n for (e = 0; e < P.length; e++) ra(d, P[e], t.fillOpacity);\n v(d);\n H && (\"inside\" !== t.indexLabelPlacement ? s(d) : g(), p(d));\n 1 <= c && (ja = !1)\n }, null, M.easing.easeOutQuart)\n }\n\n function h() {\n for (var a = 0, b = 0; b < P.length - 1; b++)(0 <= W.indexOf(b) || 0 <= W.indexOf(b + 1)) && a++;\n return a\n }\n\n function s(a) {\n for (var b, c, d, e, g = 0; g < P.length; g++) e = 1 === J[g].lineThickness % 2 ? 0.5 : 0, c = ((P[g].y2 + P[g].y4) / 2 << 0) + e, b = f(c).x2 - 1, d = J[g].textBlock.x, e = (J[g].textBlock.y + J[g].height / 2 << 0) + e, J[g].isDirty || 0 == J[g].lineThickness || (a.strokeStyle = J[g].lineColor, a.lineWidth =\n J[g].lineThickness, a.setLineDash && a.setLineDash(R(J[g].lineDashType, J[g].lineThickness)), a.beginPath(), a.moveTo(b, c), a.lineTo(d, e), a.stroke())\n }\n\n function q(a) {\n for (a -= 1; - 1 <= a && -1 != a && J[a].isDirty; a--);\n return a\n }\n\n function n(a) {\n for (a += 1; a <= P.length && a != P.length && J[a].isDirty; a++);\n return a\n }\n\n function f(a) {\n for (var b, c = 0; c < C.length; c++)\n if (P[c].y1 < a && P[c].y4 > a) {\n b = P[c];\n break\n } return b ? (a = b.y6 ? a > b.y6 ? b.x3 + (b.x4 - b.x3) / (b.y4 - b.y3) * (a - b.y3) : b.x2 + (b.x3 - b.x2) / (b.y3 - b.y2) * (a - b.y2) : b.x2 + (b.x3 - b.x2) / (b.y3 - b.y2) * (a - b.y2), {\n x1: a,\n x2: a\n }) : -1\n }\n\n function p(a) {\n for (var b = 0; b < P.length; b++) J[b].isDirty || (a && (J[b].textBlock.ctx = a), J[b].textBlock.render(!0))\n }\n\n function v(a) {\n z.plotArea.layoutManager.reset();\n a.roundRect || Ea(a);\n z.title && (z.title.dockInsidePlotArea || \"center\" === z.title.horizontalAlign && \"center\" === z.title.verticalAlign) && (z.title.ctx = a, z.title.render());\n if (z.subtitles)\n for (var b = 0; b < z.subtitles.length; b++) {\n var c = z.subtitles[b];\n if (c.dockInsidePlotArea || \"center\" === c.horizontalAlign && \"center\" === c.verticalAlign) z.subtitles.ctx =\n a, c.render()\n }\n z.legend && (z.legend.dockInsidePlotArea || \"center\" === z.legend.horizontalAlign && \"center\" === z.legend.verticalAlign) && (z.legend.ctx = a, z.legend.setLayout(), z.legend.render());\n U.fNg && U.fNg(z)\n }\n var z = this;\n if (!(0 >= a.dataSeriesIndexes.length)) {\n for (var t = this.data[a.dataSeriesIndexes[0]], C = t.dataPoints, x = this.plotArea, D = 0.025 * x.width, y = 0.01 * x.width, A = 0, F = x.height - 2 * D, E = Math.min(x.width - 2 * y, 2.8 * x.height), H = !1, I = 0; I < C.length; I++)\n if (!H && (\"undefined\" !== typeof C[I].indexLabel && null !== C[I].indexLabel &&\n 0 < C[I].indexLabel.toString().length) && (H = !0), !H && (\"undefined\" !== typeof C[I].label && null !== C[I].label && 0 < C[I].label.toString().length) && (H = !0), !H && \"function\" === typeof t.indexLabelFormatter || \"function\" === typeof C[I].indexLabelFormatter) H = !0;\n H = H || \"undefined\" !== typeof t.indexLabel && null !== t.indexLabel && 0 < t.indexLabel.toString().length;\n \"inside\" !== t.indexLabelPlacement && H || (y = (x.width - 0.75 * E) / 2);\n var I = x.x1 + y,\n L = x.x2 - y,\n O = x.y1 + D,\n Z = x.y2 - D,\n Q = a.targetCanvasCtx || this.plotArea.ctx || this.ctx;\n if (0 != t.length && (t.dataPoints &&\n t.visible) && 0 !== C.length) {\n var N, G;\n a = 75 * E / 100;\n var S = 30 * (L - a) / 100;\n \"funnel\" === t.type ? (N = u(t.options.neckHeight) ? 0.35 * F : t.neckHeight, G = u(t.options.neckWidth) ? 0.25 * a : t.neckWidth, \"string\" === typeof N && N.match(/%$/) ? (N = parseInt(N), N = N * F / 100) : N = parseInt(N), \"string\" === typeof G && G.match(/%$/) ? (G = parseInt(G), G = G * a / 100) : G = parseInt(G), N > F ? N = F : 0 >= N && (N = 0), G > a ? G = a - 0.5 : 0 >= G && (G = 0)) : \"pyramid\" === t.type && (G = N = 0, t.reversed = t.reversed ? !1 : !0);\n var y = I + a / 2,\n $ = I,\n V = I + a,\n pa = t.reversed ? Z : O,\n K = y - G / 2,\n ea = y + G / 2,\n Da = t.reversed ? O + N : Z -\n N,\n wa = t.reversed ? O : Z;\n a = [];\n var y = [],\n P = [],\n E = [],\n X = O,\n fa, ba = (Da - pa) / (K - $),\n ha = -ba,\n I = \"area\" === (t.valueRepresents ? t.valueRepresents : \"height\") ? b() : d();\n if (-1 !== I) {\n if (t.reversed)\n for (E.push(X), G = I.length - 1; 0 < G; G--) X += I[G], E.push(X);\n else\n for (G = 0; G < I.length; G++) X += I[G], E.push(X);\n if (t.reversed)\n for (G = 0; G < I.length; G++) E[G] < Da ? (a.push(K), y.push(ea), fa = G) : (a.push((E[G] - pa + ba * $) / ba), y.push((E[G] - pa + ha * V) / ha));\n else\n for (G = 0; G < I.length; G++) E[G] < Da ? (a.push((E[G] - pa + ba * $) / ba), y.push((E[G] - pa + ha * V) / ha), fa = G) : (a.push(K), y.push(ea));\n for (G = 0; G < I.length - 1; G++) X = t.reversed ? C[C.length - 1 - G].color ? C[C.length - 1 - G].color : t._colorSet[(C.length - 1 - G) % t._colorSet.length] : C[G].color ? C[G].color : t._colorSet[G % t._colorSet.length], G === fa ? P.push({\n x1: a[G],\n y1: E[G],\n x2: y[G],\n y2: E[G],\n x3: ea,\n y3: Da,\n x4: y[G + 1],\n y4: E[G + 1],\n x5: a[G + 1],\n y5: E[G + 1],\n x6: K,\n y6: Da,\n id: G,\n height: E[G + 1] - E[G],\n color: X\n }) : P.push({\n x1: a[G],\n y1: E[G],\n x2: y[G],\n y2: E[G],\n x3: y[G + 1],\n y3: E[G + 1],\n x4: a[G + 1],\n y4: E[G + 1],\n id: G,\n height: E[G + 1] - E[G],\n color: X\n });\n var ga = 2,\n J = [],\n ja = !1,\n W = [],\n ia = [],\n I = !1;\n a = a = 0;\n Fa(W);\n for (G = 0; G <\n C.length; G++) C[G].exploded && (I = !0, t.reversed ? W.push(C.length - 1 - G) : W.push(G));\n Q.clearRect(x.x1, x.y1, x.width, x.height);\n Q.fillStyle = z.backgroundColor;\n Q.fillRect(x.x1, x.y1, x.width, x.height);\n if (H && t.visible && (c(), g(), e(), \"inside\" !== t.indexLabelPlacement)) {\n m();\n for (G = 0; G < C.length; G++) J[G].isDirty || (a = J[G].textBlock.x + J[G].width, a = (L - a) / 2, 0 == G && (A = a), A > a && (A = a));\n for (G = 0; G < P.length; G++) P[G].x1 += A, P[G].x2 += A, P[G].x3 += A, P[G].x4 += A, P[G].x5 && (P[G].x5 += A, P[G].x6 += A), J[G].textBlock.x += A\n }\n for (G = 0; G < P.length; G++) A =\n P[G], ra(Q, A, t.fillOpacity), ia.push(A.y1);\n v(Q);\n H && t.visible && (\"inside\" === t.indexLabelPlacement || z.animationEnabled || s(Q), z.animationEnabled || p());\n if (!H)\n for (G = 0; G < C.length; G++) A = t.dataPointIds[G], a = {\n id: A,\n objectType: \"dataPoint\",\n dataPointIndex: G,\n dataSeriesIndex: 0,\n funnelSection: P[t.reversed ? C.length - 1 - G : G]\n }, z._eventManager.objectMap[A] = a;\n !z.animationEnabled && I ? k(z, -1, 0) : z.animationEnabled && !z.animatedRender && k(z, -1, 0);\n this.funnelPyramidClickHandler = function (a) {\n var b = -1;\n if (!ja && !z.isAnimating && (u(a.dataSeries.explodeOnClick) ||\n a.dataSeries.explodeOnClick) && (b = t.reversed ? C.length - 1 - a.dataPointIndex : a.dataPointIndex, 0 <= b)) {\n a = b;\n if (\"funnel\" === t.type || \"pyramid\" === t.type) t.reversed ? C[C.length - 1 - a].exploded = C[C.length - 1 - a].exploded ? !1 : !0 : C[a].exploded = C[a].exploded ? !1 : !0;\n k(z, b, 500)\n }\n };\n return {\n source: Q,\n dest: this.plotArea.ctx,\n animationCallback: function (a, b) {\n M.fadeInAnimation(a, b);\n 1 <= a && (k(z, -1, 500), v(z.plotArea.ctx || z.ctx))\n },\n easingFunction: M.easing.easeInQuad,\n animationBase: 0\n }\n }\n }\n }\n };\n p.prototype.requestAnimFrame = function () {\n return window.requestAnimationFrame ||\n window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (a) {\n window.setTimeout(a, 1E3 / 60)\n }\n }();\n p.prototype.cancelRequestAnimFrame = window.cancelAnimationFrame || window.webkitCancelRequestAnimationFrame || window.mozCancelRequestAnimationFrame || window.oCancelRequestAnimationFrame || window.msCancelRequestAnimationFrame || clearTimeout;\n p.prototype.set = function (a, d, b) {\n b = \"undefined\" === typeof b ? !0 : b;\n \"options\" === a ? (this.options = d,\n b && this.render()) : p.base.set.call(this, a, d, b)\n };\n p.prototype.exportChart = function (a) {\n a = \"undefined\" === typeof a ? {} : a;\n var d = a.format ? a.format : \"png\",\n b = a.fileName ? a.fileName : this.exportFileName;\n if (a.toDataURL) return this.canvas.toDataURL(\"image/\" + d);\n Ta(this.canvas, d, b)\n };\n p.prototype.print = function () {\n var a = this.exportChart({\n toDataURL: !0\n }),\n d = document.createElement(\"iframe\");\n d.setAttribute(\"class\", \"canvasjs-chart-print-frame\");\n d.setAttribute(\"style\", \"position:absolute; width:100%; border: 0px; margin: 0px 0px 0px 0px; padding 0px 0px 0px 0px;\");\n d.style.height = this.height + \"px\";\n this._canvasJSContainer.appendChild(d);\n var b = this,\n c = d.contentWindow || d.contentDocument.document || d.contentDocument;\n c.document.open();\n c.document.write('\\n');\n c.document.close();\n setTimeout(function () {\n c.focus();\n c.print();\n setTimeout(function () {\n b._canvasJSContainer.removeChild(d)\n }, 1E3)\n }, 500)\n };\n p.prototype.getPercentAndTotal = function (a, d) {\n var b = null,\n c = null,\n e = null;\n if (0 <= a.type.indexOf(\"stacked\")) c = 0, b = d.x.getTime ? d.x.getTime() : d.x, b in a.plotUnit.yTotals && (c = a.plotUnit.yTotals[b], e = isNaN(d.y) ? 0 : 100 * (d.y / c));\n else if (\"pie\" === a.type || \"doughnut\" === a.type || \"funnel\" === a.type || \"pyramid\" === a.type) {\n for (b = c = 0; b < a.dataPoints.length; b++) isNaN(a.dataPoints[b].y) || (c += a.dataPoints[b].y);\n e = isNaN(d.y) ? 0 : 100 * (d.y / c)\n }\n return {\n percent: e,\n total: c\n }\n };\n p.prototype.replaceKeywordsWithValue = function (a, d, b, c, e) {\n var g = this;\n e = \"undefined\" === typeof e ? 0 : e;\n if ((0 <= b.type.indexOf(\"stacked\") ||\n \"pie\" === b.type || \"doughnut\" === b.type || \"funnel\" === b.type || \"pyramid\" === b.type) && (0 <= a.indexOf(\"#percent\") || 0 <= a.indexOf(\"#total\"))) {\n var m = \"#percent\",\n l = \"#total\",\n k = this.getPercentAndTotal(b, d),\n l = isNaN(k.total) ? l : k.total,\n m = isNaN(k.percent) ? m : k.percent;\n do {\n k = \"\";\n if (b.percentFormatString) k = b.percentFormatString;\n else {\n var k = \"#,##0.\",\n h = Math.max(Math.ceil(Math.log(1 / Math.abs(m)) / Math.LN10), 2);\n if (isNaN(h) || !isFinite(h)) h = 2;\n for (var s = 0; s < h; s++) k += \"#\";\n b.percentFormatString = k\n }\n a = a.replace(\"#percent\", ba(m, k, g._cultureInfo));\n a = a.replace(\"#total\", ba(l, b.yValueFormatString ? b.yValueFormatString : \"#,##0.########\", g._cultureInfo))\n } while (0 <= a.indexOf(\"#percent\") || 0 <= a.indexOf(\"#total\"))\n }\n return a.replace(/\\{.*?\\}|\"[^\"]*\"|'[^']*'/g, function (a) {\n if ('\"' === a[0] && '\"' === a[a.length - 1] || \"'\" === a[0] && \"'\" === a[a.length - 1]) return a.slice(1, a.length - 1);\n a = Ia(a.slice(1, a.length - 1));\n a = a.replace(\"#index\", e);\n var h = null;\n try {\n var f = a.match(/(.*?)\\s*\\[\\s*(.*?)\\s*\\]/);\n f && 0 < f.length && (h = Ia(f[2]), a = Ia(f[1]))\n } catch (l) { }\n f = null;\n if (\"color\" === a) return \"waterfall\" ===\n b.type ? d.color ? d.color : 0 < d.y ? b.risingColor : b.fallingColor : \"error\" === b.type ? b.color ? b.color : b._colorSet[h % b._colorSet.length] : d.color ? d.color : b.color ? b.color : b._colorSet[c % b._colorSet.length];\n if (d.hasOwnProperty(a)) f = d;\n else if (b.hasOwnProperty(a)) f = b;\n else return \"\";\n f = f[a];\n null !== h && (f = f[h]);\n if (\"x\" === a)\n if (\"dateTime\" === b.axisX.valueType || \"dateTime\" === b.xValueType || d.x && d.x.getTime) {\n if (g.plotInfo.plotTypes[0].plotUnits[0].axisX && !g.plotInfo.plotTypes[0].plotUnits[0].axisX.logarithmic) return Ca(f, d.xValueFormatString ?\n d.xValueFormatString : b.xValueFormatString ? b.xValueFormatString : b.xValueFormatString = g.axisX && g.axisX.autoValueFormatString ? g.axisX.autoValueFormatString : \"DD MMM YY\", g._cultureInfo)\n } else return ba(f, d.xValueFormatString ? d.xValueFormatString : b.xValueFormatString ? b.xValueFormatString : b.xValueFormatString = \"#,##0.########\", g._cultureInfo);\n else return \"y\" === a ? ba(f, d.yValueFormatString ? d.yValueFormatString : b.yValueFormatString ? b.yValueFormatString : b.yValueFormatString = \"#,##0.########\", g._cultureInfo) : \"z\" ===\n a ? ba(f, d.zValueFormatString ? d.zValueFormatString : b.zValueFormatString ? b.zValueFormatString : b.zValueFormatString = \"#,##0.########\", g._cultureInfo) : f\n })\n };\n qa(H, V);\n H.prototype.setLayout = function () {\n var a = this.dockInsidePlotArea ? this.chart.plotArea : this.chart,\n d = a.layoutManager.getFreeSpace(),\n b = null,\n c = 0,\n e = 0,\n g = 0,\n m = 0,\n l = this.markerMargin = this.chart.options.legend && !u(this.chart.options.legend.markerMargin) ? this.chart.options.legend.markerMargin : 0.3 * this.fontSize;\n this.height = 0;\n var k = [],\n h = [];\n \"top\" === this.verticalAlign ||\n \"bottom\" === this.verticalAlign ? (this.orientation = \"horizontal\", b = this.verticalAlign, g = this.maxWidth = null !== this.maxWidth ? this.maxWidth : d.width, m = this.maxHeight = null !== this.maxHeight ? this.maxHeight : 0.5 * d.height) : \"center\" === this.verticalAlign && (this.orientation = \"vertical\", b = this.horizontalAlign, g = this.maxWidth = null !== this.maxWidth ? this.maxWidth : 0.5 * d.width, m = this.maxHeight = null !== this.maxHeight ? this.maxHeight : d.height);\n this.errorMarkerColor = [];\n for (var s = 0; s < this.dataSeries.length; s++) {\n var q = this.dataSeries[s];\n if (q.dataPoints && q.dataPoints.length)\n if (\"pie\" !== q.type && \"doughnut\" !== q.type && \"funnel\" !== q.type && \"pyramid\" !== q.type) {\n var n = q.legendMarkerType = q.legendMarkerType ? q.legendMarkerType : \"line\" !== q.type && \"stepLine\" !== q.type && \"spline\" !== q.type && \"scatter\" !== q.type && \"bubble\" !== q.type || !q.markerType ? \"error\" === q.type && q._linkedSeries ? q._linkedSeries.legendMarkerType ? q._linkedSeries.legendMarkerType : F.getDefaultLegendMarker(q._linkedSeries.type) : F.getDefaultLegendMarker(q.type) : q.markerType,\n f = q.legendText ? q.legendText :\n this.itemTextFormatter ? this.itemTextFormatter({\n chart: this.chart,\n legend: this.options,\n dataSeries: q,\n dataPoint: null\n }) : q.name,\n p = q.legendMarkerColor = q.legendMarkerColor ? q.legendMarkerColor : q.markerColor ? q.markerColor : \"error\" === q.type ? u(q.whiskerColor) ? q._colorSet[0] : q.whiskerColor : q._colorSet[0],\n r = q.markerSize || \"line\" !== q.type && \"stepLine\" !== q.type && \"spline\" !== q.type ? 0.75 * this.lineHeight : 0,\n v = q.legendMarkerBorderColor ? q.legendMarkerBorderColor : q.markerBorderColor,\n t = q.legendMarkerBorderThickness ? q.legendMarkerBorderThickness :\n q.markerBorderThickness ? Math.max(1, Math.round(0.2 * r)) : 0;\n \"error\" === q.type && this.errorMarkerColor.push(p);\n f = this.chart.replaceKeywordsWithValue(f, q.dataPoints[0], q, s);\n n = {\n markerType: n,\n markerColor: p,\n text: f,\n textBlock: null,\n chartType: q.type,\n markerSize: r,\n lineColor: q._colorSet[0],\n dataSeriesIndex: q.index,\n dataPointIndex: null,\n markerBorderColor: v,\n markerBorderThickness: t\n };\n k.push(n)\n } else\n for (var z = 0; z < q.dataPoints.length; z++) {\n var x = q.dataPoints[z],\n n = x.legendMarkerType ? x.legendMarkerType : q.legendMarkerType ? q.legendMarkerType :\n F.getDefaultLegendMarker(q.type),\n f = x.legendText ? x.legendText : q.legendText ? q.legendText : this.itemTextFormatter ? this.itemTextFormatter({\n chart: this.chart,\n legend: this.options,\n dataSeries: q,\n dataPoint: x\n }) : x.name ? x.name : \"DataPoint: \" + (z + 1),\n p = x.legendMarkerColor ? x.legendMarkerColor : q.legendMarkerColor ? q.legendMarkerColor : x.color ? x.color : q.color ? q.color : q._colorSet[z % q._colorSet.length],\n r = 0.75 * this.lineHeight,\n v = x.legendMarkerBorderColor ? x.legendMarkerBorderColor : q.legendMarkerBorderColor ? q.legendMarkerBorderColor :\n x.markerBorderColor ? x.markerBorderColor : q.markerBorderColor,\n t = x.legendMarkerBorderThickness ? x.legendMarkerBorderThickness : q.legendMarkerBorderThickness ? q.legendMarkerBorderThickness : x.markerBorderThickness || q.markerBorderThickness ? Math.max(1, Math.round(0.2 * r)) : 0,\n f = this.chart.replaceKeywordsWithValue(f, x, q, z),\n n = {\n markerType: n,\n markerColor: p,\n text: f,\n textBlock: null,\n chartType: q.type,\n markerSize: r,\n dataSeriesIndex: s,\n dataPointIndex: z,\n markerBorderColor: v,\n markerBorderThickness: t\n };\n (x.showInLegend || q.showInLegend &&\n !1 !== x.showInLegend) && k.push(n)\n }\n } !0 === this.reversed && k.reverse();\n if (0 < k.length) {\n q = null;\n p = f = x = z = 0;\n x = null !== this.itemWidth ? null !== this.itemMaxWidth ? Math.min(this.itemWidth, this.itemMaxWidth, g) : this.itemMaxWidth = Math.min(this.itemWidth, g) : null !== this.itemMaxWidth ? Math.min(this.itemMaxWidth, g) : this.itemMaxWidth = g;\n r = 0 === r ? 0.75 * this.lineHeight : r;\n x -= r + l;\n for (s = 0; s < k.length; s++) {\n n = k[s];\n v = x;\n if (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" === n.chartType) v -= 2 * 0.1 * this.lineHeight;\n if (!(0 >= m || \"undefined\" ===\n typeof m || 0 >= v || \"undefined\" === typeof v)) {\n if (\"horizontal\" === this.orientation) {\n n.textBlock = new ka(this.ctx, {\n x: 0,\n y: 0,\n maxWidth: v,\n maxHeight: this.itemWrap ? m : this.lineHeight,\n angle: 0,\n text: n.text,\n horizontalAlign: \"left\",\n fontSize: this.fontSize,\n fontFamily: this.fontFamily,\n fontWeight: this.fontWeight,\n fontColor: this.fontColor,\n fontStyle: this.fontStyle,\n textBaseline: \"middle\"\n });\n n.textBlock.measureText();\n null !== this.itemWidth && (n.textBlock.width = this.itemWidth - (r + l + (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" ===\n n.chartType ? 2 * 0.1 * this.lineHeight : 0)));\n if (!q || q.width + Math.round(n.textBlock.width + r + l + (0 === q.width ? 0 : this.horizontalSpacing) + (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" === n.chartType ? 2 * 0.1 * this.lineHeight : 0)) > g) q = {\n items: [],\n width: 0\n }, h.push(q), this.height += f, f = 0;\n f = Math.max(f, n.textBlock.height)\n } else n.textBlock = new ka(this.ctx, {\n x: 0,\n y: 0,\n maxWidth: x,\n maxHeight: !0 === this.itemWrap ? m : 1.5 * this.fontSize,\n angle: 0,\n text: n.text,\n horizontalAlign: \"left\",\n fontSize: this.fontSize,\n fontFamily: this.fontFamily,\n fontWeight: this.fontWeight,\n fontColor: this.fontColor,\n fontStyle: this.fontStyle,\n textBaseline: \"middle\"\n }), n.textBlock.measureText(), null !== this.itemWidth && (n.textBlock.width = this.itemWidth - (r + l + (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" === n.chartType ? 2 * 0.1 * this.lineHeight : 0))), this.height < m - this.lineHeight ? (q = {\n items: [],\n width: 0\n }, h.push(q)) : (q = h[z], z = (z + 1) % h.length), this.height += n.textBlock.height;\n n.textBlock.x = q.width;\n n.textBlock.y = 0;\n q.width += Math.round(n.textBlock.width + r + l + (0 === q.width ?\n 0 : this.horizontalSpacing) + (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" === n.chartType ? 2 * 0.1 * this.lineHeight : 0));\n q.items.push(n);\n this.width = Math.max(q.width, this.width);\n p = n.textBlock.width + (r + l + (\"line\" === n.chartType || \"spline\" === n.chartType || \"stepLine\" === n.chartType ? 2 * 0.1 * this.lineHeight : 0))\n }\n }\n this.itemWidth = p;\n this.height = !1 === this.itemWrap ? h.length * this.lineHeight : this.height + f;\n this.height = Math.min(m, this.height);\n this.width = Math.min(g, this.width)\n }\n \"top\" === this.verticalAlign ? (e = \"left\" === this.horizontalAlign ?\n d.x1 : \"right\" === this.horizontalAlign ? d.x2 - this.width : d.x1 + d.width / 2 - this.width / 2, c = d.y1) : \"center\" === this.verticalAlign ? (e = \"left\" === this.horizontalAlign ? d.x1 : \"right\" === this.horizontalAlign ? d.x2 - this.width : d.x1 + d.width / 2 - this.width / 2, c = d.y1 + d.height / 2 - this.height / 2) : \"bottom\" === this.verticalAlign && (e = \"left\" === this.horizontalAlign ? d.x1 : \"right\" === this.horizontalAlign ? d.x2 - this.width : d.x1 + d.width / 2 - this.width / 2, c = d.y2 - this.height);\n this.items = k;\n for (s = 0; s < this.items.length; s++) n = k[s], n.id = ++this.chart._eventManager.lastObjectId,\n this.chart._eventManager.objectMap[n.id] = {\n id: n.id,\n objectType: \"legendItem\",\n legendItemIndex: s,\n dataSeriesIndex: n.dataSeriesIndex,\n dataPointIndex: n.dataPointIndex\n };\n this.markerSize = r;\n this.rows = h;\n 0 < k.length && a.layoutManager.registerSpace(b, {\n width: this.width + 2 + 2,\n height: this.height + 5 + 5\n });\n this.bounds = {\n x1: e,\n y1: c,\n x2: e + this.width,\n y2: c + this.height\n }\n };\n H.prototype.render = function () {\n var a = this.bounds.x1,\n d = this.bounds.y1,\n b = this.markerMargin,\n c = this.maxWidth,\n e = this.maxHeight,\n g = this.markerSize,\n m = this.rows;\n (0 < this.borderThickness &&\n this.borderColor || this.backgroundColor) && this.ctx.roundRect(a, d, this.width, this.height, this.cornerRadius, this.borderThickness, this.backgroundColor, this.borderColor);\n for (var l = 0, k = 0; k < m.length; k++) {\n for (var h = m[k], s = 0, q = 0; q < h.items.length; q++) {\n var n = h.items[q],\n f = n.textBlock.x + a + (0 === q ? 0.2 * g : this.horizontalSpacing),\n p = d + l,\n u = f;\n this.chart.data[n.dataSeriesIndex].visible || (this.ctx.globalAlpha = 0.5);\n this.ctx.save();\n this.ctx.beginPath();\n this.ctx.rect(a, d, c, Math.max(e - e % this.lineHeight, 0));\n this.ctx.clip();\n if (\"line\" === n.chartType || \"stepLine\" === n.chartType || \"spline\" === n.chartType) this.ctx.strokeStyle = n.lineColor, this.ctx.lineWidth = Math.ceil(this.lineHeight / 8), this.ctx.beginPath(), this.ctx.moveTo(f - 0.1 * this.lineHeight, p + this.lineHeight / 2), this.ctx.lineTo(f + 0.85 * this.lineHeight, p + this.lineHeight / 2), this.ctx.stroke(), u -= 0.1 * this.lineHeight;\n if (\"error\" === n.chartType) {\n this.ctx.strokeStyle = this.errorMarkerColor[0];\n this.ctx.lineWidth = g / 8;\n this.ctx.beginPath();\n var r = f - 0.08 * this.lineHeight + 0.1 * this.lineHeight,\n t = p + 0.15 * this.lineHeight,\n v = 0.7 * this.lineHeight,\n x = v + 0.02 * this.lineHeight;\n this.ctx.moveTo(r, t);\n this.ctx.lineTo(r + v, t);\n this.ctx.stroke();\n this.ctx.beginPath();\n this.ctx.moveTo(r + v / 2, t);\n this.ctx.lineTo(r + v / 2, t + x);\n this.ctx.stroke();\n this.ctx.beginPath();\n this.ctx.moveTo(r, t + x);\n this.ctx.lineTo(r + v, t + x);\n this.ctx.stroke();\n this.errorMarkerColor.shift()\n }\n ia.drawMarker(f + g / 2, p + this.lineHeight / 2, this.ctx, n.markerType, \"error\" === n.chartType || \"line\" === n.chartType || \"spline\" === n.chartType ? n.markerSize / 2 : n.markerSize, n.markerColor,\n n.markerBorderColor, n.markerBorderThickness);\n n.textBlock.x = f + b + g;\n if (\"line\" === n.chartType || \"stepLine\" === n.chartType || \"spline\" === n.chartType) n.textBlock.x += 0.1 * this.lineHeight;\n n.textBlock.y = Math.round(p + this.lineHeight / 2);\n n.textBlock.render(!0);\n this.ctx.restore();\n s = 0 < q ? Math.max(s, n.textBlock.height) : n.textBlock.height;\n this.chart.data[n.dataSeriesIndex].visible || (this.ctx.globalAlpha = 1);\n f = N(n.id);\n this.ghostCtx.fillStyle = f;\n this.ghostCtx.beginPath();\n this.ghostCtx.fillRect(u, n.textBlock.y - this.lineHeight /\n 2, n.textBlock.x + n.textBlock.width - u, n.textBlock.height);\n n.x1 = this.chart._eventManager.objectMap[n.id].x1 = u;\n n.y1 = this.chart._eventManager.objectMap[n.id].y1 = n.textBlock.y - this.lineHeight / 2;\n n.x2 = this.chart._eventManager.objectMap[n.id].x2 = n.textBlock.x + n.textBlock.width;\n n.y2 = this.chart._eventManager.objectMap[n.id].y2 = n.textBlock.y + n.textBlock.height - this.lineHeight / 2\n }\n l += s\n }\n };\n qa(F, V);\n F.prototype.getDefaultAxisPlacement = function () {\n var a = this.type;\n if (\"column\" === a || \"line\" === a || \"stepLine\" === a || \"spline\" ===\n a || \"area\" === a || \"stepArea\" === a || \"splineArea\" === a || \"stackedColumn\" === a || \"stackedLine\" === a || \"bubble\" === a || \"scatter\" === a || \"stackedArea\" === a || \"stackedColumn100\" === a || \"stackedLine100\" === a || \"stackedArea100\" === a || \"candlestick\" === a || \"ohlc\" === a || \"rangeColumn\" === a || \"rangeArea\" === a || \"rangeSplineArea\" === a || \"boxAndWhisker\" === a || \"waterfall\" === a) return \"normal\";\n if (\"bar\" === a || \"stackedBar\" === a || \"stackedBar100\" === a || \"rangeBar\" === a) return \"xySwapped\";\n if (\"pie\" === a || \"doughnut\" === a || \"funnel\" === a || \"pyramid\" === a) return \"none\";\n \"error\" !== a && window.console.log(\"Unknown Chart Type: \" + a);\n return null\n };\n F.getDefaultLegendMarker = function (a) {\n if (\"column\" === a || \"stackedColumn\" === a || \"stackedLine\" === a || \"bar\" === a || \"stackedBar\" === a || \"stackedBar100\" === a || \"bubble\" === a || \"scatter\" === a || \"stackedColumn100\" === a || \"stackedLine100\" === a || \"stepArea\" === a || \"candlestick\" === a || \"ohlc\" === a || \"rangeColumn\" === a || \"rangeBar\" === a || \"rangeArea\" === a || \"rangeSplineArea\" === a || \"boxAndWhisker\" === a || \"waterfall\" === a) return \"square\";\n if (\"line\" === a || \"stepLine\" === a || \"spline\" ===\n a || \"pie\" === a || \"doughnut\" === a) return \"circle\";\n if (\"area\" === a || \"splineArea\" === a || \"stackedArea\" === a || \"stackedArea100\" === a || \"funnel\" === a || \"pyramid\" === a) return \"triangle\";\n if (\"error\" === a) return \"none\";\n window.console.log(\"Unknown Chart Type: \" + a);\n return null\n };\n F.prototype.getDataPointAtX = function (a, d) {\n if (!this.dataPoints || 0 === this.dataPoints.length) return null;\n var b = {\n dataPoint: null,\n distance: Infinity,\n index: NaN\n },\n c = null,\n e = 0,\n g = 0,\n m = 1,\n l = Infinity,\n k = 0,\n h = 0,\n s = 0;\n \"none\" !== this.chart.plotInfo.axisPlacement && (this.axisX.logarithmic ?\n (s = Math.log(this.dataPoints[this.dataPoints.length - 1].x / this.dataPoints[0].x), s = 1 < s ? Math.min(Math.max((this.dataPoints.length - 1) / s * Math.log(a / this.dataPoints[0].x) >> 0, 0), this.dataPoints.length) : 0) : (s = this.dataPoints[this.dataPoints.length - 1].x - this.dataPoints[0].x, s = 0 < s ? Math.min(Math.max((this.dataPoints.length - 1) / s * (a - this.dataPoints[0].x) >> 0, 0), this.dataPoints.length) : 0));\n for (; ;) {\n g = 0 < m ? s + e : s - e;\n if (0 <= g && g < this.dataPoints.length) {\n var c = this.dataPoints[g],\n q = this.axisX.logarithmic ? c.x > a ? c.x / a : a / c.x :\n Math.abs(c.x - a);\n q < b.distance && (b.dataPoint = c, b.distance = q, b.index = g);\n c = q;\n c <= l ? l = c : 0 < m ? k++ : h++;\n if (1E3 < k && 1E3 < h) break\n } else if (0 > s - e && s + e >= this.dataPoints.length) break; - 1 === m ? (e++, m = 1) : m = -1\n }\n return d || b.dataPoint.x !== a ? d && null !== b.dataPoint ? b : null : b\n };\n F.prototype.getDataPointAtXY = function (a, d, b) {\n if (!this.dataPoints || 0 === this.dataPoints.length || a < this.chart.plotArea.x1 || a > this.chart.plotArea.x2 || d < this.chart.plotArea.y1 || d > this.chart.plotArea.y2) return null;\n b = b || !1;\n var c = [],\n e = 0,\n g = 0,\n m = 1,\n l = !1,\n k = Infinity,\n h = 0,\n s = 0,\n q = 0;\n if (\"none\" !== this.chart.plotInfo.axisPlacement)\n if (q = (this.chart.axisX[0] ? this.chart.axisX[0] : this.chart.axisX2[0]).getXValueAt({\n x: a,\n y: d\n }), this.axisX.logarithmic) var n = Math.log(this.dataPoints[this.dataPoints.length - 1].x / this.dataPoints[0].x),\n q = 1 < n ? Math.min(Math.max((this.dataPoints.length - 1) / n * Math.log(q / this.dataPoints[0].x) >> 0, 0), this.dataPoints.length) : 0;\n else n = this.dataPoints[this.dataPoints.length - 1].x - this.dataPoints[0].x, q = 0 < n ? Math.min(Math.max((this.dataPoints.length - 1) / n * (q - this.dataPoints[0].x) >>\n 0, 0), this.dataPoints.length) : 0;\n for (; ;) {\n g = 0 < m ? q + e : q - e;\n if (0 <= g && g < this.dataPoints.length) {\n var n = this.chart._eventManager.objectMap[this.dataPointIds[g]],\n f = this.dataPoints[g],\n p = null;\n if (n) {\n switch (this.type) {\n case \"column\":\n case \"stackedColumn\":\n case \"stackedColumn100\":\n case \"bar\":\n case \"stackedBar\":\n case \"stackedBar100\":\n case \"rangeColumn\":\n case \"rangeBar\":\n case \"waterfall\":\n case \"error\":\n a >= n.x1 && (a <= n.x2 && d >= n.y1 && d <= n.y2) && (c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: Math.min(Math.abs(n.x1 -\n a), Math.abs(n.x2 - a), Math.abs(n.y1 - d), Math.abs(n.y2 - d))\n }), l = !0);\n break;\n case \"line\":\n case \"stepLine\":\n case \"spline\":\n case \"area\":\n case \"stepArea\":\n case \"stackedArea\":\n case \"stackedArea100\":\n case \"splineArea\":\n case \"scatter\":\n var u = na(\"markerSize\", f, this) || 4,\n r = b ? 20 : u,\n p = Math.sqrt(Math.pow(n.x1 - a, 2) + Math.pow(n.y1 - d, 2));\n p <= r && c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: p\n });\n n = Math.abs(n.x1 - a);\n n <= k ? k = n : 0 < m ? h++ : s++;\n p <= u / 2 && (l = !0);\n break;\n case \"rangeArea\":\n case \"rangeSplineArea\":\n u = na(\"markerSize\", f, this) ||\n 4;\n r = b ? 20 : u;\n p = Math.min(Math.sqrt(Math.pow(n.x1 - a, 2) + Math.pow(n.y1 - d, 2)), Math.sqrt(Math.pow(n.x1 - a, 2) + Math.pow(n.y2 - d, 2)));\n p <= r && c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: p\n });\n n = Math.abs(n.x1 - a);\n n <= k ? k = n : 0 < m ? h++ : s++;\n p <= u / 2 && (l = !0);\n break;\n case \"bubble\":\n u = n.size;\n p = Math.sqrt(Math.pow(n.x1 - a, 2) + Math.pow(n.y1 - d, 2));\n p <= u / 2 && (c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: p\n }), l = !0);\n break;\n case \"pie\":\n case \"doughnut\":\n u = n.center;\n r = \"doughnut\" === this.type ? n.percentInnerRadius * n.radius :\n 0;\n p = Math.sqrt(Math.pow(u.x - a, 2) + Math.pow(u.y - d, 2));\n p < n.radius && p > r && (p = Math.atan2(d - u.y, a - u.x), 0 > p && (p += 2 * Math.PI), p = Number(((180 * (p / Math.PI) % 360 + 360) % 360).toFixed(12)), u = Number(((180 * (n.startAngle / Math.PI) % 360 + 360) % 360).toFixed(12)), r = Number(((180 * (n.endAngle / Math.PI) % 360 + 360) % 360).toFixed(12)), 0 === r && 1 < n.endAngle && (r = 360), u >= r && 0 !== f.y && (r += 360, p < u && (p += 360)), p > u && p < r && (c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: 0\n }), l = !0));\n break;\n case \"funnel\":\n case \"pyramid\":\n p = n.funnelSection;\n d > p.y1 && d < p.y4 && (p.y6 ? d > p.y6 ? (g = p.x6 + (p.x5 - p.x6) / (p.y5 - p.y6) * (d - p.y6), p = p.x3 + (p.x4 - p.x3) / (p.y4 - p.y3) * (d - p.y3)) : (g = p.x1 + (p.x6 - p.x1) / (p.y6 - p.y1) * (d - p.y1), p = p.x2 + (p.x3 - p.x2) / (p.y3 - p.y2) * (d - p.y2)) : (g = p.x1 + (p.x4 - p.x1) / (p.y4 - p.y1) * (d - p.y1), p = p.x2 + (p.x3 - p.x2) / (p.y3 - p.y2) * (d - p.y2)), a > g && a < p && (c.push({\n dataPoint: f,\n dataPointIndex: n.dataPointIndex,\n dataSeries: this,\n distance: 0\n }), l = !0));\n break;\n case \"boxAndWhisker\":\n if (a >= n.x1 - n.borderThickness / 2 && a <= n.x2 + n.borderThickness / 2 && d >= n.y4 - n.borderThickness / 2 && d <= n.y1 + n.borderThickness /\n 2 || Math.abs(n.x2 - a + n.x1 - a) < n.borderThickness && d >= n.y1 && d <= n.y4) c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: Math.min(Math.abs(n.x1 - a), Math.abs(n.x2 - a), Math.abs(n.y2 - d), Math.abs(n.y3 - d))\n }), l = !0;\n break;\n case \"candlestick\":\n if (a >= n.x1 - n.borderThickness / 2 && a <= n.x2 + n.borderThickness / 2 && d >= n.y2 - n.borderThickness / 2 && d <= n.y3 + n.borderThickness / 2 || Math.abs(n.x2 - a + n.x1 - a) < n.borderThickness && d >= n.y1 && d <= n.y4) c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: Math.min(Math.abs(n.x1 - a),\n Math.abs(n.x2 - a), Math.abs(n.y2 - d), Math.abs(n.y3 - d))\n }), l = !0;\n break;\n case \"ohlc\":\n if (Math.abs(n.x2 - a + n.x1 - a) < n.borderThickness && d >= n.y2 && d <= n.y3 || a >= n.x1 && a <= (n.x2 + n.x1) / 2 && d >= n.y1 - n.borderThickness / 2 && d <= n.y1 + n.borderThickness / 2 || a >= (n.x1 + n.x2) / 2 && a <= n.x2 && d >= n.y4 - n.borderThickness / 2 && d <= n.y4 + n.borderThickness / 2) c.push({\n dataPoint: f,\n dataPointIndex: g,\n dataSeries: this,\n distance: Math.min(Math.abs(n.x1 - a), Math.abs(n.x2 - a), Math.abs(n.y2 - d), Math.abs(n.y3 - d))\n }), l = !0\n }\n if (l || 1E3 < h && 1E3 < s) break\n }\n } else if (0 > q - e && q + e >=\n this.dataPoints.length) break; - 1 === m ? (e++, m = 1) : m = -1\n }\n a = null;\n for (d = 0; d < c.length; d++) a ? c[d].distance <= a.distance && (a = c[d]) : a = c[d];\n return a\n };\n F.prototype.getMarkerProperties = function (a, d, b, c) {\n var e = this.dataPoints;\n return {\n x: d,\n y: b,\n ctx: c,\n type: e[a].markerType ? e[a].markerType : this.markerType,\n size: e[a].markerSize ? e[a].markerSize : this.markerSize,\n color: e[a].markerColor ? e[a].markerColor : this.markerColor ? this.markerColor : e[a].color ? e[a].color : this.color ? this.color : this._colorSet[a % this._colorSet.length],\n borderColor: e[a].markerBorderColor ?\n e[a].markerBorderColor : this.markerBorderColor ? this.markerBorderColor : null,\n borderThickness: e[a].markerBorderThickness ? e[a].markerBorderThickness : this.markerBorderThickness ? this.markerBorderThickness : null\n }\n };\n qa(z, V);\n z.prototype.createExtraLabelsForLog = function (a) {\n a = (a || 0) + 1;\n if (!(5 < a)) {\n var d = this.logLabelValues[0] || this.intervalStartPosition;\n if (Math.log(this.range) / Math.log(d / this.viewportMinimum) < this.noTicks - 1) {\n for (var b = z.getNiceNumber((d - this.viewportMinimum) / Math.min(Math.max(2, this.noTicks - this.logLabelValues.length),\n 3), !0), c = Math.ceil(this.viewportMinimum / b) * b; c < d; c += b) c < this.viewportMinimum || this.logLabelValues.push(c);\n this.logLabelValues.sort(Sa);\n this.createExtraLabelsForLog(a)\n }\n }\n };\n z.prototype.createLabels = function () {\n var a, d, b = 0,\n c = 0,\n e, g = 0,\n m = 0,\n c = 0,\n c = this.interval,\n l = 0,\n k, h = 0.6 * this.chart.height,\n p;\n a = !1;\n var q = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [],\n n = q.length ? u(this.scaleBreaks.firstBreakIndex) ? 0 : this.scaleBreaks.firstBreakIndex : 0;\n if (\"axisX\" !== this.type || \"dateTime\" !== this.valueType || this.logarithmic) {\n e =\n this.viewportMaximum;\n if (this.labels) {\n a = Math.ceil(c);\n for (var c = Math.ceil(this.intervalStartPosition), f = !1, b = c; b < this.viewportMaximum; b += a)\n if (this.labels[b]) f = !0;\n else {\n f = !1;\n break\n } f && (this.interval = a, this.intervalStartPosition = c)\n }\n if (this.logarithmic && !this.equidistantInterval)\n for (this.logLabelValues || (this.logLabelValues = [], this.createExtraLabelsForLog()), c = 0, f = n; c < this.logLabelValues.length; c++)\n if (b = this.logLabelValues[c], b < this.viewportMinimum) c++;\n else {\n for (; f < q.length && b > q[f].endValue; f++);\n a = f < q.length &&\n b >= q[f].startValue && b <= q[f].endValue;\n p = b;\n a || (a = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.options,\n value: p,\n label: this.labels[p] ? this.labels[p] : null\n }) : \"axisX\" === this.type && this.labels[p] ? this.labels[p] : ba(p, this.valueFormatString, this.chart._cultureInfo), a = new ka(this.ctx, {\n x: 0,\n y: 0,\n maxWidth: g,\n maxHeight: m,\n angle: this.labelAngle,\n text: this.prefix + a + this.suffix,\n backgroundColor: this.labelBackgroundColor,\n borderColor: this.labelBorderColor,\n borderThickness: this.labelBorderThickness,\n cornerRadius: this.labelCornerRadius,\n horizontalAlign: \"left\",\n fontSize: this.labelFontSize,\n fontFamily: this.labelFontFamily,\n fontWeight: this.labelFontWeight,\n fontColor: this.labelFontColor,\n fontStyle: this.labelFontStyle,\n textBaseline: \"middle\",\n borderThickness: 0\n }), this._labels.push({\n position: p,\n textBlock: a,\n effectiveHeight: null\n }))\n } f = n;\n for (b = this.intervalStartPosition; b <= e; b = parseFloat(1E-12 > this.interval ? this.logarithmic && this.equidistantInterval ? b * Math.pow(this.logarithmBase, this.interval) : b + this.interval : (this.logarithmic && this.equidistantInterval ?\n b * Math.pow(this.logarithmBase, this.interval) : b + this.interval).toFixed(12))) {\n for (; f < q.length && b > q[f].endValue; f++);\n a = f < q.length && b >= q[f].startValue && b <= q[f].endValue;\n p = b;\n a || (a = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.options,\n value: p,\n label: this.labels[p] ? this.labels[p] : null\n }) : \"axisX\" === this.type && this.labels[p] ? this.labels[p] : ba(p, this.valueFormatString, this.chart._cultureInfo), a = new ka(this.ctx, {\n x: 0,\n y: 0,\n maxWidth: g,\n maxHeight: m,\n angle: this.labelAngle,\n text: this.prefix + a + this.suffix,\n horizontalAlign: \"left\",\n backgroundColor: this.labelBackgroundColor,\n borderColor: this.labelBorderColor,\n borderThickness: this.labelBorderThickness,\n cornerRadius: this.labelCornerRadius,\n fontSize: this.labelFontSize,\n fontFamily: this.labelFontFamily,\n fontWeight: this.labelFontWeight,\n fontColor: this.labelFontColor,\n fontStyle: this.labelFontStyle,\n textBaseline: \"middle\"\n }), this._labels.push({\n position: p,\n textBlock: a,\n effectiveHeight: null\n }))\n }\n } else\n for (this.intervalStartPosition = this.getLabelStartPoint(new Date(this.viewportMinimum),\n this.intervalType, this.interval), e = Ya(new Date(this.viewportMaximum), this.interval, this.intervalType), f = n, b = this.intervalStartPosition; b < e; Ya(b, c, this.intervalType)) {\n for (a = b.getTime(); f < q.length && a > q[f].endValue; f++);\n p = a;\n a = f < q.length && a >= q[f].startValue && a <= q[f].endValue;\n a || (a = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.options,\n value: new Date(p),\n label: this.labels[p] ? this.labels[p] : null\n }) : \"axisX\" === this.type && this.labels[p] ? this.labels[p] : Ca(p, this.valueFormatString, this.chart._cultureInfo),\n a = new ka(this.ctx, {\n x: 0,\n y: 0,\n maxWidth: g,\n backgroundColor: this.labelBackgroundColor,\n borderColor: this.labelBorderColor,\n borderThickness: this.labelBorderThickness,\n cornerRadius: this.labelCornerRadius,\n maxHeight: m,\n angle: this.labelAngle,\n text: this.prefix + a + this.suffix,\n horizontalAlign: \"left\",\n fontSize: this.labelFontSize,\n fontFamily: this.labelFontFamily,\n fontWeight: this.labelFontWeight,\n fontColor: this.labelFontColor,\n fontStyle: this.labelFontStyle,\n textBaseline: \"middle\"\n }), this._labels.push({\n position: p,\n textBlock: a,\n effectiveHeight: null,\n breaksLabelType: void 0\n }))\n }\n if (\"bottom\" === this._position || \"top\" === this._position) l = this.logarithmic && !this.equidistantInterval && 2 <= this._labels.length ? this.lineCoordinates.width * Math.log(Math.min(this._labels[this._labels.length - 1].position / this._labels[this._labels.length - 2].position, this._labels[1].position / this._labels[0].position)) / Math.log(this.range) : this.lineCoordinates.width / (this.logarithmic && this.equidistantInterval ? Math.log(this.range) / Math.log(this.logarithmBase) : Math.abs(this.range)) * S[this.intervalType +\n \"Duration\"] * this.interval, g = \"undefined\" === typeof this.options.labelMaxWidth ? 0.5 * this.chart.width >> 0 : this.options.labelMaxWidth, this.chart.panEnabled || (m = \"undefined\" === typeof this.options.labelWrap || this.labelWrap ? 0.8 * this.chart.height >> 0 : 1.5 * this.labelFontSize);\n else if (\"left\" === this._position || \"right\" === this._position) l = this.logarithmic && !this.equidistantInterval && 2 <= this._labels.length ? this.lineCoordinates.height * Math.log(Math.min(this._labels[this._labels.length - 1].position / this._labels[this._labels.length -\n 2].position, this._labels[1].position / this._labels[0].position)) / Math.log(this.range) : this.lineCoordinates.height / (this.logarithmic && this.equidistantInterval ? Math.log(this.range) / Math.log(this.logarithmBase) : Math.abs(this.range)) * S[this.intervalType + \"Duration\"] * this.interval, this.chart.panEnabled || (g = \"undefined\" === typeof this.options.labelMaxWidth ? 0.3 * this.chart.width >> 0 : this.options.labelMaxWidth), m = \"undefined\" === typeof this.options.labelWrap || this.labelWrap ? 0.3 * this.chart.height >> 0 : 1.5 * this.labelFontSize;\n for (c = 0; c < this._labels.length; c++) {\n a = this._labels[c].textBlock;\n a.maxWidth = g;\n a.maxHeight = m;\n var B = a.measureText();\n k = B.height\n }\n e = [];\n n = q = 0;\n if (this.labelAutoFit || this.options.labelAutoFit)\n if (u(this.labelAngle) || (this.labelAngle = (this.labelAngle % 360 + 360) % 360, 90 < this.labelAngle && 270 > this.labelAngle ? this.labelAngle -= 180 : 270 <= this.labelAngle && 360 >= this.labelAngle && (this.labelAngle -= 360)), \"bottom\" === this._position || \"top\" === this._position)\n if (g = 0.9 * l >> 0, n = 0, !this.chart.panEnabled && 1 <= this._labels.length) {\n this.sessionVariables.labelFontSize =\n this.labelFontSize;\n this.sessionVariables.labelMaxWidth = g;\n this.sessionVariables.labelMaxHeight = m;\n this.sessionVariables.labelAngle = this.labelAngle;\n this.sessionVariables.labelWrap = this.labelWrap;\n for (b = 0; b < this._labels.length; b++)\n if (!this._labels[b].breaksLabelType) {\n a = this._labels[b].textBlock;\n for (var v, f = a.text.split(\" \"), c = 0; c < f.length; c++) p = f[c], this.ctx.font = a.fontStyle + \" \" + a.fontWeight + \" \" + a.fontSize + \"px \" + a.fontFamily, p = this.ctx.measureText(p), p.width > n && (v = b, n = p.width)\n } b = 0;\n for (b = this.intervalStartPosition <\n this.viewportMinimum ? 1 : 0; b < this._labels.length; b++)\n if (!this._labels[b].breaksLabelType) {\n a = this._labels[b].textBlock;\n B = a.measureText();\n for (f = b + 1; f < this._labels.length; f++)\n if (!this._labels[f].breaksLabelType) {\n d = this._labels[f].textBlock;\n d = d.measureText();\n break\n } e.push(a.height);\n this.sessionVariables.labelMaxHeight = Math.max.apply(Math, e);\n Math.cos(Math.PI / 180 * Math.abs(this.labelAngle));\n Math.sin(Math.PI / 180 * Math.abs(this.labelAngle));\n c = g * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (m - a.fontSize / 2) *\n Math.cos(Math.PI / 180 * Math.abs(this.labelAngle));\n if (u(this.options.labelAngle) && isNaN(this.options.labelAngle) && 0 !== this.options.labelAngle)\n if (this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? m : Math.min((c - g * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), c), p = (h - (k + a.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(-25))) / Math.sin(Math.PI / 180 * Math.abs(-25)), !u(this.options.labelWrap)) this.labelWrap ? u(this.options.labelMaxWidth) ? (this.sessionVariables.labelMaxWidth =\n Math.min(Math.max(g, n), p), this.sessionVariables.labelWrap = this.labelWrap, B.width + d.width >> 0 > 2 * g && (this.sessionVariables.labelAngle = -25)) : (this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth, this.sessionVariables.labelAngle = this.sessionVariables.labelMaxWidth > g ? -25 : this.sessionVariables.labelAngle) : u(this.options.labelMaxWidth) ? (this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelMaxWidth =\n g, B.width + d.width >> 0 > 2 * g && (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = p)) : (this.sessionVariables.labelAngle = this.sessionVariables.labelMaxWidth > g ? -25 : this.sessionVariables.labelAngle, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth, this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelWrap = this.labelWrap);\n else {\n if (u(this.options.labelWrap))\n if (!u(this.options.labelMaxWidth)) this.options.labelMaxWidth < g ? (this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth,\n this.sessionVariables.labelMaxHeight = c) : (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth, this.sessionVariables.labelMaxHeight = m);\n else if (!u(d))\n if (c = B.width + d.width >> 0, f = this.labelFontSize, n < g) c - 2 * g > q && (q = c - 2 * g, c >= 2 * g && c < 2.2 * g ? (this.sessionVariables.labelMaxWidth = g, u(this.options.labelFontSize) && 12 < f && (f = Math.floor(12 / 13 * f), a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? f : this.options.labelFontSize, this.sessionVariables.labelAngle =\n this.labelAngle) : c >= 2.2 * g && c < 2.8 * g ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = p, this.sessionVariables.labelFontSize = f) : c >= 2.8 * g && c < 3.2 * g ? (this.sessionVariables.labelMaxWidth = Math.max(g, n), this.sessionVariables.labelWrap = !0, u(this.options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? f : this.options.labelFontSize, this.sessionVariables.labelAngle =\n this.labelAngle) : c >= 3.2 * g && c < 3.6 * g ? (this.sessionVariables.labelAngle = -25, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelMaxWidth = p, this.sessionVariables.labelFontSize = this.labelFontSize) : c > 3.6 * g && c < 5 * g ? (u(this.options.labelFontSize) && 12 < f && (f = Math.floor(12 / 13 * f), a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? f : this.options.labelFontSize, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = p) :\n c > 5 * g && (this.sessionVariables.labelWrap = !0, this.sessionVariables.labelMaxWidth = g, this.sessionVariables.labelFontSize = f, this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelAngle = this.labelAngle));\n else if (v === b && (0 === v && n + this._labels[v + 1].textBlock.measureText().width - 2 * g > q || v === this._labels.length - 1 && n + this._labels[v - 1].textBlock.measureText().width - 2 * g > q || 0 < v && v < this._labels.length - 1 && n + this._labels[v + 1].textBlock.measureText().width - 2 * g > q && n + this._labels[v - 1].textBlock.measureText().width -\n 2 * g > q)) q = 0 === v ? n + this._labels[v + 1].textBlock.measureText().width - 2 * g : n + this._labels[v - 1].textBlock.measureText().width - 2 * g, this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? f : this.options.labelFontSize, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelAngle = -25, this.sessionVariables.labelMaxWidth = p;\n else if (0 === q)\n for (this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? f : this.options.labelFontSize, this.sessionVariables.labelWrap = !0, c = 0; c < this._labels.length; c++) a =\n this._labels[c].textBlock, a.maxWidth = this.sessionVariables.labelMaxWidth = Math.min(Math.max(g, n), p), B = a.measureText(), c < this._labels.length - 1 && (f = c + 1, d = this._labels[f].textBlock, d.maxWidth = this.sessionVariables.labelMaxWidth = Math.min(Math.max(g, n), p), d = d.measureText(), B.width + d.width >> 0 > 2 * g && (this.sessionVariables.labelAngle = -25))\n }\n else (this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? m : Math.min((c - g * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle))) /\n Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), c), p = 0 != this.labelAngle ? (h - (k + a.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) : g, this.sessionVariables.labelMaxHeight = m = this.labelWrap ? (h - p * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)) : 1.5 * this.labelFontSize, u(this.options.labelWrap)) ? u(this.options.labelWrap) && (this.labelWrap && !u(this.options.labelMaxWidth) ? (this.sessionVariables.labelWrap =\n this.labelWrap, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : p, this.sessionVariables.labelMaxHeight = m) : (this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelMaxWidth = p, this.sessionVariables.labelMaxHeight = c < 0.9 * l ? 0.9 * l : c, this.sessionVariables.labelWrap = this.labelWrap)) : (this.options.labelWrap ? (this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : p) :\n (u(this.options.labelMaxWidth), this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : p, this.sessionVariables.labelWrap = this.labelWrap), this.sessionVariables.labelMaxHeight = m)\n } for (c = 0; c < this._labels.length; c++) a = this._labels[c].textBlock, a.maxWidth = this.labelMaxWidth = this.sessionVariables.labelMaxWidth, a.fontSize = this.sessionVariables.labelFontSize, a.angle = this.labelAngle = this.sessionVariables.labelAngle, a.wrap = this.labelWrap = this.sessionVariables.labelWrap, a.maxHeight =\n this.sessionVariables.labelMaxHeight, a.measureText()\n } else\n for (b = 0; b < this._labels.length; b++) a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = u(this.options.labelMaxWidth) ? this.sessionVariables.labelMaxWidth : this.options.labelMaxWidth, a.fontSize = this.labelFontSize = u(this.options.labelFontSize) ? this.sessionVariables.labelFontSize : this.options.labelFontSize, a.angle = this.labelAngle = u(this.options.labelAngle) ? this.sessionVariables.labelAngle : this.labelAngle, a.wrap = this.labelWrap = u(this.options.labelWrap) ?\n this.sessionVariables.labelWrap : this.options.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText();\n else if (\"left\" === this._position || \"right\" === this._position)\n if (g = u(this.options.labelMaxWidth) ? 0.3 * this.chart.width >> 0 : this.options.labelMaxWidth, m = \"undefined\" === typeof this.options.labelWrap || this.labelWrap ? 0.3 * this.chart.height >> 0 : 1.5 * this.labelFontSize, !this.chart.panEnabled && 1 <= this._labels.length) {\n this.sessionVariables.labelFontSize = this.labelFontSize;\n this.sessionVariables.labelMaxWidth =\n g;\n this.sessionVariables.labelMaxHeight = m;\n this.sessionVariables.labelAngle = u(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle;\n this.sessionVariables.labelWrap = this.labelWrap;\n for (b = 0; b < this._labels.length; b++)\n if (!this._labels[b].breaksLabelType) {\n a = this._labels[b].textBlock;\n B = a.measureText();\n for (f = b + 1; f < this._labels.length; f++)\n if (!this._labels[f].breaksLabelType) {\n d = this._labels[f].textBlock;\n d = d.measureText();\n break\n } e.push(a.height);\n this.sessionVariables.labelMaxHeight = Math.max.apply(Math,\n e);\n c = g * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (m - a.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle));\n Math.cos(Math.PI / 180 * Math.abs(this.labelAngle));\n Math.sin(Math.PI / 180 * Math.abs(this.labelAngle));\n u(this.options.labelAngle) && isNaN(this.options.labelAngle) && 0 !== this.options.labelAngle ? u(this.options.labelWrap) ? u(this.options.labelWrap) && (u(this.options.labelMaxWidth) ? u(d) || (l = B.height + d.height >> 0, l - 2 * m > n && (n = l - 2 * m, l >= 2 * m && l < 2.4 * m ? (u(this.options.labelFontSize) && 12 < this.labelFontSize &&\n (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? this.labelFontSize : this.options.labelFontSize) : l >= 2.4 * m && l < 2.8 * m ? (this.sessionVariables.labelMaxHeight = c, this.sessionVariables.labelFontSize = this.labelFontSize, this.sessionVariables.labelWrap = !0) : l >= 2.8 * m && l < 3.2 * m ? (this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelWrap = !0, u(this.options.labelFontSize) && 12 <\n this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? this.labelFontSize : this.options.labelFontSize, this.sessionVariables.labelAngle = u(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle) : l >= 3.2 * m && l < 3.6 * m ? (this.sessionVariables.labelMaxHeight = c, this.sessionVariables.labelWrap = !0, this.sessionVariables.labelFontSize = this.labelFontSize) : l > 3.6 * m && l < 10 * m ? (u(this.options.labelFontSize) &&\n 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize), a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? this.labelFontSize : this.options.labelFontSize, this.sessionVariables.labelMaxWidth = g, this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelAngle = u(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle) : l > 10 * m && l < 50 * m && (u(this.options.labelFontSize) && 12 < this.labelFontSize && (this.labelFontSize = Math.floor(12 / 13 * this.labelFontSize),\n a.measureText()), this.sessionVariables.labelFontSize = u(this.options.labelFontSize) ? this.labelFontSize : this.options.labelFontSize, this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelMaxWidth = g, this.sessionVariables.labelAngle = u(this.sessionVariables.labelAngle) ? 0 : this.sessionVariables.labelAngle))) : (this.sessionVariables.labelMaxHeight = m, this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : this.sessionVariables.labelMaxWidth)) : (this.sessionVariables.labelMaxWidth =\n this.labelWrap ? this.options.labelMaxWidth ? this.options.labelMaxWidth : this.sessionVariables.labelMaxWidth : this.labelMaxWidth ? this.options.labelMaxWidth ? this.options.labelMaxWidth : this.sessionVariables.labelMaxWidth : g, this.sessionVariables.labelMaxHeight = m) : (this.sessionVariables.labelAngle = this.labelAngle, this.sessionVariables.labelMaxWidth = 0 === this.labelAngle ? g : Math.min((c - m * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle))) / Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), m), u(this.options.labelWrap)) ?\n u(this.options.labelWrap) && (this.labelWrap && !u(this.options.labelMaxWidth) ? (this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth > this.options.labelMaxWidth : this.sessionVariables.labelMaxWidth, this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxHeight = c) : (this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : g, this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? m : c, u(this.options.labelMaxWidth) &&\n (this.sessionVariables.labelAngle = this.labelAngle))) : this.options.labelWrap ? (this.sessionVariables.labelMaxHeight = 0 === this.labelAngle ? m : c, this.sessionVariables.labelWrap = this.labelWrap, this.sessionVariables.labelMaxWidth = g) : (this.sessionVariables.labelMaxHeight = m, u(this.options.labelMaxWidth), this.sessionVariables.labelMaxWidth = this.options.labelMaxWidth ? this.options.labelMaxWidth : this.sessionVariables.labelMaxWidth, this.sessionVariables.labelWrap = this.labelWrap)\n } for (c = 0; c < this._labels.length; c++) a =\n this._labels[c].textBlock, a.maxWidth = this.labelMaxWidth = this.sessionVariables.labelMaxWidth, a.fontSize = this.labelFontSize = this.sessionVariables.labelFontSize, a.angle = this.labelAngle = this.sessionVariables.labelAngle, a.wrap = this.labelWrap = this.sessionVariables.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText()\n } else\n for (b = 0; b < this._labels.length; b++) a = this._labels[b].textBlock, a.maxWidth = this.labelMaxWidth = u(this.options.labelMaxWidth) ? this.sessionVariables.labelMaxWidth : this.options.labelMaxWidth,\n a.fontSize = this.labelFontSize = u(this.options.labelFontSize) ? this.sessionVariables.labelFontSize : this.options.labelFontSize, a.angle = this.labelAngle = u(this.options.labelAngle) ? this.sessionVariables.labelAngle : this.labelAngle, a.wrap = this.labelWrap = u(this.options.labelWrap) ? this.sessionVariables.labelWrap : this.options.labelWrap, a.maxHeight = this.sessionVariables.labelMaxHeight, a.measureText();\n for (b = 0; b < this.stripLines.length; b++) {\n var g = this.stripLines[b],\n z;\n if (\"outside\" === g.labelPlacement) {\n m = this.sessionVariables.labelMaxWidth;\n if (\"bottom\" === this._position || \"top\" === this._position) z = u(g.options.labelWrap) ? this.sessionVariables.labelMaxHeight : g.labelWrap ? 0.8 * this.chart.height >> 0 : 1.5 * this.labelFontSize;\n if (\"left\" === this._position || \"right\" === this._position) z = u(g.options.labelWrap) ? this.sessionVariables.labelMaxHeight : g.labelWrap ? 0.8 * this.chart.width >> 0 : 1.5 * this.labelFontSize;\n u(g.labelBackgroundColor) && (g.labelBackgroundColor = \"#EEEEEE\")\n } else m = \"bottom\" === this._position || \"top\" === this._position ? 0.9 * this.chart.width >> 0 : 0.9 * this.chart.height >>\n 0, z = u(g.options.labelWrap) || g.labelWrap ? \"bottom\" === this._position || \"top\" === this._position ? 0.8 * this.chart.width >> 0 : 0.8 * this.chart.height >> 0 : 1.5 * this.labelFontSize, u(g.labelBackgroundColor) && (u(g.startValue) && 0 !== g.startValue ? g.labelBackgroundColor = r ? \"transparent\" : null : g.labelBackgroundColor = \"#EEEEEE\");\n a = new ka(this.ctx, {\n x: 0,\n y: 0,\n backgroundColor: g.labelBackgroundColor,\n borderColor: g.labelBorderColor,\n borderThickness: g.labelBorderThickness,\n cornerRadius: g.labelCornerRadius,\n maxWidth: g.options.labelMaxWidth ?\n g.options.labelMaxWidth : m,\n maxHeight: z,\n angle: this.labelAngle,\n text: g.labelFormatter ? g.labelFormatter({\n chart: this.chart,\n axis: this,\n stripLine: g\n }) : g.label,\n horizontalAlign: \"left\",\n fontSize: \"outside\" === g.labelPlacement ? g.options.labelFontSize ? g.labelFontSize : this.labelFontSize : g.labelFontSize,\n fontFamily: \"outside\" === g.labelPlacement ? g.options.labelFontFamily ? g.labelFontFamily : this.labelFontFamily : g.labelFontFamily,\n fontWeight: \"outside\" === g.labelPlacement ? g.options.labelFontWeight ? g.labelFontWeight : this.labelFontWeight : g.labelFontWeight,\n fontColor: g.labelFontColor || g.color,\n fontStyle: \"outside\" === g.labelPlacement ? g.options.labelFontStyle ? g.labelFontStyle : this.fontWeight : g.labelFontStyle,\n textBaseline: \"middle\"\n });\n this._stripLineLabels.push({\n position: g.value,\n textBlock: a,\n effectiveHeight: null,\n stripLine: g\n })\n }\n };\n z.prototype.createLabelsAndCalculateWidth = function () {\n var a = 0,\n d = 0;\n this._labels = [];\n this._stripLineLabels = [];\n var b = this.chart.isNavigator ? 0 : 5;\n if (\"left\" === this._position || \"right\" === this._position) {\n this.createLabels();\n for (d =\n 0; d < this._labels.length; d++) {\n var c = this._labels[d].textBlock,\n e = c.measureText(),\n g = 0,\n g = 0 === this.labelAngle ? e.width : e.width * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)) + (e.height - c.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle));\n a < g && (a = g);\n this._labels[d].effectiveWidth = g\n }\n for (d = 0; d < this._stripLineLabels.length; d++) \"outside\" === this._stripLineLabels[d].stripLine.labelPlacement && (this._stripLineLabels[d].stripLine.value >= this.viewportMinimum && this._stripLineLabels[d].stripLine.value <= this.viewportMaximum) &&\n (c = this._stripLineLabels[d].textBlock, e = c.measureText(), g = 0 === this.labelAngle ? e.width : e.width * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)) + (e.height - c.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)), a < g && (a = g), this._stripLineLabels[d].effectiveWidth = g)\n }\n d = this.title ? this._titleTextBlock.measureText().height + 2 : 0;\n return c = \"inside\" === this.labelPlacement ? c = d + b : d + a + this.tickLength + b\n };\n z.prototype.createLabelsAndCalculateHeight = function () {\n var a = 0;\n this._labels = [];\n this._stripLineLabels = [];\n var d,\n b = 0,\n c = this.chart.isNavigator ? 0 : 5;\n this.createLabels();\n if (\"bottom\" === this._position || \"top\" === this._position) {\n for (b = 0; b < this._labels.length; b++) {\n d = this._labels[b].textBlock;\n var e = d.measureText(),\n g = 0,\n g = 0 === this.labelAngle ? e.height : e.width * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (e.height - d.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle));\n a < g && (a = g);\n this._labels[b].effectiveHeight = g\n }\n for (b = 0; b < this._stripLineLabels.length; b++) \"outside\" === this._stripLineLabels[b].stripLine.labelPlacement &&\n (this._stripLineLabels[b].stripLine.value >= this.viewportMinimum && this._stripLineLabels[b].stripLine.value <= this.viewportMaximum) && (d = this._stripLineLabels[b].textBlock, e = d.measureText(), g = 0 === this.labelAngle ? e.height : e.width * Math.sin(Math.PI / 180 * Math.abs(this.labelAngle)) + (e.height - d.fontSize / 2) * Math.cos(Math.PI / 180 * Math.abs(this.labelAngle)), a < g && (a = g), this._stripLineLabels[b].effectiveHeight = g)\n }\n d = this.title ? this._titleTextBlock.measureText().height + 2 : 0;\n return b = \"inside\" === this.labelPlacement ? b =\n d + c : d + a + this.tickLength + c\n };\n z.setLayout = function (a, d, b, c, e, g) {\n var m, l, k, h, p = a[0] ? a[0].chart : d[0].chart,\n q = p.isNavigator ? 0 : 10,\n n = p._axes;\n if (a && 0 < a.length)\n for (var f = 0; f < a.length; f++) a[f] && a[f].calculateAxisParameters();\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) d[f].calculateAxisParameters();\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) b[f].calculateAxisParameters();\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f].calculateAxisParameters();\n for (f = 0; f < n.length; f++)\n if (n[f] && n[f].scaleBreaks && n[f].scaleBreaks._appliedBreaks.length)\n for (var r =\n n[f].scaleBreaks._appliedBreaks, v = 0; v < r.length && !(r[v].startValue > n[f].viewportMaximum); v++) r[v].endValue < n[f].viewportMinimum || (u(n[f].scaleBreaks.firstBreakIndex) && (n[f].scaleBreaks.firstBreakIndex = v), r[v].startValue >= n[f].viewPortMinimum && (n[f].scaleBreaks.lastBreakIndex = v));\n for (var z = v = 0, t = 0, C = 0, x = 0, D = 0, y = 0, A, E, F = l = 0, H, I, L, r = H = I = L = !1, f = 0; f < n.length; f++) n[f] && n[f].title && (n[f]._titleTextBlock = new ka(n[f].ctx, {\n text: n[f].title,\n horizontalAlign: \"center\",\n fontSize: n[f].titleFontSize,\n fontFamily: n[f].titleFontFamily,\n fontWeight: n[f].titleFontWeight,\n fontColor: n[f].titleFontColor,\n fontStyle: n[f].titleFontStyle,\n borderColor: n[f].titleBorderColor,\n borderThickness: n[f].titleBorderThickness,\n backgroundColor: n[f].titleBackgroundColor,\n cornerRadius: n[f].titleCornerRadius,\n textBaseline: \"top\"\n }));\n for (f = 0; f < n.length; f++)\n if (n[f].title) switch (n[f]._position) {\n case \"left\":\n n[f]._titleTextBlock.maxWidth = n[f].titleMaxWidth || g.height;\n n[f]._titleTextBlock.maxHeight = n[f].titleWrap ? 0.8 * g.width : 1.5 * n[f].titleFontSize;\n n[f]._titleTextBlock.angle = -90;\n break;\n case \"right\":\n n[f]._titleTextBlock.maxWidth = n[f].titleMaxWidth || g.height;\n n[f]._titleTextBlock.maxHeight = n[f].titleWrap ? 0.8 * g.width : 1.5 * n[f].titleFontSize;\n n[f]._titleTextBlock.angle = 90;\n break;\n default:\n n[f]._titleTextBlock.maxWidth = n[f].titleMaxWidth || g.width, n[f]._titleTextBlock.maxHeight = n[f].titleWrap ? 0.8 * g.height : 1.5 * n[f].titleFontSize, n[f]._titleTextBlock.angle = 0\n }\n if (\"normal\" === e) {\n for (var C = [], x = [], D = [], y = [], M = [], N = [], O = [], Q = []; 4 > v;) {\n var G = 0,\n R = 0,\n S = 0,\n U = 0,\n W = e = 0,\n K = 0,\n $ = 0,\n V = 0,\n X = 0,\n P = 0,\n ba = 0;\n if (b &&\n 0 < b.length)\n for (D = [], f = P = 0; f < b.length; f++) D.push(Math.ceil(b[f] ? b[f].createLabelsAndCalculateWidth() : 0)), P += D[f], K += b[f] && !p.isNavigator ? b[f].margin : 0;\n else D.push(Math.ceil(b[0] ? b[0].createLabelsAndCalculateWidth() : 0));\n O.push(D);\n if (c && 0 < c.length)\n for (y = [], f = ba = 0; f < c.length; f++) y.push(Math.ceil(c[f] ? c[f].createLabelsAndCalculateWidth() : 0)), ba += y[f], $ += c[f] ? c[f].margin : 0;\n else y.push(Math.ceil(c[0] ? c[0].createLabelsAndCalculateWidth() : 0));\n Q.push(y);\n m = Math.round(g.x1 + P + K);\n k = Math.round(g.x2 - ba - $ > p.width -\n q ? p.width - q : g.x2 - ba - $);\n if (a && 0 < a.length)\n for (C = [], f = V = 0; f < a.length; f++) a[f] && (a[f].lineCoordinates = {}), a[f].lineCoordinates.width = Math.abs(k - m), a[f].title && (a[f]._titleTextBlock.maxWidth = 0 < a[f].titleMaxWidth && a[f].titleMaxWidth < a[f].lineCoordinates.width ? a[f].titleMaxWidth : a[f].lineCoordinates.width), C.push(Math.ceil(a[f] ? a[f].createLabelsAndCalculateHeight() : 0)), V += C[f], e += a[f] && !p.isNavigator ? a[f].margin : 0;\n else C.push(Math.ceil(a[0] ? a[0].createLabelsAndCalculateHeight() : 0));\n M.push(C);\n if (d && 0 < d.length)\n for (x = [], f = X = 0; f < d.length; f++) d[f] && (d[f].lineCoordinates = {}), d[f].lineCoordinates.width = Math.abs(k - m), d[f].title && (d[f]._titleTextBlock.maxWidth = 0 < d[f].titleMaxWidth && d[f].titleMaxWidth < d[f].lineCoordinates.width ? d[f].titleMaxWidth : d[f].lineCoordinates.width), x.push(Math.ceil(d[f] ? d[f].createLabelsAndCalculateHeight() : 0)), X += x[f], W += d[f] && !p.isNavigator ? d[f].margin : 0;\n else x.push(Math.ceil(d[0] ? d[0].createLabelsAndCalculateHeight() : 0));\n N.push(x);\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) a[f] && (a[f].lineCoordinates.x1 =\n m, k = Math.round(g.x2 - ba - $ > p.width - q ? p.width - q : g.x2 - ba - $), a[f]._labels && 1 < a[f]._labels.length && (l = h = 0, h = a[f]._labels[1], l = \"dateTime\" === a[f].valueType ? a[f]._labels[a[f]._labels.length - 2] : a[f]._labels[a[f]._labels.length - 1], z = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)), t = l.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(l.textBlock.angle)) + (l.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI /\n 180 * Math.abs(l.textBlock.angle))), !a[f] || (!a[f].labelAutoFit || u(A) || u(E) || p.isNavigator) || (l = 0, 0 < a[f].labelAngle ? E + t > k && (l += 0 < a[f].labelAngle ? E + t - k - ba : 0) : 0 > a[f].labelAngle ? A - z < m && A - z < a[f].viewportMinimum && (F = m - (K + a[f].tickLength + D + A - z + a[f].labelFontSize / 2)) : 0 === a[f].labelAngle && (E + t > k && (l = E + t / 2 - k - ba), A - z < m && A - z < a[f].viewportMinimum && (F = m - K - a[f].tickLength - D - A + z / 2)), a[f].viewportMaximum === a[f].maximum && a[f].viewportMinimum === a[f].minimum && 0 < a[f].labelAngle && 0 < l ? k -= l : a[f].viewportMaximum === a[f].maximum &&\n a[f].viewportMinimum === a[f].minimum && 0 > a[f].labelAngle && 0 < F ? m += F : a[f].viewportMaximum === a[f].maximum && a[f].viewportMinimum === a[f].minimum && 0 === a[f].labelAngle && (0 < F && (m += F), 0 < l && (k -= l))), p.panEnabled ? V = p.sessionVariables.axisX.height : p.sessionVariables.axisX.height = V, l = Math.round(g.y2 - V - e + G), h = Math.round(g.y2), a[f].lineCoordinates.x2 = k, a[f].lineCoordinates.width = k - m, a[f].lineCoordinates.y1 = l, a[f].lineCoordinates.y2 = l, a[f].bounds = {\n x1: m,\n y1: l,\n x2: k,\n y2: h - (V + e - C[f] - G),\n width: k - m,\n height: h - l\n }), G += C[f] + a[f].margin;\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) d[f].lineCoordinates.x1 = Math.round(g.x1 + P + K), d[f].lineCoordinates.x2 = Math.round(g.x2 - ba - $ > p.width - q ? p.width - q : g.x2 - ba - $), d[f].lineCoordinates.width = Math.abs(k - m), d[f]._labels && 1 < d[f]._labels.length && (h = d[f]._labels[1], l = \"dateTime\" === d[f].valueType ? d[f]._labels[d[f]._labels.length - 2] : d[f]._labels[d[f]._labels.length - 1], z = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)),\n t = l.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(l.textBlock.angle)) + (l.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(l.textBlock.angle))), p.panEnabled ? X = p.sessionVariables.axisX2.height : p.sessionVariables.axisX2.height = X, l = Math.round(g.y1), h = Math.round(g.y2 + d[f].margin), d[f].lineCoordinates.y1 = l + X + W - R, d[f].lineCoordinates.y2 = l, d[f].bounds = {\n x1: m,\n y1: l + (X + W - x[f] - R),\n x2: k,\n y2: h,\n width: k - m,\n height: h - l\n }, R += x[f] + d[f].margin;\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) K = p.isNavigator ? 0 :\n 10, b[f] && (m = Math.round(a[0] ? a[0].lineCoordinates.x1 : d[0].lineCoordinates.x1), K = b[f]._labels && 0 < b[f]._labels.length ? b[f]._labels[b[f]._labels.length - 1].textBlock.height / 2 : q, l = Math.round(g.y1 + X + W < Math.max(K, q) ? Math.max(K, q) : g.y1 + X + W), k = Math.round(a[0] ? a[0].lineCoordinates.x1 : d[0].lineCoordinates.x1), K = 0 < a.length ? 0 : b[f]._labels && 0 < b[f]._labels.length ? b[f]._labels[0].textBlock.height / 2 : q, h = Math.round(g.y2 - V - e - K), b[f].lineCoordinates = {\n x1: k - S,\n y1: l,\n x2: k - S,\n y2: h,\n height: Math.abs(h - l)\n }, b[f].bounds = {\n x1: m - (D[f] +\n S),\n y1: l,\n x2: k,\n y2: h,\n width: k - m,\n height: h - l\n }, b[f].title && (b[f]._titleTextBlock.maxWidth = 0 < b[f].titleMaxWidth && b[f].titleMaxWidth < b[f].lineCoordinates.height ? b[f].titleMaxWidth : b[f].lineCoordinates.height), S += D[f] + b[f].margin);\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f] && (m = Math.round(a[0] ? a[0].lineCoordinates.x2 : d[0].lineCoordinates.x2), k = Math.round(m), K = c[f]._labels && 0 < c[f]._labels.length ? c[f]._labels[c[f]._labels.length - 1].textBlock.height / 2 : 0, l = Math.round(g.y1 + X + W < Math.max(K, q) ? Math.max(K, q) : g.y1 +\n X + W), K = 0 < a.length ? 0 : c[f]._labels && 0 < c[f]._labels.length ? c[f]._labels[0].textBlock.height / 2 : 0, h = Math.round(g.y2 - (V + e + K)), c[f].lineCoordinates = {\n x1: m + U,\n y1: l,\n x2: m + U,\n y2: h,\n height: Math.abs(h - l)\n }, c[f].bounds = {\n x1: m,\n y1: l,\n x2: k + (y[f] + U),\n y2: h,\n width: k - m,\n height: h - l\n }, c[f].title && (c[f]._titleTextBlock.maxWidth = 0 < c[f].titleMaxWidth && c[f].titleMaxWidth < c[f].lineCoordinates.height ? c[f].titleMaxWidth : c[f].lineCoordinates.height), U += y[f] + c[f].margin);\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) a[f] && (a[f].calculateValueToPixelConversionParameters(),\n a[f].calculateBreaksSizeInValues(), a[f]._labels && 1 < a[f]._labels.length && (A = (a[f].logarithmic ? Math.log(a[f]._labels[1].position / a[f].viewportMinimum) / a[f].conversionParameters.lnLogarithmBase : a[f]._labels[1].position - a[f].viewportMinimum) * Math.abs(a[f].conversionParameters.pixelPerUnit) + a[f].lineCoordinates.x1, m = a[f]._labels[a[f]._labels.length - (\"dateTime\" === a[f].valueType ? 2 : 1)].position, m = a[f].getApparentDifference(a[f].viewportMinimum, m), E = a[f].logarithmic ? (1 < m ? Math.log(m) / a[f].conversionParameters.lnLogarithmBase *\n Math.abs(a[f].conversionParameters.pixelPerUnit) : 0) + a[f].lineCoordinates.x1 : (0 < m ? m * Math.abs(a[f].conversionParameters.pixelPerUnit) : 0) + a[f].lineCoordinates.x1));\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) d[f].calculateValueToPixelConversionParameters(), d[f].calculateBreaksSizeInValues(), d[f]._labels && 1 < d[f]._labels.length && (A = (d[f].logarithmic ? Math.log(d[f]._labels[1].position / d[f].viewportMinimum) / d[f].conversionParameters.lnLogarithmBase : d[f]._labels[1].position - d[f].viewportMinimum) * Math.abs(d[f].conversionParameters.pixelPerUnit) +\n d[f].lineCoordinates.x1, m = d[f]._labels[d[f]._labels.length - (\"dateTime\" === d[f].valueType ? 2 : 1)].position, m = d[f].getApparentDifference(d[f].viewportMinimum, m), E = d[f].logarithmic ? (1 < m ? Math.log(m) / d[f].conversionParameters.lnLogarithmBase * Math.abs(d[f].conversionParameters.pixelPerUnit) : 0) + d[f].lineCoordinates.x1 : (0 < m ? m * Math.abs(d[f].conversionParameters.pixelPerUnit) : 0) + d[f].lineCoordinates.x1);\n for (f = 0; f < n.length; f++) \"axisY\" === n[f].type && (n[f].calculateValueToPixelConversionParameters(), n[f].calculateBreaksSizeInValues());\n if (0 < v) {\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) r = M[v - 1][f] === M[v][f] ? !0 : !1;\n else r = !0;\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) H = N[v - 1][f] === N[v][f] ? !0 : !1;\n else H = !0;\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) I = O[v - 1][f] === O[v][f] ? !0 : !1;\n else I = !0;\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) L = Q[v - 1][f] === Q[v][f] ? !0 : !1;\n else L = !0\n }\n if (r && H && I && L) break;\n v++\n }\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) a[f].calculateStripLinesThicknessInValues(), a[f].calculateBreaksInPixels();\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) d[f].calculateStripLinesThicknessInValues(),\n d[f].calculateBreaksInPixels();\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) b[f].calculateStripLinesThicknessInValues(), b[f].calculateBreaksInPixels();\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f].calculateStripLinesThicknessInValues(), c[f].calculateBreaksInPixels()\n } else {\n q = [];\n A = [];\n F = [];\n z = [];\n E = [];\n t = [];\n M = [];\n for (N = []; 4 > v;) {\n V = U = R = S = $ = K = W = e = Q = O = G = X = 0;\n if (a && 0 < a.length)\n for (F = [], f = U = 0; f < a.length; f++) F.push(Math.ceil(a[f] ? a[f].createLabelsAndCalculateWidth() : 0)), U += F[f], e += a[f] && !p.isNavigator ? a[f].margin : 0;\n else F.push(Math.ceil(a[0] ?\n a[0].createLabelsAndCalculateWidth() : 0));\n M.push(F);\n if (d && 0 < d.length)\n for (z = [], f = V = 0; f < d.length; f++) z.push(Math.ceil(d[f] ? d[f].createLabelsAndCalculateWidth() : 0)), V += z[f], W += d[f] ? d[f].margin : 0;\n else z.push(Math.ceil(d[0] ? d[0].createLabelsAndCalculateWidth() : 0));\n N.push(z);\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) b[f].lineCoordinates = {}, m = Math.round(g.x1 + U + e), k = Math.round(g.x2 - V - W > p.width - 10 ? p.width - 10 : g.x2 - V - W), b[f].labelAutoFit && !u(C) && (0 < !a.length && (m = 0 > b[f].labelAngle ? Math.max(m, C) : 0 === b[f].labelAngle ?\n Math.max(m, C / 2) : m), 0 < !d.length && (k = 0 < b[f].labelAngle ? k - x / 2 : 0 === b[f].labelAngle ? k - x / 2 : k)), b[f].lineCoordinates.x1 = m, b[f].lineCoordinates.x2 = k, b[f].lineCoordinates.width = Math.abs(k - m), b[f].title && (b[f]._titleTextBlock.maxWidth = 0 < b[f].titleMaxWidth && b[f].titleMaxWidth < b[f].lineCoordinates.width ? b[f].titleMaxWidth : b[f].lineCoordinates.width);\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f].lineCoordinates = {}, m = Math.round(g.x1 + U + e), k = Math.round(g.x2 - V - W > c[f].chart.width - 10 ? c[f].chart.width - 10 : g.x2 - V - W), c[f] &&\n c[f].labelAutoFit && !u(D) && (0 < !a.length && (m = 0 < c[f].labelAngle ? Math.max(m, D) : 0 === c[f].labelAngle ? Math.max(m, D / 2) : m), 0 < !d.length && (k -= y / 2)), c[f].lineCoordinates.x1 = m, c[f].lineCoordinates.x2 = k, c[f].lineCoordinates.width = Math.abs(k - m), c[f].title && (c[f]._titleTextBlock.maxWidth = 0 < c[f].titleMaxWidth && c[f].titleMaxWidth < c[f].lineCoordinates.width ? c[f].titleMaxWidth : c[f].lineCoordinates.width);\n if (b && 0 < b.length)\n for (q = [], f = S = 0; f < b.length; f++) q.push(Math.ceil(b[f] ? b[f].createLabelsAndCalculateHeight() : 0)), S +=\n q[f] + b[f].margin, K += b[f].margin;\n else q.push(Math.ceil(b[0] ? b[0].createLabelsAndCalculateHeight() : 0));\n E.push(q);\n if (c && 0 < c.length)\n for (A = [], f = R = 0; f < c.length; f++) A.push(Math.ceil(c[f] ? c[f].createLabelsAndCalculateHeight() : 0)), R += A[f], $ += c[f].margin;\n else A.push(Math.ceil(c[0] ? c[0].createLabelsAndCalculateHeight() : 0));\n t.push(A);\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) 0 < b[f]._labels.length && (h = b[f]._labels[0], l = b[f]._labels[b[f]._labels.length - 1], C = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) +\n (h.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(h.textBlock.angle)), x = l.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(l.textBlock.angle)) + (l.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(l.textBlock.angle)));\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f] && 0 < c[f]._labels.length && (h = c[f]._labels[0], l = c[f]._labels[c[f]._labels.length - 1], D = h.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(h.textBlock.angle)) + (h.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI /\n 180 * Math.abs(h.textBlock.angle)), y = l.textBlock.width * Math.cos(Math.PI / 180 * Math.abs(l.textBlock.angle)) + (l.textBlock.height - l.textBlock.fontSize / 2) * Math.sin(Math.PI / 180 * Math.abs(l.textBlock.angle)));\n if (p.panEnabled)\n for (f = 0; f < b.length; f++) q[f] = p.sessionVariables.axisY.height;\n else\n for (f = 0; f < b.length; f++) p.sessionVariables.axisY.height = q[f];\n if (b && 0 < b.length)\n for (f = b.length - 1; 0 <= f; f--) l = Math.round(g.y2), h = Math.round(g.y2 > b[f].chart.height - 10 ? b[f].chart.height - 10 : g.y2), b[f].lineCoordinates.y1 = l - (q[f] + b[f].margin +\n X), b[f].lineCoordinates.y2 = l - (q[f] + b[f].margin + X), b[f].bounds = {\n x1: m,\n y1: l - (q[f] + X + b[f].margin),\n x2: k,\n y2: h - (X + b[f].margin),\n width: k - m,\n height: q[f]\n }, b[f].title && (b[f]._titleTextBlock.maxWidth = 0 < b[f].titleMaxWidth && b[f].titleMaxWidth < b[f].lineCoordinates.width ? b[f].titleMaxWidth : b[f].lineCoordinates.width), X += q[f] + b[f].margin;\n if (c && 0 < c.length)\n for (f = c.length - 1; 0 <= f; f--) c[f] && (l = Math.round(g.y1), h = Math.round(g.y1 + (A[f] + c[f].margin + G)), c[f].lineCoordinates.y1 = h, c[f].lineCoordinates.y2 = h, c[f].bounds = {\n x1: m,\n y1: l +\n (c[f].margin + G),\n x2: k,\n y2: h,\n width: k - m,\n height: R\n }, c[f].title && (c[f]._titleTextBlock.maxWidth = 0 < c[f].titleMaxWidth && c[f].titleMaxWidth < c[f].lineCoordinates.width ? c[f].titleMaxWidth : c[f].lineCoordinates.width), G += A[f] + c[f].margin);\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) {\n K = a[f]._labels && 0 < a[f]._labels.length ? a[f]._labels[0].textBlock.fontSize / 2 : 0;\n m = Math.round(g.x1 + e);\n l = c && 0 < c.length ? Math.round(c[0] ? c[0].lineCoordinates.y2 : g.y1 < Math.max(K, 10) ? Math.max(K, 10) : g.y1) : g.y1 < Math.max(K, 10) ? Math.max(K, 10) : g.y1;\n k = Math.round(g.x1 + U + e);\n h = b && 0 < b.length ? Math.round(b[0] ? b[0].lineCoordinates.y1 : g.y2 - S > p.height - Math.max(K, 10) ? p.height - Math.max(K, 10) : g.y2 - S) : g.y2 > p.height - Math.max(K, 10) ? p.height - Math.max(K, 10) : g.y2;\n if (b && 0 < b.length)\n for (K = 0; K < b.length; K++) b[K] && b[K].labelAutoFit && (k = 0 > b[K].labelAngle ? Math.max(k, C) : 0 === b[K].labelAngle ? Math.max(k, C / 2) : k, m = 0 > b[K].labelAngle || 0 === b[K].labelAngle ? k - U : m);\n if (c && 0 < c.length)\n for (K = 0; K < c.length; K++) c[K] && c[K].labelAutoFit && (k = c[K].lineCoordinates.x1, m = k - U);\n a[f].lineCoordinates = {\n x1: k - O,\n y1: l,\n x2: k - O,\n y2: h,\n height: Math.abs(h - l)\n };\n a[f].bounds = {\n x1: k - (F[f] + O),\n y1: l,\n x2: k,\n y2: h,\n width: k - m,\n height: h - l\n };\n a[f].title && (a[f]._titleTextBlock.maxWidth = 0 < a[f].titleMaxWidth && a[f].titleMaxWidth < a[f].lineCoordinates.height ? a[f].titleMaxWidth : a[f].lineCoordinates.height);\n a[f].calculateValueToPixelConversionParameters();\n a[f].calculateBreaksSizeInValues();\n O += F[f] + a[f].margin\n }\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) {\n K = d[f]._labels && 0 < d[f]._labels.length ? d[f]._labels[0].textBlock.fontSize / 2 : 0;\n m = Math.round(g.x1 -\n e);\n l = c && 0 < c.length ? Math.round(c[0] ? c[0].lineCoordinates.y2 : g.y1 < Math.max(K, 10) ? Math.max(K, 10) : g.y1) : g.y1 < Math.max(K, 10) ? Math.max(K, 10) : g.y1;\n k = Math.round(g.x2 - V - W);\n h = b && 0 < b.length ? Math.round(b[0] ? b[0].lineCoordinates.y1 : g.y2 - S > p.height - Math.max(K, 10) ? p.height - Math.max(K, 10) : g.y2 - S) : g.y2 > p.height - Math.max(K, 10) ? p.height - Math.max(K, 10) : g.y2;\n if (b && 0 < b.length)\n for (K = 0; K < b.length; K++) b[K] && b[K].labelAutoFit && (k = 0 > b[K].labelAngle ? Math.max(k, C) : 0 === b[K].labelAngle ? Math.max(k, C / 2) : k, m = 0 > b[K].labelAngle || 0 ===\n b[K].labelAngle ? k - V : m);\n if (c && 0 < c.length)\n for (K = 0; K < c.length; K++) c[K] && c[K].labelAutoFit && (k = c[K].lineCoordinates.x2, m = k - V);\n d[f].lineCoordinates = {\n x1: k + Q,\n y1: l,\n x2: k + Q,\n y2: h,\n height: Math.abs(h - l)\n };\n d[f].bounds = {\n x1: m,\n y1: l,\n x2: k + z[f] + Q,\n y2: h,\n width: k - m,\n height: h - l\n };\n d[f].title && (d[f]._titleTextBlock.maxWidth = 0 < d[f].titleMaxWidth && d[f].titleMaxWidth < d[f].lineCoordinates.height ? d[f].titleMaxWidth : d[f].lineCoordinates.height);\n d[f].calculateValueToPixelConversionParameters();\n d[f].calculateBreaksSizeInValues();\n Q += z[f] +\n d[f].margin\n }\n for (f = 0; f < n.length; f++) \"axisY\" === n[f].type && (n[f].calculateValueToPixelConversionParameters(), n[f].calculateBreaksSizeInValues());\n if (0 < v) {\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) r = M[v - 1][f] === M[v][f] ? !0 : !1;\n else r = !0;\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) H = N[v - 1][f] === N[v][f] ? !0 : !1;\n else H = !0;\n if (b && 0 < b.length)\n for (f = 0; f < b.length; f++) I = E[v - 1][f] === E[v][f] ? !0 : !1;\n else I = !0;\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) L = t[v - 1][f] === t[v][f] ? !0 : !1;\n else L = !0\n }\n if (r && H && I && L) break;\n v++\n }\n if (b && 0 < b.length)\n for (f =\n 0; f < b.length; f++) b[f].calculateStripLinesThicknessInValues(), b[f].calculateBreaksInPixels();\n if (c && 0 < c.length)\n for (f = 0; f < c.length; f++) c[f].calculateStripLinesThicknessInValues(), c[f].calculateBreaksInPixels();\n if (a && 0 < a.length)\n for (f = 0; f < a.length; f++) a[f].calculateStripLinesThicknessInValues(), a[f].calculateBreaksInPixels();\n if (d && 0 < d.length)\n for (f = 0; f < d.length; f++) d[f].calculateStripLinesThicknessInValues(), d[f].calculateBreaksInPixels()\n }\n };\n z.render = function (a, d, b, c, e) {\n var g = a[0] ? a[0].chart : d[0].chart;\n e = g.ctx;\n var m = g._axes;\n g.alignVerticalAxes && g.alignVerticalAxes();\n e.save();\n e.beginPath();\n a[0] && e.rect(5, a[0].bounds.y1, a[0].chart.width - 10, a[0].bounds.height);\n d[0] && e.rect(5, d[d.length - 1].bounds.y1, d[0].chart.width - 10, d[0].bounds.height);\n e.clip();\n if (a && 0 < a.length)\n for (var l = 0; l < a.length; l++) a[l].renderLabelsTicksAndTitle();\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderLabelsTicksAndTitle();\n e.restore();\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderLabelsTicksAndTitle();\n if (c && 0 < c.length)\n for (l =\n 0; l < c.length; l++) c[l].renderLabelsTicksAndTitle();\n g.preparePlotArea();\n g = g.plotArea;\n e.save();\n e.beginPath();\n e.rect(g.x1, g.y1, Math.abs(g.x2 - g.x1), Math.abs(g.y2 - g.y1));\n e.clip();\n if (a && 0 < a.length)\n for (l = 0; l < m.length; l++) m[l].renderStripLinesOfThicknessType(\"value\");\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderStripLinesOfThicknessType(\"value\");\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderStripLinesOfThicknessType(\"value\");\n if (c && 0 < c.length)\n for (l = 0; l < c.length; l++) c[l].renderStripLinesOfThicknessType(\"value\");\n if (a && 0 < a.length)\n for (l = 0; l < a.length; l++) a[l].renderInterlacedColors();\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderInterlacedColors();\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderInterlacedColors();\n if (c && 0 < c.length)\n for (l = 0; l < c.length; l++) c[l].renderInterlacedColors();\n e.restore();\n if (a && 0 < a.length)\n for (l = 0; l < a.length; l++) a[l].renderGrid(), r && (a[l].createMask(), a[l].renderBreaksBackground());\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderGrid(), r && (d[l].createMask(), d[l].renderBreaksBackground());\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderGrid(), r && (b[l].createMask(), b[l].renderBreaksBackground());\n if (c && 0 < c.length)\n for (l = 0; l < c.length; l++) c[l].renderGrid(), r && (c[l].createMask(), c[l].renderBreaksBackground());\n if (a && 0 < a.length)\n for (l = 0; l < a.length; l++) a[l].renderAxisLine();\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderAxisLine();\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderAxisLine();\n if (c && 0 < c.length)\n for (l = 0; l < c.length; l++) c[l].renderAxisLine();\n if (a && 0 < a.length)\n for (l = 0; l < a.length; l++) a[l].renderStripLinesOfThicknessType(\"pixel\");\n if (d && 0 < d.length)\n for (l = 0; l < d.length; l++) d[l].renderStripLinesOfThicknessType(\"pixel\");\n if (b && 0 < b.length)\n for (l = 0; l < b.length; l++) b[l].renderStripLinesOfThicknessType(\"pixel\");\n if (c && 0 < c.length)\n for (l = 0; l < c.length; l++) c[l].renderStripLinesOfThicknessType(\"pixel\")\n };\n z.prototype.calculateStripLinesThicknessInValues = function () {\n for (var a = 0; a < this.stripLines.length; a++)\n if (null !== this.stripLines[a].startValue && null !== this.stripLines[a].endValue) {\n var d = Math.min(this.stripLines[a].startValue, this.stripLines[a].endValue),\n b = Math.max(this.stripLines[a].startValue, this.stripLines[a].endValue),\n d = this.getApparentDifference(d, b);\n this.stripLines[a].value = this.logarithmic ? this.stripLines[a].value * Math.sqrt(Math.log(this.stripLines[a].endValue / this.stripLines[a].startValue) / Math.log(d)) : this.stripLines[a].value + (Math.abs(this.stripLines[a].endValue - this.stripLines[a].startValue) - d) / 2;\n this.stripLines[a].thickness = d;\n this.stripLines[a]._thicknessType = \"value\"\n }\n };\n z.prototype.calculateBreaksSizeInValues = function () {\n for (var a = \"left\" ===\n this._position || \"right\" === this._position ? this.lineCoordinates.height || this.chart.height : this.lineCoordinates.width || this.chart.width, d = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [], b = this.conversionParameters.pixelPerUnit || a / (this.logarithmic ? this.conversionParameters.maximum / this.conversionParameters.minimum : this.conversionParameters.maximum - this.conversionParameters.minimum), c = this.scaleBreaks && !u(this.scaleBreaks.options.spacing), e, g = 0; g < d.length; g++) e = c || !u(d[g].options.spacing), d[g].spacing =\n I(d[g].spacing, a, 8, e ? 0.1 * a : 8, e ? 0 : 3) << 0, d[g].size = 0 > d[g].spacing ? 0 : Math.abs(d[g].spacing / b), this.logarithmic && (d[g].size = Math.pow(this.logarithmBase, d[g].size))\n };\n z.prototype.calculateBreaksInPixels = function () {\n if (!(this.scaleBreaks && 0 >= this.scaleBreaks._appliedBreaks.length)) {\n var a = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [];\n a.length && (this.scaleBreaks.firstBreakIndex = this.scaleBreaks.lastBreakIndex = null);\n for (var d = 0; d < a.length && !(a[d].startValue > this.conversionParameters.maximum); d++) a[d].endValue <\n this.conversionParameters.minimum || (u(this.scaleBreaks.firstBreakIndex) && (this.scaleBreaks.firstBreakIndex = d), a[d].startValue >= this.conversionParameters.minimum && (a[d].startPixel = this.convertValueToPixel(a[d].startValue), this.scaleBreaks.lastBreakIndex = d), a[d].endValue <= this.conversionParameters.maximum && (a[d].endPixel = this.convertValueToPixel(a[d].endValue)))\n }\n };\n z.prototype.renderLabelsTicksAndTitle = function () {\n var a = this,\n d = !1,\n b = 0,\n c = 0,\n e = 1,\n g = 0;\n 0 !== this.labelAngle && 360 !== this.labelAngle && (e = 1.2);\n if (\"undefined\" ===\n typeof this.options.interval) {\n if (\"bottom\" === this._position || \"top\" === this._position)\n if (this.logarithmic && !this.equidistantInterval && this.labelAutoFit) {\n for (var b = [], e = 0 !== this.labelAngle && 360 !== this.labelAngle ? 1 : 1.2, m, l = this.viewportMaximum, k = this.lineCoordinates.width / Math.log(this.range), h = this._labels.length - 1; 0 <= h; h--) {\n q = this._labels[h];\n if (q.position < this.viewportMinimum) break;\n q.position > this.viewportMaximum || !(h === this._labels.length - 1 || m < Math.log(l / q.position) * k / e) || (b.push(q), l = q.position, m =\n q.textBlock.width * Math.abs(Math.cos(Math.PI / 180 * this.labelAngle)) + q.textBlock.height * Math.abs(Math.sin(Math.PI / 180 * this.labelAngle)))\n }\n this._labels = b\n } else {\n for (h = 0; h < this._labels.length; h++) q = this._labels[h], q.position < this.viewportMinimum || (m = q.textBlock.width * Math.abs(Math.cos(Math.PI / 180 * this.labelAngle)) + q.textBlock.height * Math.abs(Math.sin(Math.PI / 180 * this.labelAngle)), b += m);\n b > this.lineCoordinates.width * e && this.labelAutoFit && (d = !0)\n } if (\"left\" === this._position || \"right\" === this._position)\n if (this.logarithmic &&\n !this.equidistantInterval && this.labelAutoFit) {\n for (var b = [], p, l = this.viewportMaximum, k = this.lineCoordinates.height / Math.log(this.range), h = this._labels.length - 1; 0 <= h; h--) {\n q = this._labels[h];\n if (q.position < this.viewportMinimum) break;\n q.position > this.viewportMaximum || !(h === this._labels.length - 1 || p < Math.log(l / q.position) * k) || (b.push(q), l = q.position, p = q.textBlock.height * Math.abs(Math.cos(Math.PI / 180 * this.labelAngle)) + q.textBlock.width * Math.abs(Math.sin(Math.PI / 180 * this.labelAngle)))\n }\n this._labels = b\n } else {\n for (h =\n 0; h < this._labels.length; h++) q = this._labels[h], q.position < this.viewportMinimum || (p = q.textBlock.height * Math.abs(Math.cos(Math.PI / 180 * this.labelAngle)) + q.textBlock.width * Math.abs(Math.sin(Math.PI / 180 * this.labelAngle)), c += p);\n c > this.lineCoordinates.height * e && this.labelAutoFit && (d = !0)\n }\n }\n this.logarithmic && (!this.equidistantInterval && this.labelAutoFit) && this._labels.sort(function (a, b) {\n return a.position - b.position\n });\n var h = 0,\n q, n;\n if (\"bottom\" === this._position) {\n for (h = 0; h < this._labels.length; h++) q = this._labels[h],\n q.position < this.viewportMinimum || (q.position > this.viewportMaximum || d && 0 !== g++ % 2 && this.labelAutoFit) || (n = this.getPixelCoordinatesOnAxis(q.position), this.tickThickness && \"inside\" != this.labelPlacement && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, c = 1 === this.ctx.lineWidth % 2 ? (n.x << 0) + 0.5 : n.x << 0, this.ctx.beginPath(), this.ctx.moveTo(c, n.y << 0), this.ctx.lineTo(c, n.y + this.tickLength << 0), this.ctx.stroke()), 0 === q.textBlock.angle ? (n.x -= q.textBlock.width / 2, n.y = \"inside\" === this.labelPlacement ?\n n.y - (this.tickLength + q.textBlock.fontSize / 2) : n.y + this.tickLength + q.textBlock.fontSize / 2) : (n.x = \"inside\" === this.labelPlacement ? 0 > this.labelAngle ? n.x : n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : n.x - (0 > this.labelAngle ? q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0), n.y = \"inside\" === this.labelPlacement ? 0 > this.labelAngle ? n.y - this.tickLength - 5 : n.y - this.tickLength - Math.abs(q.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) + 5) : n.y + this.tickLength + Math.abs(0 > this.labelAngle ? q.textBlock.width *\n Math.sin(Math.PI / 180 * this.labelAngle) - 5 : 5)), q.textBlock.x = n.x, q.textBlock.y = n.y);\n \"inside\" === this.labelPlacement && this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (h = 0; h < a._labels.length; h++)\n if (q = a._labels[h], !(q.position < a.viewportMinimum || q.position > a.viewportMaximum || d && 0 !== g++ % 2 && a.labelAutoFit) && (n = a.getPixelCoordinatesOnAxis(q.position), a.tickThickness)) {\n a.ctx.lineWidth = a.tickThickness;\n a.ctx.strokeStyle = a.tickColor;\n var b = 1 === a.ctx.lineWidth % 2 ? (n.x << 0) + 0.5 : n.x << 0;\n a.ctx.save();\n a.ctx.beginPath();\n a.ctx.moveTo(b, n.y << 0);\n a.ctx.lineTo(b, n.y - a.tickLength << 0);\n a.ctx.stroke();\n a.ctx.restore()\n }\n }, this);\n this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.lineCoordinates.x1 + this.lineCoordinates.width / 2 - this._titleTextBlock.width / 2, this._titleTextBlock.y = this.bounds.y2 - this._titleTextBlock.height - 3, this.titleMaxWidth = this._titleTextBlock.maxWidth, this._titleTextBlock.render(!0))\n } else if (\"top\" === this._position) {\n for (h = 0; h < this._labels.length; h++) q = this._labels[h],\n q.position < this.viewportMinimum || (q.position > this.viewportMaximum || d && 0 !== g++ % 2 && this.labelAutoFit) || (n = this.getPixelCoordinatesOnAxis(q.position), this.tickThickness && \"inside\" != this.labelPlacement && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, c = 1 === this.ctx.lineWidth % 2 ? (n.x << 0) + 0.5 : n.x << 0, this.ctx.beginPath(), this.ctx.moveTo(c, n.y << 0), this.ctx.lineTo(c, n.y - this.tickLength << 0), this.ctx.stroke()), 0 === q.textBlock.angle ? (n.x -= q.textBlock.width / 2, n.y = \"inside\" === this.labelPlacement ?\n n.y + this.labelFontSize / 2 + this.tickLength + 5 : n.y - (this.tickLength + q.textBlock.height - q.textBlock.fontSize / 2)) : (n.x = \"inside\" === this.labelPlacement ? 0 < this.labelAngle ? n.x : n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : n.x + (q.textBlock.height - this.tickLength - this.labelFontSize) * Math.sin(Math.PI / 180 * this.labelAngle) - (0 < this.labelAngle ? q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0), n.y = \"inside\" === this.labelPlacement ? 0 < this.labelAngle ? n.y + this.tickLength + 5 : n.y - q.textBlock.width * Math.sin(Math.PI /\n 180 * this.labelAngle) + this.tickLength + 5 : n.y - (this.tickLength + ((q.textBlock.height - q.textBlock.fontSize / 2) * Math.cos(Math.PI / 180 * this.labelAngle) + (0 < this.labelAngle ? q.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) : 0)))), q.textBlock.x = n.x, q.textBlock.y = n.y);\n \"inside\" === this.labelPlacement && this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (h = 0; h < a._labels.length; h++)\n if (q = a._labels[h], !(q.position < a.viewportMinimum || q.position > a.viewportMaximum || d && 0 !== g++ % 2 && a.labelAutoFit) &&\n (n = a.getPixelCoordinatesOnAxis(q.position), a.tickThickness)) {\n a.ctx.lineWidth = a.tickThickness;\n a.ctx.strokeStyle = a.tickColor;\n var b = 1 === this.ctx.lineWidth % 2 ? (n.x << 0) + 0.5 : n.x << 0;\n a.ctx.save();\n a.ctx.beginPath();\n a.ctx.moveTo(b, n.y << 0);\n a.ctx.lineTo(b, n.y + a.tickLength << 0);\n a.ctx.stroke();\n a.ctx.restore()\n }\n }, this);\n this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.lineCoordinates.x1 + this.lineCoordinates.width / 2 - this._titleTextBlock.width / 2, this._titleTextBlock.y = this.bounds.y1 + 1, this.titleMaxWidth =\n this._titleTextBlock.maxWidth, this._titleTextBlock.render(!0))\n } else if (\"left\" === this._position) {\n for (h = 0; h < this._labels.length; h++) q = this._labels[h], q.position < this.viewportMinimum || (q.position > this.viewportMaximum || d && 0 !== g++ % 2 && this.labelAutoFit) || (n = this.getPixelCoordinatesOnAxis(q.position), this.tickThickness && \"inside\" != this.labelPlacement && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, c = 1 === this.ctx.lineWidth % 2 ? (n.y << 0) + 0.5 : n.y << 0, this.ctx.beginPath(), this.ctx.moveTo(n.x <<\n 0, c), this.ctx.lineTo(n.x - this.tickLength << 0, c), this.ctx.stroke()), 0 === this.labelAngle ? (q.textBlock.y = n.y, q.textBlock.x = \"inside\" === this.labelPlacement ? n.x + this.tickLength + 5 : n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5) : (q.textBlock.y = \"inside\" === this.labelPlacement ? n.y : n.y - q.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle), q.textBlock.x = \"inside\" === this.labelPlacement ? n.x + this.tickLength + 5 : 0 < this.labelAngle ? n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) -\n this.tickLength - 5 : n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) + (q.textBlock.height - q.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) - this.tickLength));\n \"inside\" === this.labelPlacement && this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (h = 0; h < a._labels.length; h++)\n if (q = a._labels[h], !(q.position < a.viewportMinimum || q.position > a.viewportMaximum || d && 0 !== g++ % 2 && a.labelAutoFit) && (n = a.getPixelCoordinatesOnAxis(q.position), a.tickThickness)) {\n a.ctx.lineWidth = a.tickThickness;\n a.ctx.strokeStyle = a.tickColor;\n var b = 1 === a.ctx.lineWidth % 2 ? (n.y << 0) + 0.5 : n.y << 0;\n a.ctx.save();\n a.ctx.beginPath();\n a.ctx.moveTo(n.x << 0, b);\n a.ctx.lineTo(n.x + a.tickLength << 0, b);\n a.ctx.stroke();\n a.ctx.restore()\n }\n }, this);\n this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.bounds.x1 + 1, this._titleTextBlock.y = this.lineCoordinates.height / 2 + this._titleTextBlock.width / 2 + this.lineCoordinates.y1, this.titleMaxWidth = this._titleTextBlock.maxWidth, this._titleTextBlock.render(!0))\n } else if (\"right\" ===\n this._position) {\n for (h = 0; h < this._labels.length; h++) q = this._labels[h], q.position < this.viewportMinimum || (q.position > this.viewportMaximum || d && 0 !== g++ % 2 && this.labelAutoFit) || (n = this.getPixelCoordinatesOnAxis(q.position), this.tickThickness && \"inside\" != this.labelPlacement && (this.ctx.lineWidth = this.tickThickness, this.ctx.strokeStyle = this.tickColor, c = 1 === this.ctx.lineWidth % 2 ? (n.y << 0) + 0.5 : n.y << 0, this.ctx.beginPath(), this.ctx.moveTo(n.x << 0, c), this.ctx.lineTo(n.x + this.tickLength << 0, c), this.ctx.stroke()), 0 === this.labelAngle ?\n (q.textBlock.y = n.y, q.textBlock.x = \"inside\" === this.labelPlacement ? n.x - q.textBlock.width - this.tickLength - 5 : n.x + this.tickLength + 5) : (q.textBlock.y = \"inside\" === this.labelPlacement ? n.y - q.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) : 0 > this.labelAngle ? n.y : n.y - (q.textBlock.height - q.textBlock.fontSize / 2 - 5) * Math.cos(Math.PI / 180 * this.labelAngle), q.textBlock.x = \"inside\" === this.labelPlacement ? n.x - q.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5 : 0 < this.labelAngle ? n.x + (q.textBlock.height -\n q.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) + this.tickLength : n.x + this.tickLength + 5));\n \"inside\" === this.labelPlacement && this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (h = 0; h < a._labels.length; h++)\n if (q = a._labels[h], !(q.position < a.viewportMinimum || q.position > a.viewportMaximum || d && 0 !== g++ % 2 && a.labelAutoFit) && (n = a.getPixelCoordinatesOnAxis(q.position), a.tickThickness)) {\n a.ctx.lineWidth = a.tickThickness;\n a.ctx.strokeStyle = a.tickColor;\n var b = 1 === a.ctx.lineWidth % 2 ? (n.y <<\n 0) + 0.5 : n.y << 0;\n a.ctx.save();\n a.ctx.beginPath();\n a.ctx.moveTo(n.x << 0, b);\n a.ctx.lineTo(n.x - a.tickLength << 0, b);\n a.ctx.stroke();\n a.ctx.restore()\n }\n }, this);\n this.title && (this._titleTextBlock.measureText(), this._titleTextBlock.x = this.bounds.x2 - 1, this._titleTextBlock.y = this.lineCoordinates.height / 2 - this._titleTextBlock.width / 2 + this.lineCoordinates.y1, this.titleMaxWidth = this._titleTextBlock.maxWidth, this._titleTextBlock.render(!0))\n }\n g = 0;\n if (\"inside\" === this.labelPlacement) this.chart.addEventListener(\"dataAnimationIterationEnd\",\n function () {\n for (h = 0; h < a._labels.length; h++) q = a._labels[h], q.position < a.viewportMinimum || (q.position > a.viewportMaximum || d && 0 !== g++ % 2 && a.labelAutoFit) || (a.ctx.save(), a.ctx.beginPath(), q.textBlock.render(!0), a.ctx.restore())\n }, this);\n else\n for (h = 0; h < this._labels.length; h++) q = this._labels[h], q.position < this.viewportMinimum || (q.position > this.viewportMaximum || d && 0 !== g++ % 2 && this.labelAutoFit) || q.textBlock.render(!0)\n };\n z.prototype.renderInterlacedColors = function () {\n var a = this.chart.plotArea.ctx,\n d, b, c = this.chart.plotArea,\n e = 0;\n d = !0;\n if ((\"bottom\" === this._position || \"top\" === this._position) && this.interlacedColor)\n for (a.fillStyle = this.interlacedColor, e = 0; e < this._labels.length; e++) d ? (d = this.getPixelCoordinatesOnAxis(this._labels[e].position), b = e + 1 > this._labels.length - 1 ? this.getPixelCoordinatesOnAxis(this.viewportMaximum) : this.getPixelCoordinatesOnAxis(this._labels[e + 1].position), a.fillRect(Math.min(b.x, d.x), c.y1, Math.abs(b.x - d.x), Math.abs(c.y1 - c.y2)), d = !1) : d = !0;\n else if ((\"left\" === this._position || \"right\" === this._position) && this.interlacedColor)\n for (a.fillStyle =\n this.interlacedColor, e = 0; e < this._labels.length; e++) d ? (b = this.getPixelCoordinatesOnAxis(this._labels[e].position), d = e + 1 > this._labels.length - 1 ? this.getPixelCoordinatesOnAxis(this.viewportMaximum) : this.getPixelCoordinatesOnAxis(this._labels[e + 1].position), a.fillRect(c.x1, Math.min(b.y, d.y), Math.abs(c.x1 - c.x2), Math.abs(d.y - b.y)), d = !1) : d = !0;\n a.beginPath()\n };\n z.prototype.renderStripLinesOfThicknessType = function (a) {\n if (this.stripLines && 0 < this.stripLines.length && a) {\n for (var d = this, b, c = 0, e = 0, g = !1, m = !1, l = [], k = [],\n m = !1, c = 0; c < this.stripLines.length; c++) {\n var h = this.stripLines[c];\n h._thicknessType === a && (\"pixel\" === a && (h.value < this.viewportMinimum || h.value > this.viewportMaximum || u(h.value) || isNaN(this.range)) || l.push(h))\n }\n for (c = 0; c < this._stripLineLabels.length; c++)\n if (h = this.stripLines[c], b = this._stripLineLabels[c], !(b.position < this.viewportMinimum || b.position > this.viewportMaximum || isNaN(this.range))) {\n a = this.getPixelCoordinatesOnAxis(b.position);\n if (\"outside\" === b.stripLine.labelPlacement)\n if (h && (this.ctx.strokeStyle =\n h.color, \"pixel\" === h._thicknessType && (this.ctx.lineWidth = h.thickness)), \"bottom\" === this._position) {\n var p = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0;\n this.ctx.beginPath();\n this.ctx.moveTo(p, a.y << 0);\n this.ctx.lineTo(p, a.y + this.tickLength << 0);\n this.ctx.stroke();\n 0 === this.labelAngle ? (a.x -= b.textBlock.width / 2, a.y += this.tickLength + b.textBlock.fontSize / 2) : (a.x -= 0 > this.labelAngle ? b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0, a.y += this.tickLength + Math.abs(0 > this.labelAngle ? b.textBlock.width * Math.sin(Math.PI /\n 180 * this.labelAngle) - 5 : 5))\n } else \"top\" === this._position ? (p = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0, this.ctx.beginPath(), this.ctx.moveTo(p, a.y << 0), this.ctx.lineTo(p, a.y - this.tickLength << 0), this.ctx.stroke(), 0 === this.labelAngle ? (a.x -= b.textBlock.width / 2, a.y -= this.tickLength + b.textBlock.height) : (a.x += (b.textBlock.height - this.tickLength - this.labelFontSize / 2) * Math.sin(Math.PI / 180 * this.labelAngle) - (0 < this.labelAngle ? b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) : 0), a.y -= this.tickLength + (b.textBlock.height *\n Math.cos(Math.PI / 180 * this.labelAngle) + (0 < this.labelAngle ? b.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle) : 0)))) : \"left\" === this._position ? (p = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, this.ctx.beginPath(), this.ctx.moveTo(a.x << 0, p), this.ctx.lineTo(a.x - this.tickLength << 0, p), this.ctx.stroke(), 0 === this.labelAngle ? a.x = a.x - b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5 : (a.y -= b.textBlock.width * Math.sin(Math.PI / 180 * this.labelAngle), a.x = 0 < this.labelAngle ? a.x - b.textBlock.width *\n Math.cos(Math.PI / 180 * this.labelAngle) - this.tickLength - 5 : a.x - b.textBlock.width * Math.cos(Math.PI / 180 * this.labelAngle) + (b.textBlock.height - b.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) - this.tickLength)) : \"right\" === this._position && (p = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, this.ctx.beginPath(), this.ctx.moveTo(a.x << 0, p), this.ctx.lineTo(a.x + this.tickLength << 0, p), this.ctx.stroke(), 0 === this.labelAngle ? a.x = a.x + this.tickLength + 5 : (a.y = 0 > this.labelAngle ? a.y : a.y - (b.textBlock.height - b.textBlock.fontSize /\n 2 - 5) * Math.cos(Math.PI / 180 * this.labelAngle), a.x = 0 < this.labelAngle ? a.x + (b.textBlock.height - b.textBlock.fontSize / 2 - 5) * Math.sin(Math.PI / 180 * this.labelAngle) + this.tickLength : a.x + this.tickLength + 5));\n else b.textBlock.angle = -90, \"bottom\" === this._position ? (b.textBlock.maxWidth = this.options.stripLines[c].labelMaxWidth ? this.options.stripLines[c].labelMaxWidth : this.chart.plotArea.height - 3, b.textBlock.measureText(), a.x - b.textBlock.height > this.chart.plotArea.x1 ? u(h.startValue) ? a.x -= b.textBlock.height - b.textBlock.fontSize /\n 2 : a.x -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3 : (b.textBlock.angle = 90, u(h.startValue) ? a.x += b.textBlock.height - b.textBlock.fontSize / 2 : a.x += b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3), a.y = -90 === b.textBlock.angle ? \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.y2 - 3 : \"center\" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 + b.textBlock.width) / 2 : this.chart.plotArea.y1 + b.textBlock.width + 3 : \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.y2 - b.textBlock.width - 3 : \"center\" ===\n b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 - b.textBlock.width) / 2 : this.chart.plotArea.y1 + 3) : \"top\" === this._position ? (b.textBlock.maxWidth = this.options.stripLines[c].labelMaxWidth ? this.options.stripLines[c].labelMaxWidth : this.chart.plotArea.height - 3, b.textBlock.measureText(), a.x - b.textBlock.height > this.chart.plotArea.x1 ? u(h.startValue) ? a.x -= b.textBlock.height - b.textBlock.fontSize / 2 : a.x -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3 : (b.textBlock.angle = 90, u(h.startValue) ? a.x +=\n b.textBlock.height - b.textBlock.fontSize / 2 : a.x += b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3), a.y = -90 === b.textBlock.angle ? \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.y1 + b.textBlock.width + 3 : \"center\" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 + b.textBlock.width) / 2 : this.chart.plotArea.y2 - 3 : \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.y1 + 3 : \"center\" === b.stripLine.labelAlign ? (this.chart.plotArea.y2 + this.chart.plotArea.y1 - b.textBlock.width) / 2 : this.chart.plotArea.y2 -\n b.textBlock.width - 3) : \"left\" === this._position ? (b.textBlock.maxWidth = this.options.stripLines[c].labelMaxWidth ? this.options.stripLines[c].labelMaxWidth : this.chart.plotArea.width - 3, b.textBlock.angle = 0, b.textBlock.measureText(), a.y - b.textBlock.height > this.chart.plotArea.y1 ? u(h.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize + 3 : a.y - b.textBlock.height < this.chart.plotArea.y2 ? a.y += b.textBlock.fontSize / 2 + 3 : u(h.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize /\n 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize + 3, a.x = \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.x1 + 3 : \"center\" === b.stripLine.labelAlign ? (this.chart.plotArea.x2 + this.chart.plotArea.x1) / 2 - b.textBlock.width / 2 : this.chart.plotArea.x2 - b.textBlock.width - 3) : \"right\" === this._position && (b.textBlock.maxWidth = this.options.stripLines[c].labelMaxWidth ? this.options.stripLines[c].labelMaxWidth : this.chart.plotArea.width - 3, b.textBlock.angle = 0, b.textBlock.measureText(), a.y - +b.textBlock.height > this.chart.plotArea.y1 ?\n u(h.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 - 3 : a.y - b.textBlock.height < this.chart.plotArea.y2 ? a.y += b.textBlock.fontSize / 2 + 3 : u(h.startValue) ? a.y -= b.textBlock.height - b.textBlock.fontSize / 2 : a.y -= b.textBlock.height / 2 - b.textBlock.fontSize / 2 + 3, a.x = \"near\" === b.stripLine.labelAlign ? this.chart.plotArea.x2 - b.textBlock.width - 3 : \"center\" === b.stripLine.labelAlign ? (this.chart.plotArea.x2 + this.chart.plotArea.x1) / 2 - b.textBlock.width / 2 : this.chart.plotArea.x1 +\n 3);\n b.textBlock.x = a.x;\n b.textBlock.y = a.y;\n k.push(b)\n } if (!m) {\n m = !1;\n this.ctx.save();\n this.ctx.beginPath();\n this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height);\n this.ctx.clip();\n for (c = 0; c < l.length; c++) h = l[c], h.showOnTop ? g || (g = !0, this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n this.ctx.save();\n this.ctx.beginPath();\n this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height);\n this.ctx.clip();\n for (e = 0; e < l.length; e++) h = l[e], h.showOnTop && h.render();\n this.ctx.restore()\n }, h)) : h.render();\n for (c = 0; c < k.length; c++) b = k[c], b.stripLine.showOnTop ? m || (m = !0, this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (e = 0; e < k.length; e++) b = k[e], \"inside\" === b.stripLine.labelPlacement && b.stripLine.showOnTop && (d.ctx.save(), d.ctx.beginPath(), d.ctx.rect(d.chart.plotArea.x1, d.chart.plotArea.y1, d.chart.plotArea.width, d.chart.plotArea.height), d.ctx.clip(), b.textBlock.render(!0), d.ctx.restore())\n }, b.textBlock)) :\n \"inside\" === b.stripLine.labelPlacement && b.textBlock.render(!0);\n this.ctx.restore();\n m = !0\n }\n if (m)\n for (m = !1, c = 0; c < k.length; c++) b = k[c], b.stripLine.showOnTop ? m || (m = !0, this.chart.addEventListener(\"dataAnimationIterationEnd\", function () {\n for (e = 0; e < k.length; e++) b = k[e], \"outside\" === b.stripLine.labelPlacement && b.stripLine.showOnTop && b.textBlock.render(!0)\n }, b.textBlock)) : \"outside\" === b.stripLine.labelPlacement && b.textBlock.render(!0)\n }\n };\n z.prototype.renderBreaksBackground = function () {\n this.chart._breaksCanvas && (this.scaleBreaks &&\n 0 < this.scaleBreaks._appliedBreaks.length && this.maskCanvas) && (this.chart._breaksCanvasCtx.save(), this.chart._breaksCanvasCtx.beginPath(), this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height), this.chart._breaksCanvasCtx.clip(), this.chart._breaksCanvasCtx.drawImage(this.maskCanvas, 0, 0, this.chart.width, this.chart.height), this.chart._breaksCanvasCtx.restore())\n };\n z.prototype.createMask = function () {\n if (this.scaleBreaks && 0 < this.scaleBreaks._appliedBreaks.length) {\n var a =\n this.scaleBreaks._appliedBreaks;\n r ? (this.maskCanvas = ta(this.chart.width, this.chart.height), this.maskCtx = this.maskCanvas.getContext(\"2d\")) : (this.maskCanvas = this.chart.plotArea.canvas, this.maskCtx = this.chart.plotArea.ctx);\n this.maskCtx.save();\n this.maskCtx.beginPath();\n this.maskCtx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height);\n this.maskCtx.clip();\n for (var d = 0; d < a.length; d++) a[d].endValue < this.viewportMinimum || (a[d].startValue > this.viewportMaximum ||\n isNaN(this.range)) || a[d].render(this.maskCtx);\n this.maskCtx.restore()\n }\n };\n z.prototype.renderCrosshair = function (a, d) {\n this.crosshair.render(a, d)\n };\n z.prototype.renderGrid = function () {\n if (this.gridThickness && 0 < this.gridThickness) {\n var a = this.chart.ctx;\n a.save();\n var d, b = this.chart.plotArea;\n a.lineWidth = this.gridThickness;\n a.strokeStyle = this.gridColor;\n a.setLineDash && a.setLineDash(R(this.gridDashType, this.gridThickness));\n if (\"bottom\" === this._position || \"top\" === this._position)\n for (c = 0; c < this._labels.length; c++) this._labels[c].position <\n this.viewportMinimum || (this._labels[c].position > this.viewportMaximum || this._labels[c].breaksLabelType) || (a.beginPath(), d = this.getPixelCoordinatesOnAxis(this._labels[c].position), d = 1 === a.lineWidth % 2 ? (d.x << 0) + 0.5 : d.x << 0, a.moveTo(d, b.y1 << 0), a.lineTo(d, b.y2 << 0), a.stroke());\n else if (\"left\" === this._position || \"right\" === this._position)\n for (var c = 0; c < this._labels.length; c++) this._labels[c].position < this.viewportMinimum || (this._labels[c].position > this.viewportMaximum || this._labels[c].breaksLabelType) || (a.beginPath(),\n d = this.getPixelCoordinatesOnAxis(this._labels[c].position), d = 1 === a.lineWidth % 2 ? (d.y << 0) + 0.5 : d.y << 0, a.moveTo(b.x1 << 0, d), a.lineTo(b.x2 << 0, d), a.stroke());\n a.restore()\n }\n };\n z.prototype.renderAxisLine = function () {\n var a = this.chart.ctx,\n d = r ? this.chart._preRenderCtx : a,\n b = Math.ceil(this.tickThickness / (this.reversed ? -2 : 2)),\n c = Math.ceil(this.tickThickness / (this.reversed ? 2 : -2)),\n e, g;\n d.save();\n if (\"bottom\" === this._position || \"top\" === this._position) {\n if (this.lineThickness) {\n this.reversed ? (e = this.lineCoordinates.x2, g = this.lineCoordinates.x1) :\n (e = this.lineCoordinates.x1, g = this.lineCoordinates.x2);\n d.lineWidth = this.lineThickness;\n d.strokeStyle = this.lineColor ? this.lineColor : \"black\";\n d.setLineDash && d.setLineDash(R(this.lineDashType, this.lineThickness));\n var m = 1 === this.lineThickness % 2 ? (this.lineCoordinates.y1 << 0) + 0.5 : this.lineCoordinates.y1 << 0;\n d.beginPath();\n if (this.scaleBreaks && !u(this.scaleBreaks.firstBreakIndex))\n if (u(this.scaleBreaks.lastBreakIndex)) e = this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel + c;\n else\n for (var l =\n this.scaleBreaks.firstBreakIndex; l <= this.scaleBreaks.lastBreakIndex; l++) d.moveTo(e, m), d.lineTo(this.scaleBreaks._appliedBreaks[l].startPixel + b, m), e = this.scaleBreaks._appliedBreaks[l].endPixel + c;\n e && (d.moveTo(e, m), d.lineTo(g, m));\n d.stroke()\n }\n } else if ((\"left\" === this._position || \"right\" === this._position) && this.lineThickness) {\n this.reversed ? (e = this.lineCoordinates.y1, g = this.lineCoordinates.y2) : (e = this.lineCoordinates.y2, g = this.lineCoordinates.y1);\n d.lineWidth = this.lineThickness;\n d.strokeStyle = this.lineColor;\n d.setLineDash && d.setLineDash(R(this.lineDashType, this.lineThickness));\n m = 1 === this.lineThickness % 2 ? (this.lineCoordinates.x1 << 0) + 0.5 : this.lineCoordinates.x1 << 0;\n d.beginPath();\n if (this.scaleBreaks && !u(this.scaleBreaks.firstBreakIndex))\n if (u(this.scaleBreaks.lastBreakIndex)) e = this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel + b;\n else\n for (l = this.scaleBreaks.firstBreakIndex; l <= this.scaleBreaks.lastBreakIndex; l++) d.moveTo(m, e), d.lineTo(m, this.scaleBreaks._appliedBreaks[l].startPixel + c),\n e = this.scaleBreaks._appliedBreaks[l].endPixel + b;\n e && (d.moveTo(m, e), d.lineTo(m, g));\n d.stroke()\n }\n r && (a.drawImage(this.chart._preRenderCanvas, 0, 0, this.chart.width, this.chart.height), this.chart._breaksCanvasCtx && this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas, 0, 0, this.chart.width, this.chart.height), d.clearRect(0, 0, this.chart.width, this.chart.height));\n d.restore()\n };\n z.prototype.getPixelCoordinatesOnAxis = function (a) {\n var d = {};\n if (\"bottom\" === this._position || \"top\" === this._position) d.x = this.convertValueToPixel(a),\n d.y = this.lineCoordinates.y1;\n if (\"left\" === this._position || \"right\" === this._position) d.y = this.convertValueToPixel(a), d.x = this.lineCoordinates.x2;\n return d\n };\n z.prototype.convertPixelToValue = function (a) {\n if (\"undefined\" === typeof a) return null;\n var d = 0,\n b = 0,\n c, d = !0,\n e = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [],\n b = \"number\" === typeof a ? a : \"left\" === this._position || \"right\" === this._position ? a.y : a.x;\n if (this.logarithmic) {\n a = c = Math.pow(this.logarithmBase, (b - this.conversionParameters.reference) / this.conversionParameters.pixelPerUnit);\n if (b <= this.conversionParameters.reference === (\"left\" === this._position || \"right\" === this._position) !== this.reversed)\n for (b = 0; b < e.length; b++) {\n if (!(e[b].endValue < this.conversionParameters.minimum))\n if (d)\n if (e[b].startValue < this.conversionParameters.minimum) {\n if (1 < e[b].size && this.conversionParameters.minimum * Math.pow(e[b].endValue / e[b].startValue, Math.log(c) / Math.log(e[b].size)) < e[b].endValue) {\n a = Math.pow(e[b].endValue / e[b].startValue, Math.log(c) / Math.log(e[b].size));\n break\n } else a *= e[b].endValue / this.conversionParameters.minimum /\n Math.pow(e[b].size, Math.log(e[b].endValue / this.conversionParameters.minimum) / Math.log(e[b].endValue / e[b].startValue)), c /= Math.pow(e[b].size, Math.log(e[b].endValue / this.conversionParameters.minimum) / Math.log(e[b].endValue / e[b].startValue));\n d = !1\n } else if (c > e[b].startValue / this.conversionParameters.minimum) {\n c /= e[b].startValue / this.conversionParameters.minimum;\n if (c < e[b].size) {\n a *= Math.pow(e[b].endValue / e[b].startValue, 1 === e[b].size ? 1 : Math.log(c) / Math.log(e[b].size)) / c;\n break\n } else a *= e[b].endValue / e[b].startValue /\n e[b].size;\n c /= e[b].size;\n d = !1\n } else break;\n else if (c > e[b].startValue / e[b - 1].endValue) {\n c /= e[b].startValue / e[b - 1].endValue;\n if (c < e[b].size) {\n a *= Math.pow(e[b].endValue / e[b].startValue, 1 === e[b].size ? 1 : Math.log(c) / Math.log(e[b].size)) / c;\n break\n } else a *= e[b].endValue / e[b].startValue / e[b].size;\n c /= e[b].size\n } else break\n } else\n for (b = e.length - 1; 0 <= b; b--)\n if (!(e[b].startValue > this.conversionParameters.minimum))\n if (d)\n if (e[b].endValue > this.conversionParameters.minimum) {\n if (1 < e[b].size && this.conversionParameters.minimum * Math.pow(e[b].endValue /\n e[b].startValue, Math.log(c) / Math.log(e[b].size)) > e[b].startValue) {\n a = Math.pow(e[b].endValue / e[b].startValue, Math.log(c) / Math.log(e[b].size));\n break\n } else a *= e[b].startValue / this.conversionParameters.minimum * Math.pow(e[b].size, Math.log(e[b].startValue / this.conversionParameters.minimum) / Math.log(e[b].endValue / e[b].startValue)) * c, c *= Math.pow(e[b].size, Math.log(this.conversionParameters.minimum / e[b].startValue) / Math.log(e[b].endValue / e[b].startValue));\n d = !1\n } else if (c < e[b].endValue / this.conversionParameters.minimum) {\n c /=\n e[b].endValue / this.conversionParameters.minimum;\n if (c > 1 / e[b].size) {\n a *= Math.pow(e[b].endValue / e[b].startValue, 1 >= e[b].size ? 1 : Math.log(c) / Math.log(e[b].size)) * c;\n break\n } else a /= e[b].endValue / e[b].startValue / e[b].size;\n c *= e[b].size;\n d = !1\n } else break;\n else if (c < e[b].endValue / e[b + 1].startValue) {\n c /= e[b].endValue / e[b + 1].startValue;\n if (c > 1 / e[b].size) {\n a *= Math.pow(e[b].endValue / e[b].startValue, 1 >= e[b].size ? 1 : Math.log(c) / Math.log(e[b].size)) * c;\n break\n } else a /= e[b].endValue / e[b].startValue / e[b].size;\n c *= e[b].size\n } else break;\n d = a * this.viewportMinimum\n } else {\n a = c = (b - this.conversionParameters.reference) / this.conversionParameters.pixelPerUnit;\n if (b <= this.conversionParameters.reference === (\"left\" === this._position || \"right\" === this._position) !== this.reversed)\n for (b = 0; b < e.length; b++) {\n if (!(e[b].endValue < this.conversionParameters.minimum))\n if (d)\n if (e[b].startValue < this.conversionParameters.minimum) {\n if (e[b].size && this.conversionParameters.minimum + c * (e[b].endValue - e[b].startValue) / e[b].size < e[b].endValue) {\n a = 0 >= e[b].size ? 0 : c * (e[b].endValue -\n e[b].startValue) / e[b].size;\n break\n } else a += e[b].endValue - this.conversionParameters.minimum - e[b].size * (e[b].endValue - this.conversionParameters.minimum) / (e[b].endValue - e[b].startValue), c -= e[b].size * (e[b].endValue - this.conversionParameters.minimum) / (e[b].endValue - e[b].startValue);\n d = !1\n } else if (c > e[b].startValue - this.conversionParameters.minimum) {\n c -= e[b].startValue - this.conversionParameters.minimum;\n if (c < e[b].size) {\n a += (e[b].endValue - e[b].startValue) * (0 === e[b].size ? 1 : c / e[b].size) - c;\n break\n } else a += e[b].endValue -\n e[b].startValue - e[b].size;\n c -= e[b].size;\n d = !1\n } else break;\n else if (c > e[b].startValue - e[b - 1].endValue) {\n c -= e[b].startValue - e[b - 1].endValue;\n if (c < e[b].size) {\n a += (e[b].endValue - e[b].startValue) * (0 === e[b].size ? 1 : c / e[b].size) - c;\n break\n } else a += e[b].endValue - e[b].startValue - e[b].size;\n c -= e[b].size\n } else break\n } else\n for (b = e.length - 1; 0 <= b; b--)\n if (!(e[b].startValue > this.conversionParameters.minimum))\n if (d)\n if (e[b].endValue > this.conversionParameters.minimum)\n if (e[b].size && this.conversionParameters.minimum + c * (e[b].endValue -\n e[b].startValue) / e[b].size > e[b].startValue) {\n a = 0 >= e[b].size ? 0 : c * (e[b].endValue - e[b].startValue) / e[b].size;\n break\n } else a += e[b].startValue - this.conversionParameters.minimum + e[b].size * (this.conversionParameters.minimum - e[b].startValue) / (e[b].endValue - e[b].startValue), c += e[b].size * (this.conversionParameters.minimum - e[b].startValue) / (e[b].endValue - e[b].startValue), d = !1;\n else if (c < e[b].endValue - this.conversionParameters.minimum) {\n c -= e[b].endValue - this.conversionParameters.minimum;\n if (c > -1 * e[b].size) {\n a += (e[b].endValue -\n e[b].startValue) * (0 === e[b].size ? 1 : c / e[b].size) + c;\n break\n } else a -= e[b].endValue - e[b].startValue - e[b].size;\n c += e[b].size;\n d = !1\n } else break;\n else if (c < e[b].endValue - e[b + 1].startValue) {\n c -= e[b].endValue - e[b + 1].startValue;\n if (c > -1 * e[b].size) {\n a += (e[b].endValue - e[b].startValue) * (0 === e[b].size ? 1 : c / e[b].size) + c;\n break\n } else a -= e[b].endValue - e[b].startValue - e[b].size;\n c += e[b].size\n } else break;\n d = this.conversionParameters.minimum + a\n }\n return d\n };\n z.prototype.convertValueToPixel = function (a) {\n a = this.getApparentDifference(this.conversionParameters.minimum,\n a, a);\n return this.logarithmic ? this.conversionParameters.reference + this.conversionParameters.pixelPerUnit * Math.log(a / this.conversionParameters.minimum) / this.conversionParameters.lnLogarithmBase + 0.5 << 0 : \"axisX\" === this.type ? this.conversionParameters.reference + this.conversionParameters.pixelPerUnit * (a - this.conversionParameters.minimum) + 0.5 << 0 : this.conversionParameters.reference + this.conversionParameters.pixelPerUnit * (a - this.conversionParameters.minimum) + 0.5\n };\n z.prototype.getApparentDifference = function (a,\n d, b, c) {\n var e = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [];\n if (this.logarithmic) {\n b = u(b) ? d / a : b;\n for (var g = 0; g < e.length && !(d < e[g].startValue); g++) a > e[g].endValue || (a <= e[g].startValue && d >= e[g].endValue ? b = b / e[g].endValue * e[g].startValue * e[g].size : a >= e[g].startValue && d >= e[g].endValue ? b = b / e[g].endValue * a * Math.pow(e[g].size, Math.log(e[g].endValue / a) / Math.log(e[g].endValue / e[g].startValue)) : a <= e[g].startValue && d <= e[g].endValue ? b = b / d * e[g].startValue * Math.pow(e[g].size, Math.log(d / e[g].startValue) / Math.log(e[g].endValue /\n e[g].startValue)) : !c && (a > e[g].startValue && d < e[g].endValue) && (b = a * Math.pow(e[g].size, Math.log(d / a) / Math.log(e[g].endValue / e[g].startValue))))\n } else\n for (b = u(b) ? Math.abs(d - a) : b, g = 0; g < e.length && !(d < e[g].startValue); g++) a > e[g].endValue || (a <= e[g].startValue && d >= e[g].endValue ? b = b - e[g].endValue + e[g].startValue + e[g].size : a > e[g].startValue && d >= e[g].endValue ? b = b - e[g].endValue + a + e[g].size * (e[g].endValue - a) / (e[g].endValue - e[g].startValue) : a <= e[g].startValue && d < e[g].endValue ? b = b - d + e[g].startValue + e[g].size * (d - e[g].startValue) /\n (e[g].endValue - e[g].startValue) : !c && (a > e[g].startValue && d < e[g].endValue) && (b = a + e[g].size * (d - a) / (e[g].endValue - e[g].startValue)));\n return b\n };\n z.prototype.setViewPortRange = function (a, d) {\n this.sessionVariables.newViewportMinimum = this.viewportMinimum = Math.min(a, d);\n this.sessionVariables.newViewportMaximum = this.viewportMaximum = Math.max(a, d)\n };\n z.prototype.getXValueAt = function (a) {\n if (!a) return null;\n var d = null;\n \"left\" === this._position ? d = this.convertPixelToValue(a.y) : \"bottom\" === this._position && (d = this.convertPixelToValue(a.x));\n return d\n };\n z.prototype.calculateValueToPixelConversionParameters = function (a) {\n a = this.scaleBreaks ? this.scaleBreaks._appliedBreaks : [];\n var d = {\n pixelPerUnit: null,\n minimum: null,\n reference: null\n },\n b = this.lineCoordinates.width,\n c = this.lineCoordinates.height,\n b = \"bottom\" === this._position || \"top\" === this._position ? b : c,\n c = Math.abs(this.range);\n if (this.logarithmic)\n for (var e = 0; e < a.length && !(this.viewportMaximum < a[e].startValue); e++) this.viewportMinimum > a[e].endValue || (this.viewportMinimum >= a[e].startValue && this.viewportMaximum <=\n a[e].endValue ? b = 0 : this.viewportMinimum <= a[e].startValue && this.viewportMaximum >= a[e].endValue ? (c = c / a[e].endValue * a[e].startValue, b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100) : b - Math.min(a[e].spacing, 0.1 * b)) : this.viewportMinimum > a[e].startValue && this.viewportMaximum >= a[e].endValue ? (c = c / a[e].endValue * this.viewportMinimum, b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100 * Math.log(a[e].endValue / this.viewportMinimum) / Math.log(a[e].endValue / a[e].startValue)) :\n b - Math.min(a[e].spacing, 0.1 * b) * Math.log(a[e].endValue / this.viewportMinimum) / Math.log(a[e].endValue / a[e].startValue)) : this.viewportMinimum <= a[e].startValue && this.viewportMaximum < a[e].endValue && (c = c / this.viewportMaximum * a[e].startValue, b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100 * Math.log(this.viewportMaximum / a[e].startValue) / Math.log(a[e].endValue / a[e].startValue)) : b - Math.min(a[e].spacing, 0.1 * b) * Math.log(this.viewportMaximum / a[e].startValue) / Math.log(a[e].endValue / a[e].startValue)));\n else\n for (e = 0; e < a.length && !(this.viewportMaximum < a[e].startValue); e++) this.viewportMinimum > a[e].endValue || (this.viewportMinimum >= a[e].startValue && this.viewportMaximum <= a[e].endValue ? b = 0 : this.viewportMinimum <= a[e].startValue && this.viewportMaximum >= a[e].endValue ? (c = c - a[e].endValue + a[e].startValue, b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100) : b - Math.min(a[e].spacing, 0.1 * b)) : this.viewportMinimum > a[e].startValue && this.viewportMaximum >= a[e].endValue ? (c = c - a[e].endValue + this.viewportMinimum,\n b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100 * (a[e].endValue - this.viewportMinimum) / (a[e].endValue - a[e].startValue)) : b - Math.min(a[e].spacing, 0.1 * b) * (a[e].endValue - this.viewportMinimum) / (a[e].endValue - a[e].startValue)) : this.viewportMinimum <= a[e].startValue && this.viewportMaximum < a[e].endValue && (c = c - this.viewportMaximum + a[e].startValue, b = 0 < a[e].spacing.toString().indexOf(\"%\") ? b * (1 - parseFloat(a[e].spacing) / 100 * (this.viewportMaximum - a[e].startValue) / (a[e].endValue - a[e].startValue)) :\n b - Math.min(a[e].spacing, 0.1 * b) * (this.viewportMaximum - a[e].startValue) / (a[e].endValue - a[e].startValue)));\n d.minimum = this.viewportMinimum;\n d.maximum = this.viewportMaximum;\n d.range = c;\n if (\"bottom\" === this._position || \"top\" === this._position) this.logarithmic ? (d.lnLogarithmBase = Math.log(this.logarithmBase), d.pixelPerUnit = (this.reversed ? -1 : 1) * b * d.lnLogarithmBase / Math.log(Math.abs(c))) : d.pixelPerUnit = (this.reversed ? -1 : 1) * b / Math.abs(c), d.reference = this.reversed ? this.lineCoordinates.x2 : this.lineCoordinates.x1;\n if (\"left\" ===\n this._position || \"right\" === this._position) this.logarithmic ? (d.lnLogarithmBase = Math.log(this.logarithmBase), d.pixelPerUnit = (this.reversed ? 1 : -1) * b * d.lnLogarithmBase / Math.log(Math.abs(c))) : d.pixelPerUnit = (this.reversed ? 1 : -1) * b / Math.abs(c), d.reference = this.reversed ? this.lineCoordinates.y1 : this.lineCoordinates.y2;\n this.conversionParameters = d\n };\n z.prototype.calculateAxisParameters = function () {\n if (this.logarithmic) this.calculateLogarithmicAxisParameters();\n else {\n var a = this.chart.layoutManager.getFreeSpace(),\n d = !1,\n b = !1;\n \"bottom\" === this._position || \"top\" === this._position ? (this.maxWidth = a.width, this.maxHeight = a.height) : (this.maxWidth = a.height, this.maxHeight = a.width);\n var a = \"axisX\" === this.type ? \"xySwapped\" === this.chart.plotInfo.axisPlacement ? 62 : 70 : \"xySwapped\" === this.chart.plotInfo.axisPlacement ? 50 : 40,\n c = 4;\n \"axisX\" === this.type && (c = 600 > this.maxWidth ? 8 : 6);\n var a = Math.max(c, Math.floor(this.maxWidth / a)),\n e, g, m, c = 0;\n !u(this.options.viewportMinimum) && (!u(this.options.viewportMaximum) && this.options.viewportMinimum >= this.options.viewportMaximum) &&\n (this.viewportMinimum = this.viewportMaximum = null);\n if (u(this.options.viewportMinimum) && !u(this.sessionVariables.newViewportMinimum) && !isNaN(this.sessionVariables.newViewportMinimum)) this.viewportMinimum = this.sessionVariables.newViewportMinimum;\n else if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) this.viewportMinimum = this.minimum;\n if (u(this.options.viewportMaximum) && !u(this.sessionVariables.newViewportMaximum) && !isNaN(this.sessionVariables.newViewportMaximum)) this.viewportMaximum = this.sessionVariables.newViewportMaximum;\n else if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) this.viewportMaximum = this.maximum;\n if (this.scaleBreaks)\n for (c = 0; c < this.scaleBreaks._appliedBreaks.length; c++)\n if ((!u(this.sessionVariables.newViewportMinimum) && this.sessionVariables.newViewportMinimum >= this.scaleBreaks._appliedBreaks[c].startValue || !u(this.options.minimum) && this.options.minimum >= this.scaleBreaks._appliedBreaks[c].startValue || !u(this.options.viewportMinimum) && this.viewportMinimum >= this.scaleBreaks._appliedBreaks[c].startValue) &&\n (!u(this.sessionVariables.newViewportMaximum) && this.sessionVariables.newViewportMaximum <= this.scaleBreaks._appliedBreaks[c].endValue || !u(this.options.maximum) && this.options.maximum <= this.scaleBreaks._appliedBreaks[c].endValue || !u(this.options.viewportMaximum) && this.viewportMaximum <= this.scaleBreaks._appliedBreaks[c].endValue)) {\n this.scaleBreaks._appliedBreaks.splice(c, 1);\n break\n } if (\"axisX\" === this.type) {\n if (this.dataSeries && 0 < this.dataSeries.length)\n for (e = 0; e < this.dataSeries.length; e++) \"dateTime\" === this.dataSeries[e].xValueType &&\n (b = !0);\n e = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin;\n g = null !== this.viewportMaximum ? this.viewportMaximum : this.dataInfo.viewPortMax;\n 0 === g - e && (c = \"undefined\" === typeof this.options.interval ? 0.4 : this.options.interval, g += c, e -= c);\n Infinity !== this.dataInfo.minDiff ? m = this.dataInfo.minDiff : 1 < g - e ? m = 0.5 * Math.abs(g - e) : (m = 1, b && (d = !0))\n } else \"axisY\" === this.type && (e = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin, g = null !== this.viewportMaximum ? this.viewportMaximum :\n this.dataInfo.viewPortMax, isFinite(e) || isFinite(g) ? isFinite(e) ? isFinite(g) || (g = e) : e = g : (g = \"undefined\" === typeof this.options.interval ? -Infinity : this.options.interval, e = \"undefined\" !== typeof this.options.interval || isFinite(this.dataInfo.minDiff) ? 0 : Infinity), 0 === e && 0 === g ? (g += 9, e = 0) : 0 === g - e ? (c = Math.min(Math.abs(0.01 * Math.abs(g)), 5), g += c, e -= c) : e > g ? (c = Math.min(0.01 * Math.abs(this.getApparentDifference(g, e, null, !0)), 5), 0 <= g ? e = g - c : g = isFinite(e) ? e + c : 0) : (c = Math.min(0.01 * Math.abs(this.getApparentDifference(e, g,\n null, !0)), 0.05), 0 !== g && (g += c), 0 !== e && (e -= c)), m = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < g - e ? 0.5 * Math.abs(g - e) : 1, this.includeZero && (null === this.viewportMinimum || isNaN(this.viewportMinimum)) && 0 < e && (e = 0), this.includeZero && (null === this.viewportMaximum || isNaN(this.viewportMaximum)) && 0 > g && (g = 0));\n c = this.getApparentDifference(isNaN(this.viewportMinimum) || null === this.viewportMinimum ? e : this.viewportMinimum, isNaN(this.viewportMaximum) || null === this.viewportMaximum ? g : this.viewportMaximum, null,\n !0);\n if (\"axisX\" === this.type && b) {\n this.intervalType || (c / 1 <= a ? (this.interval = 1, this.intervalType = \"millisecond\") : c / 2 <= a ? (this.interval = 2, this.intervalType = \"millisecond\") : c / 5 <= a ? (this.interval = 5, this.intervalType = \"millisecond\") : c / 10 <= a ? (this.interval = 10, this.intervalType = \"millisecond\") : c / 20 <= a ? (this.interval = 20, this.intervalType = \"millisecond\") : c / 50 <= a ? (this.interval = 50, this.intervalType = \"millisecond\") : c / 100 <= a ? (this.interval = 100, this.intervalType = \"millisecond\") : c / 200 <= a ? (this.interval = 200, this.intervalType =\n \"millisecond\") : c / 250 <= a ? (this.interval = 250, this.intervalType = \"millisecond\") : c / 300 <= a ? (this.interval = 300, this.intervalType = \"millisecond\") : c / 400 <= a ? (this.interval = 400, this.intervalType = \"millisecond\") : c / 500 <= a ? (this.interval = 500, this.intervalType = \"millisecond\") : c / (1 * S.secondDuration) <= a ? (this.interval = 1, this.intervalType = \"second\") : c / (2 * S.secondDuration) <= a ? (this.interval = 2, this.intervalType = \"second\") : c / (5 * S.secondDuration) <= a ? (this.interval = 5, this.intervalType = \"second\") : c / (10 * S.secondDuration) <= a ? (this.interval =\n 10, this.intervalType = \"second\") : c / (15 * S.secondDuration) <= a ? (this.interval = 15, this.intervalType = \"second\") : c / (20 * S.secondDuration) <= a ? (this.interval = 20, this.intervalType = \"second\") : c / (30 * S.secondDuration) <= a ? (this.interval = 30, this.intervalType = \"second\") : c / (1 * S.minuteDuration) <= a ? (this.interval = 1, this.intervalType = \"minute\") : c / (2 * S.minuteDuration) <= a ? (this.interval = 2, this.intervalType = \"minute\") : c / (5 * S.minuteDuration) <= a ? (this.interval = 5, this.intervalType = \"minute\") : c / (10 * S.minuteDuration) <= a ? (this.interval =\n 10, this.intervalType = \"minute\") : c / (15 * S.minuteDuration) <= a ? (this.interval = 15, this.intervalType = \"minute\") : c / (20 * S.minuteDuration) <= a ? (this.interval = 20, this.intervalType = \"minute\") : c / (30 * S.minuteDuration) <= a ? (this.interval = 30, this.intervalType = \"minute\") : c / (1 * S.hourDuration) <= a ? (this.interval = 1, this.intervalType = \"hour\") : c / (2 * S.hourDuration) <= a ? (this.interval = 2, this.intervalType = \"hour\") : c / (3 * S.hourDuration) <= a ? (this.interval = 3, this.intervalType = \"hour\") : c / (6 * S.hourDuration) <= a ? (this.interval = 6, this.intervalType =\n \"hour\") : c / (1 * S.dayDuration) <= a ? (this.interval = 1, this.intervalType = \"day\") : c / (2 * S.dayDuration) <= a ? (this.interval = 2, this.intervalType = \"day\") : c / (4 * S.dayDuration) <= a ? (this.interval = 4, this.intervalType = \"day\") : c / (1 * S.weekDuration) <= a ? (this.interval = 1, this.intervalType = \"week\") : c / (2 * S.weekDuration) <= a ? (this.interval = 2, this.intervalType = \"week\") : c / (3 * S.weekDuration) <= a ? (this.interval = 3, this.intervalType = \"week\") : c / (1 * S.monthDuration) <= a ? (this.interval = 1, this.intervalType = \"month\") : c / (2 * S.monthDuration) <= a ? (this.interval =\n 2, this.intervalType = \"month\") : c / (3 * S.monthDuration) <= a ? (this.interval = 3, this.intervalType = \"month\") : c / (6 * S.monthDuration) <= a ? (this.interval = 6, this.intervalType = \"month\") : (this.interval = c / (1 * S.yearDuration) <= a ? 1 : c / (2 * S.yearDuration) <= a ? 2 : c / (4 * S.yearDuration) <= a ? 4 : Math.floor(z.getNiceNumber(c / (a - 1), !0) / S.yearDuration), this.intervalType = \"year\"));\n if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) this.viewportMinimum = e - m / 2;\n if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) this.viewportMaximum =\n g + m / 2;\n d ? this.autoValueFormatString = \"MMM DD YYYY HH:mm\" : \"year\" === this.intervalType ? this.autoValueFormatString = \"YYYY\" : \"month\" === this.intervalType ? this.autoValueFormatString = \"MMM YYYY\" : \"week\" === this.intervalType ? this.autoValueFormatString = \"MMM DD YYYY\" : \"day\" === this.intervalType ? this.autoValueFormatString = \"MMM DD YYYY\" : \"hour\" === this.intervalType ? this.autoValueFormatString = \"hh:mm TT\" : \"minute\" === this.intervalType ? this.autoValueFormatString = \"hh:mm TT\" : \"second\" === this.intervalType ? this.autoValueFormatString =\n \"hh:mm:ss TT\" : \"millisecond\" === this.intervalType && (this.autoValueFormatString = \"fff'ms'\");\n this.valueFormatString || (this.valueFormatString = this.autoValueFormatString)\n } else {\n this.intervalType = \"number\";\n c = z.getNiceNumber(c, !1);\n this.interval = this.options && 0 < this.options.interval ? this.options.interval : z.getNiceNumber(c / (a - 1), !0);\n if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) this.viewportMinimum = \"axisX\" === this.type ? e - m / 2 : Math.floor(e / this.interval) * this.interval;\n if (null === this.viewportMaximum ||\n isNaN(this.viewportMaximum)) this.viewportMaximum = \"axisX\" === this.type ? g + m / 2 : Math.ceil(g / this.interval) * this.interval;\n 0 === this.viewportMaximum && 0 === this.viewportMinimum && (0 === this.options.viewportMinimum ? this.viewportMaximum += 10 : 0 === this.options.viewportMaximum && (this.viewportMinimum -= 10), this.options && \"undefined\" === typeof this.options.interval && (this.interval = z.getNiceNumber((this.viewportMaximum - this.viewportMinimum) / (a - 1), !0)))\n }\n if (null === this.minimum || null === this.maximum)\n if (\"axisX\" === this.type ? (e =\n null !== this.minimum ? this.minimum : this.dataInfo.min, g = null !== this.maximum ? this.maximum : this.dataInfo.max, 0 === g - e && (c = \"undefined\" === typeof this.options.interval ? 0.4 : this.options.interval, g += c, e -= c), m = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < g - e ? 0.5 * Math.abs(g - e) : 1) : \"axisY\" === this.type && (e = null !== this.minimum ? this.minimum : this.dataInfo.min, g = null !== this.maximum ? this.maximum : this.dataInfo.max, isFinite(e) || isFinite(g) ? 0 === e && 0 === g ? (g += 9, e = 0) : 0 === g - e ? (c = Math.min(Math.abs(0.01 * Math.abs(g)),\n 5), g += c, e -= c) : e > g ? (c = Math.min(0.01 * Math.abs(this.getApparentDifference(g, e, null, !0)), 5), 0 <= g ? e = g - c : g = isFinite(e) ? e + c : 0) : (c = Math.min(0.01 * Math.abs(this.getApparentDifference(e, g, null, !0)), 0.05), 0 !== g && (g += c), 0 !== e && (e -= c)) : (g = \"undefined\" === typeof this.options.interval ? -Infinity : this.options.interval, e = \"undefined\" !== typeof this.options.interval || isFinite(this.dataInfo.minDiff) ? 0 : Infinity), m = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : 1 < g - e ? 0.5 * Math.abs(g - e) : 1, this.includeZero && (null === this.minimum ||\n isNaN(this.minimum)) && 0 < e && (e = 0), this.includeZero && (null === this.maximum || isNaN(this.maximum)) && 0 > g && (g = 0)), Math.abs(this.getApparentDifference(e, g, null, !0)), \"axisX\" === this.type && b) {\n this.valueType = \"dateTime\";\n if (null === this.minimum || isNaN(this.minimum)) this.minimum = e - m / 2;\n if (null === this.maximum || isNaN(this.maximum)) this.maximum = g + m / 2\n } else this.intervalType = this.valueType = \"number\", null === this.minimum && (this.minimum = \"axisX\" === this.type ? e - m / 2 : Math.floor(e / this.interval) * this.interval, this.minimum = Math.min(this.minimum,\n null === this.sessionVariables.viewportMinimum || isNaN(this.sessionVariables.viewportMinimum) ? Infinity : this.sessionVariables.viewportMinimum)), null === this.maximum && (this.maximum = \"axisX\" === this.type ? g + m / 2 : Math.ceil(g / this.interval) * this.interval, this.maximum = Math.max(this.maximum, null === this.sessionVariables.viewportMaximum || isNaN(this.sessionVariables.viewportMaximum) ? -Infinity : this.sessionVariables.viewportMaximum)), 0 === this.maximum && 0 === this.minimum && (0 === this.options.minimum ? this.maximum += 10 : 0 ===\n this.options.maximum && (this.minimum -= 10));\n u(this.sessionVariables.newViewportMinimum) && (this.viewportMinimum = Math.max(this.viewportMinimum, this.minimum));\n u(this.sessionVariables.newViewportMaximum) && (this.viewportMaximum = Math.min(this.viewportMaximum, this.maximum));\n this.range = this.viewportMaximum - this.viewportMinimum;\n this.intervalStartPosition = \"axisX\" === this.type && b ? this.getLabelStartPoint(new Date(this.viewportMinimum), this.intervalType, this.interval) : Math.floor((this.viewportMinimum + 0.2 * this.interval) /\n this.interval) * this.interval;\n this.valueFormatString || (this.valueFormatString = z.generateValueFormatString(this.range, 2))\n }\n };\n z.prototype.calculateLogarithmicAxisParameters = function () {\n var a = this.chart.layoutManager.getFreeSpace(),\n d = Math.log(this.logarithmBase),\n b;\n \"bottom\" === this._position || \"top\" === this._position ? (this.maxWidth = a.width, this.maxHeight = a.height) : (this.maxWidth = a.height, this.maxHeight = a.width);\n var a = \"axisX\" === this.type ? 500 > this.maxWidth ? 7 : Math.max(7, Math.floor(this.maxWidth / 100)) : Math.max(Math.floor(this.maxWidth /\n 50), 3),\n c, e, g, m;\n m = 1;\n if (null === this.viewportMinimum || isNaN(this.viewportMinimum)) this.viewportMinimum = this.minimum;\n if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) this.viewportMaximum = this.maximum;\n if (this.scaleBreaks)\n for (m = 0; m < this.scaleBreaks._appliedBreaks.length; m++)\n if ((!u(this.sessionVariables.newViewportMinimum) && this.sessionVariables.newViewportMinimum >= this.scaleBreaks._appliedBreaks[m].startValue || !u(this.options.minimum) && this.options.minimum >= this.scaleBreaks._appliedBreaks[m].startValue ||\n !u(this.options.viewportMinimum) && this.viewportMinimum >= this.scaleBreaks._appliedBreaks[m].startValue) && (!u(this.sessionVariables.newViewportMaximum) && this.sessionVariables.newViewportMaximum <= this.scaleBreaks._appliedBreaks[m].endValue || !u(this.options.maximum) && this.options.maximum <= this.scaleBreaks._appliedBreaks[m].endValue || !u(this.options.viewportMaximum) && this.viewportMaximum <= this.scaleBreaks._appliedBreaks[m].endValue)) {\n this.scaleBreaks._appliedBreaks.splice(m, 1);\n break\n }\n \"axisX\" === this.type ?\n (c = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin, e = null !== this.viewportMaximum ? this.viewportMaximum : this.dataInfo.viewPortMax, 1 === e / c && (m = Math.pow(this.logarithmBase, \"undefined\" === typeof this.options.interval ? 0.4 : this.options.interval), e *= m, c /= m), g = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : e / c > this.logarithmBase ? e / c * Math.pow(this.logarithmBase, 0.5) : this.logarithmBase) : \"axisY\" === this.type && (c = null !== this.viewportMinimum ? this.viewportMinimum : this.dataInfo.viewPortMin,\n e = null !== this.viewportMaximum ? this.viewportMaximum : this.dataInfo.viewPortMax, 0 >= c && !isFinite(e) ? (e = \"undefined\" === typeof this.options.interval ? 0 : this.options.interval, c = 1) : 0 >= c ? c = e : isFinite(e) || (e = c), 1 === c && 1 === e ? (e *= this.logarithmBase - 1 / this.logarithmBase, c = 1) : 1 === e / c ? (m = Math.min(e * Math.pow(this.logarithmBase, 0.01), Math.pow(this.logarithmBase, 5)), e *= m, c /= m) : c > e ? (m = Math.min(c / e * Math.pow(this.logarithmBase, 0.01), Math.pow(this.logarithmBase, 5)), 1 <= e ? c = e / m : e = c * m) : (m = Math.min(e / c * Math.pow(this.logarithmBase,\n 0.01), Math.pow(this.logarithmBase, 0.04)), 1 !== e && (e *= m), 1 !== c && (c /= m)), g = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : e / c > this.logarithmBase ? e / c * Math.pow(this.logarithmBase, 0.5) : this.logarithmBase, this.includeZero && (null === this.viewportMinimum || isNaN(this.viewportMinimum)) && 1 < c && (c = 1), this.includeZero && (null === this.viewportMaximum || isNaN(this.viewportMaximum)) && 1 > e && (e = 1));\n m = (isNaN(this.viewportMaximum) || null === this.viewportMaximum ? e : this.viewportMaximum) / (isNaN(this.viewportMinimum) || null ===\n this.viewportMinimum ? c : this.viewportMinimum);\n var l = (isNaN(this.viewportMaximum) || null === this.viewportMaximum ? e : this.viewportMaximum) - (isNaN(this.viewportMinimum) || null === this.viewportMinimum ? c : this.viewportMinimum);\n this.intervalType = \"number\";\n m = Math.pow(this.logarithmBase, z.getNiceNumber(Math.abs(Math.log(m) / d), !1));\n this.options && 0 < this.options.interval ? this.interval = this.options.interval : (this.interval = z.getNiceExponent(Math.log(m) / d / (a - 1), !0), b = z.getNiceNumber(l / (a - 1), !0));\n if (null === this.viewportMinimum ||\n isNaN(this.viewportMinimum)) this.viewportMinimum = \"axisX\" === this.type ? c / Math.sqrt(g) : Math.pow(this.logarithmBase, this.interval * Math.floor(Math.log(c) / d / this.interval));\n if (null === this.viewportMaximum || isNaN(this.viewportMaximum)) this.viewportMaximum = \"axisX\" === this.type ? e * Math.sqrt(g) : Math.pow(this.logarithmBase, this.interval * Math.ceil(Math.log(e) / d / this.interval));\n 1 === this.viewportMaximum && 1 === this.viewportMinimum && (1 === this.options.viewportMinimum ? this.viewportMaximum *= this.logarithmBase - 1 / this.logarithmBase :\n 1 === this.options.viewportMaximum && (this.viewportMinimum /= this.logarithmBase - 1 / this.logarithmBase), this.options && \"undefined\" === typeof this.options.interval && (this.interval = z.getNiceExponent(Math.ceil(Math.log(m) / d) / (a - 1)), b = z.getNiceNumber((this.viewportMaximum - this.viewportMinimum) / (a - 1), !0)));\n if (null === this.minimum || null === this.maximum) \"axisX\" === this.type ? (c = null !== this.minimum ? this.minimum : this.dataInfo.min, e = null !== this.maximum ? this.maximum : this.dataInfo.max, 1 === e / c && (m = Math.pow(this.logarithmBase,\n \"undefined\" === typeof this.options.interval ? 0.4 : this.options.interval), e *= m, c /= m), g = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : e / c > this.logarithmBase ? e / c * Math.pow(this.logarithmBase, 0.5) : this.logarithmBase) : \"axisY\" === this.type && (c = null !== this.minimum ? this.minimum : this.dataInfo.min, e = null !== this.maximum ? this.maximum : this.dataInfo.max, isFinite(c) || isFinite(e) ? 1 === c && 1 === e ? (e *= this.logarithmBase, c /= this.logarithmBase) : 1 === e / c ? (m = Math.pow(this.logarithmBase, this.interval), e *= m, c /= m) : c > e ? (m =\n Math.min(0.01 * (c / e), 5), 1 <= e ? c = e / m : e = c * m) : (m = Math.min(e / c * Math.pow(this.logarithmBase, 0.01), Math.pow(this.logarithmBase, 0.04)), 1 !== e && (e *= m), 1 !== c && (c /= m)) : (e = \"undefined\" === typeof this.options.interval ? 0 : this.options.interval, c = 1), g = Infinity !== this.dataInfo.minDiff ? this.dataInfo.minDiff : e / c > this.logarithmBase ? e / c * Math.pow(this.logarithmBase, 0.5) : this.logarithmBase, this.includeZero && (null === this.minimum || isNaN(this.minimum)) && 1 < c && (c = 1), this.includeZero && (null === this.maximum || isNaN(this.maximum)) &&\n 1 > e && (e = 1)), this.intervalType = \"number\", null === this.minimum && (this.minimum = \"axisX\" === this.type ? c / Math.sqrt(g) : Math.pow(this.logarithmBase, this.interval * Math.floor(Math.log(c) / d / this.interval)), this.minimum = Math.min(this.minimum, null === this.sessionVariables.viewportMinimum || isNaN(this.sessionVariables.viewportMinimum) ? \"undefined\" === typeof this.sessionVariables.newViewportMinimum ? Infinity : this.sessionVariables.newViewportMinimum : this.sessionVariables.viewportMinimum)), null === this.maximum && (this.maximum =\n \"axisX\" === this.type ? e * Math.sqrt(g) : Math.pow(this.logarithmBase, this.interval * Math.ceil(Math.log(e) / d / this.interval)), this.maximum = Math.max(this.maximum, null === this.sessionVariables.viewportMaximum || isNaN(this.sessionVariables.viewportMaximum) ? \"undefined\" === typeof this.sessionVariables.newViewportMaximum ? 0 : this.sessionVariables.newViewportMaximum : this.sessionVariables.viewportMaximum)), 1 === this.maximum && 1 === this.minimum && (1 === this.options.minimum ? this.maximum *= this.logarithmBase - 1 / this.logarithmBase :\n 1 === this.options.maximum && (this.minimum /= this.logarithmBase - 1 / this.logarithmBase));\n this.viewportMinimum = Math.max(this.viewportMinimum, this.minimum);\n this.viewportMaximum = Math.min(this.viewportMaximum, this.maximum);\n this.viewportMinimum > this.viewportMaximum && (!this.options.viewportMinimum && !this.options.minimum || this.options.viewportMaximum || this.options.maximum ? this.options.viewportMinimum || this.options.minimum || !this.options.viewportMaximum && !this.options.maximum || (this.viewportMinimum = this.minimum =\n (this.options.viewportMaximum || this.options.maximum) / Math.pow(this.logarithmBase, 2 * Math.ceil(this.interval))) : this.viewportMaximum = this.maximum = this.options.viewportMinimum || this.options.minimum);\n c = Math.pow(this.logarithmBase, Math.floor(Math.log(this.viewportMinimum) / (d * this.interval) + 0.2) * this.interval);\n this.range = this.viewportMaximum / this.viewportMinimum;\n this.noTicks = a;\n if (!this.options.interval && this.range < Math.pow(this.logarithmBase, 8 > this.viewportMaximum || 3 > a ? 2 : 3)) {\n for (d = Math.floor(this.viewportMinimum /\n b + 0.5) * b; d < this.viewportMinimum;) d += b;\n this.equidistantInterval = !1;\n this.intervalStartPosition = d;\n this.interval = b\n } else this.options.interval || (b = Math.ceil(this.interval), this.range > this.interval && (this.interval = b, c = Math.pow(this.logarithmBase, Math.floor(Math.log(this.viewportMinimum) / (d * this.interval) + 0.2) * this.interval))), this.equidistantInterval = !0, this.intervalStartPosition = c;\n if (!this.valueFormatString && (this.valueFormatString = \"#,##0.##\", 1 > this.viewportMinimum)) {\n d = Math.floor(Math.abs(Math.log(this.viewportMinimum) /\n Math.LN10)) + 2;\n if (isNaN(d) || !isFinite(d)) d = 2;\n if (2 < d)\n for (m = 0; m < d - 2; m++) this.valueFormatString += \"#\"\n }\n };\n z.generateValueFormatString = function (a, d) {\n var b = \"#,##0.\",\n c = d;\n 1 > a && (c += Math.floor(Math.abs(Math.log(a) / Math.LN10)), isNaN(c) || !isFinite(c)) && (c = d);\n for (var e = 0; e < c; e++) b += \"#\";\n return b\n };\n z.getNiceExponent = function (a, d) {\n var b = Math.floor(Math.log(a) / Math.LN10),\n c = a / Math.pow(10, b),\n c = 0 > b ? 1 >= c ? 1 : 5 >= c ? 5 : 10 : Math.max(Math.floor(c), 1);\n return -20 > b ? Number(c * Math.pow(10, b)) : Number((c * Math.pow(10, b)).toFixed(20))\n };\n z.getNiceNumber =\n function (a, d) {\n var b = Math.floor(Math.log(a) / Math.LN10),\n c = a / Math.pow(10, b),\n c = d ? 1.5 > c ? 1 : 3 > c ? 2 : 7 > c ? 5 : 10 : 1 >= c ? 1 : 2 >= c ? 2 : 5 >= c ? 5 : 10;\n return -20 > b ? Number(c * Math.pow(10, b)) : Number((c * Math.pow(10, b)).toFixed(20))\n };\n z.prototype.getLabelStartPoint = function () {\n var a = S[this.intervalType + \"Duration\"] * this.interval,\n a = new Date(Math.floor(this.viewportMinimum / a) * a);\n if (\"millisecond\" !== this.intervalType)\n if (\"second\" === this.intervalType) 0 < a.getMilliseconds() && (a.setSeconds(a.getSeconds() + 1), a.setMilliseconds(0));\n else if (\"minute\" ===\n this.intervalType) {\n if (0 < a.getSeconds() || 0 < a.getMilliseconds()) a.setMinutes(a.getMinutes() + 1), a.setSeconds(0), a.setMilliseconds(0)\n } else if (\"hour\" === this.intervalType) {\n if (0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) a.setHours(a.getHours() + 1), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0)\n } else if (\"day\" === this.intervalType) {\n if (0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) a.setDate(a.getDate() + 1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0)\n } else if (\"week\" ===\n this.intervalType) {\n if (0 < a.getDay() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) a.setDate(a.getDate() + (7 - a.getDay())), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0)\n } else if (\"month\" === this.intervalType) {\n if (1 < a.getDate() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) a.setMonth(a.getMonth() + 1), a.setDate(1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0)\n } else \"year\" === this.intervalType && (0 < a.getMonth() || 1 <\n a.getDate() || 0 < a.getHours() || 0 < a.getMinutes() || 0 < a.getSeconds() || 0 < a.getMilliseconds()) && (a.setFullYear(a.getFullYear() + 1), a.setMonth(0), a.setDate(1), a.setHours(0), a.setMinutes(0), a.setSeconds(0), a.setMilliseconds(0));\n return a\n };\n qa(Q, V);\n qa(L, V);\n L.prototype.createUserOptions = function (a) {\n if (\"undefined\" !== typeof a || this.options._isPlaceholder) {\n var d = 0;\n this.parent.options._isPlaceholder && this.parent.createUserOptions();\n this.options._isPlaceholder || (Fa(this.parent[this.optionsName]), d = this.parent.options[this.optionsName].indexOf(this.options));\n this.options = \"undefined\" === typeof a ? {} : a;\n this.parent.options[this.optionsName][d] = this.options\n }\n };\n L.prototype.render = function (a) {\n if (0 !== this.spacing || 0 !== this.options.lineThickness && (\"undefined\" !== typeof this.options.lineThickness || 0 !== this.parent.lineThickness)) {\n var d = this.ctx,\n b = this.ctx.globalAlpha;\n this.ctx = a || this.ctx;\n this.ctx.save();\n this.ctx.beginPath();\n this.ctx.rect(this.chart.plotArea.x1, this.chart.plotArea.y1, this.chart.plotArea.width, this.chart.plotArea.height);\n this.ctx.clip();\n var c = this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.startValue),\n e = this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);\n this.ctx.strokeStyle = this.lineColor;\n this.ctx.fillStyle = this.color;\n this.ctx.beginPath();\n this.ctx.globalAlpha = 1;\n N(this.id);\n var g, m, l, k, h, p;\n a = Math.max(this.spacing, 3);\n var q = Math.max(0, this.lineThickness);\n this.ctx.lineWidth = q;\n this.ctx.setLineDash && this.ctx.setLineDash(R(this.lineDashType, q));\n if (\"bottom\" === this.scaleBreaks.parent._position || \"top\" === this.scaleBreaks.parent._position)\n if (c = 1 === q % 2 ? (c.x << 0) + 0.5 : c.x << 0, m = 1 === q % 2 ? (e.x << 0) + 0.5 :\n e.x << 0, \"top\" === this.scaleBreaks.parent._position ? (e = this.chart.plotArea.y1, l = this.chart.plotArea.y2 + q / 2 + 0.5 << 0) : (e = this.chart.plotArea.y2, l = this.chart.plotArea.y1 - q / 2 + 0.5 << 0, a *= -1), this.bounds = {\n x1: c - q / 2,\n y1: e,\n x2: m + q / 2,\n y2: l\n }, this.ctx.moveTo(c, e), \"straight\" === this.type || \"top\" === this.scaleBreaks.parent._position && 0 >= a || \"bottom\" === this.scaleBreaks.parent._position && 0 <= a) this.ctx.lineTo(c, l), this.ctx.lineTo(m, l), this.ctx.lineTo(m, e);\n else if (\"wavy\" === this.type) {\n k = c;\n h = e;\n g = 0.5;\n p = (l - h) / a / 3;\n for (var n = 0; n < p; n++) this.ctx.bezierCurveTo(k +\n g * a, h + a, k + g * a, h + 2 * a, k, h + 3 * a), h += 3 * a, g *= -1;\n this.ctx.bezierCurveTo(k + g * a, h + a, k + g * a, h + 2 * a, k, h + 3 * a);\n k = m;\n g *= -1;\n this.ctx.lineTo(k, h);\n for (n = 0; n < p; n++) this.ctx.bezierCurveTo(k + g * a, h - a, k + g * a, h - 2 * a, k, h - 3 * a), h -= 3 * a, g *= -1\n } else {\n if (\"zigzag\" === this.type) {\n g = -1;\n h = e + a;\n k = c + a;\n p = (l - h) / a / 2;\n for (n = 0; n < p; n++) this.ctx.lineTo(k, h), k += 2 * g * a, h += 2 * a, g *= -1;\n this.ctx.lineTo(k, h);\n k += m - c;\n for (n = 0; n < p + 1; n++) this.ctx.lineTo(k, h), k += 2 * g * a, h -= 2 * a, g *= -1;\n this.ctx.lineTo(k + g * a, h + a)\n }\n } else if (\"left\" === this.scaleBreaks.parent._position || \"right\" ===\n this.scaleBreaks.parent._position)\n if (e = 1 === q % 2 ? (e.y << 0) + 0.5 : e.y << 0, l = 1 === q % 2 ? (c.y << 0) + 0.5 : c.y << 0, \"left\" === this.scaleBreaks.parent._position ? (c = this.chart.plotArea.x1, m = this.chart.plotArea.x2 + q / 2 + 0.5 << 0) : (c = this.chart.plotArea.x2, m = this.chart.plotArea.x1 - q / 2 + 0.5 << 0, a *= -1), this.bounds = {\n x1: c,\n y1: e - q / 2,\n x2: m,\n y2: l + q / 2\n }, this.ctx.moveTo(c, e), \"straight\" === this.type || \"left\" === this.scaleBreaks.parent._position && 0 >= a || \"right\" === this.scaleBreaks.parent._position && 0 <= a) this.ctx.lineTo(m, e), this.ctx.lineTo(m, l),\n this.ctx.lineTo(c, l);\n else if (\"wavy\" === this.type) {\n k = c;\n h = e;\n g = 0.5;\n p = (m - k) / a / 3;\n for (n = 0; n < p; n++) this.ctx.bezierCurveTo(k + a, h + g * a, k + 2 * a, h + g * a, k + 3 * a, h), k += 3 * a, g *= -1;\n this.ctx.bezierCurveTo(k + a, h + g * a, k + 2 * a, h + g * a, k + 3 * a, h);\n h = l;\n g *= -1;\n this.ctx.lineTo(k, h);\n for (n = 0; n < p; n++) this.ctx.bezierCurveTo(k - a, h + g * a, k - 2 * a, h + g * a, k - 3 * a, h), k -= 3 * a, g *= -1\n } else if (\"zigzag\" === this.type) {\n g = 1;\n h = e - a;\n k = c + a;\n p = (m - k) / a / 2;\n for (n = 0; n < p; n++) this.ctx.lineTo(k, h), h += 2 * g * a, k += 2 * a, g *= -1;\n this.ctx.lineTo(k, h);\n h += l - e;\n for (n = 0; n < p + 1; n++) this.ctx.lineTo(k,\n h), h += 2 * g * a, k -= 2 * a, g *= -1;\n this.ctx.lineTo(k + a, h + g * a)\n }\n 0 < q && this.ctx.stroke();\n this.ctx.closePath();\n this.ctx.globalAlpha = this.fillOpacity;\n this.ctx.globalCompositeOperation = \"destination-over\";\n this.ctx.fill();\n this.ctx.restore();\n this.ctx.globalAlpha = b;\n this.ctx = d\n }\n };\n qa(X, V);\n X.prototype.createUserOptions = function (a) {\n if (\"undefined\" !== typeof a || this.options._isPlaceholder) {\n var d = 0;\n this.parent.options._isPlaceholder && this.parent.createUserOptions();\n this.options._isPlaceholder || (Fa(this.parent.stripLines), d = this.parent.options.stripLines.indexOf(this.options));\n this.options = \"undefined\" === typeof a ? {} : a;\n this.parent.options.stripLines[d] = this.options\n }\n };\n X.prototype.render = function () {\n this.ctx.save();\n var a = this.parent.getPixelCoordinatesOnAxis(this.value),\n d = Math.abs(\"pixel\" === this._thicknessType ? this.thickness : this.parent.conversionParameters.pixelPerUnit * this.thickness);\n if (0 < d) {\n var b = null === this.opacity ? 1 : this.opacity;\n this.ctx.strokeStyle = this.color;\n this.ctx.beginPath();\n var c = this.ctx.globalAlpha;\n this.ctx.globalAlpha = b;\n N(this.id);\n var e, g, m, l;\n this.ctx.lineWidth =\n d;\n this.ctx.setLineDash && this.ctx.setLineDash(R(this.lineDashType, d));\n if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) e = g = 1 === this.ctx.lineWidth % 2 ? (a.x << 0) + 0.5 : a.x << 0, m = this.chart.plotArea.y1, l = this.chart.plotArea.y2, this.bounds = {\n x1: e - d / 2,\n y1: m,\n x2: g + d / 2,\n y2: l\n };\n else if (\"left\" === this.parent._position || \"right\" === this.parent._position) m = l = 1 === this.ctx.lineWidth % 2 ? (a.y << 0) + 0.5 : a.y << 0, e = this.chart.plotArea.x1, g = this.chart.plotArea.x2, this.bounds = {\n x1: e,\n y1: m - d / 2,\n x2: g,\n y2: l + d / 2\n };\n this.ctx.moveTo(e,\n m);\n this.ctx.lineTo(g, l);\n this.ctx.stroke();\n this.ctx.globalAlpha = c\n }\n this.ctx.restore()\n };\n qa(fa, V);\n fa.prototype.render = function (a, d) {\n var b, c, e, g, m = null,\n l = m = null,\n k = \"\";\n if (!this.valueFormatString)\n if (\"dateTime\" === this.parent.valueType) this.valueFormatString = this.parent.valueFormatString;\n else {\n var h = 0,\n h = \"xySwapped\" === this.chart.plotInfo.axisPlacement ? 50 < this.parent.range ? 0 : 500 < this.chart.width && 25 > this.parent.range ? 2 : Math.floor(Math.abs(Math.log(this.parent.range) / Math.LN10)) + (5 > this.parent.range ? 2 : 10 > this.parent.range ?\n 1 : 0) : 50 < this.parent.range ? 0 : Math.floor(Math.abs(Math.log(this.parent.range) / Math.LN10)) + (5 > this.parent.range ? 2 : 10 > this.parent.range ? 1 : 0);\n this.valueFormatString = z.generateValueFormatString(this.parent.range, h)\n } var l = null === this.opacity ? 1 : this.opacity,\n h = Math.abs(\"pixel\" === this._thicknessType ? this.thickness : this.parent.conversionParameters.pixelPerUnit * this.thickness),\n p = this.chart.overlaidCanvasCtx,\n q = p.globalAlpha;\n p.globalAlpha = l;\n p.beginPath();\n p.strokeStyle = this.color;\n p.lineWidth = h;\n p.save();\n this.labelFontSize =\n u(this.options.labelFontSize) ? this.parent.labelFontSize : this.labelFontSize;\n if (\"left\" === this.parent._position || \"right\" === this.parent._position) this.labelMaxWidth = u(this.options.labelMaxWidth) ? this.parent.bounds.x2 - this.parent.bounds.x1 : this.labelMaxWidth, this.labelMaxHeight = u(this.options.labelWrap) || this.labelWrap ? 3 * this.chart.height : 2 * this.labelFontSize;\n else if (\"top\" === this.parent._position || \"bottom\" === this.parent._position) this.labelMaxWidth = u(this.options.labelMaxWidth) ? 3 * this.chart.width : this.labelMaxWidth,\n this.labelMaxHeight = u(this.options.labelWrap) || this.labelWrap ? this.parent.bounds.height : 2 * this.labelFontSize;\n 0 < h && p.setLineDash && p.setLineDash(R(this.lineDashType, h));\n l = new ka(p, {\n x: 0,\n y: 0,\n padding: {\n top: 2,\n right: 3,\n bottom: 2,\n left: 4\n },\n backgroundColor: this.labelBackgroundColor,\n borderColor: this.labelBorderColor,\n borderThickness: this.labelBorderThickness,\n cornerRadius: this.labelCornerRadius,\n maxWidth: this.labelMaxWidth,\n maxHeight: this.labelMaxHeight,\n angle: this.labelAngle,\n text: k,\n horizontalAlign: \"left\",\n fontSize: this.labelFontSize,\n fontFamily: this.labelFontFamily,\n fontWeight: this.labelFontWeight,\n fontColor: this.labelFontColor,\n fontStyle: this.labelFontStyle,\n textBaseline: \"middle\"\n });\n if (this.snapToDataPoint) {\n var n = 0,\n m = [];\n if (\"xySwapped\" === this.chart.plotInfo.axisPlacement) {\n var f = null;\n if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) n = this.parent.dataSeries[0].axisX.convertPixelToValue({\n y: d\n });\n else if (\"left\" === this.parent._position || \"right\" === this.parent._position) n = this.parent.convertPixelToValue({\n y: d\n });\n for (var r = 0; r <\n this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (f.dataSeries = this.parent.dataSeries[r], null !== f.dataPoint.y && m.push(f));\n f = null;\n if (0 === m.length) return;\n m.sort(function (a, b) {\n return a.distance - b.distance\n });\n f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y));\n r = 0;\n if (\"rangeBar\" === m[0].dataSeries.type || \"error\" === m[0].dataSeries.type)\n for (var f = Math.abs(a - this.parent.convertValueToPixel(m[r].dataPoint.y[0])), v = 0, n = 0; n < m.length; n++)\n if (m[n].dataPoint.y &&\n m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y)), v < f && (f = v, r = n);\n else if (\"stackedBar\" === m[0].dataSeries.type)\n for (var f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y)), D = v = 0, n = r = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y[k])),\n v < f && (f = v, r = n);\n else D += m[n].dataPoint.y, v = Math.abs(a - this.parent.convertValueToPixel(D)), v < f && (f = v, r = n);\n else if (\"stackedBar100\" === m[0].dataSeries.type)\n for (var f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y)), t = D = v = 0, n = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else D += m[n].dataPoint.y, t = m[n].dataPoint.x.getTime ? m[n].dataPoint.x.getTime() : m[n].dataPoint.x,\n t = 100 * (D / m[n].dataSeries.plotUnit.dataPointYSums[t]), v = Math.abs(a - this.parent.convertValueToPixel(t)), v < f && (f = v, r = n);\n else\n for (f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y)), n = r = v = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else v = Math.abs(a - this.parent.convertValueToPixel(m[n].dataPoint.y)), v < f && (f = v, r = n);\n k = m[r];\n if (\"bottom\" === this.parent._position ||\n \"top\" === this.parent._position) {\n b = 0;\n if (\"rangeBar\" === this.parent.dataSeries[r].type || \"error\" === this.parent.dataSeries[r].type) {\n f = Math.abs(a - this.parent.convertValueToPixel(k.dataPoint.y[0]));\n for (n = v = 0; n < k.dataPoint.y.length; n++) v = Math.abs(a - this.parent.convertValueToPixel(k.dataPoint.y[n])), v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.y[b]) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.y[b]) << 0;\n l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y[b]\n }) : u(this.options.label) ? ba(k.dataPoint.y[b], this.valueFormatString, this.chart._cultureInfo) : this.label\n } else if (\"stackedBar\" === this.parent.dataSeries[r].type) {\n f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y));\n D = v = 0;\n for (n = r; 0 <= n; n--) D += m[n].dataPoint.y, v = Math.abs(a - this.parent.convertValueToPixel(D)), v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(D) << 0) + 0.5 : this.parent.convertValueToPixel(D) << 0;\n l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y\n }) : u(this.options.label) ? ba(k.dataPoint.y, this.valueFormatString, this.chart._cultureInfo) : this.label\n } else if (\"stackedBar100\" === this.parent.dataSeries[r].type) {\n f = Math.abs(a - this.parent.convertValueToPixel(m[0].dataPoint.y));\n t = D = v = 0;\n for (n = r; 0 <= n; n--) D += m[n].dataPoint.y, t = m[n].dataPoint.x.getTime ? m[n].dataPoint.x.getTime() : m[n].dataPoint.x, t = 100 * (D / m[n].dataSeries.plotUnit.dataPointYSums[t]),\n v = Math.abs(a - this.parent.convertValueToPixel(t)), v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(t) << 0) + 0.5 : this.parent.convertValueToPixel(t) << 0;\n l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: t\n }) : u(this.options.label) ? ba(t, this.valueFormatString, this.chart._cultureInfo) : this.label\n } else m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.y) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.y) <<\n 0, l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y\n }) : u(this.options.label) ? ba(k.dataPoint.y, this.valueFormatString, this.chart._cultureInfo) : this.label;\n b = c = m;\n e = this.chart.plotArea.y1;\n g = this.chart.plotArea.y2;\n this.bounds = {\n x1: b - h / 2,\n y1: e,\n x2: c + h / 2,\n y2: g\n };\n l.x = b - l.measureText().width / 2;\n l.x + l.width > this.chart.bounds.x2 ? l.x = this.chart.bounds.x2 - l.width : l.x < this.chart.bounds.x1 && (l.x = this.chart.bounds.x1);\n l.y = this.parent.lineCoordinates.y2 +\n l.fontSize / 2 + 2\n } else if (\"left\" === this.parent._position || \"right\" === this.parent._position) {\n e = g = m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.x) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.x) << 0;\n b = this.chart.plotArea.x1;\n c = this.chart.plotArea.x2;\n this.bounds = {\n x1: b,\n y1: e - h / 2,\n x2: c,\n y2: g + h / 2\n };\n t = !1;\n if (this.parent.labels)\n for (m = Math.ceil(this.parent.interval), n = 0; n < this.parent.viewportMaximum; n += m)\n if (this.parent.labels[n]) t = !0;\n else {\n t = !1;\n break\n } if (t) {\n if (\"axisX\" === this.parent.type)\n for (n =\n this.parent.convertPixelToValue({\n y: d\n }), f = null, r = 0; r < this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) : u(this.options.label) ? f.dataPoint.label : this.label)\n } else \"dateTime\" === this.parent.valueType ? l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) :\n u(this.options.label) ? Ca(k.dataPoint.x, this.valueFormatString, this.chart._cultureInfo) : this.label : \"number\" === this.parent.valueType && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) : u(this.options.label) ? ba(k.dataPoint.x, this.valueFormatString, this.chart._cultureInfo) : this.label);\n l.y = g + l.fontSize / 2 - l.measureText().height / 2 + 2;\n l.y - l.fontSize / 2 < this.chart.bounds.y1 ? l.y = this.chart.bounds.y1 + l.fontSize / 2 + 2 : l.y + l.measureText().height -\n l.fontSize / 2 > this.chart.bounds.y2 && (l.y = this.chart.bounds.y2 - l.measureText().height + l.fontSize / 2);\n \"left\" === this.parent._position ? l.x = this.parent.lineCoordinates.x2 - l.measureText().width : \"right\" === this.parent._position && (l.x = this.parent.lineCoordinates.x2)\n }\n } else if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) {\n n = this.parent.convertPixelToValue({\n x: a\n });\n for (r = 0; r < this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (f.dataSeries = this.parent.dataSeries[r],\n null !== f.dataPoint.y && m.push(f));\n if (0 === m.length) return;\n m.sort(function (a, b) {\n return a.distance - b.distance\n });\n k = m[0];\n b = c = m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.x) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.x) << 0;\n e = this.chart.plotArea.y1;\n g = this.chart.plotArea.y2;\n this.bounds = {\n x1: b - h / 2,\n y1: e,\n x2: c + h / 2,\n y2: g\n };\n t = !1;\n if (this.parent.labels)\n for (m = Math.ceil(this.parent.interval), n = 0; n < this.parent.viewportMaximum; n += m)\n if (this.parent.labels[n]) t = !0;\n else {\n t = !1;\n break\n } if (t) {\n if (\"axisX\" ===\n this.parent.type)\n for (n = this.parent.convertPixelToValue({\n x: a\n }), f = null, r = 0; r < this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) : u(this.options.label) ? f.dataPoint.label : this.label)\n } else \"dateTime\" === this.parent.valueType ? l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) : u(this.options.label) ? Ca(k.dataPoint.x, this.valueFormatString, this.chart._cultureInfo) : this.label : \"number\" === this.parent.valueType && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.x\n }) : u(this.options.label) ? ba(k.dataPoint.x, this.valueFormatString, this.chart._cultureInfo) : this.label);\n l.x = b - l.measureText().width / 2;\n l.x + l.width > this.chart.bounds.x2 && (l.x = this.chart.bounds.x2 - l.width);\n l.x < this.chart.bounds.x1 &&\n (l.x = this.chart.bounds.x1);\n \"bottom\" === this.parent._position ? l.y = this.parent.lineCoordinates.y2 + l.fontSize / 2 + 2 : \"top\" === this.parent._position && (l.y = this.parent.lineCoordinates.y1 - l.height + l.fontSize / 2 + 2)\n } else if (\"left\" === this.parent._position || \"right\" === this.parent._position) {\n !u(this.parent.dataSeries) && 0 < this.parent.dataSeries.length && (n = this.parent.dataSeries[0].axisX.convertPixelToValue({\n x: a\n }));\n for (r = 0; r < this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index &&\n (f.dataSeries = this.parent.dataSeries[r], null !== f.dataPoint.y && m.push(f));\n if (0 === m.length) return;\n m.sort(function (a, b) {\n return a.distance - b.distance\n });\n r = 0;\n if (\"rangeColumn\" === m[0].dataSeries.type || \"rangeArea\" === m[0].dataSeries.type || \"error\" === m[0].dataSeries.type || \"rangeSplineArea\" === m[0].dataSeries.type || \"candlestick\" === m[0].dataSeries.type || \"ohlc\" === m[0].dataSeries.type || \"boxAndWhisker\" === m[0].dataSeries.type)\n for (f = Math.abs(d - this.parent.convertValueToPixel(m[0].dataPoint.y[0])), n = v = 0; n < m.length; n++)\n if (m[n].dataPoint.y &&\n m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y)), v < f && (f = v, r = n);\n else if (\"stackedColumn\" === m[0].dataSeries.type || \"stackedArea\" === m[0].dataSeries.type)\n for (f = Math.abs(d - this.parent.convertValueToPixel(m[0].dataPoint.y)), n = D = v = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y[k])),\n v < f && (f = v, r = n);\n else D += m[n].dataPoint.y, v = Math.abs(d - this.parent.convertValueToPixel(D)), v < f && (f = v, r = n);\n else if (\"stackedColumn100\" === m[0].dataSeries.type || \"stackedArea100\" === m[0].dataSeries.type)\n for (f = Math.abs(d - this.parent.convertValueToPixel(m[0].dataPoint.y)), n = t = D = v = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else D += m[n].dataPoint.y, t = m[n].dataPoint.x.getTime ?\n m[n].dataPoint.x.getTime() : m[n].dataPoint.x, t = 100 * (D / m[n].dataSeries.plotUnit.dataPointYSums[t]), v = Math.abs(d - this.parent.convertValueToPixel(t)), v < f && (f = v, r = n);\n else\n for (f = Math.abs(d - this.parent.convertValueToPixel(m[0].dataPoint.y)), n = v = 0; n < m.length; n++)\n if (m[n].dataPoint.y && m[n].dataPoint.y.length)\n for (k = 0; k < m[n].dataPoint.y.length; k++) v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y[k])), v < f && (f = v, r = n);\n else v = Math.abs(d - this.parent.convertValueToPixel(m[n].dataPoint.y)), v < f && (f = v, r =\n n);\n k = m[r];\n b = 0;\n if (\"rangeColumn\" === this.parent.dataSeries[r].type || \"rangeArea\" === this.parent.dataSeries[r].type || \"error\" === this.parent.dataSeries[r].type || \"rangeSplineArea\" === this.parent.dataSeries[r].type || \"candlestick\" === this.parent.dataSeries[r].type || \"ohlc\" === this.parent.dataSeries[r].type || \"boxAndWhisker\" === this.parent.dataSeries[r].type) {\n f = Math.abs(d - this.parent.convertValueToPixel(k.dataPoint.y[0]));\n for (n = v = 0; n < k.dataPoint.y.length; n++) v = Math.abs(d - this.parent.convertValueToPixel(k.dataPoint.y[n])),\n v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.y[b]) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.y[b]) << 0;\n l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y[b]\n }) : u(this.options.label) ? ba(k.dataPoint.y[b], this.valueFormatString, this.chart._cultureInfo) : this.label\n } else if (\"stackedColumn\" === this.parent.dataSeries[r].type || \"stackedArea\" === this.parent.dataSeries[r].type) {\n f = Math.abs(d -\n this.parent.convertValueToPixel(m[0].dataPoint.y));\n D = v = 0;\n for (n = r; 0 <= n; n--) D += m[n].dataPoint.y, v = Math.abs(d - this.parent.convertValueToPixel(D)), v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(D) << 0) + 0.5 : this.parent.convertValueToPixel(D) << 0;\n l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y\n }) : u(this.options.label) ? ba(k.dataPoint.y, this.valueFormatString, this.chart._cultureInfo) : this.label\n } else if (\"stackedColumn100\" ===\n this.parent.dataSeries[r].type || \"stackedArea100\" === this.parent.dataSeries[r].type) {\n f = Math.abs(d - this.parent.convertValueToPixel(m[0].dataPoint.y));\n D = v = 0;\n for (n = r; 0 <= n; n--) D += m[n].dataPoint.y, t = m[n].dataPoint.x.getTime ? m[n].dataPoint.x.getTime() : m[n].dataPoint.x, t = 100 * (D / m[n].dataSeries.plotUnit.dataPointYSums[t]), v = Math.abs(d - this.parent.convertValueToPixel(t)), v < f && (f = v, b = n);\n m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(t) << 0) + 0.5 : this.parent.convertValueToPixel(t) << 0;\n l.text = this.labelFormatter ?\n this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: t\n }) : u(this.options.label) ? ba(t, this.valueFormatString, this.chart._cultureInfo) : this.label\n } else \"waterfall\" === this.parent.dataSeries[r].type ? (m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataSeries.dataPointEOs[k.index].cumulativeSum) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataSeries.dataPointEOs[k.index].cumulativeSum) << 0, l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataSeries.dataPointEOs[k.index].cumulativeSum\n }) : u(this.options.label) ? ba(k.dataSeries.dataPointEOs[k.index].cumulativeSum, this.valueFormatString, this.chart._cultureInfo) : this.label) : (m = 1 === p.lineWidth % 2 ? (this.parent.convertValueToPixel(k.dataPoint.y) << 0) + 0.5 : this.parent.convertValueToPixel(k.dataPoint.y) << 0, l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: k.dataPoint.y\n }) : u(this.options.label) ? ba(k.dataPoint.y,\n this.valueFormatString, this.chart._cultureInfo) : this.label);\n e = g = m;\n b = this.chart.plotArea.x1;\n c = this.chart.plotArea.x2;\n this.bounds = {\n x1: b,\n y1: e - h / 2,\n x2: c,\n y2: g + h / 2\n };\n l.y = g + l.fontSize / 2 - l.measureText().height / 2 + 2;\n l.y - l.fontSize / 2 < this.chart.bounds.y1 ? l.y = this.chart.bounds.y1 + l.fontSize / 2 + 2 : l.y + l.measureText().height - l.fontSize / 2 > this.chart.bounds.y2 && (l.y = this.chart.bounds.y2 - l.measureText().height + l.fontSize / 2);\n \"left\" === this.parent._position ? l.x = this.parent.lineCoordinates.x2 - l.measureText().width : \"right\" ===\n this.parent._position && (l.x = this.parent.lineCoordinates.x2)\n }\n m = null;\n (\"bottom\" === this.parent._position || \"top\" === this.parent._position) && (b >= this.parent.convertValueToPixel(this.parent.viewportMinimum) && c <= this.parent.convertValueToPixel(this.parent.viewportMaximum)) && (0 < h && (p.moveTo(b, e), p.lineTo(c, g), p.stroke()), p.restore(), !u(l.text) && (\"number\" === typeof l.text.valueOf() || 0 < l.text.length) && l.render(!0));\n (\"left\" === this.parent._position || \"right\" === this.parent._position) && (g >= this.parent.convertValueToPixel(this.parent.viewportMaximum) &&\n e <= this.parent.convertValueToPixel(this.parent.viewportMinimum)) && (0 < h && (p.moveTo(b, e), p.lineTo(c, g), p.stroke()), p.restore(), !u(l.text) && (\"number\" === typeof l.text.valueOf() || 0 < l.text.length) && l.render(!0))\n } else {\n if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) b = c = m = 1 === p.lineWidth % 2 ? (a << 0) + 0.5 : a << 0, e = this.chart.plotArea.y1, g = this.chart.plotArea.y2, this.bounds = {\n x1: b - h / 2,\n y1: e,\n x2: c + h / 2,\n y2: g\n };\n else if (\"left\" === this.parent._position || \"right\" === this.parent._position) e = g = m = 1 === p.lineWidth %\n 2 ? (d << 0) + 0.5 : d << 0, b = this.chart.plotArea.x1, c = this.chart.plotArea.x2, this.bounds = {\n x1: b,\n y1: e - h / 2,\n x2: c,\n y2: g + h / 2\n };\n if (\"xySwapped\" === this.chart.plotInfo.axisPlacement)\n if (\"left\" === this.parent._position || \"right\" === this.parent._position) {\n t = !1;\n if (this.parent.labels)\n for (m = Math.ceil(this.parent.interval), n = 0; n < this.parent.viewportMaximum; n += m)\n if (this.parent.labels[n]) t = !0;\n else {\n t = !1;\n break\n } if (t) {\n if (\"axisX\" === this.parent.type)\n for (n = this.parent.convertPixelToValue({\n y: d\n }), f = null, r = 0; r < this.parent.dataSeries.length; r++)(f =\n this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(a)\n }) : u(this.options.label) ? f.dataPoint.label : this.label)\n } else \"dateTime\" === this.parent.valueType ? l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(d)\n }) : u(this.options.label) ? Ca(this.parent.convertPixelToValue(d),\n this.valueFormatString, this.chart._cultureInfo) : this.label : \"number\" === this.parent.valueType && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(d)\n }) : u(this.options.label) ? ba(this.parent.convertPixelToValue(d), this.valueFormatString, this.chart._cultureInfo) : this.label);\n l.y = d + l.fontSize / 2 - l.measureText().height / 2 + 2;\n l.y - l.fontSize / 2 < this.chart.bounds.y1 ? l.y = this.chart.bounds.y1 + l.fontSize / 2 + 2 : l.y + l.measureText().height -\n l.fontSize / 2 > this.chart.bounds.y2 && (l.y = this.chart.bounds.y2 - l.measureText().height + l.fontSize / 2);\n \"left\" === this.parent._position ? l.x = this.parent.lineCoordinates.x1 - l.measureText().width : \"right\" === this.parent._position && (l.x = this.parent.lineCoordinates.x2)\n } else {\n if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(a)\n }) : u(this.options.label) ?\n ba(this.parent.convertPixelToValue(a), this.valueFormatString, this.chart._cultureInfo) : this.label, l.x = b - l.measureText().width / 2, l.x + l.width > this.chart.bounds.x2 && (l.x = this.chart.bounds.x2 - l.width), l.x < this.chart.bounds.x1 && (l.x = this.chart.bounds.x1), \"bottom\" === this.parent._position && (l.y = this.parent.lineCoordinates.y2 + l.fontSize / 2 + 2), \"top\" === this.parent._position && (l.y = this.parent.lineCoordinates.y1 - l.height + l.fontSize / 2 + 2)\n }\n else if (\"bottom\" === this.parent._position || \"top\" === this.parent._position) {\n t = !1;\n k = \"\";\n if (this.parent.labels)\n for (m = Math.ceil(this.parent.interval), n = 0; n < this.parent.viewportMaximum; n += m)\n if (this.parent.labels[n]) t = !0;\n else {\n t = !1;\n break\n } if (t) {\n if (\"axisX\" === this.parent.type)\n for (n = this.parent.convertPixelToValue({\n x: a\n }), f = null, r = 0; r < this.parent.dataSeries.length; r++)(f = this.parent.dataSeries[r].getDataPointAtX(n, !0)) && 0 <= f.index && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(a)\n }) :\n u(this.options.label) ? f.dataPoint.label : this.label)\n } else \"dateTime\" === this.parent.valueType ? l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(a)\n }) : u(this.options.label) ? Ca(this.parent.convertPixelToValue(a), this.valueFormatString, this.chart._cultureInfo) : this.label : \"number\" === this.parent.valueType && (l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: 0 < this.parent.dataSeries.length ? this.parent.convertPixelToValue(a) : \"\"\n }) : u(this.options.label) ? ba(this.parent.convertPixelToValue(a), this.valueFormatString, this.chart._cultureInfo) : this.label);\n l.x = b - l.measureText().width / 2;\n l.x + l.width > this.chart.bounds.x2 && (l.x = this.chart.bounds.x2 - l.width);\n l.x < this.chart.bounds.x1 && (l.x = this.chart.bounds.x1);\n \"bottom\" === this.parent._position ? l.y = this.parent.lineCoordinates.y2 + l.fontSize / 2 + 2 : \"top\" === this.parent._position && (l.y = this.parent.lineCoordinates.y1 - l.height +\n l.fontSize / 2 + 2)\n } else if (\"left\" === this.parent._position || \"right\" === this.parent._position) l.text = this.labelFormatter ? this.labelFormatter({\n chart: this.chart,\n axis: this.parent.options,\n crosshair: this.options,\n value: this.parent.convertPixelToValue(d)\n }) : u(this.options.label) ? ba(this.parent.convertPixelToValue(d), this.valueFormatString, this.chart._cultureInfo) : this.label, l.y = d + l.fontSize / 2 - l.measureText().height / 2 + 2, l.y - l.fontSize / 2 < this.chart.bounds.y1 ? l.y = this.chart.bounds.y1 + l.fontSize / 2 + 2 : l.y + l.measureText().height -\n l.fontSize / 2 > this.chart.bounds.y2 && (l.y = this.chart.bounds.y2 - l.measureText().height + l.fontSize / 2), \"left\" === this.parent._position ? l.x = this.parent.lineCoordinates.x2 - l.measureText().width : \"right\" === this.parent._position && (l.x = this.parent.lineCoordinates.x2);\n 0 < h && (p.moveTo(b, e), p.lineTo(c, g), p.stroke());\n p.restore();\n !u(l.text) && (\"number\" === typeof l.text.valueOf() || 0 < l.text.length) && l.render(!0)\n }\n p.globalAlpha = q\n };\n qa($, V);\n $.prototype._initialize = function () {\n if (this.enabled) {\n this.container = document.createElement(\"div\");\n this.container.setAttribute(\"class\", \"canvasjs-chart-tooltip\");\n this.container.style.position = \"absolute\";\n this.container.style.height = \"auto\";\n this.container.style.boxShadow = \"1px 1px 2px 2px rgba(0,0,0,0.1)\";\n this.container.style.zIndex = \"1000\";\n this.container.style.pointerEvents = \"none\";\n this.container.style.display = \"none\";\n var a;\n a = '
    (new Date).getTime() - this._lastUpdated || (this._lastUpdated = (new Date).getTime(),\n this.chart.resetOverlayedCanvas(), this._updateToolTip(a, d))\n };\n $.prototype._updateToolTip = function (a, d, b) {\n b = \"undefined\" === typeof b ? !0 : b;\n this.container || this._initialize();\n this.enabled || this.hide();\n if (!this.chart.disableToolTip) {\n if (\"undefined\" === typeof a || \"undefined\" === typeof d) {\n if (isNaN(this._prevX) || isNaN(this._prevY)) return;\n a = this._prevX;\n d = this._prevY\n } else this._prevX = a, this._prevY = d;\n var c = null,\n e = null,\n g = [],\n k = 0;\n if (this.shared && this.enabled && \"none\" !== this.chart.plotInfo.axisPlacement) {\n if (\"xySwapped\" ===\n this.chart.plotInfo.axisPlacement) {\n var l = [];\n if (this.chart.axisX)\n for (var p = 0; p < this.chart.axisX.length; p++) {\n for (var k = this.chart.axisX[p].convertPixelToValue({\n y: d\n }), h = null, c = 0; c < this.chart.axisX[p].dataSeries.length; c++)(h = this.chart.axisX[p].dataSeries[c].getDataPointAtX(k, b)) && 0 <= h.index && (h.dataSeries = this.chart.axisX[p].dataSeries[c], null !== h.dataPoint.y && l.push(h));\n h = null\n }\n if (this.chart.axisX2)\n for (p = 0; p < this.chart.axisX2.length; p++) {\n k = this.chart.axisX2[p].convertPixelToValue({\n y: d\n });\n h = null;\n for (c =\n 0; c < this.chart.axisX2[p].dataSeries.length; c++)(h = this.chart.axisX2[p].dataSeries[c].getDataPointAtX(k, b)) && 0 <= h.index && (h.dataSeries = this.chart.axisX2[p].dataSeries[c], null !== h.dataPoint.y && l.push(h));\n h = null\n }\n } else {\n l = [];\n if (this.chart.axisX)\n for (p = 0; p < this.chart.axisX.length; p++)\n for (k = this.chart.axisX[p].convertPixelToValue({\n x: a\n }), h = null, c = 0; c < this.chart.axisX[p].dataSeries.length; c++)(h = this.chart.axisX[p].dataSeries[c].getDataPointAtX(k, b)) && 0 <= h.index && (h.dataSeries = this.chart.axisX[p].dataSeries[c],\n null !== h.dataPoint.y && l.push(h));\n if (this.chart.axisX2)\n for (p = 0; p < this.chart.axisX2.length; p++)\n for (k = this.chart.axisX2[p].convertPixelToValue({\n x: a\n }), h = null, c = 0; c < this.chart.axisX2[p].dataSeries.length; c++)(h = this.chart.axisX2[p].dataSeries[c].getDataPointAtX(k, b)) && 0 <= h.index && (h.dataSeries = this.chart.axisX2[p].dataSeries[c], null !== h.dataPoint.y && l.push(h))\n }\n if (0 === l.length) return;\n l.sort(function (a, b) {\n return a.distance - b.distance\n });\n b = l[0];\n for (c = 0; c < l.length; c++) l[c].dataPoint.x.valueOf() === b.dataPoint.x.valueOf() &&\n g.push(l[c]);\n l = null\n } else {\n if (h = this.chart.getDataPointAtXY(a, d, b)) this.currentDataPointIndex = h.dataPointIndex, this.currentSeriesIndex = h.dataSeries.index;\n else if (r)\n if (h = ab(a, d, this.chart._eventManager.ghostCtx), 0 < h && \"undefined\" !== typeof this.chart._eventManager.objectMap[h]) {\n h = this.chart._eventManager.objectMap[h];\n if (\"legendItem\" === h.objectType) return;\n this.currentSeriesIndex = h.dataSeriesIndex;\n this.currentDataPointIndex = 0 <= h.dataPointIndex ? h.dataPointIndex : -1\n } else this.currentDataPointIndex = -1;\n else this.currentDataPointIndex = -1;\n if (0 <= this.currentSeriesIndex) {\n e = this.chart.data[this.currentSeriesIndex];\n h = {};\n if (0 <= this.currentDataPointIndex) c = e.dataPoints[this.currentDataPointIndex], h.dataSeries = e, h.dataPoint = c, h.index = this.currentDataPointIndex, h.distance = Math.abs(c.x - k), \"waterfall\" === e.type && (h.cumulativeSumYStartValue = e.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue, h.cumulativeSum = e.dataPointEOs[this.currentDataPointIndex].cumulativeSum);\n else {\n if (!this.enabled || \"line\" !== e.type && \"stepLine\" !== e.type &&\n \"spline\" !== e.type && \"area\" !== e.type && \"stepArea\" !== e.type && \"splineArea\" !== e.type && \"stackedArea\" !== e.type && \"stackedArea100\" !== e.type && \"rangeArea\" !== e.type && \"rangeSplineArea\" !== e.type && \"candlestick\" !== e.type && \"ohlc\" !== e.type && \"boxAndWhisker\" !== e.type) return;\n k = e.axisX.convertPixelToValue({\n x: a\n });\n h = e.getDataPointAtX(k, b);\n h.dataSeries = e;\n this.currentDataPointIndex = h.index;\n c = h.dataPoint\n }\n if (!u(h.dataPoint.y))\n if (h.dataSeries.axisY)\n if (0 < h.dataPoint.y.length) {\n for (c = b = 0; c < h.dataPoint.y.length; c++) h.dataPoint.y[c] <\n h.dataSeries.axisY.viewportMinimum ? b-- : h.dataPoint.y[c] > h.dataSeries.axisY.viewportMaximum && b++;\n b < h.dataPoint.y.length && b > -h.dataPoint.y.length && g.push(h)\n } else \"column\" === e.type || \"bar\" === e.type ? 0 > h.dataPoint.y ? 0 > h.dataSeries.axisY.viewportMinimum && h.dataSeries.axisY.viewportMaximum >= h.dataPoint.y && g.push(h) : h.dataSeries.axisY.viewportMinimum <= h.dataPoint.y && 0 <= h.dataSeries.axisY.viewportMaximum && g.push(h) : \"bubble\" === e.type ? (b = this.chart._eventManager.objectMap[e.dataPointIds[h.index]].size / 2, h.dataPoint.y >=\n h.dataSeries.axisY.viewportMinimum - b && h.dataPoint.y <= h.dataSeries.axisY.viewportMaximum + b && g.push(h)) : \"waterfall\" === e.type ? (b = 0, h.cumulativeSumYStartValue < h.dataSeries.axisY.viewportMinimum ? b-- : h.cumulativeSumYStartValue > h.dataSeries.axisY.viewportMaximum && b++, h.cumulativeSum < h.dataSeries.axisY.viewportMinimum ? b-- : h.cumulativeSum > h.dataSeries.axisY.viewportMaximum && b++, 2 > b && -2 < b && g.push(h)) : (0 <= h.dataSeries.type.indexOf(\"100\") || \"stackedColumn\" === e.type || \"stackedBar\" === e.type || h.dataPoint.y >= h.dataSeries.axisY.viewportMinimum &&\n h.dataPoint.y <= h.dataSeries.axisY.viewportMaximum) && g.push(h);\n else g.push(h)\n }\n }\n if (0 < g.length && (this.highlightObjects(g), this.enabled))\n if (b = \"\", b = this.getToolTipInnerHTML({\n entries: g\n }), null !== b) {\n this.contentDiv.innerHTML = b;\n b = !1;\n \"none\" === this.container.style.display && (b = !0, this.container.style.display = \"block\");\n try {\n this.contentDiv.style.background = this.backgroundColor ? this.backgroundColor : r ? \"rgba(255,255,255,.9)\" : \"rgb(255,255,255)\", this.borderColor = \"waterfall\" === g[0].dataSeries.type ? this.contentDiv.style.borderRightColor =\n this.contentDiv.style.borderLeftColor = this.contentDiv.style.borderColor = this.options.borderColor ? this.options.borderColor : g[0].dataPoint.color ? g[0].dataPoint.color : 0 < g[0].dataPoint.y ? g[0].dataSeries.risingColor : g[0].dataSeries.fallingColor : \"error\" === g[0].dataSeries.type ? this.contentDiv.style.borderRightColor = this.contentDiv.style.borderLeftColor = this.contentDiv.style.borderColor = this.options.borderColor ? this.options.borderColor : g[0].dataSeries.color ? g[0].dataSeries.color : g[0].dataSeries._colorSet[e.index %\n g[0].dataSeries._colorSet.length] : this.contentDiv.style.borderRightColor = this.contentDiv.style.borderLeftColor = this.contentDiv.style.borderColor = this.options.borderColor ? this.options.borderColor : g[0].dataPoint.color ? g[0].dataPoint.color : g[0].dataSeries.color ? g[0].dataSeries.color : g[0].dataSeries._colorSet[g[0].index % g[0].dataSeries._colorSet.length], this.contentDiv.style.borderWidth = this.borderThickness || 0 === this.borderThickness ? this.borderThickness + \"px\" : \"2px\", this.contentDiv.style.borderRadius = this.cornerRadius ||\n 0 === this.cornerRadius ? this.cornerRadius + \"px\" : \"5px\", this.container.style.borderRadius = this.contentDiv.style.borderRadius, this.contentDiv.style.fontSize = this.fontSize || 0 === this.fontSize ? this.fontSize + \"px\" : \"14px\", this.contentDiv.style.color = this.fontColor ? this.fontColor : \"#000000\", this.contentDiv.style.fontFamily = this.fontFamily ? this.fontFamily : \"Calibri, Arial, Georgia, serif;\", this.contentDiv.style.fontWeight = this.fontWeight ? this.fontWeight : \"normal\", this.contentDiv.style.fontStyle = this.fontStyle ? this.fontStyle :\n r ? \"italic\" : \"normal\"\n } catch (s) { }\n \"pie\" === g[0].dataSeries.type || \"doughnut\" === g[0].dataSeries.type || \"funnel\" === g[0].dataSeries.type || \"pyramid\" === g[0].dataSeries.type || \"bar\" === g[0].dataSeries.type || \"rangeBar\" === g[0].dataSeries.type || \"stackedBar\" === g[0].dataSeries.type || \"stackedBar100\" === g[0].dataSeries.type ? a = a - 10 - this.container.clientWidth : (a = g[0].dataSeries.axisX.convertValueToPixel(g[0].dataPoint.x) - this.container.clientWidth << 0, a -= 10);\n 0 > a && (a += this.container.clientWidth + 20);\n a + this.container.clientWidth >\n Math.max(this.chart.container.clientWidth, this.chart.width) && (a = Math.max(0, Math.max(this.chart.container.clientWidth, this.chart.width) - this.container.clientWidth));\n d = 1 !== g.length || this.shared || \"line\" !== g[0].dataSeries.type && \"stepLine\" !== g[0].dataSeries.type && \"spline\" !== g[0].dataSeries.type && \"area\" !== g[0].dataSeries.type && \"stepArea\" !== g[0].dataSeries.type && \"splineArea\" !== g[0].dataSeries.type ? \"bar\" === g[0].dataSeries.type || \"rangeBar\" === g[0].dataSeries.type || \"stackedBar\" === g[0].dataSeries.type || \"stackedBar100\" ===\n g[0].dataSeries.type ? g[0].dataSeries.axisX.convertValueToPixel(g[0].dataPoint.x) : d : g[0].dataSeries.axisY.convertValueToPixel(g[0].dataPoint.y);\n d = -d + 10;\n 0 < d + this.container.clientHeight + 5 && (d -= d + this.container.clientHeight + 5 - 0);\n this.fixMozTransitionDelay(a, d);\n !this.animationEnabled || b ? this.disableAnimation() : (this.enableAnimation(), this.container.style.MozTransition = this.mozContainerTransition);\n this.container.style.left = a + \"px\";\n this.container.style.bottom = d + \"px\"\n } else this.hide(!1)\n }\n };\n $.prototype.highlightObjects =\n function (a) {\n var d = this.chart.overlaidCanvasCtx;\n this.chart.resetOverlayedCanvas();\n d.clearRect(0, 0, this.chart.width, this.chart.height);\n d.save();\n var b = this.chart.plotArea,\n c = 0;\n d.beginPath();\n d.rect(b.x1, b.y1, b.x2 - b.x1, b.y2 - b.y1);\n d.clip();\n for (b = 0; b < a.length; b++) {\n var e = a[b];\n if ((e = this.chart._eventManager.objectMap[e.dataSeries.dataPointIds[e.index]]) && e.objectType && \"dataPoint\" === e.objectType) {\n var c = this.chart.data[e.dataSeriesIndex],\n g = c.dataPoints[e.dataPointIndex],\n k = e.dataPointIndex;\n !1 === g.highlightEnabled ||\n !0 !== c.highlightEnabled && !0 !== g.highlightEnabled || (\"line\" === c.type || \"stepLine\" === c.type || \"spline\" === c.type || \"scatter\" === c.type || \"area\" === c.type || \"stepArea\" === c.type || \"splineArea\" === c.type || \"stackedArea\" === c.type || \"stackedArea100\" === c.type || \"rangeArea\" === c.type || \"rangeSplineArea\" === c.type ? (g = c.getMarkerProperties(k, e.x1, e.y1, this.chart.overlaidCanvasCtx), g.size = Math.max(1.5 * g.size << 0, 10), g.borderColor = g.borderColor || \"#FFFFFF\", g.borderThickness = g.borderThickness || Math.ceil(0.1 * g.size), ia.drawMarkers([g]),\n \"undefined\" !== typeof e.y2 && (g = c.getMarkerProperties(k, e.x1, e.y2, this.chart.overlaidCanvasCtx), g.size = Math.max(1.5 * g.size << 0, 10), g.borderColor = g.borderColor || \"#FFFFFF\", g.borderThickness = g.borderThickness || Math.ceil(0.1 * g.size), ia.drawMarkers([g]))) : \"bubble\" === c.type ? (g = c.getMarkerProperties(k, e.x1, e.y1, this.chart.overlaidCanvasCtx), g.size = e.size, g.color = \"white\", g.borderColor = \"white\", d.globalAlpha = 0.3, ia.drawMarkers([g]), d.globalAlpha = 1) : \"column\" === c.type || \"stackedColumn\" === c.type || \"stackedColumn100\" ===\n c.type || \"bar\" === c.type || \"rangeBar\" === c.type || \"stackedBar\" === c.type || \"stackedBar100\" === c.type || \"rangeColumn\" === c.type || \"waterfall\" === c.type ? ea(d, e.x1, e.y1, e.x2, e.y2, \"white\", 0, null, !1, !1, !1, !1, 0.3) : \"pie\" === c.type || \"doughnut\" === c.type ? ja(d, e.center, e.radius, \"white\", c.type, e.startAngle, e.endAngle, 0.3, e.percentInnerRadius) : \"funnel\" === c.type || \"pyramid\" === c.type ? ra(d, e.funnelSection, 0.3, \"white\") : \"candlestick\" === c.type ? (d.globalAlpha = 1, d.strokeStyle = e.color, d.lineWidth = 2 * e.borderThickness, c = 0 === d.lineWidth %\n 2 ? 0 : 0.5, d.beginPath(), d.moveTo(e.x3 - c, Math.min(e.y2, e.y3)), d.lineTo(e.x3 - c, Math.min(e.y1, e.y4)), d.stroke(), d.beginPath(), d.moveTo(e.x3 - c, Math.max(e.y1, e.y4)), d.lineTo(e.x3 - c, Math.max(e.y2, e.y3)), d.stroke(), ea(d, e.x1, Math.min(e.y1, e.y4), e.x2, Math.max(e.y1, e.y4), \"transparent\", 2 * e.borderThickness, e.color, !1, !1, !1, !1), d.globalAlpha = 1) : \"ohlc\" === c.type ? (d.globalAlpha = 1, d.strokeStyle = e.color, d.lineWidth = 2 * e.borderThickness, c = 0 === d.lineWidth % 2 ? 0 : 0.5, d.beginPath(), d.moveTo(e.x3 - c, e.y2), d.lineTo(e.x3 - c, e.y3),\n d.stroke(), d.beginPath(), d.moveTo(e.x3, e.y1), d.lineTo(e.x1, e.y1), d.stroke(), d.beginPath(), d.moveTo(e.x3, e.y4), d.lineTo(e.x2, e.y4), d.stroke(), d.globalAlpha = 1) : \"boxAndWhisker\" === c.type ? (d.save(), d.globalAlpha = 1, d.strokeStyle = e.stemColor, d.lineWidth = 2 * e.stemThickness, 0 < e.stemThickness && (d.beginPath(), d.moveTo(e.x3, e.y2 + e.borderThickness / 2), d.lineTo(e.x3, e.y1 + e.whiskerThickness / 2), d.stroke(), d.beginPath(), d.moveTo(e.x3, e.y4 - e.whiskerThickness / 2), d.lineTo(e.x3, e.y3 - e.borderThickness / 2), d.stroke()), d.beginPath(),\n ea(d, e.x1 - e.borderThickness / 2, Math.max(e.y2 + e.borderThickness / 2, e.y3 + e.borderThickness / 2), e.x2 + e.borderThickness / 2, Math.min(e.y2 - e.borderThickness / 2, e.y3 - e.borderThickness / 2), \"transparent\", e.borderThickness, e.color, !1, !1, !1, !1), d.globalAlpha = 1, d.strokeStyle = e.whiskerColor, d.lineWidth = 2 * e.whiskerThickness, 0 < e.whiskerThickness && (d.beginPath(), d.moveTo(Math.floor(e.x3 - e.whiskerLength / 2), e.y4), d.lineTo(Math.ceil(e.x3 + e.whiskerLength / 2), e.y4), d.stroke(), d.beginPath(), d.moveTo(Math.floor(e.x3 - e.whiskerLength /\n 2), e.y1), d.lineTo(Math.ceil(e.x3 + e.whiskerLength / 2), e.y1), d.stroke()), d.globalAlpha = 1, d.strokeStyle = e.lineColor, d.lineWidth = 2 * e.lineThickness, 0 < e.lineThickness && (d.beginPath(), d.moveTo(e.x1, e.y5), d.lineTo(e.x2, e.y5), d.stroke()), d.restore(), d.globalAlpha = 1) : \"error\" === c.type && E(d, e.x1, e.y1, e.x2, e.y2, \"white\", e.whiskerProperties, e.stemProperties, e.isXYSwapped, 0.3))\n }\n }\n d.restore();\n d.globalAlpha = 1;\n d.beginPath()\n };\n $.prototype.getToolTipInnerHTML = function (a) {\n a = a.entries;\n for (var d = null, b = null, c = null, e = 0, g = \"\",\n k = !0, l = 0; l < a.length; l++)\n if (a[l].dataSeries.toolTipContent || a[l].dataPoint.toolTipContent) {\n k = !1;\n break\n } if (k && (this.content && \"function\" === typeof this.content || this.contentFormatter)) a = {\n chart: this.chart,\n toolTip: this.options,\n entries: a\n }, d = this.contentFormatter ? this.contentFormatter(a) : this.content(a);\n else if (this.shared && \"none\" !== this.chart.plotInfo.axisPlacement) {\n for (var p = null, h = \"\", l = 0; l < a.length; l++) b = a[l].dataSeries, c = a[l].dataPoint, e = a[l].index, g = \"\", 0 === l && (k && !this.content) && (this.chart.axisX && 0 <\n this.chart.axisX.length ? h += \"undefined\" !== typeof this.chart.axisX[0].labels[c.x] ? this.chart.axisX[0].labels[c.x] : \"{x}\" : this.chart.axisX2 && 0 < this.chart.axisX2.length && (h += \"undefined\" !== typeof this.chart.axisX2[0].labels[c.x] ? this.chart.axisX2[0].labels[c.x] : \"{x}\"), h += \"
    \", h = this.chart.replaceKeywordsWithValue(h, c, b, e)), null === c.toolTipContent || \"undefined\" === typeof c.toolTipContent && null === b.options.toolTipContent || (\"line\" === b.type || \"stepLine\" === b.type || \"spline\" === b.type || \"area\" === b.type || \"stepArea\" ===\n b.type || \"splineArea\" === b.type || \"column\" === b.type || \"bar\" === b.type || \"scatter\" === b.type || \"stackedColumn\" === b.type || \"stackedColumn100\" === b.type || \"stackedBar\" === b.type || \"stackedBar100\" === b.type || \"stackedArea\" === b.type || \"stackedArea100\" === b.type || \"waterfall\" === b.type ? (this.chart.axisX && 1 < this.chart.axisX.length && (g += p != b.axisXIndex ? b.axisX.title ? b.axisX.title + \"
    \" : \"X:{axisXIndex}
    \" : \"\"), g += c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ?\n this.content : \"{name}:  {y}\", p = b.axisXIndex) : \"bubble\" === b.type ? (this.chart.axisX && 1 < this.chart.axisX.length && (g += p != b.axisXIndex ? b.axisX.title ? b.axisX.title + \"
    \" : \"X:{axisXIndex}
    \" : \"\"), g += c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"{name}:  {y},   {z}\") :\n \"rangeColumn\" === b.type || \"rangeBar\" === b.type || \"rangeArea\" === b.type || \"rangeSplineArea\" === b.type || \"error\" === b.type ? (this.chart.axisX && 1 < this.chart.axisX.length && (g += p != b.axisXIndex ? b.axisX.title ? b.axisX.title + \"
    \" : \"X:{axisXIndex}
    \" : \"\"), g += c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"{name}:  {y[0]}, {y[1]}\") : \"candlestick\" ===\n b.type || \"ohlc\" === b.type ? (this.chart.axisX && 1 < this.chart.axisX.length && (g += p != b.axisXIndex ? b.axisX.title ? b.axisX.title + \"
    \" : \"X:{axisXIndex}
    \" : \"\"), g += c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"{name}:
    Open:   {y[0]}
    High:    {y[1]}
    Low:   {y[2]}
    Close:   {y[3]}\") : \"boxAndWhisker\" ===\n b.type && (this.chart.axisX && 1 < this.chart.axisX.length && (g += p != b.axisXIndex ? b.axisX.title ? b.axisX.title + \"
    \" : \"X:{axisXIndex}
    \" : \"\"), g += c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"{name}:
    Minimum:   {y[0]}
    Q1:               {y[1]}
    Q2:               {y[4]}
    Q3:               {y[2]}
    Maximum:  {y[3]}\"),\n null === d && (d = \"\"), !0 === this.reversed ? (d = this.chart.replaceKeywordsWithValue(g, c, b, e) + d, l < a.length - 1 && (d = \"
    \" + d)) : (d += this.chart.replaceKeywordsWithValue(g, c, b, e), l < a.length - 1 && (d += \"
    \")));\n null !== d && (d = h + d)\n } else {\n b = a[0].dataSeries;\n c = a[0].dataPoint;\n e = a[0].index;\n if (null === c.toolTipContent || \"undefined\" === typeof c.toolTipContent && null === b.options.toolTipContent) return null;\n \"line\" === b.type || \"stepLine\" === b.type || \"spline\" === b.type || \"area\" === b.type || \"stepArea\" === b.type || \"splineArea\" === b.type || \"column\" ===\n b.type || \"bar\" === b.type || \"scatter\" === b.type || \"stackedColumn\" === b.type || \"stackedColumn100\" === b.type || \"stackedBar\" === b.type || \"stackedBar100\" === b.type || \"stackedArea\" === b.type || \"stackedArea100\" === b.type || \"waterfall\" === b.type ? g = c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.label ? \"{label}\" : \"{x}\") + \":  {y}\" : \"bubble\" === b.type ? g = c.toolTipContent ?\n c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.label ? \"{label}\" : \"{x}\") + \":  {y},   {z}\" : \"pie\" === b.type || \"doughnut\" === b.type || \"funnel\" === b.type || \"pyramid\" === b.type ? g = c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.name ? \"{name}:  \" : c.label ? \"{label}:  \" : \"\") + \"{y}\" : \"rangeColumn\" === b.type || \"rangeBar\" === b.type || \"rangeArea\" === b.type || \"rangeSplineArea\" === b.type || \"error\" === b.type ? g = c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.label ? \"{label}\" : \"{x}\") + \" :  {y[0]},  {y[1]}\" :\n \"candlestick\" === b.type || \"ohlc\" === b.type ? g = c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent : this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.label ? \"{label}\" : \"{x}\") + \"
    Open:   {y[0]}
    High:    {y[1]}
    Low:     {y[2]}
    Close:   {y[3]}\" : \"boxAndWhisker\" === b.type && (g = c.toolTipContent ? c.toolTipContent : b.toolTipContent ? b.toolTipContent :\n this.content && \"function\" !== typeof this.content ? this.content : \"\" + (c.label ? \"{label}\" : \"{x}\") + \"
    Minimum:   {y[0]}
    Q1:               {y[1]}
    Q2:               {y[4]}
    Q3:               {y[2]}
    Maximum:  {y[3]}\");\n null === d && (d = \"\");\n d += this.chart.replaceKeywordsWithValue(g, c, b, e)\n }\n return d\n };\n $.prototype.enableAnimation = function () {\n if (!this.container.style.WebkitTransition) {\n var a = this.getContainerTransition(this.containerTransitionDuration);\n this.container.style.WebkitTransition = a;\n this.container.style.MsTransition = a;\n this.container.style.transition = a;\n this.container.style.MozTransition = this.mozContainerTransition\n }\n };\n $.prototype.disableAnimation = function () {\n this.container.style.WebkitTransition && (this.container.style.WebkitTransition =\n \"\", this.container.style.MozTransition = \"\", this.container.style.MsTransition = \"\", this.container.style.transition = \"\")\n };\n $.prototype.hide = function (a) {\n this.container && (this.container.style.display = \"none\", this.currentSeriesIndex = -1, this._prevY = this._prevX = NaN, (\"undefined\" === typeof a || a) && this.chart.resetOverlayedCanvas())\n };\n $.prototype.show = function (a, d, b) {\n this._updateToolTip(a, d, \"undefined\" === typeof b ? !1 : b)\n };\n $.prototype.fixMozTransitionDelay = function (a, d) {\n if (20 < this.chart._eventManager.lastObjectId) this.mozContainerTransition =\n this.getContainerTransition(0);\n else {\n var b = parseFloat(this.container.style.left),\n b = isNaN(b) ? 0 : b,\n c = parseFloat(this.container.style.bottom),\n c = isNaN(c) ? 0 : c;\n 10 < Math.sqrt(Math.pow(b - a, 2) + Math.pow(c - d, 2)) ? this.mozContainerTransition = this.getContainerTransition(0.1) : this.mozContainerTransition = this.getContainerTransition(0)\n }\n };\n $.prototype.getContainerTransition = function (a) {\n return \"left \" + a + \"s ease-out 0s, bottom \" + a + \"s ease-out 0s\"\n };\n ha.prototype.reset = function () {\n this.lastObjectId = 0;\n this.objectMap = [];\n this.rectangularRegionEventSubscriptions = [];\n this.previousDataPointEventObject = null;\n this.eventObjects = [];\n r && (this.ghostCtx.clearRect(0, 0, this.chart.width, this.chart.height), this.ghostCtx.beginPath())\n };\n ha.prototype.getNewObjectTrackingId = function () {\n return ++this.lastObjectId\n };\n ha.prototype.mouseEventHandler = function (a) {\n if (\"mousemove\" === a.type || \"click\" === a.type) {\n var d = [],\n b = Ra(a),\n c = null;\n if ((c = this.chart.getObjectAtXY(b.x, b.y, !1)) && \"undefined\" !== typeof this.objectMap[c])\n if (c = this.objectMap[c], \"dataPoint\" === c.objectType) {\n var e = this.chart.data[c.dataSeriesIndex],\n g = e.dataPoints[c.dataPointIndex],\n k = c.dataPointIndex;\n c.eventParameter = {\n x: b.x,\n y: b.y,\n dataPoint: g,\n dataSeries: e.options,\n dataPointIndex: k,\n dataSeriesIndex: e.index,\n chart: this.chart\n };\n c.eventContext = {\n context: g,\n userContext: g,\n mouseover: \"mouseover\",\n mousemove: \"mousemove\",\n mouseout: \"mouseout\",\n click: \"click\"\n };\n d.push(c);\n c = this.objectMap[e.id];\n c.eventParameter = {\n x: b.x,\n y: b.y,\n dataPoint: g,\n dataSeries: e.options,\n dataPointIndex: k,\n dataSeriesIndex: e.index,\n chart: this.chart\n };\n c.eventContext = {\n context: e,\n userContext: e.options,\n mouseover: \"mouseover\",\n mousemove: \"mousemove\",\n mouseout: \"mouseout\",\n click: \"click\"\n };\n d.push(this.objectMap[e.id])\n } else \"legendItem\" === c.objectType && (e = this.chart.data[c.dataSeriesIndex], g = null !== c.dataPointIndex ? e.dataPoints[c.dataPointIndex] : null, c.eventParameter = {\n x: b.x,\n y: b.y,\n dataSeries: e.options,\n dataPoint: g,\n dataPointIndex: c.dataPointIndex,\n dataSeriesIndex: c.dataSeriesIndex,\n chart: this.chart\n }, c.eventContext = {\n context: this.chart.legend,\n userContext: this.chart.legend.options,\n mouseover: \"itemmouseover\",\n mousemove: \"itemmousemove\",\n mouseout: \"itemmouseout\",\n click: \"itemclick\"\n }, d.push(c));\n e = [];\n for (b = 0; b < this.mouseoveredObjectMaps.length; b++) {\n g = !0;\n for (c = 0; c < d.length; c++)\n if (d[c].id === this.mouseoveredObjectMaps[b].id) {\n g = !1;\n break\n } g ? this.fireEvent(this.mouseoveredObjectMaps[b], \"mouseout\", a) : e.push(this.mouseoveredObjectMaps[b])\n }\n this.mouseoveredObjectMaps = e;\n for (b = 0; b < d.length; b++) {\n e = !1;\n for (c = 0; c < this.mouseoveredObjectMaps.length; c++)\n if (d[b].id === this.mouseoveredObjectMaps[c].id) {\n e = !0;\n break\n } e || (this.fireEvent(d[b], \"mouseover\", a), this.mouseoveredObjectMaps.push(d[b]));\n \"click\" === a.type ? this.fireEvent(d[b], \"click\", a) : \"mousemove\" === a.type && this.fireEvent(d[b], \"mousemove\", a)\n }\n }\n };\n ha.prototype.fireEvent = function (a, d, b) {\n if (a && d) {\n var c = a.eventParameter,\n e = a.eventContext,\n g = a.eventContext.userContext;\n g && (e && g[e[d]]) && g[e[d]].call(g, c);\n \"mouseout\" !== d ? g.cursor && g.cursor !== b.target.style.cursor && (b.target.style.cursor = g.cursor) : (b.target.style.cursor = this.chart._defaultCursor, delete a.eventParameter, delete a.eventContext);\n \"click\" === d && (\"dataPoint\" === a.objectType && this.chart.pieDoughnutClickHandler) &&\n this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex], c);\n \"click\" === d && (\"dataPoint\" === a.objectType && this.chart.funnelPyramidClickHandler) && this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex], c)\n }\n };\n ga.prototype.animate = function (a, d, b, c, e) {\n var g = this;\n this.chart.isAnimating = !0;\n e = e || M.easing.linear;\n b && this.animations.push({\n startTime: (new Date).getTime() + (a ? a : 0),\n duration: d,\n animationCallback: b,\n onComplete: c\n });\n for (a = []; 0 < this.animations.length;)\n if (d = this.animations.shift(),\n b = (new Date).getTime(), c = 0, d.startTime <= b && (c = e(Math.min(b - d.startTime, d.duration), 0, 1, d.duration), c = Math.min(c, 1), isNaN(c) || !isFinite(c)) && (c = 1), 1 > c && a.push(d), d.animationCallback(c), 1 <= c && d.onComplete) d.onComplete();\n this.animations = a;\n 0 < this.animations.length ? this.animationRequestId = this.chart.requestAnimFrame.call(window, function () {\n g.animate.call(g)\n }) : this.chart.isAnimating = !1\n };\n ga.prototype.cancelAllAnimations = function () {\n this.animations = [];\n this.animationRequestId && this.chart.cancelRequestAnimFrame.call(window,\n this.animationRequestId);\n this.animationRequestId = null;\n this.chart.isAnimating = !1\n };\n var M = {\n yScaleAnimation: function (a, d) {\n if (0 !== a) {\n var b = d.dest,\n c = d.source.canvas,\n e = d.animationBase;\n b.drawImage(c, 0, 0, c.width, c.height, 0, e - e * a, b.canvas.width / W, a * b.canvas.height / W)\n }\n },\n xScaleAnimation: function (a, d) {\n if (0 !== a) {\n var b = d.dest,\n c = d.source.canvas,\n e = d.animationBase;\n b.drawImage(c, 0, 0, c.width, c.height, e - e * a, 0, a * b.canvas.width / W, b.canvas.height / W)\n }\n },\n xClipAnimation: function (a, d) {\n if (0 !== a) {\n var b = d.dest,\n c = d.source.canvas;\n b.save();\n 0 < a && b.drawImage(c, 0, 0, c.width * a, c.height, 0, 0, c.width * a / W, c.height / W);\n b.restore()\n }\n },\n fadeInAnimation: function (a, d) {\n if (0 !== a) {\n var b = d.dest,\n c = d.source.canvas;\n b.save();\n b.globalAlpha = a;\n b.drawImage(c, 0, 0, c.width, c.height, 0, 0, b.canvas.width / W, b.canvas.height / W);\n b.restore()\n }\n },\n easing: {\n linear: function (a, d, b, c) {\n return b * a / c + d\n },\n easeOutQuad: function (a, d, b, c) {\n return -b * (a /= c) * (a - 2) + d\n },\n easeOutQuart: function (a, d, b, c) {\n return -b * ((a = a / c - 1) * a * a * a - 1) + d\n },\n easeInQuad: function (a, d, b, c) {\n return b * (a /= c) * a + d\n },\n easeInQuart: function (a,\n d, b, c) {\n return b * (a /= c) * a * a * a + d\n }\n }\n },\n ia = {\n drawMarker: function (a, d, b, c, e, g, k, l) {\n if (b) {\n var p = 1;\n b.fillStyle = g ? g : \"#000000\";\n b.strokeStyle = k ? k : \"#000000\";\n b.lineWidth = l ? l : 0;\n b.setLineDash && b.setLineDash(R(\"solid\", l));\n \"circle\" === c ? (b.moveTo(a, d), b.beginPath(), b.arc(a, d, e / 2, 0, 2 * Math.PI, !1), g && b.fill(), l && (k ? b.stroke() : (p = b.globalAlpha, b.globalAlpha = 0.15, b.strokeStyle = \"black\", b.stroke(), b.globalAlpha = p))) : \"square\" === c ? (b.beginPath(), b.rect(a - e / 2, d - e / 2, e, e), g && b.fill(), l && (k ? b.stroke() : (p = b.globalAlpha, b.globalAlpha =\n 0.15, b.strokeStyle = \"black\", b.stroke(), b.globalAlpha = p))) : \"triangle\" === c ? (b.beginPath(), b.moveTo(a - e / 2, d + e / 2), b.lineTo(a + e / 2, d + e / 2), b.lineTo(a, d - e / 2), b.closePath(), g && b.fill(), l && (k ? b.stroke() : (p = b.globalAlpha, b.globalAlpha = 0.15, b.strokeStyle = \"black\", b.stroke(), b.globalAlpha = p)), b.beginPath()) : \"cross\" === c && (b.strokeStyle = g, b.lineWidth = e / 4, b.beginPath(), b.moveTo(a - e / 2, d - e / 2), b.lineTo(a + e / 2, d + e / 2), b.stroke(), b.moveTo(a + e / 2, d - e / 2), b.lineTo(a - e / 2, d + e / 2), b.stroke())\n }\n },\n drawMarkers: function (a) {\n for (var d =\n 0; d < a.length; d++) {\n var b = a[d];\n ia.drawMarker(b.x, b.y, b.ctx, b.type, b.size, b.color, b.borderColor, b.borderThickness)\n }\n }\n };\n return p\n }();\n Na.Chart.version = \"v2.3.1 GA\"\n})();\n\n/*\nexcanvas is used to support IE678 which do not implement HTML5 Canvas Element. You can safely remove the following excanvas code if you don't need to support older browsers.\n\nCopyright 2006 Google Inc. https://code.google.com/p/explorercanvas/\nLicensed under the Apache License, Version 2.0\n*/\ndocument.createElement(\"canvas\").getContext || function () {\n function V() {\n return this.context_ || (this.context_ = new C(this))\n }\n\n function W(a, b, c) {\n var g = M.call(arguments, 2);\n return function () {\n return a.apply(b, g.concat(M.call(arguments)))\n }\n }\n\n function N(a) {\n return String(a).replace(/&/g, \"&\").replace(/\"/g, \""\")\n }\n\n function O(a) {\n a.namespaces.g_vml_ || a.namespaces.add(\"g_vml_\", \"urn:schemas-microsoft-com:vml\", \"#default#VML\");\n a.namespaces.g_o_ || a.namespaces.add(\"g_o_\", \"urn:schemas-microsoft-com:office:office\", \"#default#VML\");\n a.styleSheets.ex_canvas_ || (a = a.createStyleSheet(), a.owningElement.id = \"ex_canvas_\", a.cssText = \"canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}\")\n }\n\n function X(a) {\n var b = a.srcElement;\n switch (a.propertyName) {\n case \"width\":\n b.getContext().clearRect();\n b.style.width = b.attributes.width.nodeValue + \"px\";\n b.firstChild.style.width = b.clientWidth + \"px\";\n break;\n case \"height\":\n b.getContext().clearRect(), b.style.height = b.attributes.height.nodeValue + \"px\", b.firstChild.style.height = b.clientHeight +\n \"px\"\n }\n }\n\n function Y(a) {\n a = a.srcElement;\n a.firstChild && (a.firstChild.style.width = a.clientWidth + \"px\", a.firstChild.style.height = a.clientHeight + \"px\")\n }\n\n function D() {\n return [\n [1, 0, 0],\n [0, 1, 0],\n [0, 0, 1]\n ]\n }\n\n function t(a, b) {\n for (var c = D(), g = 0; 3 > g; g++)\n for (var e = 0; 3 > e; e++) {\n for (var f = 0, d = 0; 3 > d; d++) f += a[g][d] * b[d][e];\n c[g][e] = f\n }\n return c\n }\n\n function P(a, b) {\n b.fillStyle = a.fillStyle;\n b.lineCap = a.lineCap;\n b.lineJoin = a.lineJoin;\n b.lineWidth = a.lineWidth;\n b.miterLimit = a.miterLimit;\n b.shadowBlur = a.shadowBlur;\n b.shadowColor = a.shadowColor;\n b.shadowOffsetX =\n a.shadowOffsetX;\n b.shadowOffsetY = a.shadowOffsetY;\n b.strokeStyle = a.strokeStyle;\n b.globalAlpha = a.globalAlpha;\n b.font = a.font;\n b.textAlign = a.textAlign;\n b.textBaseline = a.textBaseline;\n b.arcScaleX_ = a.arcScaleX_;\n b.arcScaleY_ = a.arcScaleY_;\n b.lineScale_ = a.lineScale_\n }\n\n function Q(a) {\n var b = a.indexOf(\"(\", 3),\n c = a.indexOf(\")\", b + 1),\n b = a.substring(b + 1, c).split(\",\");\n if (4 != b.length || \"a\" != a.charAt(3)) b[3] = 1;\n return b\n }\n\n function E(a, b, c) {\n return Math.min(c, Math.max(b, a))\n }\n\n function F(a, b, c) {\n 0 > c && c++;\n 1 < c && c--;\n return 1 > 6 * c ? a + 6 * (b - a) * c :\n 1 > 2 * c ? b : 2 > 3 * c ? a + 6 * (b - a) * (2 / 3 - c) : a\n }\n\n function G(a) {\n if (a in H) return H[a];\n var b, c = 1;\n a = String(a);\n if (\"#\" == a.charAt(0)) b = a;\n else if (/^rgb/.test(a)) {\n c = Q(a);\n b = \"#\";\n for (var g, e = 0; 3 > e; e++) g = -1 != c[e].indexOf(\"%\") ? Math.floor(255 * (parseFloat(c[e]) / 100)) : +c[e], b += v[E(g, 0, 255)];\n c = +c[3]\n } else if (/^hsl/.test(a)) {\n e = c = Q(a);\n b = parseFloat(e[0]) / 360 % 360;\n 0 > b && b++;\n g = E(parseFloat(e[1]) / 100, 0, 1);\n e = E(parseFloat(e[2]) / 100, 0, 1);\n if (0 == g) g = e = b = e;\n else {\n var f = 0.5 > e ? e * (1 + g) : e + g - e * g,\n d = 2 * e - f;\n g = F(d, f, b + 1 / 3);\n e = F(d, f, b);\n b = F(d, f, b - 1 / 3)\n }\n b = \"#\" +\n v[Math.floor(255 * g)] + v[Math.floor(255 * e)] + v[Math.floor(255 * b)];\n c = c[3]\n } else b = Z[a] || a;\n return H[a] = {\n color: b,\n alpha: c\n }\n }\n\n function C(a) {\n this.m_ = D();\n this.mStack_ = [];\n this.aStack_ = [];\n this.currentPath_ = [];\n this.fillStyle = this.strokeStyle = \"#000\";\n this.lineWidth = 1;\n this.lineJoin = \"miter\";\n this.lineCap = \"butt\";\n this.miterLimit = 1 * q;\n this.globalAlpha = 1;\n this.font = \"10px sans-serif\";\n this.textAlign = \"left\";\n this.textBaseline = \"alphabetic\";\n this.canvas = a;\n var b = \"width:\" + a.clientWidth + \"px;height:\" + a.clientHeight + \"px;overflow:hidden;position:absolute\",\n c = a.ownerDocument.createElement(\"div\");\n c.style.cssText = b;\n a.appendChild(c);\n b = c.cloneNode(!1);\n b.style.backgroundColor = \"red\";\n b.style.filter = \"alpha(opacity=0)\";\n a.appendChild(b);\n this.element_ = c;\n this.lineScale_ = this.arcScaleY_ = this.arcScaleX_ = 1\n }\n\n function R(a, b, c, g) {\n a.currentPath_.push({\n type: \"bezierCurveTo\",\n cp1x: b.x,\n cp1y: b.y,\n cp2x: c.x,\n cp2y: c.y,\n x: g.x,\n y: g.y\n });\n a.currentX_ = g.x;\n a.currentY_ = g.y\n }\n\n function S(a, b) {\n var c = G(a.strokeStyle),\n g = c.color,\n c = c.alpha * a.globalAlpha,\n e = a.lineScale_ * a.lineWidth;\n 1 > e && (c *= e);\n b.push(\"')\n }\n\n function T(a, b, c, g) {\n var e = a.fillStyle,\n f = a.arcScaleX_,\n d = a.arcScaleY_,\n k = g.x - c.x,\n n = g.y - c.y;\n if (e instanceof w) {\n var h = 0,\n l = g = 0,\n u = 0,\n m = 1;\n if (\"gradient\" == e.type_) {\n h = e.x1_ / f;\n c = e.y1_ / d;\n var p = s(a, e.x0_ / f, e.y0_ / d),\n h = s(a, h, c),\n h = 180 * Math.atan2(h.x - p.x, h.y - p.y) / Math.PI;\n 0 > h && (h += 360);\n 1E-6 > h && (h = 0)\n } else p = s(a, e.x0_, e.y0_), g = (p.x - c.x) / k, l = (p.y - c.y) / n, k /= f * q,\n n /= d * q, m = x.max(k, n), u = 2 * e.r0_ / m, m = 2 * e.r1_ / m - u;\n f = e.colors_;\n f.sort(function (a, b) {\n return a.offset - b.offset\n });\n d = f.length;\n p = f[0].color;\n c = f[d - 1].color;\n k = f[0].alpha * a.globalAlpha;\n a = f[d - 1].alpha * a.globalAlpha;\n for (var n = [], r = 0; r < d; r++) {\n var t = f[r];\n n.push(t.offset * m + u + \" \" + t.color)\n }\n b.push('')\n } else e instanceof\n I ? k && n && b.push(\"') : (e = G(a.fillStyle), b.push(''))\n }\n\n function s(a, b, c) {\n a = a.m_;\n return {\n x: q * (b * a[0][0] + c * a[1][0] + a[2][0]) - r,\n y: q * (b * a[0][1] + c * a[1][1] + a[2][1]) - r\n }\n }\n\n function z(a, b, c) {\n isFinite(b[0][0]) && (isFinite(b[0][1]) && isFinite(b[1][0]) && isFinite(b[1][1]) && isFinite(b[2][0]) && isFinite(b[2][1])) && (a.m_ = b, c && (a.lineScale_ = aa(ba(b[0][0] * b[1][1] - b[0][1] *\n b[1][0]))))\n }\n\n function w(a) {\n this.type_ = a;\n this.r1_ = this.y1_ = this.x1_ = this.r0_ = this.y0_ = this.x0_ = 0;\n this.colors_ = []\n }\n\n function I(a, b) {\n if (!a || 1 != a.nodeType || \"IMG\" != a.tagName) throw new A(\"TYPE_MISMATCH_ERR\");\n if (\"complete\" != a.readyState) throw new A(\"INVALID_STATE_ERR\");\n switch (b) {\n case \"repeat\":\n case null:\n case \"\":\n this.repetition_ = \"repeat\";\n break;\n case \"repeat-x\":\n case \"repeat-y\":\n case \"no-repeat\":\n this.repetition_ = b;\n break;\n default:\n throw new A(\"SYNTAX_ERR\");\n }\n this.src_ = a.src;\n this.width_ = a.width;\n this.height_ = a.height\n }\n\n function A(a) {\n this.code = this[a];\n this.message = a + \": DOM Exception \" + this.code\n }\n var x = Math,\n k = x.round,\n J = x.sin,\n K = x.cos,\n ba = x.abs,\n aa = x.sqrt,\n q = 10,\n r = q / 2;\n navigator.userAgent.match(/MSIE ([\\d.]+)?/);\n var M = Array.prototype.slice;\n O(document);\n var U = {\n init: function (a) {\n a = a || document;\n a.createElement(\"canvas\");\n a.attachEvent(\"onreadystatechange\", W(this.init_, this, a))\n },\n init_: function (a) {\n a = a.getElementsByTagName(\"canvas\");\n for (var b = 0; b < a.length; b++) this.initElement(a[b])\n },\n initElement: function (a) {\n if (!a.getContext) {\n a.getContext =\n V;\n O(a.ownerDocument);\n a.innerHTML = \"\";\n a.attachEvent(\"onpropertychange\", X);\n a.attachEvent(\"onresize\", Y);\n var b = a.attributes;\n b.width && b.width.specified ? a.style.width = b.width.nodeValue + \"px\" : a.width = a.clientWidth;\n b.height && b.height.specified ? a.style.height = b.height.nodeValue + \"px\" : a.height = a.clientHeight\n }\n return a\n }\n };\n U.init();\n for (var v = [], d = 0; 16 > d; d++)\n for (var B = 0; 16 > B; B++) v[16 * d + B] = d.toString(16) + B.toString(16);\n var Z = {\n aliceblue: \"#F0F8FF\",\n antiquewhite: \"#FAEBD7\",\n aquamarine: \"#7FFFD4\",\n azure: \"#F0FFFF\",\n beige: \"#F5F5DC\",\n bisque: \"#FFE4C4\",\n black: \"#000000\",\n blanchedalmond: \"#FFEBCD\",\n blueviolet: \"#8A2BE2\",\n brown: \"#A52A2A\",\n burlywood: \"#DEB887\",\n cadetblue: \"#5F9EA0\",\n chartreuse: \"#7FFF00\",\n chocolate: \"#D2691E\",\n coral: \"#FF7F50\",\n cornflowerblue: \"#6495ED\",\n cornsilk: \"#FFF8DC\",\n crimson: \"#DC143C\",\n cyan: \"#00FFFF\",\n darkblue: \"#00008B\",\n darkcyan: \"#008B8B\",\n darkgoldenrod: \"#B8860B\",\n darkgray: \"#A9A9A9\",\n darkgreen: \"#006400\",\n darkgrey: \"#A9A9A9\",\n darkkhaki: \"#BDB76B\",\n darkmagenta: \"#8B008B\",\n darkolivegreen: \"#556B2F\",\n darkorange: \"#FF8C00\",\n darkorchid: \"#9932CC\",\n darkred: \"#8B0000\",\n darksalmon: \"#E9967A\",\n darkseagreen: \"#8FBC8F\",\n darkslateblue: \"#483D8B\",\n darkslategray: \"#2F4F4F\",\n darkslategrey: \"#2F4F4F\",\n darkturquoise: \"#00CED1\",\n darkviolet: \"#9400D3\",\n deeppink: \"#FF1493\",\n deepskyblue: \"#00BFFF\",\n dimgray: \"#696969\",\n dimgrey: \"#696969\",\n dodgerblue: \"#1E90FF\",\n firebrick: \"#B22222\",\n floralwhite: \"#FFFAF0\",\n forestgreen: \"#228B22\",\n gainsboro: \"#DCDCDC\",\n ghostwhite: \"#F8F8FF\",\n gold: \"#FFD700\",\n goldenrod: \"#DAA520\",\n grey: \"#808080\",\n greenyellow: \"#ADFF2F\",\n honeydew: \"#F0FFF0\",\n hotpink: \"#FF69B4\",\n indianred: \"#CD5C5C\",\n indigo: \"#4B0082\",\n ivory: \"#FFFFF0\",\n khaki: \"#F0E68C\",\n lavender: \"#E6E6FA\",\n lavenderblush: \"#FFF0F5\",\n lawngreen: \"#7CFC00\",\n lemonchiffon: \"#FFFACD\",\n lightblue: \"#ADD8E6\",\n lightcoral: \"#F08080\",\n lightcyan: \"#E0FFFF\",\n lightgoldenrodyellow: \"#FAFAD2\",\n lightgreen: \"#90EE90\",\n lightgrey: \"#D3D3D3\",\n lightpink: \"#FFB6C1\",\n lightsalmon: \"#FFA07A\",\n lightseagreen: \"#20B2AA\",\n lightskyblue: \"#87CEFA\",\n lightslategray: \"#778899\",\n lightslategrey: \"#778899\",\n lightsteelblue: \"#B0C4DE\",\n lightyellow: \"#FFFFE0\",\n limegreen: \"#32CD32\",\n linen: \"#FAF0E6\",\n magenta: \"#FF00FF\",\n mediumaquamarine: \"#66CDAA\",\n mediumblue: \"#0000CD\",\n mediumorchid: \"#BA55D3\",\n mediumpurple: \"#9370DB\",\n mediumseagreen: \"#3CB371\",\n mediumslateblue: \"#7B68EE\",\n mediumspringgreen: \"#00FA9A\",\n mediumturquoise: \"#48D1CC\",\n mediumvioletred: \"#C71585\",\n midnightblue: \"#191970\",\n mintcream: \"#F5FFFA\",\n mistyrose: \"#FFE4E1\",\n moccasin: \"#FFE4B5\",\n navajowhite: \"#FFDEAD\",\n oldlace: \"#FDF5E6\",\n olivedrab: \"#6B8E23\",\n orange: \"#FFA500\",\n orangered: \"#FF4500\",\n orchid: \"#DA70D6\",\n palegoldenrod: \"#EEE8AA\",\n palegreen: \"#98FB98\",\n paleturquoise: \"#AFEEEE\",\n palevioletred: \"#DB7093\",\n papayawhip: \"#FFEFD5\",\n peachpuff: \"#FFDAB9\",\n peru: \"#CD853F\",\n pink: \"#FFC0CB\",\n plum: \"#DDA0DD\",\n powderblue: \"#B0E0E6\",\n rosybrown: \"#BC8F8F\",\n royalblue: \"#4169E1\",\n saddlebrown: \"#8B4513\",\n salmon: \"#FA8072\",\n sandybrown: \"#F4A460\",\n seagreen: \"#2E8B57\",\n seashell: \"#FFF5EE\",\n sienna: \"#A0522D\",\n skyblue: \"#87CEEB\",\n slateblue: \"#6A5ACD\",\n slategray: \"#708090\",\n slategrey: \"#708090\",\n snow: \"#FFFAFA\",\n springgreen: \"#00FF7F\",\n steelblue: \"#4682B4\",\n tan: \"#D2B48C\",\n thistle: \"#D8BFD8\",\n tomato: \"#FF6347\",\n turquoise: \"#40E0D0\",\n violet: \"#EE82EE\",\n wheat: \"#F5DEB3\",\n whitesmoke: \"#F5F5F5\",\n yellowgreen: \"#9ACD32\"\n },\n H = {},\n L = {},\n $ = {\n butt: \"flat\",\n round: \"round\"\n },\n d = C.prototype;\n d.clearRect = function () {\n this.textMeasureEl_ && (this.textMeasureEl_.removeNode(!0), this.textMeasureEl_ = null);\n this.element_.innerHTML = \"\"\n };\n d.beginPath = function () {\n this.currentPath_ = []\n };\n d.moveTo = function (a, b) {\n var c = s(this, a, b);\n this.currentPath_.push({\n type: \"moveTo\",\n x: c.x,\n y: c.y\n });\n this.currentX_ = c.x;\n this.currentY_ = c.y\n };\n d.lineTo = function (a, b) {\n var c = s(this, a, b);\n this.currentPath_.push({\n type: \"lineTo\",\n x: c.x,\n y: c.y\n });\n this.currentX_ = c.x;\n this.currentY_ = c.y\n };\n d.bezierCurveTo =\n function (a, b, c, g, e, f) {\n e = s(this, e, f);\n a = s(this, a, b);\n c = s(this, c, g);\n R(this, a, c, e)\n };\n d.quadraticCurveTo = function (a, b, c, g) {\n a = s(this, a, b);\n c = s(this, c, g);\n g = {\n x: this.currentX_ + 2 / 3 * (a.x - this.currentX_),\n y: this.currentY_ + 2 / 3 * (a.y - this.currentY_)\n };\n R(this, g, {\n x: g.x + (c.x - this.currentX_) / 3,\n y: g.y + (c.y - this.currentY_) / 3\n }, c)\n };\n d.arc = function (a, b, c, g, e, f) {\n c *= q;\n var d = f ? \"at\" : \"wa\",\n k = a + K(g) * c - r,\n n = b + J(g) * c - r;\n g = a + K(e) * c - r;\n e = b + J(e) * c - r;\n k != g || f || (k += 0.125);\n a = s(this, a, b);\n k = s(this, k, n);\n g = s(this, g, e);\n this.currentPath_.push({\n type: d,\n x: a.x,\n y: a.y,\n radius: c,\n xStart: k.x,\n yStart: k.y,\n xEnd: g.x,\n yEnd: g.y\n })\n };\n d.rect = function (a, b, c, g) {\n this.moveTo(a, b);\n this.lineTo(a + c, b);\n this.lineTo(a + c, b + g);\n this.lineTo(a, b + g);\n this.closePath()\n };\n d.strokeRect = function (a, b, c, g) {\n var e = this.currentPath_;\n this.beginPath();\n this.moveTo(a, b);\n this.lineTo(a + c, b);\n this.lineTo(a + c, b + g);\n this.lineTo(a, b + g);\n this.closePath();\n this.stroke();\n this.currentPath_ = e\n };\n d.fillRect = function (a, b, c, g) {\n var e = this.currentPath_;\n this.beginPath();\n this.moveTo(a, b);\n this.lineTo(a + c, b);\n this.lineTo(a +\n c, b + g);\n this.lineTo(a, b + g);\n this.closePath();\n this.fill();\n this.currentPath_ = e\n };\n d.createLinearGradient = function (a, b, c, g) {\n var e = new w(\"gradient\");\n e.x0_ = a;\n e.y0_ = b;\n e.x1_ = c;\n e.y1_ = g;\n return e\n };\n d.createRadialGradient = function (a, b, c, g, e, f) {\n var d = new w(\"gradientradial\");\n d.x0_ = a;\n d.y0_ = b;\n d.r0_ = c;\n d.x1_ = g;\n d.y1_ = e;\n d.r1_ = f;\n return d\n };\n d.drawImage = function (a, b) {\n var c, g, e, d, r, y, n, h;\n e = a.runtimeStyle.width;\n d = a.runtimeStyle.height;\n a.runtimeStyle.width = \"auto\";\n a.runtimeStyle.height = \"auto\";\n var l = a.width,\n u = a.height;\n a.runtimeStyle.width =\n e;\n a.runtimeStyle.height = d;\n if (3 == arguments.length) c = arguments[1], g = arguments[2], r = y = 0, n = e = l, h = d = u;\n else if (5 == arguments.length) c = arguments[1], g = arguments[2], e = arguments[3], d = arguments[4], r = y = 0, n = l, h = u;\n else if (9 == arguments.length) r = arguments[1], y = arguments[2], n = arguments[3], h = arguments[4], c = arguments[5], g = arguments[6], e = arguments[7], d = arguments[8];\n else throw Error(\"Invalid number of arguments\");\n var m = s(this, c, g),\n p = [];\n p.push(\" ', '\", \"\");\n this.element_.insertAdjacentHTML(\"BeforeEnd\", p.join(\"\"))\n };\n d.stroke = function (a) {\n var b = [];\n b.push(\" d.x) d.x = f.x;\n if (null == c.y || f.y < c.y) c.y = f.y;\n if (null == d.y || f.y > d.y) d.y = f.y\n }\n }\n b.push(' \">');\n a ? T(this, b, c, d) : S(this, b);\n b.push(\"\");\n this.element_.insertAdjacentHTML(\"beforeEnd\", b.join(\"\"))\n };\n d.fill = function () {\n this.stroke(!0)\n };\n d.closePath = function () {\n this.currentPath_.push({\n type: \"close\"\n })\n };\n d.save = function () {\n var a = {};\n P(this, a);\n this.aStack_.push(a);\n this.mStack_.push(this.m_);\n this.m_ = t(D(), this.m_)\n };\n d.restore = function () {\n this.aStack_.length && (P(this.aStack_.pop(), this), this.m_ = this.mStack_.pop())\n };\n d.translate = function (a, b) {\n z(this, t([\n [1, 0, 0],\n [0, 1, 0],\n [a, b, 1]\n ], this.m_), !1)\n };\n d.rotate = function (a) {\n var b = K(a);\n a = J(a);\n z(this, t([\n [b, a, 0],\n [-a, b, 0],\n [0, 0, 1]\n ], this.m_), !1)\n };\n d.scale = function (a, b) {\n this.arcScaleX_ *= a;\n this.arcScaleY_ *= b;\n z(this, t([\n [a, 0, 0],\n [0, b, 0],\n [0, 0, 1]\n ], this.m_), !0)\n };\n d.transform = function (a, b, c, d, e, f) {\n z(this, t([\n [a,\n b, 0\n ],\n [c, d, 0],\n [e, f, 1]\n ], this.m_), !0)\n };\n d.setTransform = function (a, b, c, d, e, f) {\n z(this, [\n [a, b, 0],\n [c, d, 0],\n [e, f, 1]\n ], !0)\n };\n d.drawText_ = function (a, b, c, d, e) {\n var f = this.m_;\n d = 0;\n var r = 1E3,\n t = 0,\n n = [],\n h;\n h = this.font;\n if (L[h]) h = L[h];\n else {\n var l = document.createElement(\"div\").style;\n try {\n l.font = h\n } catch (u) { }\n h = L[h] = {\n style: l.fontStyle || \"normal\",\n variant: l.fontVariant || \"normal\",\n weight: l.fontWeight || \"normal\",\n size: l.fontSize || 10,\n family: l.fontFamily || \"sans-serif\"\n }\n }\n var l = h,\n m = this.element_;\n h = {};\n for (var p in l) h[p] = l[p];\n p = parseFloat(m.currentStyle.fontSize);\n m = parseFloat(l.size);\n \"number\" == typeof l.size ? h.size = l.size : -1 != l.size.indexOf(\"px\") ? h.size = m : -1 != l.size.indexOf(\"em\") ? h.size = p * m : -1 != l.size.indexOf(\"%\") ? h.size = p / 100 * m : -1 != l.size.indexOf(\"pt\") ? h.size = m / 0.75 : h.size = p;\n h.size *= 0.981;\n p = h.style + \" \" + h.variant + \" \" + h.weight + \" \" + h.size + \"px \" + h.family;\n m = this.element_.currentStyle;\n l = this.textAlign.toLowerCase();\n switch (l) {\n case \"left\":\n case \"center\":\n case \"right\":\n break;\n case \"end\":\n l = \"ltr\" == m.direction ? \"right\" : \"left\";\n break;\n case \"start\":\n l = \"rtl\" == m.direction ? \"right\" :\n \"left\";\n break;\n default:\n l = \"left\"\n }\n switch (this.textBaseline) {\n case \"hanging\":\n case \"top\":\n t = h.size / 1.75;\n break;\n case \"middle\":\n break;\n default:\n case null:\n case \"alphabetic\":\n case \"ideographic\":\n case \"bottom\":\n t = -h.size / 2.25\n }\n switch (l) {\n case \"right\":\n d = 1E3;\n r = 0.05;\n break;\n case \"center\":\n d = r = 500\n }\n b = s(this, b + 0, c + t);\n n.push('');\n e ? S(this, n) : T(this, n, {\n x: -d,\n y: 0\n }, {\n x: r,\n y: h.size\n });\n e = f[0][0].toFixed(3) + \",\" + f[1][0].toFixed(3) + \",\" + f[0][1].toFixed(3) + \",\" + f[1][1].toFixed(3) + \",0,0\";\n b = k(b.x / q) + \",\" + k(b.y / q);\n n.push('', '', '');\n this.element_.insertAdjacentHTML(\"beforeEnd\", n.join(\"\"))\n };\n d.fillText = function (a, b, c, d) {\n this.drawText_(a, b, c, d, !1)\n };\n d.strokeText = function (a,\n b, c, d) {\n this.drawText_(a, b, c, d, !0)\n };\n d.measureText = function (a) {\n this.textMeasureEl_ || (this.element_.insertAdjacentHTML(\"beforeEnd\", ''), this.textMeasureEl_ = this.element_.lastChild);\n var b = this.element_.ownerDocument;\n this.textMeasureEl_.innerHTML = \"\";\n this.textMeasureEl_.style.font = this.font;\n this.textMeasureEl_.appendChild(b.createTextNode(a));\n return {\n width: this.textMeasureEl_.offsetWidth\n }\n };\n d.clip = function () { };\n d.arcTo = function () { };\n d.createPattern = function (a, b) {\n return new I(a, b)\n };\n w.prototype.addColorStop = function (a, b) {\n b = G(b);\n this.colors_.push({\n offset: a,\n color: b.color,\n alpha: b.alpha\n })\n };\n d = A.prototype = Error();\n d.INDEX_SIZE_ERR = 1;\n d.DOMSTRING_SIZE_ERR = 2;\n d.HIERARCHY_REQUEST_ERR = 3;\n d.WRONG_DOCUMENT_ERR = 4;\n d.INVALID_CHARACTER_ERR = 5;\n d.NO_DATA_ALLOWED_ERR = 6;\n d.NO_MODIFICATION_ALLOWED_ERR = 7;\n d.NOT_FOUND_ERR = 8;\n d.NOT_SUPPORTED_ERR = 9;\n d.INUSE_ATTRIBUTE_ERR = 10;\n d.INVALID_STATE_ERR = 11;\n d.SYNTAX_ERR = 12;\n d.INVALID_MODIFICATION_ERR =\n 13;\n d.NAMESPACE_ERR = 14;\n d.INVALID_ACCESS_ERR = 15;\n d.VALIDATION_ERR = 16;\n d.TYPE_MISMATCH_ERR = 17;\n G_vmlCanvasManager = U;\n CanvasRenderingContext2D = C;\n CanvasGradient = w;\n CanvasPattern = I;\n DOMException = A\n}();\n/*eslint-enable*/\n/*jshint ignore:end*/","import { Component, OnInit } from '@angular/core';\r\nimport { DashBoardService } from 'src/app/utils/services/dash-board.service';\r\nimport { common } from 'src/app/app.common';\r\nimport { Router } from '@angular/router';\r\nimport { Chart } from 'chart.js';\r\nimport * as CanvasJS from './canvasjs.min';\r\nimport * as Canvas from './canvasjs.min.js';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { StudentSortService } from 'src/app/Utils/services/student-sort.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.scss'],\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n data: any;\r\n Token: any;\r\n dataChart: any = [];\r\n chart: any;\r\n SinhVienDangO: any = 0;\r\n QuyDinhKhoanNopChuaNop: any = 0;\r\n DangKyChuaDuyet: any = 0;\r\n DeXuatTrongNgay: any = 0;\r\n DeXuatChuaDuyet: any = 0;\r\n DeXuatChuaHoanThanh: any = 0;\r\n SinhVienChuaXepPhong: any = 0;\r\n TongSucChua: any = 0;\r\n SoChoTrong: any = 0;\r\n\r\n PieChart = [];\r\n BD1: any = 1;\r\n BD2: any = 1;\r\n data_thoihoc: any = [];\r\n data_khoaHoc: any;\r\n khoaSlected: any;\r\n\r\n public com: common;\r\n constructor(\r\n private DashBoardService: DashBoardService,\r\n public router: Router,\r\n private titleService: Title,\r\n public Service: StudentSortService,\r\n private spinner: NgxSpinnerService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.com = new common(this.router);\r\n this.com.CheckLogin();\r\n var a = this.com.getUserinfo();\r\n this.Token = a.Token;\r\n this.getList();\r\n this.getListKhoaHoc();\r\n this.titleService.setTitle('Trang chủ | UniDormitory');\r\n }\r\n\r\n getListKhoaHoc() {\r\n this.DashBoardService.getListKhoaHoc(this.Token).subscribe((res) => {\r\n this.data_khoaHoc = res.Data;\r\n });\r\n }\r\n\r\n async getDataDashboard() {\r\n this.spinner.show();\r\n this.DashBoardService.getList(\r\n this.com.getUserinfo().Info.UserID,\r\n this.khoaSlected,\r\n this.Token\r\n ).subscribe((z) => {\r\n this.spinner.hide();\r\n this.data = z.Data;\r\n this.SinhVienDangO = this.data.SinhVienDangO;\r\n this.QuyDinhKhoanNopChuaNop = this.data.QuyDinhKhoanNopChuaNop;\r\n this.DangKyChuaDuyet = this.data.DangKyChuaDuyet;\r\n this.DeXuatTrongNgay = this.data.DeXuatTrongNgay;\r\n this.DeXuatChuaDuyet = this.data.DeXuatChuaDuyet;\r\n this.DeXuatChuaHoanThanh = this.data.DeXuatChuaHoanThanh;\r\n this.data_thoihoc = this.data.DashBoard_ThoiHocNgungHoc;\r\n this.TongSucChua = this.data.TongSucChua;\r\n this.SoChoTrong = this.data.SoChoTrong;\r\n this.renderChart1();\r\n this.renderChart2();\r\n });\r\n }\r\n\r\n renderChart1() {\r\n let chart = new CanvasJS.Chart('chartContainer', {\r\n theme: 'light1',\r\n animationEnabled: true,\r\n title: {\r\n text: 'Giới tính',\r\n fontFamily: 'sans-serif',\r\n\r\n fontSize: 20,\r\n },\r\n data: [\r\n {\r\n type: 'pie',\r\n showInLegend: true,\r\n toolTipContent: '{name}: {y} (#percent%)',\r\n indexLabel: '{name}: {y} người - (#percent%)',\r\n dataPoints: [\r\n { y: this.data.Nam, name: 'Nam' },\r\n { y: this.data.Nu, name: 'Nữ' },\r\n ],\r\n },\r\n ],\r\n });\r\n chart.render();\r\n // if (this.BD1 == 2) {\r\n // let chart = new CanvasJS.Chart('chartContainer', {\r\n // theme: 'light1',\r\n // animationEnabled: true,\r\n // title: {\r\n // text: 'Đối tượng nội trú',\r\n // fontFamily: 'sans-serif',\r\n\r\n // fontSize: 20,\r\n // },\r\n // data: [\r\n // {\r\n // type: 'pie',\r\n // showInLegend: true,\r\n // toolTipContent: '{name}: {y} (#percent%)',\r\n // indexLabel: '{name}: {y} người - (#percent%)',\r\n // dataPoints: [\r\n // { y: this.data.DoiTuongChinhSach, name: 'Đối tượng chính sách' },\r\n // { y: this.data.DoiTuongKhac, name: 'Đối tượng khác' },\r\n // ],\r\n // },\r\n // ],\r\n // });\r\n // chart.render();\r\n // } else {\r\n // let chart = new CanvasJS.Chart('chartContainer', {\r\n // theme: 'light1',\r\n // animationEnabled: true,\r\n // title: {\r\n // text: 'Giới tính',\r\n // fontFamily: 'sans-serif',\r\n\r\n // fontSize: 20,\r\n // },\r\n // data: [\r\n // {\r\n // type: 'pie',\r\n // showInLegend: true,\r\n // toolTipContent: '{name}: {y} (#percent%)',\r\n // indexLabel: '{name}: {y} người - (#percent%)',\r\n // dataPoints: [\r\n // { y: this.data.Nam, name: 'Nam' },\r\n // { y: this.data.Nu, name: 'Nữ' },\r\n // ],\r\n // },\r\n // ],\r\n // });\r\n // chart.render();\r\n // }\r\n }\r\n\r\n renderChart2() {\r\n var dataPoints1 = [];\r\n var dataPoints2 = [];\r\n var tittle = '';\r\n if (this.BD2 == 1) {\r\n tittle = 'Biểu đồ sinh viên theo giới tính - toà nhà';\r\n for (var i = 0; i < this.data.Data_GT_ToaNha.length; i++) {\r\n dataPoints1.push({\r\n label: this.data.Data_GT_ToaNha[i].Ten_cot,\r\n y: this.data.Data_GT_ToaNha[i].Nam,\r\n });\r\n dataPoints2.push({\r\n label: this.data.Data_GT_ToaNha[i].Ten_cot,\r\n y: this.data.Data_GT_ToaNha[i].Nu,\r\n });\r\n }\r\n }\r\n if (this.BD2 == 2) {\r\n tittle = 'Biểu đồ sinh viên theo giới tính - Hệ đào tạo';\r\n for (var i = 0; i < this.data.Data_GT_He.length; i++) {\r\n dataPoints1.push({\r\n label: this.data.Data_GT_He[i].Ten_cot,\r\n y: this.data.Data_GT_He[i].Nam,\r\n });\r\n dataPoints2.push({\r\n label: this.data.Data_GT_He[i].Ten_cot,\r\n y: this.data.Data_GT_He[i].Nu,\r\n });\r\n }\r\n }\r\n if (this.BD2 == 3) {\r\n tittle = 'Biểu đồ sinh viên theo giới tính - Khoa đào tạo';\r\n for (var i = 0; i < this.data.Data_GT_Khoa.length; i++) {\r\n dataPoints1.push({\r\n label: this.data.Data_GT_Khoa[i].Ten_cot,\r\n y: this.data.Data_GT_Khoa[i].Nam,\r\n });\r\n dataPoints2.push({\r\n label: this.data.Data_GT_Khoa[i].Ten_cot,\r\n y: this.data.Data_GT_Khoa[i].Nu,\r\n });\r\n }\r\n }\r\n var chart = new CanvasJS.Chart('chartContainer2', {\r\n animationEnabled: true,\r\n title: {\r\n text: tittle,\r\n fontFamily: 'sans-serif',\r\n fontweight: 'bold',\r\n fontSize: 20,\r\n },\r\n axisY: {\r\n title: 'Số sinh viên',\r\n titleFontColor: '#4F81BC',\r\n lineColor: '#4F81BC',\r\n labelFontColor: '#4F81BC',\r\n tickColor: '#4F81BC',\r\n },\r\n toolTip: {\r\n shared: true,\r\n },\r\n legend: {\r\n cursor: 'pointer',\r\n //itemclick: toggleDataSeries\r\n },\r\n data: [\r\n {\r\n type: 'column',\r\n name: 'Nam',\r\n legendText: 'Nam',\r\n showInLegend: true,\r\n dataPoints: dataPoints1,\r\n },\r\n {\r\n type: 'column',\r\n name: 'Nữ',\r\n legendText: 'Nữ',\r\n showInLegend: true,\r\n dataPoints: dataPoints2,\r\n },\r\n ],\r\n });\r\n chart.render();\r\n }\r\n\r\n getList() {\r\n this.getDataDashboard();\r\n this.Service.getCount(this.Token).subscribe((z) => {\r\n this.SinhVienChuaXepPhong = z.Tong_so_ban_ghi;\r\n });\r\n }\r\n\r\n Change_BD1() {\r\n this.getDataDashboard();\r\n this.renderChart1();\r\n }\r\n Change_BD2() {\r\n this.renderChart2();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    1. \r\n  Trang chủ\r\n
    2. \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

    {{ SinhVienDangO }}

    \r\n

    Sinh viên đang ở

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

    {{ QuyDinhKhoanNopChuaNop }}

    \r\n

    Sinh viên chưa nộp đủ

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

    {{ DangKyChuaDuyet }}

    \r\n

    Hồ sơ đăng ký chưa duyệt

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

    {{ SinhVienChuaXepPhong }}

    \r\n

    Sinh viên chưa xếp phòng

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

    {{ SoChoTrong }}

    \r\n

    Số chỗ trống

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

    {{ TongSucChua }}

    \r\n

    Tổng số chỗ

    \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
    \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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    STTMã sinh viênHọ tênNgày sinhNhà-phòngLoại quyết địnhNgày quyết định
    {{ i + 1 }}{{ p.Ma_sv }}{{ p.Ten_sv }}{{ p.Ngay_sinh | date: 'dd/MM/yyyy' }}{{ p.Ten_toa_nha }}-{{ p.Ten_phong }}{{ p.Ten_loai_QD }}{{ p.Ngay_QD | date: 'dd/MM/yyyy' }}
    Không có kết quả
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\nimport { AppService } from 'src/app/utils/services/app.service';\n\n@Component({\n selector: 'app-profile',\n templateUrl: './profile.component.html',\n styleUrls: ['./profile.component.scss'],\n})\nexport class ProfileComponent implements OnInit {\n constructor(public appService: AppService) {}\n\n ngOnInit() {}\n}\n","
    \n
    \n
    \n
    \n

    Profile

    \n
    \n
    \n
      \n
    1. Home
    2. \n
    3. User Profile
    4. \n
    \n
    \n
    \n
    \n \n
    \n\n\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n\n

    Nina Mcintire

    \n\n

    Software Engineer

    \n\n
      \n
    • \n Followers 1,322\n
    • \n
    • \n Following 543\n
    • \n
    • \n Friends 13,287\n
    • \n
    \n\n Follow\n
    \n \n
    \n \n\n \n
    \n
    \n

    About Me

    \n
    \n \n
    \n Education\n\n

    \n B.S. in Computer Science from the University of Tennessee at\n Knoxville\n

    \n\n
    \n\n Location\n\n

    Malibu, California

    \n\n
    \n\n Skills\n\n

    \n UI Design\n Coding\n Javascript\n PHP\n Node.js\n

    \n\n
    \n\n Notes\n\n

    \n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam\n fermentum enim neque.\n

    \n
    \n \n
    \n \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n
    \n \n \n Jonathan Burke Jr.\n \n \n Shared publicly - 7:30 PM today\n
    \n \n

    \n Lorem ipsum represents a long-held tradition for designers,\n typographers and the like. Some people hate it and argue for\n its demise, but others ignore the hate as they create\n awesome tools to help create filler text for everyone from\n bacon lovers to Charlie Sheen fans.\n

    \n\n

    \n Share\n Like\n \n \n Comments (5)\n \n \n

    \n\n \n
    \n \n\n \n
    \n
    \n \n \n Sarah Ross\n \n \n Sent you a message - 3 days ago\n
    \n \n

    \n Lorem ipsum represents a long-held tradition for designers,\n typographers and the like. Some people hate it and argue for\n its demise, but others ignore the hate as they create\n awesome tools to help create filler text for everyone from\n bacon lovers to Charlie Sheen fans.\n

    \n\n \n
    \n \n\n \n
    \n
    \n \n \n Adam Jones\n \n \n Posted 5 photos - 5 days ago\n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n \n
    \n \n
    \n \n\n

    \n Share\n Like\n \n \n Comments (5)\n \n \n

    \n\n \n
    \n \n
    \n \n
    \n \n
    \n \n
    \n \n 10 Feb. 2014\n \n
    \n \n \n
    \n \n\n
    \n 12:05\n\n

    \n Support Team sent you an email\n

    \n\n
    \n Etsy doostang zoodles disqus groupon greplin oooj voxy\n zoodles, weebly ning heekya handango imeem plugg dopplr\n jibjab, movity jajah plickers sifteo edmodo ifttt\n zimbra. Babblely odeo kaboodle quora plaxo ideeli hulu\n weebly balihoo...\n
    \n \n
    \n
    \n \n \n
    \n \n\n
    \n 5 mins ago\n\n

    \n Sarah Young accepted your friend request\n

    \n
    \n
    \n \n \n
    \n \n\n
    \n 27 mins ago\n\n

    \n Jay White commented on your post\n

    \n\n
    \n Take me to your leader! Switzerland is small and\n neutral! We are more like Germany, ambitious and\n misunderstood!\n
    \n \n
    \n
    \n \n \n
    \n \n 3 Jan. 2014\n \n
    \n \n \n
    \n \n\n
    \n 2 days ago\n\n

    \n Mina Lee uploaded new photos\n

    \n\n
    \n \"...\"\n \"...\"\n \"...\"\n \"...\"\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n\n
    \n \n
    \n \n
    \n \n
    \n \n
    \n \n
    \n \n
    \n \n
    \n \n
    \n","/*\nCanvasJS Angular Charts - https://canvasjs.com/\nCopyright 2022 fenopix\n\n--------------------- License Information --------------------\nCanvasJS is a commercial product which requires purchase of license. Without a commercial license you can use it for evaluation purposes for upto 30 days. Please refer to the following link for further details.\nhttps://canvasjs.com/license/\n\n*/\n/*tslint:disable*/\n/*eslint-disable*/\n/*jshint ignore:start*/\nimport { Component, AfterViewInit, OnChanges, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\ndeclare var require: any;\nvar CanvasJS = require('./canvasjs.min');\n\n@Component({\n selector: 'canvasjs-chart',\n template: '
    '\n})\n\nclass CanvasJSChart implements AfterViewInit, OnChanges, OnDestroy {\n\tstatic _cjsChartContainerId = 0;\n\tchart: any;\n\tchartContainerId: any;\n\tprevChartOptions: any;\n\tshouldUpdateChart = false;\n\n\t@Input()\n\t\toptions: any;\n\t@Input()\n\t\tstyles: any;\n\t\t\n\t@Output()\n\t\tchartInstance = new EventEmitter();\n\t\t\n\tconstructor() {\n\t\tthis.options = this.options ? this.options : {};\n\t\tthis.styles = this.styles ? this.styles : { width: \"100%\", position: \"relative\" };\n\t\tthis.styles.height = this.options.height ? this.options.height + \"px\" : \"400px\";\n\t\t\n\t\tthis.chartContainerId = 'canvasjs-angular-chart-container-' + CanvasJSChart._cjsChartContainerId++;\n\t}\n\n\tngDoCheck() {\n\t\tif(this.prevChartOptions != this.options) {\n\t\t\tthis.shouldUpdateChart = true;\n\t\t}\n\t}\n\t\n\tngOnChanges() {\t\t\t\t\n\t\t//Update Chart Options & Render\n\t\tif(this.shouldUpdateChart && this.chart) {\n\t\t\tthis.chart.options = this.options;\n\t\t\tthis.chart.render();\n\t\t\tthis.shouldUpdateChart = false;\n\t\t\tthis.prevChartOptions = this.options;\n\t\t}\n\t}\n\t\n\tngAfterViewInit() {\t\t\n\t this.chart = new CanvasJS.Chart(this.chartContainerId, this.options);\n\t this.chart.render();\n\t this.prevChartOptions = this.options;\n\t this.chartInstance.emit(this.chart);\n\t}\n\n\tngOnDestroy() {\n\t\tif(this.chart)\n\t\t\tthis.chart.destroy();\n\t}\n}\n\nexport {\n\tCanvasJSChart,\n\tCanvasJS\n};\n/*tslint:enable*/\n/*eslint-enable*/\n/*jshint ignore:end*/","/*\n CanvasJS HTML5 & JavaScript Charts - v3.7.2 GA - https://canvasjs.com/ \n Copyright 2022 fenopix\n\n --------------------- License Information --------------------\n CanvasJS is a commercial product which requires purchase of license. Without a commercial license you can use it for evaluation purposes for upto 30 days. Please refer to the following link for further details.\n https://canvasjs.com/license/\n\n*/\n/*tslint:disable*/\n/*eslint-disable*/\n/*jshint ignore:start*/\n(function(){function qa(h,n){h.prototype=db(n.prototype);h.prototype.constructor=h;h.base=n.prototype}function db(h){function n(){}n.prototype=h;return new n}function Wa(h,n,E){\"millisecond\"===E?h.setMilliseconds(h.getMilliseconds()+1*n):\"second\"===E?h.setSeconds(h.getSeconds()+1*n):\"minute\"===E?h.setMinutes(h.getMinutes()+1*n):\"hour\"===E?h.setHours(h.getHours()+1*n):\"day\"===E?h.setDate(h.getDate()+1*n):\"week\"===E?h.setDate(h.getDate()+7*n):\"month\"===E?h.setMonth(h.getMonth()+1*n):\"year\"===E&&h.setFullYear(h.getFullYear()+\n1*n);return h}function ba(h,n){var E=!1;0>h&&(E=!0,h*=-1);h=\"\"+h;for(n=n?n:1;h.length>16).toString(16),E=((h&65280)>>8).toString(16);h=((h&255)>>0).toString(16);n=2>n.length?\"0\"+n:n;E=2>E.length?\"0\"+E:E;h=2>h.length?\"0\"+h:h;return\"#\"+n+E+h}function eb(h,n){var E=this.length>>>0,r=Number(n)||0,r=0>r?Math.ceil(r):\nMath.floor(r);for(0>r&&(r+=E);r=(new Date).getTime()-\nh._dropDownCloseTime.getTime()||(h._dropdownMenu.style.display=\"block\",h._menuButton.blur(),h._dropdownMenu.focus())},h.allDOMEventHandlers,!0);I(h._menuButton,\"mousemove\",function(){n||(V(h._menuButton,{backgroundColor:h.toolbar.itemBackgroundColorOnHover,color:h.toolbar.fontColorOnHover}),0>=navigator.userAgent.search(\"MSIE\")&&V(h._menuButton.childNodes[0],{WebkitFilter:\"invert(100%)\",filter:\"invert(100%)\"}))},h.allDOMEventHandlers,!0);I(h._menuButton,\"mouseout\",function(){n||(V(h._menuButton,{backgroundColor:h.toolbar.itemBackgroundColor,\ncolor:h.toolbar.fontColor}),0>=navigator.userAgent.search(\"MSIE\")&&V(h._menuButton.childNodes[0],{WebkitFilter:\"invert(0%)\",filter:\"invert(0%)\"}))},h.allDOMEventHandlers,!0)}if(h.exportEnabled&&h._dropdownMenu){V(h._dropdownMenu,{backgroundColor:h.toolbar.itemBackgroundColor,color:h.toolbar.fontColor});for(var E=h._dropdownMenu.childNodes,r=[h._cultureInfo.printText,h._cultureInfo.saveJPGText,h._cultureInfo.savePNGText],U=0;UE;E++)if(h[E]!==h[E+4]|h[E]!==h[E+8]|h[E]!==h[E+12]){n=!1;break}return n?\nh[0]<<16|h[1]<<8|h[2]:0}function ma(h,n,E){return h in n?n[h]:E[h]}function Ma(h,n,E){if(w&&$a){var r=h.getContext(\"2d\");Na=r.webkitBackingStorePixelRatio||r.mozBackingStorePixelRatio||r.msBackingStorePixelRatio||r.oBackingStorePixelRatio||r.backingStorePixelRatio||1;la=Ra/Na;h.width=n*la;h.height=E*la;Ra!==Na&&(h.style.width=n+\"px\",h.style.height=E+\"px\",r.scale(la,la))}else h.width=n,h.height=E}function ib(h){if(!jb){var n=!1,r=!1;\"undefined\"===typeof ra.Chart.creditHref?(h.creditHref=ja(\"iuuqr;..b`ow`rkr/bnl.\"),\nh.creditText=ja(\"B`ow`rKR/bnl\")):(n=h.updateOption(\"creditText\"),r=h.updateOption(\"creditHref\"));if(h.creditHref&&h.creditText){h._creditLink||(h._creditLink=document.createElement(\"a\"),h._creditLink.setAttribute(\"class\",\"canvasjs-chart-credit\"),h._creditLink.setAttribute(\"title\",\"JavaScript Charts\"),V(h._creditLink,{outline:\"none\",margin:\"0px\",position:\"absolute\",right:\"2px\",top:h.height-14+\"px\",color:\"dimgrey\",textDecoration:\"none\",fontSize:\"11px\",fontFamily:\"Calibri, Lucida Grande, Lucida Sans Unicode, Arial, sans-serif\"}),\nh._creditLink.setAttribute(\"tabIndex\",-1),h._creditLink.setAttribute(\"target\",\"_blank\"));if(0===h.renderCount||n||r)h._creditLink.setAttribute(\"href\",h.creditHref),h._creditLink.innerHTML=h.creditText;h._creditLink&&h.creditHref&&h.creditText?(h._creditLink.parentElement||h._canvasJSContainer.appendChild(h._creditLink),h._creditLink.style.top=h.height-14+\"px\"):h._creditLink.parentElement&&h._canvasJSContainer.removeChild(h._creditLink)}}}function va(h,n){Ha&&(this.canvasCount|=0,window.console.log(++this.canvasCount));\nvar r=document.createElement(\"canvas\");r.setAttribute(\"class\",\"canvasjs-chart-canvas\");Ma(r,h,n);w||\"undefined\"===typeof G_vmlCanvasManager||G_vmlCanvasManager.initElement(r);return r}function V(h,n){for(var r in n)h.style[r]=n[r]}function xa(h,n,r){n.getAttribute(\"state\")||(n.style.backgroundColor=h.toolbar.itemBackgroundColor,n.style.color=h.toolbar.fontColor,n.style.border=\"none\",V(n,{WebkitUserSelect:\"none\",MozUserSelect:\"none\",msUserSelect:\"none\",userSelect:\"none\"}));n.getAttribute(\"state\")!==\nr&&(n.setAttribute(\"state\",r),n.setAttribute(\"type\",\"button\"),V(n,{padding:\"5px 12px\",cursor:\"pointer\",\"float\":\"left\",width:\"40px\",height:\"25px\",outline:\"0px\",verticalAlign:\"baseline\",lineHeight:\"0\"}),n.setAttribute(\"title\",h._cultureInfo[r+\"Text\"]),n.innerHTML=\"\"+h._cultureInfo[r+\"Text\"]+\"\",V(n.childNodes[0],{height:\"95%\",pointerEvents:\"none\"}))}function La(){for(var h=null,n=0;nd?\"a\":\"p\";case \"tt\":return 12>d?\"am\":\"pm\";case \"T\":return 12>d?\"A\":\"P\";case \"TT\":return 12>d?\"AM\":\"PM\";case \"K\":return T?\"UTC\":(String(B).match(v)||\n[\"\"]).pop().replace(A,\"\");case \"z\":return(0h?!0:!1;w&&(h*=-1);var U=r?r.decimalSeparator:\".\",v=r?r.digitGroupSeparator:\",\",A=\"\";n=String(n);var A=1,B=r=\"\",J=-1,P=[],O=[],Q=0,I=0,K=0,T=!1,\nV=0,B=n.match(/\"[^\"]*\"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\\u2030|./g);n=null;for(var N=0;B&&NJ)J=N;else{if(\"%\"===n)A*=100;else if(\"\\u2030\"===n){A*=1E3;continue}else if(\",\"===n[0]&&\".\"===n[n.length-1]){A/=Math.pow(1E3,n.length-1);J=N+n.length-1;continue}else\"E\"!==n[0]&&\"e\"!==n[0]||\"0\"!==n[n.length-1]||(T=!0);0>J?(P.push(n),\"#\"===n||\"0\"===n?Q++:\",\"===n&&K++):(O.push(n),\"#\"!==n&&\"0\"!==n||I++)}T&&(n=Math.floor(h),B=-Math.floor(Math.log(h)/Math.LN10+1),V=0===h?0:0===n?-(Q+\nB):String(n).length-Q,A/=Math.pow(10,V));0>J&&(J=N);A=(h*A).toFixed(I);n=A.split(\".\");A=(n[0]+\"\").split(\"\");h=(n[1]+\"\").split(\"\");A&&\"0\"===A[0]&&A.shift();for(T=B=N=I=J=0;0V?n.replace(\"+\",\"\").replace(\"-\",\"\"):n.replace(\"-\",\"\"),r+=n.replace(/[0]+/,function(a){return ba(V,a.length)}));v=\"\";for(P=!1;0V?n.replace(\"+\",\"\").replace(\"-\",\"\"):n.replace(\"-\",\"\"),v+=n.replace(/[0]+/,function(a){return ba(V,a.length)}));r+=(P?U:\"\")+v;return w?\"-\"+r:r},Oa=function(h){var n=0,r=0;h=h||window.event;h.offsetX||0===h.offsetX?(n=h.offsetX,r=h.offsetY):h.layerX||0==h.layerX?(n=h.layerX,r=h.layerY):(n=h.pageX-h.target.offsetLeft,r=h.pageY-h.target.offsetTop);return{x:n,y:r}},$a=!0,\nRa=window.devicePixelRatio||1,Na=1,la=$a?Ra/Na:1,da=function(h,n,r,w,v,B,A,J,Q,P,T,O,I){\"undefined\"===typeof I&&(I=1);A=A||0;J=J||\"black\";var K=15n)v=B-1;else break}r>n&&1B&&(A=n.pop(),w-=A.height,v=J)}this._wrappedText={lines:n,width:v,height:w};this.width=v+(this.leftPadding+this.rightPadding);this.height=w+(this.topPadding+this.bottomPadding);this.ctx.font=r};ka.prototype._getFontString=function(){var h;h=\"\"+(this.fontStyle?this.fontStyle+\" \":\n\"\");h+=this.fontWeight?this.fontWeight+\" \":\"\";h+=this.fontSize?this.fontSize+\"px \":\"\";var r=this.fontFamily?this.fontFamily+\"\":\"\";!w&&r&&(r=r.split(\",\")[0],\"'\"!==r[0]&&'\"'!==r[0]&&(r=\"'\"+r+\"'\"));return h+=r};qa(Ta,$);qa(za,$);za.prototype.setLayout=function(){if(this.text){var h=this.dockInsidePlotArea?this.chart.plotArea:this.chart,n=h.layoutManager.getFreeSpace(),w=n.x1,v=n.y1,B=0,J=0,A=this.chart._menuButton&&this.chart.exportEnabled&&\"top\"===this.verticalAlign?22:0,K,I;\"top\"===this.verticalAlign||\n\"bottom\"===this.verticalAlign?(null===this.maxWidth&&(this.maxWidth=n.width-4-A*(\"center\"===this.horizontalAlign?2:1)),J=0.5*n.height-this.margin-2,B=0):\"center\"===this.verticalAlign&&(\"left\"===this.horizontalAlign||\"right\"===this.horizontalAlign?(null===this.maxWidth&&(this.maxWidth=n.height-4),J=0.5*n.width-this.margin-2):\"center\"===this.horizontalAlign&&(null===this.maxWidth&&(this.maxWidth=n.width-4),J=0.5*n.height-4));var P;r(this.padding)||\"number\"!==typeof this.padding?r(this.padding)||\"object\"!==\ntypeof this.padding||(P=this.padding.top?this.padding.top:this.padding.bottom?this.padding.bottom:0,P+=this.padding.bottom?this.padding.bottom:this.padding.top?this.padding.top:0):P=2*this.padding;this.wrap||(J=Math.min(J,1.5*this.fontSize+P));J=new ka(this.ctx,{fontSize:this.fontSize,fontFamily:this.fontFamily,fontColor:this.fontColor,fontStyle:this.fontStyle,fontWeight:this.fontWeight,horizontalAlign:this.horizontalAlign,verticalAlign:this.verticalAlign,borderColor:this.borderColor,borderThickness:this.borderThickness,\nbackgroundColor:this.backgroundColor,maxWidth:this.maxWidth,maxHeight:J,cornerRadius:this.cornerRadius,text:this.text,padding:this.padding,textBaseline:\"top\"});P=J.measureText();\"top\"===this.verticalAlign||\"bottom\"===this.verticalAlign?(\"top\"===this.verticalAlign?(v=n.y1+2,I=\"top\"):\"bottom\"===this.verticalAlign&&(v=n.y2-2-P.height,I=\"bottom\"),\"left\"===this.horizontalAlign?w=n.x1+2:\"center\"===this.horizontalAlign?w=n.x1+n.width/2-P.width/2:\"right\"===this.horizontalAlign&&(w=n.x2-2-P.width-A),K=this.horizontalAlign,\nthis.width=P.width,this.height=P.height):\"center\"===this.verticalAlign&&(\"left\"===this.horizontalAlign?(w=n.x1+2,v=n.y2-2-(this.maxWidth/2-P.width/2),B=-90,I=\"left\",this.width=P.height,this.height=P.width):\"right\"===this.horizontalAlign?(w=n.x2-2,v=n.y1+2+(this.maxWidth/2-P.width/2),B=90,I=\"right\",this.width=P.height,this.height=P.width):\"center\"===this.horizontalAlign&&(v=h.y1+(h.height/2-P.height/2),w=h.x1+(h.width/2-P.width/2),I=\"center\",this.width=P.width,this.height=P.height),K=\"center\");J.x=\nw;J.y=v;J.angle=B;J.horizontalAlign=K;this._textBlock=J;h.layoutManager.registerSpace(I,{width:this.width+(\"left\"===I||\"right\"===I?this.margin+2:0),height:this.height+(\"top\"===I||\"bottom\"===I?this.margin+2:0)});this.bounds={x1:w,y1:v,x2:w+this.width,y2:v+this.height};this.ctx.textBaseline=\"top\"}};za.prototype.render=function(){this._textBlock&&this._textBlock.render(!0)};qa(Ia,$);Ia.prototype.setLayout=za.prototype.setLayout;Ia.prototype.render=za.prototype.render;Ua.prototype.get=function(h,r){var w=\nnull;0a[f].x&&0D?{x:a[s].x+D/3,y:a[s].y+b/3}:{x:a[s].x,y:a[s].y+b/9};s=e;f=0===s?0:s-1;l=s===a.length-1?s:s+1;b=Math.abs((a[l].x-a[f].x)/(0===a[s].x-a[f].x?0.01:a[s].x-a[f].x))*(d-1)/2+1;D=(a[l].x-a[f].x)/b;b=(a[l].y-a[f].y)/b;c[c.length]=a[s].x>a[f].x&&0D?{x:a[s].x-D/3,y:a[s].y-b/3}:{x:a[s].x,y:a[s].y-b/9};c[c.length]=a[e]}return c}function B(a,d,c,b,e,f,l,s,D,k){var m=0;k?(l.color=f,s.color=f):\nk=1;m=D?Math.abs(e-c):Math.abs(b-d);m=0this.labelAngle?this.labelAngle-=180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360);this.options.scaleBreaks&&(this.scaleBreaks=new ea(this.chart,this.options.scaleBreaks,\n++this.chart._eventManager.lastObjectId,this));this.stripLines=[];if(this.options.stripLines&&0=this._appliedBreaks[a+1].startValue&&(this._appliedBreaks[a].endValue=Math.max(this._appliedBreaks[a].endValue,this._appliedBreaks[a+1].endValue),window.console&&window.console.log(\"CanvasJS Error: Breaks \"+a+\" and \"+(a+1)+\" are overlapping.\"),this._appliedBreaks.splice(a,2),a--)}}function ga(a,d,c,b,e,f){ga.base.constructor.call(this,\"Break\",d,c,b,f);this.id=e;this.chart=a;this.ctx=this.chart.ctx;this.scaleBreaks=f;this.optionsName=\nd;this.isOptionsInArray=!0;this.type=c.type?this.type:f.type;this.fillOpacity=r(c.fillOpacity)?f.fillOpacity:this.fillOpacity;this.lineThickness=r(c.lineThickness)?f.lineThickness:this.lineThickness;this.color=c.color?this.color:f.color;this.lineColor=c.lineColor?this.lineColor:f.lineColor;this.lineDashType=c.lineDashType?this.lineDashType:f.lineDashType;!r(this.startValue)&&this.startValue.getTime&&(this.startValue=this.startValue.getTime());!r(this.endValue)&&this.endValue.getTime&&(this.endValue=\nthis.endValue.getTime());\"number\"===typeof this.startValue&&(\"number\"===typeof this.endValue&&this.endValue=navigator.userAgent.search(\"MSIE\")&&V(a._zoomButton.childNodes[0],{WebkitFilter:\"invert(100%)\",filter:\"invert(100%)\"}))},this.allDOMEventHandlers);I(this._zoomButton,\"mouseout\",function(){d||(V(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:\"0.4s\",WebkitTransition:\"0.4s\"}),0>=navigator.userAgent.search(\"MSIE\")&&V(a._zoomButton.childNodes[0],{WebkitFilter:\"invert(0%)\",\nfilter:\"invert(0%)\"}))},this.allDOMEventHandlers)}this._resetButton?(V(this._resetButton,{borderRight:this.toolbar.buttonBorderThickness+\"px solid \"+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),this._resetButton.title=this._cultureInfo.resetText):(d=!1,wa(this._resetButton=document.createElement(\"button\")),xa(this,this._resetButton,\"reset\"),this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+\"px solid \"+\nthis.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),I(this._resetButton,\"touchstart\",function(a){d=!0},this.allDOMEventHandlers),I(this._resetButton,\"click\",function(){a.toolTip.hide();a.toolTip&&a.toolTip.enabled&&a.toolTip.dispatchEvent(\"hidden\",{chart:a,toolTip:a.toolTip},a.toolTip);a.zoomEnabled||a.panEnabled?(a.zoomEnabled=!0,a.panEnabled=!1,xa(a,a._zoomButton,\"pan\"),a._defaultCursor=\"default\",a.overlaidCanvas.style.cursor=a._defaultCursor):(a.zoomEnabled=!1,a.panEnabled=\n!1);if(a.sessionVariables.axisX)for(var b=0;b=navigator.userAgent.search(\"MSIE\")&&V(a._resetButton.childNodes[0],{WebkitFilter:\"invert(0%)\",filter:\"invert(0%)\"});wa(a._zoomButton,a._resetButton);a.stockChart&&(a.stockChart._rangeEventParameter={stockChart:a.stockChart,source:\"chart\",index:a.stockChart.charts.indexOf(a),minimum:null,\nmaximum:null});a._dispatchRangeEvent(\"rangeChanging\",\"reset\");a.stockChart&&(a.stockChart._rangeEventParameter.type=\"rangeChanging\",a.stockChart.dispatchEvent(\"rangeChanging\",a.stockChart._rangeEventParameter,a.stockChart));a.render();a.syncCharts&&a.syncCharts(null,null);a._dispatchRangeEvent(\"rangeChanged\",\"reset\");a.stockChart&&(a.stockChart._rangeEventParameter.type=\"rangeChanged\",a.stockChart.dispatchEvent(\"rangeChanged\",a.stockChart._rangeEventParameter,a.stockChart))},this.allDOMEventHandlers),\nI(this._resetButton,\"mousemove\",function(){d||(V(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:\"0.4s\",WebkitTransition:\"0.4s\"}),0>=navigator.userAgent.search(\"MSIE\")&&V(a._resetButton.childNodes[0],{WebkitFilter:\"invert(100%)\",filter:\"invert(100%)\"}))},this.allDOMEventHandlers),I(this._resetButton,\"mouseout\",function(){d||(V(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:\"0.4s\",WebkitTransition:\"0.4s\"}),\n0>=navigator.userAgent.search(\"MSIE\")&&V(a._resetButton.childNodes[0],{WebkitFilter:\"invert(0%)\",filter:\"invert(0%)\"}))},this.allDOMEventHandlers),this.overlaidCanvas.style.cursor=a._defaultCursor);this.zoomEnabled||this.panEnabled||(this._zoomButton?(a._zoomButton.getAttribute(\"state\")===a._cultureInfo.zoomText?(this.panEnabled=!0,this.zoomEnabled=!1):(this.zoomEnabled=!0,this.panEnabled=!1),La(a._zoomButton,a._resetButton)):(this.zoomEnabled=!0,this.panEnabled=!1))}else this.panEnabled=this.zoomEnabled=\n!1;hb(this);\"none\"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?xa(a,a._zoomButton,\"zoom\"):xa(a,a._zoomButton,\"pan\"),a._resetButton.getAttribute(\"state\")!==a._cultureInfo.resetText&&xa(a,a._resetButton,\"reset\"));this.options.toolTip&&this.toolTip.options!==this.options.toolTip&&(this.toolTip.options=this.options.toolTip);for(var c in this.toolTip.options)this.toolTip.options.hasOwnProperty(c)&&this.toolTip.updateOption(c)};n.prototype._updateSize=function(){var a;a=[this.canvas,\nthis.overlaidCanvas,this._eventManager.ghostCanvas];var d=0,c=0;this.options.width?d=this.width:this.width=d=0b.linkedDataSeriesIndex||b.linkedDataSeriesIndex>=this.options.data.length||\"number\"!==typeof b.linkedDataSeriesIndex||\"error\"===this.options.data[b.linkedDataSeriesIndex].type)&&(b.linkedDataSeriesIndex=null);null===b.name&&\n(b.name=\"DataSeries \"+a);null===b.color?1a&&\"undefined\"!==typeof D.startTimePercent?a>=D.startTimePercent&&D.animationCallback(D.easingFunction(a-D.startTimePercent,0,1,1-D.startTimePercent),D):\nD.animationCallback(D.easingFunction(a,0,1,1),D);m.dispatchEvent(\"dataAnimationIterationEnd\",{chart:m})},function(){c=[];for(var a=0;aa.dataSeriesIndexes.length))for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,l=0;lc.max&&(c.max=b);ed.max&&\"number\"===typeof e&&(d.max=e);if(0t&&(t=1/t);c.minDiff>t&&1!==t&&(c.minDiff=t)}else t=b-s.dataPoints[D-1].x,0>t&&(t*=-1),c.minDiff>t&&0!==t&&(c.minDiff=t);null!==e&&null!==s.dataPoints[D-1].y&&(a.axisY.logarithmic?(t=e/s.dataPoints[D-1].y,1>t&&(t=1/t),d.minDiff>t&&1!==t&&(d.minDiff=t)):(t=e-s.dataPoints[D-1].y,0>t&&(t*=-1),d.minDiff>t&&0!==t&&(d.minDiff=t)))}if(bg&&\n!m)m=!0;else if(b>g&&m)continue;s.dataPoints[D].label&&(a.axisX.labels[b]=s.dataPoints[D].label);bc.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&pd.viewPortMax&&\"number\"===typeof e&&(d.viewPortMax=e))}}s.axisX.valueType=s.xValueType=f?\"dateTime\":\"number\"}};n.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var d=\na.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,l=[],s=[],D=Infinity,k=-Infinity,m=0;mc.max&&(c.max=b);if(0y&&(y=1/y);c.minDiff>y&&1!==y&&(c.minDiff=y)}else y=b-p.dataPoints[q-1].x,0>y&&(y*=-1),c.minDiff>y&&0!==y&&(c.minDiff=y);null!==e&&null!==p.dataPoints[q-1].y&&(a.axisY.logarithmic?0y&&(y=1/y),d.minDiff>y&&1!==y&&(d.minDiff=y)):(y=e-p.dataPoints[q-1].y,0>y&&(y*=-1),d.minDiff>y&&0!==y&&(d.minDiff=y)))}if(bu&&!t)t=!0;else if(b>u&&t)continue;p.dataPoints[q].label&&(a.axisX.labels[b]=p.dataPoints[q].label);bc.viewPortMax&&(c.viewPortMax=b);null===p.dataPoints[q].y?c.viewPortMin===b&&hd.max&&(d.max=a),qc.viewPortMax||\n(ad.viewPortMax&&(d.viewPortMax=a)));for(q in s)s.hasOwnProperty(q)&&!isNaN(q)&&(a=s[q],ad.max&&(d.max=Math.max(a,k)),qc.viewPortMax||(ad.viewPortMax&&(d.viewPortMax=Math.max(a,k))))}};n.prototype._processStacked100PlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,l=!1,s=!1,D=[],k=0;kc.max&&(c.max=b);if(0u&&(u=1/u);c.minDiff>u&&1!==u&&(c.minDiff=u)}else u=b-m.dataPoints[p-1].x,0>u&&(u*=-1),c.minDiff>u&&0!==u&&(c.minDiff=u);r(e)||null===m.dataPoints[p-1].y||(a.axisY.logarithmic?0u&&(u=1/u),d.minDiff>u&&1!==u&&(d.minDiff=u)):(u=e-m.dataPoints[p-1].y,0>u&&(u*=-1),d.minDiff>u&&0!==u&&(d.minDiff=u)))}if(bfa&&!g)g=!0;else if(b>fa&&g)continue;m.dataPoints[p].label&&(a.axisX.labels[b]=\nm.dataPoints[p].label);bc.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&te&&(s=!0),D[b]=D[b]?D[b]+Math.abs(e):Math.abs(e))}}m.axisX.valueType=m.xValueType=f?\"dateTime\":\"number\"}a.axisY.logarithmic?(d.max=r(d.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):Math.max(d.viewPortMax,99*Math.pow(a.axisY.logarithmBase,\n-0.05)),d.min=r(d.viewPortMin)?1:Math.min(d.viewPortMin,1)):l&&!s?(d.max=r(d.viewPortMax)?99:Math.max(d.viewPortMax,99),d.min=r(d.viewPortMin)?1:Math.min(d.viewPortMin,1)):l&&s?(d.max=r(d.viewPortMax)?99:Math.max(d.viewPortMax,99),d.min=r(d.viewPortMin)?-99:Math.min(d.viewPortMin,-99)):!l&&s&&(d.max=r(d.viewPortMax)?-1:Math.max(d.viewPortMax,-1),d.min=r(d.viewPortMin)?-99:Math.min(d.viewPortMin,-99));d.viewPortMin=d.min;d.viewPortMax=d.max;a.dataPointYSums=D}};n.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&\n!(1>a.dataSeriesIndexes.length))for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f,l,s=!1,D=0;Dc.max&&(c.max=b);fd.max&&(d.max=l);0t&&(t=1/t),c.minDiff>t&&1!==t&&(c.minDiff=t)):(t=b-k.dataPoints[m-1].x,0>t&&(t*=-1),c.minDiff>t&&0!==t&&(c.minDiff=t)),e&&(null!==e[0]&&k.dataPoints[m-1].y&&null!==\nk.dataPoints[m-1].y[0])&&(a.axisY.logarithmic?(t=e[0]/k.dataPoints[m-1].y[0],1>t&&(t=1/t),d.minDiff>t&&1!==t&&(d.minDiff=t)):(t=e[0]-k.dataPoints[m-1].y[0],0>t&&(t*=-1),d.minDiff>t&&0!==t&&(d.minDiff=t))));if(!(bu&&!q)q=!0;else if(b>u&&q)continue;k.dataPoints[m].label&&(a.axisX.labels[b]=k.dataPoints[m].label);bc.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&e)for(y=0;yd.viewPortMax&&(d.viewPortMax=l))}}k.axisX.valueType=k.xValueType=s?\"dateTime\":\"number\"}};n.prototype._processSpecificPlotUnit=function(a){if(\"waterfall\"===a.type&&a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,l=0;lc.max&&(c.max=b),s.dataPointEOs[D].cumulativeSumd.max&&(d.max=s.dataPointEOs[D].cumulativeSum),0p&&(p=1/p),c.minDiff>p&&1!==p&&(c.minDiff=p)):(p=b-s.dataPoints[D-1].x,0>p&&\n(p*=-1),c.minDiff>p&&0!==p&&(c.minDiff=p)),null!==e&&null!==s.dataPoints[D-1].y&&(a.axisY.logarithmic?(e=s.dataPointEOs[D].cumulativeSum/s.dataPointEOs[D-1].cumulativeSum,1>e&&(e=1/e),d.minDiff>e&&1!==e&&(d.minDiff=e)):(e=s.dataPointEOs[D].cumulativeSum-s.dataPointEOs[D-1].cumulativeSum,0>e&&(e*=-1),d.minDiff>e&&0!==e&&(d.minDiff=e)))),!(bg&&!m)m=!0;else if(b>g&&m)continue;s.dataPoints[D].label&&(a.axisX.labels[b]=s.dataPoints[D].label);bc.viewPortMax&&(c.viewPortMax=b);0d.viewPortMax&&(d.viewPortMax=s.dataPointEOs[D-1].cumulativeSum));s.dataPointEOs[D].cumulativeSumd.viewPortMax&&(d.viewPortMax=s.dataPointEOs[D].cumulativeSum)}s.axisX.valueType=s.xValueType=f?\"dateTime\":\"number\"}};\nn.prototype.calculateAutoBreaks=function(){function a(a,b,c,e){if(e)return c=Math.pow(Math.min(c*a/b,b/a),0.2),1>=c&&(c=Math.pow(1>a?1/a:Math.min(b/a,a),0.25)),{startValue:a*c,endValue:b/c};c=0.2*Math.min(c-b+a,b-a);0>=c&&(c=0.25*Math.min(b-a,Math.abs(a)));return{startValue:a+c,endValue:b-c}}function d(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){var b=a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks,c=a.axisY.scaleBreaks&&a.axisY.scaleBreaks.autoCalculate&&\n1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var d=a.axisY.dataInfo,f=a.axisX.dataInfo,g,l=f.min,k=f.max,m=d.min,p=d.max,f=f._dataRanges,d=d._dataRanges,q,s=0,D=0;Dh.dataPoints.length))for(s=0;sf[q].max&&(f[q].max=g)),c){var n=(p+1-m)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((g=\"waterfall\"===a.type?h.dataPointEOs[s].cumulativeSum:h.dataPoints[s].y)&&g.length)for(var w=0;wd[q].max&&(d[q].max=g[w]);else r(g)||(q=Math.floor((g-m)/n),gd[q].max&&(d[q].max=g))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&a.axisX.scaleBreaks&&\na.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var b=a.axisX.dataInfo,c=b.min,d=b.max,f=b._dataRanges,g,l=0,k=0;km.dataPoints.length))for(l=0;lf[g].max&&(f[g].max=\nb)}}for(var b,e=this,f=!1,l=0;lm[g].max&&(m[g].max=p)}delete this._axes[l].dataInfo.dataPointYPositiveSums}if(this._axes[l].dataInfo.dataPointYNegativeSums){q=\nthis._axes[l].dataInfo.dataPointYNegativeSums;m=k;for(s in q)q.hasOwnProperty(s)&&!isNaN(s)&&(p=-1*q[s],r(p)||(g=Math.floor((p-D)/b),pm[g].max&&(m[g].max=p)));delete this._axes[l].dataInfo.dataPointYNegativeSums}for(s=0;sb&&f.push({diff:p,start:m,end:D});break}else s++;if(this._axes[l].scaleBreaks.customBreaks)for(s=0;s=e.x1&&(a<=e.x2&&d>=e.y1&&d<=e.y2)&&(b=e.id)}return b};n.prototype.getAutoFontSize=mb;n.prototype.resetOverlayedCanvas=\nfunction(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)};n.prototype.clearCanvas=lb;n.prototype.attachEvent=function(a){this._events.push(a)};n.prototype._touchEventHandler=function(a){if(a.changedTouches&&this.interactivityEnabled){var d=[],c=a.changedTouches,b=c?c[0]:a,e=null;switch(a.type){case \"touchstart\":case \"MSPointerDown\":d=[\"mousemove\",\"mousedown\"];this._lastTouchData=Oa(b);this._lastTouchData.time=new Date;break;case \"touchmove\":case \"MSPointerMove\":d=[\"mousemove\"];break;\ncase \"touchend\":case \"MSPointerUp\":var f=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,d=\"touchstart\"===this._lastTouchEventType||\"MSPointerDown\"===this._lastTouchEventType||300>f?[\"mouseup\",\"click\"]:[\"mouseup\"];break;default:return}if(!(c&&1f)this._lastTouchData.scroll=!0}catch(s){}this._lastTouchEventType=\na.type;if(this._lastTouchData.scroll&&this.zoomEnabled)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(c=0;c=e.x1&&d.x<=e.x2&&d.y>=e.y1&&d.y<=e.y2){b[c].call(b.context,d.x,d.y);\"mousedown\"===c&&!0===b.capture?(n.capturedEventParam=b,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener(\"mouseup\",this._mouseEventHandler,!1)):\"mouseup\"===c&&(b.chart.overlaidCanvas.releaseCapture?\nb.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener(\"mouseup\",this._mouseEventHandler,!1));break}else b=null;a.target.style.cursor=b&&b.cursor?b.cursor:this._defaultCursor}c=this.plotArea;if(d.xc.x2||d.yc.y2){this.toolTip&&this.toolTip.enabled?(this.toolTip.hide(),this.toolTip.dispatchEvent(\"hidden\",{chart:this,toolTip:this.toolTip},this.toolTip)):this.resetOverlayedCanvas();for(f=0;fc.maximum&&(f=c.viewportMaximum/c.maximum,c.sessionVariables.newViewportMinimum=c.viewportMinimum/f,c.sessionVariables.newViewportMaximum=c.viewportMaximum/f,l=!0):c.viewportMinimumc.maximum&&(f=c.viewportMaximum-c.maximum,c.sessionVariables.newViewportMinimum=c.viewportMinimum-f,c.sessionVariables.newViewportMaximum=c.viewportMaximum-f,l=!0);else if((!e||2Math.abs(c)&&(this.panEnabled||this.zoomEnabled)){this.toolTip.hide();this.toolTip&&this.toolTip.enabled&&this.toolTip.dispatchEvent(\"hidden\",{chart:this,toolTip:this.toolTip},this.toolTip);for(var s=0;sg)var t=g,g=q,q=t;if(p.scaleBreaks)for(t=0;!f&&t=g;if(isFinite(p.dataInfo.minDiff))if(t=p.getApparentDifference(q,g,null,!0),!(f||!(this.panEnabled&&p.scaleBreaks&&p.scaleBreaks._appliedBreaks.length)&&\n(p.logarithmic&&tp.maximum))D.push(p),m.push({val1:q,val2:g}),s=!0;else if(!e){s=!1;break}}return{isValid:s,axesWithValidRange:D,axesRanges:m}};n.prototype.preparePlotArea=function(){var a=this.plotArea;!w&&(0c.lineCoordinates.x2?d.x2:c.lineCoordinates.x2;a.y2=d.y2>d.y1?d.y2:c.lineCoordinates.y2;a.width=a.x2-a.x1;a.height=a.y2-a.y1}this.axisY2&&0c.lineCoordinates.x2?\nd.x2:c.lineCoordinates.x2,a.y2=d.y2>d.y1?d.y2:c.lineCoordinates.y2,a.width=a.x2-a.x1,a.height=a.y2-a.y1)}else d=this.layoutManager.getFreeSpace(),a.x1=d.x1,a.x2=d.x2,a.y1=d.y1,a.y2=d.y2,a.width=d.width,a.height=d.height;w||(a.canvas.width=a.width,a.canvas.height=a.height,a.canvas.style.left=a.x1+\"px\",a.canvas.style.top=a.y1+\"px\",(0c.x2||m.point.yc.y2+1)continue}else if(\"rangearea\"===p||\"rangesplinearea\"===p){if(m.dataPoint.xe.viewportMaximum||Math.max.apply(null,m.dataPoint.y)\nf.viewportMaximum)continue}else if(0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\")||0<=p.indexOf(\"bubble\")||0<=p.indexOf(\"scatter\")){if(m.dataPoint.xe.viewportMaximum||m.dataPoint.yf.viewportMaximum)continue}else if(0<=p.indexOf(\"column\")||\"waterfall\"===p||\"error\"===p&&!m.axisSwapped){if(m.dataPoint.xe.viewportMaximum||m.bounds.y1>c.y2||m.bounds.y2e.viewportMaximum||m.bounds.x1>c.x2||m.bounds.x2e.viewportMaximum||Math.max.apply(null,m.dataPoint.y)f.viewportMaximum)continue}else if(m.dataPoint.xe.viewportMaximum)continue;l=s=2;\"horizontal\"===z?(D=h.width,k=h.height):(k=h.width,D=h.height);if(\"normal\"===\nthis.plotInfo.axisPlacement){if(0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\"))x=\"auto\",s=4;else if(0<=p.indexOf(\"stacked\"))\"auto\"===x&&(x=\"inside\");else if(\"bubble\"===p||\"scatter\"===p)x=\"inside\";q=m.point.x-(\"horizontal\"===z?D/2:D/2-t/2);\"inside\"!==x?(e=c.y1,f=c.y2,0m.point.y)):(g=m.point.y+t/2+s+b,g>f-k&&(g=\"auto\"===x?Math.min(m.point.y,f)+t/2-k-s:f+t/2-k,A=gf-k-s&&(\"bubble\"===p||\"scatter\"===p)&&(g=Math.min(m.point.y+s,c.y2-k-s))),g=Math.min(g,f))}else 0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\")||\n0<=p.indexOf(\"scatter\")?(x=\"auto\",l=4):0<=p.indexOf(\"stacked\")?\"auto\"===x&&(x=\"inside\"):\"bubble\"===p&&(x=\"inside\"),g=m.point.y+t/2-k/2+s,\"inside\"!==x?(e=c.x1,f=c.x2,0>v?(q=m.point.x-(\"horizontal\"===z?D:D-t/2)-l-b,qm.point.x)):(q=m.point.x+(\"horizontal\"===z?0:t/2)+l+b,q>f-D-l-b&&(q=\"auto\"===x?Math.min(m.point.x,f)-(\"horizontal\"===z?D:D/2)-l:f-D-l,A=qv?Math.max(m.bounds.x1,c.x1)+t/2+l:Math.min(m.bounds.x2,c.x2)-D/2-l+(\"horizontal\"===z?0:t/2):(Math.max(m.bounds.x1,c.x1)+Math.min(m.bounds.x2,c.x2))/2+(\"horizontal\"===z?0:t/2),q=0>v?Math.max(m.point.x,b)-(\"horizontal\"===z?D/2:0):Math.min(m.point.x,b)-D/2,q=Math.max(q,e));\"vertical\"===z&&(g+=k-t/2);h.x=q;h.y=g;h.render(!0);n&&(\"inside\"!==x&&(0>p.indexOf(\"bar\")&&(\"error\"!==p||!m.axisSwapped)&&m.point.x>c.x1&&m.point.xp.indexOf(\"column\")&&(\"error\"!==p||m.axisSwapped)&&m.point.y>c.y1&&\nm.point.y=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var f=[],l,s=0;sa.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!z)))if(\"number\"!==typeof m[u].y)0m[u].y===a.axisY.reversed?1:-1,color:t})}c.stroke();w&&b.stroke()}}aa.drawMarkers(f);w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",\na.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();return{source:d,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderStepLine=function(a){var d=\na.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var f=[],l,s=0;sa.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!z)))if(\"number\"!==typeof m[u].y)0<\nu&&!(k.connectNullData||z||r)&&(c.stroke(),w&&b.stroke()),z=!0;else{var G=x;n=a.axisX.convertValueToPixel(n);x=a.axisY.convertValueToPixel(m[u].y);var C=k.dataPointIds[u];this._eventManager.objectMap[C]={id:C,objectType:\"dataPoint\",dataSeriesIndex:D,dataPointIndex:u,x1:n,y1:x};r||z?(!r&&k.connectNullData?(c.setLineDash&&(k.options.nullDataLineDashType||p===k.lineDashType&&k.lineDashType!==k.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(l.x,l.y),p=k.nullDataLineDashType,c.setLineDash(q)),\nc.lineTo(n,G),c.lineTo(n,x),w&&(b.lineTo(n,G),b.lineTo(n,x))):(c.beginPath(),c.moveTo(n,x),w&&(b.beginPath(),b.moveTo(n,x))),z=r=!1):(c.lineTo(n,G),w&&b.lineTo(n,G),c.lineTo(n,x),w&&b.lineTo(n,x),0==u%500&&(c.stroke(),c.beginPath(),c.moveTo(n,x),w&&(b.stroke(),b.beginPath(),b.moveTo(n,x))));l={x:n,y:x};um[u].y===a.axisY.reversed?1:-1,color:t})}c.stroke();\nw&&b.stroke()}}aa.drawMarkers(f);w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();return{source:d,dest:this.plotArea.ctx,\nanimationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderSpline=function(a){function d(a){a=v(a,2);if(0=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx;b.save();\nvar f=this.plotArea;b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();for(var l=[],s=0;sa.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!n)))if(\"number\"!==typeof m[r].y)0m[r].y===a.axisY.reversed?1:-1,color:t});n=!1}d(x)}aa.drawMarkers(l);w&&(c.drawImage(this._preRenderCanvas,\n0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),e.beginPath());b.restore();b.beginPath();return{source:c,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,\nanimationBase:0}}};n.prototype.renderColumn=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,l,s,D,k=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,m=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,\n0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.dataPointWidth=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>m&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,m));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&mm&&(p=m);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(m=0;ma.axisX.dataInfo.viewPortMax)&&\"number\"===typeof t[f].y){l=a.axisX.convertValueToPixel(D);s=a.axisY.convertValueToPixel(t[f].y);l=a.axisX.reversed?l+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+m)*p<<0:l-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+m)*p<<0;var r=a.axisX.reversed?l-p<<0:l+p<<0,u;0<=t[f].y?u=k:(u=s,s=k);s>u&&(b=s,s=u,u=b);b=t[f].color?t[f].color:g._colorSet[f%g._colorSet.length];da(c,a.axisX.reversed?r:l,s,a.axisX.reversed?\nl:r,u,b,0,null,h&&(a.axisY.reversed?0>t[f].y:0<=t[f].y),(a.axisY.reversed?0<=t[f].y:0>t[f].y)&&h,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:q,dataPointIndex:f,x1:l,y1:s,x2:r,y2:u};b=Q(b);w&&da(this._eventManager.ghostCtx,a.axisX.reversed?r:l,s,a.axisX.reversed?l:r,u,b,0,null,!1,!1,!1,!1);(t[f].indexLabel||g.indexLabel||t[f].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:\"column\",dataPoint:t[f],\ndataSeries:g,point:{x:l+(r-l)/2,y:0>t[f].y===a.axisY.reversed?s:u},direction:0>t[f].y===a.axisY.reversed?1:-1,bounds:{x1:l,y1:Math.min(s,u),x2:r,y2:Math.max(s,u)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.yScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:ka.axisY.bounds.y2?a.axisY.bounds.y2:k}}};n.prototype.renderStackedColumn=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,\nf=[],l=[],s=[],D=[],k=0,m,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(t)/\nMath.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&gg&&(t=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,\ne.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;ga.axisX.dataInfo.viewPortMax)&&\"number\"===typeof u[k].y){m=a.axisX.convertValueToPixel(b);m=m-a.plotType.plotUnits.length*t/2+a.index*t<<0;var x=m+t<<0,z;if(a.axisY.logarithmic||\na.axisY.scaleBreaks&&0=u[k].y)D[b]=u[k].y+(D[b]?D[b]:0),z=a.axisY.convertValueToPixel(D[b]),p=\"undefined\"!==typeof l[b]?l[b]:q,l[b]=z;else if(p=a.axisY.convertValueToPixel(u[k].y),0<=u[k].y){var G=\"undefined\"!==typeof f[b]?f[b]:0;p-=G;z=q-G;f[b]=G+(z-p)}else G=\nl[b]?l[b]:0,z=p+G,p=q+G,l[b]=G+(z-p);b=u[k].color?u[k].color:r._colorSet[k%r._colorSet.length];da(c,m,a.axisY.reversed?z:p,x,a.axisY.reversed?p:z,b,0,null,n&&(a.axisY.reversed?0>u[k].y:0<=u[k].y),(a.axisY.reversed?0<=u[k].y:0>u[k].y)&&n,!1,!1,r.fillOpacity);b=r.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:m,y1:p,x2:x,y2:z};b=Q(b);w&&da(this._eventManager.ghostCtx,m,p,x,z,b,0,null,!1,!1,!1,!1);(u[k].indexLabel||r.indexLabel||u[k].indexLabelFormatter||\nr.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedColumn\",dataPoint:u[k],dataSeries:r,point:{x:m+(x-m)/2,y:0<=u[k].y?p:z},direction:0>u[k].y===a.axisY.reversed?1:-1,bounds:{x1:m,y1:Math.min(p,z),x2:x,y2:Math.max(p,z)},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),\nthis._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.yScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:qa.axisY.bounds.y2?a.axisY.bounds.y2:q}}};n.prototype.renderStackedColumn100=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:\nd;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],l=[],s=[],D=[],k=0,m,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?\nthis.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&gg&&(t=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);\nc.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;ga.axisX.dataInfo.viewPortMax)&&\"number\"===typeof u[k].y){m=a.axisX.convertValueToPixel(b);p=0!==a.dataPointYSums[b]?\n100*(u[k].y/a.dataPointYSums[b]):0;m=m-a.plotType.plotUnits.length*t/2+a.index*t<<0;var x=m+t<<0,z;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0=s[b])continue;p=a.axisY.convertValueToPixel(s[b]);z=f[b]?f[b]:q;f[b]=p}else if(a.axisY.scaleBreaks&&0=u[k].y)D[b]=p+(\"undefined\"!==typeof D[b]?D[b]:0),z=a.axisY.convertValueToPixel(D[b]),p=l[b]?l[b]:q,l[b]=z;\nelse if(p=a.axisY.convertValueToPixel(p),0<=u[k].y){var G=\"undefined\"!==typeof f[b]?f[b]:0;p-=G;z=q-G;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y1-p)&&(p=e.y1);f[b]=G+(z-p)}else G=\"undefined\"!==typeof l[b]?l[b]:0,z=p+G,p=q+G,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y2-z)&&(z=e.y2),l[b]=G+(z-p);b=u[k].color?u[k].color:r._colorSet[k%r._colorSet.length];da(c,m,a.axisY.reversed?z:p,x,a.axisY.reversed?p:z,b,0,null,n&&(a.axisY.reversed?0>u[k].y:0<=u[k].y),(a.axisY.reversed?0<=u[k].y:0>u[k].y)&&\nn,!1,!1,r.fillOpacity);b=r.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:m,y1:p,x2:x,y2:z};b=Q(b);w&&da(this._eventManager.ghostCtx,m,p,x,z,b,0,null,!1,!1,!1,!1);(u[k].indexLabel||r.indexLabel||u[k].indexLabelFormatter||r.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedColumn100\",dataPoint:u[k],dataSeries:r,point:{x:m+(x-m)/2,y:0<=u[k].y?p:z},direction:0>u[k].y===a.axisY.reversed?1:-1,bounds:{x1:m,y1:Math.min(p,z),\nx2:x,y2:Math.max(p,z)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,\ndest:this.plotArea.ctx,animationCallback:N.yScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:qa.axisY.bounds.y2?a.axisY.bounds.y2:q}}};n.prototype.renderBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,l,s,D,k=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?\nthis.dataPointWidth:1,m=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>m&&(f=\nMath.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,m));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&mm&&(p=m);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(m=0;ma.axisX.dataInfo.viewPortMax)&&\"number\"===typeof t[f].y){s=a.axisX.convertValueToPixel(D);l=a.axisY.convertValueToPixel(t[f].y);s=a.axisX.reversed?s+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+m)*p<<0:s-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+\nm)*p<<0;var r=a.axisX.reversed?s-p<<0:s+p<<0,u;0<=t[f].y?u=k:(u=l,l=k);b=t[f].color?t[f].color:g._colorSet[f%g._colorSet.length];da(c,a.axisY.reversed?l:u,a.axisX.reversed?r:s,a.axisY.reversed?u:l,a.axisX.reversed?s:r,b,0,null,h,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:q,dataPointIndex:f,x1:u,y1:s,x2:l,y2:r};b=Q(b);w&&da(this._eventManager.ghostCtx,u,a.axisX.reversed?r:s,l,a.axisX.reversed?s:r,b,0,null,!1,!1,!1,!1);(t[f].indexLabel||\ng.indexLabel||t[f].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:\"bar\",dataPoint:t[f],dataSeries:g,point:{x:0<=t[f].y?l:u,y:s+(r-s)/2},direction:0>t[f].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(u,l),y1:s,x2:Math.max(u,l),y2:r},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,\n0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.xScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:ka.axisY.bounds.x2?a.axisY.bounds.x2:k}}};n.prototype.renderStackedBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,\nc=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],l=[],s=[],D=[],k=0,m,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?\nthis.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&gg&&(t=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);\nc.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;ga.axisX.dataInfo.viewPortMax)&&\"number\"===typeof u[k].y){p=a.axisX.convertValueToPixel(b);\np=p-a.plotType.plotUnits.length*t/2+a.index*t<<0;var x=p+t<<0,z;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0=u[k].y)D[b]=u[k].y+(D[b]?D[b]:0),m=l[b]?l[b]:q,l[b]=z=a.axisY.convertValueToPixel(D[b]);else if(m=a.axisY.convertValueToPixel(u[k].y),0<=u[k].y){var G=f[b]?f[b]:0;z=q+G;m+=\nG;f[b]=G+(m-z)}else G=l[b]?l[b]:0,z=m-G,m=q-G,l[b]=G+(m-z);b=u[k].color?u[k].color:r._colorSet[k%r._colorSet.length];da(c,a.axisY.reversed?m:z,p,a.axisY.reversed?z:m,x,b,0,null,n,!1,!1,!1,r.fillOpacity);b=r.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:z,y1:p,x2:m,y2:x};b=Q(b);w&&da(this._eventManager.ghostCtx,z,p,m,x,b,0,null,!1,!1,!1,!1);(u[k].indexLabel||r.indexLabel||u[k].indexLabelFormatter||r.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedBar\",\ndataPoint:u[k],dataSeries:r,point:{x:0<=u[k].y?m:z,y:p+(x-p)/2},direction:0>u[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(z,m),y1:p,x2:Math.max(z,m),y2:x},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.xScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:qa.axisY.bounds.x2?a.axisY.bounds.x2:q}}};n.prototype.renderStackedBar100=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,\nf=[],l=[],s=[],D=[],k=0,m,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(t)/\nMath.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&gg&&(t=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,\ne.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;ga.axisX.dataInfo.viewPortMax)&&\"number\"===typeof u[k].y){p=a.axisX.convertValueToPixel(b);var x;x=0!==a.dataPointYSums[b]?100*(u[k].y/a.dataPointYSums[b]):0;p=p-a.plotType.plotUnits.length*\nt/2+a.index*t<<0;var z=p+t<<0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0=s[b])continue;x=f[b]?f[b]:q;f[b]=m=a.axisY.convertValueToPixel(s[b])}else if(a.axisY.scaleBreaks&&0=u[k].y)D[b]=x+(D[b]?D[b]:0),m=l[b]?l[b]:q,l[b]=x=a.axisY.convertValueToPixel(D[b]);else if(m=a.axisY.convertValueToPixel(x),0<=u[k].y){var G=f[b]?f[b]:0;x=q+G;m+=G;a.dataSeriesIndexes.length-1===g&&\n1>=Math.abs(e.x2-m)&&(m=e.x2);f[b]=G+(m-x)}else G=l[b]?l[b]:0,x=m-G,m=q-G,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x1-x)&&(x=e.x1),l[b]=G+(m-x);b=u[k].color?u[k].color:r._colorSet[k%r._colorSet.length];da(c,a.axisY.reversed?m:x,p,a.axisY.reversed?x:m,z,b,0,null,n,!1,!1,!1,r.fillOpacity);b=r.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:x,y1:p,x2:m,y2:z};b=Q(b);w&&da(this._eventManager.ghostCtx,x,p,m,z,b,0,null,!1,!1,!1,!1);\n(u[k].indexLabel||r.indexLabel||u[k].indexLabelFormatter||r.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedBar100\",dataPoint:u[k],dataSeries:r,point:{x:0<=u[k].y?m:x,y:p+(z-p)/2},direction:0>u[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(x,m),y1:p,x2:Math.max(x,m),y2:z},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&\nc.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.xScaleAnimation,easingFunction:N.easing.easeOutQuart,animationBase:qa.axisY.bounds.x2?a.axisY.bounds.x2:q}}};n.prototype.renderArea=function(a){var d,\nc;function b(){G&&(0=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?z=x:0>a.axisY.viewportMaximum?z=s.y1:0=a.dataSeriesIndexes.length)){var l=\nthis._eventManager.ghostCtx,s=a.axisY.lineCoordinates,D=[],k=this.plotArea,m;f.save();w&&l.save();f.beginPath();f.rect(k.x1,k.y1,k.width,k.height);f.clip();w&&(l.beginPath(),l.rect(k.x1,k.y1,k.width,k.height),l.clip());for(var p=0;pa.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!ca)))if(\"number\"!==\ntypeof t[h].y)g.connectNullData||(ca||d)||b(),ca=!0;else{r=a.axisX.convertValueToPixel(n);u=a.axisY.convertValueToPixel(t[h].y);d||ca?(!d&&g.connectNullData?(f.setLineDash&&(g.options.nullDataLineDashType||c===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(d=r,c=u,r=m.x,u=m.y,b(),f.moveTo(m.x,m.y),r=d,u=c,G=m,c=g.nullDataLineDashType,f.setLineDash(M)),f.lineTo(r,u),w&&l.lineTo(r,u)):(f.beginPath(),f.moveTo(r,u),w&&(l.beginPath(),l.moveTo(r,u)),G={x:r,y:u}),ca=d=!1):(f.lineTo(r,u),w&&l.lineTo(r,\nu),0==h%250&&b());m={x:r,y:u};ht[h].y===a.axisY.reversed?1:-1,color:C})}b();aa.drawMarkers(D)}}w&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&f.drawImage(a.axisX.maskCanvas,\n0,0,this.width,this.height),a.axisY.maskCanvas&&f.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.clearRect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.restore());f.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderSplineArea=function(a){function d(){var c=v(y,2);if(0=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?n=r:0>a.axisY.viewportMaximum?n=f.y1:0=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=a.axisY.lineCoordinates,l=[],s=this.plotArea;b.save();w&&e.save();b.beginPath();b.rect(s.x1,s.y1,s.width,s.height);b.clip();w&&(e.beginPath(),e.rect(s.x1,s.y1,s.width,s.height),e.clip());for(var h=\n0;ha.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!t)))if(\"number\"!==typeof p[q].y)0p[q].y===a.axisY.reversed?1:-1,color:x});t=!1}d();aa.drawMarkers(l)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\n\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderStepArea=\nfunction(a){var d,c;function b(){G&&(0=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?z=x:0>a.axisY.viewportMaximum?z=s.y1:0=a.dataSeriesIndexes.length)){var l=this._eventManager.ghostCtx,s=a.axisY.lineCoordinates,h=[],k=this.plotArea,m;f.save();w&&l.save();f.beginPath();f.rect(k.x1,k.y1,k.width,k.height);f.clip();w&&(l.beginPath(),l.rect(k.x1,k.y1,k.width,k.height),l.clip());for(var p=0;pa.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!c))){var Z=u;\"number\"!==\ntypeof t[r].y?(g.connectNullData||(c||d)||b(),c=!0):(n=a.axisX.convertValueToPixel(y),u=a.axisY.convertValueToPixel(t[r].y),d||c?(!d&&g.connectNullData?(f.setLineDash&&(g.options.nullDataLineDashType||M===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(d=n,c=u,n=m.x,u=m.y,b(),f.moveTo(m.x,m.y),n=d,u=c,G=m,M=g.nullDataLineDashType,f.setLineDash(S)),f.lineTo(n,Z),f.lineTo(n,u),w&&(l.lineTo(n,Z),l.lineTo(n,u))):(f.beginPath(),f.moveTo(n,u),w&&(l.beginPath(),l.moveTo(n,u)),G={x:n,y:u}),c=d=\n!1):(f.lineTo(n,Z),w&&l.lineTo(n,Z),f.lineTo(n,u),w&&l.lineTo(n,u),0==r%250&&b()),m={x:n,y:u},rt[r].y===a.axisY.reversed?1:-1,color:C}))}b();aa.drawMarkers(h)}}w&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.globalCompositeOperation=\n\"source-atop\",a.axisX.maskCanvas&&f.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&f.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.clearRect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.restore());f.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderStackedArea=\nfunction(a){function d(){if(!(1>k.length)){for(0=a.dataSeriesIndexes.length)){var e=null,f=null,l=[],s=this.plotArea,h=[],k=[],m=[],p=[],q=0,g,t,r=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:\n0),n=this._eventManager.ghostCtx,u,y,x;w&&n.beginPath();b.save();w&&n.save();b.beginPath();b.rect(s.x1,s.y1,s.width,s.height);b.clip();w&&(n.beginPath(),n.rect(s.x1,s.y1,s.width,s.height),n.clip());for(var e=[],z=0;za.axisX.dataInfo.viewPortMax&&(!C.connectNullData||!Z)))if(\"number\"!==typeof ia.y)C.connectNullData||(Z||y)||d(),Z=!0;else{g=a.axisX.convertValueToPixel(f);var oa=h[f]?h[f]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0=p[f]&&a.axisY.logarithmic)continue;t=a.axisY.convertValueToPixel(p[f])}else t=a.axisY.convertValueToPixel(ia.y),t-=oa;k.push({x:g,y:r-oa});h[f]=r-t;y||Z?(!y&&\nC.connectNullData?(b.setLineDash&&(C.options.nullDataLineDashType||x===C.lineDashType&&C.lineDashType!==C.nullDataLineDashType)&&(y=k.pop(),x=k[k.length-1],d(),b.moveTo(u.x,u.y),k.push(x),k.push(y),x=C.nullDataLineDashType,b.setLineDash(S)),b.lineTo(g,t),w&&n.lineTo(g,t)):(b.beginPath(),b.moveTo(g,t),w&&(n.beginPath(),n.moveTo(g,t))),Z=y=!1):(b.lineTo(g,t),w&&n.lineTo(g,t),0==q%250&&(d(),b.moveTo(g,t),w&&n.moveTo(g,t),k.push({x:g,y:r-oa})));u={x:g,y:t};qv[q].y===a.axisY.reversed?1:-1,color:e})}}d();b.moveTo(g,t);w&&n.moveTo(g,t)}delete C.dataPointIndexes}aa.drawMarkers(l);\nw&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(s.x1,s.y1,s.width,s.height),n.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,\neasingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderStackedArea100=function(a){function d(){for(0=a.dataSeriesIndexes.length)){var e=null,f=null,l=this.plotArea,s=[],h=[],k=[],m=[],p=[],q=\n0,g,t,r,n,u,y=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),x=this._eventManager.ghostCtx;b.save();w&&x.save();b.beginPath();b.rect(l.x1,l.y1,l.width,l.height);b.clip();w&&(x.beginPath(),x.rect(l.x1,l.y1,l.width,l.height),x.clip());for(var e=[],z=0;za.axisX.dataInfo.viewPortMax&&(!C.connectNullData||!Z)))if(\"number\"!==typeof ia.y)C.connectNullData||(Z||n)||d(),Z=!0;else{var oa;oa=0!==a.dataPointYSums[f]?100*(ia.y/a.dataPointYSums[f]):0;g=a.axisX.convertValueToPixel(f);var na=h[f]?h[f]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0=p[f]&&a.axisY.logarithmic)continue;t=a.axisY.convertValueToPixel(p[f])}else t=a.axisY.convertValueToPixel(oa),t-=na;k.push({x:g,y:y-na});h[f]=y-t;n||Z?(!n&&C.connectNullData?(b.setLineDash&&(C.options.nullDataLineDashType||u===C.lineDashType&&C.lineDashType!==C.nullDataLineDashType)&&(n=k.pop(),u=k[k.length-1],d(),b.moveTo(r.x,r.y),k.push(u),k.push(n),u=C.nullDataLineDashType,b.setLineDash(S)),b.lineTo(g,t),w&&x.lineTo(g,t)):(b.beginPath(),b.moveTo(g,t),w&&(x.beginPath(),x.moveTo(g,t))),Z=n=\n!1):(b.lineTo(g,t),w&&x.lineTo(g,t),0==q%250&&(d(),b.moveTo(g,t),w&&x.moveTo(g,t),k.push({x:g,y:y-na})));r={x:g,y:t};qv[q].y===a.axisY.reversed?1:-1,color:e})}}d();b.moveTo(g,t);w&&x.moveTo(g,t)}delete C.dataPointIndexes}aa.drawMarkers(s);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),\nb.clearRect(l.x1,l.y1,l.width,l.height),x.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderBubble=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,f,l;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),\nthis._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var s=-Infinity,h=Infinity,k=0;ka.axisX.dataInfo.viewPortMax||\"undefined\"===typeof q[e].z||(g=q[e].z,g>s&&(s=g),ga.axisX.dataInfo.viewPortMax)&&\"number\"===typeof q[e].y){f=a.axisX.convertValueToPixel(f);l=a.axisY.convertValueToPixel(q[e].y);var g=q[e].z,n=2*Math.max(Math.sqrt((s===h?r/2:t+(r-t)/(s-h)*(g-h))/Math.PI)<<0,1),g=p.getMarkerProperties(e,c);g.size=n;c.globalAlpha=\np.fillOpacity;aa.drawMarker(f,l,c,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;var u=p.dataPointIds[e];this._eventManager.objectMap[u]={id:u,objectType:\"dataPoint\",dataSeriesIndex:m,dataPointIndex:e,x1:f,y1:l,size:n};n=Q(u);w&&aa.drawMarker(f,l,this._eventManager.ghostCtx,g.type,g.size,n,n,g.borderThickness);(q[e].indexLabel||p.indexLabel||q[e].indexLabelFormatter||p.indexLabelFormatter)&&this._indexLabels.push({chartType:\"bubble\",dataPoint:q[e],dataSeries:p,point:{x:f,y:l},\ndirection:1,bounds:{x1:f-g.size/2,y1:l-g.size/2,x2:f+g.size/2,y2:l+g.size/2},color:null})}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());\nc.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,animationBase:0}}};n.prototype.renderScatter=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,f,l;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,\nb.width,b.height),this._eventManager.ghostCtx.clip());for(var s=0;sa.axisX.dataInfo.viewPortMax)&&\"number\"===typeof m[e].y){f=a.axisX.convertValueToPixel(f);l=a.axisY.convertValueToPixel(m[e].y);var g=k.getMarkerProperties(e,\nf,l,c);c.globalAlpha=k.fillOpacity;aa.drawMarker(g.x,g.y,g.ctx,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;Math.sqrt((p-f)*(p-f)+(q-l)*(q-l))Math.min(this.plotArea.width,this.plotArea.height)||(p=k.dataPointIds[e],this._eventManager.objectMap[p]={id:p,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:e,x1:f,y1:l},p=Q(p),w&&aa.drawMarker(g.x,g.y,this._eventManager.ghostCtx,g.type,g.size,p,p,g.borderThickness),(m[e].indexLabel||k.indexLabel||\nm[e].indexLabelFormatter||k.indexLabelFormatter)&&this._indexLabels.push({chartType:\"scatter\",dataPoint:m[e],dataSeries:k,point:{x:f,y:l},direction:1,bounds:{x1:f-g.size/2,y1:l-g.size/2,x2:f+g.size/2,y2:l+g.size/2},color:null}),p=f,q=l)}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),\nthis._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,animationBase:0}}};n.prototype.renderCandlestick=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=\nnull,f=null,l=this.plotArea,s=0,h,k,m,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,f=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?this.dataPointWidth:0.7*l.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))<<0;\nthis.dataPointMaxWidth&&e>f&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,f));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&ff&&(t=f);c.save();w&&b.save();c.beginPath();c.rect(l.x1,l.y1,l.width,l.height);c.clip();w&&(b.beginPath(),b.rect(l.x1,l.y1,l.width,l.height),b.clip());for(var n=0;na.axisX.dataInfo.viewPortMax)&&!r(y[s].y)&&y[s].y.length&&\"number\"===typeof y[s].y[0]&&\"number\"===typeof y[s].y[1]&&\"number\"===typeof y[s].y[2]&&\"number\"===typeof y[s].y[3]){h=a.axisX.convertValueToPixel(g);k=a.axisY.convertValueToPixel(y[s].y[0]);m=a.axisY.convertValueToPixel(y[s].y[1]);p=a.axisY.convertValueToPixel(y[s].y[2]);q=a.axisY.convertValueToPixel(y[s].y[3]);\nvar z=h-t/2<<0,G=z+t<<0,f=u.options.fallingColor?u.fallingColor:u._colorSet[0],e=y[s].color?y[s].color:u._colorSet[0],C=Math.round(Math.max(1,0.15*t)),v=0===C%2?0:0.5,A=u.dataPointIds[s];this._eventManager.objectMap[A]={id:A,objectType:\"dataPoint\",dataSeriesIndex:fa,dataPointIndex:s,x1:z,y1:k,x2:G,y2:m,x3:h,y3:p,x4:h,y4:q,borderThickness:C,color:e};c.strokeStyle=e;c.beginPath();c.lineWidth=C;b.lineWidth=Math.max(C,4);\"candlestick\"===u.type?(c.moveTo(h-v,m),c.lineTo(h-v,Math.min(k,q)),c.stroke(),c.moveTo(h-\nv,Math.max(k,q)),c.lineTo(h-v,p),c.stroke(),da(c,z,Math.min(k,q),G,Math.max(k,q),y[s].y[0]<=y[s].y[3]?u.risingColor:f,C,e,x,x,!1,!1,u.fillOpacity),w&&(e=Q(A),b.strokeStyle=e,b.moveTo(h-v,m),b.lineTo(h-v,Math.min(k,q)),b.stroke(),b.moveTo(h-v,Math.max(k,q)),b.lineTo(h-v,p),b.stroke(),da(b,z,Math.min(k,q),G,Math.max(k,q),e,0,null,!1,!1,!1,!1))):\"ohlc\"===u.type&&(c.moveTo(h-v,m),c.lineTo(h-v,p),c.stroke(),c.beginPath(),c.moveTo(h,k),c.lineTo(z,k),c.stroke(),c.beginPath(),c.moveTo(h,q),c.lineTo(G,q),\nc.stroke(),w&&(e=Q(A),b.strokeStyle=e,b.moveTo(h-v,m),b.lineTo(h-v,p),b.stroke(),b.beginPath(),b.moveTo(h,k),b.lineTo(z,k),b.stroke(),b.beginPath(),b.moveTo(h,q),b.lineTo(G,q),b.stroke()));(y[s].indexLabel||u.indexLabel||y[s].indexLabelFormatter||u.indexLabelFormatter)&&this._indexLabels.push({chartType:u.type,dataPoint:y[s],dataSeries:u,point:{x:z+(G-z)/2,y:a.axisY.reversed?p:m},direction:1,bounds:{x1:z,y1:Math.min(m,p),x2:G,y2:Math.max(m,p)},color:e})}}w&&(d.drawImage(this._preRenderCanvas,0,0,\nthis.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(l.x1,l.y1,l.width,l.height),b.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,\nanimationBase:0}}};n.prototype.renderBoxAndWhisker=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,f=this.plotArea,l=0,s,h,k,m,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,t=a.axisX.dataInfo.minDiff;isFinite(t)||\n(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?this.dataPointWidth:0.7*f.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>l&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&ll&&(t=l);c.save();w&&b.save();c.beginPath();c.rect(f.x1,f.y1,f.width,\nf.height);c.clip();w&&(b.beginPath(),b.rect(f.x1,f.y1,f.width,f.height),b.clip());for(var n=!1,n=!!a.axisY.reversed,fa=0;faa.axisX.dataInfo.viewPortMax)&&!r(x[l].y)&&x[l].y.length&&\"number\"===typeof x[l].y[0]&&\"number\"===typeof x[l].y[1]&&\"number\"===typeof x[l].y[2]&&\n\"number\"===typeof x[l].y[3]&&\"number\"===typeof x[l].y[4]&&5===x[l].y.length){s=a.axisX.convertValueToPixel(g);h=a.axisY.convertValueToPixel(x[l].y[0]);k=a.axisY.convertValueToPixel(x[l].y[1]);m=a.axisY.convertValueToPixel(x[l].y[2]);p=a.axisY.convertValueToPixel(x[l].y[3]);q=a.axisY.convertValueToPixel(x[l].y[4]);var v=s-t/2<<0,C=s+t/2<<0,e=x[l].color?x[l].color:y._colorSet[0],A=Math.round(Math.max(1,0.15*t)),B=0===A%2?0:0.5,M=x[l].whiskerColor?x[l].whiskerColor:x[l].color?y.whiskerColor?y.whiskerColor:\nx[l].color:y.whiskerColor?y.whiskerColor:e,S=\"number\"===typeof x[l].whiskerThickness?x[l].whiskerThickness:\"number\"===typeof y.options.whiskerThickness?y.whiskerThickness:A,ca=x[l].whiskerDashType?x[l].whiskerDashType:y.whiskerDashType,Z=r(x[l].whiskerLength)?r(y.options.whiskerLength)?t:y.whiskerLength:x[l].whiskerLength,Z=\"number\"===typeof Z?0>=Z?0:Z>=t?t:Z:\"string\"===typeof Z?parseInt(Z)*t/100>t?t:parseInt(Z)*t/100:t,ia=1===Math.round(S)%2?0.5:0,oa=x[l].stemColor?x[l].stemColor:x[l].color?y.stemColor?\ny.stemColor:x[l].color:y.stemColor?y.stemColor:e,na=\"number\"===typeof x[l].stemThickness?x[l].stemThickness:\"number\"===typeof y.options.stemThickness?y.stemThickness:A,F=1===Math.round(na)%2?0.5:0,E=x[l].stemDashType?x[l].stemDashType:y.stemDashType,K=x[l].lineColor?x[l].lineColor:x[l].color?y.lineColor?y.lineColor:x[l].color:y.lineColor?y.lineColor:e,I=\"number\"===typeof x[l].lineThickness?x[l].lineThickness:\"number\"===typeof y.options.lineThickness?y.lineThickness:A,P=x[l].lineDashType?x[l].lineDashType:\ny.lineDashType,L=1===Math.round(I)%2?0.5:0,O=y.upperBoxColor,T=y.lowerBoxColor,ua=r(y.options.fillOpacity)?1:y.fillOpacity,R=y.dataPointIds[l];this._eventManager.objectMap[R]={id:R,objectType:\"dataPoint\",dataSeriesIndex:u,dataPointIndex:l,x1:v,y1:h,x2:C,y2:k,x3:s,y3:m,x4:s,y4:p,y5:q,borderThickness:A,color:e,stemThickness:na,stemColor:oa,whiskerThickness:S,whiskerLength:Z,whiskerColor:M,lineThickness:I,lineColor:K};c.save();0=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,l,s,h,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.03*this.width;var k=a.axisX.dataInfo.minDiff;isFinite(k)||(k=0.3*Math.abs(a.axisX.range));k=this.options.dataPointWidth?this.dataPointWidth:\n0.9*(e.width*(a.axisX.logarithmic?Math.log(k)/Math.log(a.axisX.range):Math.abs(k)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>l&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&ll&&(k=l);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),\nthis._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var m=0;ma.axisX.dataInfo.viewPortMax)&&!r(g[f].y)&&g[f].y.length&&\"number\"===typeof g[f].y[0]&&\"number\"===typeof g[f].y[1]){b=a.axisX.convertValueToPixel(h);l=\na.axisY.convertValueToPixel(g[f].y[0]);s=a.axisY.convertValueToPixel(g[f].y[1]);var n=a.axisX.reversed?b+a.plotType.totalDataSeries*k/2-(a.previousDataSeriesCount+m)*k<<0:b-a.plotType.totalDataSeries*k/2+(a.previousDataSeriesCount+m)*k<<0,fa=a.axisX.reversed?n-k<<0:n+k<<0,b=g[f].color?g[f].color:q._colorSet[f%q._colorSet.length];if(l>s){var u=l;l=s;s=u}u=q.dataPointIds[f];this._eventManager.objectMap[u]={id:u,objectType:\"dataPoint\",dataSeriesIndex:p,dataPointIndex:f,x1:n,y1:l,x2:fa,y2:s};da(c,a.axisX.reversed?\nfa:n,l,a.axisX.reversed?n:fa,s,b,0,b,t,t,!1,!1,q.fillOpacity);b=Q(u);w&&da(this._eventManager.ghostCtx,a.axisX.reversed?fa:n,l,a.axisX.reversed?n:fa,s,b,0,null,!1,!1,!1,!1);if(g[f].indexLabel||q.indexLabel||g[f].indexLabelFormatter||q.indexLabelFormatter)this._indexLabels.push({chartType:\"rangeColumn\",dataPoint:g[f],dataSeries:q,indexKeyword:0,point:{x:n+(fa-n)/2,y:g[f].y[1]>=g[f].y[0]?s:l},direction:g[f].y[1]>=g[f].y[0]?-1:1,bounds:{x1:n,y1:Math.min(l,s),x2:fa,y2:Math.max(l,s)},color:b}),this._indexLabels.push({chartType:\"rangeColumn\",\ndataPoint:g[f],dataSeries:q,indexKeyword:1,point:{x:n+(fa-n)/2,y:g[f].y[1]>=g[f].y[0]?l:s},direction:g[f].y[1]>=g[f].y[0]?1:-1,bounds:{x1:n,y1:Math.min(l,s),x2:fa,y2:Math.max(l,s)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\n0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,animationBase:0}}};n.prototype.renderError=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=a.axisY._position?\"left\"===a.axisY._position||\"right\"===a.axisY._position?!1:!0:!1;if(!(0>=a.dataSeriesIndexes.length)){var e=null,f=!1,l=this.plotArea,\ns=0,h,k,m,p,q,g,t,n=a.axisX.dataInfo.minDiff;isFinite(n)||(n=0.3*Math.abs(a.axisX.range));c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(l.x1,l.y1,l.width,l.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.clip());for(var fa=0,u=0;us&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,s));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&ss&&(u=s);if(0=M.length?0:M.length>=u?u:M.length:\"string\"===typeof M.length?parseInt(M.length)*u/100>u?u:parseInt(M.length)*\nu/100>u:u;M.thickness=\"number\"===typeof M.thickness?0>M.thickness?0:Math.round(M.thickness):2;var S={color:v[s].stemColor?v[s].stemColor:v[s].color?z.stemColor?z.stemColor:v[s].color:z.stemColor?z.stemColor:e,thickness:v[s].stemThickness?v[s].stemThickness:z.stemThickness,dashType:v[s].stemDashType?v[s].stemDashType:z.stemDashType};S.thickness=\"number\"===typeof S.thickness?0>S.thickness?0:Math.round(S.thickness):2;v[s].getTime?t=v[s].x.getTime():t=v[s].x;if(!(ta.axisX.dataInfo.viewPortMax)&&\n!r(v[s].y)&&v[s].y.length&&\"number\"===typeof v[s].y[0]&&\"number\"===typeof v[s].y[1]){var ca=a.axisX.convertValueToPixel(t);b?k=ca:h=ca;ca=a.axisY.convertValueToPixel(v[s].y[0]);b?m=ca:q=ca;ca=a.axisY.convertValueToPixel(v[s].y[1]);b?p=ca:g=ca;b?(q=a.axisX.reversed?k+(C?fa:1)*u/2-(C?A-1:0)*u<<0:k-(C?fa:1)*u/2+(C?A-1:0)*u<<0,g=a.axisX.reversed?q-u<<0:q+u<<0):(m=a.axisX.reversed?h+(C?fa:1)*u/2-(C?A-1:0)*u<<0:h-(C?fa:1)*u/2+(C?A-1:0)*u<<0,p=a.axisX.reversed?m-u<<0:m+u<<0);!b&&q>g&&(ca=q,q=g,g=ca);b&&\nm>p&&(ca=m,m=p,p=ca);ca=z.dataPointIds[s];this._eventManager.objectMap[ca]={id:ca,objectType:\"dataPoint\",dataSeriesIndex:x,dataPointIndex:s,x1:Math.min(m,p),y1:Math.min(q,g),x2:Math.max(p,m),y2:Math.max(g,q),isXYSwapped:b,stemProperties:S,whiskerProperties:M};B(c,Math.min(m,p),Math.min(q,g),Math.max(p,m),Math.max(g,q),e,M,S,b);w&&B(this._eventManager.ghostCtx,m,q,p,g,e,M,S,b);if(v[s].indexLabel||z.indexLabel||v[s].indexLabelFormatter||z.indexLabelFormatter)this._indexLabels.push({chartType:\"error\",\ndataPoint:v[s],dataSeries:z,indexKeyword:0,point:{x:b?v[s].y[1]>=v[s].y[0]?m:p:m+(p-m)/2,y:b?q+(g-q)/2:v[s].y[1]>=v[s].y[0]?g:q},direction:v[s].y[1]>=v[s].y[0]?-1:1,bounds:{x1:b?Math.min(m,p):m,y1:b?q:Math.min(q,g),x2:b?Math.max(m,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b}),this._indexLabels.push({chartType:\"error\",dataPoint:v[s],dataSeries:z,indexKeyword:1,point:{x:b?v[s].y[1]>=v[s].y[0]?p:m:m+(p-m)/2,y:b?q+(g-q)/2:v[s].y[1]>=v[s].y[0]?q:g},direction:v[s].y[1]>=v[s].y[0]?1:-1,bounds:{x1:b?\nMath.min(m,p):m,y1:b?q:Math.min(q,g),x2:b?Math.max(m,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(l.x1,l.y1,l.width,\nl.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,animationBase:0}}};n.prototype.renderRangeBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,l,s,h,k,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;l=this.options.dataPointMaxWidth?\nthis.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0;var m=a.axisX.dataInfo.minDiff;isFinite(m)||(m=0.3*Math.abs(a.axisX.range));m=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(m)/Math.log(a.axisX.range):Math.abs(m)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>l&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:\nInfinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&ll&&(m=l);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var p=0;pa.axisX.dataInfo.viewPortMax)&&!r(t[f].y)&&t[f].y.length&&\"number\"===typeof t[f].y[0]&&\"number\"===typeof t[f].y[1]){l=a.axisY.convertValueToPixel(t[f].y[0]);s=a.axisY.convertValueToPixel(t[f].y[1]);h=a.axisX.convertValueToPixel(k);h=a.axisX.reversed?h+a.plotType.totalDataSeries*m/2-(a.previousDataSeriesCount+p)*\nm<<0:h-a.plotType.totalDataSeries*m/2+(a.previousDataSeriesCount+p)*m<<0;var v=a.axisX.reversed?h-m<<0:h+m<<0;l>s&&(b=l,l=s,s=b);b=t[f].color?t[f].color:g._colorSet[f%g._colorSet.length];da(c,l,a.axisX.reversed?v:h,s,a.axisX.reversed?h:v,b,0,null,n,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:q,dataPointIndex:f,x1:l,y1:h,x2:s,y2:v};b=Q(b);w&&da(this._eventManager.ghostCtx,l,a.axisX.reversed?v:h,s,a.axisX.reversed?h:v,b,0,\nnull,!1,!1,!1,!1);if(t[f].indexLabel||g.indexLabel||t[f].indexLabelFormatter||g.indexLabelFormatter)this._indexLabels.push({chartType:\"rangeBar\",dataPoint:t[f],dataSeries:g,indexKeyword:0,point:{x:t[f].y[1]>=t[f].y[0]?l:s,y:h+(v-h)/2},direction:t[f].y[1]>=t[f].y[0]?-1:1,bounds:{x1:Math.min(l,s),y1:h,x2:Math.max(l,s),y2:v},color:b}),this._indexLabels.push({chartType:\"rangeBar\",dataPoint:t[f],dataSeries:g,indexKeyword:1,point:{x:t[f].y[1]>=t[f].y[0]?s:l,y:h+(v-h)/2},direction:t[f].y[1]>=t[f].y[0]?1:\n-1,bounds:{x1:Math.min(l,s),y1:h,x2:Math.max(l,s),y2:v},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());\nc.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,animationBase:0}}};n.prototype.renderRangeArea=function(a){function d(){if(y){for(var a=null,c=h.length-1;0<=c;c--)a=h[c],b.lineTo(a.x,a.y2),e.lineTo(a.x,a.y2);b.closePath();b.globalAlpha=m.fillOpacity;b.fill();b.globalAlpha=1;e.fill();if(0=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=[],l=this.plotArea;b.save();w&&e.save();b.beginPath();b.rect(l.x1,l.y1,l.width,l.height);b.clip();w&&(e.beginPath(),e.rect(l.x1,l.y1,l.width,l.height),e.clip());for(var s=0;sa.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!M)))if(null!==p[g].y&&p[g].y.length&&\"number\"===typeof p[g].y[0]&&\"number\"===typeof p[g].y[1]){t=a.axisX.convertValueToPixel(u);r=a.axisY.convertValueToPixel(p[g].y[0]);n=a.axisY.convertValueToPixel(p[g].y[1]);q||M?(m.connectNullData&&!q?(b.setLineDash&&(m.options.nullDataLineDashType||C===m.lineDashType&&m.lineDashType!==m.nullDataLineDashType)&&(h[h.length-1].newLineDashArray=E,C=m.nullDataLineDashType,\nb.setLineDash(B)),b.lineTo(t,r),w&&e.lineTo(t,r),h.push({x:t,y1:r,y2:n})):(b.beginPath(),b.moveTo(t,r),y={x:t,y:r},h=[],h.push({x:t,y1:r,y2:n}),w&&(e.beginPath(),e.moveTo(t,r))),M=q=!1):(b.lineTo(t,r),h.push({x:t,y1:r,y2:n}),w&&e.lineTo(t,r),0==g%250&&d());u=m.dataPointIds[g];this._eventManager.objectMap[u]={id:u,objectType:\"dataPoint\",dataSeriesIndex:k,dataPointIndex:g,x1:t,y1:r,y2:n};gp[g].y[1]===a.axisY.reversed?-1:1,color:x}),this._indexLabels.push({chartType:\"rangeArea\",dataPoint:p[g],dataSeries:m,indexKeyword:1,point:{x:t,y:n},direction:p[g].y[0]>\np[g].y[1]===a.axisY.reversed?1:-1,color:x})}else M||q||d(),M=!0;d();aa.drawMarkers(f)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.restore());\nb.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:N.xClipAnimation,easingFunction:N.easing.linear,animationBase:0}}};n.prototype.renderRangeSplineArea=function(a){function d(a,c){var d=v(r,2);if(0=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=[],l=this.plotArea;b.save();w&&e.save();b.beginPath();b.rect(l.x1,l.y1,l.width,l.height);b.clip();w&&(e.beginPath(),e.rect(l.x1,l.y1,l.width,l.height),e.clip());for(var s=0;sa.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!g)))if(null!==m[p].y&&m[p].y.length&&\"number\"===typeof m[p].y[0]&&\"number\"===\ntypeof m[p].y[1]){q=a.axisX.convertValueToPixel(q);g=a.axisY.convertValueToPixel(m[p].y[0]);t=a.axisY.convertValueToPixel(m[p].y[1]);var B=k.dataPointIds[p];this._eventManager.objectMap[B]={id:B,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:p,x1:q,y1:g,y2:t};r[r.length]={x:q,y:g};n[n.length]={x:q,y:t};p=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx,e=null,f=this.plotArea,l=0,s,h,k,m,p=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),l=this.options.dataPointMinWidth?this.dataPointMinWidth:\nthis.options.dataPointWidth?this.dataPointWidth:1;h=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0;var q=a.axisX.dataInfo.minDiff;isFinite(q)||(q=0.3*Math.abs(a.axisX.range));q=this.options.dataPointWidth?this.dataPointWidth:0.6*(f.width*(a.axisX.logarithmic?Math.log(q)/Math.log(a.axisX.range):Math.abs(q)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&\nl>h&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&hh&&(q=h);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(var g=0;gk&&(e=h,h=k,k=e);a.axisY.reversed&&(e=h,h=k,k=e);e=r.dataPointIds[l];this._eventManager.objectMap[e]={id:e,objectType:\"dataPoint\",dataSeriesIndex:t,dataPointIndex:l,x1:s,y1:h,x2:E,y2:k};var M=n[l].color?n[l].color:0n[l].y===a.axisY.reversed?1:-1,bounds:{x1:s,y1:Math.min(h,k),x2:E,y2:Math.max(h,k)},color:e})}}w&&(d.drawImage(this._preRenderCanvas,0,\n0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:N.fadeInAnimation,easingFunction:N.easing.easeInQuad,\nanimationBase:0}}};var ra=function(a,d,c,b,e,f,l,h,r){if(!(0>c)){\"undefined\"===typeof h&&(h=1);if(!w){var k=Number((l%(2*Math.PI)).toFixed(8));Number((f%(2*Math.PI)).toFixed(8))===k&&(l-=1E-4)}a.save();a.globalAlpha=h;\"pie\"===e?(a.beginPath(),a.moveTo(d.x,d.y),a.arc(d.x,d.y,c,f,l,!1),a.fillStyle=b,a.strokeStyle=\"white\",a.lineWidth=2,a.closePath(),a.fill()):\"doughnut\"===e&&(a.beginPath(),a.arc(d.x,d.y,c,f,l,!1),0<=r&&a.arc(d.x,d.y,r*c,l,f,!0),a.closePath(),a.fillStyle=b,a.strokeStyle=\"white\",a.lineWidth=\n2,a.fill());a.globalAlpha=1;a.restore()}};n.prototype.renderPie=function(a){function d(){if(k&&m){for(var a=0,b=0,c=0,d=0,e=0;eMath.PI/2-u&&h.midAngleh.midAngle)c=e;a++}else if(h.midAngle>\n3*Math.PI/2-u&&h.midAngle<3*Math.PI/2+u){if(0===b||g[d].midAngle>h.midAngle)d=e;b++}h.hemisphere=f>Math.PI/2&&f<=3*Math.PI/2?\"left\":\"right\";h.indexLabelTextBlock=new ka(n.plotArea.ctx,{fontSize:h.indexLabelFontSize,fontFamily:h.indexLabelFontFamily,fontColor:h.indexLabelFontColor,fontStyle:h.indexLabelFontStyle,fontWeight:h.indexLabelFontWeight,textAlign:h.indexLabelTextAlign,backgroundColor:h.indexLabelBackgroundColor,maxWidth:h.indexLabelMaxWidth,maxHeight:h.indexLabelWrap?5*h.indexLabelFontSize:\n1.5*h.indexLabelFontSize,text:h.indexLabelText,padding:0,textBaseline:\"top\"});h.indexLabelTextBlock.measureText()}l=f=0;p=!1;for(e=0;eMath.PI/2-u&&h.midAngle3*Math.PI/2-u&&h.midAngle<3*Math.PI/2+u)&&(l<=b/2&&!p?(h.hemisphere=\"left\",l++):(h.hemisphere=\"right\",p=!0))}}function c(a){var b=n.plotArea.ctx;b.clearRect(q.x1,\nq.y1,q.width,q.height);b.fillStyle=n.backgroundColor;b.fillRect(q.x1,q.y1,q.width,q.height);for(b=0;bc){var e=0.07*C*Math.cos(g[b].midAngle),f=0.07*C*Math.sin(g[b].midAngle),l=!1;if(m[b].exploded){if(1E-9a.indexLabelTextBlock.y?e-d:c-f}function e(a){for(var c=null,d=1;db(g[c],g[a])||(\"right\"===g[a].hemisphere?g[c].indexLabelTextBlock.y>=g[a].indexLabelTextBlock.y:g[c].indexLabelTextBlock.y<=g[a].indexLabelTextBlock.y)))break;else c=null;return c}function f(a,c,d){d=(d||0)+1;if(1E3c&&p.indexLabelTextBlock.yh)return 0;var q=0,s=0,s=q=q=0;0>c?p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2>k&&p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2+ch&&(c=p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/\n2+c-h);c=p.indexLabelTextBlock.y+c;k=0;k=\"right\"===p.hemisphere?x.x+Math.sqrt(Math.pow(w,2)-Math.pow(c-x.y,2)):x.x-Math.sqrt(Math.pow(w,2)-Math.pow(c-x.y,2));s=x.x+C*Math.cos(p.midAngle);q=x.y+C*Math.sin(p.midAngle);q=Math.sqrt(Math.pow(k-s,2)+Math.pow(c-q,2));s=Math.acos(C/w);q=Math.acos((w*w+C*C-q*q)/(2*C*w));c=qb(g[k],g[a])||(\"right\"===g[a].hemisphere?g[k].indexLabelTextBlock.y<=g[a].indexLabelTextBlock.y:g[k].indexLabelTextBlock.y>=g[a].indexLabelTextBlock.y)))break;else k=null;s=k;q=e(a);h=k=0;0>c?(h=\"right\"===p.hemisphere?s:q,l=c,null!==h&&(s=-c,c=p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2-(g[h].indexLabelTextBlock.y+g[h].indexLabelTextBlock.height/2),c-s+k.toFixed(y)&&(l=c>t?-(c-t):-(s-(h-k)))))):0t?c-t:s-(k-h)))));l&&(d=p.indexLabelTextBlock.y+l,c=0,c=\"right\"===p.hemisphere?x.x+Math.sqrt(Math.pow(w,2)-Math.pow(d-x.y,2)):x.x-Math.sqrt(Math.pow(w,2)-Math.pow(d-x.y,2)),p.midAngle>Math.PI/2-u&&p.midAnglek.indexLabelTextBlock.x?c=k.indexLabelTextBlock.x-15:\"right\"===p.hemisphere&&(\"left\"===a.hemisphere&&c3*Math.PI/2-u&&p.midAngle<3*Math.PI/2+u&&(k=(a-1+g.length)%g.length,k=g[k],a=g[(a+1+g.length)%g.length],\"right\"===p.hemisphere&&\"left\"===k.hemisphere&&ca.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x-\n15)),p.indexLabelTextBlock.y=d,p.indexLabelTextBlock.x=c,p.indexLabelAngle=Math.atan2(p.indexLabelTextBlock.y-x.y,p.indexLabelTextBlock.x-x.x))}return l}function l(){var a=n.plotArea.ctx;a.fillStyle=\"grey\";a.strokeStyle=\"grey\";a.font=\"16px Arial\";a.textBaseline=\"middle\";for(var c=a=0,d=0,l=!0,c=0;10>c&&(1>c||0z){for(var A=r=0,G=0;Gr?h.indexLabelText=\"\":h.indexLabelTextBlock.maxWidth=0.85*r,0.3*h.indexLabelTextBlock.maxWidthd&&(d=u)),u=u=0,0d&&(d=u)));var L=function(a,\nb,c){for(var d=[],e=0;d.push(g[b]),b!==c;b=(b+1+m.length)%m.length);d.sort(function(a,b){return a.y-b.y});for(b=0;bz){q=s.indexLabelTextBlock.x;var r=s.indexLabelTextBlock.y-s.indexLabelTextBlock.height/\n2,t=s.indexLabelTextBlock.y+s.indexLabelTextBlock.height/2,n=h.indexLabelTextBlock.y-h.indexLabelTextBlock.height/2,u=h.indexLabelTextBlock.x+h.indexLabelTextBlock.width,D=h.indexLabelTextBlock.y+h.indexLabelTextBlock.height/2;q=s.indexLabelTextBlock.x+s.indexLabelTextBlock.widthu+p||r>D+p||ta&&(a=k),l!==a&&(c=l,d+=-z),0===k%Math.max(m.length/10,3)&&(f=!0)):f=!0;f&&(0=a.dataSeriesIndexes.length)){var k=\nthis.data[a.dataSeriesIndexes[0]],m=k.dataPoints,p=10,q=this.plotArea,g=k.dataPointEOs,t=2,w,v=1.3,u=20/180*Math.PI,y=6,x={x:(q.x2+q.x1)/2,y:(q.y2+q.y1)/2},z=0;a=!1;for(var A=0;Ab&&(e=b,f=!0);var l=m[c].color?m[c].color:k._colorSet[c%k._colorSet.length];e>d&&ra(n.plotArea.ctx,g[c].center,g[c].radius,l,k.type,d,e,k.fillOpacity,g[c].percentInnerRadius);if(f)break}h();n.dispatchEvent(\"dataAnimationIterationEnd\",{chart:n});1<=a&&n.dispatchEvent(\"dataAnimationEnd\",{chart:n})},function(){n.disableToolTip=!1;n._animator.animate(0,n.animatedRender?500:0,function(a){c(a);h();n.dispatchEvent(\"dataAnimationIterationEnd\",{chart:n})});n.dispatchEvent(\"dataAnimationEnd\",{chart:n})})}}};\nvar ta=function(a,d,c,b){\"undefined\"===typeof c&&(c=1);0>=Math.round(d.y4-d.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(d.x1),Math.round(d.y1)),a.lineTo(Math.round(d.x2),Math.round(d.y2)),a.lineTo(Math.round(d.x3),Math.round(d.y3)),a.lineTo(Math.round(d.x4),Math.round(d.y4)),\"undefined\"!==d.x5&&(a.lineTo(Math.round(d.x5),Math.round(d.y5)),a.lineTo(Math.round(d.x6),Math.round(d.y6))),a.closePath(),a.fillStyle=b?b:d.color,a.fill(),a.globalAplha=1,a.restore())};n.prototype.renderFunnel=\nfunction(a){function d(){for(var a=0,b=[],c=0;cp?(p=c,l=(b+p)*(e-h)/2,a-=l,m=e-h,h+=e-h,m+=0==p?0:a/p,h+=a/p,l=!0):(m=(Math.abs(ba)*b-Math.sqrt(p))/2,p=b-2*m/Math.abs(ba),h+=m,h>e&&(h-=m,p=c,l=(b+p)*(e-h)/2,a-=l,m=e-h,h+=e-h,m+=a/p,h+=a/p,l=!0),b=p)),d.push(m);return d}function b(){if(u&&y){for(var a,b,c,d,e,f,k,l,h,m,p,q,s,t,n,D=[],x=[],v={percent:null,total:null},z=null,C=0;CD[C]&&(D[C]=C!==da?u.reversed?R[C].x3-R[C].x4:R[C].x2-R[C].x1:R[C].x2-R[C].x1,D[C]/=2));s=b.indexLabelMaxWidth?b.indexLabelMaxWidth:\nu.options.indexLabelMaxWidth?u.indexLabelMaxWidth:D[C];if(s>D[C]||0>s)s=D[C];x[C]=\"inside\"===u.indexLabelPlacement?R[C].height:!1;v=A.getPercentAndTotal(u,b);if(u.indexLabelFormatter||b.indexLabelFormatter)z={chart:A.options,dataSeries:u,dataPoint:b,total:v.total,percent:v.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(z):b.indexLabel?A.replaceKeywordsWithValue(b.indexLabel,b,u,C):u.indexLabelFormatter?u.indexLabelFormatter(z):u.indexLabel?A.replaceKeywordsWithValue(u.indexLabel,b,u,C):b.label?\nb.label:\"\";0>=m&&(m=0);1E3>s&&1E3-sk?k:u.indexLabelMaxWidth:k,l=H.length-1;0<=l;l--){g=y[H[l].id];c=H[l];d=c.textBlock;b=(a=q(l)b.y&&(e=!0);c=g.indexLabelMaxWidth||k;if(c>k||0>c)c=k;f.push(c)}if(e)for(l=H.length-1;0<=l;l--)a=R[l],H[l].textBlock.maxWidth=f[f.length-(l+1)],H[l].textBlock.measureText(),H[l].textBlock.x=K-k,c=H[l].textBlock.heightpa+z&&(H[l].textBlock.y=pa+z-H[l].height),H[l].textBlock.yua+z&&(H[l].textBlock.y=ua+z-H[l].height))}function f(){var a,\nb,c,d;if(\"inside\"!==u.indexLabelPlacement)for(var e=0;eU?g(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:\"undefined\"!==typeof a.x5?cpa+z&&(H[e].textBlock.y=pa+z-H[e].height),H[e].textBlock.yua+z&&(H[e].textBlock.y=ua+z-H[e].height)));else for(e=0;e=c?(b=e!=da?(a.x4+a.x3)/2-d/2:(a.x5+a.x4)/2-d/2,c=e!=da?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,H[e].textBlock.x=b,H[e].textBlock.y=c):H[e].isDirty=!0)}function l(){function a(b,c){var d;if(0>b||b>=H.length)return 0;var e,f=H[b].textBlock;if(0>c){c*=-1;e=\np(b);d=h(e,b);if(d>=c)return f.y-=c,c;if(0==b)return 0=c)return f.y+=c,c;if(b==R.length-1)return 0e)&&(k=q(s),!(k>=H.length-1)&&H[s].textBlock.y+H[s].height+ea>H[k].textBlock.y&&(H[s].textBlock.y=H[s].textBlock.y+\nH[s].height-e>e-H[s].textBlock.y?e+1:e-H[s].height-1))}for(k=R.length-1;0e&&(e=0,H[e].isDirty))break;if(H[k].textBlock.y=f){f=0;l+=H[f].height;break}e=p(f);if(0>e){f=0;l+=H[f].height;break}}if(f!=k){g=H[f].textBlock.y;a-=g;a=l-a;g=c(a,d,f);break}}}return g}function c(a,b,d){var e=[],f=0,g=0;for(a=Math.abs(a);d<=\nb;d++)e.push(R[d]);e.sort(function(a,b){return a.height-b.height});for(d=0;d+k.y.toFixed(6))&&(d=g.y+d+ea-k.y,\ne=a(n,-d),ea?u.reversed?ua-z:pa-z:H[a].textBlock.y+H[a].height+ea)}function n(a,b,c){var d,e,g,l=[],h=z,p=[];-1!==b&&(0<=X.indexOf(b)?(e=X.indexOf(b),X.splice(e,1)):(X.push(b),X=X.sort(function(a,b){return a-b})));if(0===X.length)l=ja;else{e=z*(1!=X.length||0!=X[0]&&X[0]!=R.length-1?2:1)/k();for(var s=0;sp&&(p*=-1),c.y1+=b-p[d],c.y2+=b-p[d],c.y3+=b-p[d],c.y4+=b-p[d],c.y5&&(c.y5+=b-p[d],c.y6+=b-p[d]),p[d]=\nb}};a._animator.animate(0,c,function(c){var d=a.plotArea.ctx||a.ctx;ha=!0;d.clearRect(x.x1,x.y1,x.x2-x.x1,x.y2-x.y1);d.fillStyle=a.backgroundColor;d.fillRect(x.x1,x.y1,x.width,x.height);q.changeSection(c,b);var e={};e.dataSeries=u;e.dataPoint=u.reversed?u.dataPoints[y.length-1-b]:u.dataPoints[b];e.index=u.reversed?y.length-1-b:b;a.toolTip.highlightObjects([e]);for(e=0;ea){b=R[c];break}return b?(a=b.y6?a>b.y6?b.x3+(b.x4-b.x3)/(b.y4-b.y3)*(a-b.y3):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2),{x1:a,x2:a}):-1}function t(a){for(var b=0;b=a.dataSeriesIndexes.length)){for(var u=this.data[a.dataSeriesIndexes[0]],y=u.dataPoints,x=this.plotArea,z=0.025*x.width,B=0.01*x.width,C=0,E=x.height-2*z,I=Math.min(x.width-2*B,2.8*x.height),M=!1,S=0;SE?Q=E:0>=Q&&(Q=0),F>a?F=a-0.5:0>=F&&(F=0)):\"pyramid\"===u.type&&(F=Q=0,u.reversed=u.reversed?!1:!0);var B=S+a/2,V=S,Y=S+a,pa=u.reversed?P:Z,L=B-F/2,aa=B+F/2,U=u.reversed?Z+Q:P-Q,ua=u.reversed?Z:P;a=[];var B=[],R=[],I=[],$=Z,da,ba=(U-pa)/(L-V),ga=-ba,S=\"area\"===(u.valueRepresents?u.valueRepresents:\"height\")?c():d();if(-1!==S){if(u.reversed)for(I.push($),F=S.length-\n1;0a&&(C=a));for(F=0;F
    Please right click on the image and save it to your device
    \"),d.document.close()}}};n.prototype.print=function(){var a=this.exportChart({toDataURL:!0}),d=document.createElement(\"iframe\");\nd.setAttribute(\"class\",\"canvasjs-chart-print-frame\");V(d,{position:\"absolute\",width:\"100%\",border:\"0px\",margin:\"0px 0px 0px 0px\",padding:\"0px 0px 0px 0px\"});d.style.height=this.height+\"px\";this._canvasJSContainer.appendChild(d);var c=this,b=d.contentWindow||d.contentDocument.document||d.contentDocument;b.document.open();b.document.write('\\n');b.document.body&&b.document.body.style&&(b.document.body.style.margin=\"0px 0px 0px 0px\",b.document.body.style.padding=\n\"0px 0px 0px 0px\");b.document.close();setTimeout(function(){b.focus();b.print();setTimeout(function(){c._canvasJSContainer.removeChild(d)},1E3)},500)};n.prototype.getPercentAndTotal=function(a,d){var c=null,b=null,e=c=null;if(0<=a.type.indexOf(\"stacked\"))b=0,c=d.x.getTime?d.x.getTime():d.x,c in a.plotUnit.yTotals&&(b=a.plotUnit.yTotals[c],c=a.plotUnit.yAbsTotals[c],e=isNaN(d.y)?0:0===c?0:100*(d.y/c));else if(\"pie\"===a.type||\"doughnut\"===a.type||\"funnel\"===a.type||\"pyramid\"===a.type){for(c=b=0;c=l||\"undefined\"===typeof l||0>=v||\"undefined\"===typeof v)){if(\"horizontal\"===this.orientation){q.textBlock=new ka(this.ctx,{x:0,y:0,maxWidth:v,maxHeight:this.itemWrap?l:this.lineHeight,angle:0,text:q.text,horizontalAlign:\"left\",fontSize:this.fontSize,\nfontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:\"middle\"});q.textBlock.measureText();null!==this.itemWidth&&(q.textBlock.width=this.itemWidth-(w+h+(\"line\"===q.chartType||\"spline\"===q.chartType||\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(q.textBlock.width+w+h+(0===p.width?0:this.horizontalSpacing)+(\"line\"===q.chartType||\"spline\"===q.chartType||\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0))>f)p=\n{items:[],width:0},k.push(p),this.height+=g,g=0;g=Math.max(g,q.textBlock.height)}else q.textBlock=new ka(this.ctx,{x:0,y:0,maxWidth:x,maxHeight:!0===this.itemWrap?l:1.5*this.fontSize,angle:0,text:q.text,horizontalAlign:\"left\",fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:\"middle\"}),q.textBlock.measureText(),null!==this.itemWidth&&(q.textBlock.width=this.itemWidth-(w+h+(\"line\"===q.chartType||\"spline\"===q.chartType||\n\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0))),this.height>0,0),this.dataPoints.length):0):(m=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,m=\n0>0,0),this.dataPoints.length):0));for(;;){f=0a?b.x/a:a/b.x:Math.abs(b.x-a);pm-e&&m+e>=this.dataPoints.length)break;-1===l?(e++,l=1):l=-1}return d||(c.dataPoint.x.getTime?c.dataPoint.x.getTime():c.dataPoint.x)!==(a.getTime?\na.getTime():a)?d&&null!==c.dataPoint?c:null:c};W.prototype.getDataPointAtXY=function(a,d,c){if(!this.dataPoints||0===this.dataPoints.length||athis.chart.plotArea.x2||dthis.chart.plotArea.y2)return null;c=c||!1;var b=[],e=0,f=0,l=1,h=!1,n=Infinity,k=0,m=0,p=0;if(\"none\"!==this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:a,y:d}),this.axisX.logarithmic)var q=Math.log(this.dataPoints[this.dataPoints.length-\n1].x/this.dataPoints[0].x),p=1>0,0),this.dataPoints.length):0;else q=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0>0,0),this.dataPoints.length):0;for(;;){f=0=\nq.x1&&(a<=q.x2&&d>=q.y1&&d<=q.y2)&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y1-d),Math.abs(q.y2-d))}),h=!0);break;case \"line\":case \"stepLine\":case \"spline\":case \"area\":case \"stepArea\":case \"stackedArea\":case \"stackedArea100\":case \"splineArea\":case \"scatter\":var w=ma(\"markerSize\",g,this)||4,v=c?20:w,r=Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-d,2));r<=v&&b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:r});q=\nMath.abs(q.x1-a);q<=n?n=q:0v&&(r=Math.atan2(d-w.y,a-w.x),0>r&&(r+=2*Math.PI),r=Number(((180*(r/Math.PI)%360+360)%360).toFixed(12)),w=Number(((180*(q.startAngle/Math.PI)%360+360)%360).toFixed(12)),v=Number(((180*(q.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===v&&1=v&&0!==g.y&&(v+=360,rw&&rr.y1&&dr.y6?(f=r.x6+(r.x5-r.x6)/(r.y5-r.y6)*(d-r.y6),r=r.x3+(r.x4-r.x3)/(r.y4-r.y3)*(d-r.y3)):(f=r.x1+(r.x6-r.x1)/(r.y6-r.y1)*(d-r.y1),r=r.x2+(r.x3-r.x2)/(r.y3-r.y2)*(d-r.y2)):(f=r.x1+(r.x4-r.x1)/(r.y4-r.y1)*(d-r.y1),r=r.x2+(r.x3-r.x2)/(r.y3-r.y2)*(d-r.y2)),a>f&&a=\nq.x1-q.borderThickness/2&&a<=q.x2+q.borderThickness/2&&d>=q.y4-q.borderThickness/2&&d<=q.y1+q.borderThickness/2||Math.abs(q.x2-a+q.x1-a)=q.y1&&d<=q.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y2-d),Math.abs(q.y3-d))}),h=!0;break;case \"candlestick\":if(a>=q.x1-q.borderThickness/2&&a<=q.x2+q.borderThickness/2&&d>=q.y2-q.borderThickness/2&&d<=q.y3+q.borderThickness/2||Math.abs(q.x2-a+q.x1-a)=q.y1&&d<=q.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y2-d),Math.abs(q.y3-d))}),h=!0;break;case \"ohlc\":if(Math.abs(q.x2-a+q.x1-a)=q.y2&&d<=q.y3||a>=q.x1&&a<=(q.x2+q.x1)/2&&d>=q.y1-q.borderThickness/2&&d<=q.y1+q.borderThickness/2||a>=(q.x1+q.x2)/2&&a<=q.x2&&d>=q.y4-q.borderThickness/2&&d<=q.y4+q.borderThickness/2)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),\nMath.abs(q.x2-a),Math.abs(q.y2-d),Math.abs(q.y3-d))}),h=!0}if(h||1E3p-e&&p+e>=this.dataPoints.length)break;-1===l?(e++,l=1):l=-1}a=null;for(d=0;dp[g].endValue;g++);a=g=p[g].startValue&&c<=p[g].endValue;m=c;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:m,label:this.labels[m]?this.labels[m]:null}):\"axisX\"===this.type&&this.labels[m]?this.labels[m]:ha(m,this.valueFormatString,this.chart._cultureInfo),a=new ka(this.ctx,{x:0,y:0,maxWidth:f,maxHeight:l,angle:this.labelAngle,text:this.prefix+a+this.suffix,backgroundColor:this.labelBackgroundColor,\nborderColor:this.labelBorderColor,cornerRadius:this.labelCornerRadius,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:\"middle\",borderThickness:0}),this._labels.push({position:m,textBlock:a,effectiveHeight:null}))}g=q;for(c=this.intervalStartPosition;c<=e;c=parseFloat(1E-12>this.interval?this.logarithmic&&this.equidistantInterval?c*Math.pow(this.logarithmBase,\nthis.interval):c+this.interval:(this.logarithmic&&this.equidistantInterval?c*Math.pow(this.logarithmBase,this.interval):c+this.interval).toFixed(12))){for(;gp[g].endValue;g++);a=g=p[g].startValue&&c<=p[g].endValue;m=c;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:m,label:this.labels[m]?this.labels[m]:null}):\"axisX\"===this.type&&this.labels[m]?this.labels[m]:ha(m,this.valueFormatString,this.chart._cultureInfo),a=new ka(this.ctx,{x:0,\ny:0,maxWidth:f,maxHeight:l,angle:this.labelAngle,text:this.prefix+a+this.suffix,textAlign:this.labelTextAlign,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:\"middle\"}),this._labels.push({position:m,textBlock:a,effectiveHeight:null}))}}else for(this.intervalStartPosition=\nthis.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval),e=Wa(new Date(this.viewportMaximum),this.interval,this.intervalType),g=q,c=this.intervalStartPosition;cp[g].endValue;g++);m=a;a=g=p[g].startValue&&a<=p[g].endValue;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:new Date(m),label:this.labels[m]?this.labels[m]:null}):\"axisX\"===this.type&&this.labels[m]?\nthis.labels[m]:Ba(m,this.valueFormatString,this.chart._cultureInfo),a=new ka(this.ctx,{x:0,y:0,maxWidth:f,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxHeight:l,angle:this.labelAngle,text:this.prefix+a+this.suffix,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,\ntextBaseline:\"middle\"}),this._labels.push({position:m,textBlock:a,effectiveHeight:null,breaksLabelType:void 0}))}if(\"bottom\"===this._position||\"top\"===this._position)h=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?this.lineCoordinates.width*Math.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.width/(this.logarithmic&&this.equidistantInterval?\nMath.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*K[this.intervalType+\"Duration\"]*this.interval,f=\"undefined\"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||(l=\"undefined\"===typeof this.options.labelWrap||this.labelWrap?0.8*this.chart.height>>0:1.5*this.labelFontSize);else if(\"left\"===this._position||\"right\"===this._position)h=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?this.lineCoordinates.height*\nMath.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.height/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*K[this.intervalType+\"Duration\"]*this.interval,this.chart.panEnabled||(f=\"undefined\"===typeof this.options.labelMaxWidth?0.3*this.chart.width>>0:this.options.labelMaxWidth),l=\"undefined\"===\ntypeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize;for(b=0;bthis.labelAngle?this.labelAngle-=180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360)),\"bottom\"===this._position||\n\"top\"===this._position)if(f=0.9*h>>0,q=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=f;this.sessionVariables.labelMaxHeight=l;this.sessionVariables.labelAngle=this.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;cq&&(v=c,q=m.width)}c=0;for(c=this.intervalStartPosition>0>2*f&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>f?-25:this.sessionVariables.labelAngle):r(this.options.labelMaxWidth)?\n(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelMaxWidth=f,d&&t.width+d.width>>0>2*f&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=m)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>f?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelWrap=this.labelWrap);else{if(r(this.options.labelWrap))if(!r(this.options.labelMaxWidth))this.options.labelMaxWidth<\nf?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=b):(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=l);else if(!r(d))if(b=t.width+d.width>>0,g=this.labelFontSize,qp&&(p=b-2*f,b>=2*f&&b<2.2*f?(this.sessionVariables.labelMaxWidth=f,r(this.options.labelFontSize)&&12=2.2*f&&b<2.8*f?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=m,this.sessionVariables.labelFontSize=g):b>=2.8*f&&b<3.2*f?(this.sessionVariables.labelMaxWidth=Math.max(f,q),this.sessionVariables.labelWrap=!0,r(this.options.labelFontSize)&&12=3.2*f&&b<3.6*f?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=m,this.sessionVariables.labelFontSize=this.labelFontSize):b>3.6*f&&b<5*f?(r(this.options.labelFontSize)&&125*f&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=f,this.sessionVariables.labelFontSize=g,this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelAngle=this.labelAngle));else if(v===c&&(0===v&&q+this._labels[v+1].textBlock.measureText().width-2*f>p||v===this._labels.length-1&&q+this._labels[v-1].textBlock.measureText().width-2*f>p||0p&&\nq+this._labels[v-1].textBlock.measureText().width-2*f>p))p=0===v?q+this._labels[v+1].textBlock.measureText().width-2*f:q+this._labels[v-1].textBlock.measureText().width-2*f,this.sessionVariables.labelFontSize=r(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=m;else if(0===p)for(this.sessionVariables.labelFontSize=r(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=\n!0,b=0;b>0>2*f&&(this.sessionVariables.labelAngle=-25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?l:Math.min((b-f*Math.cos(Math.PI/\n180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),m=0!=this.labelAngle?(k-(n+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):f,this.sessionVariables.labelMaxHeight=this.labelWrap?(k-m*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):1.5*this.labelFontSize,r(this.options.labelWrap))?r(this.options.labelWrap)&&(this.labelWrap&&!r(this.options.labelMaxWidth)?\n(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:m,this.sessionVariables.labelMaxHeight=l):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=m,this.sessionVariables.labelMaxHeight=b<0.9*h?0.9*h:b,this.sessionVariables.labelWrap=this.labelWrap)):(this.options.labelWrap?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?\nthis.options.labelMaxWidth:m):(r(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:m,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=l)}for(b=0;b>0:this.options.labelMaxWidth,l=\"undefined\"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=f;this.sessionVariables.labelMaxHeight=l;this.sessionVariables.labelAngle=r(this.sessionVariables.labelAngle)?\n0:this.sessionVariables.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c>0,h-2*l>q&&(q=h-2*l,h>=2*l&&h<2.4*l?(r(this.options.labelFontSize)&&12=2.4*l&&h<2.8*l?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):h>=2.8*l&&h<3.2*l?(this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelWrap=!0,r(this.options.labelFontSize)&&12=3.2*l&&h<3.6*l?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):h>3.6*l&&h<10*l?(r(this.options.labelFontSize)&&1210*l&&h<50*l&&(r(this.options.labelFontSize)&&12>0:1.5*this.labelFontSize;\nif(\"left\"===this._position||\"right\"===this._position)r(f.options.labelWrap)&&!r(this.sessionVariables.stripLineLabelMaxHeight)?A=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=A=f.labelWrap?0.8*this.chart.width>>0:1.5*this.labelFontSize;r(f.labelBackgroundColor)&&(f.labelBackgroundColor=\"#EEEEEE\")}else l=\"bottom\"===this._position||\"top\"===this._position?0.9*this.chart.width>>0:0.9*this.chart.height>>0,A=r(f.options.labelWrap)||f.labelWrap?\"bottom\"===this._position||\n\"top\"===this._position?0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*this.labelFontSize,r(f.labelBackgroundColor)&&(r(f.startValue)&&0!==f.startValue?f.labelBackgroundColor=w?\"transparent\":null:f.labelBackgroundColor=\"#EEEEEE\");a=new ka(this.ctx,{x:0,y:0,backgroundColor:f.labelBackgroundColor,borderColor:f.labelBorderColor,borderThickness:f.labelBorderThickness,cornerRadius:f.labelCornerRadius,maxWidth:f.options.labelMaxWidth?f.options.labelMaxWidth:l,maxHeight:A,angle:this.labelAngle,text:f.labelFormatter?\nf.labelFormatter({chart:this.chart,axis:this,stripLine:f}):f.label,textAlign:this.labelTextAlign,fontSize:\"outside\"===f.labelPlacement?f.options.labelFontSize?f.labelFontSize:this.labelFontSize:f.labelFontSize,fontFamily:\"outside\"===f.labelPlacement?f.options.labelFontFamily?f.labelFontFamily:this.labelFontFamily:f.labelFontFamily,fontWeight:\"outside\"===f.labelPlacement?f.options.labelFontWeight?f.labelFontWeight:this.labelFontWeight:f.labelFontWeight,fontColor:f.labelFontColor||f.color,fontStyle:\"outside\"===\nf.labelPlacement?f.options.labelFontStyle?f.labelFontStyle:this.fontWeight:f.labelFontStyle,textBaseline:\"middle\"});this._stripLineLabels.push({position:f.value,textBlock:a,effectiveHeight:null,stripLine:f})}};A.prototype.createLabelsAndCalculateWidth=function(){var a=0,d=0;this._labels=[];this._stripLineLabels=[];var c=this.chart.isNavigator?0:5;if(\"left\"===this._position||\"right\"===this._position){this.createLabels();if(\"inside\"!=this.labelPlacement||\"inside\"===this.labelPlacement&&0=this.viewportMinimum&&this._stripLineLabels[d].stripLine.value<=this.viewportMaximum)&&\n(b=this._stripLineLabels[d].textBlock,e=b.measureText(),f=0===this.labelAngle?e.width:e.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+(e.height-b.fontSize/2)*Math.sin(Math.PI/180*Math.abs(this.labelAngle)),a=this.viewportMinimum&&this._stripLineLabels[c].stripLine.value<=this.viewportMaximum)&&(d=this._stripLineLabels[c].textBlock,e=d.measureText(),f=0===this.labelAngle?e.height:e.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(e.height-d.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)),aq[g].viewportMaximum);w++)t[w].endValue=q[g].viewPortMinimum&&(q[g].scaleBreaks.lastBreakIndex=w));for(var v=w=0,u=0,y=0,x=0,z=0,A=0,C,B,E=h=0,I,J,K,t=I=J=K=!1,g=0;g\nw;){var F=0,T=0,W=0,V=0,X=e=0,L=0,$=0,U=0,Y=0,R=0,aa=0;if(c&&0m.width-p?m.width-p:f.x2-aa-$);if(a&&0m.width-p?m.width-p:f.x2-aa-$),a[g]._labels&&1n&&(h+=0a[g].labelAngle?C-vn&&(h=B+u/2-n-aa),C-va[g].labelAngle&&0m.width-p?m.width-p:f.x2-aa-$),d[g].lineCoordinates.width=Math.abs(n-l),d[g]._labels&&1w;){U=V=T=W=$=L=X=e=P=O=F=Y=0;if(a&&0m.width-10?m.width-10:f.x2-U-X),c[g].labelAutoFit&&!r(y)&&(0c[g].labelAngle?Math.max(l,y):0===c[g].labelAngle?Math.max(l,y/2):l),0b[g].chart.width-10?b[g].chart.width-10:f.x2-U-X),b[g]&&b[g].labelAutoFit&&!r(z)&&(0c[g].chart.height?c[g].chart.height:f.y2),c[g].lineCoordinates.y1=h-(p[g]+c[g].margin+Y),c[g].lineCoordinates.y2=h-(p[g]+c[g].margin+Y),\"inside\"===c[g].labelPlacement&&0m.height-Math.max(L,10)?m.height-Math.max(L,10):f.y2-W):f.y2>m.height-Math.max(L,10)?m.height-Math.max(L,10):f.y2;if(c&&0c[L].labelAngle?Math.max(n,y):0===c[L].labelAngle?Math.max(n,y/2):n,l=\n0>c[L].labelAngle||0===c[L].labelAngle?n-V:l);if(b&&0m.height-Math.max(L,10)?m.height-Math.max(L,10):f.y2-W):f.y2>m.height-Math.max(L,10)?m.height-Math.max(L,10):f.y2;if(c&&0c[L].labelAngle?Math.max(n,y):0===c[L].labelAngle?Math.max(n,y/2):n,l=0>c[L].labelAngle||0===c[L].labelAngle?n-U:l);if(b&&0d[f].spacing?0:Math.abs(d[f].spacing/c),this.logarithmic&&(d[f].size=Math.pow(this.logarithmBase,d[f].size))};A.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var a=\nthis.scaleBreaks?this.scaleBreaks._appliedBreaks:[];a.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var d=0;dthis.conversionParameters.maximum);d++)a[d].endValue=this.conversionParameters.minimum&&(a[d].startPixel=this.convertValueToPixel(a[d].startValue),this.scaleBreaks.lastBreakIndex=d),a[d].endValue<=this.conversionParameters.maximum&&\n(a[d].endPixel=this.convertValueToPixel(a[d].endValue)))}};A.prototype.renderLabelsTicksAndTitle=function(){var a=this,d=!1,c=0,b=0,e=1,f=0;0!==this.labelAngle&&360!==this.labelAngle&&(e=1.2);if(\"undefined\"===typeof this.options.interval){if(\"bottom\"===this._position||\"top\"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],e=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,l,h=this.viewportMaximum,n=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-\n1;0<=k;k--){p=this._labels[k];if(p.positionthis.viewportMaximum||!(k===this._labels.length-1||lthis.lineCoordinates.width*e&&this.labelAutoFit&&(d=!0)}if(\"left\"===this._position||\"right\"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],m,h=this.viewportMaximum,n=this.lineCoordinates.height/Math.log(this.range),k=this._labels.length-1;0<=k;k--){p=this._labels[k];if(p.positionthis.viewportMaximum||!(k===this._labels.length-1||mthis.lineCoordinates.height*e&&this.labelAutoFit&&(d=!0)}}this.logarithmic&&(!this.equidistantInterval&&\nthis.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});var k=0,p,q;if(\"bottom\"===this._position){for(k=0;kthis.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&\"inside\"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<\n0),this.ctx.lineTo(b,q.y+this.tickLength<<0),this.ctx.stroke()),d&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(q.x-=p.textBlock.width/2,q.y=\"inside\"===this.labelPlacement?q.y-((\"inside\"===this.tickPlacement?this.tickLength:0)+p.textBlock.height-p.textBlock.fontSize/2):q.y+(\"inside\"===this.tickPlacement?0:this.tickLength)+p.textBlock.fontSize/2+5):(q.x=\"inside\"===this.labelPlacement?0>this.labelAngle?q.x:q.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):q.x-(0>this.labelAngle?p.textBlock.width*\nMath.cos(Math.PI/180*this.labelAngle):0),q.y=\"inside\"===this.labelPlacement?0>this.labelAngle?q.y-(\"inside\"===this.tickPlacement?this.tickLength:0)-5:q.y-(\"inside\"===this.tickPlacement?this.tickLength:0)-Math.abs(p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+5):q.y+(\"inside\"===this.tickPlacement?0:this.tickLength)+Math.abs(0>this.labelAngle?p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-5:5)),p.textBlock.x=q.x,p.textBlock.y=q.y));\"inside\"===this.tickPlacement&&this.chart.addEventListener(\"dataAnimationEnd\",\nfunction(){for(k=0;ka.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.y-a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+\nthis.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y2-this._titleTextBlock.height-3,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if(\"top\"===this._position){for(k=0;kthis.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&\"inside\"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=\nthis.tickColor,b=1===this.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<0),this.ctx.lineTo(b,q.y-this.tickLength<<0),this.ctx.stroke()),d&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(q.x-=p.textBlock.width/2,q.y=\"inside\"===this.labelPlacement?q.y+this.labelFontSize/2+(\"inside\"===this.tickPlacement?this.tickLength:0)+5:q.y-((\"inside\"===this.tickPlacement?0:this.tickLength)+p.textBlock.height-p.textBlock.fontSize/2)):(q.x=\"inside\"===this.labelPlacement?0<\nthis.labelAngle?q.x:q.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):q.x+(p.textBlock.height-this.labelFontSize)*Math.sin(Math.PI/180*this.labelAngle)-(0a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=\na.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y1+1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if(\"left\"===this._position){for(k=\n0;kthis.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&\"inside\"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x-this.tickLength<<0,b),this.ctx.stroke()),d&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(p.textBlock.y=\nq.y,p.textBlock.x=\"inside\"===this.labelPlacement?q.x+(\"inside\"===this.tickPlacement?this.tickLength:0)+5:q.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-(\"inside\"===this.tickPlacement?0:this.tickLength)-5):(p.textBlock.y=\"inside\"===this.labelPlacement?q.y:q.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle),p.textBlock.x=\"inside\"===this.labelPlacement?q.x+(\"inside\"===this.tickPlacement?this.tickLength:0)+5:0a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=\na.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x+a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x1+1,this._titleTextBlock.y=this.lineCoordinates.height/2+this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if(\"right\"===\nthis._position){for(k=0;kthis.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&\"inside\"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x+this.tickLength<<0,b),this.ctx.stroke()),d&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?\n(p.textBlock.y=q.y,p.textBlock.x=\"inside\"===this.labelPlacement?q.x-p.textBlock.width-(\"inside\"===this.tickPlacement?this.tickLength:0)-5:q.x+(\"inside\"===this.tickPlacement?0:this.tickLength)+5):(p.textBlock.y=\"inside\"===this.labelPlacement?q.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):0>this.labelAngle?q.y:q.y-(p.textBlock.height-p.textBlock.fontSize/2-5)*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x=\"inside\"===this.labelPlacement?q.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-\n(\"inside\"===this.tickPlacement?this.tickLength:0)-5:0a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(p.position),\na.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x2-1,this._titleTextBlock.y=this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}f=\n0;if(\"inside\"===this.labelPlacement)this.chart.addEventListener(\"dataAnimationEnd\",function(){for(k=0;ka.viewportMaximum||d&&0!==f++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),p.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;kthis.viewportMaximum||d&&0!==f++%2&&this.labelAutoFit)||p.textBlock.render(!0)};A.prototype.renderInterlacedColors=\nfunction(){var a=this.chart.plotArea.ctx,d,c,b=this.chart.plotArea,e=0;d=!0;if((\"bottom\"===this._position||\"top\"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;ethis._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(Math.min(c.x,d.x),b.y1,Math.abs(c.x-d.x),Math.abs(b.y1-b.y2)),d=!1):\nd=!0;else if((\"left\"===this._position||\"right\"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;ethis._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(b.x1,Math.min(c.y,d.y),Math.abs(b.x1-b.x2),Math.abs(d.y-c.y)),d=!1):d=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&\n0this.viewportMaximum||r(k.value)||isNaN(this.range))||\"value\"===a&&(k.startValue<=this.viewportMinimum&&k.endValue<=this.viewportMinimum||k.startValue>=this.viewportMaximum&&k.endValue>=this.viewportMaximum||r(k.startValue)||r(k.endValue)||isNaN(this.range))||h.push(k))}for(b=0;bthis.viewportMaximum||isNaN(this.range))){a=this.getPixelCoordinatesOnAxis(c.position);if(\"outside\"===c.stripLine.labelPlacement)if(k&&(this.ctx.strokeStyle=k.color,\"pixel\"===k._thicknessType&&(this.ctx.lineWidth=k.thickness)),\"bottom\"===this._position){var m=1===this.ctx.lineWidth%2?(a.x<<0)+0.5:a.x<<0;this.ctx.beginPath();this.ctx.moveTo(m,a.y<<0);this.ctx.lineTo(m,a.y+this.tickLength<<0);this.ctx.stroke();\n0===this.labelAngle?(a.x-=c.textBlock.width/2,a.y+=this.tickLength+c.textBlock.fontSize/2+5):(a.x-=0>this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0,a.y+=this.tickLength+Math.abs(0>this.labelAngle?c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-5:5))}else\"top\"===this._position?(m=1===this.ctx.lineWidth%2?(a.x<<0)+0.5:a.x<<0,this.ctx.beginPath(),this.ctx.moveTo(m,a.y<<0),this.ctx.lineTo(m,a.y-this.tickLength<<0),this.ctx.stroke(),0===this.labelAngle?(a.x-=c.textBlock.width/\n2,a.y-=this.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(a.x+=(c.textBlock.height-this.tickLength-this.labelFontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-(0this.labelAngle?a.y:a.y-(c.textBlock.height-c.textBlock.fontSize/2-5)*Math.cos(Math.PI/180*this.labelAngle),a.x=0this.chart.plotArea.x1?r(k.startValue)?a.x-=c.textBlock.height-c.textBlock.fontSize/2:a.x-=c.textBlock.height/2-c.textBlock.fontSize/2+3:(c.textBlock.angle=90,r(k.startValue)?a.x+=c.textBlock.height-c.textBlock.fontSize/2:a.x+=c.textBlock.height/2-c.textBlock.fontSize/2+3),a.y=-90===c.textBlock.angle?\n\"near\"===c.stripLine.labelAlign?this.chart.plotArea.y2-3:\"center\"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y1+c.textBlock.width+3:\"near\"===c.stripLine.labelAlign?this.chart.plotArea.y2-c.textBlock.width-3:\"center\"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):\"top\"===this._position?(c.textBlock.maxWidth=this.options.stripLines[b].labelMaxWidth?this.options.stripLines[b].labelMaxWidth:\nthis.chart.plotArea.height-3,c.textBlock.measureText(),a.x-c.textBlock.height>this.chart.plotArea.x1?r(k.startValue)?a.x-=c.textBlock.height-c.textBlock.fontSize/2:a.x-=c.textBlock.height/2-c.textBlock.fontSize/2+3:(c.textBlock.angle=90,r(k.startValue)?a.x+=c.textBlock.height-c.textBlock.fontSize/2:a.x+=c.textBlock.height/2-c.textBlock.fontSize/2+3),a.y=-90===c.textBlock.angle?\"near\"===c.stripLine.labelAlign?this.chart.plotArea.y1+c.textBlock.width+3:\"center\"===c.stripLine.labelAlign?(this.chart.plotArea.y2+\nthis.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y2-3:\"near\"===c.stripLine.labelAlign?this.chart.plotArea.y1+3:\"center\"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y2-c.textBlock.width-3):\"left\"===this._position?(c.textBlock.maxWidth=this.options.stripLines[b].labelMaxWidth?this.options.stripLines[b].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),a.y-c.textBlock.height>this.chart.plotArea.y1?\nr(k.startValue)?a.y-=c.textBlock.height-c.textBlock.fontSize/2:a.y-=c.textBlock.height/2-c.textBlock.fontSize+3:a.y-c.textBlock.heightthis.chart.plotArea.y1?r(k.startValue)?a.y-=c.textBlock.height-c.textBlock.fontSize/2:a.y-=c.textBlock.height/2-c.textBlock.fontSize/2-3:a.y-c.textBlock.heightthis.viewportMaximum||isNaN(this.range))||a[d].render(this.maskCtx);this.maskCtx.restore()}};A.prototype.renderCrosshair=function(a,d){isFinite(this.minimum)&&isFinite(this.maximum)&&(this.crosshair.render(a,d),this.crosshair.dispatchEvent(\"updated\",{chart:this.chart,crosshair:this.options,axis:this,value:this.crosshair.value},this))};A.prototype.showCrosshair=function(a){r(a)||(athis.viewportMaximum)||(\"top\"===this._position||\"bottom\"===this._position?this.crosshair.render(this.convertValueToPixel(a),\nnull,a):this.crosshair.render(null,this.convertValueToPixel(a),a))};A.prototype.renderGrid=function(){if(this.gridThickness&&0this.viewportMaximum||\nthis._labels[b].breaksLabelType)||(a.beginPath(),d=this.getPixelCoordinatesOnAxis(this._labels[b].position),d=1===a.lineWidth%2?(d.x<<0)+0.5:d.x<<0,a.moveTo(d,c.y1<<0),a.lineTo(d,c.y2<<0),a.stroke());else if(\"left\"===this._position||\"right\"===this._position)for(var b=0;bthis.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),d=this.getPixelCoordinatesOnAxis(this._labels[b].position),d=\n1===a.lineWidth%2?(d.y<<0)+0.5:d.y<<0,a.moveTo(c.x1<<0,d),a.lineTo(c.x2<<0,d),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,d=w?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),e,f;d.save();if(\"bottom\"===this._position||\"top\"===this._position){if(this.lineThickness){this.reversed?(e=this.lineCoordinates.x2,f=this.lineCoordinates.x1):(e=this.lineCoordinates.x1,f=this.lineCoordinates.x2);\nd.lineWidth=this.lineThickness;d.strokeStyle=this.lineColor?this.lineColor:\"black\";d.setLineDash&&d.setLineDash(J(this.lineDashType,this.lineThickness));var l=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;d.beginPath();if(this.scaleBreaks&&!r(this.scaleBreaks.firstBreakIndex))if(r(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var h=this.scaleBreaks.firstBreakIndex;h<=this.scaleBreaks.lastBreakIndex;h++)d.moveTo(e,\nl),d.lineTo(this.scaleBreaks._appliedBreaks[h].startPixel+c,l),e=this.scaleBreaks._appliedBreaks[h].endPixel+b;e&&(d.moveTo(e,l),d.lineTo(f,l));d.stroke()}}else if((\"left\"===this._position||\"right\"===this._position)&&this.lineThickness){this.reversed?(e=this.lineCoordinates.y1,f=this.lineCoordinates.y2):(e=this.lineCoordinates.y2,f=this.lineCoordinates.y1);d.lineWidth=this.lineThickness;d.strokeStyle=this.lineColor;d.setLineDash&&d.setLineDash(J(this.lineDashType,this.lineThickness));l=1===this.lineThickness%\n2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;d.beginPath();if(this.scaleBreaks&&!r(this.scaleBreaks.firstBreakIndex))if(r(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+c;else for(h=this.scaleBreaks.firstBreakIndex;h<=this.scaleBreaks.lastBreakIndex;h++)d.moveTo(l,e),d.lineTo(l,this.scaleBreaks._appliedBreaks[h].startPixel+b),e=this.scaleBreaks._appliedBreaks[h].endPixel+c;e&&(d.moveTo(l,e),d.lineTo(l,f));d.stroke()}w&&\n(a.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx&&this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),d.clearRect(0,0,this.chart.width,this.chart.height));d.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var d={};if(\"bottom\"===this._position||\"top\"===this._position)d.x=this.convertValueToPixel(a),d.y=this.lineCoordinates.y1;if(\"left\"===this._position||\"right\"===this._position)d.y=\nthis.convertValueToPixel(a),d.x=this.lineCoordinates.x2;return d};A.prototype.convertPixelToValue=function(a){if(\"undefined\"===typeof a)return null;var d=0,c=0,b,d=!0,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=\"number\"===typeof a?a:\"left\"===this._position||\"right\"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);if(c<=this.conversionParameters.reference===(\"left\"===this._position||\n\"right\"===this._position)!==this.reversed)for(c=0;ce[c].startValue/this.conversionParameters.minimum){b/=e[c].startValue/this.conversionParameters.minimum;if(be[c].startValue/e[c-\n1].endValue){b/=e[c].startValue/e[c-1].endValue;if(bthis.conversionParameters.minimum))if(d)if(e[c].endValue>this.conversionParameters.minimum){if(1\ne[c].startValue){a=Math.pow(e[c].endValue/e[c].startValue,Math.log(b)/Math.log(e[c].size));break}else a*=e[c].startValue/this.conversionParameters.minimum*Math.pow(e[c].size,Math.log(e[c].startValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/e[c].startValue))*b,b*=Math.pow(e[c].size,Math.log(this.conversionParameters.minimum/e[c].startValue)/Math.log(e[c].endValue/e[c].startValue));d=!1}else if(b1/e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1>=e[c].size?1:Math.log(b)/Math.log(e[c].size))*b;break}else a/=e[c].endValue/e[c].startValue/e[c].size;b*=e[c].size;d=!1}else break;else if(b1/e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1>=e[c].size?1:Math.log(b)/Math.log(e[c].size))*b;break}else a/=e[c].endValue/e[c].startValue/e[c].size;b*=e[c].size}else break;d=a*this.viewportMinimum}else{a=b=(c-this.conversionParameters.reference)/\nthis.conversionParameters.pixelPerUnit;if(c<=this.conversionParameters.reference===(\"left\"===this._position||\"right\"===this._position)!==this.reversed)for(c=0;c=e[c].size?0:b*(e[c].endValue-e[c].startValue)/e[c].size;break}else a+=e[c].endValue-this.conversionParameters.minimum-\ne[c].size*(e[c].endValue-this.conversionParameters.minimum)/(e[c].endValue-e[c].startValue),b-=e[c].size*(e[c].endValue-this.conversionParameters.minimum)/(e[c].endValue-e[c].startValue);d=!1}else if(b>e[c].startValue-this.conversionParameters.minimum){b-=e[c].startValue-this.conversionParameters.minimum;if(be[c].startValue-e[c-\n1].endValue){b-=e[c].startValue-e[c-1].endValue;if(bthis.conversionParameters.minimum))if(d)if(e[c].endValue>this.conversionParameters.minimum)if(e[c].size&&this.conversionParameters.minimum+b*(e[c].endValue-e[c].startValue)/e[c].size>e[c].startValue){a=0>=e[c].size?0:b*(e[c].endValue-e[c].startValue)/\ne[c].size;break}else a+=e[c].startValue-this.conversionParameters.minimum+e[c].size*(this.conversionParameters.minimum-e[c].startValue)/(e[c].endValue-e[c].startValue),b+=e[c].size*(this.conversionParameters.minimum-e[c].startValue)/(e[c].endValue-e[c].startValue),d=!1;else if(b-1*e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)+b;break}else a-=e[c].endValue-e[c].startValue-\ne[c].size;b+=e[c].size;d=!1}else break;else if(b-1*e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)+b;break}else a-=e[c].endValue-e[c].startValue-e[c].size;b+=e[c].size}else break;d=this.conversionParameters.minimum+a}return d};A.prototype.convertValueToPixel=function(a){a=this.getApparentDifference(this.conversionParameters.minimum,a,a);return this.logarithmic?this.conversionParameters.reference+\nthis.conversionParameters.pixelPerUnit*Math.log(a/this.conversionParameters.minimum)/this.conversionParameters.lnLogarithmBase+0.5<<0:\"axisX\"===this.type?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};A.prototype.getApparentDifference=function(a,d,c,b){var e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];\nif(this.logarithmic){c=r(c)?d/a:c;for(var f=0;fe[f].endValue||(a<=e[f].startValue&&d>=e[f].endValue?c=c/e[f].endValue*e[f].startValue*e[f].size:a>=e[f].startValue&&d>=e[f].endValue?c=c/e[f].endValue*a*Math.pow(e[f].size,Math.log(e[f].endValue/a)/Math.log(e[f].endValue/e[f].startValue)):a<=e[f].startValue&&d<=e[f].endValue?c=c/d*e[f].startValue*Math.pow(e[f].size,Math.log(d/e[f].startValue)/Math.log(e[f].endValue/e[f].startValue)):!b&&(a>e[f].startValue&&de[f].endValue||(a<=e[f].startValue&&d>=e[f].endValue?c=c-e[f].endValue+e[f].startValue+e[f].size:a>e[f].startValue&&d>=e[f].endValue?c=c-e[f].endValue+a+e[f].size*(e[f].endValue-a)/(e[f].endValue-e[f].startValue):a<=e[f].startValue&&de[f].startValue&&\nda[e].endValue||(this.viewportMinimum>=a[e].startValue&&this.viewportMaximum<=a[e].endValue?c=0:this.viewportMinimum<=a[e].startValue&&\nthis.viewportMaximum>=a[e].endValue?(b=b/a[e].endValue*a[e].startValue,c=0a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b/a[e].endValue*this.viewportMinimum,c=0a[e].endValue||(this.viewportMinimum>=a[e].startValue&&this.viewportMaximum<=a[e].endValue?c=0:this.viewportMinimum<=a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b-a[e].endValue+a[e].startValue,c=0a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b-a[e].endValue+this.viewportMinimum,c=0this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),e,f,l,b=0;!r(this.options.viewportMinimum)&&(!r(this.options.viewportMaximum)&&this.options.viewportMinimum>=this.options.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);\nif(r(this.options.viewportMinimum)&&!r(this.sessionVariables.newViewportMinimum)&&!isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(r(this.options.viewportMaximum)&&!r(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||\nisNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(b=0;b=this.scaleBreaks._appliedBreaks[b].startValue||!r(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!r(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!r(this.sessionVariables.newViewportMaximum)&&\nthis.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||!r(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||!r(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue)){this.scaleBreaks._appliedBreaks.splice(b,1);break}if(\"axisX\"===this.type){if(this.dataSeries&&0f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,e,null,!0)),5),0<=f?e=f-b:f=isFinite(e)?e+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(e,f,null,!0)),0.05),0!==f&&(f+=b),0!==e&&(e-=\nb)),l=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1f&&(f=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?e:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?f:this.viewportMaximum,null,!0);if(\"axisX\"===this.type&&c){this.valueType=\n\"dateTime\";this.intervalType||(b/1<=a?(this.interval=1,this.intervalType=\"millisecond\"):b/2<=a?(this.interval=2,this.intervalType=\"millisecond\"):b/5<=a?(this.interval=5,this.intervalType=\"millisecond\"):b/10<=a?(this.interval=10,this.intervalType=\"millisecond\"):b/20<=a?(this.interval=20,this.intervalType=\"millisecond\"):b/50<=a?(this.interval=50,this.intervalType=\"millisecond\"):b/100<=a?(this.interval=100,this.intervalType=\"millisecond\"):b/200<=a?(this.interval=200,this.intervalType=\"millisecond\"):\nb/250<=a?(this.interval=250,this.intervalType=\"millisecond\"):b/300<=a?(this.interval=300,this.intervalType=\"millisecond\"):b/400<=a?(this.interval=400,this.intervalType=\"millisecond\"):b/500<=a?(this.interval=500,this.intervalType=\"millisecond\"):b/(1*K.secondDuration)<=a?(this.interval=1,this.intervalType=\"second\"):b/(2*K.secondDuration)<=a?(this.interval=2,this.intervalType=\"second\"):b/(5*K.secondDuration)<=a?(this.interval=5,this.intervalType=\"second\"):b/(10*K.secondDuration)<=a?(this.interval=10,\nthis.intervalType=\"second\"):b/(15*K.secondDuration)<=a?(this.interval=15,this.intervalType=\"second\"):b/(20*K.secondDuration)<=a?(this.interval=20,this.intervalType=\"second\"):b/(30*K.secondDuration)<=a?(this.interval=30,this.intervalType=\"second\"):b/(1*K.minuteDuration)<=a?(this.interval=1,this.intervalType=\"minute\"):b/(2*K.minuteDuration)<=a?(this.interval=2,this.intervalType=\"minute\"):b/(5*K.minuteDuration)<=a?(this.interval=5,this.intervalType=\"minute\"):b/(10*K.minuteDuration)<=a?(this.interval=\n10,this.intervalType=\"minute\"):b/(15*K.minuteDuration)<=a?(this.interval=15,this.intervalType=\"minute\"):b/(20*K.minuteDuration)<=a?(this.interval=20,this.intervalType=\"minute\"):b/(30*K.minuteDuration)<=a?(this.interval=30,this.intervalType=\"minute\"):b/(1*K.hourDuration)<=a?(this.interval=1,this.intervalType=\"hour\"):b/(2*K.hourDuration)<=a?(this.interval=2,this.intervalType=\"hour\"):b/(3*K.hourDuration)<=a?(this.interval=3,this.intervalType=\"hour\"):b/(6*K.hourDuration)<=a?(this.interval=6,this.intervalType=\n\"hour\"):b/(1*K.dayDuration)<=a?(this.interval=1,this.intervalType=\"day\"):b/(2*K.dayDuration)<=a?(this.interval=2,this.intervalType=\"day\"):b/(4*K.dayDuration)<=a?(this.interval=4,this.intervalType=\"day\"):b/(1*K.weekDuration)<=a?(this.interval=1,this.intervalType=\"week\"):b/(2*K.weekDuration)<=a?(this.interval=2,this.intervalType=\"week\"):b/(3*K.weekDuration)<=a?(this.interval=3,this.intervalType=\"week\"):b/(1*K.monthDuration)<=a?(this.interval=1,this.intervalType=\"month\"):b/(2*K.monthDuration)<=a?(this.interval=\n2,this.intervalType=\"month\"):b/(3*K.monthDuration)<=a?(this.interval=3,this.intervalType=\"month\"):b/(6*K.monthDuration)<=a?(this.interval=6,this.intervalType=\"month\"):(this.interval=b/(1*K.yearDuration)<=a?1:b/(2*K.yearDuration)<=a?2:b/(4*K.yearDuration)<=a?4:Math.floor(A.getNiceNumber(b/(a-1),!0)/K.yearDuration),this.intervalType=\"year\"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=e-l/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=\nf+l/2;d?this.autoValueFormatString=\"MMM DD YYYY HH:mm\":\"year\"===this.intervalType?this.autoValueFormatString=\"YYYY\":\"month\"===this.intervalType?this.autoValueFormatString=\"MMM YYYY\":\"week\"===this.intervalType?this.autoValueFormatString=\"MMM DD YYYY\":\"day\"===this.intervalType?this.autoValueFormatString=\"MMM DD YYYY\":\"hour\"===this.intervalType?this.autoValueFormatString=\"hh:mm TT\":\"minute\"===this.intervalType?this.autoValueFormatString=\"hh:mm TT\":\"second\"===this.intervalType?this.autoValueFormatString=\n\"hh:mm:ss TT\":\"millisecond\"===this.intervalType&&(this.autoValueFormatString=\"fff'ms'\");this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType=\"number\";b=A.getNiceNumber(b,!1);this.interval=this.options&&0f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,e,null,!0)),5),0<=f?e=f-b:f=isFinite(e)?e+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(e,f,null,!0)),0.05),0!==f&&(f+=b),0!==e&&(e-=b)):(f=\"undefined\"===typeof this.options.interval?-Infinity:this.options.interval,e=\"undefined\"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),l=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1f&&(f=0)),Math.abs(this.getApparentDifference(e,f,null,!0)),\"axisX\"===this.type&&c){this.valueType=\"dateTime\";if(null===this.minimum||isNaN(this.minimum))this.minimum=e-l/2,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum);if(null===this.maximum||isNaN(this.maximum))this.maximum=\nf+l/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=this.valueType=\"number\",null===this.minimum&&(this.minimum=\"axisX\"===this.type?e-l/2:Math.floor(e/this.interval)*this.interval,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum)),\nnull===this.maximum&&(this.maximum=\"axisX\"===this.type?f+l/2:Math.ceil(f/this.interval)*this.interval,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));r(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));\nr(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum));this.range=this.viewportMaximum-this.viewportMinimum;this.intervalStartPosition=\"axisX\"===this.type&&c?this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval):Math.floor((this.viewportMinimum+0.2*this.interval)/this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=A.generateValueFormatString(this.range,2))}};A.prototype.calculateLogarithmicAxisParameters=\nfunction(){var a=this.chart.layoutManager.getFreeSpace(),d=Math.log(this.logarithmBase),c;\"bottom\"===this._position||\"top\"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a=\"axisX\"===this.type?500>this.maxWidth?7:Math.max(7,Math.floor(this.maxWidth/100)):Math.max(Math.floor(this.maxWidth/50),3),b,e,f,l;l=1;if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(null===this.viewportMaximum||\nisNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(l=0;l=this.scaleBreaks._appliedBreaks[l].startValue||!r(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[l].startValue||!r(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[l].startValue)&&(!r(this.sessionVariables.newViewportMaximum)&&\nthis.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[l].endValue||!r(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[l].endValue||!r(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[l].endValue)){this.scaleBreaks._appliedBreaks.splice(l,1);break}\"axisX\"===this.type?(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,\n1===e/b&&(l=Math.pow(this.logarithmBase,\"undefined\"===typeof this.options.interval?0.4:this.options.interval),e*=l,b/=l),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):\"axisY\"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(e)?(e=\"undefined\"===typeof this.options.interval?0:\nthis.options.interval,b=1):0>=b?b=e:isFinite(e)||(e=b),1===b&&1===e?(e*=this.logarithmBase-1/this.logarithmBase,b=1):1===e/b?(l=Math.min(e*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),e*=l,b/=l):b>e?(l=Math.min(b/e*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=e?b=e/l:e=b*l):(l=Math.min(e/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=l),1!==b&&(b/=l)),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?\ne/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&1e&&(e=1));l=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?e:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);var h=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?e:this.viewportMaximum)-(isNaN(this.viewportMinimum)||\nnull===this.viewportMinimum?b:this.viewportMinimum);this.intervalType=\"number\";l=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(l)/d),!1));this.options&&0this.logarithmBase?\ne/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):\"axisY\"===this.type&&(b=null!==this.minimum?this.minimum:this.dataInfo.min,e=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||isFinite(e)?1===b&&1===e?(e*=this.logarithmBase,b/=this.logarithmBase):1===e/b?(l=Math.pow(this.logarithmBase,this.interval),e*=l,b/=l):b>e?(l=Math.min(0.01*(b/e),5),1<=e?b=e/l:e=b*l):(l=Math.min(e/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=l),1!==b&&(b/=l)):(e=\"undefined\"===\ntypeof this.options.interval?0:this.options.interval,b=1),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&1e&&(e=1)),this.intervalType=\"number\",null===this.minimum&&(this.minimum=\"axisX\"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/\nd/this.interval)),r(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?\"undefined\"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum)||(this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?\"undefined\"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:\nthis.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum=\"axisX\"===this.type?e*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(e)/d/this.interval)),r(null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?\"undefined\"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum)||(this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||\nisNaN(this.sessionVariables.viewportMaximum)?\"undefined\"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum))),1===this.maximum&&1===this.minimum&&(1===this.options.minimum?this.maximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.maximum&&(this.minimum/=this.logarithmBase-1/this.logarithmBase));this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum);this.viewportMaximum=Math.min(this.viewportMaximum,\nthis.maximum);this.viewportMinimum>this.viewportMaximum&&(!this.options.viewportMinimum&&!this.options.minimum||this.options.viewportMaximum||this.options.maximum?this.options.viewportMinimum||this.options.minimum||!this.options.viewportMaximum&&!this.options.maximum||(this.viewportMinimum=this.minimum=(this.options.viewportMaximum||this.options.maximum)/Math.pow(this.logarithmBase,2*Math.ceil(this.interval))):this.viewportMaximum=this.maximum=this.options.viewportMinimum||this.options.minimum);b=\nMath.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(d*this.interval)+0.2)*this.interval);this.range=this.viewportMaximum/this.viewportMinimum;this.noTicks=a;if(!this.options.interval&&this.rangethis.viewportMaximum||3>a?2:3)){for(d=Math.floor(this.viewportMinimum/c+0.5)*c;dthis.interval&&\n(this.interval=c,b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(d*this.interval)+0.2)*this.interval))),this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString=\"#,##0.##\",1>this.viewportMinimum)){d=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(d)||!isFinite(d))d=2;if(2a&&(b+=Math.floor(Math.abs(Math.log(a)/\nMath.LN10)),isNaN(b)||!isFinite(b))&&(b=d);for(var e=0;ec?1>=b?1:5>=b?5:10:Math.max(Math.floor(b),1);return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};A.getNiceNumber=function(a,d){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=d?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10;return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};\nA.prototype.getLabelStartPoint=function(){var a=K[this.intervalType+\"Duration\"]*this.interval,a=new Date(Math.floor(this.viewportMinimum/a)*a);if(\"millisecond\"!==this.intervalType)if(\"second\"===this.intervalType)0=a||\"bottom\"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,h),this.ctx.lineTo(l,h),this.ctx.lineTo(l,e);else if(\"wavy\"===this.type){n=b;k=e;f=0.5;m=(h-k)/a/3;for(var q=0;q=a||\"right\"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(l,e),this.ctx.lineTo(l,h),this.ctx.lineTo(b,h);else if(\"wavy\"===this.type){n=b;k=e;f=0.5;m=\n(l-n)/a/3;for(q=0;q=d.axisY[b].viewportMinimum&&\na<=d.axisY[b].viewportMaximum?a:null);else if(\"top\"===this.parent._position)for(b=0;b=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum?a:null);else if(\"left\"===this.parent._position)for(b=0;b=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum?a:null);else{if(\"right\"===this.parent._position)for(b=0;b=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum?a:null)}else if(\"bottom\"===this.parent._position)for(b=0;b=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum?a:null);else if(\"top\"===this.parent._position)for(b=0;b=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum?a:null);\nelse if(\"left\"===this.parent._position)for(b=0;b=d.axisY[b].viewportMinimum&&a<=d.axisY[b].viewportMaximum?a:null);else if(\"right\"===this.parent._position)for(b=0;b=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum?a:null);for(b=0;b=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum)&&(d.axisX[b].showCrosshair(a),d.axisX[b].crosshair._updatedValue=a,this===d.axisX[b].crosshair&&(c=!0));for(b=0;b=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum)&&(d.axisX2[b].showCrosshair(a),d.axisX2[b].crosshair._updatedValue=a,this===d.axisX2[b].crosshair&&(c=!0));for(b=0;b=d.axisY[b].viewportMinimum&&a<=d.axisY[b].viewportMaximum)&&(d.axisY[b].showCrosshair(a),d.axisY[b].crosshair._updatedValue=a,this===d.axisY[b].crosshair&&(c=!0));for(b=0;b=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum)&&(d.axisY2[b].showCrosshair(a),d.axisY2[b].crosshair._updatedValue=a,this===d.axisY2[b].crosshair&&\n(c=!0));this.chart.toolTip&&this.chart.toolTip._entries&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ba.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.renderCrosshairs(this.parent);this._hidden=!0};ba.prototype.render=function(a,d,c){var b,e,f,h,n=null,w=null,k=null,m=\"\";if(!this.valueFormatString)if(\"dateTime\"===this.parent.valueType)this.valueFormatString=this.parent.valueFormatString;else{var p=0,p=\"xySwapped\"===this.chart.plotInfo.axisPlacement?\n50this.parent.range?2:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0):50this.parent.range?2:10>this.parent.range?1:0);this.valueFormatString=A.generateValueFormatString(this.parent.range,p)}var k=null===this.opacity?1:this.opacity,p=Math.abs(\"pixel\"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*\nthis.thickness),q=this.chart.overlaidCanvasCtx,g=q.globalAlpha;q.globalAlpha=k;q.beginPath();q.strokeStyle=this.color;q.lineWidth=p;q.save();this.labelFontSize=Math.abs(r(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=r(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=r(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:2*this.labelFontSize;0this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.width:k.xthis.chart.bounds.y2?k.y=this.chart.bounds.y2-k.height:k.ythis.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);\"left\"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:\"right\"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if(\"bottom\"===this.parent._position||\"top\"===this.parent._position){t=this.parent.convertPixelToValue({x:a});for(B=0;Bthis.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.xthis.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);\"left\"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:\"right\"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}m=null;if(\"bottom\"===this.parent._position||\"top\"===this.parent._position)\"top\"===this.parent._position&&k.y-k.fontSize/2this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2),b>=this.parent.convertValueToPixel(this.parent.reversed?this.parent.viewportMaximum:this.parent.viewportMinimum)&&e<=this.parent.convertValueToPixel(this.parent.reversed?this.parent.viewportMinimum:this.parent.viewportMaximum)&&(0this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.measureText().width),h>=this.parent.convertValueToPixel(this.parent.reversed?this.parent.viewportMinimum:this.parent.viewportMaximum)&&f<=this.parent.convertValueToPixel(this.parent.reversed?this.parent.viewportMaximum:this.parent.viewportMinimum)&&(0this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);\"left\"===this.parent._position?\nk.x=this.parent.lineCoordinates.x1-k.measureText().width:\"right\"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}else{if(\"bottom\"===this.parent._position||\"top\"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:r(c)?this.parent.convertPixelToValue(a):c}):r(this.options.label)?ha(r(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.x=b-k.measureText().width/\n2,k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width),k.xthis.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.xthis.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+\nk.fontSize/2),\"left\"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:\"right\"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2);\"left\"===this.parent._position&&k.xthis.chart.bounds.x2?k.x=this.chart.bounds.x2-k.measureText().width:\"top\"===this.parent._position&&k.y-k.fontSize/2this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2);0(new Date).getTime()-this._lastUpdated||\n(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,d))};Y.prototype._updateToolTip=function(a,d,c){c=\"undefined\"===typeof c?!0:c;this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if(\"undefined\"===typeof a||\"undefined\"===typeof d){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;d=this._prevY}else this._prevX=a,this._prevY=d;var b=null,e=null,f=[],h=0;if(this.shared&&this.enabled&&\"none\"!==this.chart.plotInfo.axisPlacement){var n=\n[];if(this.chart.axisX)for(var v=0;vk.dataSeries.axisY.viewportMaximum&&c++;c-k.dataPoint.y.length&&f.push(k)}else\"column\"===e.type||\"bar\"===e.type?0>k.dataPoint.y?0>k.dataSeries.axisY.viewportMinimum&&k.dataSeries.axisY.viewportMaximum>=k.dataPoint.y&&f.push(k):k.dataSeries.axisY.viewportMinimum<=k.dataPoint.y&&0<=k.dataSeries.axisY.viewportMaximum&&f.push(k):\"bubble\"===e.type?(c=this.chart._eventManager.objectMap[e.dataPointIds[k.index]].size/\n2,k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum-c&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum+c&&f.push(k)):\"waterfall\"===e.type?(c=0,k.cumulativeSumYStartValuek.dataSeries.axisY.viewportMaximum&&c++,k.cumulativeSumk.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2=\nk.dataSeries.axisY.viewportMinimum&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum)&&f.push(k);else f.push(k)}}if(0a&&(a+=this.container.clientWidth+20);a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));d=1!==f.length||this.shared||\"line\"!==f[0].dataSeries.type&&\"stepLine\"!==\nf[0].dataSeries.type&&\"spline\"!==f[0].dataSeries.type&&\"area\"!==f[0].dataSeries.type&&\"stepArea\"!==f[0].dataSeries.type&&\"splineArea\"!==f[0].dataSeries.type?\"bar\"===f[0].dataSeries.type||\"rangeBar\"===f[0].dataSeries.type||\"stackedBar\"===f[0].dataSeries.type||\"stackedBar100\"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):d:f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);d=-d+10;0\";if(!c.visible)continue;r=this.chart.replaceKeywordsWithValue(r,b,c,e)}null===b.toolTipContent||\"undefined\"===typeof b.toolTipContent&&null===c.options.toolTipContent||(\"line\"===c.type||\"stepLine\"===c.type||\"spline\"===c.type||\"area\"===c.type||\"stepArea\"===c.type||\"splineArea\"===\nc.type||\"column\"===c.type||\"bar\"===c.type||\"scatter\"===c.type||\"stackedColumn\"===c.type||\"stackedColumn100\"===c.type||\"stackedBar\"===c.type||\"stackedBar100\"===c.type||\"stackedArea\"===c.type||\"stackedArea100\"===c.type||\"waterfall\"===c.type?(this.chart.axisX&&1\":\"X:{axisXIndex}
    \":\"\"),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"{name}:  {y}\",n=c.axisXIndex):\"bubble\"===c.type?(this.chart.axisX&&1\":\"X:{axisXIndex}
    \":\"\"),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"{name}:  {y},   {z}\"):\"rangeColumn\"===\nc.type||\"rangeBar\"===c.type||\"rangeArea\"===c.type||\"rangeSplineArea\"===c.type||\"error\"===c.type?(this.chart.axisX&&1\":\"X:{axisXIndex}
    \":\"\"),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"{name}:  {y[0]}, {y[1]}\"):\"candlestick\"===c.type||\"ohlc\"===\nc.type?(this.chart.axisX&&1\":\"X:{axisXIndex}
    \":\"\"),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"{name}:
    Open:   {y[0]}
    High:    {y[1]}
    Low:   {y[2]}
    Close:   {y[3]}\"):\"boxAndWhisker\"===c.type&&\n(this.chart.axisX&&1\":\"X:{axisXIndex}
    \":\"\"),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"{name}:
    Minimum:   {y[0]}
    Q1:               {y[1]}
    Q2:               {y[4]}
    Q3:               {y[2]}
    Maximum:  {y[3]}\"),\nnull===d&&(d=\"\"),c.visible&&(!0===this.reversed?(d=this.chart.replaceKeywordsWithValue(f,b,c,e)+d,h\"+d)):(d+=this.chart.replaceKeywordsWithValue(f,b,c,e),h\"))))}null!==d&&(d=r+d)}else{c=a[0].dataSeries;b=a[0].dataPoint;e=a[0].index;if(null===b.toolTipContent||\"undefined\"===typeof b.toolTipContent&&null===c.options.toolTipContent)return null;\"line\"===c.type||\"stepLine\"===c.type||\"spline\"===c.type||\"area\"===c.type||\"stepArea\"===c.type||\"splineArea\"===c.type||\n\"column\"===c.type||\"bar\"===c.type||\"scatter\"===c.type||\"stackedColumn\"===c.type||\"stackedColumn100\"===c.type||\"stackedBar\"===c.type||\"stackedBar100\"===c.type||\"stackedArea\"===c.type||\"stackedArea100\"===c.type||\"waterfall\"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"\"+(b.label?\"{label}\":\"{x}\")+\":  {y}\":\"bubble\"===c.type?\nf=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"\"+(b.label?\"{label}\":\"{x}\")+\":  {y},   {z}\":\"pie\"===c.type||\"doughnut\"===c.type||\"funnel\"===c.type||\"pyramid\"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"\"+(b.name?\"{name}:  \":b.label?\"{label}:  \":\"\")+\"{y}\":\"rangeColumn\"===c.type||\"rangeBar\"===c.type||\"rangeArea\"===c.type||\"rangeSplineArea\"===c.type||\"error\"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"\"+(b.label?\"{label}\":\"{x}\")+\" :  {y[0]},  {y[1]}\":\"candlestick\"===\nc.type||\"ohlc\"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\"function\"!==typeof this.content?this.content:\"\"+(b.label?\"{label}\":\"{x}\")+\"
    Open:   {y[0]}
    High:    {y[1]}
    Low:     {y[2]}
    Close:   {y[3]}\":\"boxAndWhisker\"===c.type&&(f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&\n\"function\"!==typeof this.content?this.content:\"\"+(b.label?\"{label}\":\"{x}\")+\"
    Minimum:   {y[0]}
    Q1:               {y[1]}
    Q2:               {y[4]}
    Q3:               {y[2]}
    Maximum:  {y[3]}\");\nnull===d&&(d=\"\");d+=this.chart.replaceKeywordsWithValue(f,b,c,e)}return d};Y.prototype.enableAnimation=function(){if(!this.container.style.WebkitTransition){var a=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=a;this.container.style.MsTransition=a;this.container.style.transition=a;this.container.style.MozTransition=this.mozContainerTransition}};Y.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition=\n\"\",this.container.style.MozTransition=\"\",this.container.style.MsTransition=\"\",this.container.style.transition=\"\")};Y.prototype.hide=function(a){this.container&&(this.container.style.display=\"none\",this.currentSeriesIndex=-1,this._prevY=this._prevX=NaN,(\"undefined\"===typeof a||a)&&this.chart.resetOverlayedCanvas())};Y.prototype.show=function(a,d,c){this._updateToolTip(a,d,\"undefined\"===typeof c?!1:c)};Y.prototype.showAtIndex=function(a,d){};Y.prototype.showAtX=function(a,d){if(!this.enabled)return!1;\nthis.chart.clearedOverlayedCanvas=null;var c,b,e,f=[];e=!1;d=!r(d)&&0<=d&&d=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){e=!1;break}else if(b.dataPoint.xb.dataSeries.axisX.viewportMaximum||b.dataPoint.yb.dataSeries.axisY.viewportMaximum)e=!0;else{e=!1;break}if(e)return this.hide(),!1;this.highlightObjects(f);this._entries=f;h=\"\";h=this.getToolTipInnerHTML({entries:f});if(null!==h){this.contentDiv.innerHTML=h;if(this.isToolTipDefinedInData&&\nr(this.options.content)&&r(this.options.contentFormatter))for(b=this.contentDiv.getElementsByTagName(\"span\"),h=0;hc&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(c=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));f=1!==f.length||this.shared||\"line\"!==f[0].dataSeries.type&&\"stepLine\"!==f[0].dataSeries.type&&\"spline\"!==f[0].dataSeries.type&&\"area\"!==f[0].dataSeries.type&&\"stepArea\"!==f[0].dataSeries.type&&\"splineArea\"!==f[0].dataSeries.type?\"bar\"===f[0].dataSeries.type||\n\"rangeBar\"===f[0].dataSeries.type||\"stackedBar\"===f[0].dataSeries.type||\"stackedBar100\"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y):f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);f=-f+10;0b&&a.push(d),d.animationCallback(b),1<=b&&d.onComplete)d.onComplete();this.animations=a;0g;g++)for(var e=0;3>e;e++){for(var f=0,d=0;3>d;d++)f+=a[g][d]*b[d][e];c[g][e]=f}return c}function P(a,b){b.fillStyle=a.fillStyle;b.lineCap=a.lineCap;b.lineJoin=a.lineJoin;b.lineWidth=a.lineWidth;b.miterLimit=a.miterLimit;b.shadowBlur=a.shadowBlur;b.shadowColor=a.shadowColor;b.shadowOffsetX=\na.shadowOffsetX;b.shadowOffsetY=a.shadowOffsetY;b.strokeStyle=a.strokeStyle;b.globalAlpha=a.globalAlpha;b.font=a.font;b.textAlign=a.textAlign;b.textBaseline=a.textBaseline;b.arcScaleX_=a.arcScaleX_;b.arcScaleY_=a.arcScaleY_;b.lineScale_=a.lineScale_}function Q(a){var b=a.indexOf(\"(\",3),c=a.indexOf(\")\",b+1),b=a.substring(b+1,c).split(\",\");if(4!=b.length||\"a\"!=a.charAt(3))b[3]=1;return b}function E(a,b,c){return Math.min(c,Math.max(b,a))}function F(a,b,c){0>c&&c++;16*c?a+6*(b-a)*c:\n1>2*c?b:2>3*c?a+6*(b-a)*(2/3-c):a}function G(a){if(a in H)return H[a];var b,c=1;a=String(a);if(\"#\"==a.charAt(0))b=a;else if(/^rgb/.test(a)){c=Q(a);b=\"#\";for(var g,e=0;3>e;e++)g=-1!=c[e].indexOf(\"%\")?Math.floor(255*(parseFloat(c[e])/100)):+c[e],b+=v[E(g,0,255)];c=+c[3]}else if(/^hsl/.test(a)){e=c=Q(a);b=parseFloat(e[0])/360%360;0>b&&b++;g=E(parseFloat(e[1])/100,0,1);e=E(parseFloat(e[2])/100,0,1);if(0==g)g=e=b=e;else{var f=0.5>e?e*(1+g):e+g-e*g,d=2*e-f;g=F(d,f,b+1/3);e=F(d,f,b);b=F(d,f,b-1/3)}b=\"#\"+\nv[Math.floor(255*g)]+v[Math.floor(255*e)]+v[Math.floor(255*b)];c=c[3]}else b=Z[a]||a;return H[a]={color:b,alpha:c}}function C(a){this.m_=D();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.fillStyle=this.strokeStyle=\"#000\";this.lineWidth=1;this.lineJoin=\"miter\";this.lineCap=\"butt\";this.miterLimit=1*q;this.globalAlpha=1;this.font=\"10px sans-serif\";this.textAlign=\"left\";this.textBaseline=\"alphabetic\";this.canvas=a;var b=\"width:\"+a.clientWidth+\"px;height:\"+a.clientHeight+\"px;overflow:hidden;position:absolute\",\nc=a.ownerDocument.createElement(\"div\");c.style.cssText=b;a.appendChild(c);b=c.cloneNode(!1);b.style.backgroundColor=\"red\";b.style.filter=\"alpha(opacity=0)\";a.appendChild(b);this.element_=c;this.lineScale_=this.arcScaleY_=this.arcScaleX_=1}function R(a,b,c,g){a.currentPath_.push({type:\"bezierCurveTo\",cp1x:b.x,cp1y:b.y,cp2x:c.x,cp2y:c.y,x:g.x,y:g.y});a.currentX_=g.x;a.currentY_=g.y}function S(a,b){var c=G(a.strokeStyle),g=c.color,c=c.alpha*a.globalAlpha,e=a.lineScale_*a.lineWidth;1>e&&(c*=e);b.push(\"')}function T(a,b,c,g){var e=a.fillStyle,f=a.arcScaleX_,d=a.arcScaleY_,k=g.x-c.x,n=g.y-c.y;if(e instanceof w){var h=0,l=g=0,u=0,m=1;if(\"gradient\"==e.type_){h=e.x1_/f;c=e.y1_/d;var p=s(a,e.x0_/f,e.y0_/d),h=s(a,h,c),h=180*Math.atan2(h.x-p.x,h.y-p.y)/Math.PI;0>h&&(h+=360);1E-6>h&&(h=0)}else p=s(a,e.x0_,e.y0_),g=(p.x-c.x)/k,l=(p.y-c.y)/n,k/=f*q,\nn/=d*q,m=x.max(k,n),u=2*e.r0_/m,m=2*e.r1_/m-u;f=e.colors_;f.sort(function(a,b){return a.offset-b.offset});d=f.length;p=f[0].color;c=f[d-1].color;k=f[0].alpha*a.globalAlpha;a=f[d-1].alpha*a.globalAlpha;for(var n=[],r=0;r')}else e instanceof\nI?k&&n&&b.push(\"'):(e=G(a.fillStyle),b.push(''))}function s(a,b,c){a=a.m_;return{x:q*(b*a[0][0]+c*a[1][0]+a[2][0])-r,y:q*(b*a[0][1]+c*a[1][1]+a[2][1])-r}}function z(a,b,c){isFinite(b[0][0])&&(isFinite(b[0][1])&&isFinite(b[1][0])&&isFinite(b[1][1])&&isFinite(b[2][0])&&isFinite(b[2][1]))&&(a.m_=b,c&&(a.lineScale_=aa(ba(b[0][0]*b[1][1]-b[0][1]*\nb[1][0]))))}function w(a){this.type_=a;this.r1_=this.y1_=this.x1_=this.r0_=this.y0_=this.x0_=0;this.colors_=[]}function I(a,b){if(!a||1!=a.nodeType||\"IMG\"!=a.tagName)throw new A(\"TYPE_MISMATCH_ERR\");if(\"complete\"!=a.readyState)throw new A(\"INVALID_STATE_ERR\");switch(b){case \"repeat\":case null:case \"\":this.repetition_=\"repeat\";break;case \"repeat-x\":case \"repeat-y\":case \"no-repeat\":this.repetition_=b;break;default:throw new A(\"SYNTAX_ERR\");}this.src_=a.src;this.width_=a.width;this.height_=a.height}\nfunction A(a){this.code=this[a];this.message=a+\": DOM Exception \"+this.code}var x=Math,k=x.round,J=x.sin,K=x.cos,ba=x.abs,aa=x.sqrt,q=10,r=q/2;navigator.userAgent.match(/MSIE ([\\d.]+)?/);var M=Array.prototype.slice;O(document);var U={init:function(a){a=a||document;a.createElement(\"canvas\");a.attachEvent(\"onreadystatechange\",W(this.init_,this,a))},init_:function(a){a=a.getElementsByTagName(\"canvas\");for(var b=0;bd;d++)for(var B=0;16>B;B++)v[16*d+B]=d.toString(16)+B.toString(16);var Z={aliceblue:\"#F0F8FF\",antiquewhite:\"#FAEBD7\",aquamarine:\"#7FFFD4\",azure:\"#F0FFFF\",beige:\"#F5F5DC\",\nbisque:\"#FFE4C4\",black:\"#000000\",blanchedalmond:\"#FFEBCD\",blueviolet:\"#8A2BE2\",brown:\"#A52A2A\",burlywood:\"#DEB887\",cadetblue:\"#5F9EA0\",chartreuse:\"#7FFF00\",chocolate:\"#D2691E\",coral:\"#FF7F50\",cornflowerblue:\"#6495ED\",cornsilk:\"#FFF8DC\",crimson:\"#DC143C\",cyan:\"#00FFFF\",darkblue:\"#00008B\",darkcyan:\"#008B8B\",darkgoldenrod:\"#B8860B\",darkgray:\"#A9A9A9\",darkgreen:\"#006400\",darkgrey:\"#A9A9A9\",darkkhaki:\"#BDB76B\",darkmagenta:\"#8B008B\",darkolivegreen:\"#556B2F\",darkorange:\"#FF8C00\",darkorchid:\"#9932CC\",darkred:\"#8B0000\",\ndarksalmon:\"#E9967A\",darkseagreen:\"#8FBC8F\",darkslateblue:\"#483D8B\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",darkturquoise:\"#00CED1\",darkviolet:\"#9400D3\",deeppink:\"#FF1493\",deepskyblue:\"#00BFFF\",dimgray:\"#696969\",dimgrey:\"#696969\",dodgerblue:\"#1E90FF\",firebrick:\"#B22222\",floralwhite:\"#FFFAF0\",forestgreen:\"#228B22\",gainsboro:\"#DCDCDC\",ghostwhite:\"#F8F8FF\",gold:\"#FFD700\",goldenrod:\"#DAA520\",grey:\"#808080\",greenyellow:\"#ADFF2F\",honeydew:\"#F0FFF0\",hotpink:\"#FF69B4\",indianred:\"#CD5C5C\",indigo:\"#4B0082\",\nivory:\"#FFFFF0\",khaki:\"#F0E68C\",lavender:\"#E6E6FA\",lavenderblush:\"#FFF0F5\",lawngreen:\"#7CFC00\",lemonchiffon:\"#FFFACD\",lightblue:\"#ADD8E6\",lightcoral:\"#F08080\",lightcyan:\"#E0FFFF\",lightgoldenrodyellow:\"#FAFAD2\",lightgreen:\"#90EE90\",lightgrey:\"#D3D3D3\",lightpink:\"#FFB6C1\",lightsalmon:\"#FFA07A\",lightseagreen:\"#20B2AA\",lightskyblue:\"#87CEFA\",lightslategray:\"#778899\",lightslategrey:\"#778899\",lightsteelblue:\"#B0C4DE\",lightyellow:\"#FFFFE0\",limegreen:\"#32CD32\",linen:\"#FAF0E6\",magenta:\"#FF00FF\",mediumaquamarine:\"#66CDAA\",\nmediumblue:\"#0000CD\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",mediumseagreen:\"#3CB371\",mediumslateblue:\"#7B68EE\",mediumspringgreen:\"#00FA9A\",mediumturquoise:\"#48D1CC\",mediumvioletred:\"#C71585\",midnightblue:\"#191970\",mintcream:\"#F5FFFA\",mistyrose:\"#FFE4E1\",moccasin:\"#FFE4B5\",navajowhite:\"#FFDEAD\",oldlace:\"#FDF5E6\",olivedrab:\"#6B8E23\",orange:\"#FFA500\",orangered:\"#FF4500\",orchid:\"#DA70D6\",palegoldenrod:\"#EEE8AA\",palegreen:\"#98FB98\",paleturquoise:\"#AFEEEE\",palevioletred:\"#DB7093\",papayawhip:\"#FFEFD5\",\npeachpuff:\"#FFDAB9\",peru:\"#CD853F\",pink:\"#FFC0CB\",plum:\"#DDA0DD\",powderblue:\"#B0E0E6\",rosybrown:\"#BC8F8F\",royalblue:\"#4169E1\",saddlebrown:\"#8B4513\",salmon:\"#FA8072\",sandybrown:\"#F4A460\",seagreen:\"#2E8B57\",seashell:\"#FFF5EE\",sienna:\"#A0522D\",skyblue:\"#87CEEB\",slateblue:\"#6A5ACD\",slategray:\"#708090\",slategrey:\"#708090\",snow:\"#FFFAFA\",springgreen:\"#00FF7F\",steelblue:\"#4682B4\",tan:\"#D2B48C\",thistle:\"#D8BFD8\",tomato:\"#FF6347\",turquoise:\"#40E0D0\",violet:\"#EE82EE\",wheat:\"#F5DEB3\",whitesmoke:\"#F5F5F5\",yellowgreen:\"#9ACD32\"},\nH={},L={},$={butt:\"flat\",round:\"round\"},d=C.prototype;d.clearRect=function(){this.textMeasureEl_&&(this.textMeasureEl_.removeNode(!0),this.textMeasureEl_=null);this.element_.innerHTML=\"\"};d.beginPath=function(){this.currentPath_=[]};d.moveTo=function(a,b){var c=s(this,a,b);this.currentPath_.push({type:\"moveTo\",x:c.x,y:c.y});this.currentX_=c.x;this.currentY_=c.y};d.lineTo=function(a,b){var c=s(this,a,b);this.currentPath_.push({type:\"lineTo\",x:c.x,y:c.y});this.currentX_=c.x;this.currentY_=c.y};d.bezierCurveTo=\nfunction(a,b,c,g,e,f){e=s(this,e,f);a=s(this,a,b);c=s(this,c,g);R(this,a,c,e)};d.quadraticCurveTo=function(a,b,c,g){a=s(this,a,b);c=s(this,c,g);g={x:this.currentX_+2/3*(a.x-this.currentX_),y:this.currentY_+2/3*(a.y-this.currentY_)};R(this,g,{x:g.x+(c.x-this.currentX_)/3,y:g.y+(c.y-this.currentY_)/3},c)};d.arc=function(a,b,c,g,e,f){c*=q;var d=f?\"at\":\"wa\",k=a+K(g)*c-r,n=b+J(g)*c-r;g=a+K(e)*c-r;e=b+J(e)*c-r;k!=g||f||(k+=0.125);a=s(this,a,b);k=s(this,k,n);g=s(this,g,e);this.currentPath_.push({type:d,\nx:a.x,y:a.y,radius:c,xStart:k.x,yStart:k.y,xEnd:g.x,yEnd:g.y})};d.rect=function(a,b,c,g){this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+g);this.lineTo(a,b+g);this.closePath()};d.strokeRect=function(a,b,c,g){var e=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+g);this.lineTo(a,b+g);this.closePath();this.stroke();this.currentPath_=e};d.fillRect=function(a,b,c,g){var e=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+\nc,b+g);this.lineTo(a,b+g);this.closePath();this.fill();this.currentPath_=e};d.createLinearGradient=function(a,b,c,g){var e=new w(\"gradient\");e.x0_=a;e.y0_=b;e.x1_=c;e.y1_=g;return e};d.createRadialGradient=function(a,b,c,g,e,f){var d=new w(\"gradientradial\");d.x0_=a;d.y0_=b;d.r0_=c;d.x1_=g;d.y1_=e;d.r1_=f;return d};d.drawImage=function(a,b){var c,g,e,d,r,y,n,h;e=a.runtimeStyle.width;d=a.runtimeStyle.height;a.runtimeStyle.width=\"auto\";a.runtimeStyle.height=\"auto\";var l=a.width,u=a.height;a.runtimeStyle.width=\ne;a.runtimeStyle.height=d;if(3==arguments.length)c=arguments[1],g=arguments[2],r=y=0,n=e=l,h=d=u;else if(5==arguments.length)c=arguments[1],g=arguments[2],e=arguments[3],d=arguments[4],r=y=0,n=l,h=u;else if(9==arguments.length)r=arguments[1],y=arguments[2],n=arguments[3],h=arguments[4],c=arguments[5],g=arguments[6],e=arguments[7],d=arguments[8];else throw Error(\"Invalid number of arguments\");var m=s(this,c,g),p=[];p.push(\" ','\",\"\");this.element_.insertAdjacentHTML(\"BeforeEnd\",p.join(\"\"))};d.stroke=function(a){var b=[];b.push(\"d.x)d.x=f.x;if(null==c.y||f.yd.y)d.y=f.y}}b.push(' \">');a?T(this,b,c,d):S(this,b);b.push(\"\");this.element_.insertAdjacentHTML(\"beforeEnd\",b.join(\"\"))};d.fill=function(){this.stroke(!0)};d.closePath=function(){this.currentPath_.push({type:\"close\"})};d.save=function(){var a=\n{};P(this,a);this.aStack_.push(a);this.mStack_.push(this.m_);this.m_=t(D(),this.m_)};d.restore=function(){this.aStack_.length&&(P(this.aStack_.pop(),this),this.m_=this.mStack_.pop())};d.translate=function(a,b){z(this,t([[1,0,0],[0,1,0],[a,b,1]],this.m_),!1)};d.rotate=function(a){var b=K(a);a=J(a);z(this,t([[b,a,0],[-a,b,0],[0,0,1]],this.m_),!1)};d.scale=function(a,b){this.arcScaleX_*=a;this.arcScaleY_*=b;z(this,t([[a,0,0],[0,b,0],[0,0,1]],this.m_),!0)};d.transform=function(a,b,c,d,e,f){z(this,t([[a,\nb,0],[c,d,0],[e,f,1]],this.m_),!0)};d.setTransform=function(a,b,c,d,e,f){z(this,[[a,b,0],[c,d,0],[e,f,1]],!0)};d.drawText_=function(a,b,c,d,e){var f=this.m_;d=0;var r=1E3,t=0,n=[],h;h=this.font;if(L[h])h=L[h];else{var l=document.createElement(\"div\").style;try{l.font=h}catch(u){}h=L[h]={style:l.fontStyle||\"normal\",variant:l.fontVariant||\"normal\",weight:l.fontWeight||\"normal\",size:l.fontSize||10,family:l.fontFamily||\"sans-serif\"}}var l=h,m=this.element_;h={};for(var p in l)h[p]=l[p];p=parseFloat(m.currentStyle.fontSize);\nm=parseFloat(l.size);\"number\"==typeof l.size?h.size=l.size:-1!=l.size.indexOf(\"px\")?h.size=m:-1!=l.size.indexOf(\"em\")?h.size=p*m:-1!=l.size.indexOf(\"%\")?h.size=p/100*m:-1!=l.size.indexOf(\"pt\")?h.size=m/0.75:h.size=p;h.size*=0.981;p=h.style+\" \"+h.variant+\" \"+h.weight+\" \"+h.size+\"px \"+h.family;m=this.element_.currentStyle;l=this.textAlign.toLowerCase();switch(l){case \"left\":case \"center\":case \"right\":break;case \"end\":l=\"ltr\"==m.direction?\"right\":\"left\";break;case \"start\":l=\"rtl\"==m.direction?\"right\":\n\"left\";break;default:l=\"left\"}switch(this.textBaseline){case \"hanging\":case \"top\":t=h.size/1.75;break;case \"middle\":break;default:case null:case \"alphabetic\":case \"ideographic\":case \"bottom\":t=-h.size/2.25}switch(l){case \"right\":d=1E3;r=0.05;break;case \"center\":d=r=500}b=s(this,b+0,c+t);n.push('');e?S(this,n):T(this,n,{x:-d,y:0},\n{x:r,y:h.size});e=f[0][0].toFixed(3)+\",\"+f[1][0].toFixed(3)+\",\"+f[0][1].toFixed(3)+\",\"+f[1][1].toFixed(3)+\",0,0\";b=k(b.x/q)+\",\"+k(b.y/q);n.push('','','');this.element_.insertAdjacentHTML(\"beforeEnd\",n.join(\"\"))};d.fillText=function(a,b,c,d){this.drawText_(a,b,c,d,!1)};d.strokeText=function(a,\nb,c,d){this.drawText_(a,b,c,d,!0)};d.measureText=function(a){this.textMeasureEl_||(this.element_.insertAdjacentHTML(\"beforeEnd\",''),this.textMeasureEl_=this.element_.lastChild);var b=this.element_.ownerDocument;this.textMeasureEl_.innerHTML=\"\";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(b.createTextNode(a));return{width:this.textMeasureEl_.offsetWidth}};d.clip=function(){};\nd.arcTo=function(){};d.createPattern=function(a,b){return new I(a,b)};w.prototype.addColorStop=function(a,b){b=G(b);this.colors_.push({offset:a,color:b.color,alpha:b.alpha})};d=A.prototype=Error();d.INDEX_SIZE_ERR=1;d.DOMSTRING_SIZE_ERR=2;d.HIERARCHY_REQUEST_ERR=3;d.WRONG_DOCUMENT_ERR=4;d.INVALID_CHARACTER_ERR=5;d.NO_DATA_ALLOWED_ERR=6;d.NO_MODIFICATION_ALLOWED_ERR=7;d.NOT_FOUND_ERR=8;d.NOT_SUPPORTED_ERR=9;d.INUSE_ATTRIBUTE_ERR=10;d.INVALID_STATE_ERR=11;d.SYNTAX_ERR=12;d.INVALID_MODIFICATION_ERR=\n13;d.NAMESPACE_ERR=14;d.INVALID_ACCESS_ERR=15;d.VALIDATION_ERR=16;d.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=U;CanvasRenderingContext2D=C;CanvasGradient=w;CanvasPattern=I;DOMException=A}();\n/*tslint:enable*/\n/*eslint-enable*/\n/*jshint ignore:end*/","import { InjectionToken } from '@angular/core';\n\nexport interface AppConfiguration {\n production: boolean;\n UniDormAPI: string;\n UniSystemAPI: string;\n NguoiDaiDien_KTX: string;\n SoDienThoai_KTX: string;\n HelpUrl: string;\n UniPracticalResearch: string;\n document_DeXuat: string;\n document_DiemSV: string;\n document_DiemPhong: string;\n document_DanhSachO: string;\n document_DanhSachRa: string;\n document_DSHanChe: string;\n document_QuanLyThietBi: string;\n document_QuanLyViPham: string;\n document_QDKhoanNop: string;\n document_QLPhong: string;\n document_QLNha: string;\n document_QLCoSo: string;\n document_QLLoaiPhong: string;\n document_SoDoPhong: string;\n document_QLDangKy: string;\n document_DuyetDK: string;\n document_XepPhong: string;\n document_BienLai: string;\n document_BienDongKT: string;\n document_LichSuSuaChua: string;\n document_KTKL: string;\n}\n\nexport const AppConfig = new InjectionToken(\n '@@appConfiguration'\n);\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { AppConfiguration, AppConfig } from './configuration';\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\n// if (environment.production) {\n// enableProdMode();\n// }\n\n// platformBrowserDynamic()\n// .bootstrapModule(AppModule)\n// .catch((err) => console.error(err));\n(async () => {\n try {\n const config: AppConfiguration = await fetch('assets/configuration.json').then(res => res.json());\n\n if (config.production) {\n console.log('Running in production mode');\n enableProdMode();\n }\n\n platformBrowserDynamic([\n { provide: AppConfig, useValue: config }\n ]).bootstrapModule(AppModule)\n .catch(err => console.error(err));\n\n } catch (e) {\n console.error('Error initializing', e);\n }\n})();","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}